@charset "UTF-8";
/*////////////////////////////////////////////////////

  変数、mixin、プレースホルダー 定義　適宜変更・追加すること

////////////////////////////////////////////////////*/
@import url("https://fonts.googleapis.com/css?family=Roboto:400,500,700,400i");
.story .img-layout-story-02, .story.index .area-story-mv .tabnav, .box-rec-02-wp, .box-rec-01-wp, .btn_area01:after, .btn_box02:after, .btn_box01, .csr_voice_box02 .csr_voice_box02_inner .csr_voice_label, .csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit, .csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit01, .ir_plan_lower_tab .tab_inner .part .inner ul, .ir_achieve .ir_achieve_box, .sec-corporate, .box-technology-wp .link-sp-tab, .sec-technology-01, .box-team-01-wp, .news-on .news-on-in, .dlBasic01, .boxFlexList04_bk, .boxFlexList03, .boxFlexList02, .boxFlexList01, .boxTableList02, .boxTableList01, .boxList03, .boxList02, .boxList01, .csr_bg_box, .boxContent03, .boxContent02, .boxContent01, .container02, .container01, .boxTxt, footer .fNav-02 ul, footer .logo-footer-wp, footer .footer-in, .mod-item-01, .box-slideIn-01-in {
  *zoom: 1;
}
.story .img-layout-story-02:after, .story.index .area-story-mv .tabnav:after, .box-rec-02-wp:after, .box-rec-01-wp:after, .btn_area01:after, .btn_box02:after, .btn_box01:after, .csr_voice_box02 .csr_voice_box02_inner .csr_voice_label:after, .csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit:after, .csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit01:after, .ir_plan_lower_tab .tab_inner .part .inner ul:after, .ir_achieve .ir_achieve_box:after, .sec-corporate:after, .box-technology-wp .link-sp-tab:after, .sec-technology-01:after, .box-team-01-wp:after, .news-on .news-on-in:after, .dlBasic01:after, .boxFlexList04_bk:after, .boxFlexList03:after, .boxFlexList02:after, .boxFlexList01:after, .boxTableList02:after, .boxTableList01:after, .boxList03:after, .boxList02:after, .boxList01:after, .csr_bg_box:after, .boxContent03:after, .boxContent02:after, .boxContent01:after, .container02:after, .container01:after, .boxTxt:after, footer .fNav-02 ul:after, footer .logo-footer-wp:after, footer .footer-in:after, .mod-item-01:after, .box-slideIn-01-in:after {
  content: "";
  display: table;
  clear: both;
}

/*////////////////////////////////////////////////////

    リセット

////////////////////////////////////////////////////*/
/**
 * html5doctor.com Reset Stylesheet v1.6.1 (http://html5doctor.com/html-5-reset-stylesheet/)
 * Richard Clark (http://richclarkdesign.com)
 * http://cssreset.com
 */
html, body, div, span, object, iframe, button,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: bottom;
  background: transparent;
}

html, body {
  width: 100%;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

ul, ol, li {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

input, button, textarea, select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

img {
  border: none;
  vertical-align: top;
  zoom: 1;
}

/*////////////////////////////////////////////////////

  フォント・文字サイズ設定

////////////////////////////////////////////////////*/
html {
  font-size: 62.5%;
}

body {
  /*font size自動調整をきる*/
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%;
  font-family: "Roboto", "游ゴシック", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", Arial, Helvetica, Verdana, sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  color: #333;
}
body.en {
  font-family: "Roboto", "游ゴシック", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", Arial, Helvetica, Verdana, sans-serif;
}
body.jp {
  font-family: "游ゴシック", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "Roboto", Arial, Helvetica, Verdana, sans-serif;
}

.jp .roboto {
  font-family: Roboto;
}

/*////////////////////////////////////////////////////

  共通レイアウト
    body,html
    header
      SEO用テキスト、サイトロゴ、グローバルメニュー、ヘッダーメニュー
    content
    footer
      コピーライト、ソーシャルボタン、フッターメニュー、SEOテキスト、SEOテキストエリア、ページトップボタン
    下層
      （サブメニュー、パンくずリスト、カテゴリータイトル、ページタイトル）

  ※全ページ共通のレイアウトを記述してください。（他：メインビジュアル、バナー、フッター用サイトマップ、イベントニュースカルーセル、お問い合わせエリア、など・・・）

////////////////////////////////////////////////////*/
@page {
  margin-right: 10mm;
  margin-left: 10mm;
}
@media print {
  html {
    width: 1200px;
    zoom: 0.7;
  }
}

body {
  background-color: #fff;
}
@media only screen and (max-width: 767px) {
  body {
    min-width: 320px;
    overflow-x: hidden;
    position: relative;
  }
}
body.nav-open {
  overflow: hidden !important;
  height: 100% !important;
}

/* ------------------------------------------------
  headerここから
------------------------------------------------ */
header {
  width: 100%;
  height: 60px;
  -webkit-box-shadow: 0px 0px 1px rgba(0, 25, 42, 0.5);
  -moz-box-shadow: 0px 0px 1px rgba(0, 25, 42, 0.5);
  box-shadow: 0px 0px 1px rgba(0, 25, 42, 0.5);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media print, screen and (min-width: 768px) {
  header {
    height: 100px;
  }
}
@media print, screen and (min-width: 1025px) {
  header.min {
    height: 60px;
  }
}
header h1 {
  /* SEO用ヘッダーテキスト */
}
@media print {
  header {
    position: static;
  }
}

/* logo サイトロゴ*/
#logo {
  position: absolute;
  top: 0;
  left: 0;
  width: 30%;
  height: 60px;
  display: table;
}
@media print, screen and (min-width: 768px) {
  #logo {
    width: 210px;
    height: 100px;
  }
}
@media print, screen and (min-width: 1025px) {
  .min #logo {
    width: 127px;
    height: 60px;
  }
}
#logo a {
  display: table-cell;
  vertical-align: middle;
  padding-left: 10px;
}
@media print, screen and (min-width: 1025px) {
  #logo a {
    text-align: center;
  }
}
#logo img {
  width: auto;
  height: 40px;
}
@media print, screen and (min-width: 768px) {
  #logo img {
    width: 160px;
    height: 60px;
  }
}
@media print, screen and (min-width: 1025px) {
  .min #logo img {
    width: 97px;
    height: 30px;
  }
}

/* gNav グローバルメニュー*/
#nav-overlay {
  display: none;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 60px;
  left: 0;
  z-index: 102;
  background-color: rgba(0, 25, 42, 0.8);
}

.header-in-01 {
  display: table;
  height: 60px;
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .header-in-01 {
    margin-left: 210px;
    height: 100px;
    width: calc(100% - 210px - 100px);
  }
}
@media print, screen and (min-width: 1025px) {
  .min .header-in-01 {
    margin-left: 127px;
    height: 60px;
    width: calc(100% - 127px - 60px);
  }
}

@media only screen and (max-width: 1024px) {
  .nav-global {
    display: none;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    position: fixed;
    top: 60px;
    right: 0;
    height: calc(100vh - 60px);
  }
}
@media only screen and (max-width: 767px) {
  .nav-global {
    width: 100%;
  }
  .jp .nav-global {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .nav-global {
    width: 80%;
    top: 100px;
    height: calc(100vh - 100px);
  }
}
@media print, screen and (min-width: 1025px) {
  .nav-global {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    position: relative;
    display: table-cell;
    padding-bottom: 20px;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .jp .nav-global {
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
  }
  .min .nav-global {
    vertical-align: middle;
    padding-bottom: 0px;
  }
}
@media print, screen and (min-width: 1024px) and (max-width: 1390px) {
  .nav-global {
    vertical-align: middle;
    padding-bottom: 0;
  }
  .jp .nav-global {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 1024px) and (max-width: 1140px) {
  .nav-global {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .jp .nav-global {
    font-size: 11px;
    font-size: 1.1rem;
  }
}

@media only screen and (max-width: 1024px) {
  .nav-global-wp {
    width: 100%;
    height: 100%;
  }
}
@media print, screen and (min-width: 1025px) {
  .nav-global-wp {
    display: table;
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
    text-align: center;
  }
}
@media only screen and (min-width: 1025px) and (min-width: 1024px) and (max-width: 1179px) {
  .min .nav-global-wp {
    text-align: left;
    padding-left: 10px;
  }
}
.nav-global-wp.open-nest > li {
  display: none;
}
.nav-global-wp li {
  display: block;
  box-sizing: border-box;
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}
@media print, screen and (min-width: 1025px) {
  .nav-global-wp li {
    border-bottom: none;
  }
}
.nav-global-wp li.pNav, .nav-global-wp li.pNav li {
  border-bottom: none;
}
.nav-global-wp li.pNav {
  padding-top: 15px;
  padding-bottom: 100%;
}
@media print, screen and (min-width: 1025px) {
  .nav-global-wp li.pNav {
    display: none;
  }
}
.nav-global-wp li.pNav li {
  font-size: 11px;
  font-size: 1.1rem;
  border: none;
  position: relative;
  padding-left: calc(5% + 10px);
}
.nav-global-wp li.pNav li:before, .nav-global-wp li.pNav li:after {
  content: "";
  display: block;
  position: absolute;
}
.nav-global-wp li.pNav li:before {
  box-sizing: border-box;
  width: 14px;
  height: 14px;
  border-radius: 100%;
  border: 1px solid #fff;
  left: 5%;
  top: 50%;
  margin-top: -7px;
}
.nav-global-wp li.pNav li:after {
  width: 3px;
  height: 3px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform-origin: center;
  transform: rotate(45deg);
  top: 50%;
  left: 5%;
  margin-top: -2px;
  margin-left: 4px;
}
.nav-global-wp li a,
.nav-global-wp li span {
  display: block;
  padding: 17px 5%;
  color: white;
  font-weight: 300;
}
@media only screen and (max-width: 767px) {
  .jp .nav-global-wp li a,
.jp .nav-global-wp li span {
    padding-right: 10%;
  }
}
.nav-global-wp li a .thumb-nav,
.nav-global-wp li span .thumb-nav {
  padding: 0;
}
.nav-global-wp li a.field,
.nav-global-wp li span.field {
  background-color: rgba(0, 104, 175, 0.2);
}
@media print, screen and (min-width: 1025px) {
  .nav-global-wp li a.field,
.nav-global-wp li span.field {
    padding: 5%;
  }
}
.nav-global-wp li.btn-back-01 span,
.nav-global-wp li.btn-back-01 a,
.nav-global-wp li .btn-parent span,
.nav-global-wp li .btn-parent a {
  color: white;
  font-weight: 700;
}
@media only screen and (max-width: 1024px) {
  .nav-global-wp > li.ico-home-01, .nav-global-wp > li.btn-trigger, .nav-global-wp > li.pNav.root {
    background-color: #00192a;
  }
}
@media print, screen and (min-width: 1025px) {
  .nav-global-wp > li.btn-trigger {
    position: relative;
    height: 100px;
    box-sizing: border-box;
    border-bottom: none;
    cursor: pointer;
  }
  .min .nav-global-wp > li.btn-trigger {
    height: 60px;
  }
  .nav-global-wp > li.btn-trigger span,
.nav-global-wp > li.btn-trigger a {
    color: #000;
    font-weight: 700;
    padding: 5px;
  }
  .jp .nav-global-wp > li.btn-trigger span,
.jp .nav-global-wp > li.btn-trigger a {
    padding-top: 10px;
  }
  .nav-global-wp > li.btn-trigger span:before,
.nav-global-wp > li.btn-trigger a:before {
    width: 0;
    height: 2px;
    background-color: #00192a;
    bottom: 0px;
    left: 50%;
    transform: translateX(-50%);
  }
}
@media only screen and (min-width: 1025px) and (min-width: 1024px) and (max-width: 1179px) {
  .min .nav-global-wp > li.btn-trigger span:before,
.min .nav-global-wp > li.btn-trigger a:before {
    margin-left: -7px;
  }
}
@media print, screen and (min-width: 1025px) {
  .nav-global-wp > li.btn-trigger span:after,
.nav-global-wp > li.btn-trigger a:after {
    -webkit-transition: all 0s ease 0s;
    -moz-transition: all 0s ease 0s;
    -ms-transition: all 0s ease 0s;
    -o-transition: all 0s ease 0s;
    transition: all 0s ease 0s;
    border-width: 0 6px 8px;
    border-color: transparent transparent #00192a;
    display: block;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    opacity: 0;
    filter: alpha(opacity=0);
    top: auto;
    right: auto;
    bottom: -40px;
    left: 50%;
    margin-left: -6px;
  }
}
@media only screen and (min-width: 1025px) and (min-width: 1024px) and (max-width: 1179px) {
  .min .nav-global-wp > li.btn-trigger span:after,
.min .nav-global-wp > li.btn-trigger a:after {
    margin-left: -13px;
  }
}
@media print, screen and (min-width: 1025px) {
  .nav-global-wp > li.btn-trigger:hover span:before,
.nav-global-wp > li.btn-trigger:hover a:before, .nav-global-wp > li.btn-trigger.active span:before,
.nav-global-wp > li.btn-trigger.active a:before {
    width: 90%;
    bottom: 0px;
  }
  .jp .nav-global-wp > li.btn-trigger:hover span:before,
.jp .nav-global-wp > li.btn-trigger:hover a:before, .jp .nav-global-wp > li.btn-trigger.active span:before,
.jp .nav-global-wp > li.btn-trigger.active a:before {
    width: 74%;
  }
  .min .nav-global-wp > li.btn-trigger:hover span:before,
.min .nav-global-wp > li.btn-trigger:hover a:before, .min .nav-global-wp > li.btn-trigger.active span:before,
.min .nav-global-wp > li.btn-trigger.active a:before {
    bottom: 5px;
  }
}
@media print, screen and (min-width: 1025px) {
  .nav-global-wp > li.btn-trigger:hover span:before,
.nav-global-wp > li.btn-trigger:hover a:before {
    width: 90%;
    bottom: 0px;
  }
  .jp .nav-global-wp > li.btn-trigger:hover span:before,
.jp .nav-global-wp > li.btn-trigger:hover a:before {
    width: 74%;
  }
  .nav-global-wp > li.btn-trigger:hover span:after,
.nav-global-wp > li.btn-trigger:hover a:after {
    -webkit-transition: all 0.5s ease 0.5s;
    -moz-transition: all 0.5s ease 0.5s;
    -ms-transition: all 0.5s ease 0.5s;
    -o-transition: all 0.5s ease 0.5s;
    transition: all 0.5s ease 0.5s;
    opacity: 1;
    filter: alpha(opacity=100);
    bottom: -15px;
  }
  .min .nav-global-wp > li.btn-trigger:hover span:before,
.min .nav-global-wp > li.btn-trigger:hover a:before {
    bottom: 5px;
  }
  .min .nav-global-wp > li.btn-trigger:hover span:after,
.min .nav-global-wp > li.btn-trigger:hover a:after {
    bottom: -10px;
  }
}
.nav-global-wp > li.btn-trigger.noDrop span:after,
.nav-global-wp > li.btn-trigger.noDrop a:after {
  display: none;
}
@media print, screen and (min-width: 1280px) {
  .nav-global-wp > li.btn-trigger span,
.nav-global-wp > li.btn-trigger a {
    letter-spacing: 0.5px;
  }
  .jp .nav-global-wp > li.btn-trigger span,
.jp .nav-global-wp > li.btn-trigger a {
    letter-spacing: 0.1em;
  }
  .nav-global-wp > li.btn-trigger:hover span:before,
.nav-global-wp > li.btn-trigger:hover a:before, .nav-global-wp > li.btn-trigger.active span:before,
.nav-global-wp > li.btn-trigger.active a:before {
    width: 70%;
    bottom: 0px;
  }
  .jp .nav-global-wp > li.btn-trigger:hover span:before,
.jp .nav-global-wp > li.btn-trigger:hover a:before, .jp .nav-global-wp > li.btn-trigger.active span:before,
.jp .nav-global-wp > li.btn-trigger.active a:before {
    width: 74%;
  }
  .nav-global-wp > li.btn-trigger:hover span:after,
.nav-global-wp > li.btn-trigger:hover a:after, .nav-global-wp > li.btn-trigger.active span:after,
.nav-global-wp > li.btn-trigger.active a:after {
    bottom: -30px;
  }
  .min .nav-global-wp > li.btn-trigger:hover span:before,
.min .nav-global-wp > li.btn-trigger:hover a:before, .min .nav-global-wp > li.btn-trigger.active span:before,
.min .nav-global-wp > li.btn-trigger.active a:before {
    bottom: 5px;
  }
}
@media print, screen and (min-width: 1025px) {
  .nav-global-wp > li.btn-trigger, .nav-global-wp > li#box-search {
    display: table-cell;
    padding-bottom: 15px;
  }
  .min .nav-global-wp > li.btn-trigger, .min .nav-global-wp > li#box-search {
    vertical-align: middle;
    padding-bottom: 0px;
  }
}
@media print, screen and (min-width: 1280px) {
  .nav-global-wp > li.btn-trigger, .nav-global-wp > li#box-search {
    vertical-align: middle;
    padding-bottom: 0px;
  }
  .min .nav-global-wp > li.btn-trigger, .min .nav-global-wp > li#box-search {
    vertical-align: middle;
  }
}

@media print, screen and (min-width: 1025px) {
  .area-dropdown-01.box-slideIn-01 {
    display: none;
    position: absolute;
    top: 100px;
    right: auto;
    left: -210px;
    width: 100vw;
    max-width: 100vw;
    max-height: calc(100vh - 100px);
    background-color: #00192a;
    text-align: left;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .min .area-dropdown-01.box-slideIn-01 {
    top: 60px;
    left: -127px;
    max-height: calc(100vh - 60px);
  }
}

.ps-container > .ps-scrollbar-y-rail {
  right: 20px !important;
  opacity: 1 !important;
}
.ps-container > .ps-scrollbar-y-rail:hover {
  background-color: rgba(255, 255, 255, 0.2) !important;
}
.ps-container > .ps-scrollbar-y-rail:hover .ps-scrollbar-y {
  background-color: #00a0dc !important;
}

@media print, screen and (min-width: 1025px) {
  .area-dropdown-in {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    margin: 60px auto;
    background-color: #052032;
  }
}
@media print, screen and (min-width: 1280px) {
  .area-dropdown-in {
    width: 95%;
    max-width: 1200px;
  }
}

@media only screen and (max-width: 1024px) {
  .box-slideIn-01,
.box-slideIn-02,
.box-slideIn-03 {
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    width: 100%;
    height: 100%;
    background-color: #00192a;
    z-index: 1;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    transition-timing-function: cubic-bezier(0.1, 0.57, 0.1, 1);
  }
  .box-slideIn-01 .open-nest > li,
.box-slideIn-02 .open-nest > li,
.box-slideIn-03 .open-nest > li {
    display: none;
  }
  .nav-global-wp .box-slideIn-01,
.nav-global-wp .box-slideIn-02,
.nav-global-wp .box-slideIn-03 {
    display: none;
  }
}

@media print, screen and (min-width: 1025px) {
  .box-slideIn-02,
.box-slideIn-03 {
    opacity: 0;
    display: none !important;
    transform: translateX(50%);
    max-width: 32.3333333333vw;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 100%;
    z-index: 1;
  }
  .box-slideIn-02.show,
.box-slideIn-03.show {
    display: block !important;
  }
  .box-slideIn-02.thin li a,
.box-slideIn-03.thin li a {
    padding: 5px 5% !important;
    line-height: 1.6;
  }
}
@media print, screen and (min-width: 1280px) {
  .box-slideIn-02,
.box-slideIn-03 {
    max-width: 400px;
  }
}

@media only screen and (max-width: 1024px) {
  .box-slideIn-01-in {
    background-color: #0e2d42;
  }
}
@media print, screen and (min-width: 1025px) {
  .box-slideIn-01-in {
    position: relative;
    padding: 10px 0;
    max-width: 400px;
  }
  .box-slideIn-01-in:before {
    content: "";
    display: block;
    width: 1px;
    height: calc(100% - 20px);
    background-color: rgba(255, 255, 255, 0.5);
    position: absolute;
    right: -1px;
  }
  .box-slideIn-01-in li.active, .box-slideIn-01-in li:hover {
    background-color: #0e2d42;
  }
  .box-slideIn-01-in.colum-02 {
    max-width: 800px;
  }
  .box-slideIn-01-in.colum-02 > li {
    width: 49%;
    float: left;
  }
  .box-slideIn-01-in.colum-03 {
    max-width: 1200px;
  }
  .box-slideIn-01-in.colum-03 > li {
    width: 400px;
    float: left;
  }
  .box-slideIn-01-in.colum-03:before {
    display: none;
  }
  .box-slideIn-01-in.thick > li > a {
    padding: 5% !important;
  }
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .box-slideIn-01-in {
    max-width: 33.3333333333vw;
  }
  .box-slideIn-01-in.colum-02 {
    max-width: 66.6666666667vw;
  }
  .box-slideIn-01-in.colum-03 {
    max-width: 1200px;
  }
}

.box-slideIn-02 {
  background-color: #1a394f;
}
#gNav .box-slideIn-02 {
  border-bottom: none;
}
@media print, screen and (min-width: 1025px) {
  .box-slideIn-02 {
    background-color: #0e2d42;
  }
  .box-slideIn-02 li.active, .box-slideIn-02 li:hover {
    background-color: #1a394f;
  }
}

.box-slideIn-03 {
  background-color: #304d63;
}
@media print, screen and (min-width: 1025px) {
  .box-slideIn-03 {
    background-color: #1a394f;
  }
  .box-slideIn-03 li.active, .box-slideIn-03 li:hover {
    background-color: #304d63;
  }
}

.ico-home-01 {
  position: relative;
}
.ico-home-01:after {
  content: "";
  display: block;
  position: absolute;
}
.ico-home-01:after {
  content: "";
  display: block;
  width: 25px;
  height: 25px;
  background-image: url(../img/ico-home-01.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 2%;
  margin-top: -12px;
  pointer-events: none;
}

@media only screen and (max-width: 1024px) {
  .btn-trigger.open {
    background-color: #0e2d42 !important;
  }
}
.btn-trigger > a, .btn-trigger > span {
  position: relative;
}
.btn-trigger > a:before, .btn-trigger > a:after, .btn-trigger > span:before, .btn-trigger > span:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.btn-trigger > a:after, .btn-trigger > span:after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 5%;
  margin-top: -5px;
}
@media print, screen and (min-width: 1025px) {
  .btn-trigger > a:after, .btn-trigger > span:after {
    width: 0;
    height: 0;
    border-width: 4px 6px;
    border-style: solid;
    border-color: transparent transparent transparent #fff;
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    right: 15px;
  }
}

.thumb-nav {
  padding: 0;
}
.thumb-nav:first-child {
  display: none;
}

@media print, screen and (min-width: 1025px) {
  .thumb-nav-wp {
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    display: table !important;
    padding: 5px 15px !important;
    width: 100%;
  }
  .thumb-nav-wp .thumb-nav {
    display: table-cell;
    vertical-align: middle;
    line-height: 1.4;
  }
  .thumb-nav-wp .thumb-nav img {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid #ccc;
  }
  .thumb-nav-wp .thumb-nav:first-child {
    width: 120px;
  }
  .thumb-nav-wp .thumb-nav:last-child {
    padding: 0 15px 0 10px;
  }
}
.mod-item-01 {
  display: none;
}
@media print, screen and (min-width: 1025px) {
  .mod-item-01 {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4;
    width: 60%;
    float: right;
    margin-right: 20px;
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  .mod-item-01.hide {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  .mod-item-01 .box-item-01 {
    margin: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    width: calc(50% - 20px);
    border: 1px solid rgba(255, 255, 255, 0.5);
    background-color: rgba(255, 255, 255, 0);
    float: left;
    -webkit-transition: all ease 0.25s;
    -moz-transition: all ease 0.25s;
    -ms-transition: all ease 0.25s;
    -o-transition: all ease 0.25s;
    transition: all ease 0.25s;
  }
  .mod-item-01 .box-item-01:hover {
    background-color: rgba(255, 255, 255, 0.2);
  }
  .mod-item-01 .box-item-01 a {
    box-sizing: border-box;
    display: table;
    width: 100%;
    padding: 3%;
  }
  .mod-item-01 .box-item-01 a .box-item-01-in {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-weight: bold;
  }
  .mod-item-01 .box-item-01 a .box-item-01-in:first-child {
    width: 84px;
  }
  .mod-item-01.single .box-item-01 {
    float: right;
  }
  .mod-item-01.type01 {
    width: 30%;
  }
  .mod-item-01.type01 .box-item-01 {
    width: calc(100% - 20px);
    float: none;
  }
  .mod-item-01 .small {
    font-weight: normal;
    font-size: 90%;
  }
}
@media print, screen and (min-width: 1280px) {
  .mod-item-01 {
    margin-right: 0;
  }
}

@media only screen and (max-width: 1024px) {
  .navbtn-wrap {
    text-align: center;
  }
}
@media only screen and (max-width: 767px) {
  .navbtn-wrap {
    width: 35px;
    height: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .navbtn-wrap {
    height: 60px;
  }
}

@media only screen and (max-width: 1024px) {
  .navbtn-title {
    font-size: 11px;
    font-size: 1.1rem;
    font-weight: bold;
    line-height: 0.8;
    color: #333;
    position: absolute;
    bottom: 5px;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    font-family: "游ゴシック", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "Roboto", Arial, Helvetica, Verdana, sans-serif;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .navbtn-title {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 1024px) {
  .navbtn-title.roboto {
    bottom: 4px;
  }
}
@media only screen and (max-width: 1024px) {
  .en .navbtn-title {
    font-family: "Roboto", "游ゴシック", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", Arial, Helvetica, Verdana, sans-serif;
  }
}

#btn-slide-trigger {
  width: 60px;
  height: 60px;
  position: fixed;
  top: 0;
  right: 0;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #btn-slide-trigger {
    width: 100px;
    height: 100px;
  }
}
#btn-slide-trigger .ico-menu-01 {
  width: 20px;
  height: 3px;
  background-color: #00192a;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #btn-slide-trigger .ico-menu-01 {
    width: 50px;
    height: 4px;
  }
}
@media only screen and (max-width: 767px) {
  #btn-slide-trigger .ico-menu-01 {
    top: 43%;
  }
}
#btn-slide-trigger .ico-menu-01:before, #btn-slide-trigger .ico-menu-01:after {
  content: "";
  display: block;
  width: 20px;
  height: 3px;
  background-color: #00192a;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #btn-slide-trigger .ico-menu-01:before, #btn-slide-trigger .ico-menu-01:after {
    width: 50px;
    height: 4px;
  }
}
#btn-slide-trigger .ico-menu-01:before {
  transform: translateY(-8px);
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #btn-slide-trigger .ico-menu-01:before {
    transform: translateY(-16px);
  }
}
#btn-slide-trigger .ico-menu-01:after {
  transform: translateY(8px);
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #btn-slide-trigger .ico-menu-01:after {
    transform: translateY(16px);
  }
}
#btn-slide-trigger.open .ico-menu-01 {
  background-color: transparent;
  -webkit-transition: all 0s ease 0s;
  -moz-transition: all 0s ease 0s;
  -ms-transition: all 0s ease 0s;
  -o-transition: all 0s ease 0s;
  transition: all 0s ease 0s;
}
#btn-slide-trigger.open .ico-menu-01:before {
  transform: translateY(0) rotate(135deg);
}
#btn-slide-trigger.open .ico-menu-01:after {
  transform: translateY(0) rotate(45deg);
}
@media print, screen and (min-width: 1025px) {
  #btn-slide-trigger {
    display: none;
  }
}
#btn-slide-trigger .navbtn-title {
  bottom: 10px;
}

@media only screen and (min-width: 1025px) and (max-width: 1200px) {
  .btn-parent {
    padding-left: 20px;
  }
}
@media print, screen and (min-width: 1025px) {
  .btn-parent {
    display: block;
    float: left;
    margin-top: -50px;
  }
  .btn-parent:hover {
    opacity: 0.5;
    filter: alpha(opacity=50);
  }
}
@media print, screen and (min-width: 1025px) {
  .btn-parent span,
.btn-parent a {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 2px;
    white-space: nowrap;
    padding: 3% 0 !important;
    position: relative;
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  .btn-parent span:before, .btn-parent span:after,
.btn-parent a:before,
.btn-parent a:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: -50px;
  }
  .btn-parent span:before,
.btn-parent a:before {
    width: 20px;
    height: 20px;
    border-radius: 100%;
    border: 1px solid #fff;
    margin-top: -13px;
  }
  .btn-parent span:after,
.btn-parent a:after {
    width: 5px;
    height: 5px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -5px;
    right: -41px;
  }
}

.btn-back-01 {
  background-color: #00192a;
  position: relative;
  padding-left: 25px;
}
@media print, screen and (min-width: 1025px) {
  .btn-back-01 {
    display: none;
  }
}
.btn-back-01:before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: absolute;
  top: 50%;
  left: 5%;
  margin-top: -5px;
}

#box-search {
  display: none;
}
@media print, screen and (min-width: 1025px) {
  #box-search {
    display: table-cell;
    padding: 0;
  }
}

#btn-search-01 {
  position: absolute;
  top: 20px;
  right: 80px;
}
@media only screen and (max-width: 767px) {
  #btn-search-01 {
    top: 15px;
  }
}
@media only screen and (max-width: 480px) {
  #btn-search-01 {
    right: 18vw;
  }
}
#btn-search-01 img {
  width: 20px;
  height: 20px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #btn-search-01 {
    top: 33px;
    right: 130px;
  }
  #btn-search-01 img {
    width: 30px;
    height: 30px;
  }
}
@media print, screen and (min-width: 1025px) {
  #btn-search-01 {
    display: none;
  }
}

.box-search-01-wp {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  background-color: rgba(0, 25, 42, 0.9);
  border-bottom: 1px solid #00192a;
  position: fixed;
  top: 60px;
  left: 0;
  z-index: 2;
  width: 100%;
  padding: 30px 0;
  display: none;
  white-space: nowrap;
}
.box-search-01-wp.open {
  display: table;
  -webkit-animation: boxSearch-slideDown 0.5s ease 0s forwards;
  -moz-animation: boxSearch-slideDown 0.5s ease 0s forwards;
  -o-animation: boxSearch-slideDown 0.5s ease 0s forwards;
  animation: boxSearch-slideDown 0.5s ease 0s forwards;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-search-01-wp {
    top: 100px;
    padding: 60px 0;
  }
}
@media print, screen and (min-width: 1025px) {
  .box-search-01-wp {
    display: block;
    position: static;
    width: auto;
    padding: 0;
    background-color: transparent;
    border: none;
  }
}
@media print {
  .box-search-01-wp {
    width: 100px;
  }
}
.box-search-01-wp .close-search-sp {
  display: table-cell;
  position: relative;
}
.box-search-01-wp .close-search-sp:before, .box-search-01-wp .close-search-sp:after {
  content: "";
  display: block;
  width: 60px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 5%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-search-01-wp .close-search-sp:before, .box-search-01-wp .close-search-sp:after {
    left: 25%;
  }
}
.box-search-01-wp .close-search-sp:before {
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.box-search-01-wp .close-search-sp:after {
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
@media print, screen and (min-width: 1025px) {
  .box-search-01-wp .close-search-sp {
    display: none;
  }
}

#box-search-01 {
  display: table-cell;
  width: 80%;
  padding-left: 30px;
  padding-right: 20px;
}
@media print, screen and (min-width: 1025px) {
  #box-search-01 {
    display: block;
    position: absolute;
    width: auto;
    top: 0px;
    right: 0;
    padding: 0;
  }
  .min #box-search-01 {
    position: static;
  }
}
@media print, screen and (min-width: 1280px) {
  #box-search-01 {
    position: static;
  }
}
#box-search-01 .box-input {
  display: inline-block;
  vertical-align: top;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  margin-right: -5px;
  width: calc(100% - 40px);
  height: 40px;
  padding: 5px 10px;
  background-color: #eaeaea;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #box-search-01 .box-input {
    height: 60px;
  }
}
@media print, screen and (min-width: 1025px) {
  #box-search-01 .box-input {
    width: 80px;
    height: 30px;
  }
}
@media print, screen and (min-width: 1280px) {
  #box-search-01 .box-input {
    margin-left: 30px;
  }
}
@media print, screen and (min-width: 1600px) {
  #box-search-01 .box-input {
    margin-left: 60px;
  }
}
@media print, screen and (min-width: 1025px) {
  #box-search-01 .box-input:focus {
    margin-left: 0;
    box-shadow: 0px 0px 4px rgba(0, 25, 42, 0.5);
    width: calc(60px + 10vw);
  }
  .min #box-search-01 .box-input:focus {
    width: 80px;
  }
}
@media only screen and (min-width: 1060px) {
  .min #box-search-01 .box-input:focus {
    width: calc(60px + 10vw);
  }
}
@media print, screen and (min-width: 1600px) {
  #box-search-01 .box-input:focus {
    width: 200px;
  }
  .min #box-search-01 .box-input:focus {
    width: 200px;
  }
}
#box-search-01 .box-submit {
  display: inline-block;
  vertical-align: top;
  cursor: pointer;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media print, screen and (min-width: 1025px) {
  #box-search-01 .box-submit:hover {
    box-shadow: 0px 0px 4px rgba(0, 25, 42, 0.5);
  }
}
#box-search-01 .box-submit img {
  width: 40px;
  height: 40px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #box-search-01 .box-submit img {
    width: 60px;
    height: 60px;
  }
}
@media print, screen and (min-width: 1025px) {
  #box-search-01 .box-submit img {
    width: 30px;
    height: 30px;
  }
}

#btn-language-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  top: 20px;
  right: 140px;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 767px) {
  #btn-language-01 {
    top: 15px;
    width: 60px;
  }
}
@media only screen and (max-width: 480px) {
  #btn-language-01 {
    right: 30vw;
  }
}
#btn-language-01 img {
  width: 20px;
  height: 20px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #btn-language-01 {
    top: 33px;
    right: 210px;
  }
  #btn-language-01 img {
    width: 30px;
    height: 30px;
  }
}
@media print, screen and (min-width: 1025px) {
  #btn-language-01 {
    top: 0;
    right: 0;
    display: table-cell;
    width: 100px;
    height: 100px;
    padding-top: 23px;
    background-color: #00a0dc;
    font-size: 14px;
    font-size: 1.4rem;
    color: #fff;
    line-height: 2.2;
    text-align: center;
    cursor: pointer;
  }
  #btn-language-01 img {
    width: auto;
    height: auto;
  }
  .min #btn-language-01 {
    width: 60px;
    height: 60px;
    padding-top: 5px;
    line-height: 1.6;
    font-size: 11px;
    font-size: 1.1rem;
  }
  .min #btn-language-01 img {
    -webkit-transform: scale(0.8, 0.8);
    -moz-transform: scale(0.8, 0.8);
    -ms-transform: scale(0.8, 0.8);
    -o-transform: scale(0.8, 0.8);
    transform: scale(0.8, 0.8);
  }
  #btn-language-01:hover {
    background-color: #0068af;
  }
}

/* ------------------------------------------------
  #contentsエリアここから
------------------------------------------------ */
#contents {
  padding-top: 60px;
}
@media print, screen and (min-width: 768px) {
  #contents {
    padding-top: 100px;
  }
}
@media print, screen and (min-width: 1025px) {
  #contents.headre-min {
    padding-top: 60px;
  }
}
@media print {
  #contents {
    padding-top: 0px;
  }
}
#contents.type01 {
  padding-top: 0;
}
@media print, screen and (min-width: 768px) {
  #contents.type01 {
    padding-top: 0;
  }
}
@media print, screen and (min-width: 1025px) {
  #contents.type01.headre-min {
    padding-top: 0;
  }
}
@media print {
  #contents.type01 {
    padding-top: 0px;
  }
}

/* ------------------------------------------------
  footerここから
------------------------------------------------ */
footer {
  background-color: #fff;
  /*コピーライト*/
}
footer a, footer small {
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 1px;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.PC footer a:hover {
  color: #00a0dc;
}
footer .footer-in {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media print, screen and (min-width: 768px) {
  footer .footer-in {
    width: 90%;
    margin: 0 auto;
    max-width: 1200px;
  }
}
footer .box-footer-01 {
  padding: 40px 0 50px;
  background-color: #00192a;
}
@media only screen and (max-width: 767px) {
  footer .box-footer-01 {
    padding-bottom: 0;
  }
}
footer .box-footer-02 {
  background-color: rgba(0, 25, 42, 0.8);
}
@media print, screen and (min-width: 768px) {
  footer .box-footer-wp {
    max-width: 1200px;
    padding: 0 20px;
    margin: 0 auto;
  }
}
footer .box-footer-03 {
  padding: 82px 0;
}
@media only screen and (max-width: 767px) {
  footer .box-footer-03 {
    padding: 20px 0;
  }
}
footer .box-footer-04 {
  padding: 40px 0;
  border-bottom: 1px solid #eaeaea;
}
@media print, screen and (min-width: 1280px) {
  footer .box-footer-04 {
    float: left;
    border-bottom: none;
  }
}
footer .box-footer-04 .mod-bnr-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  border: 2px solid #e3e3e3;
  padding: 10px;
  display: table;
  position: relative;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  footer .box-footer-04 .mod-bnr-01 {
    width: 80%;
  }
}
@media print, screen and (min-width: 1280px) {
  footer .box-footer-04 .mod-bnr-01 {
    margin: auto;
    width: 400px;
  }
}
footer .box-footer-04 .mod-bnr-01:after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-top: 3px solid #0068af;
  border-right: 3px solid #0068af;
  position: absolute;
  top: 50%;
  right: 10px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
footer .box-footer-04 .mod-bnr-01 .thumb-bnr-01,
footer .box-footer-04 .mod-bnr-01 .txt-bnr-01 {
  display: table-cell;
  vertical-align: middle;
}
footer .box-footer-04 .mod-bnr-01 .thumb-bnr-01 {
  overflow: hidden;
  width: 160px;
  height: 160px;
  border: 2px solid #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 480px) {
  footer .box-footer-04 .mod-bnr-01 .thumb-bnr-01 {
    width: 120px;
    height: 120px;
  }
}
footer .box-footer-04 .mod-bnr-01 .thumb-bnr-01 img {
  width: 100%;
  height: auto;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
footer .box-footer-04 .mod-bnr-01 .txt-bnr-01 {
  color: #333;
  font-weight: bold;
  padding: 0 20px;
  line-height: 1.4;
  font-size: 18px;
  font-size: 1.8rem;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
footer .box-footer-04 .mod-bnr-01 .txt-bnr-01 .japanese {
  font-weight: normal;
  font-size: 20px;
  font-size: 2rem;
  padding-top: 0.25em;
}
.PC footer .box-footer-04 a:hover .mod-bnr-01 {
  border-color: #0068af;
  background-color: #0068af;
}
.PC footer .box-footer-04 a:hover .mod-bnr-01:after {
  border-color: #fff;
}
.PC footer .box-footer-04 a:hover .txt-bnr-01 {
  color: #fff;
}
.PC footer .box-footer-04 a:hover .thumb-bnr-01 img {
  -webkit-transform: scale(1.2, 1.2);
  -moz-transform: scale(1.2, 1.2);
  -ms-transform: scale(1.2, 1.2);
  -o-transform: scale(1.2, 1.2);
  transform: scale(1.2, 1.2);
}
footer .box-footer-05 {
  display: table-cell;
  vertical-align: middle;
  padding: 0 40px;
}
@media only screen and (max-width: 767px) {
  footer .box-footer-05 {
    display: block;
    text-align: center;
    padding-bottom: 20px;
  }
}
footer .box-footer-05 img {
  opacity: 1;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.PC footer .box-footer-05 a:hover img {
  opacity: 0.5;
}
footer .box-footer-06 {
  text-align: center;
  padding-top: 20px;
}
@media only screen and (max-width: 767px) {
  footer .box-footer-06 {
    display: block;
    padding-bottom: 20px;
    padding-left: 15px;
    padding-right: 15px;
  }
}
footer .box-footer-06 img {
  opacity: 1;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 767px) {
  footer .box-footer-06 img {
    /*width:100%;*/
    /*height:auto;*/
  }
}
.PC footer .box-footer-06 a:hover img {
  opacity: 0.5;
}
footer .logo-footer-wp {
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  footer .logo-footer-wp {
    text-align: center;
  }
}
footer .logo-footer {
  float: left;
}
@media print, screen and (min-width: 768px) {
  footer .logo-footer {
    position: relative;
  }
}
@media only screen and (max-width: 767px) {
  footer .logo-footer {
    float: none;
    margin-bottom: 25px;
  }
}
@media print, screen and (min-width: 768px) {
  footer .logo-footer img {
    position: absolute;
    top: 0;
    left: 0;
  }
}
@media only screen and (max-width: 767px) {
  footer .logo-footer img {
    width: 40%;
    height: auto;
  }
}
footer .footer-conv {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
  footer .footer-conv {
    flex-direction: column;
    padding: 0 5%;
  }
}
footer .footer-conv .social-footer-wp {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
@media print, screen and (min-width: 1025px) {
  footer .footer-conv .social-footer-wp {
    width: 26%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  footer .footer-conv .social-footer-wp {
    width: 50%;
  }
}
footer .footer-conv .social-footer-wp .social-title {
  color: #fff;
  margin-right: 20px;
}
footer .footer-conv .social-footer-wp .list-ico {
  display: flex;
  align-items: center;
  height: 100%;
}
footer .footer-conv .social-footer-wp .ico {
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  background-color: #fff;
  width: 55px;
  height: 50px;
  display: flex;
  align-items: center;
}
footer .footer-conv .social-footer-wp .ico img {
  display: flex;
  align-self: center;
  width: 100%;
  height: auto;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
footer .footer-conv .social-footer-wp .ico > a {
  display: inline-block;
  box-sizing: border-box;
}
footer .footer-conv .social-footer-wp .ico.youtube img {
  min-width: 29px;
  height: auto;
}
footer .footer-conv .social-footer-wp .ico.youtube a {
  padding: 10px;
}
.PC footer .footer-conv .social-footer-wp .ico:hover img {
  opacity: 0.5;
}
@media print, screen and (min-width: 1025px) {
  .jp footer .social-footer-wp {
    width: 25%;
  }
}
footer .btn-newsrelease-01 {
  display: inline-block;
  border: 1px solid #fff;
  padding: 5px 30px 5px 40px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  color: #fff;
  position: relative;
}
@media print, screen and (min-width: 1025px) {
  footer .btn-newsrelease-01 {
    white-space: nowrap;
    width: 26%;
    text-align: center;
  }
}
@media only screen and (max-width: 1024px) {
  footer .btn-newsrelease-01 {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  footer .btn-newsrelease-01 {
    width: 90%;
  }
}
footer .btn-newsrelease-01:before, footer .btn-newsrelease-01:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
footer .btn-newsrelease-01:after {
  width: 7px;
  height: 7px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  left: 25px;
  margin-top: -4px;
  margin-left: -3px;
}
.PC footer .btn-newsrelease-01:hover {
  background-color: #fff;
}
.PC footer .btn-newsrelease-01:hover:after {
  border-color: #00192a;
}
.PC footer .btn-newsrelease-01:hover a {
  color: #00192a;
}
@media print, screen and (min-width: 1025px) {
  .jp footer .btn-newsrelease-01 {
    width: 25%;
  }
}
footer .fNav-02 {
  float: left;
}
@media only screen and (max-width: 767px) {
  footer .fNav-02 {
    float: none;
    padding: 5% 0;
    background-color: #00192a;
  }
}
footer .fNav-02 ul {
  border-left: 1px solid #fff;
  margin: 10px 0;
  line-height: 1;
  font-size: 12px;
  font-size: 1.2rem;
}
footer .fNav-02 ul li {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
  padding: 0 15px;
  border-right: 1px solid #fff;
}
footer .fNav-02 ul li a {
  font-size: 12px;
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  footer .fNav-02 ul {
    margin: 0;
    border: none;
  }
  footer .fNav-02 ul li {
    border: none;
    width: 50%;
    padding: 3% 0;
    text-align: center;
  }
}
footer small {
  float: right;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1;
  margin: 10px 0;
}
@media only screen and (max-width: 767px) {
  footer small {
    float: none;
    display: block;
    text-align: center;
    margin: 0;
    padding: 10px 0;
  }
}
@media print {
  footer {
    page-break-inside: avoid;
  }
}

/*フッター内コンテンツ*/
.box-mark-01-wp {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-justify-content: center;
  -moz-justify-content: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.box-mark-01-wp .box-mark-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 20px;
  padding-left: 5px;
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  text-align: left;
  line-height: 1.4;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  opacity: 1;
  filter: alpha(opacity=100);
}
@media screen and (min-width: 1024px) {
  .box-mark-01-wp .box-mark-01:last-child {
    border-right: 1px solid #eaeaea;
  }
}
.box-mark-01-wp .box-mark-01:nth-child(even) {
  border-left: 1px solid #eaeaea;
}
.box-mark-01-wp .box-mark-01:nth-child(n+3) {
  border-top: 1px solid #eaeaea;
}
@media only screen and (max-width: 767px) {
  .box-mark-01-wp .box-mark-01:nth-child(even) {
    border: none;
  }
  .box-mark-01-wp .box-mark-01:nth-child(n+2) {
    border-top: 1px solid #eaeaea;
  }
}
@media screen and (max-width: 767px) and (orientation: landscape) {
  .box-mark-01-wp .box-mark-01 {
    width: 50%;
  }
  .box-mark-01-wp .box-mark-01:nth-child(-n+2) {
    border-top: none;
  }
  .box-mark-01-wp .box-mark-01:nth-child(even) {
    border-left: 1px solid #eaeaea;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-mark-01-wp .box-mark-01 {
    width: 50%;
  }
}
@media screen and (min-width: 1024px) {
  .box-mark-01-wp .box-mark-01 {
    width: 25%;
    border-left: 1px solid #eaeaea;
  }
  .box-mark-01-wp .box-mark-01:nth-child(n+3) {
    border-top: none;
  }
}
@media print, screen and (min-width: 1025px) {
  .box-mark-01-wp .box-mark-01:hover {
    opacity: 0.5;
    filter: alpha(opacity=50);
  }
}
.box-mark-01-wp .box-mark-01 img {
  max-width: 100%;
  height: auto;
  float: left;
}
.box-mark-01-wp .box-mark-01 .txt-mark-01 {
  display: block;
  padding-top: 10px;
  padding-left: 100px;
}

/*フッター内コンテンツ-バナー（小）配置時*/
.box-mark-02-wp {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-justify-content: center;
  -moz-justify-content: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.box-mark-02-wp .box-mark-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 20px;
  padding-left: 5px;
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  text-align: left;
  line-height: 1.4;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  opacity: 1;
  filter: alpha(opacity=100);
}
.box-mark-02-wp .box-mark-01.bnr_mini {
  padding: 0;
}
@media only screen and (max-width: 767px) {
  .box-mark-02-wp .box-mark-01.bnr_mini {
    width: 100%;
    padding-top: 20px;
  }
}
.box-mark-02-wp .box-mark-01.bnr_mini a {
  padding: 0;
  text-align: center;
}
.box-mark-02-wp .box-mark-01.bnr_mini a img {
  clear: both;
  display: block;
  width: 180px;
  margin: 0 auto;
  float: none;
  text-align: center;
  padding: 5px 0;
}
@media screen and (min-width: 1024px) {
  .box-mark-02-wp .box-mark-01:last-child {
    border-right: 1px solid #eaeaea;
  }
}
.box-mark-02-wp .box-mark-01:nth-child(even) {
  border-left: 1px solid #eaeaea;
}
.box-mark-02-wp .box-mark-01:nth-child(n+3) {
  border-top: 1px solid #eaeaea;
}
@media only screen and (max-width: 767px) {
  .box-mark-02-wp .box-mark-01:nth-child(even) {
    border: none;
  }
  .box-mark-02-wp .box-mark-01:nth-child(n+2) {
    border-top: 1px solid #eaeaea;
  }
}
@media screen and (max-width: 767px) and (orientation: landscape) {
  .box-mark-02-wp .box-mark-01 {
    width: 50%;
  }
  .box-mark-02-wp .box-mark-01:nth-child(-n+2) {
    border-top: none;
  }
  .box-mark-02-wp .box-mark-01:nth-child(even) {
    border-left: 1px solid #eaeaea;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-mark-02-wp .box-mark-01 {
    width: 50%;
  }
}
@media screen and (min-width: 1024px) {
  .box-mark-02-wp .box-mark-01 {
    width: 25%;
    border-left: 1px solid #eaeaea;
  }
  .box-mark-02-wp .box-mark-01:nth-child(n+3) {
    border-top: none;
  }
}
@media print, screen and (min-width: 1025px) {
  .box-mark-02-wp .box-mark-01:hover {
    opacity: 0.5;
    filter: alpha(opacity=50);
  }
}
.box-mark-02-wp .box-mark-01 img {
  max-width: 100%;
  height: auto;
  float: left;
}
.box-mark-02-wp .box-mark-01 .txt-mark-01 {
  display: block;
  padding-top: 10px;
  padding-left: 100px;
}

.nav-footer-wp {
  display: flex;
}
@media print, screen and (min-width: 1025px) {
  .nav-footer-wp {
    align-items: flex-start;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .nav-footer-wp {
    flex-direction: column-reverse;
    align-items: flex-start;
  }
}
@media only screen and (max-width: 767px) {
  .nav-footer-wp {
    flex-direction: column-reverse;
    align-items: center;
  }
}

/* fNav footerナビゲーション */
@media print, screen and (min-width: 1025px) {
  #fNav {
    width: 75%;
  }
}
#fNav > ul {
  display: flex;
  flex-wrap: wrap;
}
#fNav li {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  white-space: nowrap;
  width: 50%;
  padding: 5% 0 5% 10%;
  border-bottom: 1px solid #565656;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .jp #fNav li {
    width: 100%;
    padding-left: 15%;
  }
  #fNav li:nth-child(-n+2) {
    border-top: 1px solid #565656;
  }
  .jp #fNav li:nth-child(-n+2) {
    border-top: none;
  }
  .jp #fNav li:first-child {
    border-top: 1px solid #565656;
  }
  #fNav li:nth-child(odd) {
    border-right: 1px solid #565656;
  }
}
@media print, screen and (min-width: 768px) {
  #fNav li {
    width: 25%;
    padding: 10px 0 10px 30px;
    border: none;
  }
  #fNav li:nth-child(5) {
    clear: both;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .jp #fNav li {
    width: 50%;
  }
}
@media print, screen and (min-width: 1025px) {
  #fNav li {
    width: 25%;
    padding: 0 0 0 30px;
  }
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  #fNav li {
    width: 33%;
  }
}
#fNav a:before, #fNav a:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
#fNav a:before {
  width: 16px;
  height: 16px;
  border: 1px solid #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  left: 0;
  top: 50%;
  margin-top: -8px;
}
#fNav a:after {
  width: 5px;
  height: 5px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  left: 3px;
  margin-top: -3px;
  margin-left: 1px;
}
@media only screen and (max-width: 767px) {
  #fNav a:before {
    left: 5%;
  }
  #fNav a:after {
    left: 5%;
    margin-left: 3px;
  }
}
.PC #fNav a:hover:before, .PC #fNav a:hover:after {
  border-color: #00a0dc;
}
#fNav a.style02:before {
  background: #fff;
}
#fNav a.style02:after {
  border-color: #00192a;
}

/* txtFooter フッター用SEO一行テキスト */
/* boxDescription フッター用SEOテキストエリア */
/* btnPagetop ページトップボタン */
#btnPagetop {
  display: table;
  cursor: pointer;
  position: fixed;
  z-index: 10;
  right: 30px;
  bottom: 30px;
  width: 60px;
  height: 60px;
  border: 1px solid rgba(0, 25, 42, 0.5);
  border-radius: 100%;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 480px) {
  #btnPagetop {
    right: 10px;
  }
}
#btnPagetop p {
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 100%;
  overflow: hidden;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  font-size: 11px;
  font-size: 1.1rem;
  text-indent: -999999px;
}
#btnPagetop p:before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-color: #00192a;
  border-style: solid;
  border-width: 0;
  border-top-width: 2px;
  border-right-width: 2px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -5px;
  margin-left: -7px;
}
.PC #btnPagetop:hover {
  border: none;
  border-radius: 100%;
  overflow: hidden;
  opacity: 0.8;
  filter: alpha(opacity=80);
}
.PC #btnPagetop:hover p {
  border-radius: 100%;
  overflow: hidden;
  background-color: rgba(0, 25, 42, 0.6);
}
.PC #btnPagetop:hover p:before {
  border-color: #fff;
}
#btnPagetop.hide {
  opacity: 0;
  filter: alpha(opacity=0);
}
@media print {
  #btnPagetop {
    display: none;
  }
}

/* ------------------------------------------------
  下層共通設定ここから
------------------------------------------------ */
/* sNav サブメニュー */
#sNav {
  width: 100%;
  height: 100%;
  background: linear-gradient(#f5f5f5, #fff);
  text-align: left;
}
#sNav h1 {
  color: #fff;
  font-size: 15px;
  margin-bottom: 0;
  position: relative;
  z-index: 2;
}
#sNav h1 span,
#sNav h1 a {
  color: #fff;
  background: #85a0b3;
  display: block;
  padding: 10px 15px;
}
#sNav h1 a:hover {
  background: #00a0dc;
}
#sNav h1.active span,
#sNav h1.active a {
  background: #0068af;
}
#sNav h1.active a:hover {
  background: #00a0dc;
}
#sNav .sNav-in li {
  line-height: 1.5;
}
#sNav .sNav-in li span,
#sNav .sNav-in li a {
  display: block;
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
}
#sNav .sNav-in .tit-field {
  background-color: #0068af;
  color: #fff;
  border-top: 1px solid #fff;
  font-size: 12px;
  font-size: 1.2rem;
  padding-top: 3px;
  padding-bottom: 3px;
  text-indent: -20px;
  padding-left: 30px;
  line-height: 1.2;
}
#sNav .sNav-in .tit-field .num {
  font-size: 12px;
  font-size: 1.2rem;
  color: #85a0b3;
  display: inline;
  padding-right: 0.3em;
}
@media all and (-ms-high-contrast: none) {
  .jp #sNav .sNav-in .tit-field {
    padding-top: 5px;
    padding-bottom: 1px;
  }
}
#sNav .sNav-in .firstNav {
  position: relative;
}
#sNav .sNav-in .firstNav:after {
  content: "";
  display: block;
  position: absolute;
  width: calc(100% - 30px);
  height: 1px;
  background-color: rgba(133, 160, 179, 0.5);
  bottom: -1px;
  z-index: 1;
  left: 50%;
  transform: translateX(-50%);
}
#sNav .sNav-in .firstNav.last-child:after {
  display: none;
}
.PC #sNav .sNav-in .firstNav > span:hover {
  background-color: #eaeaea;
}
#sNav .sNav-in .firstNav > span > a {
  padding: 15px 30px 15px 15px;
}
#sNav .sNav-in .firstNav.active {
  z-index: 2;
}
#sNav .sNav-in .firstNav.active:after {
  bottom: 0;
}
#sNav .sNav-in .firstNav.active > span > a {
  color: #fff;
  background-color: #00a0dc;
  position: relative;
}
#sNav .sNav-in .firstNav.active > span > a:before {
  content: "";
  display: block;
  position: absolute;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 9px 10px;
  border-color: transparent #00a0dc transparent transparent;
  left: -20px;
  top: 50%;
  transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
  #sNav .sNav-in .firstNav.active > span > a:before {
    display: none;
  }
}
#sNav .sNav-in .secondNav {
  padding-bottom: 20px;
}
.PC #sNav .sNav-in .secondNav li a:hover {
  background-color: #eaeaea;
}
#sNav .sNav-in .secondNav li.active {
  position: relative;
}
#sNav .sNav-in .secondNav li.active:after {
  content: "";
  display: block;
  width: 90%;
  height: 2px;
  background-color: #00a0dc;
  position: absolute;
  bottom: 0;
  left: 5%;
}
#sNav .sNav-in .secondNav li.thirdNav_outer li:hover p {
  background-color: #eaeaea;
}
#sNav .sNav-in .secondNav span,
#sNav .sNav-in .secondNav a {
  font-size: 13px;
  font-size: 1.3rem;
  padding: 10px 10px 10px 40px;
  position: relative;
}
#sNav .sNav-in .secondNav span:before, #sNav .sNav-in .secondNav span:after,
#sNav .sNav-in .secondNav a:before,
#sNav .sNav-in .secondNav a:after {
  content: "";
  display: block;
  position: absolute;
}
#sNav .sNav-in .secondNav span:before,
#sNav .sNav-in .secondNav a:before {
  width: 16px;
  height: 16px;
  border: 1px solid #85a0b3;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  left: 16px;
  top: 11px;
}
#sNav .sNav-in .secondNav span:after,
#sNav .sNav-in .secondNav a:after {
  width: 5px;
  height: 5px;
  border-style: solid;
  border-width: 1px 1px 0 0;
  border-color: #85a0b3;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 16px;
  left: 20px;
}
#sNav .sNav-in .secondNav .btn-close-01 {
  background-color: #bbb;
  margin-top: 10px;
}
.PC #sNav .sNav-in .secondNav .btn-close-01:hover {
  background-color: #ddd;
}
#sNav .sNav-in .secondNav .btn-close-01 span {
  color: #fff;
  padding: 5px;
  text-align: center;
  letter-spacing: 1px;
}
#sNav .sNav-in .secondNav .btn-close-01 span:before, #sNav .sNav-in .secondNav .btn-close-01 span:after {
  width: 7px;
  height: 2px;
  background-color: #fff;
  border: none;
  border-radius: 0;
  top: 50%;
  left: 90%;
  transform: translateY(-50%);
}
#sNav .sNav-in .secondNav .btn-close-01 span:before {
  transform: rotate(45deg);
  margin-left: 4px;
}
#sNav .sNav-in .secondNav .btn-close-01 span:after {
  transform: rotate(-45deg);
}
#sNav .sNav-in .secondNav p.active {
  position: relative;
}
#sNav .sNav-in .secondNav p.active:after {
  content: "";
  display: block;
  width: 90%;
  height: 2px;
  background-color: #00a0dc;
  position: absolute;
  bottom: 0;
  left: 5%;
}
#sNav .sNav-in .secondNav .thirdNav_outer li:hover {
  background-color: #eaeaea;
}
#sNav .sNav-in .secondNav ul.thirdNav {
  margin-bottom: 8px;
}
#sNav .sNav-in .secondNav ul.thirdNav li {
  padding-left: 20px;
}
#sNav .sNav-in .secondNav ul.thirdNav li a:before {
  display: none;
}
#sNav .sNav-in .secondNav ul.thirdNav li.active {
  position: relative;
}
#sNav .sNav-in .secondNav ul.thirdNav li.active:after {
  content: "";
  display: block;
  width: 77.5%;
  height: 2px;
  background-color: #00a0dc;
  position: absolute;
  bottom: 0;
  left: 17.5%;
}
#sNav .sNav-in .secondNav ul.thirdNav:after {
  content: "";
  display: block;
  position: relative;
  width: calc(100% - 48px);
  height: 1px;
  background-color: rgba(133, 160, 179, 0.5);
  bottom: -1px;
  z-index: 1;
  left: 50%;
  transform: translateX(-42%);
}
#sNav .sNav-in .hover_slide span {
  position: relative;
}
#sNav .sNav-in .hover_slide span:before, #sNav .sNav-in .hover_slide span:after {
  content: "";
  display: block;
  width: 10px;
  height: 2px;
  background-color: #85a0b3;
  position: absolute;
  top: 50%;
  left: 90%;
  transform: translateY(-50%);
  z-index: 3;
}
#sNav .sNav-in .hover_slide span:before {
  transform: rotate(90deg);
}
#sNav .sNav-in .hover_slide span:after {
  transform: rotate(0deg);
}
#sNav .sNav-in .hover_slide.open > span:before {
  background-color: transparent;
}
#sNav .sNav-in .hover_slide.active span:before, #sNav .sNav-in .hover_slide.active span:after {
  background-color: #fff;
}
#sNav .sNav-in .hover_slide.active.open > span:before {
  background-color: transparent;
}
#sNav .sNav-in .hover_slide.active .secondNav {
  display: block;
}
#sNav .sNav-in .hover_slide .secondNav {
  display: none;
}
#sNav .sNav-in .hover_slide .secondNav .btn-close-01 {
  cursor: pointer;
}

.secondNav {
  padding-bottom: 20px;
}
.PC .secondNav li.thirdNav_outer:hover .thirdNav li {
  background-color: #f9f9f9;
}
.secondNav li.thirdNav_outer .thirdNav {
  position: relative;
  z-index: 10;
}
.secondNav li.thirdNav_outer .thirdNav li:hover .secondNav li {
  background-color: #f9f9f9;
}

.PC #sNav .sNav-in .secondNav li .thirdNav_outer {
  background: none !important;
}

.sNavBusiness li {
  height: auto;
}
.sNavBusiness .firstNav .slidebtn {
  margin-bottom: 0;
}
.sNavBusiness .firstNav .slidedown {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  display: block;
  font-size: 14px;
  padding: 15px 15px 15px 15px;
  margin-bottom: -4px;
  margin-top: 3px;
  position: relative;
}
.sNavBusiness .firstNav .slidedown:after {
  border-bottom: 1px solid #85a0b3;
  display: inline-block;
  position: absolute;
  bottom: 0px;
  width: 87.5%;
  content: "";
  left: 15px;
}
.sNavBusiness .firstNav .slidedown.active {
  background: #00a0dc;
  color: #fff;
}
.sNavBusiness .firstNav .slidedown.active > span:before {
  position: absolute;
  content: "";
  margin-right: 0px;
  top: 26%;
  left: -24px;
  display: inline-block;
  width: 0;
  height: 0;
  border-right: 9px solid #00a0dc;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
}
.sNavBusiness .firstNav .slidedown > span {
  position: relative;
  width: 87.5%;
  display: inline-block;
}
.sNavBusiness .firstNav .slidedown > span:before {
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  content: "";
  margin-right: 0px;
  top: 26%;
  left: -24px;
  display: inline-block;
  width: 0;
  height: 0;
  border-right: 9px solid transparent;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
}
.sNavBusiness .firstNav .slidedown:hover {
  color: #fff;
  background: #00a0dc;
  width: 87.5%;
  cursor: pointer;
}
.sNavBusiness .firstNav .slidedown:hover span:before {
  border-right: 9px solid #00a0dc;
}

/* pankuzu */
#pankuzu {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
}
#pankuzu .pankuzu-inner {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 1200px;
  line-height: 2;
  margin: 0 auto;
  text-align: left;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  #pankuzu .pankuzu-inner {
    width: 100%;
    padding: 0 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #pankuzu .pankuzu-inner {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  #pankuzu .pankuzu-inner {
    width: 100%;
    padding: 0px 10px 3px 10px;
    line-height: 0.9;
  }
}
#pankuzu .pankuzu-inner.type01 li {
  color: #000;
}
#pankuzu .pankuzu-inner.type01 a {
  color: #000;
}
#pankuzu li {
  display: inline;
  padding-left: 10px;
  vertical-align: baseline;
  color: #fff;
  font-size: 12px;
}
#pankuzu li:first-child {
  padding-left: 0;
}
#pankuzu a {
  color: #fff;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.PC #pankuzu a:hover {
  color: #00a0dc;
}
#pankuzu.type02 {
  background: #00344d;
  position: inherit;
}
#pankuzu.type03 {
  background: rgba(0, 0, 0, 0.4);
  position: inherit;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  #pankuzu.type03 {
    padding-left: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #pankuzu.type03 {
    padding-left: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
}
#pankuzu.type04 {
  position: inherit;
}

/* tit_cat カテゴリータイトル */
.extraNav {
  border-top: 1px solid #eaeaea;
  padding: 60px 0;
  width: 100%;
  margin: 0 auto;
  /* Dots */
}
@media only screen and (max-width: 767px) {
  .extraNav {
    padding: 40px 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .extraNav {
    padding: 40px 0;
  }
}
.extraNav .extraNav-box {
  width: 90%;
  margin: 0 auto;
  max-width: 1200px;
}
.extraNav .item-extraNav {
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 10px;
}
@media print, screen and (min-width: 768px) {
  .extraNav .item-extraNav {
    padding-right: 20px;
  }
}
.extraNav .item-extraNav img {
  width: 100%;
  height: auto;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.extraNav .item-extraNav .txt {
  display: inline-block;
  margin-top: 5px;
  color: #000;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1.4;
}
.jp .extraNav .item-extraNav .txt {
  margin-top: 8px;
  line-height: 1.6;
}
.extraNav .item-extraNav .wp-img {
  display: block;
  position: relative;
  overflow: hidden;
}
.PC .extraNav .item-extraNav:hover img {
  -webkit-transform: scale(1.1, 1.1);
  -moz-transform: scale(1.1, 1.1);
  -ms-transform: scale(1.1, 1.1);
  -o-transform: scale(1.1, 1.1);
  transform: scale(1.1, 1.1);
}
.PC .extraNav .item-extraNav:hover .txt {
  color: #0068af;
}
.extraNav .slick-prev,
.extraNav .slick-next {
  cursor: pointer;
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 53px;
  z-index: 5;
  display: block;
  width: 35px;
  height: 35px;
  border-radius: 100%;
  border: 1px solid #00192a;
  background-color: rgba(255, 255, 255, 0.5);
  padding: 0;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .extraNav .slick-prev,
.extraNav .slick-next {
    top: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
  .extraNav .slick-prev,
.extraNav .slick-next {
    top: 45px;
  }
}
@media only screen and (max-width: 767px) {
  .extraNav .slick-prev,
.extraNav .slick-next {
    top: 28%;
  }
}
.extraNav .slick-prev:before, .extraNav .slick-prev:after,
.extraNav .slick-next:before,
.extraNav .slick-next:after {
  content: "";
  display: block;
  width: 10px;
  height: 2px;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.extraNav .slick-prev:before,
.extraNav .slick-next:before {
  width: 10px;
  height: 10px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.PC .extraNav .slick-prev:hover,
.PC .extraNav .slick-next:hover {
  background-color: white;
  border-color: #0068af;
}
.PC .extraNav .slick-prev:hover:before, .PC .extraNav .slick-prev:hover:after,
.PC .extraNav .slick-next:hover:before,
.PC .extraNav .slick-next:hover:after {
  border-color: #0068af;
}
.extraNav .slick-prev {
  left: -18px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .extraNav .slick-prev {
    left: -10px;
  }
}
@media only screen and (max-width: 767px) {
  .extraNav .slick-prev {
    left: -5px;
  }
}
.extraNav .slick-prev:before {
  border-bottom: 2px solid #00192a;
  border-left: 2px solid #00192a;
  margin-left: 3px;
}
.extraNav .slick-next {
  right: -18px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .extraNav .slick-next {
    right: -10px;
  }
}
@media only screen and (max-width: 767px) {
  .extraNav .slick-next {
    right: -5px;
  }
}
.extraNav .slick-next:before {
  border-top: 2px solid #00192a;
  border-right: 2px solid #00192a;
  margin-left: -3px;
}
.extraNav .slick-list {
  margin-right: -20px;
}
@media only screen and (max-width: 1245px) {
  .extraNav .slick-list {
    margin-right: 0px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .extraNav .slick-list {
    margin-right: -5px;
  }
}
@media only screen and (max-width: 767px) {
  .extraNav .slick-list {
    margin-right: -3.5%;
  }
}
.extraNav .slick-dotted.slick-slider {
  margin-bottom: 30px;
}
.extraNav .slick-dots {
  position: absolute;
  bottom: -45px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}
.extraNav .slick-dots li {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.extraNav .slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 20px;
  height: 20px;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}
.extraNav .slick-dots li button:before {
  font-size: 35px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  content: "•";
  text-align: center;
  opacity: 0.25;
  color: black;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.extraNav .slick-dots li.slick-active button:before {
  color: #0068af;
  opacity: 1;
}

/* ------------------------------------------------
  box-content 2カラム用
------------------------------------------------ */
.box_content_main {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 920px;
  float: left;
  margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  .box_content_main {
    width: 100%;
    float: none;
    margin-bottom: 20px;
  }
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .box_content_main {
    width: 76%;
    padding-left: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box_content_main {
    width: 100%;
    float: none;
    margin-bottom: 20px;
  }
}
.box_content_main.side {
  width: 240px;
  float: right;
  height: auto;
  margin-bottom: 60px;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .box_content_main.side {
    padding-right: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
}
@media only screen and (max-width: 767px) {
  .box_content_main.side {
    width: 100%;
    float: none;
    height: auto;
    margin-bottom: 10px;
  }
}
.box_content_main.media {
  display: block;
}
@media only screen and (max-width: 767px) {
  .box_content_main.side {
    display: none;
  }
  .box_content_main.side.media {
    display: block;
  }
  .box_content_main.side.media .sNav-in {
    display: none;
  }
  .box_content_main.side.media .firstNav.active > span > a:before {
    display: none;
  }
  .box_content_main.side.media h1 {
    background: #0068af;
    color: #fff;
    display: block;
  }
  .box_content_main.side.media h1 span {
    position: relative;
  }
  .box_content_main.side.media h1 span:before, .box_content_main.side.media h1 span:after {
    content: "";
    display: block;
    width: 10px;
    height: 2px;
    background-color: #85a0b3;
    position: absolute;
    top: 50%;
    left: 90%;
    transform: translateY(-50%);
    z-index: 3;
  }
  .box_content_main.side.media h1 span:before {
    transform: rotate(90deg);
  }
  .box_content_main.side.media h1 span:after {
    transform: rotate(0deg);
  }
  .box_content_main.side.media h1.open > span:before {
    background-color: transparent;
  }
  .box_content_main.side.media h1.active span:before, .box_content_main.side.media h1.active span:after {
    background-color: #fff;
  }
  .box_content_main.side.media h1.active.open > span:before {
    background-color: transparent;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box_content_main.side {
    display: none;
  }
  .box_content_main.side.media {
    display: block;
    width: 100%;
    margin-top: 25px;
    margin-bottom: 25px;
  }
  .box_content_main.side.media h1 {
    background: #0068af;
    color: #fff;
    display: block;
  }
  .box_content_main.side.media h1 span {
    position: relative;
  }
  .box_content_main.side.media h1 span:before, .box_content_main.side.media h1 span:after {
    content: "";
    display: block;
    width: 10px;
    height: 2px;
    background-color: #85a0b3;
    position: absolute;
    top: 50%;
    left: 95%;
    transform: translateY(-50%);
    z-index: 3;
  }
  .box_content_main.side.media h1 span:before {
    transform: rotate(90deg);
  }
  .box_content_main.side.media h1 span:after {
    transform: rotate(0deg);
  }
  .box_content_main.side.media h1.open > span:before {
    background-color: transparent;
  }
  .box_content_main.side.media h1.active span:before, .box_content_main.side.media h1.active span:after {
    background-color: #fff;
  }
  .box_content_main.side.media h1.active.open > span:before {
    background-color: transparent;
  }
  .box_content_main.side.media .sNav-in {
    display: none;
  }
  .box_content_main.side.media .sNav-in li {
    float: left;
    width: 50%;
  }
}

.box_content_outer .box_content_inner01,
.box_content_outer .box_content_inner02,
.box_content_outer .box_content_inner03,
.box_content_outer .box_content_inner04,
.box_content_outer .box_content_inner05,
.box_content_outer .box_content_inner06 {
  clear: both;
}
.box_content_outer .box_content_inner01:first-child,
.box_content_outer .box_content_inner02:first-child,
.box_content_outer .box_content_inner03:first-child,
.box_content_outer .box_content_inner04:first-child,
.box_content_outer .box_content_inner05:first-child,
.box_content_outer .box_content_inner06:first-child {
  margin-top: 0;
}

.box_content_inner01 {
  width: auto;
}
.box_content_inner01:last-child {
  margin-bottom: 0;
}
.box_content_inner01.type01 {
  padding: 0 40px;
}
@media only screen and (max-width: 767px) {
  .box_content_inner01.type01 {
    padding: 0 10px;
  }
}

.box_content_inner02 {
  width: auto;
  margin-top: 70px;
}
.box_content_inner02:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .box_content_inner02 {
    margin-top: 40px;
  }
}

.box_content_inner03 {
  width: auto;
  margin-top: 60px;
}
.box_content_inner03:last-child {
  margin-bottom: 0;
}
.box_content_inner03.type01 {
  padding: 0 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.box_content_inner03.type02 {
  padding: 0 8px 0 8px;
  margin-top: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.box_content_inner03.style-02 {
  margin-top: 65px;
}
@media only screen and (max-width: 767px) {
  .box_content_inner03.type03 {
    margin-top: 0;
  }
}

.box_content_inner04 {
  margin-top: 80px;
  width: auto;
  height: auto;
  overflow: hidden;
  position: relative;
}

.box_content_inner05 {
  width: auto;
  margin-top: 40px;
  margin-bottom: 30px;
}
.box_content_inner05:last-child {
  margin-bottom: 0;
}

.box_content_inner06 {
  width: auto;
  margin-top: 30px;
  padding: 0 10px;
}
.box_content_inner06:last-child {
  margin-bottom: 0;
}

.box_content_inner07 {
  width: auto;
  margin-top: 40px;
  margin-bottom: 40px;
}
.box_content_inner07:last-child {
  margin-bottom: 0;
}

.box_content_inner08 {
  width: auto;
  margin-top: 30px;
}
.box_content_inner08:last-child {
  margin-bottom: 0;
}

.box_content_inner09 {
  width: auto;
  margin-top: 40px;
  margin-bottom: 15px;
}
.box_content_inner09:last-child {
  margin-bottom: 0;
}

.bg {
  background: #00192a;
  padding: 5px 0 50px 0 !important;
  margin-top: -50px !important;
}
@media only screen and (max-width: 767px) {
  .bg {
    margin-top: 50px !important;
  }
}
.bg .tit03 {
  color: #fff;
  border-bottom: #fff 1px solid;
}

/* tit_page ページタイトル */
#titPage {
  width: 100%;
  margin: 0 auto;
  height: 320px;
  position: relative;
  background-size: cover !important;
  display: inline-block;
  background: #eaeaea;
}
@media only screen and (max-width: 767px) {
  #titPage {
    height: 160px;
    background-size: cover !important;
  }
}
#titPage .caption {
  position: absolute;
  font-size: 12px;
  line-height: 1.2;
  text-align: right;
  color: #fff;
  right: 0;
  display: inline-block;
  width: 100%;
  bottom: 0;
  line-height: 1.2;
  padding: 10px 10px 4px 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  background: -moz-linear-gradient(to bottom, rgba(0, 25, 42, 0) 0%, rgba(0, 25, 42, 0.01) 2.5%, rgba(0, 25, 42, 0.02) 6%, rgba(0, 25, 42, 0.1) 25%, rgba(0, 25, 42, 0.2) 40%, rgba(0, 25, 42, 0.4) 100%);
  background: -webkit-linear-gradient(to bottom, rgba(0, 25, 42, 0) 0%, rgba(0, 25, 42, 0.01) 2.5%, rgba(0, 25, 42, 0.02) 6%, rgba(0, 25, 42, 0.1) 25%, rgba(0, 25, 42, 0.2) 40%, rgba(0, 25, 42, 0.4) 100%);
  background: linear-gradient(to bottom, rgba(0, 25, 42, 0) 0%, rgba(0, 25, 42, 0.01) 2.5%, rgba(0, 25, 42, 0.02) 6%, rgba(0, 25, 42, 0.1) 25%, rgba(0, 25, 42, 0.2) 40%, rgba(0, 25, 42, 0.4) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#003d3d3d", endColorstr="#444444",GradientType=0 );
}
@media only screen and (max-width: 767px) {
  #titPage .caption {
    text-align: left;
  }
}

.jp #titPage .caption {
  font-size: 12px;
}

.guide_bg {
  background: #0068af;
}

.sub_mv {
  width: 100%;
  max-width: 1200px;
  margin: -20px auto 0 auto;
  height: 320px;
  display: table;
}
@media only screen and (max-width: 767px) {
  .sub_mv {
    width: 100%;
    height: 160px;
    margin-top: -20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .sub_mv {
    padding-left: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
}
.sub_mv p.type01 {
  font-size: 40px;
  color: #fff;
  margin: 0 auto;
  display: table-cell;
  vertical-align: middle;
  text-align: left;
}
.sub_mv p.type01 span.sub_mv_txt {
  background: #0068af;
  padding: 8px 15px;
}
@media only screen and (max-width: 767px) {
  .sub_mv p.type01 span.sub_mv_txt {
    line-height: 1.8;
    padding: 0;
    background: none;
  }
}
@media only screen and (max-width: 767px) {
  .sub_mv p.type01 {
    font-size: 22px;
    text-align: center;
    width: 96%;
    line-height: 1;
  }
}
@media only screen and (max-width: 320px) {
  .sub_mv p.type01 {
    font-size: 18px;
    text-align: center;
    width: 96%;
    line-height: 1;
  }
}
.sub_mv h1.type01 {
  font-size: 40px;
  font-weight: normal;
  color: #fff;
  margin: 0 auto;
  display: table-cell;
  vertical-align: middle;
  text-align: left;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .sub_mv h1.type01 {
    padding: 0 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
}
.sub_mv h1.type01 span.sub_mv_txt {
  background: #0068af;
  padding: 8px 15px;
}
@media only screen and (max-width: 767px) {
  .sub_mv h1.type01 span.sub_mv_txt {
    background: #0068af;
    padding: 8px 15px;
    line-height: 1.8;
    padding: 0;
    background: none;
  }
  .sub_mv h1.type01 span.sub_mv_txt.font_sizeS {
    font-size: 18px;
  }
}
@media only screen and (max-width: 320px) {
  .sub_mv h1.type01 span.sub_mv_txt.font_sizeS {
    font-size: 16px;
  }
}
@media print, screen and (min-width: 1025px) {
  .sub_mv h1.type01 span.sub_mv_txt .spmv.pc_space {
    padding-right: 15px;
  }
  .sub_mv h1.type01 span.sub_mv_txt .spmv.pc_space:first-child {
    padding-right: 15px;
  }
  .sub_mv h1.type01 span.sub_mv_txt .spmv.pc_space:last-child {
    padding-right: 0;
    padding-left: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .sub_mv h1.type01 span.sub_mv_txt .spmv {
    display: inline-block;
    background: #0068af;
    margin-bottom: 3px;
    padding: 0 10px;
  }
  .sub_mv h1.type01 span.sub_mv_txt .spmv:first-child {
    margin-bottom: 3px;
  }
}
@media only screen and (max-width: 767px) {
  .sub_mv h1.type01 {
    font-size: 22px;
    text-align: center;
    width: 96%;
    line-height: 1;
  }
}
@media only screen and (max-width: 320px) {
  .sub_mv h1.type01 {
    font-size: 18px;
    text-align: center;
    width: 96%;
    line-height: 1;
  }
}
.sub_mv p.type02 {
  font-size: 50px;
  color: #fff;
  margin: 0 auto;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .sub_mv p.type02 {
    font-size: 22px;
    text-align: center;
    width: 96%;
    line-height: 1;
  }
}
.sub_mv h1.type02 {
  font-size: 50px;
  font-weight: normal;
  color: #fff;
  margin: 0 auto;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}
.sub_mv h1.type02 span.sub_mv_txt {
  background: #0068af;
  padding: 8px 15px;
}
@media only screen and (max-width: 767px) {
  .sub_mv h1.type02 span.sub_mv_txt {
    font-size: 22px;
    text-align: center;
    width: 96%;
    line-height: 1;
  }
}

.jp .sub_mv p.type01 {
  font-size: 38px;
}
@media only screen and (max-width: 767px) {
  .jp .sub_mv p.type01 {
    font-size: 22px;
  }
}
@media only screen and (max-width: 767px) {
  .jp .sub_mv p.type01 span.sub_mv_txt {
    line-height: 1.8;
    padding: 0;
    background: none;
  }
}
@media all and (-ms-high-contrast: none) {
  .jp .sub_mv p.type01 span.sub_mv_txt {
    padding: 10px 5px 0 5px;
  }
}
@media only screen and (max-width: 767px) {
  .jp .sub_mv p.type01 span.sub_mv_txt .spmv {
    display: inline-block;
    background: #0068af;
    margin-bottom: 3px;
    padding: 0 10px;
  }
  .jp .sub_mv p.type01 span.sub_mv_txt .spmv:first-child {
    margin-bottom: 3px;
  }
}
.jp .sub_mv h1.type01 {
  font-size: 38px;
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .jp .sub_mv h1.type01 {
    font-size: 22px;
  }
}
@media only screen and (max-width: 320px) {
  .jp .sub_mv h1.type01 {
    font-size: 18px;
  }
}
@media only screen and (max-width: 767px) {
  .jp .sub_mv h1.type01 span.sub_mv_txt {
    line-height: 1.8;
    padding: 0;
    background: none;
  }
}
@media all and (-ms-high-contrast: none) {
  .jp .sub_mv h1.type01 span.sub_mv_txt {
    padding: 10px 15px 0 15px;
  }
}
@media only screen and (max-width: 767px) {
  .jp .sub_mv h1.type01 span.sub_mv_txt .spmv {
    display: inline-block;
    background: #0068af;
    margin-bottom: 3px;
    padding: 0 10px;
  }
  .jp .sub_mv h1.type01 span.sub_mv_txt .spmv:first-child {
    margin-bottom: 3px;
  }
}
@media only screen and (max-width: 480px) {
  .jp .sub_mv h1.type01 span.sub_mv_txt .spmv.spS {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 320px) {
  .jp .sub_mv h1.type01 span.sub_mv_txt .spmv.spS {
    margin-top: 0;
  }
}
.jp .sub_mv p.type02 {
  font-size: 38px;
}
@media only screen and (max-width: 767px) {
  .jp .sub_mv p.type02 {
    font-size: 22px;
  }
}
.jp .sub_mv p.type02.spmv {
  padding: 0;
}
.jp .sub_mv h1.type02 {
  font-size: 38px;
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .jp .sub_mv h1.type02 {
    font-size: 22px;
  }
}
.jp .sub_mv h1.type02.spmv {
  padding: 0;
}

@media only screen and (max-width: 320px) {
  br.spXS {
    display: block;
  }
}
br.spXS {
  display: none;
}

@media only screen and (max-width: 767px) {
  br.mv {
    display: block;
  }
}
/*////////////////////////////////////////////////////

  汎用レイアウト（レイアウトセット参照）
    ここではレイアウトに関わるスタイルのみ記載し、
    背景色や背景画像、ボーダー、シャドウなどのデザインバリエーションは、
    _pattern.scss内に継承クラスで指定すること
    （例：.wrapper01.style01）

////////////////////////////////////////////////////*/
.boxImg img {
  max-width: 100%;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .boxImg img {
    width: 100%;
  }
}

/* ------------------------------------------------
  .wrapperシリーズここから
------------------------------------------------ */
.wrapper01 {
  padding: 60px 0;
}
@media only screen and (max-width: 480px) {
  .wrapper01 {
    padding: 30px 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .wrapper01 {
    padding: 30px 0;
  }
}
.wrapper01.style01 {
  background: -moz-linear-gradient(bottom, #f5f5f5 50%, #FFF);
  background: -webkit-linear-gradient(bottom, #f5f5f5 50%, #FFF);
  background: linear-gradient(to bottom, #f5f5f5 50%, #FFF);
}

.wrapper02 {
  border-top: 1px solid #eaeaea;
  padding: 0;
}

.wrapper03:nth-child(n+2) {
  margin-top: 60px;
}
@media only screen and (max-width: 480px) {
  .wrapper03:nth-child(n+2) {
    margin-top: 30px;
  }
}

.wrapper04 {
  padding: 60px 0;
  background: rgba(238, 238, 238, 0.5);
}
@media only screen and (max-width: 480px) {
  .wrapper04 {
    padding: 30px 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .wrapper04 {
    padding: 30px 0;
  }
}

/* ------------------------------------------------
  .innerシリーズここから
------------------------------------------------ */
.inner01 {
  padding: 0 10px;
}

/* ------------------------------------------------
  .sectionシリーズここから
------------------------------------------------ */
.section01 {
  margin-bottom: 60px;
  clear: both;
}
.section01:last-child {
  margin-bottom: 0;
}
.section01:first-child {
  margin-bottom: 60px;
}
@media only screen and (max-width: 480px) {
  .section01 {
    margin-bottom: 30px;
  }
}
.section01.rich_text p {
  margin-bottom: 20px;
}
.section01.rich_text p:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .section01.rich_text .youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .section01.rich_text .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
}

.section02 {
  margin-bottom: 60px;
  padding: 0 10px;
  clear: both;
}
.section02:last-child {
  margin-bottom: 0;
}
.section02:first-child {
  margin-bottom: 60px;
}
@media only screen and (max-width: 480px) {
  .section02 {
    margin-bottom: 30px;
  }
}
.section02.rich_text p {
  margin-bottom: 20px;
}
.section02.rich_text p:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .section02.rich_text .youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .section02.rich_text .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
}

.section03 {
  margin-bottom: 30px;
  clear: both;
}
.section03:last-child {
  margin-bottom: 0;
}
.section03:first-child {
  margin-bottom: 30px;
}
@media only screen and (max-width: 480px) {
  .section03 {
    margin-bottom: 30px;
  }
}
.section03.rich_text p {
  margin-bottom: 20px;
}
.section03.rich_text p:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .section03.rich_text img {
    width: 100%;
    height: auto;
  }
}
@media only screen and (max-width: 767px) {
  .section03.rich_text .youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .section03.rich_text .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
  .section03.rich_text .youtube.ptn02 {
    display: block;
    position: static;
    padding-top: 0;
  }
  .section03.rich_text .youtube.ptn02 iframe {
    position: static;
    height: 220px !important;
  }
}
.section03.caption {
  margin-bottom: 80px;
}

.section04 {
  margin-bottom: 30px;
  clear: both;
  padding: 0 10px;
}
.section04:last-child {
  margin-bottom: 0;
}
.section04:first-child {
  margin-bottom: 30px;
  padding: 0;
}
@media only screen and (max-width: 480px) {
  .section04 {
    margin-bottom: 30px;
  }
}
.section04.rich_text p {
  margin-bottom: 20px;
}
.section04.rich_text p:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .section04.rich_text .youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .section04.rich_text .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
}

.section05 {
  margin-bottom: 10px;
  clear: both;
}
.section05:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 480px) {
  .section05 {
    margin-bottom: 10px;
  }
}
.section05.rich_text p {
  margin-bottom: 20px;
}
.section05.rich_text p:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .section05.rich_text .youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .section05.rich_text .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
}

.section06 {
  margin-bottom: 40px;
  clear: both;
}
.section06:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 480px) {
  .section06 {
    margin-bottom: 10px;
  }
}

.section1 {
  clear: both;
}
.section1.rich_text p {
  margin-bottom: 20px;
}

@media only screen and (max-width: 767px) {
  .rich_text img {
    width: 100%;
    height: auto;
  }
}
/* ------------------------------------------------
  .boxContentシリーズここから
------------------------------------------------ */
.container01 {
  max-width: 1200px;
  width: auto;
  margin: 60px auto 0;
  padding: 0 10px;
  display: block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 480px) {
  .container01 {
    margin-top: 30px;
  }
}
.container01:first-child {
  margin-top: 0;
}
.container01.noSpace {
  padding: 0;
}

.container02 {
  width: 1200px;
  margin: 60px auto 0;
  display: block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .container02 {
    width: 100%;
    padding: 0 10px;
  }
}
@media only screen and (max-width: 767px) {
  .container02 {
    width: 100%;
    padding: 0 10px;
  }
}
@media only screen and (max-width: 480px) {
  .container02 {
    margin-top: 30px;
    padding: 0 10px;
  }
}
.container02:first-child {
  margin-top: 0;
}
.container02.noSpace {
  padding: 0;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .container02 {
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
}

/* ------------------------------------------------
  .boxContentシリーズここから
------------------------------------------------ */
.csr_bg_box, .boxContent03, .boxContent02, .boxContent01 {
  width: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 480px) {
  .csr_bg_box, .boxContent03, .boxContent02, .boxContent01 {
    margin-bottom: 30px;
  }
  .csr_bg_box:first-child, .boxContent03:first-child, .boxContent02:first-child, .boxContent01:first-child {
    margin-bottom: 30px;
  }
}

.boxContent01 > .boxImg {
  margin: 0 auto;
}
.boxContent01 > .boxImg:first-child {
  margin-top: 0;
}
.boxContent01 > .boxImg:last-child {
  margin-bottom: 0;
}
.boxContent01 > .boxImg.center {
  text-align: center;
}
.boxContent01 > .boxImg.right {
  text-align: right;
}
.boxContent01 > .boxImg.left {
  text-align: left;
}
.boxContent01 > .boxImg a {
  display: block;
}
.boxContent01 > .boxImg a:hover {
  opacity: 0.8;
}
.boxContent01 .caption01 {
  display: block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
.boxContent01.style02 {
  margin-top: 60px;
  max-width: 1200px;
  text-align: center;
}
.boxContent01.style03 {
  margin-top: 60px;
  max-width: 1200px;
  text-align: right;
  margin-right: 20px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxContent01.style03 {
    margin-top: 60px;
  }
  .boxContent01.style03 .error_bg {
    margin-right: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .boxContent01.style03 {
    text-align: center;
  }
  .boxContent01.style03 img {
    width: 80%;
  }
}

.boxContent02 > .boxImg {
  width: 30%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
  text-align: center;
}
.boxContent02 > .boxImg img {
  width: 100%;
  height: auto;
}
.boxContent02 > .boxImg .caption01 {
  display: block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
.boxContent02 > .boxTxt {
  width: 70%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 0 0 30px;
  float: right;
}
.boxContent02.reverse > .boxImg {
  float: right;
}
.boxContent02.reverse > .boxImg .caption01 {
  display: block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
.boxContent02.reverse > .boxImg .caption01 img {
  width: 100%;
  height: auto;
}
.boxContent02.reverse > .boxTxt {
  float: left;
  padding: 0 30px 0 0;
}
@media only screen and (max-width: 767px) {
  .boxContent02 {
    /* 一列表示、画像100％ */
    /* 一列表示、画像最大サイズ設定あり */
  }
  .boxContent02.type01 > .boxImg, .boxContent02.type01 > .boxTxt, .boxContent02.type01.reverse > .boxImg, .boxContent02.type01.reverse > .boxTxt, .boxContent02.type02 > .boxImg, .boxContent02.type02 > .boxTxt, .boxContent02.type02.reverse > .boxImg, .boxContent02.type02.reverse > .boxTxt {
    float: none;
    width: auto;
  }
  .boxContent02.type01 > .boxImg, .boxContent02.type01.reverse > .boxImg, .boxContent02.type02 > .boxImg, .boxContent02.type02.reverse > .boxImg {
    margin: 20px auto;
  }
  .boxContent02.type01 > .boxImg:first-child, .boxContent02.type01.reverse > .boxImg:first-child, .boxContent02.type02 > .boxImg:first-child, .boxContent02.type02.reverse > .boxImg:first-child {
    margin-top: 0;
  }
  .boxContent02.type01 > .boxImg:last-child, .boxContent02.type01.reverse > .boxImg:last-child, .boxContent02.type02 > .boxImg:last-child, .boxContent02.type02.reverse > .boxImg:last-child {
    margin-bottom: 0;
  }
  .boxContent02.type01 > .boxTxt, .boxContent02.type01.reverse > .boxTxt, .boxContent02.type02 > .boxTxt, .boxContent02.type02.reverse > .boxTxt {
    padding: 0;
  }
  .boxContent02.type02 > .boxImg, .boxContent02.type02.reverse > .boxImg {
    max-width: 360px;
  }
}
.boxContent02.type03 > .boxImg {
  width: 20%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
}
@media only screen and (max-width: 767px) {
  .boxContent02.type03 > .boxImg {
    width: 80%;
    float: none;
    margin: 0 auto;
  }
}
.boxContent02.type03 > .boxImg:nth-child(n+2) {
  margin-top: 20px;
  float: none;
}
.boxContent02.type03 > .boxImg.style01 img {
  width: auto;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .boxContent02.type03 > .boxImg.style01 img {
    width: 100%;
    text-align: center;
    margin-bottom: 20px;
  }
}
.boxContent02.type03 > .boxImg .caption01 {
  display: block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
.boxContent02.type03 > .boxTxt {
  width: 80%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 0 0 30px;
  float: right;
}
@media only screen and (max-width: 767px) {
  .boxContent02.type03 > .boxTxt {
    width: 100%;
    padding: 0;
    margin-bottom: 20px;
  }
}
.boxContent02.type03.reverse > .boxImg {
  float: right;
}
@media only screen and (max-width: 767px) {
  .boxContent02.type03.reverse > .boxImg {
    width: 70%;
    float: none;
    margin: 20px auto 0 auto;
  }
}
.boxContent02.type03.reverse > .boxImg.style01 img {
  width: auto;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .boxContent02.type03.reverse > .boxImg.style01 img {
    width: 70%;
    text-align: center;
    margin-bottom: 20px;
  }
}
.boxContent02.type03.reverse > .boxImg .caption01 {
  display: block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
.boxContent02.type03.reverse > .boxTxt {
  float: left;
  padding: 0 30px 0 0;
}
@media only screen and (max-width: 767px) {
  .boxContent02.type03.reverse > .boxTxt {
    width: 100%;
    padding: 0;
    margin-bottom: 20px;
  }
}
.boxContent02.type04 > .boxImg {
  margin-left: 30px;
  width: 100%;
  max-width: 80px;
}
.boxContent02.type04 > .boxTxt {
  width: auto;
  max-width: calc(100% - 30px - 80px);
  float: left;
  padding-left: 20px;
}
.boxContent02.type04 > .boxTxt p {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.5;
  margin-top: 6px;
}
.boxContent02.type04 > .boxTxt p:first-child {
  margin-top: 0;
}

.boxContent03 > .boxImg, .boxContent03 > .boxTxt {
  width: 48%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.boxContent03 > .boxImg {
  float: left;
  padding: 0 10px 0 0;
}
.boxContent03 > .boxImg.left {
  text-align: left;
}
.boxContent03 > .boxImg.center {
  text-align: center;
}
.boxContent03 > .boxImg.center img {
  text-align: center;
}
.boxContent03 > .boxImg.right {
  text-align: right;
}
.boxContent03 > .boxImg:last-child {
  float: right;
  padding: 0;
}
.boxContent03 > .boxImg .caption01 {
  display: block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
.boxContent03 > .boxTxt {
  width: 50%;
  padding: 0;
  float: right;
}
.boxContent03.reverse > .boxImg {
  float: right;
  padding: 0 0 0 10px;
}
.boxContent03.reverse > .boxTxt {
  float: left;
  padding: 0;
}
.boxContent03.reverse > .boxTxt:last-child {
  float: left;
}
@media only screen and (max-width: 767px) {
  .boxContent03 {
    /* 一列表示、画像100％ */
  }
  .boxContent03.type01 > .boxImg, .boxContent03.type01 > .boxTxt, .boxContent03.type01.reverse > .boxImg, .boxContent03.type01.reverse > .boxTxt {
    float: none;
    width: auto;
  }
  .boxContent03.type01 > .boxImg, .boxContent03.type01.reverse > .boxImg {
    padding: 0;
    margin: 20px auto;
  }
  .boxContent03.type01 > .boxImg:first-child, .boxContent03.type01.reverse > .boxImg:first-child {
    margin-top: 0;
  }
  .boxContent03.type01 > .boxImg:last-child, .boxContent03.type01.reverse > .boxImg:last-child {
    margin-bottom: 0;
  }
  .boxContent03.type01 > .boxTxt, .boxContent03.type01.reverse > .boxTxt {
    padding: 0;
  }
  .boxContent03 > .type02 > .boxImg, .boxContent03 > .type02.reverse > .boxImg {
    width: 48%;
  }
}

.boxContent01 > .boxImg {
  margin: 0 auto;
}
.boxContent01 > .boxImg:first-child {
  margin-top: 0;
}
.boxContent01 > .boxImg:last-child {
  margin-bottom: 0;
}
.boxContent01 > .boxImg.center {
  text-align: center;
}
.boxContent01 > .boxImg.right {
  text-align: right;
}
.boxContent01 > .boxImg.left {
  text-align: left;
}
.boxContent01 .caption01 {
  display: block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}

/* ------------------------------------------------
  .boxListシリーズここから
------------------------------------------------ */
.box-list-row {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
.box-list-row .box-list {
  -ms-flex: 1;
  -moz-flex: 1;
  -webkit-flex: 1;
  flex: 1;
}
.box-list-row .box-list:nth-child(n+2) {
  margin-left: 2%;
}
.box-list-row .box-list-img img {
  width: 100%;
  height: auto;
}
.box-list-row .box-list-img.style01 {
  border: 1px solid rgba(255, 255, 255, 0.8);
}
.box-list-row .box-list-txt {
  padding: 2% 0;
}

/* ------------------------------------------------
  .boxListシリーズここから
------------------------------------------------ */
.boxLayoutList01 {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  margin: 0 auto;
}
.boxLayoutList01 > .boxContent {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-align-items: center;
  -moz-align-items: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border: 10px solid #fff;
  box-shadow: inset 0 0 0 1px #eaeaea;
  position: relative;
}
.boxLayoutList01 > .boxContent > .boxImg {
  width: 100%;
  text-align: center;
}
.boxLayoutList01 > .boxContent > .boxImg img {
  position: relative;
  z-index: -1;
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01 > .boxContent > .boxImg {
    border: 1px solid #eaeaea;
  }
}
.boxLayoutList01 > .boxContent .caption01 {
  display: block;
  width: 100%;
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 10px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type01 > .boxContent {
    display: block;
    width: 100%;
    box-shadow: none;
  }
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type01 > .boxContent .caption01 {
    position: static;
  }
}
.boxLayoutList01.type01.align > .boxContent {
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type01.align > .boxContent {
    width: 100%;
  }
}
.boxLayoutList01.type02 {
  width: 75%;
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type02 {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type02 > .boxContent {
    display: block;
    width: 100%;
    box-shadow: none;
  }
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type02 > .boxContent > .boxImg {
    border: 1px solid #eaeaea;
  }
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type02 > .boxContent .caption01 {
    position: static;
  }
}
.boxLayoutList01.type02.align > .boxContent {
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type02.align > .boxContent {
    width: 100%;
  }
}
.boxLayoutList01.type03 {
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type03 {
    width: 100%;
  }
}
.boxLayoutList01.type03.align > .boxContent {
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type04 {
    display: block;
    width: 80%;
  }
}
.boxLayoutList01.type04 > .boxContent {
  width: 33.3333333333%;
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type04 > .boxContent {
    display: block;
    width: 100%;
    box-shadow: none;
  }
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type04 > .boxContent > .boxImg {
    border: 1px solid #eaeaea;
  }
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type04 > .boxContent .caption01 {
    position: static;
  }
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type05 {
    display: block;
    width: 80%;
  }
}
.boxLayoutList01.type05 > .boxContent {
  width: 25%;
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type05 > .boxContent {
    display: block;
    width: 100%;
    box-shadow: none;
  }
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type05 > .boxContent > .boxImg {
    border: 1px solid #eaeaea;
  }
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type05 > .boxContent .caption01 {
    position: static;
  }
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type06 {
    display: block;
    width: 100%;
  }
}
.boxLayoutList01.type06 > .boxContent {
  width: 33.3333333333%;
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type06 > .boxContent {
    display: block;
    width: 100%;
    box-shadow: none;
  }
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type06 > .boxContent > .boxImg {
    border: 1px solid #eaeaea;
  }
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type06 > .boxContent .caption01 {
    position: static;
  }
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type07 {
    display: block;
    width: 100%;
  }
}
.boxLayoutList01.type07 > .boxContent {
  width: 25%;
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type07 > .boxContent {
    display: block;
    width: 100%;
    box-shadow: none;
  }
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type07 > .boxContent > .boxImg {
    border: 1px solid #eaeaea;
  }
}
@media only screen and (max-width: 767px) {
  .boxLayoutList01.type07 > .boxContent .caption01 {
    position: static;
  }
}

.boxLayoutList02 {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 auto;
}
.boxLayoutList02 > .boxContent {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-align-items: center;
  -moz-align-items: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border: 10px solid #fff;
  position: relative;
}
.boxLayoutList02 > .boxContent > .boxImg {
  text-align: center;
}
.boxLayoutList02 > .boxContent > .boxImg img {
  position: relative;
  z-index: -1;
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .boxLayoutList02 > .boxContent > .boxImg {
    border: 1px solid #eaeaea;
  }
}
.boxLayoutList02 > .boxContent .caption01 {
  display: block;
  width: 100%;
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.5;
}
.boxLayoutList02.type01 {
  margin: 0 20px;
}
@media only screen and (max-width: 767px) {
  .boxLayoutList02.type01 {
    display: flex;
  }
}
.boxLayoutList02.type01 > .boxContent {
  width: 25%;
}
@media only screen and (max-width: 767px) {
  .boxLayoutList02.type01 > .boxContent {
    width: 50%;
    margin-bottom: 50px;
  }
}
.boxLayoutList02.type01 > .boxContent > .boxImg {
  width: 80px;
}
.section03.caption.no_mb {
  margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  .section03.caption.no_mb {
    margin-bottom: 10px;
  }
}

/*////////////////////////////////////////////////////

	汎用レイアウト（レイアウトセット参照）
		ここではレイアウトに関わるスタイルのみ記載し、
		背景色や背景画像、ボーダー、シャドウなどのデザインバリエーションは、
		_pattern.scss内に継承クラスで指定すること
		（例：.wrapper01.style01）

////////////////////////////////////////////////////*/
/* ------------------------------------------------
	.boxListシリーズここから
------------------------------------------------ */
.boxList03, .boxList02, .boxList01 {
  width: auto;
}
.boxList03 > a.boxContent, .boxList02 > a.boxContent, .boxList01 > a.boxContent {
  text-decoration: none;
  color: #aeaeae;
}
.boxList03 > .boxContent, .boxList02 > .boxContent, .boxList01 > .boxContent {
  padding: 0 10px;
}
.boxList03 > .boxContent > .boxInner, .boxList02 > .boxContent > .boxInner, .boxList01 > .boxContent > .boxInner {
  padding: 10px;
  border: 1px solid #ccc;
  display: block;
}
.boxList03 > .boxContent > a.boxInner, .boxList02 > .boxContent > a.boxInner, .boxList01 > .boxContent > a.boxInner {
  text-decoration: none;
}

.boxList03 > .boxContent > .boxImg, .boxList03 > .boxContent > .boxInner > .boxImg, .boxList02 > .boxContent > .boxImg, .boxList02 > .boxContent > .boxInner > .boxImg, .boxList01 > .boxContent > .boxImg, .boxList01 > .boxContent > .boxInner > .boxImg {
  margin: 10px auto;
}
.boxList03 > .boxContent > .boxImg:first-child, .boxList03 > .boxContent > .boxInner > .boxImg:first-child, .boxList02 > .boxContent > .boxImg:first-child, .boxList02 > .boxContent > .boxInner > .boxImg:first-child, .boxList01 > .boxContent > .boxImg:first-child, .boxList01 > .boxContent > .boxInner > .boxImg:first-child {
  margin-top: 0;
}
.boxList03 > .boxContent > .boxImg:last-child, .boxList03 > .boxContent > .boxInner > .boxImg:last-child, .boxList02 > .boxContent > .boxImg:last-child, .boxList02 > .boxContent > .boxInner > .boxImg:last-child, .boxList01 > .boxContent > .boxImg:last-child, .boxList01 > .boxContent > .boxInner > .boxImg:last-child {
  margin-bottom: 0;
}

.boxList03 > .boxContent > .boxTxt, .boxList03 > .boxContent > .boxInner > .boxTxt, .boxList02 > .boxContent > .boxTxt, .boxList02 > .boxContent > .boxInner > .boxTxt, .boxList01 > .boxContent > .boxTxt, .boxList01 > .boxContent > .boxInner > .boxTxt {
  padding: 0 10px;
}

.boxList01 {
  /*スマホレイアウトバリエーション*/
}
.boxList01 > .boxContent {
  width: 50%;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
}
.boxList01 > .boxContent:nth-child(n+3) {
  margin-top: 60px;
}
@media only screen and (max-width: 480px) {
  .boxList01 > .boxContent:nth-child(n+3) {
    margin-top: 30px;
  }
}
.boxList01 > .boxContent:nth-child(odd) {
  clear: both;
}
@media only screen and (max-width: 767px) {
  .boxList01 {
    /*1列表示*/
    /*/.type01*/
    /*1列表示、画像とテキストを1:1で並列表示*/
  }
  .boxList01.type01 > .boxContent {
    width: 100%;
    float: none;
  }
  .boxList01.type01 > .boxContent:nth-child(n+2) {
    margin-top: 60px !important;
  }
}
@media only screen and (max-width: 767px) and (max-width: 480px) {
  .boxList01.type01 > .boxContent:nth-child(n+2) {
    margin-top: 30px !important;
  }
}
@media only screen and (max-width: 767px) {
  .boxList01.type02 > .boxContent {
    display: table;
    width: 100%;
  }
  .boxList01.type02 > .boxContent:nth-child(n+2) {
    margin-top: 20px !important;
  }
  .boxList01.type02 > .boxContent > .boxImg, .boxList01.type02 > .boxContent > .boxTxt, .boxList01.type02 > .boxContent > .boxInner > .boxImg, .boxList01.type02 > .boxContent > .boxInner > .boxTxt {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    display: table-cell;
  }
  .boxList01.type02 > .boxContent > .boxImg, .boxList01.type02 > .boxContent > .boxInner > .boxImg {
    vertical-align: top;
  }
  .boxList01.type02 > .boxContent > .boxTxt, .boxList01.type02 > .boxContent > .boxInner > .boxTxt {
    vertical-align: middle;
  }
  .boxList01.type02 > .boxContent > .boxImg, .boxList01.type02 > .boxContent > .boxInner > .boxImg {
    width: 50%;
  }
}

/*/.boxList01*/
.boxList02 {
  /*.boxContent*/
  /*スマホレイアウトバリエーション*/
}
.boxList02 > .boxContent {
  width: 33.33333%;
  float: left;
  display: block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .boxList02 > .boxContent {
    width: 100%;
    float: none;
  }
  .boxList02 > .boxContent:nth-child(n+2) {
    margin-top: 60px !important;
  }
}
@media only screen and (max-width: 767px) and (max-width: 480px) {
  .boxList02 > .boxContent:nth-child(n+2) {
    margin-top: 30px !important;
  }
}
.boxList02 > .boxContent:nth-child(3n+1) {
  clear: both;
}
.boxList02 > .boxContent:nth-child(n+4) {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  .boxList02 > .boxContent > .boxImg, .boxList02 > .boxContent > .boxInner > .boxImg {
    max-width: 380px;
  }
}
@media only screen and (max-width: 767px) {
  .boxList02 {
    /* 画像を横100%表示。スマホでは767pxの画像を用意すること。 */
    /* 画像とテキストを1:2で並列表示; */
    /*/.type02*/
  }
  .boxList02.type01 > .boxContent > .boxImg, .boxList02.type01 > .boxContent > .boxInner > .boxImg {
    width: 100%;
    max-width: none;
  }
  .boxList02.type02 > .boxContent {
    display: table;
    width: 100%;
  }
  .boxList02.type02 > .boxContent:nth-child(n+2) {
    margin-top: 20px !important;
  }
  .boxList02.type02 > .boxContent > .boxImg, .boxList02.type02 > .boxContent > .boxTxt, .boxList02.type02 > .boxContent > .boxInner > .boxImg, .boxList02.type02 > .boxContent > .boxInner > .boxTxt {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    display: table-cell;
  }
  .boxList02.type02 > .boxContent > .boxImg, .boxList02.type02 > .boxContent > .boxInner > .boxImg {
    vertical-align: top;
  }
  .boxList02.type02 > .boxContent > .boxTxt, .boxList02.type02 > .boxContent > .boxInner > .boxTxt {
    vertical-align: middle;
  }
  .boxList02.type02 > .boxContent > .boxImg, .boxList02.type02 > .boxContent > .boxInner > .boxImg {
    width: 25%;
    margin: 0;
  }
}

/*/.boxList02*/
.boxList03 {
  /*スマホレイアウトバリエーション*/
}
.boxList03 > .boxContent {
  width: 25%;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
}
.boxList03 > .boxContent:nth-child(n+5) {
  margin-top: 20px;
}
.boxList03 > .boxContent:nth-child(4n+1) {
  clear: both;
}
@media only screen and (max-width: 767px) {
  .boxList03 > .boxContent {
    width: 50%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
  .boxList03 > .boxContent:nth-child(n+3) {
    margin-top: 20px;
  }
  .boxList03 > .boxContent:nth-child(odd) {
    clear: both;
  }
}
@media only screen and (max-width: 767px) {
  .boxList03 {
    /* 一列表示 */
    /*/.type01*/
    /* 一列表示、画像とテキストを1:3で並列表示; */
    /*/.type02*/
  }
  .boxList03.type01 > .boxContent {
    width: 100%;
    float: none;
  }
  .boxList03.type01 > .boxContent:nth-child(n+2) {
    margin-top: 60px !important;
  }
}
@media only screen and (max-width: 767px) and (max-width: 480px) {
  .boxList03.type01 > .boxContent:nth-child(n+2) {
    margin-top: 30px !important;
  }
}
@media only screen and (max-width: 767px) {
  .boxList03.type02 > .boxContent {
    display: table;
    width: 100%;
  }
  .boxList03.type02 > .boxContent:nth-child(n+2) {
    margin-top: 20px !important;
  }
  .boxList03.type02 > .boxContent > .boxImg, .boxList03.type02 > .boxContent > .boxTxt, .boxList03.type02 > .boxContent > .boxInner > .boxImg, .boxList03.type02 > .boxContent > .boxInner > .boxTxt {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    display: table-cell;
  }
  .boxList03.type02 > .boxContent > .boxImg, .boxList03.type02 > .boxContent > .boxInner > .boxImg {
    vertical-align: top;
  }
  .boxList03.type02 > .boxContent > .boxTxt, .boxList03.type02 > .boxContent > .boxInner > .boxTxt {
    vertical-align: middle;
  }
  .boxList03.type02 > .boxContent > .boxImg, .boxList03.type02 > .boxContent > .boxInner > .boxImg {
    width: 25%;
  }
}

/*/.boxList03*/
.boxTableList02, .boxTableList01 {
  width: auto;
}
.boxTableList02 > .boxContent, .boxTableList01 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 10px;
}
.boxTableList02 > .boxContent > .boxWrapper, .boxTableList01 > .boxContent > .boxWrapper {
  display: table;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.boxTableList02 > .boxContent > .boxWrapper.boxInner, .boxTableList01 > .boxContent > .boxWrapper.boxInner {
  padding: 10px;
  border: 1px solid #ccc;
}
.boxTableList02 > .boxContent > .boxWrapper .boxImg, .boxTableList01 > .boxContent > .boxWrapper .boxImg,
.boxTableList02 > .boxContent > .boxWrapper .boxTxt,
.boxTableList01 > .boxContent > .boxWrapper .boxTxt {
  display: table-cell;
}
.boxTableList02 > .boxContent > .boxWrapper .boxImg, .boxTableList01 > .boxContent > .boxWrapper .boxImg {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: top;
}
.boxTableList02 > .boxContent > .boxWrapper .boxImg:first-child, .boxTableList01 > .boxContent > .boxWrapper .boxImg:first-child {
  padding-right: 10px;
}
.boxTableList02 > .boxContent > .boxWrapper .boxImg:last-child, .boxTableList01 > .boxContent > .boxWrapper .boxImg:last-child {
  padding-left: 10px;
}
.boxTableList02 > .boxContent > .boxWrapper .boxTxt, .boxTableList01 > .boxContent > .boxWrapper .boxTxt {
  vertical-align: middle;
}
.boxTableList02 > .boxContent > a.boxWrapper, .boxTableList01 > .boxContent > a.boxWrapper {
  text-decoration: none;
  color: #aeaeae;
}

.boxTableList01 {
  /*スマホレイアウトバリエーション*/
}
.boxTableList01 > .boxContent {
  width: 50%;
  float: left;
  display: block;
}
@media only screen and (max-width: 767px) {
  .boxTableList01 > .boxContent {
    width: auto;
    float: none;
  }
  .boxTableList01 > .boxContent:nth-child(n+2) {
    margin-top: 20px;
  }
}
.boxTableList01 > .boxContent:nth-child(odd) {
  clear: both;
}
.boxTableList01 > .boxContent:nth-child(n+3) {
  margin-top: 20px;
}
.boxTableList01 > .boxContent > .boxWrapper .boxImg {
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .boxTableList01.type01 > .boxContent > .boxWrapper .boxImg {
    width: 30%;
  }
}

/*/.boxTableList01*/
.boxTableList02 > .boxContent {
  display: block;
  width: 33.33333%;
  float: left;
}
.boxTableList02 > .boxContent:nth-child(3n+1) {
  clear: both;
}
.boxTableList02 > .boxContent:nth-child(n+4) {
  margin-top: 20px;
}
@media only screen and (max-width: 767px) {
  .boxTableList02 > .boxContent {
    width: 100%;
  }
  .boxTableList02 > .boxContent:nth-child(n+2) {
    margin-top: 20px;
  }
}
.boxTableList02 > .boxContent > .boxWrapper .boxImg {
  width: 30%;
}

/*/.boxTableList02*/
/*////////////////////////////////////////////////////

	汎用レイアウト（レイアウトセット参照）
		ここではレイアウトに関わるスタイルのみ記載し、
		背景色や背景画像、ボーダー、シャドウなどのデザインバリエーションは、
		_pattern.scss内に継承クラスで指定すること
		（例：.wrapper01.style01）

////////////////////////////////////////////////////*/
/* ------------------------------------------------
	.boxFlexContentシリーズここから
------------------------------------------------ */
.boxFlexContent01 {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-direction: row;
  -webkit-flex-direction: row;
  flex-direction: row;
  -ms-align-items: center;
  -moz-align-items: center;
  -webkit-align-items: center;
  align-items: center;
  /*IE9以下*/
  width: 100% \9 ;
  /*/.type01*/
  /*/.type02*/
}
.boxFlexContent01.reverse {
  -ms-flex-direction: row-reverse;
  -webkit-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
@media only screen and (max-width: 767px) {
  .boxFlexContent01 {
    display: block;
  }
}
.boxFlexContent01 > .boxImg {
  width: 40%;
}
@media only screen and (max-width: 767px) {
  .boxFlexContent01 > .boxImg {
    width: 100%;
  }
}
.boxFlexContent01 > .boxTxt {
  width: 60%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .boxFlexContent01 > .boxTxt {
    width: 100%;
    padding: 20px 10px 60px;
  }
}
.boxFlexContent01 > .boxImg, .boxFlexContent01 > .boxTxt {
  display: table-cell\9 ;
  vertical-align: middle\9 ;
}
.boxFlexContent01.type01 > .boxImg, .boxFlexContent01.type01 > .boxTxt {
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .boxFlexContent01.type01 > .boxImg, .boxFlexContent01.type01 > .boxTxt {
    width: 100%;
  }
}
.boxFlexContent01.type02 > .boxImg {
  width: 60%;
}
@media only screen and (max-width: 767px) {
  .boxFlexContent01.type02 > .boxImg {
    width: 100%;
  }
}
.boxFlexContent01.type02 > .boxTxt {
  width: 40%;
}
@media only screen and (max-width: 767px) {
  .boxFlexContent01.type02 > .boxTxt {
    width: 100%;
  }
}

/* ------------------------------------------------
	.boxFlexListシリーズここから
------------------------------------------------ */
.boxFlexList01 {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-direction: row;
  -webkit-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
  .boxFlexList01 {
    display: block;
  }
}
.boxFlexList01 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 33.33333%;
}
.boxFlexList01 > .boxContent:nth-child(n+4) {
  margin-top: 30px;
}
.boxFlexList01 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList01 > .boxContent .boxImg {
  text-align: center;
}
.boxFlexList01 > .boxContent02 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 30%;
}
.boxFlexList01 > .boxContent02:nth-child(n+4) {
  margin-top: 30px;
}
.boxFlexList01 > .boxContent02 > .boxTxt {
  padding: 20px;
}
.boxFlexList01 > .boxContent02 > .boxImg {
  width: 100%;
  text-align: center;
}
.boxFlexList01 > .boxContent02 > .boxImg img {
  width: 100%;
  height: auto;
}
.boxFlexList01.row4 > .boxContent {
  width: 25%;
}
@media only screen and (max-width: 767px) {
  .boxFlexList01 .boxContent, .boxFlexList01.row4 > .boxContent {
    width: 100%;
  }
  .boxFlexList01.type01 > .boxContent, .boxFlexList01.row4.type01 > .boxContent {
    width: 50%;
    float: left;
  }
  .boxFlexList01.type02 > .boxContent, .boxFlexList01.row4.type02 > .boxContent {
    width: 100%;
    display: table;
  }
  .boxFlexList01.type02 > .boxContent > .boxInner, .boxFlexList01.row4.type02 > .boxContent > .boxInner {
    display: table-row;
  }
  .boxFlexList01.type02 > .boxContent > .boxImg, .boxFlexList01.type02 > .boxContent > .boxTxt, .boxFlexList01.row4.type02 > .boxContent > .boxImg, .boxFlexList01.row4.type02 > .boxContent > .boxTxt {
    display: table-cell;
    width: 50%;
    vertical-align: middle;
  }
}

.boxFlexList02 {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-justify-content: space-between;
  -moz-justify-content: space-between;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.boxFlexList02.type01:after {
  content: "";
  display: block;
  width: 30%;
}
.boxFlexList02.type01 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 30%;
}
.boxFlexList02.type01 > .boxContent:nth-child(n+4) {
  margin-top: 30px;
}
.boxFlexList02.type01 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList02.type01 > .boxContent .note01 {
  display: inline-block;
  text-align: left;
  margin-top: 5px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
.boxFlexList02.type01 > .boxContent .caption01 {
  display: inline-block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
.boxFlexList02.type02:after {
  content: "";
  display: block;
  width: 22%;
}
.boxFlexList02.type02.row4 > .boxContent {
  width: 22%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.boxFlexList02.type02.row4 .boxImg .note01 {
  display: inline-block;
  text-align: left;
  margin-top: 5px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
.boxFlexList02.type02.row4 .boxImg .caption01 {
  display: inline-block;
  text-align: left;
  margin-top: 5px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
.boxFlexList02.type03:after {
  content: "";
  display: block;
  width: 46%;
}
.boxFlexList02.type03 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 46%;
}
.boxFlexList02.type03 > .boxContent:nth-child(n+3) {
  margin-top: 30px;
}
.boxFlexList02.type03 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList02.type03 > .boxContent .boxImg {
  text-align: center;
}
.boxFlexList02.type03 > .boxContent .note01 {
  display: inline-block;
  text-align: left;
  margin-top: 5px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
.boxFlexList02.type04:after {
  content: "";
  display: block;
  width: 22%;
}
.boxFlexList02.type04.row4 > .boxContent {
  width: 24%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.boxFlexList02.type04.row4 > .boxContent:nth-child(n+5) {
  margin-top: 30px;
}
.boxFlexList02.type04.row4 .boxImg .note01 {
  display: inline-block;
  text-align: left;
  margin-top: 5px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
.boxFlexList02.type04.row4 .boxImg .linktype {
  text-align: center;
  margin: 10px auto 0 auto;
  font-size: 18px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.type04.row4 .boxImg .linktype {
    line-height: 1.2;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.type04.row4 .boxImg .linktype {
    margin: 3px auto 10px auto;
  }
}
.boxFlexList02.type05 {
  margin-top: 0;
}
.boxFlexList02.type05:after {
  content: "";
  display: block;
  width: 48.9%;
}
.boxFlexList02.type05 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 48.9%;
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.type05 > .boxContent {
    width: 100%;
  }
}
.boxFlexList02.type05 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList02.type05 > .boxContent .note01 {
  display: inline-block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
.boxFlexList02.type06:after {
  content: "";
  display: block;
  width: 32%;
}
.boxFlexList02.type06 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 32%;
  margin-bottom: 25px;
}
.boxFlexList02.type06 > .boxContent:nth-child(3n) {
  margin-right: 0;
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.type06 > .boxContent {
    margin-bottom: 4%;
  }
}
.boxFlexList02.type06 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList02.type06 > .boxContent .note01 {
  text-align: center;
  display: inline-block;
  line-height: 1.5;
  margin-top: 8px;
  width: 100%;
}
.boxFlexList02.type06 > .boxContent .note02 {
  text-align: left;
  display: inline-block;
  line-height: 1.4;
  font-size: 14px;
  margin-top: 8px;
  margin-bottom: 15px;
  width: 96%;
  padding: 0 2%;
}
.boxFlexList02.type06 > .boxContent .jp .note02 {
  text-align: left;
  display: inline-block;
  line-height: 1.4;
  font-size: 13px;
  margin-top: 8px;
  margin-bottom: 15px;
  width: 90%;
  padding: 0 5%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.type06 > .boxContent {
    width: 49%;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.type06 > .boxContent {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.type01:after, .boxFlexList02.type02:after {
    content: "";
    display: block;
    width: 48%;
  }
  .boxFlexList02.type01 > .boxContent, .boxFlexList02.type01.row4 > .boxContent, .boxFlexList02.type02 > .boxContent, .boxFlexList02.type02.row4 > .boxContent {
    width: 48%;
  }
  .boxFlexList02.type01 > .boxContent:nth-child(n+3), .boxFlexList02.type01.row4 > .boxContent:nth-child(n+3), .boxFlexList02.type02 > .boxContent:nth-child(n+3), .boxFlexList02.type02.row4 > .boxContent:nth-child(n+3) {
    margin-top: 5%;
  }
  .boxFlexList02.pattern01:after {
    width: 100%;
  }
  .boxFlexList02.pattern01 > .boxContent {
    width: 100%;
  }
  .boxFlexList02.pattern01 > .boxContent:nth-child(n+2) {
    margin-top: 12%;
  }
  .boxFlexList02.pattern01.row4 > .boxContent {
    width: 100%;
  }
  .boxFlexList02.pattern01.row4 > .boxContent:nth-child(n+2) {
    margin-top: 8%;
  }
}
.boxFlexList02.type07 {
  padding-top: 5px;
  padding-bottom: 20px;
  border-bottom: 1px dashed #ccc;
}
.boxFlexList02.type07 > .boxContent {
  width: 100%;
  margin-top: 15px;
}
.boxFlexList02.type07 > .boxContent:last-child {
  margin-bottom: 0;
}
.boxFlexList02.type08:after {
  content: "";
  display: block;
  width: 30%;
}
.boxFlexList02.type08 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 31%;
  margin-bottom: 40px;
}
.boxFlexList02.type08 > .boxContent:nth-child(3n) {
  margin-right: 0;
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.type08 > .boxContent {
    margin-bottom: 4%;
  }
}
.boxFlexList02.type08 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList02.type08 > .boxContent .note01 {
  text-align: center;
  margin-top: 8px;
  width: 100%;
  display: inline-block;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.type08 > .boxContent {
    width: 49%;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.type08 > .boxContent {
    width: 100%;
  }
}
.boxFlexList02.type09 {
  padding-top: 5px;
  padding-bottom: 20px;
  border-bottom: 1px dashed #ccc;
  width: 920px;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .boxFlexList02.type09 {
    width: 100%;
  }
}
.boxFlexList02.type09:after {
  content: "";
  display: block;
  width: 50% !important;
}
.boxFlexList02.type09 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 50%;
  margin-top: 15px;
  margin-right: 0;
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.type09 > .boxContent {
    margin-bottom: 4%;
  }
}
.boxFlexList02.type09 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList02.type09 > .boxContent .note01 {
  text-align: center;
  margin-top: 8px;
  width: 100%;
  display: inline-block;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.type09 > .boxContent {
    width: 49%;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.type09 > .boxContent {
    width: 100%;
  }
}
.boxFlexList02.type10 {
  padding-top: 0px;
  padding-bottom: 0px;
}
.boxFlexList02.type10 > .boxContent {
  width: 100%;
  margin-top: 15px;
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.type10 > .boxContent {
    margin-top: 10px;
  }
}
.boxFlexList02.type10 > .boxContent:last-child {
  margin-bottom: 0;
}
.boxFlexList02.type11 {
  padding-top: 0px;
}
.boxFlexList02.type11 > .boxContent {
  width: 100%;
  margin-top: 0px;
}
.boxFlexList02.type11 > .boxContent:last-child {
  margin-bottom: 0;
}
.boxFlexList02.type12 .box {
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.type12 .box {
    width: 100%;
  }
}
.boxFlexList02.type12.en .box {
  width: 100%;
}
.boxFlexList02.type12 a {
  width: 100%;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
}
@media print, screen and (min-width: 1025px) {
  .boxFlexList02.type12 a:hover .style01 {
    background: #cacaca;
  }
  .boxFlexList02.type12 a:hover .style02 {
    background: rgba(0, 160, 220, 0.6);
  }
  .boxFlexList02.type12 a:hover .style03 {
    background: rgba(0, 104, 177, 0.6);
  }
  .boxFlexList02.type12 a:hover.link-06 {
    color: #fff;
  }
}
.boxFlexList02.type12 .no-links-01 {
  width: 100%;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  width: 100%;
}
.boxFlexList02.type12:nth-of-type(2n):after {
  width: 49.8%;
}
.boxFlexList02.type12:after {
  content: "";
  display: block;
  width: 49.8%;
}
.boxFlexList02.type12 .boxContent {
  padding: 10px 10px 15px 10px;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 99.8%;
  margin-bottom: 1px;
}
@media print, screen and (min-width: 1025px) {
  .boxFlexList02.type12 .boxContent:nth-of-type(2n) {
    width: 49.8%;
  }
}
.boxFlexList02.type12 .boxContent.style01 {
  background: #eaeaea;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.boxFlexList02.type12 .boxContent.style02 {
  background: #00a0dc;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.boxFlexList02.type12 .boxContent.style03 {
  background: #0068af;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.type12 .boxContent {
    width: 100%;
  }
}
.boxFlexList02.type12 .boxContent > .boxImg {
  display: table-cell;
  vertical-align: middle;
}
.boxFlexList02.type12 .boxContent > .boxImg p {
  line-height: 1.2;
  font-size: 14px;
}
.boxFlexList02.type13:after {
  content: "";
  display: block;
  width: 25%;
}
.boxFlexList02.type13 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 25%;
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.type13 > .boxContent {
    width: 50%;
  }
  .boxFlexList02.type13 > .boxContent:nth-child(n+3) {
    margin-top: 20px;
  }
}
.boxFlexList02.type13 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList02.type14:nth-of-type(2n):after {
  width: 49.8%;
}
.boxFlexList02.type14:after {
  content: "";
  display: block;
  width: 50%;
}
.boxFlexList02.type14 > .boxContent {
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 50%;
  margin-bottom: 1px;
}
@media print, screen and (min-width: 1025px) {
  .boxFlexList02.type14 > .boxContent:nth-of-type(2n) {
    width: 49.8%;
  }
}
.boxFlexList02.type14 > .boxContent.style01 {
  background: #eaeaea;
}
.boxFlexList02.type14 > .boxContent.style02 {
  background: #0068af;
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.type14 > .boxContent {
    width: 100%;
  }
}
.boxFlexList02.type15:after {
  content: "";
  display: block;
  width: 32%;
}
.boxFlexList02.type15 > .boxContent {
  width: 32%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.boxFlexList02.type15 .boxImg .linktype {
  text-align: center;
  margin: 10px auto 0 auto;
  font-size: 18px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.type15 .boxImg .linktype {
    line-height: 1.2;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.type15 .boxImg .linktype {
    margin: 3px auto 10px auto;
  }
}

.boxFlexList03 {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.boxFlexList03.type01:after {
  content: "";
  display: block;
  width: 30%;
}
.boxFlexList03.type01 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 30%;
}
.boxFlexList03.type01 > .boxContent:nth-child(n+4) {
  margin-top: 30px;
}
.boxFlexList03.type01 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList03.type01 > .boxContent .note01 {
  display: inline-block;
  text-align: left;
  margin-top: 5px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
.boxFlexList03.type02:after {
  content: "";
  display: block;
  width: 22%;
}
.boxFlexList03.type02.row4 > .boxContent {
  width: 22%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.boxFlexList03.type02.row4 > .boxContent:nth-child(n+5) {
  margin-top: 30px;
}
.boxFlexList03.type02.row4 .boxImg .note01 {
  display: inline-block;
  text-align: left;
  margin-top: 5px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
.boxFlexList03.type03:after {
  content: "";
  display: block;
  width: 46%;
}
.boxFlexList03.type03 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 46%;
}
.boxFlexList03.type03 > .boxContent:nth-child(n+3) {
  margin-top: 30px;
}
.boxFlexList03.type03 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList03.type03 > .boxContent .note01 {
  display: inline-block;
  text-align: left;
  margin-top: 5px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
@media only screen and (max-width: 767px) {
  .boxFlexList03.type01:after, .boxFlexList03.type02:after {
    content: "";
    display: block;
    width: 48%;
  }
  .boxFlexList03.type01 > .boxContent, .boxFlexList03.type01.row4 > .boxContent, .boxFlexList03.type02 > .boxContent, .boxFlexList03.type02.row4 > .boxContent {
    width: 48%;
  }
  .boxFlexList03.type01 > .boxContent:nth-child(n+3), .boxFlexList03.type01.row4 > .boxContent:nth-child(n+3), .boxFlexList03.type02 > .boxContent:nth-child(n+3), .boxFlexList03.type02.row4 > .boxContent:nth-child(n+3) {
    margin-top: 5%;
  }
  .boxFlexList03.pattern01:after {
    width: 100%;
  }
  .boxFlexList03.pattern01 > .boxContent {
    width: 100%;
  }
  .boxFlexList03.pattern01 > .boxContent:nth-child(n+2) {
    margin-top: 12%;
  }
  .boxFlexList03.pattern01.row4 > .boxContent {
    width: 100%;
  }
  .boxFlexList03.pattern01.row4 > .boxContent:nth-child(n+2) {
    margin-top: 8%;
  }
}

.boxFlexList04_bk {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.boxFlexList04_bk > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .boxFlexList04_bk > .boxContent {
    width: 100%;
    margin-bottom: 10px;
  }
}
.boxFlexList04_bk > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList04_bk > .boxContent > .boxImg {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #eaeaea;
  width: 100%;
  height: 100%;
}
.boxFlexList04_bk > .boxContent > .boxImg img {
  width: 100%;
  height: auto;
}
.boxFlexList04_bk > .boxContent .caption01 {
  position: absolute;
  display: block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  padding: 0 20px;
  background-color: #f00;
  top: 100%;
  left: 0;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
.boxFlexList04_bk.type01 {
  -ms-justify-content: space-between;
  -moz-justify-content: space-between;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.boxFlexList04_bk.type01 > .boxContent {
  width: 50%;
}
.boxFlexList04_bk.type01 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList04_bk.type02.center {
  -webkit-justify-content: center;
  justify-content: center;
}
.boxFlexList04_bk.type02.left {
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
.boxFlexList04_bk.type02.right {
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
}
.boxFlexList04_bk.type02 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 38%;
}
@media only screen and (max-width: 767px) {
  .boxFlexList04_bk.type02 > .boxContent {
    width: 100%;
    margin-bottom: 20px;
  }
}
.boxFlexList04_bk.type02 > .boxContent:first-child {
  margin-right: 14%;
}
@media only screen and (max-width: 767px) {
  .boxFlexList04_bk.type02 > .boxContent:first-child {
    margin-right: 0;
  }
}
.boxFlexList04_bk.type02 > .boxContent:last-child {
  margin-right: 0;
}
.boxFlexList04_bk.type02 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList04_bk.type02 > .boxContent .boxImg img {
  width: 100%;
  height: 203px;
  object-fit: cover;
}
@media only screen and (max-width: 767px) {
  .boxFlexList04_bk.type02 > .boxContent .boxImg img {
    height: auto;
  }
}
.boxFlexList04_bk.type02 > .boxContent .caption01 {
  display: inline-block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
.boxFlexList04_bk.type03.center {
  -webkit-justify-content: center;
  justify-content: center;
}
.boxFlexList04_bk.type03.left {
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
.boxFlexList04_bk.type03.right {
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
}
.boxFlexList04_bk.type03 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 28%;
}
@media only screen and (max-width: 767px) {
  .boxFlexList04_bk.type03 > .boxContent {
    width: 100%;
    margin-bottom: 20px;
  }
}
.boxFlexList04_bk.type03 > .boxContent:first-child {
  margin-right: 24%;
}
@media only screen and (max-width: 767px) {
  .boxFlexList04_bk.type03 > .boxContent:first-child {
    margin-right: 0;
  }
}
.boxFlexList04_bk.type03 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList04_bk.type03 > .boxContent .boxImg img {
  width: 100%;
  height: 149px;
  object-fit: cover;
}
@media only screen and (max-width: 767px) {
  .boxFlexList04_bk.type03 > .boxContent .boxImg img {
    height: auto;
  }
}
.boxFlexList04_bk.type03 > .boxContent .caption01 {
  display: inline-block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
.boxFlexList04_bk.type04.center {
  -webkit-justify-content: center;
  justify-content: center;
}
.boxFlexList04_bk.type04.left {
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
.boxFlexList04_bk.type04.right {
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
}
.boxFlexList04_bk.type04 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 30.6%;
  margin-right: 4%;
}
@media only screen and (max-width: 767px) {
  .boxFlexList04_bk.type04 > .boxContent {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }
}
.boxFlexList04_bk.type04 > .boxContent:nth-child(3) {
  margin-right: 0;
}
.boxFlexList04_bk.type04 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList04_bk.type04 > .boxContent .boxImg {
  text-align: center;
  height: 174px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .boxFlexList04_bk.type04 > .boxContent .boxImg {
    height: auto;
  }
}
.boxFlexList04_bk.type04 > .boxContent .boxImg img {
  width: 100%;
  height: 174px;
  object-fit: cover;
}
@media only screen and (max-width: 767px) {
  .boxFlexList04_bk.type04 > .boxContent .boxImg img {
    height: auto;
  }
}
.boxFlexList04_bk.type04 > .boxContent .caption01 {
  display: inline-block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
.boxFlexList04_bk.type05.center {
  -webkit-justify-content: center;
  justify-content: center;
}
.boxFlexList04_bk.type05.left {
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
.boxFlexList04_bk.type05.right {
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
}
.boxFlexList04_bk.type05 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 22%;
  margin-right: 4%;
}
@media only screen and (max-width: 767px) {
  .boxFlexList04_bk.type05 > .boxContent {
    width: 100%;
    margin-right: 0%;
    margin-bottom: 20px;
  }
}
.boxFlexList04_bk.type05 > .boxContent:nth-child(4) {
  margin-right: 0;
}
.boxFlexList04_bk.type05 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList04_bk.type05 > .boxContent .boxImg {
  text-align: center;
  height: 125px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .boxFlexList04_bk.type05 > .boxContent .boxImg {
    height: auto;
  }
}
.boxFlexList04_bk.type05 > .boxContent .boxImg img {
  width: 100%;
  height: 125px;
  object-fit: cover;
}
@media only screen and (max-width: 767px) {
  .boxFlexList04_bk.type05 > .boxContent .boxImg img {
    height: auto;
  }
}
.boxFlexList04_bk.type05 > .boxContent .caption01 {
  display: inline-block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}

/*////////////////////////////////////////////////////

	汎用スタイルパターン（レイアウトセット参照）
		ここでは_layout.scssなどで用意したレイアウトパターンに適用する
		スタイルのバリエーション(背景色や背景画像、ボーダー、シャドウなど)を継承クラスとして指定してください。
		例：
			.wrapper01,
			.wrapper02 {
				&.style01 {

				}
				&.style02 {

				}
			}

////////////////////////////////////////////////////*/
/*////////////////////////////////////////////////////

	テキスト、見出しの汎用スタイル

////////////////////////////////////////////////////*/
/* ------------------------------------------------
	テキスト
------------------------------------------------ */
/* ------------------------------------------------
	見出し
------------------------------------------------ */
.tit01 {
  font-weight: 500;
  font-size: 44px;
  margin-bottom: 40px;
  line-height: 1;
  font-feature-settings: "palt";
  width: 100%;
  word-wrap: break-word;
}
@media only screen and (max-width: 767px) {
  .tit01 {
    font-size: 32px;
    margin-bottom: 30px;
    line-height: 1.1;
  }
}
.tit01.style01 {
  text-align: center;
  margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  .tit01.style01 {
    margin-bottom: 30px;
  }
}
.tit01.type02 {
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  .tit01.type03 {
    text-align: left;
  }
}

.tit02 {
  font-weight: 500;
  font-size: 35px;
  margin-bottom: 25px;
  line-height: 1.2;
  padding-left: 20px;
  background: transparent;
  border-left: solid 5px #0068af;
  font-feature-settings: "palt";
  width: 100%;
  word-wrap: break-word;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tit02 {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .tit02 {
    font-size: 30px;
    line-height: 1.1;
    width: 100%;
  }
}
.tit02.style01 {
  text-align: center;
  border-left: none;
  padding-left: 0;
}
.tit02.type01 {
  margin-top: 60px;
}
.tit02.type02 {
  margin-top: 40px;
}

.tit03 {
  font-weight: 500;
  font-size: 25px;
  margin-bottom: 25px;
  line-height: 1.2;
  border-bottom: solid 1px #666;
  padding-bottom: 5px;
  font-feature-settings: "palt";
  width: 100%;
  word-wrap: break-word;
}
@media only screen and (max-width: 767px) {
  .tit03 {
    font-size: 25px;
    line-height: 1.1;
  }
}
.tit03.style01 {
  text-align: center;
  border-bottom: none;
  padding-bottom: 0px;
}
.tit03.type01 {
  margin-top: 50px;
}
.tit03.type02 {
  margin-top: 40px;
}

.tit04 {
  font-weight: 500;
  font-size: 23px;
  margin-bottom: 25px;
  line-height: 1.2;
  font-feature-settings: "palt";
  width: 100%;
  word-wrap: break-word;
}
@media only screen and (max-width: 767px) {
  .tit04 {
    font-size: 22px;
    line-height: 1.1;
  }
}
.tit04.style01 {
  text-align: center;
}
.tit04.type01 {
  margin-top: 70px;
}
.tit04.type02 {
  margin-top: 40px;
}
.tit04.type03 {
  margin-bottom: 15px;
}

.tit05 {
  font-weight: normal;
  font-size: 20px !important;
  margin-bottom: 25px;
  line-height: 1.2;
  padding-bottom: 5px;
  border-bottom: 1px dotted #adadad;
  font-feature-settings: "palt";
  width: 100%;
  word-wrap: break-word;
}
@media only screen and (max-width: 767px) {
  .tit05 {
    font-size: 22px;
    line-height: 1.1;
  }
}
.tit05.style01 {
  text-align: center;
}
.tit05.type01 {
  margin-top: 70px;
}
.tit05.type02 {
  margin-top: 40px;
}
.tit05.type03 {
  font-size: 23px;
  font-weight: bold;
  margin-bottom: 0px;
  padding-bottom: 3px;
}
.tit05.type04 {
  font-size: 20px;
  font-weight: bold;
}
@media print, screen and (min-width: 1025px) {
  .tit05.type04:hover {
    border-color: #0068af;
  }
}
.tit05.type04 a {
  display: inline-block;
  padding-left: 30px;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  color: #000;
  position: relative;
}
.tit05.type04 a:before, .tit05.type04 a:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.tit05.type04 a:before {
  width: 7px;
  height: 7px;
  border-top: 4px solid #0068af;
  border-right: 4px solid #0068af;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 8px;
  left: 0;
}
@media print, screen and (min-width: 1025px) {
  .tit05.type04 a:hover {
    color: #0068af;
    border-color: #0068af;
  }
  .tit05.type04 a:hover:after, .tit05.type04 a:hover:before {
    border-color: #0068af;
  }
}
.tit05.type04.out01 a:after {
  background: url(/common/img/ico_link_02.png) no-repeat right center;
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  padding-left: 10px;
  bottom: 5px;
}
@media print, screen and (min-width: 1025px) {
  .tit05.type04.out01 a:hover:after {
    background: url(/common/img/ico_link_02_on.png) no-repeat right center;
  }
}

.tit06.style01 {
  font-weight: 500;
  font-size: 34px;
  margin-bottom: 25px;
  line-height: 1.2;
  font-feature-settings: "palt";
  width: 100%;
  word-wrap: break-word;
}
@media only screen and (max-width: 767px) {
  .tit06.style01 {
    font-size: 25px;
    line-height: 1.1;
  }
}
.tit06.style01 a {
  display: inline-block;
  padding-left: 30px;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  border-bottom: solid 1px #666;
  color: #000;
  position: relative;
  padding-bottom: 5px;
}
.tit06.style01 a:before, .tit06.style01 a:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.tit06.style01 a:before {
  width: 11px;
  height: 11px;
  border-top: 4px solid #0068af;
  border-right: 4px solid #0068af;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 10px;
  left: 0;
}
@media print, screen and (min-width: 1025px) {
  .tit06.style01 a:hover {
    color: #0068af;
    border-bottom: solid 1px #0068af;
  }
  .tit06.style01 a:hover:after, .tit06.style01 a:hover:before {
    border-color: #0068af;
  }
}
.tit06.type01 {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  font-size: 25px;
  border-bottom: 1px dotted #adadad;
}
@media print, screen and (min-width: 1025px) {
  .tit06.type01:hover {
    border-bottom: dotted 1px #0068af !important;
  }
}
.tit06.type01 a {
  border-bottom: none;
}
.tit06.type01 a:hover {
  border-bottom: none;
}
.tit06.type01 a:before {
  width: 9px;
  height: 9px;
  top: 6px;
}
.tit06.type02 {
  font-size: 20px;
  border-bottom: 1px dotted #adadad;
  font-weight: normal;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media print, screen and (min-width: 1025px) {
  .tit06.type02:hover {
    border-bottom: dotted 1px #0068af !important;
  }
}
.tit06.type02 a {
  border-bottom: none;
}
.tit06.type02 a:hover {
  border-bottom: none;
}
.tit06.type02 a:before {
  width: 7px;
  height: 7px;
  top: 8px;
}
.tit06.out01 a:after, .tit06.out02 a:after, .tit06.out03 a:after {
  background: url(/common/img/ico_link_02.png) no-repeat right center;
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  padding-left: 10px;
  bottom: 9px;
}
@media print, screen and (min-width: 1025px) {
  .tit06.out01 a:hover:after, .tit06.out02 a:hover:after, .tit06.out03 a:hover:after {
    background: url(/common/img/ico_link_02_on.png) no-repeat right center;
  }
}
.tit06.out01 a:after {
  bottom: 13px;
}

.tit07 {
  width: 100%;
  font-size: 20px;
  font-weight: bold;
  background: url(/csr/img/tit_bg.png) right top no-repeat #00a0dc;
  min-height: 40px;
  color: #fff;
  padding: 8px 25px 6px 20px;
  margin-bottom: 25px;
  line-height: 1.2;
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.tit07.style01 {
  background-color: #0068af;
}

.tit07_free {
  width: 100%;
  font-size: 18px;
  font-weight: bold;
  background: url(/csr/img/tit_bg.png) right top no-repeat #00a0dc;
  min-height: 40px;
  color: #fff;
  padding: 10px 25px 6px 20px;
  line-height: 1.2;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media all and (-ms-high-contrast: none) {
  .tit07_free {
    padding: 14px 25px 0 20px;
  }
}
@media only screen and (max-width: 767px) {
  .tit07_free {
    font-size: 16px;
  }
}
.tit07_free.style01 {
  background-color: #0068af;
}
.tit07_free.type01 {
  width: auto;
  display: inline;
}
.tit07_free.style02 {
  background-color: #0068af;
  font-size: 30px;
}

.tit08 {
  width: 100%;
  font-size: 20px;
  font-weight: bold;
  color: #00a0dc;
  margin-bottom: 20px !important;
  line-height: 1;
}
.tit08.style01 {
  color: #0068af;
  font-size: 20px !important;
}

.tit09 {
  width: 100%;
  font-size: 20px;
  font-weight: bold;
  color: #0068af;
  margin-bottom: 5px !important;
  line-height: 1.5;
  padding-bottom: 5px;
}
.tit09 a {
  color: #0068af !important;
  border-color: #0068af;
}
.tit09 a:hover {
  color: #00a0dc;
}

.tit10 {
  width: 100%;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 24px;
  line-height: 1.5;
  position: relative;
}
.tit10:before {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 100px;
  height: 2px;
  background: #00a0dc;
}

.jp .tit01 {
  font-size: 36px;
  font-weight: bold;
  word-wrap: break-word;
  line-height: 1.2;
}
@media only screen and (max-width: 767px) {
  .jp .tit01 {
    font-size: 30px;
  }
}
.jp .tit01.style01 {
  text-align: center;
  margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  .jp .tit01.style01 {
    margin-bottom: 30px;
  }
}
.jp .tit01.type02 {
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  .jp .tit01.type03 {
    text-align: left;
  }
}
.jp .tit02, .jp .tit06_link {
  font-size: 30px;
  font-weight: bold;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  word-wrap: break-word;
  line-height: 1.2;
}
@media only screen and (max-width: 767px) {
  .jp .tit02, .jp .tit06_link {
    font-size: 26px;
  }
}
.jp .tit02.type01 {
  margin-top: 70px;
}
.jp .tit02.type02 {
  margin-top: 40px;
}
.jp .tit03 {
  font-size: 22px;
  font-weight: bold;
  word-wrap: break-word;
  line-height: 1.4;
}
@media only screen and (max-width: 767px) {
  .jp .tit03 {
    font-size: 22px;
  }
}
.jp .tit03.type01 {
  margin-top: 60px;
}
.jp .tit03.type02 {
  margin-top: 40px;
}
.jp .tit04 {
  font-weight: bold;
  font-size: 20px;
  word-wrap: break-word;
  line-height: 1.2;
}
@media only screen and (max-width: 767px) {
  .jp .tit04 {
    font-size: 20px;
  }
}
.jp .tit04.type01 {
  margin-top: 70px;
}
.jp .tit04.type02 {
  margin-top: 40px;
}
.jp .tit05 {
  font-size: 18px;
  word-wrap: break-word;
  line-height: 1.2;
}
@media only screen and (max-width: 767px) {
  .jp .tit05 {
    font-size: 20px;
  }
}
.jp .tit05.type01 {
  margin-top: 70px;
}
.jp .tit05.type02 {
  margin-top: 40px;
}
.jp .tit05.type03 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 0px;
  padding-bottom: 3px;
}
.jp .tit05.type04 {
  font-size: 20px;
  font-weight: bold;
}
.jp .tit05.type04 a:before {
  width: 7px;
  height: 7px;
  top: 6px;
}
.jp .tit06.style01 {
  font-size: 30px;
}
@media all and (-ms-high-contrast: none) {
  .jp .tit06.style01 a {
    line-height: 1.1;
  }
  .jp .tit06.style01 a:before {
    top: 4px;
  }
}
.jp .tit06.style01.type01 {
  font-size: 22px;
  border-bottom: 1px dotted #adadad;
  font-weight: bold;
}
.jp .tit06.style01.type02 {
  font-size: 18px;
  font-weight: normal;
  border-bottom: 1px dotted #adadad;
}
.jp .tit06.style01.type02 a:before {
  width: 7px;
  height: 7px;
  top: 4px;
}
.jp .tit07 {
  width: 100%;
  font-size: 18px !important;
  font-weight: bold;
  background: url(/csr/img/tit_bg.png) right top no-repeat #00a0dc;
  min-height: 40px;
  color: #fff;
  padding: 10px 25px 6px 20px;
  margin-bottom: 25px;
  line-height: 1.2;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media all and (-ms-high-contrast: none) {
  .jp .tit07 {
    padding: 14px 25px 0 20px;
  }
}
@media only screen and (max-width: 767px) {
  .jp .tit07 {
    font-size: 16px;
  }
}
.jp .tit07.style01 {
  background-color: #0068af;
}
.jp .tit07.type01 {
  width: auto;
  display: inline;
}
.jp .tit08 {
  width: 100%;
  font-size: 18px !important;
  font-weight: bold;
  color: #00a0dc;
  margin-bottom: 20px !important;
  line-height: 1;
}
.jp .tit08.style01 {
  color: #0068af;
  font-size: 18px;
}
.jp .tit07_free {
  width: 100%;
  font-size: 18px;
  font-weight: bold;
  background: url(/csr/img/tit_bg.png) right top no-repeat #00a0dc;
  min-height: 40px;
  color: #fff;
  padding: 10px 25px 6px 20px;
  line-height: 1.2;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media all and (-ms-high-contrast: none) {
  .jp .tit07_free {
    padding: 14px 25px 0 20px;
  }
}
@media only screen and (max-width: 767px) {
  .jp .tit07_free {
    font-size: 16px;
  }
}
.jp .tit07_free.style01 {
  background-color: #0068af;
}
.jp .tit07_free.type01 {
  width: auto;
  display: inline;
}
.jp .tit07_free.style02 {
  background-color: #0068af;
  font-size: 30px;
}

@media all and (-ms-high-contrast: none) {
  .jp .tit01 {
    line-height: 1.2;
    padding-top: 11px;
  }
  .jp .tit02, .jp .tit06_link {
    line-height: 1.2;
    padding-top: 11px;
  }
  .jp #library2 .tit03 {
    margin-top: 12px;
  }
}
#library2 .tit03 {
  margin-top: -3px;
}

.rich_text h1 {
  font-size: 34px;
}
.rich_text h2 {
  font-size: 28px;
}
.rich_text h3 {
  font-size: 22px;
}
.rich_text h4 {
  font-size: 25px;
}
.rich_text h5 {
  font-size: 18px;
}
.rich_text h6 {
  font-size: 16px;
}
.rich_text h1, .rich_text h2, .rich_text h3, .rich_text h4, .rich_text h5, .rich_text h6 {
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 10px;
}
.rich_text h4.tit03 {
  font-weight: 500;
  font-size: 25px;
  margin-bottom: 10px;
  line-height: 1.2;
  border-bottom: solid 1px #666;
  padding-bottom: 5px;
  font-feature-settings: "palt";
  width: 100%;
  word-wrap: break-word;
}
.rich_text h5.tit04 {
  font-weight: 500;
  font-size: 23px;
  margin-bottom: 10px;
  line-height: 1.2;
  font-feature-settings: "palt";
  width: 100%;
  word-wrap: break-word;
}
.rich_text h6.tit05 {
  font-weight: normal;
  font-size: 20px;
  margin-bottom: 10px;
  line-height: 1.2;
  border-bottom: solid 1px #666;
  padding-bottom: 5px;
  font-feature-settings: "palt";
  width: 100%;
  word-wrap: break-word;
}

.jp .rich_text h1 {
  font-size: 30px;
}
.jp .rich_text h2 {
  font-size: 26px;
}
.jp .rich_text h3 {
  font-size: 22px;
}
.jp .rich_text h4 {
  font-size: 18px;
}
.jp .rich_text h5 {
  font-size: 16px;
}
.jp .rich_text h6 {
  font-size: 14px;
}
.jp .rich_text h1, .jp .rich_text h2, .jp .rich_text h3, .jp .rich_text h4, .jp .rich_text h5, .jp .rich_text h6 {
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 10px;
}
.jp .rich_text h4.tit03 {
  font-size: 22px;
  font-weight: 700;
  word-wrap: break-word;
  margin-bottom: 10px;
  line-height: 1.2;
  border-bottom: solid 1px #666;
  padding-bottom: 5px;
  font-feature-settings: "palt";
}
.jp .rich_text h5.tit04 {
  font-size: 20px;
  font-weight: 700;
  word-wrap: break-word;
  margin-bottom: 10px;
  line-height: 1.2;
  width: 100%;
}
.jp .rich_text h6.tit05 {
  font-size: 18px;
  word-wrap: break-word;
  line-height: 1.2;
  font-weight: normal;
  margin-bottom: 10px;
  line-height: 1.2;
  border-bottom: solid 1px #666;
  padding-bottom: 5px;
  font-feature-settings: "palt";
}

/*////////////////////////////////////////////////////

  汎用リンク

////////////////////////////////////////////////////*/
/* ------------------------------------------------
  ベース設定
------------------------------------------------ */
a {
  text-decoration: none;
}
.pageLink {
  padding-top: 60px;
  margin-top: -60px;
}
.pageLink.max {
  padding-top: 100px;
  margin-top: -100px;
}
@media only screen and (max-width: 767px) {
  .pageLink {
    padding-top: 50px;
    margin-top: -50px;
  }
}
@media print {
  .pageLink {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
}

@media print, screen and (min-width: 1025px) {
  .PC .link-sp-tab:hover {
    cursor: default;
  }
}

/* ------------------------------------------------
  テキストリンク
------------------------------------------------ */
/* インラインリンク */
.link-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 0 0 30px;
}
.link-01 a {
  color: #000;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-01 a:hover {
  color: #0068af;
}
.link-01 a:before, .link-01 a:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-01 a:before {
  width: 16px;
  height: 16px;
  border: 1px solid #000;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  left: -25px;
  top: 2px;
}
.link-01 a:after {
  width: 5px;
  height: 5px;
  border-color: #000;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 7px;
  left: -21px;
}
@media only screen and (max-width: 767px) {
  .link-01 a {
    padding: 0;
  }
  .link-01 a:before {
    top: 2px;
  }
}
@media print, screen and (min-width: 1025px) {
  .link-01 a:hover:before, .link-01 a:hover:after {
    border-color: #0068af;
  }
}
.link-01.style01 a {
  color: #fff;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-01.style01 a::after {
  border-color: #fff;
}
.link-01.style01 a:before {
  border: 1px solid #fff;
}
@media print, screen and (min-width: 1025px) {
  .link-01.style01 a:hover {
    color: #00a0dc;
  }
  .link-01.style01 a:hover::after {
    border-color: #00a0dc;
    bottom: 4px;
  }
  .link-01.style01 a:hover:before {
    border: 1px solid #00a0dc;
  }
}
.link-01.style02 a {
  color: #fff;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-01.style02 a::after {
  border-color: #fff;
}
.link-01.style02 a:before {
  border: 1px solid #fff;
}
@media print, screen and (min-width: 1025px) {
  .link-01.style02 a:hover {
    color: #00a0dc;
  }
  .link-01.style02 a:hover::after {
    border-color: #00a0dc;
    bottom: 4px;
  }
  .link-01.style02 a:hover:before {
    border: 1px solid #00a0dc;
  }
}
.link-01.type01 {
  padding: 0 0 0 25px;
}
.link-01.type01 a {
  font-size: 15px;
}
.link-01.type01 a span:after {
  background: url(../img/ico-pdf-01@2x.png) center center no-repeat;
  content: " ";
  background-color: inherit;
  background-size: cover;
  width: 40px;
  height: 16px;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  outline: 1px solid #ccc;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  top: -1px;
  left: 10px;
}
@media print, screen and (min-width: 1025px) {
  .link-01.type01 a:hover {
    color: #0068af;
  }
  .link-01.type01 a:hover span::after {
    background: url(../img/ico-pdf-01@2x_.png) center center no-repeat;
    background-size: cover;
  }
}
.link-01.type02 span {
  color: #fff;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-01.type02 span.not {
  padding-right: 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.link-01.type02 span.not:before {
  display: none;
}
.link-01.type02 span.not:after {
  display: none;
}
.link-01.type02 span:hover {
  color: #0068af;
}
.link-01.type02 span:before, .link-01.type02 span:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-01.type02 span:before {
  width: 16px;
  height: 16px;
  border: 1px solid #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  left: -25px;
  top: -2px;
}
.link-01.type02 span:after {
  width: 5px;
  height: 5px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 3px;
  left: -21px;
}
.link-01.type03 {
  padding: 8px 0 0 26px;
  line-height: 1.3;
}
.link-01.type03 span {
  color: #000;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-01.type03 span:hover {
  color: #0068af;
}
.link-01.type03 span:before, .link-01.type03 span:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-01.type03 span:before {
  width: 16px;
  height: 16px;
  border: 1px solid #000;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  left: -25px;
  top: 3px;
}
.link-01.type03 span:after {
  width: 5px;
  height: 5px;
  border-color: #000;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 8px;
  left: -21px;
}

@media all and (-ms-high-contrast: none) {
  .jp .link-01.type02 span {
    display: inline-block;
    padding-top: 6px;
  }
}
@media all and (-ms-high-contrast: none) and (-ms-high-contrast: none) {
  .jp .link-01.type02 span:before {
    top: 2px;
  }
}
@media all and (-ms-high-contrast: none) and (-ms-high-contrast: none) {
  .jp .link-01.type02 span:after {
    top: 7px;
  }
}

a.link-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 0 0 25px;
  color: #000;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
a.link-01:hover {
  color: #0068af;
}
a.link-01:before, a.link-01:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
a.link-01:before {
  width: 16px;
  height: 16px;
  border: 1px solid #000;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  left: 0px;
  top: 2px;
}
a.link-01:after {
  width: 5px;
  height: 5px;
  border-color: #000;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 7px;
  left: 4px;
}
@media only screen and (max-width: 767px) {
  a.link-01 {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 0 0 25px;
    display: inline-block;
  }
  a.link-01:before {
    top: 4px;
  }
  a.link-01:after {
    top: 9px;
  }
}
@media print, screen and (min-width: 1025px) {
  a.link-01:hover:before {
    border: 1px solid #0068af;
  }
  a.link-01:hover:after {
    border-color: #0068af;
  }
}

/* リッチテキスト用スタイル */
.link-01-pdf {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 0 0 26px;
  display: inline-block;
  font-size: 15px;
  color: #000;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 320px) {
  .link-01-pdf {
    padding: 4px 0 0 26px;
  }
}
@media only screen and (max-width: 320px) {
  .link-01-pdf {
    font-size: 13px;
    padding: 7px 0 0 26px;
  }
}
.link-01-pdf span {
  display: inline;
}
.link-01-pdf:before, .link-01-pdf:after {
  content: "";
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-01-pdf:before {
  content: "";
  background: url(../img/icon_link.png) left 4px no-repeat;
  width: 18px;
  height: 21px;
  left: 0;
}
@media only screen and (max-width: 767px) {
  .link-01-pdf:before {
    content: "";
    background: url(../img/icon_link@2x.png) left 0 no-repeat;
    width: 36px;
    height: 40px;
    -ms-transform: scale(0.5, 0.5);
    -webkit-transform: scale(0.5, 0.5);
    transform: scale(0.5, 0.5);
    top: -5px;
    left: -9px;
  }
}
.link-01-pdf:after {
  width: 42px;
  height: 18px;
  right: -50px;
  bottom: 4px;
  background: url(../img/ico-pdf-03.png) left 0 no-repeat;
}
@media only screen and (max-width: 767px) {
  .link-01-pdf:after {
    position: relative;
    left: 10px;
    top: 4px;
    display: inline;
    content: url(../img/ico-pdf-03.png);
    background: none;
  }
}
@media print, screen and (min-width: 1025px) {
  .link-01-pdf:hover {
    color: #0068af;
  }
  .link-01-pdf:hover:before {
    background: url(../img/icon_link_on.png) left 4px no-repeat;
  }
  .link-01-pdf:hover:after {
    background: url(../img/ico-pdf-03_on.png) left 0 no-repeat;
  }
}
.link-01-pdf a {
  color: #000;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media print, screen and (min-width: 1025px) {
  .link-01-pdf a:hover {
    color: #0068af;
  }
}

.link-02 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
  position: relative;
}
.link-02 a {
  position: relative;
  display: inline-block;
  color: #000;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-02 a::after {
  content: "";
  position: absolute;
  bottom: 4px;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(0);
  background-color: #000;
  transition: all 0.5s ease;
}
.link-02 a:before {
  content: "";
  position: absolute;
  bottom: 4px;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(1);
  background-color: #000;
}
@media print, screen and (min-width: 1025px) {
  .link-02 a:hover {
    color: #00a0dc;
  }
  .link-02 a:hover::after {
    bottom: 4px;
    transform: scaleX(1);
    background-color: #00a0dc;
  }
  .link-02 a:hover:before {
    transform: scaleX(0);
    background-color: #00a0dc;
  }
}
.link-02.style01 a {
  color: #fff;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-02.style01 a::after {
  background-color: #fff;
}
.link-02.style01 a:before {
  background-color: #fff;
}
@media print, screen and (min-width: 1025px) {
  .link-02.style01 a:hover {
    color: #00a0dc;
  }
  .link-02.style01 a:hover::after {
    bottom: 4px;
    transform: scaleX(1);
    background-color: #00a0dc;
  }
}
.link-02.style04 a {
  color: #fff;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-02.style04 a::after {
  border-color: #fff;
}
.link-02.style04 a:before {
  border: 1px solid #fff;
}
@media print, screen and (min-width: 1025px) {
  .link-02.style04 a:hover {
    color: #00a0dc;
  }
  .link-02.style04 a:hover::after {
    border-color: #00a0dc;
    bottom: 4px;
  }
  .link-02.style04 a:hover:before {
    border: 1px solid #00a0dc;
  }
}

.link-ico-pdf-01 {
  vertical-align: middle;
  display: inline-block;
  width: 48px;
  height: 18px;
  background: url(../img/ico-pdf-03.png) left 0 no-repeat;
  margin-left: 5px;
}
@media only screen and (max-width: 767px) {
  .link-ico-pdf-01 {
    position: relative;
    display: inline;
    content: url(../img/ico-pdf-03@2x.png);
    background: none;
  }
}

/* リッチテキスト用スタイル */
a.link-02 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
  position: relative;
  color: #000;
}
a.link-02 .link-02 {
  position: relative;
  display: inline-block;
  color: #000;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
a.link-02::after {
  content: "";
  position: absolute;
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(0);
  background-color: #000;
  transition: all 0.5s ease;
}
a.link-02:before {
  content: "";
  position: absolute;
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(1);
  background-color: #000;
}
@media print, screen and (min-width: 1025px) {
  a.link-02:hover {
    color: #00a0dc;
  }
  a.link-02:hover::after {
    bottom: 0px;
    transform: scaleX(1);
    background-color: #00a0dc;
  }
  a.link-02:hover:before {
    transform: scaleX(0);
    background-color: #00a0dc;
  }
}

.link-02-out {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 20px 0 0;
  position: relative;
  display: inline-block;
  margin: 0 10px;
  color: #000;
  background: url(/common/img/ico_link_02.png) no-repeat right center;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-02-out::after {
  content: "";
  position: absolute;
  bottom: 4px;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(0);
  background-color: #000;
  transition: all 0.5s ease;
}
.link-02-out:before {
  content: "";
  position: absolute;
  bottom: 4px;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(1);
  background-color: #000;
}
@media print, screen and (min-width: 1025px) {
  .link-02-out:hover {
    color: #00a0dc;
    cursor: pointer;
    background: url(/common/img/ico_link_02_on.png) no-repeat right center;
  }
  .link-02-out:hover::after {
    bottom: 4px;
    transform: scaleX(1);
    background-color: #00a0dc;
  }
  .link-02-out:hover:before {
    transform: scaleX(0);
    background-color: #00a0dc;
  }
  .link-02-out:hover a {
    color: #00a0dc;
  }
}
.link-02-out a {
  color: #000;
}
.link-02-out.style01 {
  margin: 0;
}

.link-03-01 {
  position: relative;
  padding-left: 15px;
  line-height: 1.4;
  margin-bottom: 1em;
  margin-top: 0.5em;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-03-01:before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 6px;
}
@media only screen and (max-width: 767px) {
  .link-03-01 {
    padding-right: 15px;
  }
}
@media print, screen and (min-width: 1025px) {
  .link-03-01.style01:hover {
    text-decoration: underline;
  }
  .link-03-01.style02:hover {
    color: #0068af;
  }
  .link-03-01.style02:hover:before {
    border-color: #0068af;
  }
}

.link-03 a {
  position: relative;
  padding-left: 15px;
  line-height: 1.2;
  margin-bottom: 1em;
  color: #000;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-03 a:before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 6px;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 767px) {
  .link-03 a:before {
    top: 2px;
  }
}
.link-03 a.type01 {
  line-height: 1.4;
}
@media print, screen and (min-width: 1025px) {
  .link-03 a:hover {
    color: #0068af;
  }
  .link-03 a:hover:before {
    border-color: #0068af;
  }
  .link-03 a.style02:hover {
    color: #0068af;
  }
  .link-03 a.style02:hover:before {
    border-color: #0068af;
  }
}
.link-03.style01 a {
  color: #fff;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-03.style01 a:before {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  top: 1px;
}
@media print, screen and (min-width: 1025px) {
  .link-03.style01 a:hover {
    color: #00a0dc;
  }
  .link-03.style01 a:hover::after {
    border-color: #00a0dc;
    bottom: 3px;
  }
  .link-03.style01 a:hover:before {
    border-top: 2px solid #0068af;
    border-right: 2px solid #0068af;
  }
}
.link-03.type02 a {
  color: #000;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  display: inline-block;
  margin-left: 5px;
  margin-bottom: 0;
  padding-top: 5px;
  line-height: 1.4;
}
.link-03.type02 a:after {
  background: url(../img/ico-pdf-01@2x.png) center center no-repeat;
  content: " ";
  background-color: inherit;
  background-size: cover;
  width: 40px;
  height: 16px;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  outline: 1px solid #ccc;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  top: -1px;
  left: 10px;
}
.link-03.type02 a:before {
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  top: 5px;
  left: -5px;
}
@media print, screen and (min-width: 1025px) {
  .link-03.type02 a:hover {
    color: #0068af;
  }
  .link-03.type02 a:hover::after {
    background: url(../img/ico-pdf-01@2x_.png) center center no-repeat;
    background-size: cover;
  }
  .link-03.type02 a:hover:before {
    border-top: 2px solid #0068af;
    border-right: 2px solid #0068af;
  }
}
.link-03.type03 a {
  font-weight: bold;
  color: #333;
}
.link-03.type03 a:before {
  border-top: 2px solid #0068af;
  border-right: 2px solid #0068af;
  width: 6px;
  height: 6px;
}
.PC .link-03.type03 a:hover {
  color: #0068af;
}

.link-04 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 0 0 0;
}
.link-04 a {
  color: #000;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  position: relative;
}
.link-04 a:hover {
  color: #0068af;
}
.link-04 a:before {
  content: "";
  display: inline-block;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-04 a:after {
  content: "";
  display: inline-block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-04 a:before {
  width: 30px;
  height: 30px;
  border: 1px solid #000;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  left: -11px;
  top: 7px;
}
.link-04 a:after {
  width: 10px;
  height: 10px;
  border-color: #000;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  left: -5px;
  top: 5px;
  margin-left: 1px;
  position: absolute;
}
@media only screen and (max-width: 767px) {
  .link-04 a {
    padding: 0 0 0 5%;
  }
  .link-04 a:before {
    margin-top: 1.2%;
    top: 2px;
  }
}
@media print, screen and (min-width: 1025px) {
  .link-04 a:hover:before, .link-04 a:hover:after {
    border-color: #0068af;
  }
}
.link-04.style01 a {
  text-align: center;
  color: #0068af;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  position: relative;
  font-size: 13px;
  padding: 0;
}
.link-04.style01 a:before {
  content: "";
  display: inline-block;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  border: 1px solid #0068af;
  width: 15px;
  height: 15px;
  left: -6px;
  top: 4px;
}
.link-04.style01 a::after {
  width: 4px;
  height: 4px;
  left: -3px;
  top: 8px;
  border-color: #0068af;
}
@media only screen and (max-width: 767px) {
  .link-04.style01 a::after {
    left: -4.5%;
    position: absolute;
  }
}
@media print, screen and (min-width: 1025px) {
  .link-04.style01 a:hover {
    color: #000;
  }
  .link-04.style01 a:hover::after {
    border-color: #000;
  }
  .link-04.style01 a:hover:before {
    border: 1px solid #000;
  }
}
.link-04.type01 a span:after {
  background: url(../img/ico-pdf-01@2x.png) center center no-repeat;
  content: " ";
  background-color: inherit;
  background-size: cover;
  width: 40px;
  height: 16px;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  outline: 1px solid #ccc;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  top: -1px;
  left: 6px;
}
@media print, screen and (min-width: 1025px) {
  .link-04.type01 a:hover {
    color: #000;
  }
  .link-04.type01 a:hover span::after {
    background: url(../img/ico-pdf-01@2x_.png) center center no-repeat;
    background-size: cover;
  }
}

a.link-04 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 0 0 0;
  overflow: hidden;
}
a.link-04 img {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
a.link-04 span {
  color: #000;
  text-align: left;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  display: inline-block;
  padding: 17px 0;
  margin-left: 40px;
  position: relative;
}
a.link-04 span:hover {
  color: #0068af;
}
a.link-04 span:before {
  content: "";
  display: inline-block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
a.link-04 span:after {
  content: "";
  display: inline-block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
a.link-04 span:before {
  width: 30px;
  height: 30px;
  border: 1px solid #000;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  left: -40px;
  top: 30px;
  transform: translateY(-50%);
}
a.link-04 span:after {
  width: 8px;
  height: 8px;
  border-color: #000;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  left: -31px;
  top: 30px;
  transform: translateY(-50%) rotate(45deg);
}
@media print, screen and (min-width: 1025px) {
  a.link-04:hover span {
    color: #0068af;
  }
  a.link-04:hover span:before, a.link-04:hover span:after {
    border-color: #0068af;
  }
  a.link-04:hover img {
    -webkit-transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1);
  }
}

.jp .link-04.style01 a:after {
  top: 7px;
}

@media all and (-ms-high-contrast: none) {
  .jp .link-04.style01 a:after {
    top: 7px;
  }
  .jp a.link-04 span {
    padding: 19px 0 0 0;
  }
  .jp .ir a.link-04 span {
    padding: 18px 0 0 0;
  }
}
a .link-05 {
  position: relative;
  padding-left: 15px;
  line-height: 1.2;
  margin-bottom: 30px;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  color: #000;
}
a .link-05:before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 6px;
}
a .link-05.type01 {
  line-height: 1.4;
}
@media print, screen and (min-width: 1025px) {
  a .link-05.style01 {
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  a .link-05.style01:hover {
    text-decoration: underline;
  }
  a .link-05.style02:hover {
    color: #0068af;
  }
  a .link-05.style02:hover:before {
    border-color: #0068af;
  }
}

.link-06 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 0 0 30px;
  line-height: 1.2;
  color: #000;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  display: inline-block;
}
.link-06:before, .link-06:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-06:before {
  width: 16px;
  height: 16px;
  border: 1px solid #000;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  left: 5px;
  top: 1px;
}
.link-06:after {
  width: 5px;
  height: 5px;
  border-color: #000;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 6px;
  left: 9px;
}
@media only screen and (max-width: 767px) {
  .link-06 {
    padding: 0 0 0 35px;
  }
  .link-06:before {
    top: 1px;
    left: 5px;
  }
}
@media print, screen and (min-width: 1025px) {
  .link-06:hover:before, .link-06:hover:after {
    border-color: #0068af;
  }
}
.link-06.type01 {
  color: #fff;
  line-height: 1.2;
}
.link-06.type01:before {
  border: 1px solid #fff;
}
.link-06.type01:after {
  border-color: #fff;
}

.txt-no-links {
  margin-top: 8px;
  line-height: 1.2;
}

@media all and (-ms-high-contrast: none) {
  .jp .link-06 span {
    display: inline-block;
    margin-top: 2px;
  }
}

@media print, screen and (min-width: 1025px) {
  a:hover .link-06 {
    color: #fff;
  }
  a:hover .link-06:before, a:hover .link-06:after {
    border-color: #fff;
  }
  a:hover .link-06.type01 {
    color: #000;
  }
  a:hover .link-06.type01:before, a:hover .link-06.type01:after {
    border-color: #000;
  }
}

/*　ブロックリンク　*/
/* ------------------------------------------------
  ボタン
------------------------------------------------ */
.link-btn-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  width: 90%;
  padding: 5% 0%;
  margin-top: 40px;
  border: 1px solid #fff;
  color: #fff;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 700;
  position: relative;
}
.link-btn-01:before, .link-btn-01:after {
  content: "";
  display: block;
  position: absolute;
}
.link-btn-01:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 30px;
  height: 30px;
  border-radius: 100%;
  border: 2px solid #fff;
  right: 20px;
  top: 50%;
  margin-top: -15px;
}
.link-btn-01:after {
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: 35px;
  margin-top: -4px;
  margin-right: -3px;
}
@media only screen and (max-width: 480px) {
  .link-btn-01 {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .link-btn-01:before {
    right: 5px;
  }
  .link-btn-01:after {
    right: 20px;
  }
}
@media print, screen and (min-width: 768px) {
  .link-btn-01 {
    width: auto;
    padding: 20px 100px;
  }
}
@media print, screen and (min-width: 1025px) {
  .link-btn-01 {
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  .link-btn-01:hover {
    color: #00192a;
    background-color: white;
  }
  .link-btn-01:hover:before, .link-btn-01:hover:after {
    border-color: #00192a;
  }
}
.link-btn-01.style01 {
  color: #0068af;
  border-color: #0068af;
}
.link-btn-01.style01:before, .link-btn-01.style01:after {
  border-color: #0068af;
}
.link-btn-01.style01:hover {
  color: #fff;
  background-color: #0068af;
}
.link-btn-01.style01:hover:before, .link-btn-01.style01:hover:after {
  border-color: #fff;
}

.link-btn-02 a {
  display: inline-block;
  border: 1px solid #fff;
  padding: 12px 0%;
  width: 460px;
  text-align: center;
  font-weight: normal;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  color: #fff;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  font-size: 20px;
  font-size: 2rem;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .link-btn-02 a.wide {
    width: 520px;
  }
}
.link-btn-02 a:before, .link-btn-02 a:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-btn-02 a:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 30px;
  height: 30px;
  border-radius: 100%;
  border: 2px solid #fff;
  right: 20px;
  top: 50%;
  margin-top: -15px;
}
.link-btn-02 a:after {
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: 35px;
  margin-top: -4px;
  margin-right: -3px;
}
@media only screen and (max-width: 767px) {
  .link-btn-02 a {
    width: 100%;
  }
  .link-btn-02 a span {
    display: inline-block;
    width: 60%;
  }
}
@media print, screen and (min-width: 1025px) {
  .PC .link-btn-02 a:hover {
    background-color: #fff;
    color: #00192a;
  }
  .PC .link-btn-02 a:hover:after, .PC .link-btn-02 a:hover:before {
    border-color: #00192a;
  }
}
.link-btn-02.style01 a {
  color: #0068af;
  border-color: #0068af;
}
.link-btn-02.style01 a:before, .link-btn-02.style01 a:after {
  border-color: #0068af;
}
.link-btn-02.style01 a:hover {
  color: #fff;
  background-color: #0068af;
}
.link-btn-02.style01 a:hover:before, .link-btn-02.style01 a:hover:after {
  border-color: #fff;
}
.link-btn-02.style02 {
  margin-right: 10px;
}
@media only screen and (max-width: 767px) {
  .link-btn-02.style02 {
    margin-right: 0;
  }
}
.link-btn-02.style02 a {
  color: #fff;
  background: #0068af;
}
.link-btn-02.style02 a:before, .link-btn-02.style02 a:after {
  border-color: #fff;
}
.link-btn-02.style02 a:hover {
  color: #0068af;
  background: #fff;
  border-color: #0068af;
}
.link-btn-02.style02 a:hover:before, .link-btn-02.style02 a:hover:after {
  border-color: #0068af;
}
.link-btn-02.style02.ptn02 a {
  text-align: left;
  padding-left: 20px;
}
.link-btn-02.style03 {
  position: relative;
}
.link-btn-02.style03 a {
  font-size: 14px;
  font-weight: normal;
  color: #fff;
  text-align: left;
  background: #0068af;
  line-height: 1;
  display: table;
  vertical-align: middle;
  height: 60px;
  width: 100%;
}
.link-btn-02.style03 a:before, .link-btn-02.style03 a:after {
  border-color: #fff;
}
.link-btn-02.style03 a:hover {
  color: #0068af;
  background: #fff;
  border-color: #0068af;
}
.link-btn-02.style03 a:hover:before, .link-btn-02.style03 a:hover:after {
  border-color: #0068af;
}
.link-btn-02.style03 a:hover span:after {
  content: url(../img/ico-pdf-01@2x_.png);
}
.link-btn-02.style03 a span {
  width: 100%;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  height: auto;
  padding-right: 80px;
  padding-left: 25px;
}
@media only screen and (max-width: 767px) {
  .link-btn-02.style03 a span {
    padding-top: 8px;
    padding-bottom: 8px;
  }
}
.link-btn-02.style03 a span:after {
  content: url(../img/ico-pdf-01@2x.png);
  background-color: inherit;
  width: 20px;
  height: 20px;
  display: inline-block;
  vertical-align: middle;
  transform: scale(0.5, 0.5);
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  top: -4px;
  left: 0px;
}
.link-btn-02.style04 {
  width: 100%;
  height: 100px;
  margin-bottom: 10px;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-btn-02.style04 a {
  display: table;
  width: 100%;
  height: 100%;
  font-size: 18px;
  font-size: 1.8rem;
  text-align: left;
  font-weight: bold;
  line-height: 1.2;
  color: #0068af;
  background: #fff;
  border: 1px solid #0068af;
  position: relative;
}
.link-btn-02.style04 a .roll {
  position: relative;
}
.link-btn-02.style04 a .roll img {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-btn-02.style04 a .roll img.off {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 1;
  z-index: 2;
}
.link-btn-02.style04 a:before {
  right: 10px;
}
.link-btn-02.style04 a:after {
  right: 25px;
}
.link-btn-02.style04 a:before, .link-btn-02.style04 a:after {
  border-color: #0068af;
}
@media print, screen and (min-width: 1025px) {
  .link-btn-02.style04 a:hover {
    color: #fff;
    background: #0068af;
    font-weight: normal;
  }
  .link-btn-02.style04 a:hover:before, .link-btn-02.style04 a:hover:after {
    border-color: #fff;
  }
  .link-btn-02.style04 a:hover .roll img.off {
    opacity: 0;
  }
}
.link-btn-02.style04 a .ico-library-02,
.link-btn-02.style04 a .tit-library-01 {
  display: table-cell;
  vertical-align: middle;
}
.link-btn-02.style04 a .ico-library-02 {
  text-align: center;
  width: 25%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .link-btn-02.style04 a .ico-library-02 {
    width: 30%;
  }
}
.link-btn-02.style04 a .ico-library-02-in {
  display: inline-block;
  width: 30px;
}
.link-btn-02.style04 a .ico-library-02-in.horizon {
  width: 40px;
}
.link-btn-02.style04 a .tit-library-01 {
  padding-right: 50px;
}
@media all and (-ms-high-contrast: none) {
  .jp .link-btn-02.style04 a .tit-library-01 {
    padding-top: 10px;
  }
}
.link-btn-02.style05 {
  width: 100%;
  height: 100px;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .link-btn-02.style05 {
    height: auto;
  }
}
@media print, screen and (min-width: 1025px) {
  .link-btn-02.style05:hover {
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
}
.link-btn-02.style05 a {
  font-size: 18px;
  font-size: 1.8rem;
  color: #fff;
  border: 1px solid #0068af;
  text-align: left;
  background: #0068af;
  line-height: 1.2;
  display: table;
  vertical-align: middle;
  height: auto;
  width: 100%;
  height: 100%;
  position: relative;
}
.link-btn-02.style05 a img {
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  top: 29%;
  left: 7px;
  transform: scale(0.5, 0.5);
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .link-btn-02.style05 a img {
    top: 25%;
  }
}
.link-btn-02.style05 a img.on {
  opacity: 0;
}
.link-btn-02.style05 a:before {
  right: 10px;
}
.link-btn-02.style05 a:after {
  right: 25px;
}
.link-btn-02.style05 a:before, .link-btn-02.style05 a:after {
  border-color: #fff;
}
@media print, screen and (min-width: 1025px) {
  .link-btn-02.style05 a:hover {
    color: #0068af;
    background: #fff;
    border-color: #0068af;
    border: 1px solid #0068af;
  }
  .link-btn-02.style05 a:hover:before, .link-btn-02.style05 a:hover:after {
    border-color: #0068af;
  }
  .link-btn-02.style05 a:hover img.no {
    opacity: 0;
  }
  .link-btn-02.style05 a:hover img.on {
    opacity: 1;
  }
}
.link-btn-02.style05 a span {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .link-btn-02.style05 a span {
    height: 96px;
    text-align: center;
    padding: 0;
  }
}
@media only screen and (max-width: 767px) {
  .link-btn-02.style05 a img {
    width: 7%;
    transform: none;
  }
  .link-btn-02.style05 a span {
    text-align: center;
    padding-left: 0;
    height: auto;
    padding: 10px 0;
  }
  .link-btn-02.style05 a span br {
    display: none;
  }
}
@media only screen and (max-width: 480px) {
  .link-btn-02.style05 a img {
    width: 10%;
    transform: none;
  }
}
.link-btn-02.style05.ptn02 a span {
  text-align: left;
  padding-left: 20px;
}
@media only screen and (max-width: 767px) {
  .link-btn-02.style05.ptn02 a span {
    width: 100%;
  }
}
.link-btn-02.style06 {
  width: 100%;
  padding: 0;
  line-height: 1;
  height: 60px;
}
.link-btn-02.style06 a {
  width: 100%;
  height: 60px;
  padding: 0;
  color: #fff;
  background: #00a0dc;
  border: none;
  display: table;
  text-align: center;
}
.link-btn-02.style06 a:before, .link-btn-02.style06 a:after {
  border-color: #fff;
}
.link-btn-02.style06 a:before {
  width: 24px;
  height: 24px;
  border: 1px solid #fff;
  right: 10px;
  margin: auto;
  top: 0;
  bottom: 0;
}
.link-btn-02.style06 a:after {
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  margin: auto;
  top: 0;
  bottom: 0;
  right: 20px;
}
.link-btn-02.style06 a:hover {
  color: #0068af;
  background: #fff;
  border: 1px solid #0068af;
}
.link-btn-02.style06 a:hover:before, .link-btn-02.style06 a:hover:after {
  border-color: #0068af;
}
.link-btn-02.style06 a span {
  font-size: 16px;
  width: 100%;
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}
.link-btn-02.style07 {
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media print, screen and (min-width: 1025px) {
  .link-btn-02.style07:hover {
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
}
.link-btn-02.style07 a {
  font-size: 18px;
  font-size: 1.8rem;
  color: #fff;
  height: 100%;
  text-align: left;
  background: #0068af;
  line-height: 1.2;
  display: table;
  vertical-align: middle;
  width: 100%;
  position: relative;
  border: 1px solid #0068af;
}
.link-btn-02.style07 a img {
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  top: 26%;
  left: 4px;
  transform: scale(0.5, 0.5);
}
@media only screen and (max-width: 767px) {
  .link-btn-02.style07 a img {
    top: 32%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .link-btn-02.style07 a img {
    top: 25%;
    left: -1%;
  }
}
.link-btn-02.style07 a img.on {
  opacity: 0;
}
.link-btn-02.style07 a:before {
  right: 10px;
}
.link-btn-02.style07 a:after {
  right: 25px;
}
.link-btn-02.style07 a:before, .link-btn-02.style07 a:after {
  border-color: #fff;
}
@media print, screen and (min-width: 1025px) {
  .link-btn-02.style07 a:hover {
    color: #0068af;
    background: #fff;
    border-color: #0068af;
  }
  .link-btn-02.style07 a:hover:before, .link-btn-02.style07 a:hover:after {
    border-color: #0068af;
  }
  .link-btn-02.style07 a:hover img.no {
    opacity: 0;
  }
  .link-btn-02.style07 a:hover img.on {
    opacity: 1;
  }
}
.link-btn-02.style07 a span {
  display: table-cell;
  vertical-align: middle;
  padding-left: 75px;
  line-height: 1.4;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .link-btn-02.style07 a span {
    height: 96px;
    text-align: center;
    padding: 0;
  }
}
@media only screen and (max-width: 767px) {
  .link-btn-02.style07 a img {
    width: 9%;
    transform: none;
    left: 2%;
  }
  .link-btn-02.style07 a span {
    text-align: center;
    padding-left: 0;
    height: auto;
    padding: 10px 0;
  }
  .link-btn-02.style07 a span br {
    display: none;
  }
}
@media only screen and (max-width: 480px) {
  .link-btn-02.style07 a img {
    width: 15%;
    transform: none;
  }
}
.link-btn-02.style08 {
  position: relative;
}
.link-btn-02.style08 a {
  font-size: 14px;
  font-weight: normal;
  color: #fff;
  text-align: left;
  background: #0068af;
  padding: 30px 0;
  line-height: 1;
  display: table;
  vertical-align: middle;
  height: 60px;
  width: 100%;
}
.link-btn-02.style08 a:before, .link-btn-02.style08 a:after {
  border-color: #fff;
}
.link-btn-02.style08 a:hover {
  color: #0068af;
  background: #fff;
  border-color: #0068af;
}
.link-btn-02.style08 a:hover:before, .link-btn-02.style08 a:hover:after {
  border-color: #0068af;
}
.link-btn-02.style08 a span {
  width: 100%;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  height: auto;
  padding-right: 80px;
  padding-left: 25px;
}
@media only screen and (max-width: 767px) {
  .link-btn-02.style08 a span {
    padding-top: 8px;
    padding-bottom: 8px;
  }
}
.link-btn-02.style08 a span:after {
  background-color: inherit;
  width: 20px;
  height: 20px;
  display: inline-block;
  vertical-align: middle;
  transform: scale(0.5, 0.5);
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  top: -4px;
  left: 0px;
}
.link-btn-02.style09 {
  width: 100%;
}
.link-btn-02.style09 a {
  width: 100%;
  color: #0068af;
  border-color: #0068af;
}
.link-btn-02.style09 a span {
  width: 66%;
  display: inline-block;
}
.link-btn-02.style09 a:before, .link-btn-02.style09 a:after {
  border-color: #0068af;
}
@media print, screen and (min-width: 1025px) {
  .link-btn-02.style09 a:hover {
    color: #fff;
    background-color: #0068af;
  }
  .link-btn-02.style09 a:hover:before, .link-btn-02.style09 a:hover:after {
    border-color: #fff;
  }
}

@media all and (-ms-high-contrast: none) {
  .jp .link-btn-02 a {
    padding: 20px 0% 10px 0%;
  }
  .jp .link-btn-02.style05 a span {
    padding-top: 9px;
  }
}
.link-btn-03 a {
  display: inline-block;
  border: 1px solid #fff;
  padding: 5px 28px 5px 38px;
  line-height: 1.2;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  color: #fff;
  position: relative;
  word-wrap: break-word;
}
.link-btn-03 a:before, .link-btn-03 a:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-btn-03 a:after {
  width: 7px;
  height: 7px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  left: 20px;
  margin-top: -4px;
  margin-left: -3px;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .link-btn-03 a:after {
    left: 14px;
  }
}
@media only screen and (max-width: 767px) {
  .link-btn-03 a {
    width: 100%;
    text-align: center;
  }
  .link-btn-03 a span {
    display: inline-block;
    width: 96%;
  }
}
.PC .link-btn-03 a:hover {
  background-color: #fff;
  color: #00192a;
}
.PC .link-btn-03 a:hover:after {
  border-color: #00192a;
}
.link-btn-03.style01 a {
  color: #0068af;
  border-color: #0068af;
  line-height: 1.2;
}
.link-btn-03.style01 a:before, .link-btn-03.style01 a:after {
  border-color: #0068af;
}
.link-btn-03.style01 a:hover {
  color: #fff;
  background-color: #0068af;
}
.link-btn-03.style01 a:hover:before, .link-btn-03.style01 a:hover:after {
  border-color: #fff;
}
.link-btn-03.style02 a {
  color: #fff;
  background: #0068af;
  margin: 0 10px 10px 0;
}
.link-btn-03.style02 a:before, .link-btn-03.style02 a:after {
  border-color: #fff;
}
.link-btn-03.style02 a:hover {
  color: #0068af;
  background: #fff;
  border-color: #0068af;
}
.link-btn-03.style02 a:hover:before, .link-btn-03.style02 a:hover:after {
  border-color: #0068af;
}
.link-btn-03.style03 {
  font-size: 14px;
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .link-btn-03.style03 {
    width: 100%;
  }
}
.link-btn-03.style03 a {
  padding: 5px 0 5px 0;
  width: 380px;
  text-align: center;
  color: #0068af;
  border-color: #0068af;
}
@media only screen and (max-width: 767px) {
  .link-btn-03.style03 a {
    width: 100%;
  }
}
.link-btn-03.style03 a:before, .link-btn-03.style03 a:after {
  border-color: #0068af;
}
.link-btn-03.style03 a:hover {
  color: #fff;
  background-color: #0068af;
}
.link-btn-03.style03 a:hover:before, .link-btn-03.style03 a:hover:after {
  border-color: #fff;
}
.link-btn-03.style04 a {
  padding: 3px 0;
  text-align: center;
  color: #0068af;
  width: 100%;
  border-color: #0068af;
  word-wrap: break-word;
}
@media only screen and (max-width: 767px) {
  .link-btn-03.style04 a {
    padding: 15px 0;
  }
}
.link-btn-03.style04 a:before, .link-btn-03.style04 a:after {
  border-color: #0068af;
}
@media print, screen and (min-width: 1025px) {
  .link-btn-03.style04 a:hover {
    color: #fff;
    background-color: #0068af;
  }
  .link-btn-03.style04 a:hover:before, .link-btn-03.style04 a:hover:after {
    border-color: #fff;
  }
}
.link-btn-03.style04 a span {
  width: 72%;
  display: inline-block;
}
.link-btn-03.style05 a {
  color: #fff;
  margin: 0 5px 5px 0;
  background: #0068af;
}
.link-btn-03.style05 a:before, .link-btn-03.style05 a:after {
  border-color: #fff;
}
.link-btn-03.style05 a:hover {
  color: #0068af;
  background: #fff;
  border-color: #0068af;
  cursor: pointer;
}
.link-btn-03.style05 a:hover:before, .link-btn-03.style05 a:hover:after {
  border-color: #0068af;
}
.link-btn-03.style06 a {
  padding: 3px 0 3px 25px;
  text-align: left;
  color: #0068af;
  width: 100%;
  border-color: #0068af;
  word-wrap: break-word;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .link-btn-03.style06 a {
    padding: 15px 0;
    text-align: center;
  }
}
.link-btn-03.style06 a:before, .link-btn-03.style06 a:after {
  border-color: #0068af;
}
@media print, screen and (min-width: 1025px) {
  .link-btn-03.style06 a:hover {
    color: #fff;
    background-color: #0068af;
  }
  .link-btn-03.style06 a:hover:before, .link-btn-03.style06 a:hover:after {
    border-color: #fff;
  }
}
.link-btn-03.style06 a span {
  width: 72%;
  display: inline-block;
}
.link-btn-03.out {
  position: relative;
}
.link-btn-03.out a {
  padding: 5px 50px 5px 50px;
}
.link-btn-03.out a span:after {
  content: url(/common/img/ico_link_03.png);
  margin: 0px;
  position: absolute;
  top: 5px;
  right: 25px;
}
.link-btn-03.out a:hover span:after {
  content: url(/common/img/ico_link_03_on.png);
  margin: 0px;
  position: absolute;
  top: 5px;
  right: 25px;
}

@media all and (-ms-high-contrast: none) {
  .jp .link-btn-03.style01 a {
    padding: 8px 30px 2px 40px;
  }
}
@media all and (-ms-high-contrast: none) {
  .jp .link-btn-03 a {
    padding: 9px 28px 5px 38px;
  }
  .jp .link-btn-03.style02 a span {
    padding-top: 6px;
  }
  .jp .link-btn-03.style04 a span {
    padding-top: 6px;
  }
  .jp .link-btn-03.style05 a {
    padding: 10px 10px 5px 35px;
  }
}
.link-btn-04 a {
  display: inline-block;
  border: 1px solid #fff;
  padding: 9px 40px 8px 50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  color: #fff;
  position: relative;
}
.link-btn-04 a:before, .link-btn-04 a:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-btn-04 a:before {
  width: 8px;
  height: 8px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  left: 25px;
  margin-top: -4px;
  margin-left: -3px;
}
@media only screen and (max-width: 767px) {
  .link-btn-04 a {
    width: 100%;
    text-align: center;
  }
  .link-btn-04 a span {
    display: inline-block;
    width: 96%;
  }
}
.PC .link-btn-04 a:hover {
  background-color: #fff;
  color: #00192a;
}
.PC .link-btn-04 a:hover:after {
  border-color: #00192a;
}
.link-btn-04.style01 a {
  width: 100%;
  text-align: center;
  color: #fff;
  border-color: #0068af;
  background: #0068af;
}
.link-btn-04.style01 a:before, .link-btn-04.style01 a:after {
  border-color: #fff;
}
.link-btn-04.style01 a:after {
  content: "";
  display: inline-block;
  background: url(/ir/img/xico-rss.png);
  width: 12px;
  height: 12px;
  position: relative;
  left: 10px;
}
.link-btn-04.style01 a:hover {
  color: #0068af;
  background-color: #fff;
}
.link-btn-04.style01 a:hover:before {
  border-color: #0068af;
}
.link-btn-04.style01 a:hover:after {
  background: url(/ir/img/xico-rss_.png);
}

.link-btn-05 {
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-btn-05 a {
  color: #00a0dc;
  font-weight: bold;
  height: 130px;
  text-align: left;
  background: #fff;
  line-height: 1.2;
  display: table;
  vertical-align: middle;
  width: 100%;
  position: relative;
  border: 1px solid #00a0dc;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  font-size: 18px;
  font-size: 1.8rem;
}
.link-btn-05 a:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-btn-05 a:after {
  width: 7px;
  height: 7px;
  border-top: 2px solid #00a0dc;
  border-right: 2px solid #00a0dc;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 0;
  bottom: 0;
  margin: auto;
  right: 24px;
}
@media only screen and (max-width: 767px) {
  .link-btn-05 a {
    width: 100%;
  }
  .link-btn-05 a span {
    display: inline-block;
    width: 100%;
    text-align: left;
  }
}
@media print, screen and (min-width: 1025px) {
  .PC .link-btn-05 a:hover {
    background-color: #fff;
    color: #00192a;
  }
  .PC .link-btn-05 a:hover:after, .PC .link-btn-05 a:hover:before {
    border-color: #00192a;
  }
}
.link-btn-05.style01 {
  margin-top: 13px;
}
.link-btn-05.style01 a .ir_top_icon01,
.link-btn-05.style01 a .ir_top_icon02 {
  display: inline-block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  margin: auto;
  top: 41px;
  bottom: 0;
  left: 8%;
}
@media only screen and (max-width: 767px) {
  .link-btn-05.style01 a .ir_top_icon01,
.link-btn-05.style01 a .ir_top_icon02 {
    top: 32%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .link-btn-05.style01 a .ir_top_icon01,
.link-btn-05.style01 a .ir_top_icon02 {
    top: 30%;
    left: -1%;
  }
}
.link-btn-05.style01 a .ir_top_icon01 .on,
.link-btn-05.style01 a .ir_top_icon02 .on {
  opacity: 0;
}
.link-btn-05.style01 a .ir_top_icon01 img {
  width: 44px;
  height: 42px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .link-btn-05.style01 a .ir_top_icon01 img {
    width: 54px;
    height: 52px;
  }
}
.link-btn-05.style01 a .ir_top_icon02 {
  top: 45px;
}
.link-btn-05.style01 a .ir_top_icon02 img {
  width: 46px;
  height: 33px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .link-btn-05.style01 a .ir_top_icon02 img {
    width: 54px;
    height: 39px;
  }
}
.link-btn-05.style01 a:before, .link-btn-05.style01 a:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-btn-05.style01 a:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media print, screen and (min-width: 1025px) {
  .link-btn-05.style01 a:hover {
    color: #fff;
    background: #0068af;
    border-color: #0068af;
  }
  .link-btn-05.style01 a:hover:before, .link-btn-05.style01 a:hover:after {
    border-color: #fff;
  }
  .link-btn-05.style01 a:hover .ir_top_icon01 .no, .link-btn-05.style01 a:hover .ir_top_icon02 .no {
    opacity: 0;
  }
  .link-btn-05.style01 a:hover .ir_top_icon01 .on, .link-btn-05.style01 a:hover .ir_top_icon02 .on {
    position: absolute;
    opacity: 1;
    margin-left: -44px;
    z-index: 1;
  }
}
.link-btn-05.style01 a .ir_top_link_txt {
  display: table-cell;
  vertical-align: middle;
  padding-left: 26%;
  line-height: 1.4;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .link-btn-05.style01 a .ir_top_link_txt {
    height: 96px;
    text-align: left;
    padding-left: 15%;
  }
}
@media only screen and (max-width: 767px) {
  .link-btn-05.style01 a img {
    width: 9%;
    transform: none;
    left: 2%;
  }
  .link-btn-05.style01 a .ir_top_link_txt {
    text-align: center;
    padding-left: 0;
    height: auto;
    padding: 10px 0;
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .link-btn-05.style01 a .ir_top_link_txt {
    text-align: center;
    padding-left: 16% !important;
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .link-btn-05.style01 a .ir_top_link_txt:nth-child(2) {
    text-align: center;
    padding-left: 10% !important;
  }
}
@media only screen and (max-width: 767px) {
  .link-btn-05.style01 a .ir_top_link_txt br {
    display: none;
  }
}
@media only screen and (max-width: 480px) {
  .link-btn-05.style01 a img {
    width: 15%;
    transform: none;
  }
}

.link-hov {
  transition: opacity 0.25s ease-out;
}
.link-hov:hover {
  opacity: 0.7;
}

/*
# リストスタイル .ulBasic01

ここにコメントとか説明入れたりすると便利！

標準の箇条書きリストスタイル`.ulBasic01`

```
<ul class="ulBasic01">
  <li>箇条書きリスト</li>
  <li>箇条書きリスト</li>
  <li>箇条書きリスト</li>
</ul>
```
*/
.ulBasic01 li {
  padding-left: 20px;
  position: relative;
  text-align: left;
  word-wrap: break-word;
}
.ulBasic01 li:before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  background-color: #0068af;
  position: absolute;
  top: 11px;
  left: 2px;
  border-radius: 100%;
}

/*
# リストスタイル .ulList01

「/」で区切る並列リスト`.ulList01`

```
<ul class="ulList01">
  <li>箇条書きリスト</li>
  <li>箇条書きリスト</li>
  <li>箇条書きリスト</li>
</ul>
```
*/
.ulList01 {
  text-align: center;
}
.ulList01.left {
  text-align: left;
}
.ulList01 li {
  white-space: nowrap;
  display: inline-block;
  text-align: left;
  word-wrap: break-word;
  padding: 5px 10px 0 0;
}
@media only screen and (max-width: 480px) {
  .ulList01 li {
    white-space: normal;
    padding: 10px 0 0;
    display: block;
  }
}
.ulList01 li:after {
  content: "/";
  padding-left: 10px;
}
@media only screen and (max-width: 480px) {
  .ulList01 li:after {
    display: none;
  }
}
.ulList01 li:last-child:after {
  display: none;
}

.ulList02 li {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0% 0 1% 25px;
  position: relative;
  text-align: left;
  word-wrap: break-word;
  line-height: 1.3;
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  .ulList02 li {
    padding: 3% 0 3% 10%;
  }
}
.ulList02 li:before {
  position: absolute;
  top: 1.4em;
  left: 0;
  content: "";
  display: inline-block;
  width: 0;
  height: 2px;
  background: #34BBF3;
  transition: 2s;
}
.ulList02 a {
  color: #000;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  width: 100%;
}
.ulList02 a:hover {
  color: #0068af;
}
.ulList02 a:before, .ulList02 a:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.ulList02 a:before {
  width: 16px;
  height: 16px;
  border: 1px solid #000;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  left: 0;
  top: 2px;
}
.ulList02 a:after {
  width: 5px;
  height: 5px;
  border-color: #000;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 7px;
  left: 4px;
}
@media only screen and (max-width: 767px) {
  .ulList02 a:before {
    top: 11px;
  }
  .ulList02 a:after {
    top: 16px;
  }
}
.PC .ulList02 a:hover:before, .PC .ulList02 a:hover:after {
  border-color: #0068af;
}
.ulList02.type01 li {
  display: inline-block;
  margin-right: 45px;
}
.ulList02.type01 li a:before {
  top: 44%;
}
.ulList02.type01 li a:after {
  top: 44%;
}

.ulList03 li {
  padding: 5px 0 5px 20px;
  line-height: 1.3;
  position: relative;
}
.ulList03 li:before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 5px;
  left: 0;
  margin-top: 6px;
}
@media all and (-ms-high-contrast: none) {
  .jp .ulList03 li:before {
    margin-top: 4px;
  }
}
.PC .ulList03 li:hover:before {
  border-color: #0068af;
}
.PC .ulList03 li:hover a {
  color: #0068af;
  text-decoration: underline;
}
.ulList03 a {
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
}
.ulList03.style01 li {
  padding: 10px 0 10px 20px;
  border-bottom: 1px dotted #aeaeae;
}
.ulList03.style01 li:before {
  top: 10px;
}
@media all and (-ms-high-contrast: none) {
  .jp .ulList03.style01 li {
    padding-bottom: 5px;
  }
}

.ulCaution01 {
  text-align: left;
  word-wrap: break-word;
}
.ulCaution01.small {
  font-size: 14px;
  font-size: 1.4rem;
}
.ulCaution01.small li {
  font-size: 14px;
  font-size: 1.4rem;
}
.ulCaution01.small.type02 li {
  text-indent: -16px;
  padding-left: 26px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.ulCaution01.small.type02 li:before {
  content: "*";
  display: inline-block;
  position: relative;
  left: 8px;
  top: 0;
  margin-right: 1px;
}
.ulCaution01.type01 {
  margin-top: 10px;
}
.ulCaution01 li {
  text-align: left;
  text-indent: -6px;
  padding-left: 13px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.ulCaution01 li:before {
  content: "*";
  display: inline-block;
  position: relative;
  left: 0;
  top: 0;
  margin-right: 3px;
}

.jp .ulCaution01.small {
  font-size: 14px;
  font-size: 1.4rem;
}
.jp .ulCaution01.small.type02 li {
  text-indent: -21px;
  padding-left: 31px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.jp .ulCaution01.small.type02 li:before {
  content: "*";
  display: inline-block;
  position: relative;
  left: 11px;
  top: 0;
  margin-right: 0px;
}

.list-style-01 li {
  padding-left: 10px;
  position: relative;
}
.list-style-01 li:before, .list-style-01 li:after {
  content: "";
  display: block;
  position: absolute;
}
.list-style-01 li:after {
  width: 3px;
  height: 3px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  left: 0;
  margin-top: -3px;
}

.list-style-02 li {
  display: inline;
  padding-left: 10px;
  padding-right: 10px;
  position: relative;
}
.list-style-02 li:before {
  content: "";
  display: block;
  position: absolute;
}
.list-style-02 li:before {
  width: 3px;
  height: 3px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 8px;
  left: 0;
}

/*////////////////////////////////////////////////////

	汎用リスト

////////////////////////////////////////////////////*/
/* ------------------------------------------------
	ol li
------------------------------------------------ */
.olBasic01 {
  margin-bottom: 10px;
}
.olBasic01 li {
  list-style: decimal;
  margin-left: 1.6em;
  padding-left: 0em;
  line-height: 1.8;
  margin-bottom: 0.5em;
}
.olBasic01 li:nth-child(-n+9) {
  margin-left: 21px;
  padding-left: 0.3em;
}
.olBasic01.type-a li {
  list-style-type: lower-alpha;
}

/*////////////////////////////////////////////////////

	汎用リスト

////////////////////////////////////////////////////*/
/* ------------------------------------------------
	記述リスト dl dt dd
------------------------------------------------ */
.dlBasic01 dt, .dlBasic01 dd {
  padding: 10px 0;
}
.dlBasic01 dt:first-child, .dlBasic01 dt:nth-child(2), .dlBasic01 dd:first-child, .dlBasic01 dd:nth-child(2) {
  padding-top: 0;
}
.dlBasic01 dt:last-child, .dlBasic01 dt:nth-last-child(2), .dlBasic01 dd:last-child, .dlBasic01 dd:nth-last-child(2) {
  padding-bottom: 0;
}
.dlBasic01 dt {
  clear: both;
  float: left;
  width: 140px;
  line-height: 1.4;
  font-size: 18px;
  font-size: 1.8rem;
  color: #333;
}
@media only screen and (max-width: 480px) {
  .dlBasic01 dt {
    float: none;
    width: auto;
  }
}
.dlBasic01 dd {
  margin-left: 140px;
  padding-left: 10px;
  position: relative;
}
@media only screen and (max-width: 480px) {
  .dlBasic01 dd {
    margin-left: 0;
    padding-left: 2rem;
  }
}
.dlBasic01 dd:before {
  border-width: 3px 0 3px 4px;
  border-color: transparent transparent transparent #666;
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  position: absolute;
  top: 18px;
  left: 0;
}
@media only screen and (max-width: 480px) {
  .dlBasic01 dd:before {
    left: 10px;
  }
}
.dlBasic01 dd:nth-child(2):before {
  top: 8px;
}

.dlInquiry01 {
  display: table;
  width: 100%;
  border: 1px solid #eaeaea;
  background-color: #000;
}
@media only screen and (max-width: 767px) {
  .dlInquiry01 {
    display: block;
  }
}
.dlInquiry01 > dt, .dlInquiry01 > dd {
  display: table-cell;
  vertical-align: middle;
  padding: 10px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .dlInquiry01 > dt, .dlInquiry01 > dd {
    display: block;
  }
}
.dlInquiry01 > dd {
  border-left: 1px solid #eaeaea;
}
@media only screen and (max-width: 767px) {
  .dlInquiry01 > dd {
    border-left: none;
  }
}
/*////////////////////////////////////////////////////

	汎用テーブル
		※入れ子にした際に孫のテーブルにスタイルが引き継がれないよう、
		　　&>を使用したスタイル設定を推奨

////////////////////////////////////////////////////*/
/* ------------------------------------------------
	テーブル
------------------------------------------------ */
/*ベーシックなテーブルスタイル*/
.tb_basic02 {
  width: 100%;
}
.tb_basic02 tr:first-child th {
  border-top: 2px solid #0068af;
}
.tb_basic02 tr:last-child th {
  border-bottom: 2px solid #0068af;
}
.tb_basic02 tr:first-child td {
  border-top: 2px solid #eaeaea;
}
.tb_basic02 tr:last-child td {
  border-bottom: 2px solid #eaeaea;
}
.tb_basic02 th {
  padding: 16px 20px;
  border-bottom: 1px dashed #ccc;
  text-align: left;
  vertical-align: middle;
  line-height: 1.3;
}
.tb_basic02 td {
  padding: 16px 15px 16px 25px;
  border-bottom: 1px dashed #ccc;
  vertical-align: middle;
  line-height: 1.7;
  font-size: 14px;
}
@media only screen and (max-width: 767px) {
  .tb_basic02 tr:first-child th {
    border-top: 2px solid #0068af;
    width: 100% !important;
  }
  .tb_basic02 tr:last-child th {
    border-bottom: none;
  }
  .tb_basic02 tr th {
    text-align: left;
    border-top: 2px solid #ccc;
    display: block;
    width: 100%;
    border-bottom: none;
    padding: 20px 0 20px 4%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
  .tb_basic02 tr:first-child td {
    border-top: 1px dashed #eaeaea;
  }
  .tb_basic02 tr:last-child td {
    border-bottom: 2px solid #0068af;
  }
  .tb_basic02 tr td {
    border-top: 1px dashed #eaeaea;
    display: block;
    width: 96%;
    border-bottom: none;
    padding: 20px 0 20px 4%;
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .tb_basic02 tr td {
    width: 96%;
  }
}
.tb_basic02.type01 td {
  padding: 0 15px 20px 10px;
  border: none;
}
.tb_basic02.type01 tr {
  border: none;
}
.tb_basic02.type01 tr:first-child td {
  border-top: none;
}
.tb_basic02.type01 tr:last-child td {
  border-bottom: none;
}
.tb_basic02.type02 td {
  padding: 30px 15px 10px 10px;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.tb_basic02.type02 tr {
  border: none;
}
.tb_basic02.type02 tr:first-child td {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.tb_basic02.type03 td {
  padding: 0 0px 40px 0px;
  border: none;
}
.tb_basic02.type03 tr {
  border: none;
}
.tb_basic02.type03 tr:first-child td {
  border-top: none;
}
.tb_basic02.type03 tr:last-child td {
  border-bottom: none;
}
.tb_basic02.type04 td {
  padding: 0 15px 30px 10px;
  border-top: none;
  border-bottom: 1px solid #ccc;
}
.tb_basic02.type04 tr {
  border: none;
}
.tb_basic02.type04 tr:first-child td {
  border-top: none;
  border-bottom: 1px solid #ccc;
}
.tb_basic02.type05 th {
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .tb_basic02 .v-top {
    vertical-align: top;
  }
}

.tb_basic02_rich {
  width: 100%;
}
.tb_basic02_rich tr:first-child th {
  border-top: 2px solid #0068af;
}
.tb_basic02_rich tr:last-child th {
  border-bottom: 2px solid #0068af;
}
.tb_basic02_rich tr:first-child td {
  border-top: 2px solid #eaeaea;
}
.tb_basic02_rich tr:last-child td {
  border-bottom: 2px solid #eaeaea;
}
.tb_basic02_rich th {
  padding: 16px 20px;
  border-bottom: 1px dashed #ccc;
  text-align: left;
  vertical-align: middle;
  line-height: 1.3;
}
.tb_basic02_rich td {
  padding: 16px 15px 16px 25px;
  border-bottom: 1px dashed #ccc;
  vertical-align: middle;
  line-height: 1.7;
  font-size: 14px;
}
.tb_basic02_rich.type01 td {
  padding: 0 15px 20px 10px;
  border: none;
}
.tb_basic02_rich.type01 tr {
  border: none;
}
.tb_basic02_rich.type01 tr:first-child td {
  border-top: none;
}
.tb_basic02_rich.type01 tr:last-child td {
  border-bottom: none;
}
.tb_basic02_rich.type02 td {
  padding: 30px 15px 10px 10px;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.tb_basic02_rich.type02 tr {
  border: none;
}
.tb_basic02_rich.type02 tr:first-child td {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.tb_basic02_rich.type03 td {
  padding: 0 0px 40px 0px;
  border: none;
}
.tb_basic02_rich.type03 tr {
  border: none;
}
.tb_basic02_rich.type03 tr:first-child td {
  border-top: none;
}
.tb_basic02_rich.type03 tr:last-child td {
  border-bottom: none;
}
.tb_basic02_rich.type04 td {
  padding: 0 15px 30px 10px;
  border-top: none;
  border-bottom: 1px solid #ccc;
}
.tb_basic02_rich.type04 tr {
  border: none;
}
.tb_basic02_rich.type04 tr:first-child td {
  border-top: none;
  border-bottom: 1px solid #ccc;
}
.tb_basic02_rich.type05 th {
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .tb_basic02_rich .v-top {
    vertical-align: top;
  }
}

.tb_basic03 {
  width: 100%;
}
.tb_basic03 tr:first-child th {
  border-top: 1px solid #eaeaea;
}
@media only screen and (max-width: 767px) {
  .tb_basic03 tr:first-child th {
    border-top: none;
  }
}
.tb_basic03 tr:last-child th {
  border-bottom: 1px solid #eaeaea;
}
@media only screen and (max-width: 767px) {
  .tb_basic03 tr:last-child th {
    border-bottom: none;
  }
}
.tb_basic03 th {
  padding: 12px 20px;
  background: #ebf2f8;
  border-bottom: 1px solid #fff;
  border-top: 1px solid #fff;
  text-align: left;
  vertical-align: middle;
}
.tb_basic03 td {
  padding: 12px 20px 12px 20px;
  border-top: 1px solid #eaeaea;
  border-bottom: 1px solid #eaeaea;
  vertical-align: middle;
}
@media only screen and (max-width: 767px) {
  .tb_basic03 {
    display: block;
  }
  .tb_basic03 tbody, .tb_basic03 thead, .tb_basic03 tr {
    display: block;
  }
  .tb_basic03 th {
    text-align: left;
    display: block;
    width: 100%;
    border-bottom: none;
    border-top: none;
    padding: 20px 0 20px 4%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
  .tb_basic03 td {
    text-align: left;
    display: block;
    width: 96%;
    border-bottom: none;
    border-top: none;
    padding: 20px 0 20px 4%;
  }
  .tb_basic03 td:first-child {
    border-top: 1px solid #eaeaea;
  }
  .tb_basic03 td + td {
    padding-top: 0;
  }
  .tb_basic03 tr:last-child {
    border-bottom: 1px solid #d6d6d6;
  }
}
.tb_basic03.type01 th {
  width: 13%;
  padding: 12px 20px;
  border-bottom: 1px solid #fff;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .tb_basic03.type01 th {
    width: 86%;
    border-bottom: none;
    padding: 3px 20px;
  }
}
@media only screen and (max-width: 767px) {
  .tb_basic03.type01 td {
    padding: 6px 4% 15px 4%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
}

.tb_basic03_rich {
  width: 100%;
}
.tb_basic03_rich tr:first-child th {
  border-top: 1px solid #ebf2f8;
}
.tb_basic03_rich tr:last-child th {
  border-bottom: 1px solid #ebf2f8;
}
.tb_basic03_rich tr:first-child td {
  border-top: 1px solid #ebf2f8;
}
.tb_basic03_rich tr:last-child td {
  border-bottom: 1px solid #ebf2f8;
}
.tb_basic03_rich th {
  padding: 12px 20px;
  background: #ebf2f8;
  border-bottom: 1px solid #fff;
  text-align: left;
  vertical-align: middle;
}
.tb_basic03_rich td {
  padding: 12px 20px 12px 20px;
  border-bottom: 1px solid #eaeaea;
  vertical-align: middle;
}
.tb_basic03_rich.type01 th {
  width: 13%;
  padding: 12px 20px;
  border-bottom: 1px solid #fff;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
}

.tb_basic04 {
  width: 100%;
  border: 1px solid #eaeaea;
}
.tb_basic04 th {
  padding: 12px;
  background: #ebf2f8;
  border-bottom: 1px solid #fff;
  vertical-align: middle;
  border-right: 1px solid #fff;
  line-height: 1.6;
}
.tb_basic04 th:last-child {
  border-right: none;
}
.tb_basic04 td {
  padding: 16px 20px;
  border-bottom: 1px solid #eaeaea;
  vertical-align: middle;
  text-align: center;
  font-size: 14px;
  line-height: 1.6;
}
.tb_basic04.type01 tr:first-child td {
  border-top: 1px solid #eaeaea;
}
.tb_basic04.type01 tr:last-child td:first-child {
  border-bottom: 1px solid #eaeaea;
}
.tb_basic04.type01 td:first-child {
  background: #fbfbfb;
}
.tb_basic04.type01 td:first-child:last-child {
  border-bottom: 1px solid #eaeaea;
}
.tb_basic04.type01 th {
  text-align: center;
}
.tb_basic04.type01 td {
  text-align: center;
  border-right: 1px solid #eaeaea;
}
.tb_basic04.type01 td.ul {
  vertical-align: top;
}
@media print, screen and (min-width: 1025px) {
  .tb_basic04.type01 .v-top {
    vertical-align: top;
  }
}
.tb_basic04.type02 th {
  text-align: center;
}
.tb_basic04.type02 td {
  text-align: left;
}
.tb_basic04 tr:nth-child(n+2) th {
  display: none;
}
@media only screen and (max-width: 767px) {
  .tb_basic04 tr:nth-child(n+2) th {
    display: block;
  }
  .tb_basic04 th {
    text-align: left;
    display: block;
    width: 96%;
    border-bottom: none;
    padding: 20px 0 20px 4%;
  }
  .tb_basic04 td {
    text-align: left;
    display: block;
    width: 96%;
    border-bottom: none;
    padding: 20px 0 20px 4%;
  }
  .tb_basic04 tr {
    display: block;
    border-bottom: 1px solid #eaeaea;
  }
  .tb_basic04 tr:last-child {
    border-bottom: none;
  }
  .tb_basic04 tr:last-child td {
    border-bottom: 1px solid #eaeaea;
  }
  .tb_basic04 tr:last-child td:last-child {
    border-bottom: none;
  }
}
.tb_basic04.type03 tr:nth-child(n+2) td:first-child {
  background: #fbfbfb;
  border-bottom: 1px solid #fff;
}
.tb_basic04.type03 tr:nth-child(n+2) td:first-child:last-child {
  border-bottom: 1px solid #eaeaea;
}
.tb_basic04.type03 th {
  text-align: center;
}
.tb_basic04.type03 td {
  text-align: center;
}
.tb_basic04.type04 {
  width: 80%;
  margin: 0 auto;
}

.tb_basic05 {
  width: 100%;
}
.tb_basic05 th {
  width: 50%;
  padding: 20px;
  background: #ebf2f8;
  border-bottom: 1px solid #fff;
  vertical-align: middle;
  border-right: 1px solid #fff;
  text-align: center;
  line-height: 1.6;
}
.tb_basic05 th:last-child {
  border-right: none;
}
.tb_basic05 td {
  padding: 12px;
  border-bottom: 1px solid #eaeaea;
  vertical-align: middle;
  text-align: center;
  font-size: 14px;
  line-height: 1.6;
}
.tb_basic05.type01 th:first-child {
  width: 30%;
}
.tb_basic05.type01 tr:nth-child(n+2) th {
  font-weight: normal;
  background: #fbfbfb;
  font-size: 14px;
}
@media only screen and (max-width: 767px) {
  .tb_basic05 th {
    width: 50%;
  }
}
@media print, screen and (min-width: 1025px) {
  .tb_basic05 .v-top {
    vertical-align: top;
  }
}

/*リッチテキスト用のテーブル*/
.tb_basic04_rich {
  width: 100%;
  border: 1px solid #eaeaea;
}
.tb_basic04_rich th {
  padding: 12px;
  background: #ebf2f8;
  border-bottom: 1px solid #fff;
  vertical-align: middle;
  border-right: 1px solid #fff;
  line-height: 1.6;
}
.tb_basic04_rich th:last-child {
  border-right: none;
}
.tb_basic04_rich td {
  padding: 16px 20px;
  border-bottom: 1px solid #eaeaea;
  vertical-align: middle;
  text-align: center;
  font-size: 14px;
  line-height: 1.6;
}
.tb_basic04_rich.type01 tr:first-child td {
  border-top: 1px solid #eaeaea;
}
.tb_basic04_rich.type01 tr:last-child td:first-child {
  border-bottom: 1px solid #eaeaea;
}
.tb_basic04_rich.type01 td:first-child {
  background: #fbfbfb;
  border-bottom: 1px solid #fff;
}
.tb_basic04_rich.type01 td:first-child:last-child {
  border-bottom: 1px solid #eaeaea;
}
.tb_basic04_rich.type01 th {
  text-align: center;
}
.tb_basic04_rich.type01 td {
  text-align: center;
  border-right: 1px solid #eaeaea;
}
.tb_basic04_rich.type01 td.ul {
  vertical-align: top;
}
@media print, screen and (min-width: 1025px) {
  .tb_basic04_rich.type01 .v-top {
    vertical-align: top;
  }
}
.tb_basic04_rich.type02 th {
  text-align: center;
}
.tb_basic04_rich.type02 td {
  text-align: left;
}
.tb_basic04_rich tr:nth-child(n+2) th {
  display: none;
}
.tb_basic04_rich.type03 tr:nth-child(n+2) td:first-child {
  background: #fbfbfb;
  border-bottom: 1px solid #fff;
}
.tb_basic04_rich.type03 tr:nth-child(n+2) td:first-child:last-child {
  border-bottom: 1px solid #eaeaea;
}
.tb_basic04_rich.type03 th {
  text-align: center;
}
.tb_basic04_rich.type03 td {
  text-align: center;
}
.tb_basic04_rich.type04 {
  width: 80%;
  margin: 0 auto;
}

/*リッチテキストに追加されたTableのスマホ対応*/
@media only screen and (max-width: 767px) {
  .table-scroll {
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    margin: 8px 0;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -webkit-overflow-scrolling: touch;
  }
  .table-scroll table {
    border-collapse: collapse;
  }
  .table-scroll th, .table-scroll td {
    white-space: nowrap;
  }

  .sp_scroll {
    background: url(/service/img/scroll1_icon.jpg) no-repeat left top;
    display: inline-block;
    width: 100%;
    padding: 3px 5px 3px 50px;
    font-size: 13px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    background-size: contain;
  }
}
@media print, screen and (min-width: 1025px) {
  .sp_scroll {
    display: none;
  }
}
/*装飾のないシンプルなテーブル*/
.tb_simple01 {
  width: auto !important;
  border: none !important;
  background: none !important;
}
.tb_simple01 > tr > th, .tb_simple01 > tr > td {
  text-align: left !important;
  vertical-align: top !important;
  width: auto !important;
  border: none !important;
  background: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.tb_simple01 > tr > th {
  white-space: nowrap;
  padding-right: 1em;
}

/*リッチテキストに追加されたTableの背景用css*/
.bg-style01 {
  background: #fff !important;
  border-bottom: 1px solid #eaeaea !important;
}

.bg-style02 {
  background: #fbfbfb !important;
}

/*////////////////////////////////////////////////////

  その他の汎用スタイル

////////////////////////////////////////////////////*/
/* ------------------------------------------------
  デバイスごとの表示切り分け
  例： <br class="pc">
------------------------------------------------ */
@media only screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .pc {
    display: none !important;
  }
}

@media only screen and (max-width: 767px) {
  .tab-pc {
    display: none !important;
  }
}

@media print, screen and (min-width: 1025px) {
  .sp-tab {
    display: none !important;
  }
}
@media print {
  .sp-tab {
    display: none !important;
  }
}

@media print, screen and (min-width: 1025px) {
  .sp {
    display: none !important;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .sp {
    display: none !important;
  }
}
@media print {
  .sp {
    display: none !important;
  }
}

@media print, screen and (min-width: 1025px) {
  .tablet {
    display: none !important;
  }
}
@media only screen and (max-width: 767px) {
  .tablet {
    display: none !important;
  }
}
@media print {
  .tablet {
    display: none !important;
  }
}

/* ------------------------------------------------
  lazy load
------------------------------------------------ */
.lazy {
  opacity: 0;
}
.lazy.loaded {
  opacity: 1;
}

/* ------------------------------------------------
  スペース
------------------------------------------------ */
.space01 {
  clear: both;
  height: 60px;
}

.space02 {
  clear: both;
  height: 20px;
}

.mt-S {
  margin-top: 10px;
}

.mt-R {
  margin-top: 20px;
}

.mt-M {
  margin-top: 30px;
}

.mt-L {
  margin-top: 60px;
}

.mb-S {
  margin-bottom: 10px;
}

.mb-R {
  margin-bottom: 20px;
}

.mb-M {
  margin-bottom: 30px;
}

.mb-L {
  margin-bottom: 60px;
}

/* ------------------------------------------------
  フォントサイズ
------------------------------------------------ */
.txt-L {
  font-size: 120%;
}

.txt-S {
  font-size: 80%;
}

/* ------------------------------------------------
  囲み枠
------------------------------------------------ */
/* ------------------------------------------------
  画像スタイル
------------------------------------------------ */
.img-sp-01 img {
  max-width: 100%;
  height: auto;
}

/* ------------------------------------------------
  タブ
------------------------------------------------ */
/* ------------------------------------------------
  ico
------------------------------------------------ */
.ico-pdf-01:after {
  background: url(../img/ico-pdf-01@2x.png) center center no-repeat;
  content: " ";
  background-color: inherit;
  background-size: cover;
  width: 40px;
  height: 16px;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  top: -1px;
  left: 10px;
}
.ico-pdf-01:hover:after {
  background: url(../img/ico-pdf-01@2x_.png) center center no-repeat;
  background-size: cover;
}
.ico-pdf-01.ico-style01:after {
  border: 1px solid #ccc;
}
.ico-pdf-01.ico-style01:hover:after {
  border-color: #fff;
}

.ico-pdf-02:after {
  content: url(../img/ico-pdf-02.png);
  display: inline-block;
  vertical-align: top;
  transform: scale(1, 1);
  transform-origin: top left;
  padding-left: 1em;
  margin-top: 3px;
}

.ico-pdf-03:after {
  background: url(../img/ico-pdf-01@2x.png) center center no-repeat;
  content: " ";
  background-color: inherit;
  background-size: cover;
  width: 40px;
  height: 16px;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  top: -1px;
  left: 10px;
}
.ico-pdf-03.ico-style01:after {
  border: 1px solid #ccc;
}
.ico-pdf-03.ico-style01.style01:after {
  border-color: #00a0dc;
}
.ico-pdf-03.ico-style01.style02:after {
  border-color: #0068af;
}

/* ------------------------------------------------
  drop down
------------------------------------------------ */
.mod-drop-01 {
  position: relative;
}
@media only screen and (max-width: 767px) {
  .mod-drop-01 {
    margin-bottom: 10px;
  }
}
.mod-drop-01 .mod-drop-btn-01 {
  padding: 4px 0;
  cursor: pointer;
  text-align: center;
  position: relative;
  border: 1px solid #0068af;
  color: #0068af;
  font-size: 14px;
  font-size: 1.4rem;
}
@media only screen and (max-width: 1024px) {
  .mod-drop-01 .mod-drop-btn-01 {
    padding: 7px 0;
  }
}
@media all and (-ms-high-contrast: none) {
  .jp .mod-drop-01 .mod-drop-btn-01 {
    padding: 7px 0 0px;
  }
}
.mod-drop-01 .mod-drop-btn-01:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 4px;
  border-color: #0068af transparent transparent transparent;
  position: absolute;
  top: 50%;
  margin-top: -3px;
  right: 10px;
}
.mod-drop-01 .mod-drop-list-01 {
  display: none;
  position: absolute;
  z-index: 10;
  background-color: #f5f5f5;
  padding: 10px;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.mod-drop-01 .mod-drop-list-01 .ulList03 li:last-child {
  border: none;
}
.mod-drop-01.active .mod-drop-btn-01:before {
  border-color: transparent transparent #fff transparent;
  margin-top: -9px;
}
.mod-drop-01.style01 .mod-drop-btn-01 {
  background-color: #0068af;
  border-color: #0068af;
  color: #fff;
}
.mod-drop-01.style01 .mod-drop-btn-01:before {
  border-color: #fff transparent transparent transparent;
}
.mod-drop-01.style01.active .mod-drop-btn-01:before {
  border-color: transparent transparent #fff transparent;
}
.mod-drop-01.style02 .mod-drop-btn-01 {
  background-color: #00a0dc;
  border-color: #00a0dc;
  color: #fff;
}
.mod-drop-01.style02 .mod-drop-btn-01:before {
  border-color: #fff transparent transparent transparent;
}
.mod-drop-01.style02.active .mod-drop-btn-01:before {
  border-color: transparent transparent #fff transparent;
}

/* ------------------------------------------------
  more ボタン
------------------------------------------------ */
.mod-more-01 {
  position: relative;
  width: 100%;
}
.mod-more-01_inner {
  display: block;
  width: 460px;
  margin: 0 auto;
  margin-bottom: 60px;
  padding: 15px 0;
  cursor: pointer;
  text-align: center;
  position: relative;
  font-size: 20px;
  font-size: 2rem;
  border: 1px solid #0068af;
  color: #fff;
  background-color: #0068af;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 1024px) {
  .mod-more-01_inner {
    width: calc(100% - 60px);
    padding: 7px 0;
    font-size: 16px;
    font-size: 1.6rem;
  }
}
@media all and (-ms-high-contrast: none) {
  .jp .mod-more-01_inner {
    padding: 7px 0 0px;
  }
}
.mod-more-01_inner:before {
  content: "";
  display: block;
  width: 2px;
  height: 21px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 60px;
  transform: translateY(-50%);
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.mod-more-01_inner:after {
  content: "";
  display: block;
  width: 21px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 50px;
  transform: translateY(-50%);
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media print, screen and (min-width: 1025px) {
  .mod-more-01_inner:hover {
    color: #0068af;
    background-color: #fff;
  }
  .mod-more-01_inner:hover:before {
    background-color: #0068af;
  }
  .mod-more-01_inner:hover:after {
    background-color: #0068af;
  }
}

.ank {
  margin-top: -62px;
  padding-top: 62px;
}

/* ------------------------------------------------
  リッチテキスト用
------------------------------------------------ */
.box_border {
  padding: 14px 3%;
  width: 94%;
}
.box_border.style01 {
  border: 1px solid #ccc;
}
.box_border.style02 {
  border: 1px solid #000;
}
.box_border.style03 {
  border: 1px solid #00a0dc;
}
.box_border.style04 {
  border: 1px solid #0068af;
}

.box_border_bottom {
  padding: 14px 3%;
  width: 94%;
}
.box_border_bottom.style01 {
  border-bottom: 1px solid #ccc;
}
.box_border_bottom.style02 {
  border-bottom: 1px solid #000;
}
.box_border_bottom.style03 {
  border-bottom: 1px solid #00a0dc;
}
.box_border_bottom.style04 {
  border-bottom: 1px solid #0068af;
}

.box_background {
  padding: 14px 3%;
  width: 94%;
}
.box_background.style01 {
  background: #eaeaea;
}
.box_background.style01.type01 {
  margin-top: 10px;
  margin-bottom: 10px;
}
.box_background.style02 {
  background: #ccc;
}
.box_background.style03 {
  background: #00a0dc;
  color: #fff;
}
.box_background.style04 {
  background: #0068af;
  color: #fff;
}

/* ------------------------------------------------
  リッチテキスト用
------------------------------------------------ */
sup {
  font-size: 0.7em;
  vertical-align: top;
  position: relative;
  top: -1px;
  display: inline !important;
}

sub {
  font-size: 0.7em;
  vertical-align: bottom;
  position: relative;
  bottom: 4px;
  display: inline !important;
}

@-moz-document url-prefix() {
  sub {
    font-size: 0.7em;
    vertical-align: bottom;
    position: relative;
    bottom: -0.1em;
    display: inline !important;
  }
}
.tit02 sup {
  font-size: 0.7em;
  top: -1px;
}
.tit02 sub {
  font-size: 0.7em;
  bottom: 4px;
}

.tit03 sup {
  font-size: 0.7em;
  top: -1px;
}
.tit03 sub {
  font-size: 0.7em;
  bottom: 1px;
}

.tit04 sup {
  font-size: 0.7em;
  top: -1px;
}
.tit04 sub {
  font-size: 0.7em;
  bottom: 1px;
}

.tit05 sup {
  font-size: 0.7em;
  top: 1px;
}
.tit05 sub {
  font-size: 0.7em;
  bottom: -1px;
}

.tit06.style01 sup {
  font-size: 0.7em;
  top: -1px;
}
.tit06.style01 sub {
  font-size: 0.7em;
  bottom: 4px;
}
.tit06.style01.type01 sup {
  font-size: 0.7em;
  top: -1px;
}
.tit06.style01.type01 sub {
  font-size: 0.7em;
  bottom: 1px;
}
.tit06.style01.type02 sup {
  font-size: 0.7em;
  top: 1px;
}
.tit06.style01.type02 sub {
  font-size: 0.7em;
  bottom: -1px;
}

@-moz-document url-prefix() {
  .tit02 sub {
    font-size: 0.7em;
    bottom: -0.1em !important;
  }

  .tit03 sub {
    font-size: 0.7em;
    bottom: 0em !important;
  }

  .tit04 sub {
    font-size: 0.7em;
    bottom: -1px !important;
  }

  .tit05 sub {
    font-size: 0.7em;
    bottom: -0.1em !important;
  }

  .jp .tit03 sub {
    font-size: 0.7em;
    bottom: -0.1em !important;
  }
  .jp .tit04 sub {
    font-size: 0.7em;
    bottom: -0.1em !important;
  }
}
.sup_text {
  font-size: 0.7em;
  vertical-align: top;
  position: relative;
  top: 0;
  display: inline !important;
}
.sup_text.ptn02 {
  font-size: 0.5em;
  top: 0.4em;
  left: 0.2em;
}
.sup_text.ptn03 {
  font-size: 0.7em;
  top: 0;
  left: 0.2em;
}

.sub_text {
  font-size: 0.7em;
  vertical-align: bottom;
  position: relative;
  bottom: 2px;
  display: inline !important;
}

.pankuzu-inner sup {
  font-size: 0.7em;
  position: relative;
  top: 4px;
  display: inline !important;
}
.pankuzu-inner sub {
  font-size: 0.7em;
  position: relative;
  bottom: 3px;
  display: inline !important;
}

.rich_text sup {
  font-size: 0.7em;
  vertical-align: top;
  position: relative;
  top: 0em;
  display: inline !important;
}
.rich_text sub {
  font-size: 0.7em;
  vertical-align: bottom;
  position: relative;
  bottom: 0.2em;
  display: inline !important;
}
.rich_text .sup_text_tit {
  font-size: 0.7em;
  vertical-align: top;
  position: relative;
  top: -0.1em;
  display: inline !important;
}
.rich_text .sub_text_tit {
  font-size: 0.7em;
  vertical-align: bottom;
  position: relative;
  bottom: 3px;
  display: inline !important;
}
.rich_text .box_content_inner05 {
  margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  .rich_text .link-02-out {
    margin: 0 2px;
    font-size: 14px;
  }
}
.rich_text .tit03 sup {
  font-size: 0.7em;
  top: -4px;
}
.rich_text .tit03 sub {
  font-size: 0.7em;
  bottom: 1px;
}

.jp .rich_text sup {
  font-size: 0.7em;
  vertical-align: top;
  position: relative;
  top: 0;
  display: inline !important;
}
.jp .rich_text sub {
  font-size: 0.7em;
  vertical-align: bottom;
  position: relative;
  bottom: 0;
  display: inline !important;
}
.jp .rich_text .sup_text_tit {
  font-size: 0.7em;
  vertical-align: top;
  position: relative;
  top: -0.1em;
  display: inline !important;
}
.jp .rich_text .sub_text_tit {
  font-size: 0.7em;
  vertical-align: bottom;
  position: relative;
  bottom: 3px;
  display: inline !important;
}
.jp .rich_text .box_content_inner05 {
  margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  .jp .rich_text .link-02-out {
    margin: 0 2px;
    font-size: 14px;
  }
}
.jp .rich_text .tit03 sup {
  font-size: 0.6em !important;
  top: -5px !important;
}
.jp .rich_text .tit03 sub {
  font-size: 0.6em !important;
  bottom: 1px !important;
}

@-moz-document url-prefix() {
  .rich_text sub {
    font-size: 0.7em;
    vertical-align: bottom;
    position: relative;
    bottom: 0.3em;
    display: inline !important;
  }

  .jp .rich_text sub {
    font-size: 0.7em;
    vertical-align: bottom;
    position: relative;
    bottom: 0.2em;
    display: inline !important;
  }
}
.customfield_other sup {
  font-size: 8px;
  vertical-align: top;
  position: relative;
  top: -0.1em;
  display: inline !important;
}
.customfield_other sub {
  font-size: 8px;
  vertical-align: bottom;
  position: relative;
  bottom: 3px;
  display: inline !important;
}

/* scrollbar */
@media only screen and (max-width: 1024px) {
  #scrollbar {
    width: 100%;
    text-align: left;
  }

  #scrollbar .viewport {
    height: 550px;
    overflow: hidden;
    position: relative;
  }
  .jp #scrollbar .viewport {
    height: 384px;
  }

  #scrollbar .overview {
    position: absolute;
  }
  #scrollbar .scrollbar {
    background-color: #eee;
    position: relative;
    margin: 0 0 50px;
    clear: both;
    height: 2px;
    border-radius: 8px;
    width: 100% !important;
  }

  #scrollbar .thumb {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 7px;
    background-color: #00a0dc;
    height: 14px;
    cursor: pointer;
    overflow: hidden;
    position: absolute;
    left: 0;
    top: -5px;
  }
  #scrollbar .thumb .thumb-in,
#scrollbar .thumb .thumb-in:before,
#scrollbar .thumb .thumb-in:after {
    content: "";
    display: block;
    border-color: #fff;
    border-style: solid;
  }
  #scrollbar .thumb .thumb-in {
    width: 12px;
    height: 0px;
    margin: 6px auto;
    border-width: 1px;
    position: relative;
  }
  #scrollbar .thumb .thumb-in:before, #scrollbar .thumb .thumb-in:after {
    width: 0;
    height: 0;
    border-width: 4px;
    position: absolute;
    top: -4px;
  }
  #scrollbar .thumb .thumb-in:before {
    border-color: transparent #fff transparent transparent;
    left: -8px;
  }
  #scrollbar .thumb .thumb-in:after {
    border-color: transparent transparent transparent #fff;
    position: absolute;
    right: -8px;
  }

  .scroll-note-01 {
    display: inline-block;
    font-size: 12px;
    font-size: 1.2rem;
    background-color: rgba(0, 160, 220, 0.1);
    border-radius: 5px;
    padding: 5px 10px;
    margin-bottom: 20px;
    position: relative;
  }
  .scroll-note-01:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 7px;
    border-color: rgba(0, 160, 220, 0.1) transparent transparent transparent;
    position: absolute;
    bottom: -16px;
    left: 40px;
  }
}
#scrollbar .caution {
  padding-top: 15px;
  text-align: left;
  font-size: 14px;
  font-size: 1.4rem;
}
#scrollbar .caution a {
  white-space: pre-wrap;
}

/* effect */
.PC .effect.fadeIn {
  opacity: 0;
  -webkit-transition: all 1s ease 0s;
  -moz-transition: all 1s ease 0s;
  -ms-transition: all 1s ease 0s;
  -o-transition: all 1s ease 0s;
  transition: all 1s ease 0s;
}
.PC .effect.fadeIn.is-active {
  opacity: 1;
}
.PC .effect.fadeInUp {
  opacity: 0;
  transform: translateY(20px);
  -webkit-transition: all 1s ease 0s;
  -moz-transition: all 1s ease 0s;
  -ms-transition: all 1s ease 0s;
  -o-transition: all 1s ease 0s;
  transition: all 1s ease 0s;
}
.PC .effect.fadeInUp.is-active {
  opacity: 1;
  transform: translateY(0px);
}
.PC .effect.fadeInDown {
  opacity: 0;
  transform: translateY(-20px);
  -webkit-transition: all 1s ease 0s;
  -moz-transition: all 1s ease 0s;
  -ms-transition: all 1s ease 0s;
  -o-transition: all 1s ease 0s;
  transition: all 1s ease 0s;
}
.PC .effect.fadeInDown.is-active {
  opacity: 1;
  transform: translateY(0px);
}
.PC .effect.paragraph > * {
  opacity: 0;
  transform: translateY(20px);
}
.PC .effect.paragraph > *:nth-child(1) {
  -webkit-transition: all 1s ease 0.5s;
  -moz-transition: all 1s ease 0.5s;
  -ms-transition: all 1s ease 0.5s;
  -o-transition: all 1s ease 0.5s;
  transition: all 1s ease 0.5s;
}
.PC .effect.paragraph > *:nth-child(2) {
  -webkit-transition: all 1s ease 1s;
  -moz-transition: all 1s ease 1s;
  -ms-transition: all 1s ease 1s;
  -o-transition: all 1s ease 1s;
  transition: all 1s ease 1s;
}
.PC .effect.paragraph > *:nth-child(3) {
  -webkit-transition: all 1s ease 1.5s;
  -moz-transition: all 1s ease 1.5s;
  -ms-transition: all 1s ease 1.5s;
  -o-transition: all 1s ease 1.5s;
  transition: all 1s ease 1.5s;
}
.PC .effect.paragraph > *:nth-child(4) {
  -webkit-transition: all 1s ease 2s;
  -moz-transition: all 1s ease 2s;
  -ms-transition: all 1s ease 2s;
  -o-transition: all 1s ease 2s;
  transition: all 1s ease 2s;
}
.PC .effect.paragraph > *:nth-child(5) {
  -webkit-transition: all 1s ease 2.5s;
  -moz-transition: all 1s ease 2.5s;
  -ms-transition: all 1s ease 2.5s;
  -o-transition: all 1s ease 2.5s;
  transition: all 1s ease 2.5s;
}
.PC .effect.paragraph > *:nth-child(6) {
  -webkit-transition: all 1s ease 3s;
  -moz-transition: all 1s ease 3s;
  -ms-transition: all 1s ease 3s;
  -o-transition: all 1s ease 3s;
  transition: all 1s ease 3s;
}
.PC .effect.paragraph > *:nth-child(7) {
  -webkit-transition: all 1s ease 3.5s;
  -moz-transition: all 1s ease 3.5s;
  -ms-transition: all 1s ease 3.5s;
  -o-transition: all 1s ease 3.5s;
  transition: all 1s ease 3.5s;
}
.PC .effect.paragraph > *:nth-child(8) {
  -webkit-transition: all 1s ease 4s;
  -moz-transition: all 1s ease 4s;
  -ms-transition: all 1s ease 4s;
  -o-transition: all 1s ease 4s;
  transition: all 1s ease 4s;
}
.PC .effect.paragraph > *:nth-child(9) {
  -webkit-transition: all 1s ease 4.5s;
  -moz-transition: all 1s ease 4.5s;
  -ms-transition: all 1s ease 4.5s;
  -o-transition: all 1s ease 4.5s;
  transition: all 1s ease 4.5s;
}
.PC .effect.paragraph > *:nth-child(10) {
  -webkit-transition: all 1s ease 5s;
  -moz-transition: all 1s ease 5s;
  -ms-transition: all 1s ease 5s;
  -o-transition: all 1s ease 5s;
  transition: all 1s ease 5s;
}
.PC .effect.paragraph.is-active > * {
  opacity: 1;
  transform: translateY(0px);
}

/* 関連情報 */
.mod-relation-01 {
  text-align: center;
  background-color: #f5f5f5;
}
.mod-relation-01 .tit-relation-01 {
  color: #000;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 60px;
  background-color: #e5e5e5;
}
@media all and (-ms-high-contrast: none) {
  .mod-relation-01 .tit-relation-01 {
    padding-top: 5px;
  }
}
.mod-relation-01 .mod-relation-01-in {
  padding: 30px 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-justify-content: center;
  -moz-justify-content: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  .mod-relation-01 .mod-relation-01-in {
    -ms-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.mod-relation-01 .mod-relation-01-in .item-relation {
  margin: 10px;
}
.mod-relation-01 .mod-relation-01-in .item-relation img {
  width: 100%;
  height: auto;
}
.mod-relation-01 a {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.PC .mod-relation-01 a:hover {
  opacity: 0.6;
}
@media only screen and (max-width: 767px) {
  .mod-relation-01 .movie {
    width: 90%;
  }
  .mod-relation-01 .movie iframe {
    width: 100%;
    height: 65vw;
  }
}

/* 横並びリンク */
.mod-link-flex-01,
.mod-link-flex-02 {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-justify-content: left;
  -moz-justify-content: left;
  -webkit-justify-content: left;
  justify-content: left;
}
.mod-link-flex-01.center,
.mod-link-flex-02.center {
  -ms-justify-content: center;
  -moz-justify-content: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.mod-link-flex-01 .item-flex,
.mod-link-flex-02 .item-flex {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px;
  text-align: center;
  width: 50%;
}
.mod-link-flex-01 .item-flex .boxImg,
.mod-link-flex-02 .item-flex .boxImg {
  overflow: hidden;
  position: relative;
}
.mod-link-flex-01 .item-flex .boxImg img,
.mod-link-flex-02 .item-flex .boxImg img {
  width: 100%;
  height: auto;
}
.mod-link-flex-01 .item-flex .boxImg .caption,
.mod-link-flex-02 .item-flex .boxImg .caption {
  position: absolute;
  text-align: right;
  font-size: 11px;
  font-size: 1.1rem;
  right: 5px;
  bottom: 5px;
  line-height: 1.2;
  color: #fff;
  text-shadow: 0px 0px 8px #000;
}
.jp .mod-link-flex-01 .item-flex .boxImg .caption,
.jp .mod-link-flex-02 .item-flex .boxImg .caption {
  font-family: roboto;
}
.mod-link-flex-01.two,
.mod-link-flex-02.two {
  width: 66%;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .mod-link-flex-01.two,
.mod-link-flex-02.two {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .mod-link-flex-01.two,
.mod-link-flex-02.two {
    width: 100%;
  }
}
@media print, screen and (min-width: 768px) {
  .mod-link-flex-01.two .item-flex,
.mod-link-flex-02.two .item-flex {
    width: 50%;
  }
}
@media print, screen and (min-width: 768px) {
  .mod-link-flex-01.three .item-flex,
.mod-link-flex-02.three .item-flex {
    width: 33%;
  }
}
@media print, screen and (min-width: 768px) {
  .mod-link-flex-01.four .item-flex,
.mod-link-flex-02.four .item-flex {
    width: 25%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .mod-link-flex-01.five .item-flex,
.mod-link-flex-02.five .item-flex {
    width: 33%;
  }
}
@media print, screen and (min-width: 1025px) {
  .mod-link-flex-01.five .item-flex,
.mod-link-flex-02.five .item-flex {
    width: 20%;
  }
}
@media print, screen and (min-width: 768px) {
  .mod-link-flex-01.six .item-flex,
.mod-link-flex-02.six .item-flex {
    width: 33%;
  }
}
@media print, screen and (min-width: 1280px) {
  .mod-link-flex-01.six .item-flex,
.mod-link-flex-02.six .item-flex {
    width: 16.6666666667%;
  }
}
.mod-link-flex-01.seven,
.mod-link-flex-02.seven {
  padding: 0 10px;
}
@media only screen and (max-width: 767px) {
  .mod-link-flex-01.seven.center,
.mod-link-flex-02.seven.center {
    justify-content: left;
  }
}
@media print, screen and (min-width: 768px) {
  .mod-link-flex-01.seven .item-flex,
.mod-link-flex-02.seven .item-flex {
    width: 25%;
  }
}
@media only screen and (max-width: 767px) {
  .mod-link-flex-01.type02 .item-flex,
.mod-link-flex-02.type02 .item-flex {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .mod-link-flex-01.type02 .item-flex,
.mod-link-flex-02.type02 .item-flex {
    width: 50%;
  }
}

.mod-link-flex-02 .item-flex {
  width: 100%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .mod-link-flex-02.four .item-flex {
    width: 50%;
  }
}

.mb60 {
  margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  .mb60 {
    margin-bottom: 30px;
  }
}

/*////////////////////////////////////////////////////

    keyframes設定

////////////////////////////////////////////////////*/
/* ------------------------------------------------
  common
------------------------------------------------ */
/* gNav */
@-webkit-keyframes nav-slideIn {
  0% {
    opacity: 0;
    transform: translateX(130%);
  }
  100% {
    opacity: 1;
    transform: translateX(100%);
  }
}
@-moz-keyframes nav-slideIn {
  0% {
    opacity: 0;
    transform: translateX(130%);
  }
  100% {
    opacity: 1;
    transform: translateX(100%);
  }
}
@-o-keyframes nav-slideIn {
  0% {
    opacity: 0;
    transform: translateX(130%);
  }
  100% {
    opacity: 1;
    transform: translateX(100%);
  }
}
@keyframes nav-slideIn {
  0% {
    opacity: 0;
    transform: translateX(130%);
  }
  100% {
    opacity: 1;
    transform: translateX(100%);
  }
}
/* search */
@-webkit-keyframes boxSearch-slideDown {
  0% {
    opacity: 0;
    margin-top: -50%;
  }
  60% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    margin-top: 0;
  }
}
@-moz-keyframes boxSearch-slideDown {
  0% {
    opacity: 0;
    margin-top: -50%;
  }
  60% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    margin-top: 0;
  }
}
@-o-keyframes boxSearch-slideDown {
  0% {
    opacity: 0;
    margin-top: -50%;
  }
  60% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    margin-top: 0;
  }
}
@keyframes boxSearch-slideDown {
  0% {
    opacity: 0;
    margin-top: -50%;
  }
  60% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    margin-top: 0;
  }
}
/* ------------------------------------------------
  top
------------------------------------------------ */
/* map */
@-webkit-keyframes map-scale-01 {
  0% {
    transform: scale(1, 1);
  }
  100% {
    transform: scale(5, 5);
  }
}
@-moz-keyframes map-scale-01 {
  0% {
    transform: scale(1, 1);
  }
  100% {
    transform: scale(5, 5);
  }
}
@-o-keyframes map-scale-01 {
  0% {
    transform: scale(1, 1);
  }
  100% {
    transform: scale(5, 5);
  }
}
@keyframes map-scale-01 {
  0% {
    transform: scale(1, 1);
  }
  100% {
    transform: scale(5, 5);
  }
}
/* map circle */
@-webkit-keyframes circle-01 {
  0% {
    transform: rotate(45deg);
  }
  100% {
    transform: rotate(135deg);
  }
}
@-moz-keyframes circle-01 {
  0% {
    transform: rotate(45deg);
  }
  100% {
    transform: rotate(135deg);
  }
}
@-o-keyframes circle-01 {
  0% {
    transform: rotate(45deg);
  }
  100% {
    transform: rotate(135deg);
  }
}
@keyframes circle-01 {
  0% {
    transform: rotate(45deg);
  }
  100% {
    transform: rotate(135deg);
  }
}
@-webkit-keyframes circle-02 {
  0% {
    transform: rotate(-45deg);
  }
  100% {
    transform: rotate(45deg);
  }
}
@-moz-keyframes circle-02 {
  0% {
    transform: rotate(-45deg);
  }
  100% {
    transform: rotate(45deg);
  }
}
@-o-keyframes circle-02 {
  0% {
    transform: rotate(-45deg);
  }
  100% {
    transform: rotate(45deg);
  }
}
@keyframes circle-02 {
  0% {
    transform: rotate(-45deg);
  }
  100% {
    transform: rotate(45deg);
  }
}
@-webkit-keyframes circle-03 {
  0% {
    transform: rotate(45deg);
  }
  100% {
    transform: rotate(225deg);
  }
}
@-moz-keyframes circle-03 {
  0% {
    transform: rotate(45deg);
  }
  100% {
    transform: rotate(225deg);
  }
}
@-o-keyframes circle-03 {
  0% {
    transform: rotate(45deg);
  }
  100% {
    transform: rotate(225deg);
  }
}
@keyframes circle-03 {
  0% {
    transform: rotate(45deg);
  }
  100% {
    transform: rotate(225deg);
  }
}
@-webkit-keyframes circle-04 {
  0% {
    transform: rotate(-45deg);
  }
  100% {
    transform: rotate(135deg);
  }
}
@-moz-keyframes circle-04 {
  0% {
    transform: rotate(-45deg);
  }
  100% {
    transform: rotate(135deg);
  }
}
@-o-keyframes circle-04 {
  0% {
    transform: rotate(-45deg);
  }
  100% {
    transform: rotate(135deg);
  }
}
@keyframes circle-04 {
  0% {
    transform: rotate(-45deg);
  }
  100% {
    transform: rotate(135deg);
  }
}
/* map marker */
@-webkit-keyframes ico-marker-01 {
  0% {
    width: 10px;
    height: 10px;
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  100% {
    width: 50px;
    height: 50px;
    opacity: 0;
  }
}
@-moz-keyframes ico-marker-01 {
  0% {
    width: 10px;
    height: 10px;
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  100% {
    width: 50px;
    height: 50px;
    opacity: 0;
  }
}
@-o-keyframes ico-marker-01 {
  0% {
    width: 10px;
    height: 10px;
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  100% {
    width: 50px;
    height: 50px;
    opacity: 0;
  }
}
@keyframes ico-marker-01 {
  0% {
    width: 10px;
    height: 10px;
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  100% {
    width: 50px;
    height: 50px;
    opacity: 0;
  }
}
/* swiper slide */
@-webkit-keyframes scale-01 {
  0% {
    transform: scale(1.1, 1.1);
  }
  100% {
    transform: scale(1, 1);
  }
}
@-moz-keyframes scale-01 {
  0% {
    transform: scale(1.1, 1.1);
  }
  100% {
    transform: scale(1, 1);
  }
}
@-o-keyframes scale-01 {
  0% {
    transform: scale(1.1, 1.1);
  }
  100% {
    transform: scale(1, 1);
  }
}
@keyframes scale-01 {
  0% {
    transform: scale(1.1, 1.1);
  }
  100% {
    transform: scale(1, 1);
  }
}
@-webkit-keyframes fadeInUp-01 {
  0% {
    transform: translate3d(0, 30px, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@-moz-keyframes fadeInUp-01 {
  0% {
    transform: translate3d(0, 30px, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@-o-keyframes fadeInUp-01 {
  0% {
    transform: translate3d(0, 30px, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes fadeInUp-01 {
  0% {
    transform: translate3d(0, 30px, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes fadeOutDown-01 {
  0% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  100% {
    transform: translate3d(0, 30px, 0);
    opacity: 0;
  }
}
@-moz-keyframes fadeOutDown-01 {
  0% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  100% {
    transform: translate3d(0, 30px, 0);
    opacity: 0;
  }
}
@-o-keyframes fadeOutDown-01 {
  0% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  100% {
    transform: translate3d(0, 30px, 0);
    opacity: 0;
  }
}
@keyframes fadeOutDown-01 {
  0% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  100% {
    transform: translate3d(0, 30px, 0);
    opacity: 0;
  }
}
@-webkit-keyframes fadeInUp-02 {
  0% {
    margin-top: 200px;
    opacity: 0;
  }
  100% {
    margin-top: 0;
    opacity: 1;
  }
}
@-moz-keyframes fadeInUp-02 {
  0% {
    margin-top: 200px;
    opacity: 0;
  }
  100% {
    margin-top: 0;
    opacity: 1;
  }
}
@-o-keyframes fadeInUp-02 {
  0% {
    margin-top: 200px;
    opacity: 0;
  }
  100% {
    margin-top: 0;
    opacity: 1;
  }
}
@keyframes fadeInUp-02 {
  0% {
    margin-top: 200px;
    opacity: 0;
  }
  100% {
    margin-top: 0;
    opacity: 1;
  }
}
@-webkit-keyframes fadeOutDown-02 {
  0% {
    margin-top: 0;
    opacity: 1;
  }
  100% {
    margin-top: 200px;
    opacity: 0;
  }
}
@-moz-keyframes fadeOutDown-02 {
  0% {
    margin-top: 0;
    opacity: 1;
  }
  100% {
    margin-top: 200px;
    opacity: 0;
  }
}
@-o-keyframes fadeOutDown-02 {
  0% {
    margin-top: 0;
    opacity: 1;
  }
  100% {
    margin-top: 200px;
    opacity: 0;
  }
}
@keyframes fadeOutDown-02 {
  0% {
    margin-top: 0;
    opacity: 1;
  }
  100% {
    margin-top: 200px;
    opacity: 0;
  }
}
@-webkit-keyframes mv-slideIn-01 {
  0% {
    width: 0%;
    opacity: 0;
  }
  60% {
    width: 0%;
    opacity: 0;
  }
  100% {
    width: 100%;
    opacity: 1;
  }
}
@-moz-keyframes mv-slideIn-01 {
  0% {
    width: 0%;
    opacity: 0;
  }
  60% {
    width: 0%;
    opacity: 0;
  }
  100% {
    width: 100%;
    opacity: 1;
  }
}
@-o-keyframes mv-slideIn-01 {
  0% {
    width: 0%;
    opacity: 0;
  }
  60% {
    width: 0%;
    opacity: 0;
  }
  100% {
    width: 100%;
    opacity: 1;
  }
}
@keyframes mv-slideIn-01 {
  0% {
    width: 0%;
    opacity: 0;
  }
  60% {
    width: 0%;
    opacity: 0;
  }
  100% {
    width: 100%;
    opacity: 1;
  }
}
@-webkit-keyframes mv-slideOut-01 {
  0% {
    width: 100%;
    opacity: 1;
  }
  100% {
    width: 0%;
    opacity: 0;
  }
}
@-moz-keyframes mv-slideOut-01 {
  0% {
    width: 100%;
    opacity: 1;
  }
  100% {
    width: 0%;
    opacity: 0;
  }
}
@-o-keyframes mv-slideOut-01 {
  0% {
    width: 100%;
    opacity: 1;
  }
  100% {
    width: 0%;
    opacity: 0;
  }
}
@keyframes mv-slideOut-01 {
  0% {
    width: 100%;
    opacity: 1;
  }
  100% {
    width: 0%;
    opacity: 0;
  }
}
/* panel color */
@-webkit-keyframes panel-color-01 {
  0% {
    opacity: 0.2;
  }
  100% {
    opacity: 0.9;
  }
}
@-moz-keyframes panel-color-01 {
  0% {
    opacity: 0.2;
  }
  100% {
    opacity: 0.9;
  }
}
@-o-keyframes panel-color-01 {
  0% {
    opacity: 0.2;
  }
  100% {
    opacity: 0.9;
  }
}
@keyframes panel-color-01 {
  0% {
    opacity: 0.2;
  }
  100% {
    opacity: 0.9;
  }
}
@-webkit-keyframes panel-color-02 {
  0% {
    opacity: 0.9;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes panel-color-02 {
  0% {
    opacity: 0.9;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes panel-color-02 {
  0% {
    opacity: 0.9;
  }
  100% {
    opacity: 1;
  }
}
@keyframes panel-color-02 {
  0% {
    opacity: 0.9;
  }
  100% {
    opacity: 1;
  }
}
/* 順回転 */
@-webkit-keyframes mv-rotateIn-right-01 {
  0% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  60% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
@-moz-keyframes mv-rotateIn-right-01 {
  0% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  60% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
@-o-keyframes mv-rotateIn-right-01 {
  0% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  60% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
@keyframes mv-rotateIn-right-01 {
  0% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  60% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
@-webkit-keyframes mv-rotateOut-right-01 {
  0% {
    background-color: #00a0dc;
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  40% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
@-moz-keyframes mv-rotateOut-right-01 {
  0% {
    background-color: #00a0dc;
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  40% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
@-o-keyframes mv-rotateOut-right-01 {
  0% {
    background-color: #00a0dc;
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  40% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
@keyframes mv-rotateOut-right-01 {
  0% {
    background-color: #00a0dc;
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  40% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
@-webkit-keyframes mv-rotateIn-left-01 {
  0% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  60% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
@-moz-keyframes mv-rotateIn-left-01 {
  0% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  60% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
@-o-keyframes mv-rotateIn-left-01 {
  0% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  60% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
@keyframes mv-rotateIn-left-01 {
  0% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  60% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
@-webkit-keyframes mv-rotateOut-left-01 {
  0% {
    background-color: #0068af;
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  40% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
@-moz-keyframes mv-rotateOut-left-01 {
  0% {
    background-color: #0068af;
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  40% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
@-o-keyframes mv-rotateOut-left-01 {
  0% {
    background-color: #0068af;
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  40% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
@keyframes mv-rotateOut-left-01 {
  0% {
    background-color: #0068af;
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  40% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
/* 逆回転 */
@-webkit-keyframes rv-mv-rotateIn-right-01 {
  0% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  60% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
}
@-moz-keyframes rv-mv-rotateIn-right-01 {
  0% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  60% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
}
@-o-keyframes rv-mv-rotateIn-right-01 {
  0% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  60% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
}
@keyframes rv-mv-rotateIn-right-01 {
  0% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  60% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    left: 0;
    bottom: auto;
    right: auto;
    transform-origin: left top;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
}
@-webkit-keyframes rv-mv-rotateOut-right-01 {
  0% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  40% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
@-moz-keyframes rv-mv-rotateOut-right-01 {
  0% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  40% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
@-o-keyframes rv-mv-rotateOut-right-01 {
  0% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  40% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
@keyframes rv-mv-rotateOut-right-01 {
  0% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  40% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
@-webkit-keyframes rv-mv-rotateIn-left-01 {
  0% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  60% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
}
@-moz-keyframes rv-mv-rotateIn-left-01 {
  0% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  60% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
}
@-o-keyframes rv-mv-rotateIn-left-01 {
  0% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  60% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
}
@keyframes rv-mv-rotateIn-left-01 {
  0% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
  60% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  100% {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
}
@-webkit-keyframes rv-mv-rotateOut-left-01 {
  0% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  40% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
@-moz-keyframes rv-mv-rotateOut-left-01 {
  0% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  40% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
@-o-keyframes rv-mv-rotateOut-left-01 {
  0% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  40% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
@keyframes rv-mv-rotateOut-left-01 {
  0% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  40% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
  100% {
    top: 0;
    right: 0;
    bottom: auto;
    left: auto;
    transform-origin: right top;
    transform: rotate3d(0, 0, 1, 0deg);
    opacity: 1;
  }
}
/* elemenu balloon */
@-webkit-keyframes balloon {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes balloon {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes balloon {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes balloon {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* teamwork&future */
@-webkit-keyframes tit-team-01 {
  0% {
    right: -100%;
    margin-top: -50px;
    opacity: 0;
  }
  100% {
    right: 0;
    margin-top: -50px;
    opacity: 1;
  }
}
@-moz-keyframes tit-team-01 {
  0% {
    right: -100%;
    margin-top: -50px;
    opacity: 0;
  }
  100% {
    right: 0;
    margin-top: -50px;
    opacity: 1;
  }
}
@-o-keyframes tit-team-01 {
  0% {
    right: -100%;
    margin-top: -50px;
    opacity: 0;
  }
  100% {
    right: 0;
    margin-top: -50px;
    opacity: 1;
  }
}
@keyframes tit-team-01 {
  0% {
    right: -100%;
    margin-top: -50px;
    opacity: 0;
  }
  100% {
    right: 0;
    margin-top: -50px;
    opacity: 1;
  }
}
@-webkit-keyframes tit-team-02 {
  0% {
    margin-top: -50px;
  }
  100% {
    margin-top: -70px;
  }
}
@-moz-keyframes tit-team-02 {
  0% {
    margin-top: -50px;
  }
  100% {
    margin-top: -70px;
  }
}
@-o-keyframes tit-team-02 {
  0% {
    margin-top: -50px;
  }
  100% {
    margin-top: -70px;
  }
}
@keyframes tit-team-02 {
  0% {
    margin-top: -50px;
  }
  100% {
    margin-top: -70px;
  }
}
@-webkit-keyframes tit-team-03 {
  0% {
    right: -100%;
    margin-top: -40px;
    opacity: 0;
  }
  100% {
    right: 0;
    margin-top: -40px;
    opacity: 1;
  }
}
@-moz-keyframes tit-team-03 {
  0% {
    right: -100%;
    margin-top: -40px;
    opacity: 0;
  }
  100% {
    right: 0;
    margin-top: -40px;
    opacity: 1;
  }
}
@-o-keyframes tit-team-03 {
  0% {
    right: -100%;
    margin-top: -40px;
    opacity: 0;
  }
  100% {
    right: 0;
    margin-top: -40px;
    opacity: 1;
  }
}
@keyframes tit-team-03 {
  0% {
    right: -100%;
    margin-top: -40px;
    opacity: 0;
  }
  100% {
    right: 0;
    margin-top: -40px;
    opacity: 1;
  }
}
@-webkit-keyframes tit-future-01 {
  0% {
    left: -100%;
    margin-bottom: -50px;
    opacity: 0;
  }
  100% {
    left: 0;
    margin-bottom: -50px;
    opacity: 1;
  }
}
@-moz-keyframes tit-future-01 {
  0% {
    left: -100%;
    margin-bottom: -50px;
    opacity: 0;
  }
  100% {
    left: 0;
    margin-bottom: -50px;
    opacity: 1;
  }
}
@-o-keyframes tit-future-01 {
  0% {
    left: -100%;
    margin-bottom: -50px;
    opacity: 0;
  }
  100% {
    left: 0;
    margin-bottom: -50px;
    opacity: 1;
  }
}
@keyframes tit-future-01 {
  0% {
    left: -100%;
    margin-bottom: -50px;
    opacity: 0;
  }
  100% {
    left: 0;
    margin-bottom: -50px;
    opacity: 1;
  }
}
@-webkit-keyframes tit-future-02 {
  0% {
    margin-bottom: -50px;
  }
  100% {
    margin-bottom: -70px;
  }
}
@-moz-keyframes tit-future-02 {
  0% {
    margin-bottom: -50px;
  }
  100% {
    margin-bottom: -70px;
  }
}
@-o-keyframes tit-future-02 {
  0% {
    margin-bottom: -50px;
  }
  100% {
    margin-bottom: -70px;
  }
}
@keyframes tit-future-02 {
  0% {
    margin-bottom: -50px;
  }
  100% {
    margin-bottom: -70px;
  }
}
@-webkit-keyframes tit-future-03 {
  0% {
    left: -100%;
    margin-bottom: -40px;
    opacity: 0;
  }
  100% {
    left: 0;
    margin-bottom: -40px;
    opacity: 1;
  }
}
@-moz-keyframes tit-future-03 {
  0% {
    left: -100%;
    margin-bottom: -40px;
    opacity: 0;
  }
  100% {
    left: 0;
    margin-bottom: -40px;
    opacity: 1;
  }
}
@-o-keyframes tit-future-03 {
  0% {
    left: -100%;
    margin-bottom: -40px;
    opacity: 0;
  }
  100% {
    left: 0;
    margin-bottom: -40px;
    opacity: 1;
  }
}
@keyframes tit-future-03 {
  0% {
    left: -100%;
    margin-bottom: -40px;
    opacity: 0;
  }
  100% {
    left: 0;
    margin-bottom: -40px;
    opacity: 1;
  }
}
/* technology */
@-webkit-keyframes btn-arr {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes btn-arr {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes btn-arr {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes btn-arr {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes technology-box-01 {
  0% {
    transform: rotateY(90deg);
    opacity: 0;
  }
  100% {
    transform: rotateY(0deg);
    opacity: 1;
  }
}
@-moz-keyframes technology-box-01 {
  0% {
    transform: rotateY(90deg);
    opacity: 0;
  }
  100% {
    transform: rotateY(0deg);
    opacity: 1;
  }
}
@-o-keyframes technology-box-01 {
  0% {
    transform: rotateY(90deg);
    opacity: 0;
  }
  100% {
    transform: rotateY(0deg);
    opacity: 1;
  }
}
@keyframes technology-box-01 {
  0% {
    transform: rotateY(90deg);
    opacity: 0;
  }
  100% {
    transform: rotateY(0deg);
    opacity: 1;
  }
}
@-webkit-keyframes technology-box-02 {
  0% {
    transform: rotateY(180deg);
    opacity: 0;
  }
  100% {
    transform: rotateY(0deg);
    opacity: 1;
  }
}
@-moz-keyframes technology-box-02 {
  0% {
    transform: rotateY(180deg);
    opacity: 0;
  }
  100% {
    transform: rotateY(0deg);
    opacity: 1;
  }
}
@-o-keyframes technology-box-02 {
  0% {
    transform: rotateY(180deg);
    opacity: 0;
  }
  100% {
    transform: rotateY(0deg);
    opacity: 1;
  }
}
@keyframes technology-box-02 {
  0% {
    transform: rotateY(180deg);
    opacity: 0;
  }
  100% {
    transform: rotateY(0deg);
    opacity: 1;
  }
}
@-webkit-keyframes technology-txt-01 {
  0% {
    top: 30%;
    left: 0px;
    margin-top: 0;
    opacity: 1;
  }
  100% {
    top: 30%;
    left: 0px;
    margin-top: 50px;
    opacity: 0;
  }
}
@-moz-keyframes technology-txt-01 {
  0% {
    top: 30%;
    left: 0px;
    margin-top: 0;
    opacity: 1;
  }
  100% {
    top: 30%;
    left: 0px;
    margin-top: 50px;
    opacity: 0;
  }
}
@-o-keyframes technology-txt-01 {
  0% {
    top: 30%;
    left: 0px;
    margin-top: 0;
    opacity: 1;
  }
  100% {
    top: 30%;
    left: 0px;
    margin-top: 50px;
    opacity: 0;
  }
}
@keyframes technology-txt-01 {
  0% {
    top: 30%;
    left: 0px;
    margin-top: 0;
    opacity: 1;
  }
  100% {
    top: 30%;
    left: 0px;
    margin-top: 50px;
    opacity: 0;
  }
}
@-webkit-keyframes technology-txt-02 {
  0% {
    top: 0;
    left: 30%;
    margin-top: 20px;
    opacity: 0;
  }
  100% {
    top: 0;
    left: 30%;
    margin-top: 0px;
    opacity: 1;
  }
}
@-moz-keyframes technology-txt-02 {
  0% {
    top: 0;
    left: 30%;
    margin-top: 20px;
    opacity: 0;
  }
  100% {
    top: 0;
    left: 30%;
    margin-top: 0px;
    opacity: 1;
  }
}
@-o-keyframes technology-txt-02 {
  0% {
    top: 0;
    left: 30%;
    margin-top: 20px;
    opacity: 0;
  }
  100% {
    top: 0;
    left: 30%;
    margin-top: 0px;
    opacity: 1;
  }
}
@keyframes technology-txt-02 {
  0% {
    top: 0;
    left: 30%;
    margin-top: 20px;
    opacity: 0;
  }
  100% {
    top: 0;
    left: 30%;
    margin-top: 0px;
    opacity: 1;
  }
}
/* ------------------------------------------------
story
------------------------------------------------ */
@-webkit-keyframes tit-story-01 {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
@-moz-keyframes tit-story-01 {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
@-o-keyframes tit-story-01 {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
@keyframes tit-story-01 {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
@-webkit-keyframes square-story-01 {
  0% {
    width: 0;
    height: 0;
  }
  50% {
    width: 100%;
    height: 0;
  }
  100% {
    width: 100%;
    height: 100%;
  }
}
@-moz-keyframes square-story-01 {
  0% {
    width: 0;
    height: 0;
  }
  50% {
    width: 100%;
    height: 0;
  }
  100% {
    width: 100%;
    height: 100%;
  }
}
@-o-keyframes square-story-01 {
  0% {
    width: 0;
    height: 0;
  }
  50% {
    width: 100%;
    height: 0;
  }
  100% {
    width: 100%;
    height: 100%;
  }
}
@keyframes square-story-01 {
  0% {
    width: 0;
    height: 0;
  }
  50% {
    width: 100%;
    height: 0;
  }
  100% {
    width: 100%;
    height: 100%;
  }
}
@-webkit-keyframes square-story-02-01 {
  0% {
    width: 0;
    height: 0;
  }
  50% {
    width: 100%;
    height: 0;
  }
  100% {
    width: 100%;
    height: 100%;
  }
}
@-moz-keyframes square-story-02-01 {
  0% {
    width: 0;
    height: 0;
  }
  50% {
    width: 100%;
    height: 0;
  }
  100% {
    width: 100%;
    height: 100%;
  }
}
@-o-keyframes square-story-02-01 {
  0% {
    width: 0;
    height: 0;
  }
  50% {
    width: 100%;
    height: 0;
  }
  100% {
    width: 100%;
    height: 100%;
  }
}
@keyframes square-story-02-01 {
  0% {
    width: 0;
    height: 0;
  }
  50% {
    width: 100%;
    height: 0;
  }
  100% {
    width: 100%;
    height: 100%;
  }
}
@-webkit-keyframes square-story-02-02 {
  0% {
    width: 0;
    height: 0;
  }
  50% {
    width: 0;
    height: 100%;
  }
  100% {
    width: 100%;
    height: 100%;
  }
}
@-moz-keyframes square-story-02-02 {
  0% {
    width: 0;
    height: 0;
  }
  50% {
    width: 0;
    height: 100%;
  }
  100% {
    width: 100%;
    height: 100%;
  }
}
@-o-keyframes square-story-02-02 {
  0% {
    width: 0;
    height: 0;
  }
  50% {
    width: 0;
    height: 100%;
  }
  100% {
    width: 100%;
    height: 100%;
  }
}
@keyframes square-story-02-02 {
  0% {
    width: 0;
    height: 0;
  }
  50% {
    width: 0;
    height: 100%;
  }
  100% {
    width: 100%;
    height: 100%;
  }
}
@-webkit-keyframes mv-story {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes mv-story {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes mv-story {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes mv-story {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes arr-story {
  0% {
    transform: translateY(-20px);
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  80% {
    transform: translateY(0px);
    opacity: 1;
  }
  100% {
    transform: translateY(0px);
    opacity: 0;
  }
}
@-moz-keyframes arr-story {
  0% {
    transform: translateY(-20px);
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  80% {
    transform: translateY(0px);
    opacity: 1;
  }
  100% {
    transform: translateY(0px);
    opacity: 0;
  }
}
@-o-keyframes arr-story {
  0% {
    transform: translateY(-20px);
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  80% {
    transform: translateY(0px);
    opacity: 1;
  }
  100% {
    transform: translateY(0px);
    opacity: 0;
  }
}
@keyframes arr-story {
  0% {
    transform: translateY(-20px);
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  80% {
    transform: translateY(0px);
    opacity: 1;
  }
  100% {
    transform: translateY(0px);
    opacity: 0;
  }
}
/*////////////////////////////////////////////////////

  ページごとの個別スタイル
  ※サイト規模によってはさらにファイルを分けること

////////////////////////////////////////////////////*/
@media print {
  #SECTION_1,
#SECTION_2,
#SECTION_3,
#SECTION_4,
#SECTION_5,
#SECTION_6 {
    page-break-inside: avoid !important;
  }
}

/* ------------------------------------------------
  トップページここから
------------------------------------------------ */
#SECTION_1 {
  background-color: #00192a;
  position: relative;
}
@media print, screen and (min-width: 1025px) {
  #SECTION_1:after {
    content: url(../img/logo02.svg);
    display: block;
    width: 540px;
    height: auto;
    position: absolute;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    margin-top: 60px;
    opacity: 0.3;
  }
  #SECTION_1.load:after {
    -webkit-animation: logo 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.5s forwards;
    -moz-animation: logo 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.5s forwards;
    -o-animation: logo 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.5s forwards;
    animation: logo 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.5s forwards;
  }
}
@media print {
  #SECTION_1:after {
    display: none;
  }
}

@-webkit-keyframes logo {
  0% {
    opacity: 0.3;
  }
  100% {
    opacity: 0;
  }
}
@-moz-keyframes logo {
  0% {
    opacity: 0.3;
  }
  100% {
    opacity: 0;
  }
}
@-o-keyframes logo {
  0% {
    opacity: 0.3;
  }
  100% {
    opacity: 0;
  }
}
@keyframes logo {
  0% {
    opacity: 0.3;
  }
  100% {
    opacity: 0;
  }
}
.mvMovie {
  width: 100%;
  height: calc(100vh - 100px);
  position: relative;
  bottom: 0;
  right: 50%;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
  z-index: 1;
  overflow: hidden;
}
@media print, screen and (min-width: 1025px) {
  .mvMovie {
    opacity: 0;
  }
}
@media only screen and (max-width: 767px) {
  .mvMovie {
    height: calc(85vh - 120px);
  }
}
.mvMovie .video {
  min-width: 100%;
  min-height: 100%;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  background: url(../../img/mv_movie_gazou.jpg);
  background-size: cover;
}
@media only screen and (max-width: 767px) {
  .mvMovie .video {
    height: 100%;
    right: inherit;
    left: 50%;
    transform: translateX(-50%);
  }
}

.box-info-onMovie .txt-message {
  box-sizing: border-box;
  width: 100%;
  padding: 20px;
  padding-left: 50px;
  padding-top: 100px;
  color: #fff;
  letter-spacing: 0.1em;
  line-height: 1.4;
  position: absolute;
  z-index: 2;
  left: 0;
  top: 0;
}
@media only screen and (max-width: 767px) {
  .box-info-onMovie .txt-message {
    padding-left: 20px;
    padding-top: 50px;
  }
}
.box-info-onMovie .txt-message .txt-message-01-en {
  font-size: calc(5rem + 0.5vw);
  letter-spacing: 3px;
  text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
  margin-bottom: 14px;
}
@media only screen and (max-width: 767px) {
  .box-info-onMovie .txt-message .txt-message-01-en {
    font-size: 9.6vw;
  }
}
.box-info-onMovie .txt-message .txt-message-01-jp {
  font-size: calc(1.4rem + 0.6vw);
  font-weight: bold;
  text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
}
.box-info-onMovie .txt-message-ptn02 {
  box-sizing: border-box;
  width: 100%;
  padding: 20px;
  padding-left: 50px;
  padding-top: 20px;
  color: #fff;
  letter-spacing: 0.1em;
  line-height: 1.4;
  position: absolute;
  z-index: 2;
  left: 0;
  top: 0;
}
.box-info-onMovie .txt-message-ptn02 .txt-message-01-en {
  font-size: 28px;
  font-size: 2.8rem;
  margin-bottom: 14px;
  text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
}
.box-info-onMovie .txt-message-ptn02 .txt-message-01-jp {
  font-weight: bold;
  text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
}
.box-info-onMovie .txt-place-01 {
  box-sizing: border-box;
  display: inline-block;
  padding: 20px;
  margin-left: 30px;
  padding-bottom: 20px;
  color: #fff;
  letter-spacing: 0.1em;
  line-height: 1.4;
  position: absolute;
  z-index: 2;
  left: 0;
  bottom: 10px;
}
@media only screen and (max-width: 767px) {
  .box-info-onMovie .txt-place-01 {
    margin-left: 0;
  }
}
.box-info-onMovie .txt-place-01 .txt-world-01 {
  text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
  margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  .box-info-onMovie .txt-place-01 .txt-world-01 {
    line-height: 0.9;
  }
}
@media only screen and (max-width: 320px) {
  .box-info-onMovie .txt-place-01 .txt-world-01 {
    line-height: 0.7;
  }
}
.box-info-onMovie .txt-place-01 .txt-world-01 .japanese {
  font-size: 26px;
  font-size: 2.6rem;
}
@media only screen and (max-width: 767px) {
  .box-info-onMovie .txt-place-01 .txt-world-01 .japanese {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 480px) {
  .box-info-onMovie .txt-place-01 .txt-world-01 .japanese {
    font-size: 4.8vw;
  }
}
.box-info-onMovie .txt-place-01 .txt-world-01 .en {
  font-size: 28px;
  font-size: 2.8rem;
}
@media only screen and (max-width: 767px) {
  .box-info-onMovie .txt-place-01 .txt-world-01 .en {
    vertical-align: middle;
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 480px) {
  .box-info-onMovie .txt-place-01 .txt-world-01 .en {
    font-size: 4.8vw;
  }
}
.box-info-onMovie .txt-place-01 .txt-caption-01 {
  text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .box-info-onMovie .txt-place-01 .txt-caption-01 {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 480px) {
  .box-info-onMovie .txt-place-01 .txt-caption-01 {
    font-size: 3.7333333333vw;
  }
}
.box-info-onMovie .txt-place-01:hover:before {
  transform: rotateX(360deg);
  opacity: 1;
}
.box-info-onMovie .txt-place-01:hover:after {
  opacity: 1;
}
.box-info-onMovie .txt-place-01:before {
  content: "";
  display: block;
  position: absolute;
  box-sizing: border-box;
  width: 30px;
  height: 30px;
  border-radius: 100%;
  border: 2px solid #fff;
  right: -20px;
  top: 50%;
  margin-top: -15px;
  opacity: 0;
  transition: 0.5s;
}
.box-info-onMovie .txt-place-01:after {
  content: "";
  display: block;
  position: absolute;
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: -5px;
  margin-top: -4px;
  margin-right: -3px;
  opacity: 0;
  transition: 0.5s;
}

#SECTION_pickup {
  background-color: #fff;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  position: relative;
  padding: 60px 0;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  #SECTION_pickup {
    padding: 30px 0;
  }
}
#SECTION_pickup:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 33%;
  height: 100%;
  background-color: #00a0dc;
}
@media only screen and (max-width: 767px) {
  #SECTION_pickup:before {
    width: 60%;
  }
}
#SECTION_pickup:after {
  content: "";
  display: block;
  position: absolute;
  bottom: calc(-160 / 1600 * 100vw);
  left: calc(-40 / 1600 * 100vw);
  width: calc(486 / 1600 * 100vw);
  height: calc(486 / 1600 * 100vw);
  background-image: url(../../img/img_shadow_rhombus.png);
  background-repeat: no-repeat;
  background-size: contain;
  overflow: hidden;
  background-color: #00a0dc;
}
@media only screen and (max-width: 767px) {
  #SECTION_pickup:after {
    width: 80vw;
    height: 80vw;
    bottom: 50%;
    left: -40vw;
    transform: translateY(50%);
  }
}
#SECTION_pickup .tit-pickup {
  color: #fff;
  z-index: 4;
  width: 20%;
}
#SECTION_pickup .tit-pickup .tit-pickup-in {
  display: inline-block;
  position: absolute;
  top: 52px;
  left: 50px;
  font-size: calc(50 / 1600 * 100vw);
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media print, screen and (min-width: 1600px) {
  #SECTION_pickup .tit-pickup .tit-pickup-in {
    font-size: 50px;
    font-size: 5rem;
  }
}
@media only screen and (max-width: 767px) {
  #SECTION_pickup .tit-pickup .tit-pickup-in {
    top: 25px;
    left: 20px;
    font-size: calc(20 / 375 * 100vw);
  }
}
#SECTION_pickup .tit-pickup .tit-pickup-in.en {
  top: 48px;
  letter-spacing: 0;
  font-size: calc(40 / 1600 * 100vw);
}
@media only screen and (max-width: 767px) {
  #SECTION_pickup .tit-pickup .tit-pickup-in.en {
    top: 22px;
    font-size: calc(20 / 375 * 100vw);
  }
}
#SECTION_pickup .sec-pickup-wrap {
  display: flex;
  z-index: 2;
  width: 80%;
}
@media only screen and (max-width: 767px) {
  #SECTION_pickup .sec-pickup-wrap {
    flex-wrap: wrap;
    justify-content: flex-end;
    margin-top: 30px;
  }
}
#SECTION_pickup .sec-pickup {
  width: 50%;
  position: relative;
}
@media only screen and (max-width: 767px) {
  #SECTION_pickup .sec-pickup {
    width: 90%;
  }
}
@media print, screen and (min-width: 1025px) {
  #SECTION_pickup .sec-pickup:hover .box-pickup img {
    -webkit-transform: scale(1.2, 1.2);
    -moz-transform: scale(1.2, 1.2);
    -ms-transform: scale(1.2, 1.2);
    -o-transform: scale(1.2, 1.2);
    transform: scale(1.2, 1.2);
  }
  #SECTION_pickup .sec-pickup:hover .box-pickup:before {
    right: 9vw;
  }
}
@media print, screen and (min-width: 768px) {
  #SECTION_pickup .sec-pickup:nth-child(odd) {
    margin-top: 60px;
  }
}
@media only screen and (max-width: 767px) {
  #SECTION_pickup .sec-pickup:nth-child(odd) {
    margin-left: 30px;
  }
}
@media print, screen and (min-width: 768px) {
  #SECTION_pickup .sec-pickup:nth-child(even) {
    margin-bottom: 60px;
  }
}
@media only screen and (max-width: 767px) {
  #SECTION_pickup .sec-pickup:nth-child(even) {
    margin-right: 30px;
  }
}
@media only screen and (max-width: 767px) {
  #SECTION_pickup .sec-pickup:nth-child(n+2) {
    margin-top: 10px;
  }
}
#SECTION_pickup .sec-pickup .sec-pickup-tit {
  position: absolute;
  display: inline-block;
  color: #fff;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
  text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.4);
}
#SECTION_pickup .sec-pickup .sec-pickup-tit .tit-in {
  position: relative;
  display: inline-block;
  text-align: center;
  font-weight: 500;
  line-height: 1.5;
}
#SECTION_pickup .sec-pickup .sec-pickup-tit .tit-in:before, #SECTION_pickup .sec-pickup .sec-pickup-tit .tit-in:after {
  content: "";
  display: block;
  position: absolute;
}
#SECTION_pickup .sec-pickup .sec-pickup-tit .tit-in:before {
  width: 40px;
  height: 40px;
  border: 2px solid #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  right: -60px;
  top: 50%;
  margin-top: -20px;
}
@media only screen and (max-width: 480px) {
  #SECTION_pickup .sec-pickup .sec-pickup-tit .tit-in:before {
    width: 30px;
    height: 30px;
    right: -40px;
    margin-top: -16px;
  }
}
#SECTION_pickup .sec-pickup .sec-pickup-tit .tit-in:after {
  width: 10px;
  height: 10px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 2px;
  border-right-width: 2px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: -40px;
  margin-top: -6px;
  margin-right: -3px;
}
@media only screen and (max-width: 480px) {
  #SECTION_pickup .sec-pickup .sec-pickup-tit .tit-in:after {
    width: 8px;
    height: 8px;
    margin-right: 12px;
  }
}
@media print, screen and (min-width: 1025px) {
  #SECTION_pickup .sec-pickup .sec-pickup-tit .tit-in .main {
    font-size: calc(36 / 1600 * 100vw);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #SECTION_pickup .sec-pickup .sec-pickup-tit .tit-in .main {
    font-size: calc(24 / 1024 * 100vw);
  }
}
@media only screen and (max-width: 767px) {
  #SECTION_pickup .sec-pickup .sec-pickup-tit .tit-in .main {
    font-size: calc(18 / 375 * 100vw);
  }
}
@media print, screen and (min-width: 1025px) {
  #SECTION_pickup .sec-pickup .sec-pickup-tit .tit-in .sub {
    font-size: calc(18 / 1600 * 100vw);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #SECTION_pickup .sec-pickup .sec-pickup-tit .tit-in .sub {
    font-size: calc(18 / 1024 * 100vw);
  }
}
@media only screen and (max-width: 767px) {
  #SECTION_pickup .sec-pickup .sec-pickup-tit .tit-in .sub {
    font-size: calc(14 / 375 * 100vw);
  }
}
#SECTION_pickup .sec-pickup .box-pickup {
  position: relative;
  overflow: hidden;
}
#SECTION_pickup .sec-pickup .box-pickup:before {
  content: "";
  display: block;
  background-color: rgba(0, 104, 175, 0.3);
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  width: 20vw;
  height: 20vw;
  top: 50%;
  right: 4vw;
  margin-top: -10vw;
  margin-left: 0;
  z-index: 2;
}
@media only screen and (max-width: 767px) {
  #SECTION_pickup .sec-pickup .box-pickup:before {
    width: 40vw;
    height: 40vw;
    margin-top: -20vw;
    margin-left: -20vw;
  }
}
#SECTION_pickup .sec-pickup .box-pickup.box-pickup01:before {
  background-color: rgba(0, 104, 175, 0.3);
}
#SECTION_pickup .sec-pickup .box-pickup.box-pickup02:before {
  background-color: rgba(0, 160, 220, 0.3);
}
#SECTION_pickup .sec-pickup .box-pickup.box-pickup02.ptn02:before {
  background-color: rgba(0, 160, 220, 0.5);
}
#SECTION_pickup .sec-pickup .box-pickup.box-pickup03:before {
  background-color: rgba(255, 255, 255, 0.3);
}
#SECTION_pickup .sec-pickup .box-pickup img {
  width: 100%;
  height: auto;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
#SECTION_pickup.effect:before {
  -webkit-transition: 0.5s 0.4s ease;
  -moz-transition: 0.5s 0.4s ease;
  -ms-transition: 0.5s 0.4s ease;
  -o-transition: 0.5s 0.4s ease;
  transition: 0.5s 0.4s ease;
  left: -33vw;
}
@media only screen and (max-width: 767px) {
  #SECTION_pickup.effect:before {
    left: -60vw;
  }
}
#SECTION_pickup.effect:after {
  -webkit-transition: 1s 0.4s ease;
  -moz-transition: 1s 0.4s ease;
  -ms-transition: 1s 0.4s ease;
  -o-transition: 1s 0.4s ease;
  transition: 1s 0.4s ease;
  transition-delay: 1s;
  opacity: 0;
  filter: alpha(opacity=0);
}
#SECTION_pickup.effect .sec-pickup {
  -webkit-transition: 1s 0.4s ease;
  -moz-transition: 1s 0.4s ease;
  -ms-transition: 1s 0.4s ease;
  -o-transition: 1s 0.4s ease;
  transition: 1s 0.4s ease;
  opacity: 0;
  filter: alpha(opacity=0);
  transition-delay: 1s;
}
#SECTION_pickup.effect.is-active:before {
  left: 0;
}
@media only screen and (max-width: 767px) {
  #SECTION_pickup.effect.is-active:before {
    left: 0;
  }
}
#SECTION_pickup.effect.is-active:after {
  opacity: 1;
  filter: alpha(opacity=100);
}
#SECTION_pickup.effect.is-active .sec-pickup {
  opacity: 1;
  filter: alpha(opacity=100);
}

#SECTION_2 {
  background-color: #00192a;
}

/* google maps */
.map-wrap {
  pointer-events: none;
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border: 2px solid transparent;
  border-radius: 100%;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
}
.map-wrap .ico-marker-01 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: rgba(227, 4, 81, 0.3);
  width: 20px;
  height: 20px;
  border-radius: 100%;
  top: -3px;
  left: -3px;
}
.map-wrap .point {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  background-color: #e30451;
  width: 14px;
  height: 14px;
  border-radius: 100%;
}
.mainimg_top_right .map-wrap .point {
  right: 25%;
  margin-right: -14px;
}
.mainimg_top_left .map-wrap .point {
  margin-right: -14px;
  left: 25%;
}

.map-project {
  transform: scale(1, 1);
  width: 800%;
  height: 200%;
  background-image: url("../img/map-image.png");
  background-size: 50% auto;
  background-repeat: repeat;
  background-position: 50% 50%;
  position: absolute;
  left: 50%;
  margin-left: -200%;
  top: -50%;
  /*.mainimg_top_right & { //パネル右側
    left: -25%;
  }
  .mainimg_top_left & { //パネル左側
    left: -75%;
  }*/
}
.map-project > div:first-child {
  background-color: rgba(255, 255, 255, 0.3) !important;
}

/* main */
.area-mv {
  display: none;
}
@media print, screen and (min-width: 1025px) {
  .area-mv {
    opacity: 0;
    display: block;
    width: 100%;
    height: calc(100vh - 60px);
    background-color: #000;
    position: relative;
    overflow: hidden;
  }
  .area-mv.headre-min {
    height: calc(100vh - 60px);
  }
}
@media print {
  .area-mv {
    display: none;
  }
}

.img-print-mv {
  display: none !important;
}
@media print {
  .img-print-mv {
    display: block !important;
    width: 100%;
    height: auto;
  }
}

.area-mv-tab {
  display: none;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .area-mv-tab {
    position: relative;
    display: block;
  }
  .area-mv-tab img {
    width: 100%;
    height: auto;
  }
}
@media print {
  .area-mv-tab {
    display: none !important;
  }
}

.area-mv-sp {
  display: none;
}
@media only screen and (max-width: 767px) {
  .area-mv-sp {
    position: relative;
    display: block;
  }
  .area-mv-sp img {
    width: 100%;
    height: auto;
  }
}
@media print {
  .area-mv-sp {
    display: none !important;
  }
}

/* swiper */
.swiper-container {
  width: 100%;
  height: 100%;
  /* swiper-button */
}
.swiper-container .swiper-button-wrap {
  position: absolute;
  width: 100%;
  top: 50%;
  margin-top: -50px;
  height: 100px;
  z-index: 1;
}
.swiper-container .swiper-button-wrap:hover .swiper-button-prev,
.swiper-container .swiper-button-wrap:hover .swiper-button-next {
  opacity: 1;
}
.swiper-container .swiper-button-wrap.hide:hover .swiper-button-prev,
.swiper-container .swiper-button-wrap.hide:hover .swiper-button-next {
  opacity: 0;
}
.swiper-container .swiper-button-prev,
.swiper-container .swiper-button-next {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  opacity: 0;
  background-image: none;
  width: 80px;
  height: 80px;
  border-top: 3px solid #b3d3e8;
  border-right: 3px solid #b3d3e8;
}
.swiper-container .swiper-button-prev {
  left: 100px !important;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
.swiper-container .swiper-button-next {
  right: 100px !important;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media print {
  .swiper-container {
    width: 100% !important;
  }
}

.swiper-pagination-progress .swiper-pagination-progressbar {
  background: #00a0dc !important;
}

.swiper-pagination-bullet-active {
  background: #00a0dc !important;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 !important;
  width: 25%;
  height: 5px;
  border-radius: 0;
}

.swiper-pagination-progress {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}

.swiper-container-tab,
.swiper-container-sp {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1;
}

/* swiper-slide */
.swiper-slide .box-mv-panel {
  /*&:after {
    @include transition();
    position: absolute;
    content: '';
    display: block;
    width: 150%; // rotate
    height: calc(150vh);
    .headre-min & {
      height: calc(100vh - 60px);
    }
  }
  &.style01 {
    &:after {
      background-color: $themaColor01;
    }
  }
  &.style02 {
    &:after {
      background-color: $themaColor02;
    }
  }
  &.style03 {
    &:after {
      background-color: $themaColor03;
    }
  }
  &.style04 {
    &:after {
      background-color: $baseColor06;
    }
  }*/
}
.swiper-slide.mainimg_top_right .box-mv-section {
  top: 0;
  right: 0;
}
.swiper-slide.mainimg_top_right .box-mv-section-in {
  padding-left: 14%;
}
.swiper-slide.mainimg_top_right .box-mv-panel {
  /*&:after {
    top: 0;
    right: 0;
  }*/
}
.swiper-slide.mainimg_top_right.wide .box-mv-section-in {
  padding-left: 0;
}
.swiper-slide.mainimg_top_right.wide .box-worldmap-01 {
  left: 75%;
  top: 60%;
}
.swiper-slide.mainimg_top_left .box-mv-section {
  top: 0;
  left: 0;
}
.swiper-slide.mainimg_top_left .box-mv-section-in {
  padding-right: 14%;
}
.swiper-slide.mainimg_top_left .box-mv-panel {
  /*&:after {
    top: 0;
    left: 0;
  }*/
}
.swiper-slide.mainimg_top_left.wide .box-mv-panel {
  right: auto;
  left: 0;
}
.swiper-slide.mainimg_top_left.wide .box-mv-section-in {
  padding-right: 0;
}
.swiper-slide.mainimg_top_left.wide .box-worldmap-01 {
  right: auto;
  top: 60%;
  left: 25%;
}
.swiper-slide.wide .box-mv-panel {
  width: 25%;
}
.swiper-slide.wide .box-mv-section-in {
  top: 20%;
}
@media print, screen and (min-width: 1025px) {
  .swiper-slide.wide .txt-message-01 {
    font-size: calc(3.5rem + 0.5vw);
    letter-spacing: 0;
  }
}
@media print, screen and (min-width: 1280px) {
  .swiper-slide.wide .txt-message-01 {
    font-size: calc(3.5rem + 1vw);
    letter-spacing: 2px;
  }
}
.swiper-slide.wide .box-worldmap-01 {
  width: 22%;
  max-width: 400px;
}
.swiper-slide:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 1024px) {
  .swiper-slide:before {
    display: none;
  }
}
.swiper-slide.bg-position-top:before {
  background-position: top center;
}
.swiper-slide.is-next.swiper-slide-prev.mainimg_top_right .box-mv-panel:after {
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  transform-origin: left bottom;
  -webkit-animation: mv-rotateOut-right-01 2s ease forwards;
  -moz-animation: mv-rotateOut-right-01 2s ease forwards;
  -o-animation: mv-rotateOut-right-01 2s ease forwards;
  animation: mv-rotateOut-right-01 2s ease forwards;
}
.swiper-slide.is-next.swiper-slide-prev.mainimg_top_right.wide .box-mv-panel:after {
  top: 0;
  right: 0;
  bottom: auto;
  left: auto;
}
.swiper-slide.is-next.swiper-slide-prev.mainimg_top_left .box-mv-panel:after {
  top: 0;
  right: 0;
  bottom: auto;
  left: auto;
  transform-origin: right top;
  -webkit-animation: mv-rotateOut-left-01 2s ease forwards;
  -moz-animation: mv-rotateOut-left-01 2s ease forwards;
  -o-animation: mv-rotateOut-left-01 2s ease forwards;
  animation: mv-rotateOut-left-01 2s ease forwards;
}
.swiper-slide.is-next.swiper-slide-prev.mainimg_top_left.wide .box-mv-panel:after {
  top: 0;
  left: 0;
  bottom: auto;
  right: auto;
}
.swiper-slide.is-next.swiper-slide-prev.mainimg_top_right.wide .box-mv-panel:after, .swiper-slide.is-next.swiper-slide-prev.mainimg_top_left.wide .box-mv-panel:after {
  -webkit-animation: mv-slideOut-01 2s ease forwards;
  -moz-animation: mv-slideOut-01 2s ease forwards;
  -o-animation: mv-slideOut-01 2s ease forwards;
  animation: mv-slideOut-01 2s ease forwards;
}
.swiper-slide.is-next.swiper-slide-prev .txt-message-01 {
  -webkit-animation: fadeOutDown-01 2s cubic-bezier(0.47, 0, 0.745, 0.715) forwards;
  -moz-animation: fadeOutDown-01 2s cubic-bezier(0.47, 0, 0.745, 0.715) forwards;
  -o-animation: fadeOutDown-01 2s cubic-bezier(0.47, 0, 0.745, 0.715) forwards;
  animation: fadeOutDown-01 2s cubic-bezier(0.47, 0, 0.745, 0.715) forwards;
}
.swiper-slide.is-next.swiper-slide-prev .map-project {
  -webkit-animation: map-scale-01 2s ease forwards;
  -moz-animation: map-scale-01 2s ease forwards;
  -o-animation: map-scale-01 2s ease forwards;
  animation: map-scale-01 2s ease forwards;
}
.swiper-slide.is-next.swiper-slide-active.mainimg_top_right .box-mv-panel:after {
  top: 0;
  left: 0;
  bottom: auto;
  right: auto;
  transform-origin: left top;
  animation: mv-rotateIn-right-01 2s ease forwards, panel-color-01 7s ease forwards;
}
.swiper-slide.is-next.swiper-slide-active.mainimg_top_left .box-mv-panel:after {
  top: auto;
  left: auto;
  bottom: 0;
  right: 0;
  transform-origin: right bottom;
  animation: mv-rotateIn-left-01 2s ease forwards, panel-color-01 7s ease forwards;
}
.swiper-slide.is-next.swiper-slide-active.mainimg_top_left.wide .box-mv-panel:after {
  top: 0;
  left: 0;
  bottom: auto;
  right: auto;
}
.swiper-slide.is-next.swiper-slide-active.mainimg_top_right.wide .box-mv-panel:after, .swiper-slide.is-next.swiper-slide-active.mainimg_top_left.wide .box-mv-panel:after {
  -webkit-animation: mv-slideIn-01 2s ease forwards;
  -moz-animation: mv-slideIn-01 2s ease forwards;
  -o-animation: mv-slideIn-01 2s ease forwards;
  animation: mv-slideIn-01 2s ease forwards;
}
.swiper-slide.is-next.swiper-slide-active .txt-message-01 {
  -webkit-animation: fadeInUp-01 1.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1.5s forwards;
  -moz-animation: fadeInUp-01 1.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1.5s forwards;
  -o-animation: fadeInUp-01 1.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1.5s forwards;
  animation: fadeInUp-01 1.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1.5s forwards;
}
.swiper-slide.is-next.swiper-slide-active:before {
  -webkit-animation: scale-01 3s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
  -moz-animation: scale-01 3s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
  -o-animation: scale-01 3s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
  animation: scale-01 3s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}
.swiper-slide.is-next .txt-message-01 {
  opacity: 0;
}
.swiper-slide.is-prev.swiper-slide-next.mainimg_top_right .box-mv-panel:after {
  top: 0;
  left: 0;
  bottom: auto;
  right: auto;
  transform-origin: left top;
  -webkit-animation: rv-mv-rotateIn-right-01 2s ease forwards;
  -moz-animation: rv-mv-rotateIn-right-01 2s ease forwards;
  -o-animation: rv-mv-rotateIn-right-01 2s ease forwards;
  animation: rv-mv-rotateIn-right-01 2s ease forwards;
}
.swiper-slide.is-prev.swiper-slide-next.mainimg_top_right.wide .box-mv-panel:after {
  right: 0;
  left: auto;
}
.swiper-slide.is-prev.swiper-slide-next.mainimg_top_left .box-mv-panel:after {
  top: auto;
  left: auto;
  bottom: 0;
  right: 0;
  transform-origin: right bottom;
  -webkit-animation: rv-mv-rotateIn-left-01 2s ease forwards;
  -moz-animation: rv-mv-rotateIn-left-01 2s ease forwards;
  -o-animation: rv-mv-rotateIn-left-01 2s ease forwards;
  animation: rv-mv-rotateIn-left-01 2s ease forwards;
}
.swiper-slide.is-prev.swiper-slide-next.mainimg_top_left.wide .box-mv-panel:after {
  top: 0;
  left: 0;
  bottom: auto;
  right: auto;
}
.swiper-slide.is-prev.swiper-slide-next.mainimg_top_right.wide .box-mv-panel:after, .swiper-slide.is-prev.swiper-slide-next.mainimg_top_left.wide .box-mv-panel:after {
  -webkit-animation: mv-slideOut-01 2s ease forwards;
  -moz-animation: mv-slideOut-01 2s ease forwards;
  -o-animation: mv-slideOut-01 2s ease forwards;
  animation: mv-slideOut-01 2s ease forwards;
}
.swiper-slide.is-prev.swiper-slide-next .txt-message-01 {
  -webkit-animation: fadeOutDown-01 0.5s cubic-bezier(0.47, 0, 0.745, 0.715) forwards;
  -moz-animation: fadeOutDown-01 0.5s cubic-bezier(0.47, 0, 0.745, 0.715) forwards;
  -o-animation: fadeOutDown-01 0.5s cubic-bezier(0.47, 0, 0.745, 0.715) forwards;
  animation: fadeOutDown-01 0.5s cubic-bezier(0.47, 0, 0.745, 0.715) forwards;
}
.swiper-slide.is-prev.swiper-slide-next .map-project {
  -webkit-animation: map-scale-01 2s ease forwards;
  -moz-animation: map-scale-01 2s ease forwards;
  -o-animation: map-scale-01 2s ease forwards;
  animation: map-scale-01 2s ease forwards;
}
.swiper-slide.is-prev.swiper-slide-active.mainimg_top_right .box-mv-panel:after {
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  transform-origin: left bottom;
  animation: rv-mv-rotateOut-right-01 2s ease forwards, panel-color-01 7s ease forwards;
}
.swiper-slide.is-prev.swiper-slide-active.mainimg_top_right.wide .box-mv-panel:after {
  top: 0;
  right: 0;
  bottom: auto;
  left: auto;
}
.swiper-slide.is-prev.swiper-slide-active.mainimg_top_left .box-mv-panel:after {
  top: 0;
  right: 0;
  bottom: auto;
  left: auto;
  transform-origin: right top;
  animation: rv-mv-rotateOut-left-01 2s ease forwards, panel-color-01 7s ease forwards;
}
.swiper-slide.is-prev.swiper-slide-active.mainimg_top_left.wide .box-mv-panel:after {
  top: 0;
  left: 0;
  bottom: auto;
  right: auto;
}
.swiper-slide.is-prev.swiper-slide-active.mainimg_top_right.wide .box-mv-panel:after, .swiper-slide.is-prev.swiper-slide-active.mainimg_top_left.wide .box-mv-panel:after {
  -webkit-animation: mv-slideIn-01 2s ease forwards;
  -moz-animation: mv-slideIn-01 2s ease forwards;
  -o-animation: mv-slideIn-01 2s ease forwards;
  animation: mv-slideIn-01 2s ease forwards;
}
.swiper-slide.is-prev.swiper-slide-active .txt-message-01 {
  -webkit-animation: fadeInUp-01 1.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1.5s forwards;
  -moz-animation: fadeInUp-01 1.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1.5s forwards;
  -o-animation: fadeInUp-01 1.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1.5s forwards;
  animation: fadeInUp-01 1.5s cubic-bezier(0.39, 0.575, 0.565, 1) 1.5s forwards;
}
.swiper-slide.is-prev.swiper-slide-active:before {
  -webkit-animation: scale-01 3s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
  -moz-animation: scale-01 3s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
  -o-animation: scale-01 3s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
  animation: scale-01 3s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}
.swiper-slide.is-prev .txt-message-01 {
  opacity: 0;
}

.swiper-slide-active .txt-message-01 {
  opacity: 1;
}
.swiper-slide-active.mainimg_top_right .box-mv-panel:after {
  -webkit-animation: panel-color-02 1.5s linear forwards;
  -moz-animation: panel-color-02 1.5s linear forwards;
  -o-animation: panel-color-02 1.5s linear forwards;
  animation: panel-color-02 1.5s linear forwards;
}
.swiper-slide-active.mainimg_top_right .ring-01 {
  -webkit-animation: circle-03 9s linear forwards;
  -moz-animation: circle-03 9s linear forwards;
  -o-animation: circle-03 9s linear forwards;
  animation: circle-03 9s linear forwards;
}
.swiper-slide-active.mainimg_top_left .box-mv-panel:after {
  -webkit-animation: panel-color-02 1.5s linear forwards;
  -moz-animation: panel-color-02 1.5s linear forwards;
  -o-animation: panel-color-02 1.5s linear forwards;
  animation: panel-color-02 1.5s linear forwards;
}
.swiper-slide-active.mainimg_top_left .ring-01 {
  -webkit-animation: circle-04 9s linear forwards;
  -moz-animation: circle-04 9s linear forwards;
  -o-animation: circle-04 9s linear forwards;
  animation: circle-04 9s linear forwards;
}

.box-mv-section {
  overflow: hidden;
  position: absolute;
  color: #fff;
  width: 100%;
  height: calc(100vh - 60px);
}
.headre-min .box-mv-section {
  height: calc(100vh - 60px);
}

.box-mv-section-in {
  display: inline-block;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  line-height: 1.2;
  position: relative;
  z-index: 1;
}

.txt-message-01 {
  opacity: 0;
  font-weight: 500;
}
@media print, screen and (min-width: 1025px) {
  .txt-message-01 {
    font-size: calc(5rem + 0.5vw);
  }
  .txt-message-01 .txt-message-01-jp {
    font-size: calc(1rem + 0.6vw);
    font-weight: bold;
    letter-spacing: 1px;
    padding-top: 15px;
  }
}
@media print, screen and (min-width: 1280px) {
  .txt-message-01 {
    font-size: calc(5.5rem + 0.5vw);
    letter-spacing: 3px;
  }
  .txt-message-01 .txt-message-01-jp {
    font-size: calc(1.4rem + 0.6vw);
  }
}
@media print, screen and (min-width: 1600px) {
  .txt-message-01 {
    font-size: calc(6rem + 1vw);
    letter-spacing: 3px;
  }
  .txt-message-01 .txt-message-01-jp {
    font-size: calc(2rem + 0.4vw);
  }
}

.box-info-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  width: 100%;
  padding: 20px;
  padding-right: 50px;
  padding-bottom: 10px;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 2;
  color: #fff;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-shadow: 0px 0px 4px rgba(0, 0, 0, 0.9);
}
.box-info-01:hover {
  color: #000;
  background-color: rgba(255, 255, 255, 0.6);
  text-shadow: 0px 0px 4px rgba(0, 0, 0, 0);
}
.box-info-01:hover .txt-project-01:before, .box-info-01:hover .txt-project-01:after {
  border-color: #000;
}
.wide .box-info-01 {
  padding-right: 30px;
}
.box-info-01 .txt-caption-01 {
  font-size: 12px;
  font-size: 1.2rem;
  padding-top: 10px;
}
.jp .box-info-01 .txt-caption-01 {
  letter-spacing: 0;
}
.box-info-01.white {
  color: #000000;
  text-shadow: 0px 0px 4px white;
}
.box-info-01.white:hover {
  color: #000;
  text-shadow: 0px 0px 4px rgba(0, 0, 0, 0);
}
.box-info-01.white .txt-project-01:before, .box-info-01.white .txt-project-01:after {
  border-color: #000;
}
.box-info-01.white .txt-caption-01 {
  font-weight: bold;
}

.txt-world-01 {
  font-size: 30px;
  font-size: 3rem;
}
.txt-world-01 .japanese {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  vertical-align: middle;
}
@media all and (-ms-high-contrast: none) {
  .txt-world-01 .japanese {
    vertical-align: bottom;
    display: inline-block;
    margin-bottom: 2px;
  }
}

.box-worldmap-01 {
  width: 22%;
  max-width: 500px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  background-image: url(../../img/timeLine-01.svg);
  background-repeat: no-repeat;
  background-position: top left;
  border-radius: 100%;
  overflow: hidden;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
}
@media print, screen and (min-width: 1280px) {
  .box-worldmap-01 {
    width: 25%;
  }
}

.ring-wp {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  height: 100%;
  overflow: hidden;
}
.mainimg_top_right .ring-wp {
  width: 50%;
}
.mainimg_top_left .ring-wp {
  width: 100%;
}
.mainimg_top_left .ring-wp:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 1px;
  border-radius: 100%;
  border-style: solid;
  border-width: 1px;
  border-color: #fb1f6b #fb1f6b transparent transparent;
  transform: rotate(45deg);
}

.ring-01 {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  position: absolute;
  top: 0;
  right: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  height: 100%;
  border-radius: 100%;
  border: 1px solid #fb1f6b;
  -webkit-backface-visibility: hidden;
  /* アニメーションが止まった時のずれを回避 */
  backface-visibility: hidden;
  /* アニメーションが止まった時のずれを回避 */
  border-top-color: transparent;
}
.mainimg_top_right .ring-01 {
  width: 200%;
  transform: rotate(45deg);
  border-right-color: transparent;
}
.mainimg_top_left .ring-01 {
  left: 1px;
  width: 100%;
  transform: rotate(-45deg);
  border-left-color: transparent;
}

.box-worldmap-01-in {
  position: relative;
}
.box-worldmap-01-in:before {
  content: "";
  display: block;
  padding-top: 100%;
}

.jp .txt-worldtime-01 {
  font-family: Roboto;
  margin-bottom: 4px;
}

.txt-project-01 {
  display: inline-block;
  position: relative;
  height: 2em;
  line-height: 1.2;
}
.jp .txt-project-01 {
  font-weight: bold;
}
.txt-project-01:before, .txt-project-01:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.txt-project-01:before {
  width: 18px;
  height: 18px;
  border: 2px solid #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  right: -26px;
  top: 1px;
}
.txt-project-01:after {
  width: 3px;
  height: 3px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 2px;
  border-right-width: 2px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  right: -19px;
  top: 8px;
}
.wide .txt-project-01:before {
  right: -20px;
}
.wide .txt-project-01:after {
  right: -13px;
}

/* elevater menu */
#area-elevater {
  position: fixed;
  margin-top: 0 !important;
  top: 42%;
  right: 0;
  z-index: 100;
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
#area-elevater.hide {
  opacity: 0;
  filter: alpha(opacity=0);
}
@media only screen and (max-width: 767px) {
  #area-elevater {
    display: none;
  }
}

#area-elevater li {
  width: 14px;
  height: 14px;
  margin: 22px 33px;
  border-width: 0;
  border-style: solid;
  border-radius: 100%;
  border-color: #b3d3e8;
  background-color: #b3d3e8;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -ms-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
  -webkit-transform: scale(0.7, 0.7);
  -moz-transform: scale(0.7, 0.7);
  -ms-transform: scale(0.7, 0.7);
  -o-transform: scale(0.7, 0.7);
  transform: scale(0.7, 0.7);
  position: relative;
}
#area-elevater li.hover, #area-elevater li.current {
  border-width: 3px;
  border-color: #0068af;
  background-color: #0068af;
  -webkit-transform: scale(1, 1);
  -moz-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  -o-transform: scale(1, 1);
  transform: scale(1, 1);
}
#area-elevater li.hover a {
  display: block;
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-animation: balloon 1s ease forwards;
  -moz-animation: balloon 1s ease forwards;
  -o-animation: balloon 1s ease forwards;
  animation: balloon 1s ease forwards;
}

#area-elevater.min li {
  margin: 22px;
}

#area-elevater li a {
  display: none;
  opacity: 0;
  filter: alpha(opacity=0);
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.5px;
  font-weight: 700;
  position: absolute;
  top: 50%;
  right: 0;
  padding-right: 22px;
  margin-top: -11px;
}
#area-elevater li a .balloon {
  white-space: nowrap;
  padding: 0 10px;
  color: #000;
  background-color: #eaeaea;
  border-radius: 14px;
  position: relative;
}

#btn-news-01 {
  width: 80px;
  height: 80px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  padding-top: 17px;
  background-color: #0068af;
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  cursor: pointer;
  position: relative;
}
.min #btn-news-01 {
  padding-top: 13px;
  width: 60px;
  height: 60px;
  font-size: 11px;
  font-size: 1.1rem;
}
#btn-news-01:after {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 2px;
  border-right-width: 2px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 5px;
}
.PC #btn-news-01:hover {
  background-color: #00a0dc;
}

.ico-news-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding-bottom: 5px;
  border-bottom: 3px solid #fff;
  position: relative;
}
.min .ico-news-01 {
  padding-bottom: 3px;
  border-width: 2px;
}
.ico-news-01:before, .ico-news-01:after {
  content: "";
  display: block;
  background-color: #fff;
  height: 3px;
  position: absolute;
  left: 0;
}
.min .ico-news-01:before, .min .ico-news-01:after {
  height: 2px;
}
.ico-news-01:before {
  width: 25px;
  top: 28px;
  top: 28px;
}
.min .ico-news-01:before {
  top: 21px;
}
.ico-news-01:after {
  width: 15px;
  top: 34px;
}
.min .ico-news-01:after {
  top: 26px;
}

@-moz-document url-prefix() {
  .ico-news-01 {
    padding-bottom: 4px;
  }
}
.news-on {
  display: none;
  width: 100%;
  color: #fff;
  background-color: #0068af;
}
.news-on a {
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  .news-on {
    position: fixed;
    z-index: 101;
    top: 100px;
    left: 0;
    height: calc(100vh - 100px);
    background-color: rgba(0, 104, 175, 0.9);
  }
}
@media only screen and (max-height: 840px) {
  .news-on {
    overflow-y: scroll;
  }
}
@media print, screen and (min-width: 768px) {
  .news-on .news-on-in {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}
@media only screen and (max-height: 840px) {
  .news-on .news-on-in {
    position: static;
    transform: none;
  }
}
@media print {
  .news-on .news-on-in {
    height: 100%;
  }
}
@media print, screen and (min-width: 1025px) {
  .news-on {
    height: calc(100vh - 60px);
    top: 60px;
  }
}
@media print {
  .news-on {
    height: 800px;
    top: 100px;
  }
}
@media only screen and (max-width: 1400px) {
  .news-on .box-list:nth-child(n+3) {
    display: none;
  }
}
@media only screen and (max-width: 1024px) {
  .news-on .line-list:nth-child(n+3) {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .news-on .box-list:nth-child(n+2),
.news-on .line-list:nth-child(n+2) {
    display: none;
  }
}

.btn-news-close {
  cursor: pointer;
}
@media print, screen and (min-width: 768px) {
  .btn-news-close {
    width: 50px;
    height: 50px;
    background-color: #fff;
    position: absolute;
    left: 0;
  }
  .btn-news-close:before, .btn-news-close:after {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #0068af;
    border-left: 2px solid #0068af;
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -5px;
  }
  .btn-news-close:before {
    margin-left: -10px;
  }
  .btn-news-close:after {
    margin-left: 0px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .btn-news-close {
    width: 60px;
    height: 60px;
    top: -90px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
  .btn-news-close {
    top: 20px;
  }
}

.box-category-wp-01,
.box-category-wp-02 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 50%;
  padding: 0 2%;
}
@media only screen and (max-width: 767px) {
  .box-category-wp-01,
.box-category-wp-02 {
    width: 100%;
    padding: 2%;
  }
}

@media only screen and (max-width: 767px) {
  .box-category-wp-01 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }
}
@media print, screen and (min-width: 768px) {
  .box-category-wp-01 {
    padding-left: 5%;
    float: left;
  }
}

@media print, screen and (min-width: 768px) {
  .box-category-wp-02 {
    padding-right: 5%;
    float: right;
  }
}
@media only screen and (max-width: 767px) {
  .box-category-wp-02 {
    margin-top: 1em;
  }
}

.box-category-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
.box-category-01:nth-child(n+2) {
  margin-top: 2%;
}
@media only screen and (max-width: 767px) {
  .box-category-wp-01 .box-category-01 {
    -ms-flex: 1;
    -moz-flex: 1;
    -webkit-flex: 1;
    flex: 1;
    padding-left: 0;
    padding-right: 2%;
    padding-bottom: 40px;
  }
  .box-category-wp-01 .box-category-01:nth-child(n+2) {
    margin: 0;
    padding-right: 0;
    padding-left: 2%;
  }
  .box-category-wp-02 .box-category-01 {
    margin-bottom: 1.5em;
    padding-bottom: 70px;
  }
}

.tit-news-01 {
  font-size: calc(3.4rem + 0.1vw);
  letter-spacing: 1px;
  line-height: 2;
  font-weight: 500;
  margin-left: 30px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
  .tit-news-01 {
    margin-left: 80px;
    margin-top: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .tit-news-01 {
    font-size: calc(2.2rem + 0.1vw);
    text-align: center;
    margin-left: 0;
    line-height: 2.6;
    background-color: #0068af;
    color: #fff;
  }
  .jp .tit-news-01 .japanese {
    font-size: calc(1.4rem + 0.1vw);
    vertical-align: baseline;
  }
}

.tit-news-02,
.tit-news-03 {
  font-size: calc(2rem + 0.1vw);
  letter-spacing: 1px;
  font-weight: 500;
}
.jp .tit-news-02 .japanese,
.jp .tit-news-03 .japanese {
  font-size: calc(1.8rem + 0.1vw);
  letter-spacing: 0;
  font-weight: normal;
  vertical-align: middle;
  padding-left: 1em;
}
@media only screen and (max-width: 1024px) {
  .jp .tit-news-02 .japanese,
.jp .tit-news-03 .japanese {
    padding-left: 0;
    font-size: calc(2rem + 0.1vw);
  }
}
@media only screen and (max-width: 767px) {
  .jp .tit-news-02 .japanese,
.jp .tit-news-03 .japanese {
    font-size: calc(1.8rem + 0.1vw);
  }
}
@media print, screen and (min-width: 768px) {
  .tit-news-02,
.tit-news-03 {
    font-size: calc(2.4rem + 0.1vw);
  }
}
@media print, screen and (min-width: 1025px) {
  .tit-news-02,
.tit-news-03 {
    font-size: calc(3.2rem + 0.1vw);
  }
}

.tit-news-03 {
  margin-bottom: 0.5em;
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}
@media print, screen and (min-width: 768px) {
  .tit-news-03 {
    border-color: #fff;
  }
}

.news-date {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 1px;
  margin-bottom: 0.3em;
  font-family: Roboto;
}

.label-wp {
  position: relative;
}

.label-sustainability-01 {
  font-size: 11px;
  font-size: 1.1rem;
  letter-spacing: 1px;
  display: inline-block;
  padding: 3px 15px;
  height: 18px;
  position: absolute;
  left: 0;
  bottom: 0;
}
.label-sustainability-01:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: 0;
  right: -20px;
  border-width: 12px 10px;
  border-style: solid;
}
.label-sustainability-01.style01 {
  background-color: #00a0dc;
}
.label-sustainability-01.style01:after {
  border-color: transparent transparent transparent #00a0dc;
}
.label-sustainability-01.style02 {
  background-color: #ff2975;
}
.label-sustainability-01.style02:after {
  border-color: transparent transparent transparent #ff2975;
}
.label-sustainability-01.style03 {
  background-color: #ffa40d;
}
.label-sustainability-01.style03:after {
  border-color: transparent transparent transparent #ffa40d;
}
.label-sustainability-01.style04 {
  background-color: #7fce39;
}
.label-sustainability-01.style04:after {
  border-color: transparent transparent transparent #7fce39;
}
.label-sustainability-01.style05 {
  background-color: #00a0dc;
}
.label-sustainability-01.style05:after {
  border-color: transparent transparent transparent #00a0dc;
}

.btn-news-all {
  font-size: 14px;
  font-size: 1.4rem;
  border: 1px solid #fff;
  background-color: rgba(255, 255, 255, 0.1);
  position: absolute;
  bottom: 0;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.btn-news-all:after {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -5px;
}
@media only screen and (max-width: 767px) {
  .btn-news-all {
    display: block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 40px;
    text-align: center;
  }
  .box-category-wp-01 .btn-news-all {
    width: 96%;
  }
  .box-category-wp-02 .btn-news-all {
    width: 50%;
    left: 50%;
    margin-left: -25%;
  }
}
@media print, screen and (min-width: 768px) {
  .btn-news-all {
    line-height: 1.4;
    padding: 0 20px;
    bottom: auto;
    top: 0;
    right: 0;
    margin-top: 17px;
  }
}
@media print, screen and (min-width: 1025px) {
  .btn-news-all {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.8;
    padding: 0 30px;
  }
  .btn-news-all:hover {
    color: #0068af;
    background-color: white;
  }
  .btn-news-all:hover:after {
    border-color: #0068af;
  }
}

@media only screen and (max-width: 767px) {
  .line-list-wp {
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  }
}

#appendBtnNews {
  position: relative;
}
@media print, screen and (min-width: 768px) {
  #appendBtnNews {
    display: none;
  }
}

.ico-btn-news {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .ico-btn-news {
    display: block;
    width: 26px;
    height: 26px;
    border: 2px solid #fff;
    border-radius: 100%;
    position: absolute;
    top: 50%;
    right: 10%;
    margin-top: -13px;
  }
  .ico-btn-news:before {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -4px;
    margin-left: -5px;
  }
}

/* section2 */
.sec-team-01 {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  width: 100%;
  background-color: #fff;
}
@media only screen and (max-width: 767px) {
  .sec-team-01 {
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column;
  }
}
.sec-team-01 .sec-team-01-in {
  background-color: rgba(0, 160, 220, 0.7);
  -ms-flex: 1;
  -moz-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  position: relative;
  overflow: hidden;
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.sec-team-01 .sec-team-01-in:first-child {
  -webkit-box-ordinal-group: 2;
  -moz-box-ordinal-group: 2;
  -ms-flex-order: 2;
  -webkit-order: 2;
  order: 2;
}
.sec-team-01 .sec-team-01-in:last-child {
  -webkit-box-ordinal-group: 1;
  -moz-box-ordinal-group: 1;
  -ms-flex-order: 1;
  -webkit-order: 1;
  order: 1;
}
.sec-team-01 .sec-team-01-in img {
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .sec-team-01 .sec-team-01-in {
    height: 60vw;
  }
}
@media print, screen and (min-width: 768px) {
  .sec-team-01 .sec-team-01-in {
    width: 50%;
  }
  .sec-team-01 .sec-team-01-in img {
    -webkit-transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1);
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  .sec-team-01 .sec-team-01-in:first-child {
    -webkit-box-ordinal-group: 1;
    -moz-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
  }
  .sec-team-01 .sec-team-01-in:last-child {
    -webkit-box-ordinal-group: 2;
    -moz-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
  }
}
@media print, screen and (min-width: 1025px) {
  .sec-team-01 .sec-team-01-in:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
  }
  .sec-team-01 .sec-team-01-in:hover img {
    -webkit-transform: scale(1.2, 1.2);
    -moz-transform: scale(1.2, 1.2);
    -ms-transform: scale(1.2, 1.2);
    -o-transform: scale(1.2, 1.2);
    transform: scale(1.2, 1.2);
  }
}

@media only screen and (max-width: 767px) {
  .box-team-01:last-child {
    display: none;
  }
}

.tit-team-01,
.tit-future-01 {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 80%;
  height: 80px;
  padding-top: 23px;
  color: #fff;
  font-size: calc(2rem + 0.3vw);
  font-weight: 500;
  text-align: center;
  position: absolute;
  z-index: 1;
}
@media only screen and (max-width: 480px) {
  .tit-team-01,
.tit-future-01 {
    padding-top: 30px;
    font-size: calc(1.4rem + 0.3vw);
  }
  .jp .tit-team-01,
.jp .tit-future-01 {
    font-size: calc(2rem + 0.3vw);
    padding-top: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tit-team-01,
.tit-future-01 {
    padding-top: 26px;
    font-size: calc(1.4rem + 0.3vw);
  }
  .jp .tit-team-01,
.jp .tit-future-01 {
    font-size: calc(2rem + 0.3vw);
    padding-top: 17px;
  }
}
@media print, screen and (min-width: 1025px) {
  .tit-team-01,
.tit-future-01 {
    font-size: 24px;
    font-size: 2.4rem;
    padding-top: 20px;
  }
  .jp .tit-team-01,
.jp .tit-future-01 {
    font-size: 26px;
    font-size: 2.6rem;
    padding-top: 15px;
  }
}
@media print, screen and (min-width: 1280px) {
  .tit-team-01,
.tit-future-01 {
    font-size: 30px;
    font-size: 3rem;
    height: 100px;
    padding-top: 25px;
  }
  .jp .tit-team-01,
.jp .tit-future-01 {
    font-size: 36px;
    font-size: 3.6rem;
    padding-top: 14px;
  }
}
@media print, screen and (min-width: 1600px) {
  .tit-team-01,
.tit-future-01 {
    letter-spacing: 2px;
  }
}
.tit-team-01 .tit-in,
.tit-future-01 .tit-in {
  position: relative;
  display: inline-block;
  text-align: center;
  margin-left: -50px;
}
.jp .tit-team-01 .tit-in,
.jp .tit-future-01 .tit-in {
  line-height: 1;
}
@media print, screen and (min-width: 1025px) {
  .jp .tit-team-01 .tit-in,
.jp .tit-future-01 .tit-in {
    line-height: 1;
  }
}
@media print, screen and (min-width: 1280px) {
  .jp .tit-team-01 .tit-in,
.jp .tit-future-01 .tit-in {
    line-height: 0.8;
  }
}
.tit-team-01 .tit-in:before, .tit-team-01 .tit-in:after,
.tit-future-01 .tit-in:before,
.tit-future-01 .tit-in:after {
  content: "";
  display: block;
  position: absolute;
}
.tit-team-01 .tit-in:before,
.tit-future-01 .tit-in:before {
  width: 40px;
  height: 40px;
  border: 2px solid #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  right: -60px;
  top: 50%;
  margin-top: -20px;
}
@media only screen and (max-width: 480px) {
  .tit-team-01 .tit-in:before,
.tit-future-01 .tit-in:before {
    width: 30px;
    height: 30px;
    right: -40px;
    margin-top: -16px;
  }
}
.tit-team-01 .tit-in:after,
.tit-future-01 .tit-in:after {
  width: 10px;
  height: 10px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 2px;
  border-right-width: 2px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: -40px;
  margin-top: -6px;
  margin-right: -3px;
}
@media only screen and (max-width: 480px) {
  .tit-team-01 .tit-in:after,
.tit-future-01 .tit-in:after {
    width: 8px;
    height: 8px;
    margin-right: 12px;
  }
}
.tit-team-01 .japanese,
.tit-future-01 .japanese {
  font-size: 14px;
  font-size: 1.4rem;
}
@media print, screen and (min-width: 1025px) {
  .tit-team-01 .japanese,
.tit-future-01 .japanese {
    font-size: 20px;
    font-size: 2rem;
  }
}

.tit-team-01 {
  background: url(../../img/img_shadow_logo01.png) #0068af top right no-repeat;
  top: 50%;
  right: -100%;
}
.is-active .tit-team-01 {
  animation: tit-team-01 1s cubic-bezier(0.075, 0.82, 0.165, 1) 1s forwards, tit-team-02 0.5s cubic-bezier(0.23, 1, 0.32, 1) 2s forwards;
}
@media only screen and (max-width: 767px) {
  .is-active .tit-team-01 {
    -webkit-animation: tit-team-03 1s cubic-bezier(0.075, 0.82, 0.165, 1) 1s forwards;
    -moz-animation: tit-team-03 1s cubic-bezier(0.075, 0.82, 0.165, 1) 1s forwards;
    -o-animation: tit-team-03 1s cubic-bezier(0.075, 0.82, 0.165, 1) 1s forwards;
    animation: tit-team-03 1s cubic-bezier(0.075, 0.82, 0.165, 1) 1s forwards;
  }
}
@media print {
  .tit-team-01 {
    width: 95%;
    right: 0;
    margin-top: -70px;
    opacity: 1;
  }
}
.tit-team-01 .caption {
  font-weight: normal;
  font-size: 14px;
  font-size: 1.4rem;
  position: absolute;
  top: -25px;
  right: 5px;
}
.tit-team-01 .japanese {
  text-align: left;
}

.tit-future-01 {
  background: url(../../img/img_shadow_logo02.png) #00a0dc top left no-repeat;
  bottom: 50%;
  left: -100%;
}
.is-active .tit-future-01 {
  animation: tit-future-01 1s cubic-bezier(0.075, 0.82, 0.165, 1) 1s forwards, tit-future-02 0.5s cubic-bezier(0.23, 1, 0.32, 1) 2s forwards;
}
@media only screen and (max-width: 767px) {
  .is-active .tit-future-01 {
    -webkit-animation: tit-future-03 1s cubic-bezier(0.075, 0.82, 0.165, 1) 1s forwards;
    -moz-animation: tit-future-03 1s cubic-bezier(0.075, 0.82, 0.165, 1) 1s forwards;
    -o-animation: tit-future-03 1s cubic-bezier(0.075, 0.82, 0.165, 1) 1s forwards;
    animation: tit-future-03 1s cubic-bezier(0.075, 0.82, 0.165, 1) 1s forwards;
  }
}
@media print {
  .tit-future-01 {
    width: 95%;
    left: 0;
    margin-bottom: -50px;
    opacity: 1;
  }
}

/* section5 */
#SECTION_5 {
  background-color: #fff;
}

.sec-technology-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 30px 15px;
}
@media print, screen and (min-width: 768px) {
  .sec-technology-01 {
    max-width: 1920px;
    margin: 0 auto;
    padding: 3%;
  }
}
@media print, screen and (min-width: 1921px) {
  .sec-technology-01 {
    padding: 50px;
  }
}
@media print {
  .sec-technology-01 {
    page-break-inside: avoid !important;
  }
}

.sec-technology-01-in {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .sec-technology-01-in {
    height: 40vw;
    margin-bottom: 10px;
  }
}
@media print, screen and (min-width: 768px) {
  .sec-technology-01-in {
    float: left;
    width: calc(50% - 15px);
    height: 425px;
  }
}
@media print, screen and (max-width: 1920px) {
  .sec-technology-01-in {
    height: calc(18.75vw + 65px);
  }
}
@media print {
  .sec-technology-01-in {
    min-height: 300px;
  }
}
@media only screen and (max-width: 767px) {
  .sec-technology-01-in:nth-child(odd) {
    background-color: #0068af;
    clear: both;
  }
  .sec-technology-01-in:nth-child(odd) .box-technology-01 {
    float: right;
    text-align: right;
  }
  .sec-technology-01-in:nth-child(odd) .box-technology-02 {
    float: left;
  }
}
@media only screen and (max-width: 767px) {
  .sec-technology-01-in:nth-child(even) {
    background-color: #00a0dc;
    clear: both;
  }
  .sec-technology-01-in:nth-child(even) .box-technology-01 {
    float: left;
  }
  .sec-technology-01-in:nth-child(even) .box-technology-02 {
    float: left;
  }
}
@media print, screen and (min-width: 768px) {
  .sec-technology-01-in:nth-child(even) {
    margin-left: 30px;
  }
}
.PC .sec-technology-01-in:first-child .box-technology-wp:hover {
  cursor: pointer;
}
.PC .sec-technology-01-in:first-child .box-technology-wp:hover .box-technology-02-in {
  opacity: 1;
  filter: alpha(opacity=100);
}
@media print, screen and (min-width: 1300px) {
  .PC .sec-technology-01-in:first-child .box-technology-wp:hover .tit-technology-txt {
    padding-top: 2%;
  }
}
@media print, screen and (min-width: 1600px) {
  .PC .sec-technology-01-in:first-child .box-technology-wp:hover .tit-technology-txt {
    padding-top: 4%;
    width: 100%;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .PC .sec-technology-01-in:first-child .box-technology-wp:hover .tit-technology-txt {
    padding-top: 2%;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    opacity: 0;
    filter: alpha(opacity=0);
  }
}
@media print, screen and (min-width: 1300px) {
  .PC .sec-technology-01-in:first-child .box-technology-wp:hover .box-technology-02-in {
    top: calc(25% + 40px);
  }
  .PC .sec-technology-01-in:first-child .box-technology-wp:hover .box-technology-02-in li {
    margin-bottom: 0.3em;
  }
}
@media print, screen and (min-width: 1600px) {
  .PC .sec-technology-01-in:first-child .box-technology-wp:hover .box-technology-02-in {
    top: calc(25% + 45px);
  }
  .PC .sec-technology-01-in:first-child .box-technology-wp:hover .box-technology-02-in li {
    margin-bottom: 0.5em;
  }
}
@media print, screen and (min-width: 1300px) {
  .PC.jp .sec-technology-01-in:first-child .box-technology-wp:hover .tit-technology-txt {
    padding-top: 9%;
    width: calc(100% - 140px);
  }
}
@media print, screen and (min-width: 1600px) {
  .PC.jp .sec-technology-01-in:first-child .box-technology-wp:hover .tit-technology-txt {
    padding-top: 4%;
  }
}
@media print, screen and (min-width: 1300px) {
  .PC.jp .sec-technology-01-in:first-child .box-technology-wp:hover .japanese {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .sec-technology-01-in:first-child .box-technology-wp .box-technology-02-in {
    top: calc(25% + 0px);
  }
}
@media print, screen and (min-width: 1300px) {
  .PC .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .tit-technology-txt, .PC .sec-technology-01-in:nth-child(3) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 4%;
  }
}
@media print, screen and (min-width: 1600px) {
  .PC .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .tit-technology-txt, .PC .sec-technology-01-in:nth-child(3) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 7%;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .PC .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .tit-technology-txt, .PC .sec-technology-01-in:nth-child(3) .box-technology-wp:hover .tit-technology-txt {
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    opacity: 0;
    filter: alpha(opacity=0);
  }
}
.PC .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .box-technology-02-in, .PC .sec-technology-01-in:nth-child(3) .box-technology-wp:hover .box-technology-02-in {
  top: calc(25% + 50px);
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .PC .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .box-technology-02-in, .PC .sec-technology-01-in:nth-child(3) .box-technology-wp:hover .box-technology-02-in {
    top: calc(25% + 15px);
  }
  .PC .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .box-technology-02-in li, .PC .sec-technology-01-in:nth-child(3) .box-technology-wp:hover .box-technology-02-in li {
    margin-bottom: 0.5em;
  }
}
@media print, screen and (min-width: 1300px) {
  .PC.jp .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .tit-technology-txt, .PC.jp .sec-technology-01-in:nth-child(3) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 11%;
  }
}
@media print, screen and (min-width: 1600px) {
  .PC.jp .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .tit-technology-txt, .PC.jp .sec-technology-01-in:nth-child(3) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 4%;
  }
}
@media print, screen and (min-width: 1921px) {
  .PC.jp .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .tit-technology-txt, .PC.jp .sec-technology-01-in:nth-child(3) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 3%;
  }
}
.PC .sec-technology-01-in:nth-child(2) .box-technology-wp:hover {
  cursor: pointer;
}
@media print, screen and (min-width: 1300px) {
  .PC .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .box-technology-02-in {
    top: calc(25% + 45px);
  }
  .PC .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .box-technology-02-in li {
    margin-bottom: 0.3em;
  }
}
@media print, screen and (min-width: 1600px) {
  .PC .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .box-technology-02-in {
    top: calc(25% + 45px);
  }
  .PC .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .box-technology-02-in li {
    margin-bottom: 0.5em;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .PC .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .box-technology-02-in {
    top: calc(25% + 15px);
  }
}
@media print, screen and (min-width: 1300px) {
  .PC .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .box-technology-02-in .tit-technology-txt {
    padding-top: 4%;
  }
}
@media print, screen and (min-width: 1600px) {
  .PC .sec-technology-01-in:nth-child(2) .box-technology-wp:hover .box-technology-02-in .tit-technology-txt {
    padding-top: 7%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .sec-technology-01-in:nth-child(2) .box-technology-02-in {
    top: calc(25% + 0px);
  }
}
@media print, screen and (min-width: 768px) {
  .sec-technology-01-in:nth-child(3), .sec-technology-01-in:nth-child(4) {
    margin-top: 30px;
  }
  .sec-technology-01-in:nth-child(3) .box-technology-01, .sec-technology-01-in:nth-child(4) .box-technology-01 {
    left: auto;
    top: auto;
    right: 0;
    bottom: 0;
  }
  .sec-technology-01-in:nth-child(3) .box-technology-02, .sec-technology-01-in:nth-child(4) .box-technology-02 {
    right: auto;
    bottom: auto;
    top: 0;
    left: 0;
  }
  .sec-technology-01-in:nth-child(3) .box-technology-01 .caption, .sec-technology-01-in:nth-child(4) .box-technology-01 .caption {
    left: auto;
    right: 0;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .PC .sec-technology-01-in:nth-child(3) .box-technology-wp:hover .box-technology-02-in {
    top: calc(25% + 15px);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .sec-technology-01-in:nth-child(3) .box-technology-wp .box-technology-02-in {
    top: calc(25% + 0px);
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .PC .sec-technology-01-in:nth-child(4) .box-technology-wp:hover .tit-technology-txt {
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    opacity: 0;
    filter: alpha(opacity=0);
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .PC .sec-technology-01-in:nth-child(4) .box-technology-wp:hover .box-technology-02-in {
    top: calc(25% + 15px);
  }
}
.sec-technology-01-in:nth-child(4) .box-technology-wp .box-technology-01 .caption {
  left: auto;
  right: 0;
}
@media print, screen and (min-width: 1300px) {
  .PC .sec-technology-01-in:nth-child(4) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 2%;
  }
}
@media print, screen and (min-width: 1600px) {
  .PC .sec-technology-01-in:nth-child(4) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 4%;
    width: 100%;
  }
}
@media print, screen and (min-width: 1921px) {
  .PC .sec-technology-01-in:nth-child(4) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 2%;
  }
}
@media print, screen and (min-width: 1300px) {
  .PC .sec-technology-01-in:nth-child(4) .box-technology-wp:hover .box-technology-02-in {
    top: calc(25% + 45px);
  }
  .PC .sec-technology-01-in:nth-child(4) .box-technology-wp:hover .box-technology-02-in li {
    margin-bottom: 0.3em;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .PC .sec-technology-01-in:nth-child(4) .box-technology-wp:hover .box-technology-02-in {
    top: calc(25% + 15px);
  }
  .PC .sec-technology-01-in:nth-child(4) .box-technology-wp:hover .box-technology-02-in li {
    margin-bottom: 0.3em;
  }
}
@media print, screen and (min-width: 1600px) {
  .PC .sec-technology-01-in:nth-child(4) .box-technology-wp:hover .box-technology-02-in {
    top: calc(25% + 45px);
  }
  .PC .sec-technology-01-in:nth-child(4) .box-technology-wp:hover .box-technology-02-in li {
    margin-bottom: 0.5em;
  }
}
.PC.jp .sec-technology-01-in:nth-child(4) .box-technology-wp:hover {
  cursor: pointer;
}
@media print, screen and (min-width: 1300px) {
  .PC.jp .sec-technology-01-in:nth-child(4) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 9%;
    width: calc(100% - 140px);
  }
}
@media print, screen and (min-width: 1600px) {
  .PC.jp .sec-technology-01-in:nth-child(4) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 4%;
  }
}
@media print, screen and (min-width: 1921px) {
  .PC.jp .sec-technology-01-in:nth-child(4) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 3%;
  }
}
@media print, screen and (min-width: 1300px) {
  .PC.jp .sec-technology-01-in:nth-child(4) .box-technology-wp:hover .japanese {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .sec-technology-01-in:nth-child(4) .box-technology-02-in {
    top: calc(25% + 0px);
  }
}
.PC .sec-technology-01-in:nth-child(5) .box-technology-wp:hover {
  cursor: pointer;
}
.PC .sec-technology-01-in:nth-child(5) .box-technology-wp:hover .box-technology-02-in {
  opacity: 1;
  filter: alpha(opacity=100);
}
@media print, screen and (min-width: 1300px) {
  .PC .sec-technology-01-in:nth-child(5) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 2%;
  }
}
@media print, screen and (min-width: 1600px) {
  .PC .sec-technology-01-in:nth-child(5) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 4%;
    width: 100%;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .PC .sec-technology-01-in:nth-child(5) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 2%;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    opacity: 0;
    filter: alpha(opacity=0);
  }
}
@media print, screen and (min-width: 1300px) {
  .PC .sec-technology-01-in:nth-child(5) .box-technology-wp:hover .box-technology-02-in {
    top: calc(25% + 40px);
  }
  .PC .sec-technology-01-in:nth-child(5) .box-technology-wp:hover .box-technology-02-in li {
    margin-bottom: 0.3em;
  }
}
@media print, screen and (min-width: 1600px) {
  .PC .sec-technology-01-in:nth-child(5) .box-technology-wp:hover .box-technology-02-in {
    top: calc(25% + 45px);
  }
  .PC .sec-technology-01-in:nth-child(5) .box-technology-wp:hover .box-technology-02-in li {
    margin-bottom: 0.5em;
  }
}
@media print, screen and (min-width: 1300px) {
  .PC.jp .sec-technology-01-in:nth-child(5) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 9%;
    width: calc(100% - 140px);
  }
}
@media print, screen and (min-width: 1600px) {
  .PC.jp .sec-technology-01-in:nth-child(5) .box-technology-wp:hover .tit-technology-txt {
    padding-top: 4%;
  }
}
@media print, screen and (min-width: 1300px) {
  .PC.jp .sec-technology-01-in:nth-child(5) .box-technology-wp:hover .japanese {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .sec-technology-01-in:nth-child(5) .box-technology-wp .box-technology-02-in {
    top: calc(25% + 0px);
  }
}
@media print {
  .sec-technology-01-in {
    page-break-inside: avoid !important;
  }
}
.sec-technology-01-in .japanese {
  letter-spacing: 0;
}

.box-technology-wp {
  position: relative;
  width: 100%;
  height: 100%;
}
@media only screen and (max-width: 767px) {
  .box-technology-wp .link-sp-tab {
    display: block;
    width: 100%;
    height: 100%;
  }
  .box-technology-wp .link-sp-tab .box-technology-01 {
    width: 40%;
    height: 100%;
  }
  .box-technology-wp .link-sp-tab .box-technology-02 {
    width: 60%;
    height: 100%;
  }
}
.PC .box-technology-wp:hover {
  cursor: pointer;
}
@media print, screen and (min-width: 1300px) {
  .PC .box-technology-wp:hover .box-technology-01 img {
    transform: translate(-50%, -50%) scale(1.2);
  }
  .PC .box-technology-wp:hover .box-technology-01:after {
    opacity: 1;
    filter: alpha(opacity=100);
  }
}
@media print, screen and (min-width: 1024px) {
  .PC .box-technology-wp:hover .box-technology-02-in {
    -webkit-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1) 0.5s;
    -moz-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1) 0.5s;
    -ms-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1) 0.5s;
    -o-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1) 0.5s;
    transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1) 0.5s;
    opacity: 1;
    filter: alpha(opacity=100);
    top: calc(25% + 40px);
  }
}
@media print, screen and (min-width: 1300px) {
  .PC .box-technology-wp:hover .box-technology-02-in {
    top: calc(25% + 60px);
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .PC .box-technology-wp:hover .box-technology-02-in {
    top: calc(25% + 15px);
  }
}
@media print, screen and (min-width: 1300px) {
  .PC .box-technology-wp:hover .btn-txt {
    bottom: -20px;
    -webkit-transition: 0.5s 0.4s ease;
    -moz-transition: 0.5s 0.4s ease;
    -ms-transition: 0.5s 0.4s ease;
    -o-transition: 0.5s 0.4s ease;
    transition: 0.5s 0.4s ease;
    opacity: 1;
    filter: alpha(opacity=100);
  }
}
@media print, screen and (min-width: 1300px) {
  .PC .box-technology-wp:hover .btn-arr {
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    opacity: 0;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .PC .box-technology-wp:hover .btn-arr {
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    opacity: 0;
  }
}
@media print, screen and (min-width: 1300px) {
  .PC .box-technology-wp:hover .tit-technology-01 {
    -webkit-transition: 1s 0.4s ease;
    -moz-transition: 1s 0.4s ease;
    -ms-transition: 1s 0.4s ease;
    -o-transition: 1s 0.4s ease;
    transition: 1s 0.4s ease;
    border-color: #fff;
  }
}
@media print, screen and (min-width: 1300px) {
  .PC .box-technology-wp:hover .tit-technology-txt {
    -webkit-transition: all 0s ease 0.5s;
    -moz-transition: all 0s ease 0.5s;
    -ms-transition: all 0s ease 0.5s;
    -o-transition: all 0s ease 0.5s;
    transition: all 0s ease 0.5s;
    font-size: calc(1.6rem + 0.1vw);
    letter-spacing: 0;
    line-height: 1.1;
    animation: technology-txt-01 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) forwards, technology-txt-02 1.5s cubic-bezier(0.23, 1, 0.32, 1) 0.5s forwards;
  }
}
.PC.jp .box-technology-wp:hover {
  cursor: pointer;
}
@media print, screen and (min-width: 1400px) {
  .PC.jp .box-technology-wp:hover .tit-technology-txt .roboto {
    display: none !important;
  }
}
@media print, screen and (min-width: 1600px) {
  .PC.jp .box-technology-wp:hover .tit-technology-txt .roboto {
    display: block !important;
  }
}
@media print, screen and (min-width: 1400px) {
  .PC.jp .box-technology-wp:hover .tit-technology-txt .japanese {
    padding-left: 20px;
    width: 100%;
  }
}
@media print, screen and (min-width: 1600px) {
  .PC.jp .box-technology-wp:hover .tit-technology-txt .japanese {
    padding-left: 0px;
  }
}

.box-technology-01,
.box-technology-02 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  opacity: 0;
}
@media print, screen and (min-width: 768px) {
  .box-technology-01,
.box-technology-02 {
    width: 53%;
    height: calc(100% - 40px);
    position: absolute;
  }
}
@media print, screen and (min-width: 1600px) {
  .box-technology-01,
.box-technology-02 {
    width: 53%;
    height: calc(100% - 50px);
  }
}
@media print {
  .box-technology-01,
.box-technology-02 {
    transform: rotateY(0deg);
    opacity: 1;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-technology-01,
.box-technology-02 {
    height: calc(100% - 10px);
  }
}

.is-active .sec-technology-01-in:nth-child(1) .box-technology-01 {
  -webkit-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
  -moz-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
  -o-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
  animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
}
.is-active .sec-technology-01-in:nth-child(1) .box-technology-02 {
  -webkit-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s forwards;
  -moz-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s forwards;
  -o-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s forwards;
  animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s forwards;
}
.is-active .sec-technology-01-in:nth-child(2) .box-technology-01 {
  -webkit-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s forwards;
  -moz-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s forwards;
  -o-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s forwards;
  animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s forwards;
}
.is-active .sec-technology-01-in:nth-child(2) .box-technology-02 {
  -webkit-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s forwards;
  -moz-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s forwards;
  -o-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s forwards;
  animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s forwards;
}
.is-active .sec-technology-01-in:nth-child(3) .box-technology-01 {
  -webkit-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s forwards;
  -moz-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s forwards;
  -o-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s forwards;
  animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s forwards;
}
.is-active .sec-technology-01-in:nth-child(3) .box-technology-02 {
  -webkit-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.75s forwards;
  -moz-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.75s forwards;
  -o-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.75s forwards;
  animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.75s forwards;
}
.is-active .sec-technology-01-in:nth-child(4) .box-technology-01 {
  -webkit-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.75s forwards;
  -moz-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.75s forwards;
  -o-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.75s forwards;
  animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.75s forwards;
}
.is-active .sec-technology-01-in:nth-child(4) .box-technology-02 {
  -webkit-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s forwards;
  -moz-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s forwards;
  -o-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s forwards;
  animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s forwards;
}
.is-active .sec-technology-01-in:nth-child(5) .box-technology-01 {
  -webkit-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s forwards;
  -moz-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s forwards;
  -o-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s forwards;
  animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s forwards;
}
.is-active .sec-technology-01-in:nth-child(5) .box-technology-02 {
  -webkit-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1.25s forwards;
  -moz-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1.25s forwards;
  -o-animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1.25s forwards;
  animation: technology-box-01 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1.25s forwards;
}
.sec-technology-01-in .box-technology-01 .caption,
.sec-technology-01-in .box-technology-02 .caption {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 70%;
  position: absolute;
  bottom: 20px;
  left: 10px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.2;
  color: #fff;
  text-shadow: 0px 0px 15px black;
  opacity: 1;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 1024px) {
  .sec-technology-01-in .box-technology-01 .caption,
.sec-technology-01-in .box-technology-02 .caption {
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1.1;
  }
}
@media only screen and (max-width: 767px) {
  .sec-technology-01-in .box-technology-01 .caption,
.sec-technology-01-in .box-technology-02 .caption {
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 5px;
  }
}

.box-technology-01 {
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .box-technology-01 {
    position: relative;
  }
}
.box-technology-01 img {
  -webkit-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  -moz-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  -ms-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  position: absolute;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  width: auto;
  height: 100%;
}
@media print, screen and (min-width: 1025px) {
  .box-technology-01 img {
    width: 100%;
    height: auto;
  }
}
@media print, screen and (min-width: 1600px) {
  .box-technology-01 img {
    width: auto;
    height: 100%;
  }
}
@media print, screen and (min-width: 768px) {
  .box-technology-01 {
    top: 0;
    left: 0;
  }
  .box-technology-01:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  .box-technology-01.style01:after {
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#00a0dc+0,00a0dc+100&0.2+0,0.5+100 */
    background: -moz-linear-gradient(-45deg, rgba(0, 160, 220, 0) 0%, rgba(0, 160, 220, 0.7) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(-45deg, rgba(0, 160, 220, 0) 0%, rgba(0, 160, 220, 0.7) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(135deg, rgba(0, 160, 220, 0) 0%, rgba(0, 160, 220, 0.7) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#3300a0dc", endColorstr="#8000a0dc",GradientType=1 );
    /* IE6-9 fallback on horizontal gradient */
  }
  .box-technology-01.style02:after {
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#00a0dc+0,00a0dc+100&0.2+0,0.5+100 */
    background: -moz-linear-gradient(-45deg, rgba(0, 104, 175, 0) 0%, rgba(0, 104, 175, 0.7) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(-45deg, rgba(0, 104, 175, 0) 0%, rgba(0, 104, 175, 0.7) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(135deg, rgba(0, 104, 175, 0) 0%, rgba(0, 104, 175, 0.7) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#3300a0dc", endColorstr="#8000a0dc",GradientType=1 );
    /* IE6-9 fallback on horizontal gradient */
  }
}

.box-technology-02 {
  color: #fff;
}
.box-technology-02 a {
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .box-technology-02 {
    position: relative;
  }
}
@media print, screen and (min-width: 768px) {
  .box-technology-02 {
    right: 0;
    bottom: 0;
  }
  .box-technology-02.style01 {
    background-color: rgba(0, 160, 220, 0.9);
  }
  .box-technology-02.style02 {
    background-color: rgba(0, 104, 175, 0.9);
  }
}

.box-technology-02-in {
  padding: 0 20px;
}
@media print, screen and (min-width: 1025px) {
  .box-technology-02-in {
    font-size: 14px;
    font-size: 1.4rem;
    opacity: 0;
    filter: alpha(opacity=0);
    position: absolute;
    top: calc(25% + 50px);
    left: 0;
  }
  .box-technology-02-in a:hover {
    text-decoration: underline;
  }
  .box-technology-02-in li {
    line-height: 1.2;
    margin-bottom: 0.5em;
  }
}
@media print, screen and (min-width: 1280px) {
  .box-technology-02-in {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .box-technology-02-in li {
    margin-bottom: 0.5em;
  }
}
@media print {
  .box-technology-02-in {
    transform: scale(0.5);
    transform-origin: 0 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-technology-02-in {
    font-size: 12px;
    font-size: 1.2rem;
    display: none;
    position: absolute;
    top: calc(25% + 50px);
    opacity: 1;
    filter: alpha(opacity=100);
    left: 0;
    padding: 0 5px;
  }
}
@media only screen and (max-width: 767px) {
  .box-technology-02-in {
    padding: 0 10px;
    display: none;
    width: 100%;
  }
  .box-technology-02-in li {
    margin: 20px 0;
  }
  .box-technology-02-in li:before, .box-technology-02-in li:after {
    border-color: #000 !important;
  }
  .box-technology-02-in li a {
    color: #000;
  }
}

.tit-technology-01 {
  letter-spacing: 2px;
  font-weight: 500;
  padding: 4%;
  border-bottom: 1px solid transparent;
}
@media print, screen and (min-width: 1025px) {
  .tit-technology-01 {
    padding: 4% 20px;
  }
}
@media print, screen and (min-width: 1280px) {
  .tit-technology-01 {
    padding: 5% 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tit-technology-01 {
    padding: 1% 4% 4% 4%;
  }
}

.tit-technology-num {
  font-size: 72px;
  font-size: 7.2rem;
  line-height: 1;
}
@media print, screen and (max-width: 1920px) {
  .tit-technology-num {
    font-size: calc(1.6rem + 3.5vw);
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .tit-technology-num {
    font-size: calc(1.6rem + 2.5vw);
  }
}
.jp .tit-technology-num {
  font-family: Roboto;
}
@media print {
  .tit-technology-num {
    font-size: 50px;
    font-size: 5rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tit-technology-num {
    font-size: calc(1.6rem + 1vw);
  }
}

.tit-technology-txt {
  letter-spacing: 1px;
  line-height: 1.2;
  padding-left: 4%;
  position: absolute;
  left: 0px;
  top: 30%;
  width: 100%;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .jp .tit-technology-txt {
    top: 20%;
  }
}
@media only screen and (max-width: 320px) {
  .tit-technology-txt {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 480px) {
  .tit-technology-txt {
    letter-spacing: 0px;
    top: 40px;
  }
}
@media print, screen and (min-width: 1025px) {
  .tit-technology-txt {
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 2px;
    padding-left: 20px;
    top: 30%;
  }
}
@media print, screen and (min-width: 1280px) {
  .tit-technology-txt {
    line-height: 1.4;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .tit-technology-txt {
    top: 24%;
  }
}
@media print, screen and (min-width: 1400px) {
  .tit-technology-txt {
    font-size: 30px;
    font-size: 3rem;
  }
}
@media print {
  .tit-technology-txt {
    transform: scale(0.7);
    transform-origin: 0 0;
  }
}
.jp .tit-technology-txt .roboto {
  display: none;
}
@media print, screen and (min-width: 1400px) {
  .jp .tit-technology-txt .roboto {
    display: block;
    line-height: 1.2;
  }
}
.tit-technology-txt .japanese {
  font-size: 18px;
  font-size: 1.8rem;
  vertical-align: middle;
  width: 100%;
  display: inline-block;
}
@media print, screen and (min-width: 1400px) {
  .tit-technology-txt .japanese {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tit-technology-txt .japanese {
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 1em;
  }
}
@media only screen and (max-width: 767px) {
  .tit-technology-txt .japanese {
    width: 100%;
  }
}

.btn-arr {
  display: block;
  width: 30px;
  height: 30px;
  border: 2px solid #fff;
  border-radius: 100%;
  position: absolute;
  right: 10px;
  bottom: 10px;
}
@media print, screen and (min-width: 1025px) {
  .btn-arr {
    width: 40px;
    height: 40px;
    right: 20px;
    bottom: 20px;
  }
  .btn-arr:hover {
    background-color: transparent !important;
  }
  .btn-arr:hover:after {
    border-color: #fff !important;
  }
}
@media print, screen and (min-width: 1280px) {
  .btn-arr {
    width: 60px;
    height: 60px;
  }
}
.btn-arr:after {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border-style: solid;
  border-width: 2px 2px 0 0;
  border-color: #fff;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  right: 12px;
  bottom: 10px;
}
@media only screen and (max-width: 767px) {
  .btn-arr:after {
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    right: 10px;
    bottom: 12px;
  }
}
@media print, screen and (min-width: 1025px) {
  .btn-arr:after {
    width: 12px;
    height: 12px;
    right: 16px;
    bottom: 12px;
  }
}
@media print, screen and (min-width: 1280px) {
  .btn-arr:after {
    right: 26px;
    bottom: 22px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-technology-wp.active .btn-arr {
    display: none;
  }
  .box-technology-wp.active .tit-technology-txt {
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
}
@media only screen and (max-width: 767px) {
  .sec-technology-01-in:nth-child(odd) .active .btn-arr:after {
    border-color: #0068af;
  }
  .sec-technology-01-in:nth-child(even) .active .btn-arr:after {
    border-color: #00a0dc;
  }

  .active .btn-arr {
    background-color: #fff;
  }
  .active .btn-arr:after {
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    bottom: 9px;
    border-color: #fff;
  }
}
.btn-txt {
  opacity: 0;
  filter: alpha(opacity=0);
  font-size: 11px;
  font-size: 1.1rem;
  color: #fff;
  text-align: center;
  width: 60px;
  position: absolute;
  right: -10px;
  bottom: -40px;
}
@media print, screen and (min-width: 1280px) {
  .btn-txt {
    right: 0px;
    bottom: -40px;
  }
}

/* section3 */
.sec-service-wp {
  display: table;
  width: 100%;
}
.box-asset-service-01 {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  overflow: hidden;
  z-index: -100;
}
.box-asset-service-01 .asset-service-01 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media only screen and (max-width: 1024px) {
  .box-asset-service-01 {
    display: none;
  }
}

.sec-service {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  padding: 10% 5%;
  color: #fff;
  letter-spacing: 0.5px;
  line-height: 1.4;
}
.sec-service:after {
  display: block;
  position: fixed;
  z-index: -100;
  left: 50%;
  top: 50%;
  margin-left: -50%;
  margin-top: -50vh;
  width: 100%;
  height: 100vh;
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  content: "";
  background-image: url(../../img/bg_img_plant_01.jpg);
}
.sec-service h1 {
  text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.8);
  font-size: calc(5rem + 2vw);
  font-weight: 500;
  letter-spacing: 2px;
  padding-top: 40px;
}
@media only screen and (max-width: 767px) {
  .jp .sec-service h1 {
    line-height: 1;
  }
}
.sec-service .effect {
  -webkit-transition: 1s 0.4s ease;
  -moz-transition: 1s 0.4s ease;
  -ms-transition: 1s 0.4s ease;
  -o-transition: 1s 0.4s ease;
  transition: 1s 0.4s ease;
  opacity: 0;
  filter: alpha(opacity=0);
  margin-top: 50px;
}
.sec-service .effect.is-active {
  opacity: 1;
  filter: alpha(opacity=100);
  margin-top: 0px;
}
@media print {
  .sec-service .effect {
    opacity: 1;
    filter: alpha(opacity=100);
    margin-top: 0px;
  }
}
.sec-service .link-btn-01 {
  background-color: rgba(255, 255, 255, 0.3);
  margin-bottom: 60px;
}
.jp .sec-service .link-btn-01 {
  font-weight: normal;
}
@media print, screen and (min-width: 1025px) {
  .sec-service .link-btn-01:hover {
    background-color: white;
  }
}
@media print {
  .sec-service {
    background-image: url(../../img/bg_img_plant_01.jpg);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
  }
  .sec-service:after {
    display: none;
  }
}

.sec-service .japanese {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.8);
}

_::-webkit-full-page-media, _:future, :root .sec-service {
  background-image: url(../../img/bg_img_plant_01.jpg);
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
}

_::-webkit-full-page-media, _:future, :root .sec-service:after {
  display: none;
}

/* section5 */
.sec-corporate {
  width: 100%;
  background-color: rgba(0, 160, 220, 0.7);
}

.box-corporate-01-wp {
  overflow: hidden;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
@media print, screen and (min-width: 768px) {
  .box-corporate-01-wp {
    width: 50%;
    float: left;
  }
}
@media only screen and (max-width: 767px) {
  .box-corporate-01-wp:first-child .box-corporate-01 {
    height: 50vw;
  }
}
@media print, screen and (min-width: 768px) {
  .box-corporate-01-wp:first-child {
    display: table;
    width: 100%;
  }
  .box-corporate-01-wp:first-child .box-corporate-01 {
    display: table-cell;
    width: 50%;
  }
  .box-corporate-01-wp:first-child .box-corporate-02:after {
    content: "";
    display: block;
    padding-top: 100%;
  }
  .box-corporate-01-wp:first-child .box-corporate-02,
.box-corporate-01-wp:first-child .box-corporate-03 {
    display: table-cell;
    width: 25%;
  }
}

.box-corporate-01,
.box-corporate-02 {
  -ms-flex: 1;
  -moz-flex: 1;
  -webkit-flex: 1;
  flex: 1;
}

.box-corporate-01 {
  -webkit-box-ordinal-group: 1;
  -moz-box-ordinal-group: 1;
  -ms-flex-order: 1;
  -webkit-order: 1;
  order: 1;
}

.box-corporate-02 {
  position: relative;
  -webkit-box-ordinal-group: 2;
  -moz-box-ordinal-group: 2;
  -ms-flex-order: 2;
  -webkit-order: 2;
  order: 2;
  background: #00a0dc url(../img/bg_top_01.png) left top repeat;
}
.box-corporate-02:before {
  content: "";
  display: block;
  width: 40vw;
  height: 40vw;
  background-color: rgba(0, 104, 175, 0.3);
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -20vw;
  margin-left: -20vw;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media print, screen and (min-width: 768px) {
  .box-corporate-02:before {
    width: 20vw;
    height: 20vw;
    left: 10px;
    margin-top: -10vw;
    margin-left: 0;
  }
}

.box-corporate-03 {
  -webkit-box-ordinal-group: 3;
  -moz-box-ordinal-group: 3;
  -ms-flex-order: 3;
  -webkit-order: 3;
  order: 3;
  overflow: hidden;
}

.box-corporate-01 img,
.box-corporate-02 img,
.box-corporate-03 img {
  width: 100%;
  height: auto;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  -webkit-transform: scale(1.1, 1.1);
  -moz-transform: scale(1.1, 1.1);
  -ms-transform: scale(1.1, 1.1);
  -o-transform: scale(1.1, 1.1);
  transform: scale(1.1, 1.1);
}

.link-corporate-01 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.link-corporate-01 .link-corporate-01-in {
  color: #fff;
  white-space: nowrap;
}
@media only screen and (max-width: 767px) {
  .link-corporate-01 .link-corporate-01-in {
    font-size: calc(1.6rem + 2vw);
  }
}
@media only screen and (max-width: 480px) {
  .link-corporate-01 .link-corporate-01-in {
    font-size: calc(1.2rem + 2vw);
  }
}
@media print, screen and (min-width: 768px) {
  .link-corporate-01 .link-corporate-01-in {
    font-size: calc(1rem + 1vw);
    font-weight: 500;
    letter-spacing: 1px;
    padding-left: 50px;
    margin-left: -50px;
    position: relative;
  }
  .link-corporate-01 .link-corporate-01-in:before, .link-corporate-01 .link-corporate-01-in:after {
    content: "";
    display: block;
    position: absolute;
  }
  .link-corporate-01 .link-corporate-01-in:before {
    width: 30px;
    height: 30px;
    border: 2px solid #fff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 100%;
    left: 10px;
    top: 50%;
    margin-top: -14px;
  }
  .link-corporate-01 .link-corporate-01-in:after {
    width: 7px;
    height: 7px;
    border-color: #fff;
    border-style: solid;
    border-width: 0;
    border-top-width: 2px;
    border-right-width: 2px;
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 50%;
    left: 30px;
    margin-top: -4px;
    margin-left: -12px;
  }
}
@media print, screen and (min-width: 1025px) {
  .link-corporate-01 .link-corporate-01-in {
    padding-left: 60px;
    margin-left: -60px;
  }
  .link-corporate-01 .link-corporate-01-in:before {
    width: 40px;
    height: 40px;
    left: 0px;
    margin-top: -20px;
  }
  .link-corporate-01 .link-corporate-01-in:after {
    width: 10px;
    height: 10px;
    left: 20px;
    margin-top: -6px;
    margin-left: -9px;
  }
}
@media print, screen and (min-width: 1280px) {
  .link-corporate-01 .link-corporate-01-in {
    margin-left: -70px;
    font-size: calc(1.3rem + 1vw);
  }
}
@media print, screen and (min-width: 1600px) {
  .link-corporate-01 .link-corporate-01-in {
    margin-left: -90px;
    font-size: calc(1.6rem + 1vw);
  }
}
.link-corporate-01 .link-corporate-01-in .japanese {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 1024px) {
  .link-corporate-01 .link-corporate-01-in .japanese {
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0em;
  }
}
@media only screen and (max-width: 767px) {
  .link-corporate-01 .link-corporate-01-in .japanese {
    text-align: center;
  }
}
.link-corporate-01 .link-corporate-01-in .roboto {
  line-height: 1.6;
}

@media only screen and (max-width: 767px) {
  .box-corporate-01-wp:nth-child(2) .box-corporate-01 {
    -webkit-box-ordinal-group: 2;
    -moz-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
  }
  .box-corporate-01-wp:nth-child(2) .box-corporate-02 {
    -webkit-box-ordinal-group: 1;
    -moz-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
  }
}
@media print, screen and (min-width: 1025px) {
  .box-corporate-01-wp:hover .box-corporate-02:before {
    margin-left: -20%;
  }
  .box-corporate-01-wp:hover .box-corporate-02 .link-corporate-01 {
    margin-left: -20%;
  }
  .box-corporate-01-wp:hover .box-corporate-01 img,
.box-corporate-01-wp:hover .box-corporate-02 img,
.box-corporate-01-wp:hover .box-corporate-03 img {
    -webkit-transform: scale(1.2, 1.2);
    -moz-transform: scale(1.2, 1.2);
    -ms-transform: scale(1.2, 1.2);
    -o-transform: scale(1.2, 1.2);
    transform: scale(1.2, 1.2);
  }
}

/* ------------------------------------------------
  IR情報
------------------------------------------------ */
.area-ir-mv-wp {
  display: table;
  width: 100%;
  height: 320px;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .area-ir-mv-wp {
    height: 38vw;
  }
}
.area-ir-mv-wp:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../../ir/img/ir_mv.jpg) 50% 45% no-repeat;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
.area-ir-mv-wp .area-ir-mv {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}
.area-ir-mv-wp .tit-ir-01 {
  color: #fff;
  text-shadow: 0px 0px 8px #000;
  letter-spacing: 2px;
  font-weight: bold;
  font-size: 40px;
  font-size: 4rem;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .jp .area-ir-mv-wp .tit-ir-01 {
    font-size: calc(2.2rem + 2vw);
  }
}

.ir_achieve .ir_achieve_box li {
  width: 49%;
  height: auto;
  margin-top: 15px;
  text-align: center;
  font-size: 16px;
  color: #00a0dc;
  border: 1px solid #00a0dc;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  background: #fff;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  height: 58px;
}
.ir_achieve .ir_achieve_box li:first-child {
  float: left;
}
.ir_achieve .ir_achieve_box li:last-child {
  float: right;
}
.ir_achieve .ir_achieve_box li a {
  display: inline-block;
  height: 58px;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .ir_achieve .ir_achieve_box li {
    margin-top: 0;
  }
}
.ir_achieve .ir_achieve_box li.active {
  background: #00a0dc;
  -webkit-transform: translateY(-15px);
  transform: translateY(-15px);
  height: 73px;
  position: relative;
  top: 0;
}
.ir_achieve .ir_achieve_box li.active a {
  height: auto;
  -webkit-transition: 0.5s 0.4s ease;
  -moz-transition: 0.5s 0.4s ease;
  -ms-transition: 0.5s 0.4s ease;
  -o-transition: 0.5s 0.4s ease;
  transition: 0.5s 0.4s ease;
}
.ir_achieve .ir_achieve_box li.active span {
  color: #fff;
  margin-top: 12px;
  top: 8px;
  font-size: 18px;
}
@media only screen and (max-width: 767px) {
  .ir_achieve .ir_achieve_box li.active span {
    font-size: 16px;
  }
}
.ir_achieve .ir_achieve_box li.active span:before {
  border-color: #fff;
  bottom: -13px;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.ir_achieve .ir_achieve_box li span {
  position: relative;
  margin-top: 12px;
  display: inline-block;
  color: #00a0dc;
}
@media only screen and (max-width: 767px) {
  .ir_achieve .ir_achieve_box li span {
    font-size: 16px;
  }
}
.ir_achieve .ir_achieve_box li span:before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 6px;
  height: 6px;
  border-color: #00a0dc;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  left: 50%;
  right: 50%;
  bottom: -10px;
}
.ir_achieve .ir_achieve_box li:hover {
  background: #00a0dc;
  color: #fff;
  cursor: pointer;
}
.ir_achieve .ir_achieve_box li:hover span {
  color: #fff;
}
.ir_achieve .ir_achieve_box li:hover span:before {
  border-color: #fff;
}
.ir_achieve .ir_achieve_box02 {
  -webkit-display: flex;
  display: flex;
}
.ir_achieve .ir_achieve_box02 li {
  float: left;
  margin-right: 1%;
  width: 32.66666666%;
  height: auto;
  margin-top: 15px;
  text-align: center;
  font-size: 16px;
  color: #00a0dc;
  border: 1px solid #00a0dc;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  background: #fff;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  height: 58px;
}
.ir_achieve .ir_achieve_box02 li:last-child {
  margin-right: 0;
}
.ir_achieve .ir_achieve_box02 li a {
  display: inline-block;
  height: 58px;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .ir_achieve .ir_achieve_box02 li {
    margin-top: 0;
  }
}
.ir_achieve .ir_achieve_box02 li.active {
  background: #00a0dc;
  -webkit-transform: translateY(-15px);
  transform: translateY(-15px);
  height: 73px;
  position: relative;
  top: 0;
}
.ir_achieve .ir_achieve_box02 li.active a {
  height: auto;
  -webkit-transition: 0.5s 0.4s ease;
  -moz-transition: 0.5s 0.4s ease;
  -ms-transition: 0.5s 0.4s ease;
  -o-transition: 0.5s 0.4s ease;
  transition: 0.5s 0.4s ease;
}
.ir_achieve .ir_achieve_box02 li.active span {
  color: #fff;
  margin-top: 12px;
  top: 8px;
  font-size: 18px;
}
@media only screen and (max-width: 767px) {
  .ir_achieve .ir_achieve_box02 li.active span {
    font-size: 16px;
    line-height: 16px;
  }
}
.ir_achieve .ir_achieve_box02 li.active span:before {
  border-color: #fff;
  bottom: -13px;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.ir_achieve .ir_achieve_box02 li span {
  position: relative;
  margin-top: 12px;
  display: inline-block;
  color: #00a0dc;
}
@media only screen and (max-width: 767px) {
  .ir_achieve .ir_achieve_box02 li span {
    font-size: 16px;
    line-height: 16px;
  }
}
.ir_achieve .ir_achieve_box02 li span:before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 6px;
  height: 6px;
  border-color: #00a0dc;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  left: 50%;
  right: 50%;
  bottom: -10px;
}
.ir_achieve .ir_achieve_box02 li:hover {
  background: #00a0dc;
  color: #fff;
  cursor: pointer;
}
.ir_achieve .ir_achieve_box02 li:hover span {
  color: #fff;
}
.ir_achieve .ir_achieve_box02 li:hover span:before {
  border-color: #fff;
}

.iframe01 {
  height: 1200px;
}
@media only screen and (max-width: 767px) {
  .iframe01 {
    height: 1700px;
  }
}

.iframe02 {
  height: 1350px;
}
@media only screen and (max-width: 767px) {
  .iframe02 {
    height: 1350px;
  }
}

.iframe03 {
  height: 700px;
}
@media only screen and (max-width: 767px) {
  .iframe03 {
    height: 700px;
  }
}

.iframe04 {
  height: 900px;
}
@media only screen and (max-width: 767px) {
  .iframe04 {
    height: 1100px;
  }
}

.ir_outer {
  background: #f5f5f5;
}

.ir_news {
  margin: 0 auto;
  text-align: center;
  padding-bottom: 40px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .ir_news {
    margin-top: -34px;
    padding-bottom: 30px;
    margin-bottom: -10px;
  }
}
.ir_news .ir_news_box {
  margin-top: 10px;
  overflow: hidden;
  width: 1200px;
  margin: 0 auto;
  position: relative;
  z-index: 100;
  top: 62px;
  height: 122px;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .ir_news .ir_news_box {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_news .ir_news_box {
    width: 98%;
    padding: 0 10px;
    display: -webkit-flex;
    display: flex;
  }
}
@media only screen and (max-width: 767px) {
  .ir_news .ir_news_box {
    width: 98%;
    padding: 0 10px;
    display: -webkit-flex;
    display: flex;
  }
}
.ir_news .ir_news_box li {
  float: left;
  width: 380px;
  height: auto;
  margin-top: 49px;
  text-align: center;
  font-size: 18px;
  color: #00a0dc;
  border: 1px solid #00a0dc;
  margin-right: 20px;
  background: #fff;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  height: 58px;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .ir_news .ir_news_box li {
    width: 32%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_news .ir_news_box li {
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}
@media only screen and (max-width: 767px) {
  .ir_news .ir_news_box li {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-right: 3%;
  }
}
.ir_news .ir_news_box li a {
  display: inline-block;
  height: 58px;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .ir_news .ir_news_box li {
    width: 100%;
  }
}
.ir_news .ir_news_box li:nth-child(2) {
  margin-right: 10px;
}
.ir_news .ir_news_box li:last-child {
  position: relative;
  z-index: 5;
  border: none;
  margin-right: 0;
  margin-top: 38px;
  padding-left: 10px;
  padding-top: 21px;
  padding-bottom: 10px;
  background: #fff;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .ir_news .ir_news_box li:last-child {
    display: none;
  }
}
.ir_news .ir_news_box li:last-child a {
  height: 50px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_news .ir_news_box li:last-child a {
    line-height: 1;
    font-size: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .ir_news .ir_news_box li:last-child {
    width: 100%;
  }
}
.ir_news .ir_news_box li:last-child:hover {
  background: #fff;
  cursor: pointer;
}
.ir_news .ir_news_box li.active {
  background: #00a0dc;
  margin-bottom: 22px;
  -webkit-transform: translateY(-30px);
  transform: translateY(-30px);
  height: 88px;
  position: relative;
  top: 0;
}
.ir_news .ir_news_box li.active a {
  height: auto;
  -webkit-transition: 0.5s 0.4s ease;
  -moz-transition: 0.5s 0.4s ease;
  -ms-transition: 0.5s 0.4s ease;
  -o-transition: 0.5s 0.4s ease;
  transition: 0.5s 0.4s ease;
}
.ir_news .ir_news_box li.active span {
  color: #fff;
  margin-top: 12px;
  top: 8px;
  font-size: 20px;
}
@media only screen and (max-width: 767px) {
  .ir_news .ir_news_box li.active span {
    font-size: 16px;
  }
}
.ir_news .ir_news_box li.active span:before {
  border-color: #fff;
  bottom: -15px;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.ir_news .ir_news_box li span {
  position: relative;
  margin-top: 12px;
  display: inline-block;
  color: #00a0dc;
}
@media only screen and (max-width: 767px) {
  .ir_news .ir_news_box li span {
    font-size: 16px;
  }
}
.ir_news .ir_news_box li span:before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 6px;
  height: 6px;
  border-color: #00a0dc;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  left: 50%;
  right: 50%;
  bottom: -10px;
}
.ir_news .ir_news_box li:hover {
  background: #00a0dc;
  color: #fff;
  cursor: pointer;
}
.ir_news .ir_news_box li:hover span {
  color: #fff;
}
.ir_news .ir_news_box li:hover span:before {
  border-color: #fff;
}
.ir_news .link-btn-03 {
  margin: 40px auto 0 auto;
}
@media only screen and (max-width: 767px) {
  .ir_news .link-btn-03 a {
    padding: 15px 0;
  }
}

.ir_sp {
  display: none;
}
@media only screen and (max-width: 767px) {
  .ir_sp {
    display: block;
    margin-top: 25px;
    padding: 0 10px;
  }
  .ir_sp a {
    padding: 15px 0;
  }
}

.link-btnbox {
  width: 1200px;
  margin: 0 auto;
  position: relative;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .link-btnbox {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .link-btnbox {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .link-btnbox {
    width: 98%;
    padding: 0 10px;
    display: -webkit-flex;
  }
}
.link-btnbox .linkbtn {
  width: 380px;
  height: 50px;
  position: absolute;
  z-index: 5;
  border: none;
  margin-right: 0;
  background: #fff;
  right: 15px;
  top: 122px;
  z-index: 101;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .link-btnbox .linkbtn {
    width: 32%;
    right: 10px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .link-btnbox .linkbtn {
    width: 30.5%;
  }
}
@media only screen and (max-width: 767px) {
  .link-btnbox .linkbtn {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .link-btnbox .linkbtn a {
    line-height: 1;
    font-size: 16px;
  }
}

.subscription-box {
  position: absolute;
  background: #fff;
  width: 100%;
  height: 84px;
  left: 80%;
  top: 100px;
  z-index: 1;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .subscription-box {
    left: 67%;
  }
}
@media only screen and (max-width: 767px) {
  .subscription-box {
    display: none;
  }
}

.ir_news_box_inner {
  margin: -22px auto 0 auto;
  padding-top: 110px;
  /*padding-left:10px;*/
  text-align: left;
}

.ir_update {
  text-align: right;
  margin-bottom: 10px;
}

.ir_library {
  padding: 0 0 0 10px;
}
@media only screen and (max-width: 767px) {
  .ir_library {
    padding: 0;
  }
}
.ir_library .ir_library_l {
  width: 160px;
  float: left;
  overflow: hidden;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .ir_library .ir_library_l {
    width: 40%;
  }
}
@media print, screen and (min-width: 1025px) {
  .ir_library .ir_library_l {
    outline: 1px solid #aeaeae;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_library .ir_library_l {
    float: none;
    margin: 0 auto;
    outline: 1px solid #aeaeae;
  }
}
.ir_library .ir_library_l img {
  width: 100%;
  height: auto;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 767px) {
  .ir_library .ir_library_l img {
    border: 1px solid #aeaeae;
  }
}
@media print, screen and (min-width: 1025px) {
  .ir_library .ir_library_l:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
  }
  .ir_library .ir_library_l:hover img {
    -webkit-transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1);
  }
}
.ir_library .ir_library_r {
  width: 56%;
  float: right;
  height: 224px;
  font-size: 14px;
  font-size: 1.4rem;
  display: table;
  vertical-align: middle;
}
@media only screen and (max-width: 767px) {
  .ir_library .ir_library_r {
    height: auto;
    margin: 20px 0;
  }
}
.ir_library .ir_library_r .inner {
  display: table-cell;
  vertical-align: middle;
}
.ir_library .ir_library_r .inner p:first-child {
  margin-bottom: 10px;
}
.ir_library .ir_library_r .inner .link-btn-03 a:after {
  left: 8px !important;
}
@media only screen and (max-width: 767px) {
  .ir_library .ir_library_r .inner .link-btn-03 a:after {
    left: 20px !important;
  }
}
.ir_library .ir_library_r .inner .link-btn-03 .ico-pdf-03 {
  width: 90%;
}
.ir_library .ir_library_r .inner.style02 {
  vertical-align: top;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_library .ir_library_r {
    width: 100%;
  }
}
.ir_library .ir_library_c {
  font-size: 14px;
  font-size: 1.4rem;
}
.ir_library .ir_library_btn_wp {
  width: 62%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_library .ir_library_btn_wp {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .ir_library .ir_library_btn_wp {
    width: 100%;
  }
}
.ir_library .ir_library_btn_wp > p {
  margin-top: 10px;
  font-size: 14px;
}
.ir_library .ir_library_btn_wp .link-btn-03 a:after {
  left: 8px !important;
}
@media only screen and (max-width: 767px) {
  .ir_library .ir_library_btn_wp .link-btn-03 a:after {
    left: 20px !important;
  }
}
.ir_library .ir_library_btn_wp .link-btn-03 .ico-pdf-03 {
  width: 90%;
}
@media only screen and (max-width: 767px) {
  .ir_library .ir_library_l {
    width: 100%;
    float: none;
    text-align: center;
  }
  .ir_library .ir_library_l img {
    width: 60%;
    height: auto;
  }
  .ir_library .ir_library_r {
    width: 100%;
    float: none;
  }
  .ir_library .ir_library_r .inner {
    margin-top: 20px;
  }
  .ir_library .ir_library_r .inner p:first-child {
    margin-bottom: 10px;
  }
}

.ir {
  width: 100%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir .boxContent {
    float: left;
    width: 25%;
    display: block;
  }
  .ir .boxContent img {
    width: 100%;
    height: auto;
  }
}

.ir_question_box {
  width: 100%;
  margin: 0 auto;
}
.ir_question_box .ir_item {
  overflow: hidden;
  border-bottom: 1px solid #eaeaea;
  padding-bottom: 10px;
  margin-bottom: 45px;
}
.ir_question_box .ir_item .ir_question {
  width: 100%;
}
.ir_question_box .ir_item .ir_question .ir_question_inner {
  width: 100%;
  clear: both;
  display: table;
}
.ir_question_box .ir_item .ir_question .ir_question_inner:first-child {
  margin-bottom: 15px;
  overflow: hidden;
}
.ir_question_box .ir_item .ir_question .ir_question_inner .ir_question_th {
  width: 8%;
  display: table-cell;
  vertical-align: top;
}
@media only screen and (max-width: 767px) {
  .ir_question_box .ir_item .ir_question .ir_question_inner .ir_question_th {
    width: 5%;
  }
}
.ir_question_box .ir_item .ir_question .ir_question_inner .ir_question_th .q_icon {
  background: #0068af;
  padding: 5px 0;
  width: 40px;
  text-align: center;
  display: inline-block;
  font-weight: bold;
  font-size: 16px;
  font-size: 1.6rem;
  color: #fff;
  vertical-align: middle;
}
@media only screen and (max-width: 767px) {
  .ir_question_box .ir_item .ir_question .ir_question_inner .ir_question_th .q_icon {
    padding: 5px 0;
    width: 40px;
  }
}
.ir_question_box .ir_item .ir_question .ir_question_inner .ir_question_th .a_icon {
  background: #00a0dc;
  padding: 6px 0 4px 2px;
  width: 38px;
  text-align: center;
  display: inline-block;
  font-size: 16px;
  font-size: 1.6rem;
  color: #fff;
  vertical-align: middle;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .ir_question_box .ir_item .ir_question .ir_question_inner .ir_question_th .a_icon {
    padding: 6px 0 4px 2px;
    width: 38px;
  }
}
.ir_question_box .ir_item .ir_question .ir_question_inner .ir_question_td {
  width: 92%;
  display: table-cell;
  vertical-align: top;
}
@media only screen and (max-width: 767px) {
  .ir_question_box .ir_item .ir_question .ir_question_inner .ir_question_td {
    width: 60%;
  }
}
@media only screen and (max-width: 480px) {
  .ir_question_box .ir_item .ir_question .ir_question_inner .ir_question_td {
    width: 50%;
  }
}
.ir_question_box .ir_item .ir_question .ir_question_inner .ir_question_td .ir_question_heading {
  padding-top: 5px;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .ir_question_box .ir_item .ir_question .ir_question_inner .ir_question_td .ir_question_heading {
    padding-top: 4px;
  }
}
.ir_question_box .ir_item .ir_question .ir_question_inner .ir_question_td .ir_question_ansar {
  padding-top: 6px;
}
@media only screen and (max-width: 767px) {
  .ir_question_box .ir_item .ir_question .ir_question_inner .ir_question_td .ir_question_ansar {
    padding-top: 8px;
  }
}

.ir_pdf_box_outer h2:nth-child(n+2) {
  margin-top: 60px;
}

.ir_pdf_box {
  width: 100%;
  display: table;
  border-bottom: 1px dashed #ccc;
}
.ir_pdf_box .ir_pdf_box_date {
  display: table-cell;
  width: 160px;
  float: left;
  padding: 20px;
  vertical-align: top;
}
@media only screen and (max-width: 767px) {
  .ir_pdf_box .ir_pdf_box_date {
    display: block;
    width: 100%;
    padding: 20px 20px 10px 0px;
  }
}
.ir_pdf_box .ir_pdf_box_file {
  display: table-cell;
  width: 685px;
  float: right;
  padding: 5px 15px 15px 20px;
  vertical-align: top;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .ir_pdf_box .ir_pdf_box_file {
    width: 68%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_pdf_box .ir_pdf_box_file {
    width: 65%;
  }
}
@media only screen and (max-width: 767px) {
  .ir_pdf_box .ir_pdf_box_file {
    display: block;
    width: 96%;
  }
}
@media print {
  .ir_pdf_box .ir_pdf_box_file {
    display: block;
    margin-top: -70px;
    width: 685px;
    float: right;
    padding: 5px 15px 15px 20px;
    vertical-align: top;
  }
}

.ir_pdf_box02 {
  width: 48%;
  border-bottom: 1px dashed #ccc;
  margin-bottom: 40px;
  float: left;
  margin-right: 36px;
}
.ir_pdf_box02:nth-child(2n) {
  margin-right: 0;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .ir_pdf_box02 {
    width: 47%;
  }
}
@media only screen and (max-width: 767px) {
  .ir_pdf_box02 {
    width: 100%;
    float: none;
    margin-right: 0;
    margin-bottom: 30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_pdf_box02 {
    width: 100%;
  }
}
.ir_pdf_box02 .ir_pdf_box_date02 {
  font-size: 20px;
  font-weight: bold;
  border-bottom: 1px solid #000;
  padding: 0 0 0px 0px;
}
@media only screen and (max-width: 767px) {
  .ir_pdf_box02 .ir_pdf_box_date02 {
    display: block;
    width: 100%;
    padding: 0;
  }
}
.ir_pdf_box02 .ir_pdf_box_file02 {
  width: 100%;
  font-size: 15px;
  padding: 20px 0 20px 0px;
}
@media only screen and (max-width: 767px) {
  .ir_pdf_box02 .ir_pdf_box_file02 {
    display: block;
    width: 100%;
    padding: 20px 0 20px 0px;
  }
}

.ir_top_wrap {
  width: 100%;
  overflow: hidden;
  display: -webkit-flex;
  display: flex;
  justify-content: space-between;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_top_wrap {
    flex-wrap: wrap;
    justify-content: center;
  }
}
@media only screen and (max-width: 767px) {
  .ir_top_wrap {
    display: block;
    margin-top: 0;
  }
}
@media print, screen and (min-width: 1025px) {
  .ir_top_wrap .ir_top_box_head {
    width: calc((100% - 80px) / 3);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_top_wrap .ir_top_box_head {
    width: calc((100% - 80px) / 2);
  }
}
@media only screen and (max-width: 767px) {
  .ir_top_wrap div.ir_top_box_head:nth-of-type(n+2) {
    margin-top: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_top_wrap div.ir_top_box_head:nth-of-type(2n) {
    margin-left: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_top_wrap div.ir_top_box_head:nth-of-type(n+3) {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 768px) {
  .ir_top_wrap .ir_top_link .link-btn-02.style06 {
    height: 80px;
  }
}
@media print, screen and (min-width: 768px) {
  .ir_top_wrap .ir_top_link .link-btn-02.style06 a {
    height: 80px;
  }
}
.ir_top_wrap div.ir_top_link:nth-of-type(n+2) {
  margin-top: 10px;
}
.ir_top_wrap .gyouseki_link a {
  height: 80px;
}
.ir_top_wrap .link-btn-05.style01.gyouseki_link .ir_top_icon01 {
  top: 20px;
}
.ir_top_wrap .toushika_link {
  position: relative;
  max-height: 120px;
  overflow: hidden;
  box-sizing: border-box;
}
.ir_top_wrap .toushika_link a {
  border: none;
  box-sizing: border-box;
}
.ir_top_wrap .toushika_link .ir_top_img_link {
  height: 100%;
  box-sizing: border-box;
}
.ir_top_wrap .toushika_link .ir_top_link_txt_toushika {
  position: absolute;
  top: 50%;
  left: 21%;
  transform: translateY(-50%);
  color: #fff;
  font-size: 24px;
  font-weight: 600;
  margin-left: 0;
  line-height: 1.5;
  text-shadow: 0px 0px 15px #000;
  box-sizing: border-box;
}
.ir_top_wrap .toushika_link a.link-04 span:before,
.ir_top_wrap .toushika_link a.link-04 span:after {
  content: none;
}
.ir_top_wrap .link-btn-05.style01.toushika_link a:after {
  content: none;
}
.ir_top_wrap .toushika_link .ir_top_img_link img {
  min-width: 100%;
  min-height: 100%;
  max-height: 120px;
}
@media print, screen and (min-width: 1025px) {
  .ir_top_wrap .toushika_link a.link-04:hover span {
    color: #fff;
  }
}
.ir_top_wrap .toushika_link a {
  height: 120px;
}

.ir_top_ir .ir_top_kabu {
  height: 200px;
  width: 100%;
  background-color: #f5f5f5;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .ir_top_ir .ir_top_kabu {
    margin-top: 40px;
  }
}
.ir_top_ir .ir_top_kabu a {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
}
.ir_top_ir .ir_top_kabu img {
  width: 100%;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_top_ir .ir_top_kabu img {
    width: 88%;
  }
}
.ir_top_ir .ir_top_kabu .MainCont .row .symbol_cont {
  font-size: 12px;
}

@media only screen and (min-width: 1025px) and (min-width: 1025px) and (max-width: 1500px) {
  .box_content_inner01.type01.ir-area-main {
    padding: 0 20px;
  }
}
@media print, screen and (min-width: 1025px) {
  .jp .box_content_inner01.type01.ir-area-main {
    padding: 0 40px;
  }
}
@media only screen and (min-width: 1025px) and (min-width: 1025px) and (max-width: 1320px) {
  .jp .box_content_inner01.type01.ir-area-main {
    padding: 0 20px;
  }
}
.ir_top_img_link {
  overflow: hidden;
  height: auto;
}

.ir_size01 {
  display: none;
}

.ir_size02 {
  display: none;
}

@media only screen and (max-width: 1400px) {
  .ir_size01 {
    display: block;
  }

  .ir_top_link_txt {
    padding-left: 30% !important;
  }
}
@media only screen and (max-width: 767px) {
  .ir_size01 {
    display: none;
  }
}
.ir_size02 {
  display: block;
}

@media only screen and (max-width: 1180px) {
  .ir_top_icon01,
.ir_top_icon02 {
    left: 5% !important;
  }

  .ir_top_link_txt {
    padding-left: 30% !important;
  }

  .link-btn-05 a:after {
    right: 5%;
  }
}
@media only screen and (max-width: 1300px) {
  .ir_top_box .ir_top_box_inner .ir_top_messege .ir_top_messege_txt span:first-child {
    font-size: 30px;
  }
  .ir_top_box .ir_top_box_inner .ir_top_messege .ir_top_messege_txt span:last-child {
    font-size: 14px;
    margin-top: -10px;
    line-height: 2;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_size01 {
    display: none;
  }

  .ir_top_link_txt {
    padding-left: 25% !important;
  }
}
.ir_tit {
  font-size: 30px !important;
  font-weight: bold !important;
  margin-bottom: 30px !important;
}
@media only screen and (max-width: 767px) {
  .ir_tit {
    margin-bottom: 15px !important;
  }
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .ir_tit {
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
  }
}

@media all and (-ms-high-contrast: none) {
  .jp .ir_tit {
    line-height: 0.8;
    padding-top: 12px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
}

.ir_tit02 {
  font-size: 27px !important;
  font-weight: bold !important;
  margin-bottom: 30px !important;
}
@media only screen and (max-width: 767px) {
  .ir_tit02 {
    margin-bottom: 15px !important;
  }
}

@media only screen and (max-width: 767px) {
  .ir_culender_table {
    display: none;
  }

  .ir_culender_table.sp {
    display: block;
  }
}
.ir_culender_table {
  width: 100%;
  border: 1px solid #d8d8d8;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.ir_culender_table th {
  background: #0068af;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  padding: 6px 0;
  width: 22.5%;
  border-right: 1px solid #d8d8d8;
}
.ir_culender_table th.bg_colod02 {
  background: #00a0dc;
}
.ir_culender_table th:first-child {
  width: 8%;
}
.ir_culender_table th:last-child {
  border-right: none;
}
.ir_culender_table td {
  border-right: 1px solid #d8d8d8;
  text-align: center;
  padding: 10px 2px;
  vertical-align: middle;
  line-height: 1.3;
}
.ir_culender_table td.bg_color {
  font-size: 13px;
  font-weight: bold;
}
.ir_culender_table td:first-child {
  background: #fbfbfb;
}
.ir_culender_table td:last-child {
  border-right: none;
}
.ir_culender_table tr:nth-child(2) td {
  background: #ebf2f8;
  padding: 8px 2px;
  text-align: center;
  width: 202px;
  font-size: 14px;
}
.ir_culender_table tr:nth-child(2) td span {
  font-weight: bold;
  font-size: 14px;
  position: relative;
  top: 2px;
  display: inline-block;
  margin-right: 5px;
}
.ir_culender_table tr:nth-child(n+3) td:nth-child(n+2) {
  border: 1px solid #d8d8d8;
  height: 25px;
  font-size: 13px;
  font-weight: bold;
  border-bottom: none;
}
.ir_culender_table tr:nth-child(n+3) td:first-child {
  font-weight: bold;
  font-size: 14px;
  background: #fbfbfb;
  border-top: 1px solid #d8d8d8 !important;
}
.ir_culender_table tr:nth-child(n+3) td {
  margin: 0 auto;
  text-align: center;
}
.ir_culender_table tr:nth-child(n+3) td .sankaku {
  background: url(/ir/img/icon@2x.jpg) no-repeat;
  width: 20px;
  height: 17px;
  display: inline-block;
  margin-bottom: 5px;
  background-size: cover;
}
@media only screen and (max-width: 767px) {
  .ir_culender_table {
    margin-bottom: 20px;
  }
}

.jp .ir_culender_table tr:nth-child(2) td span {
  font-size: 20px;
}

.ir_contact_box {
  width: 1200px;
  display: -webkit-flex;
  display: flex;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .ir_contact_box {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_contact_box {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .ir_contact_box {
    width: 100%;
    display: block;
  }
}
.ir_contact_box .ir_contact_box_inner {
  -webkit-justify-content: space-between;
  justify-content: space-between;
  width: 50%;
  float: left;
}
@media only screen and (max-width: 767px) {
  .ir_contact_box .ir_contact_box_inner {
    width: 100%;
    float: none;
    display: block;
  }
}
.ir_contact_box .ir_contact_box_inner:last-child {
  float: right;
  margin-left: 20px;
}
.ir_contact_box .ir_contact_box_inner a {
  overflow: hidden;
  height: 100px;
  width: 100%;
  display: inline-block;
  border: 1px solid #eaeaea;
  color: #fff;
  font-Size: 16px;
}
.ir_contact_box .ir_contact_box_inner a .ir_contact_box_l01,
.ir_contact_box .ir_contact_box_inner a .ir_contact_box_l02 {
  background: url(/ir/img/ir_contact.jpg) no-repeat center center;
  width: 50%;
  overflow: hidden;
  height: 100px;
  float: left;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 767px) {
  .ir_contact_box .ir_contact_box_inner a .ir_contact_box_l01,
.ir_contact_box .ir_contact_box_inner a .ir_contact_box_l02 {
    width: 30%;
  }
}
.ir_contact_box .ir_contact_box_inner a .ir_contact_box_l02 {
  background: url(/ir/img/ir_qa.jpg) no-repeat center center;
}
.ir_contact_box .ir_contact_box_inner a .ir_contact_box_r01 {
  width: 50%;
  background: #00a0dc;
  height: 100px;
  float: left;
  display: table;
  text-align: center;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 767px) {
  .ir_contact_box .ir_contact_box_inner a .ir_contact_box_r01 {
    width: 70%;
  }
}
.ir_contact_box .ir_contact_box_inner a .ir_contact_box_r01 span {
  display: table-cell;
  vertical-align: middle;
}
.ir_contact_box .ir_contact_box_inner a .ir_contact_box_r01:before, .ir_contact_box .ir_contact_box_inner a .ir_contact_box_r01:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.ir_contact_box .ir_contact_box_inner a .ir_contact_box_r01:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 24px;
  height: 24px;
  border-radius: 100%;
  border: 1px solid #fff;
  right: 10px;
  bottom: 10px;
}
.ir_contact_box .ir_contact_box_inner a .ir_contact_box_r01:after {
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  bottom: 18px;
  right: 20px;
}
@media print, screen and (min-width: 1025px) {
  .ir_contact_box .ir_contact_box_inner a:hover {
    color: #fff;
  }
  .ir_contact_box .ir_contact_box_inner a:hover .ir_contact_box_l01,
.ir_contact_box .ir_contact_box_inner a:hover .ir_contact_box_l02 {
    -webkit-transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1);
  }
  .ir_contact_box .ir_contact_box_inner a:hover .ir_contact_box_r01 {
    background: #0068af;
  }
}
.ir_contact_box .ir_contact_box_inner.en {
  width: 70%;
}
.ir_contact_box .ir_contact_box_inner.en:last-child {
  float: none;
  margin: auto;
}
.ir_contact_box .ir_contact_box_inner.en a .ir_contact_box_l01 {
  width: 50%;
  overflow: hidden;
  background-size: cover;
}

@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .ir_wrap01 {
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
  }
}
.ir_tit_box {
  position: relative;
}
.ir_tit_box p.link-01 {
  position: absolute;
  right: 0;
  top: 5px;
}

@media print, screen and (min-width: 1025px) {
  .ir_library_tit {
    margin-top: -27px;
  }
}
.ir_library_tit .boxContent {
  padding-top: 60px !important;
}
.ir_library_tit .boxContent:nth-child(n+3) {
  margin-top: 0px !important;
}

@media print, screen and (min-width: 1025px) {
  .ir_calender_table th {
    width: 18% !important;
  }

  .jp .ir_calender_table th {
    width: 17% !important;
  }
}
.ir_private_box {
  width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .ir_private_box {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_private_box {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .ir_private_box {
    width: 100%;
    display: block;
  }
}
.ir_private_box .ir_private_box_inner {
  width: 48.5%;
  margin-bottom: 45px;
  line-height: 1.2;
}
@media only screen and (max-width: 767px) {
  .ir_private_box .ir_private_box_inner {
    width: 100%;
    float: none;
    display: block;
  }
}
.ir_private_box .ir_private_box_inner .caption {
  font-size: 14px;
  margin-top: 6px;
  display: block;
}
.ir_private_box .ir_private_box_inner a {
  overflow: hidden;
  height: 100px;
  width: 100%;
  display: inline-block;
  border: 1px solid #eaeaea;
  color: #fff;
  font-Size: 16px;
}
.ir_private_box .ir_private_box_inner a .ir_private_box_l01 {
  width: 50%;
  height: 100px;
  float: left;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  position: relative;
}
.ir_private_box .ir_private_box_inner a .ir_private_box_l01 img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
@media only screen and (max-width: 767px) {
  .ir_private_box .ir_private_box_inner a .ir_private_box_l01 {
    width: 40%;
  }
}
.ir_private_box .ir_private_box_inner a .ir_private_box_r01 {
  width: 50%;
  background: #00a0dc;
  height: 100px;
  float: left;
  display: table;
  text-align: center;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 767px) {
  .ir_private_box .ir_private_box_inner a .ir_private_box_r01 {
    width: 60%;
  }
}
.ir_private_box .ir_private_box_inner a .ir_private_box_r01 span {
  display: table-cell;
  vertical-align: middle;
}
@media only screen and (max-width: 767px) {
  .ir_private_box .ir_private_box_inner a .ir_private_box_r01 span {
    padding: 0 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
}
.ir_private_box .ir_private_box_inner a .ir_private_box_r01:before, .ir_private_box .ir_private_box_inner a .ir_private_box_r01:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.ir_private_box .ir_private_box_inner a .ir_private_box_r01:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 24px;
  height: 24px;
  border-radius: 100%;
  border: 1px solid #fff;
  right: 10px;
  bottom: 10px;
}
.ir_private_box .ir_private_box_inner a .ir_private_box_r01:after {
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  bottom: 18px;
  right: 20px;
}
@media print, screen and (min-width: 1025px) {
  .ir_private_box .ir_private_box_inner a:hover {
    color: #fff;
  }
  .ir_private_box .ir_private_box_inner a:hover .ir_private_box_l01,
.ir_private_box .ir_private_box_inner a:hover .ir_private_box_l02 {
    -webkit-transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1);
  }
  .ir_private_box .ir_private_box_inner a:hover .ir_private_box_r01 {
    background: #0068af;
  }
}

/* CSSでレスポンシブ対応 IR業績 */
@media only screen and (max-width: 767px) {
  .iframe-wrapper01 {
    position: relative;
    width: 100%;
  }
  .iframe-wrapper01 iframe {
    height: 1900px;
  }

  .iframe-wrapper02 {
    position: relative;
    width: 100%;
  }
  .iframe-wrapper02 iframe {
    height: 1200px;
  }

  .iframe-wrapper03 {
    position: relative;
    width: 100%;
  }
  .iframe-wrapper03 iframe {
    height: 800px;
  }

  .iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
.accordion_btn {
  background: #EBF2F8;
  border-bottom: 1px solid #fff;
  padding: 10px 35px 10px 20px;
  position: relative;
  box-sizing: border-box;
  font-size: 18px;
  font-weight: bold;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.accordion_btn.center {
  text-align: center;
  line-height: 1.3;
}
@media only screen and (max-width: 767px) {
  .accordion_btn {
    line-height: 1.3;
  }
}

.accordion_btn:before {
  content: "";
  display: block;
  position: absolute;
  left: auto;
  bottom: auto;
  right: 20px;
  top: 50%;
  width: 13px;
  height: 3px;
  margin-top: -3px;
  background-color: #333;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}

.accordion_btn:after {
  content: "";
  display: block;
  position: absolute;
  left: auto;
  bottom: auto;
  right: 25px;
  top: 50%;
  width: 3px;
  height: 13px;
  margin-top: -5px;
  background-color: #333;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}

.accordion_btn:before {
  -webkit-transform: translateY(3px);
  -ms-transform: translateY(3px);
  -o-transform: translateY(3px);
  transform: translateY(3px);
}

.accordion_btn.open:before {
  -webkit-transform: translateY(0) rotate(180deg);
  -ms-transform: translateY(0) rotate(180deg);
  transform: translateY(0) rotate(180deg);
}

.accordion_btn.open:after {
  display: none;
}

.accordion_btn:hover {
  cursor: pointer;
}

.accordion_area {
  display: none;
  padding: 30px 0 0px 0;
}

.accordion_area > p,
.accordion_area > ul,
.accordion_area > ol {
  margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
  .accordion_btn:before {
    right: 10px;
  }

  .accordion_btn:after {
    right: 15px;
  }
}
.ir_plan_allow {
  width: 100%;
  height: 25px;
  margin: 20px auto 40px auto;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .ir_plan_allow {
    margin: 20px auto 30px auto;
  }
}
.ir_plan_allow:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.ir_plan_allow:after {
  width: 30px;
  height: 30px;
  border-top: 7px solid #00a0dc;
  border-right: 7px solid #00a0dc;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  margin: auto;
}
@media only screen and (max-width: 767px) {
  .ir_plan_allow:after {
    width: 25px;
    height: 25px;
  }
}

.ir_plan_Emphasis {
  font-weight: bold;
  font-size: 24px;
  font-size: 2.4rem;
}

.ir_plan_tit01 {
  width: 100%;
  height: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  background: #00a0dc;
  padding: 12px 20px;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  margin-bottom: 25px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_tit01 {
    line-height: 1.3;
  }
}

.ir_plan_center {
  text-align: center;
}
.ir_plan_center .en a {
  line-height: 1.3;
}

.ir_plan_top {
  width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.ir_plan_top .ir_plan_top_inne {
  width: 48%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_top .ir_plan_top_inne {
    width: 100%;
  }
}
.ir_plan_top .ir_plan_top_inne:first-child {
  border: 1px solid #00a0dc;
}
.ir_plan_top .ir_plan_top_inne:first-child .ir_plan_tit02 {
  background: #00a0dc;
  color: #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 5px 20px 3px 20px;
  margin-bottom: 20px;
}
.ir_plan_top .ir_plan_top_inne:first-child .ir_plan_tit02.en {
  font-size: 20px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_top .ir_plan_top_inne:first-child {
    margin-bottom: 20px;
  }
}
.ir_plan_top .ir_plan_top_inne:last-child {
  border: 1px solid #0068af;
}
.ir_plan_top .ir_plan_top_inne:last-child .ir_plan_tit02 {
  background: #0068af;
  color: #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 5px 20px 3px 20px;
  margin-bottom: 20px;
}
.ir_plan_top .ir_plan_top_inne:last-child .ir_plan_tit02.en {
  font-size: 20px;
}

.ir_plan_top_pdf {
  text-align: center;
  margin-top: 60px;
}
.ir_plan_top_pdf a {
  line-height: 1.4;
}
@media print, screen and (min-width: 1025px) {
  .ir_plan_top_pdf a {
    width: 600px !important;
  }
}
@media only screen and (max-width: 767px) {
  .ir_plan_top_pdf a {
    width: 100% !important;
  }
}
.ir_plan_top_pdf.style02 {
  background: #fff;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  .ir_plan_top_pdf.style02 {
    width: 100%;
  }
}
.ir_plan_top_pdf.style02 p {
  display: block;
  width: 30%;
  float: left;
  margin-right: 2%;
}
.ir_plan_top_pdf.style02 p:last-child {
  margin-right: 0;
}
@media only screen and (max-width: 767px) {
  .ir_plan_top_pdf.style02 p {
    float: none;
    width: 100%;
    margin: 0;
    margin-bottom: 2%;
  }
}

.ir_plan_top_pdf02 {
  text-align: center;
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_top_pdf02 {
    margin-top: 20px;
  }
}
.ir_plan_top_pdf02 a {
  width: 600px !important;
  line-height: 1.4;
}
@media only screen and (max-width: 767px) {
  .ir_plan_top_pdf02 a {
    width: 100% !important;
  }
}
.ir_plan_top_pdf02.en a {
  width: 700px !important;
  line-height: 1.4;
}
@media only screen and (max-width: 767px) {
  .ir_plan_top_pdf02.en a {
    width: 100% !important;
  }
}

.ico_pdf:after {
  content: " ";
  width: 44px;
  height: 16px;
  display: inline-block;
  background: url(/projects/img/icon_pdf.png) no-repeat;
  background-size: contain;
  margin-left: 5px;
}

a:hover .ico_pdf:after {
  background: url(/projects/img/icon_pdf_on.png) no-repeat;
  background-size: contain;
}

.ir_plan_lower {
  width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.ir_plan_lower .ir_plan_lower_inne {
  width: 48%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #0068af;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower .ir_plan_lower_inne {
    width: 100%;
  }
  .ir_plan_lower .ir_plan_lower_inne:first-child {
    margin-bottom: 20px;
  }
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_tit02 {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  height: 50px;
  padding: 14px 0 0 20px;
  font-size: 20px;
  font-weight: normal;
  background: #0068af;
  color: #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 0;
  position: relative;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_tit02:before, .ir_plan_lower .ir_plan_lower_inne .ir_plan_tit02:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_tit02:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 30px;
  height: 30px;
  border-radius: 100%;
  border: 2px solid #fff;
  right: 20px;
  top: 50%;
  margin-top: -15px;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_tit02:after {
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: 35px;
  margin-top: -4px;
  margin-right: -3px;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_tit03 {
  font-size: 16px;
  font-weight: bold;
  color: #000;
  padding: 15px 10px 10px 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 0;
}
@media print, screen and (min-width: 768px) {
  .ir_plan_lower .ir_plan_lower_inne .ir_plan_tit03.en {
    margin-bottom: 24px;
  }
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj {
  padding: 0 15px 10px 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li {
  margin-bottom: 10px;
  color: #0068af;
  font-weight: bold;
  color: #0068af;
  position: relative;
  display: block;
  width: 100%;
  font-size: 15px;
  color: #000;
  line-height: 2;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li {
    font-size: 14px;
  }
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li {
    font-size: 14px;
  }
}
@media print, screen and (min-width: 1025px) {
  .ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li:hover {
    background: #0068af;
    outline: 1px solid #0068af;
  }
  .ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li:hover a {
    color: #fff;
  }
  .ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li:hover a:before {
    border: 2px solid #fff;
  }
  .ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li:hover a:after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
  }
  .ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li:hover span.number {
    color: #0068af;
    background: #fff;
    outline: 1px solid #0068af;
  }
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li a {
  color: #0068af;
  display: inline-block;
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 10;
  padding-top: 4px;
  display: flex;
  align-items: center;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li a span:last-child {
  width: 80%;
  line-height: 1.2;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li a span:last-child {
    width: 74%;
  }
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li a span.number {
  display: inline-block;
  background: #0068af;
  padding: 5px 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  color: #fff;
  margin-right: 10px;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  margin-top: -4px;
  float: left;
}
@media all and (-ms-high-contrast: none) {
  .ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li a span.number {
    padding: 4px 10px 0px 10px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li a span.number {
    float: left;
  }
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li a span.number {
    float: left;
    margin-bottom: 1px;
  }
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li a:before, .ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li a:after {
  content: "";
  display: inline-block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li a:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 25px;
  height: 25px;
  border-radius: 100%;
  border: 2px solid #0068af;
  right: 5px;
  top: 0;
  margin-top: 6px;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj li a:after {
  width: 5px;
  height: 5px;
  border-top: 2px solid #0068af;
  border-right: 2px solid #0068af;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 0;
  right: 17px;
  margin-top: 15px;
  margin-right: -2px;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en {
  line-height: 1.1;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en .spXS {
  display: none;
}
@media only screen and (max-width: 320px) {
  .ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en .spXS {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en {
    padding: 0 8px 10px 8px;
  }
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li {
  margin-top: 0;
  margin-bottom: 15px;
  font-size: 18px;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li a {
  display: flex;
  align-items: center;
  line-height: 1.1;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li a span.number {
  padding: 2px 12px;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li a span.number span:last-child {
  width: 80%;
  margin-right: 40px;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li:last-child {
  margin-bottom: 5px;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li:first-child {
  margin-top: 5px;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li.type01 {
  line-height: 0;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li.type01 a {
  line-height: 1.1;
  margin: 3px 0 0 0;
  padding: 0;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li.type01 a:before {
  margin-top: 7px;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li.type01 a:after {
  margin-top: 16px;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li.type01 a span.number {
  margin: 0px 10px 0 0;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li a {
  line-height: 1.7;
  padding: 7px 0 0px 0;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li a:before {
  margin-top: 10px;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li a:after {
  margin-top: 20px;
}
.ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li a span:first-child {
  line-height: 2.3;
  margin-top: -7px;
}
@media only screen and (max-width: 320px) {
  .ir_plan_lower .ir_plan_lower_inne .ir_plan_lower_obj.en li a span:first-child {
    margin-bottom: 20px;
  }
}
@media print, screen and (min-width: 1025px) {
  .ir_plan_lower .ir_plan_lower_inne a:hover .ir_plan_tit02 {
    color: #0068af;
    background: #fff;
    border-bottom: 1px solid #0068af;
  }
  .ir_plan_lower .ir_plan_lower_inne a:hover .ir_plan_tit02:after {
    border-top: 2px solid #0068af;
    border-right: 2px solid #0068af;
  }
  .ir_plan_lower .ir_plan_lower_inne a:hover .ir_plan_tit02:before {
    border: 2px solid #0068af;
  }
}
.ir_plan_lower .lower_box {
  width: 32.5%;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower .lower_box {
    width: 100%;
    margin-bottom: 20px;
  }
  .ir_plan_lower .lower_box:last-child {
    margin-bottom: 0;
  }
}
.ir_plan_lower .lower_box .link-btn-02.en {
  font-size: 20px;
}
.ir_plan_lower .lower_box .link-btn-02.en a {
  padding: 16px 0;
}
.ir_plan_lower .lower_box .link-btn-02.en a span {
  margin-right: 42px;
}
.ir_plan_lower .lower_box .link-btn-02.en_align {
  line-height: 1.1;
}
.ir_plan_lower .lower_box .link-btn-02.en_align a span {
  margin-right: 42px;
}

.ir_plan_lower_tab {
  background: #f5f5f5;
  width: 100%;
  height: auto;
  padding: 0 10px 20px 10px;
  margin-top: 37px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.ir_plan_lower_tab .ir_plan_lower_box {
  overflow: hidden;
  width: 100%;
  margin: 12px auto 0 auto;
  position: relative;
  top: -22px;
  z-index: 100;
  height: 90px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.ir_plan_lower_tab .ir_plan_lower_box.en {
  top: -9px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box {
    height: auto;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(1) {
  border: 1px solid #ffa40d;
  color: #ffa40d;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(1) span {
  line-height: 1;
  color: #ffa40d;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(1) span {
    line-height: 1;
    margin-top: 13px;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(1) span:before {
  border-color: #ffa40d;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(1) span:before {
    bottom: -13px;
  }
}
@media print, screen and (min-width: 1025px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(1):hover {
    background: #ffa40d;
    color: #fff;
    cursor: pointer;
  }
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(1):hover span {
    color: #fff;
  }
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(1):hover span:before {
    border-color: #fff;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(1).active {
  background: #ffa40d;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(1).active span {
  color: #fff;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(1).active span:before {
  border-color: #fff;
  bottom: -15px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(1).active span:before {
    bottom: -8px;
  }
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(1).active span {
    margin-top: 13px;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(2) {
  border: 1px solid #7fce39;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(2) span {
  color: #7fce39;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(2) span {
    line-height: 1;
    margin-top: 22px;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(2) span:before {
  border-color: #7fce39;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(2) span:before {
    bottom: -13px;
  }
}
@media print, screen and (min-width: 1025px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(2):hover {
    background: #7fce39;
    color: #fff;
    cursor: pointer;
  }
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(2):hover span {
    color: #fff;
  }
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(2):hover span:before {
    border-color: #fff;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(2).active {
  background: #7fce39;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(2).active span {
  color: #fff;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(2).active span:before {
  bottom: -15px;
  border-color: #fff;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(2).active span:before {
    bottom: -13px;
  }
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(2).active span {
    margin-top: 22px;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(3) span {
  line-height: 1;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(3) span:before {
  bottom: -8px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(3) span {
    margin-top: 13px;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(3).active span:before {
  bottom: -15px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(3).active span:before {
    bottom: -8px;
  }
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01 li:nth-of-type(3).active span {
    margin-top: 13px;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li {
  line-height: 1.2;
  letter-spacing: 0.05em;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(1) {
  font-size: 18px;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(1) span {
  margin-top: 13px;
  line-height: 1.2;
  font-size: 18px;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(1) span:before {
  bottom: -8px;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(1).active span {
  margin-top: 17px;
  font-size: 18px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(1).active span {
    margin-top: 13px;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(1).active span:before {
  bottom: -8px;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(2) {
  font-size: 18px;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(2) span {
  margin-top: 3px;
  line-height: 1;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(2) span:before {
  bottom: -8px;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(2).active span {
  margin-top: 9px;
  line-height: 1;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(2).active span:before {
  bottom: -8px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(2).active span {
    margin-top: 14px;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(3) {
  font-size: 18px;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(3) span {
  margin-top: 3px;
  line-height: 1;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(3) span:before {
  bottom: -8px;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(3).active span {
  margin-top: 9px;
}
.ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(3).active span:before {
  bottom: -10px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.type01.en li:nth-of-type(3).active span:before {
    bottom: -8px;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box li {
  width: 32.6%;
  height: auto;
  margin-top: 10px;
  text-align: center;
  font-size: 15px;
  color: #00a0dc;
  border: 1px solid #00a0dc;
  background: #fff;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  height: 58px;
  position: relative;
  top: 22px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box li {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    top: 0;
    width: 100%;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box li a {
  display: inline-block;
  height: 58px;
  width: 100%;
}
.ir_plan_lower_tab .ir_plan_lower_box li.active {
  background: #00a0dc;
  font-size: 16px;
  height: 82px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  top: -2px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box li.active {
    height: 58px;
    top: 0;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box li.active a {
  height: auto;
  -webkit-transition: 0.5s 0.4s ease;
  -moz-transition: 0.5s 0.4s ease;
  -ms-transition: 0.5s 0.4s ease;
  -o-transition: 0.5s 0.4s ease;
  transition: 0.5s 0.4s ease;
}
.ir_plan_lower_tab .ir_plan_lower_box li.active:first-child span {
  line-height: 1;
}
.ir_plan_lower_tab .ir_plan_lower_box li.active span {
  color: #fff;
  margin-top: 19px;
  top: 8px;
  font-size: 16px;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box li.active span {
    font-size: 15px;
    top: 0px;
    margin-top: 15px;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box li.active span:before {
  border-color: #fff;
  bottom: -8px;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.ir_plan_lower_tab .ir_plan_lower_box li.en li span {
  font-size: 18px;
}
.ir_plan_lower_tab .ir_plan_lower_box li:first-child span {
  line-height: 1;
}
.ir_plan_lower_tab .ir_plan_lower_box li span {
  position: relative;
  margin-top: 16px;
  display: inline-block;
  color: #00a0dc;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box li span {
    font-size: 15px;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box li span:before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 6px;
  height: 6px;
  border-color: #00a0dc;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  left: 50%;
  right: 50%;
  bottom: -8px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box li span:before {
    bottom: -8px;
  }
}
@media print, screen and (min-width: 1025px) {
  .ir_plan_lower_tab .ir_plan_lower_box li:hover {
    background: #00a0dc;
    color: #fff;
    cursor: pointer;
  }
  .ir_plan_lower_tab .ir_plan_lower_box li:hover span {
    color: #fff;
  }
  .ir_plan_lower_tab .ir_plan_lower_box li:hover span:before {
    border-color: #fff;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box.en li {
  height: 70px;
  top: 10px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.en li {
    top: -10px;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box.en li span {
  font-size: 18px;
  line-height: 1;
  margin-top: 18px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.en li span {
    margin-top: 16px;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box.en li:nth-child(2) span {
  margin-top: 3px;
}
.ir_plan_lower_tab .ir_plan_lower_box.en li:nth-child(2).active span {
  margin-top: 9px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.en li:nth-child(2).active span {
    margin-top: 3px;
  }
}
.ir_plan_lower_tab .ir_plan_lower_box.en li.active {
  height: 90px;
  top: -10px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .ir_plan_lower_box.en li.active {
    height: 70px;
  }
}
.ir_plan_lower_tab .link-btn-03 {
  margin: 40px auto 0 auto;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .link-btn-03 a {
    padding: 15px 0;
  }
}
.ir_plan_lower_tab .tab_inner {
  padding: 0 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.ir_plan_lower_tab .tab_inner .gole {
  padding: 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #0068af;
  margin-bottom: 30px;
}
.ir_plan_lower_tab .tab_inner .gole .ir_lower_tit01 {
  background: #0068af;
  display: inline-block;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  padding: 2px 10px;
  margin-bottom: 10px;
}
.ir_plan_lower_tab .tab_inner .gole .ir_lower_tit01.en {
  font-size: 18px;
}
.ir_plan_lower_tab .tab_inner .part {
  margin-bottom: 20px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.ir_plan_lower_tab .tab_inner .part:last-child {
  margin-bottom: 0;
}
.ir_plan_lower_tab .tab_inner .part .ir_lower_tit02 {
  color: #000;
  font-size: 16px;
  font-weight: bold;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 10px;
  overflow: hidden;
}
.ir_plan_lower_tab .tab_inner .part .ir_lower_tit02.en {
  font-size: 18px;
  padding: 4px 10px;
  display: flex;
  align-items: flex-start;
}
.ir_plan_lower_tab .tab_inner .part .ir_lower_tit02.en span:first-child {
  font-size: 18px;
  padding: 5px 10px 2px 10px;
}
.ir_plan_lower_tab .tab_inner .part .ir_lower_tit02 span:first-child {
  background: #0068af;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  padding: 2px 10px;
  margin-right: 10px;
  float: left;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .tab_inner .part .ir_lower_tit02 span:first-child {
    float: left;
  }
}
.ir_plan_lower_tab .tab_inner .part .ir_lower_tit02 span:nth-child(2) {
  line-height: 1.3;
  position: relative;
  top: 4px;
}
.ir_plan_lower_tab .tab_inner .part .inner {
  width: 48%;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .tab_inner .part .inner {
    width: 100%;
  }
  .ir_plan_lower_tab .tab_inner .part .inner:first-child {
    margin-bottom: 10px;
  }
}
.ir_plan_lower_tab .tab_inner .part_after_box {
  border-top: 1px dotted #00a0dc;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  color: #00a0dc;
  padding-top: 20px;
  margin-bottom: 40px;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.ir_plan_lower_tab .tab_inner .part_after_box:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.ir_plan_lower_tab .tab_inner .part_after_box:after {
  width: 20px;
  height: 20px;
  border-top: 7px solid #00a0dc;
  border-right: 7px solid #00a0dc;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  margin: 50px auto 0 auto;
}
@media only screen and (max-width: 320px) {
  .ir_plan_lower_tab .tab_inner .part_after_box:after {
    margin: 82px auto 0 auto;
  }
}
.ir_plan_lower_tab .tab_inner .part_after_box02 {
  display: block;
  background: #00a0dc;
  padding: 5px 20px;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  color: #fff;
  margin: 0 auto;
  width: 70%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .tab_inner .part_after_box02 {
    width: 100%;
  }
}
.ir_plan_lower_tab .spS {
  display: none;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_tab .spS {
    display: block;
  }
}

@media all and (-ms-high-contrast: none) {
  .jp .ir_lower_tit01 {
    padding: 6px 10px 0 10px !important;
  }
}
@media all and (-ms-high-contrast: none) {
  .jp .ir_lower_tit02 span:first-child {
    padding: 6px 10px 0 10px !important;
  }
}

.tabcontent > div {
  display: none;
}
@media all and (-ms-high-contrast: none) {
  .story .tabcontent > div {
    text-align: center\9 ;
    /* IE10 */
  }
}

.tabcontent > div.active {
  display: block;
}

.tabcontent02 > div {
  display: none;
}

.tabcontent02 > div.active {
  display: block;
}

@media only screen and (max-width: 321px) {
  .spS {
    display: block;
  }
}
.ir_plan_lower_box02 {
  margin-bottom: 20px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.ir_plan_lower_box02 .inner {
  width: 33%;
  padding: 10px 20px;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_box02 .inner {
    width: 100%;
    padding: 20px 0 30px 0;
  }
  .ir_plan_lower_box02 .inner:first-child {
    padding: 0 0 30px 0;
  }
}
.ir_plan_lower_box02 .inner .spS {
  display: none;
}
@media only screen and (max-width: 320px) {
  .ir_plan_lower_box02 .inner .spS {
    display: block;
  }
}
.ir_plan_lower_box02 .inner p {
  text-align: left;
  font-size: 16px;
  margin-top: 25px;
  line-height: 1.6;
}
.ir_plan_lower_box02 .inner p span {
  color: #0068af;
  display: inline;
  font-weight: bold;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.ir_plan_lower_box02 .inner p span.item {
  border-left: 5px solid #006bb3;
  width: 100%;
  display: inline-block;
  padding: 8px 8px;
  background: #eaeaea;
  color: #0068af;
  margin-top: 15px;
}
.ir_plan_lower_box02 .inner img {
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_box02 .inner img {
    width: 50%;
    height: auto;
  }
}
.ir_plan_lower_box02 .inner:nth-of-type(1) {
  border-right: 1px dotted #ccc;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_box02 .inner:nth-of-type(1) {
    border-right: none;
    border-bottom: 1px dotted #ccc;
  }
}
.ir_plan_lower_box02 .inner:nth-of-type(2) {
  border-right: 1px dotted #ccc;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_box02 .inner:nth-of-type(2) {
    border-right: none;
    border-bottom: 1px dotted #ccc;
  }
}

.ir_plan_lower_titbox {
  margin-top: -20px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_titbox {
    margin-top: -20px;
  }
}

.ir_plan_lower_titbox02 {
  margin-top: 0px;
}
@media only screen and (max-width: 767px) {
  .ir_plan_lower_titbox02 {
    margin-top: -20px;
  }
}

#plan01 {
  padding-top: 100px;
}
@media only screen and (max-width: 767px) {
  #plan01 {
    padding-top: 60px;
  }
}

#plan02, #plan03, #plan04, #plan05, #plan06 {
  padding-top: 70px;
}
@media only screen and (max-width: 767px) {
  #plan02, #plan03, #plan04, #plan05, #plan06 {
    padding-top: 60px;
  }
}

/*事業紹介ビデオ*/
.box_video:nth-child(n+3) {
  margin-top: 40px;
}
.box_video .wrap_video {
  margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  .box_video .wrap_video {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
}
@media only screen and (max-width: 767px) {
  .box_video .wrap_video iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
}

/* ------------------------------------------------
  事業紹介
------------------------------------------------ */
.service_login {
  padding-top: 0;
  margin: 0 auto;
  width: 600px;
  height: 300px;
  background: #f7f7f7;
  text-align: center;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .service_login {
    width: 100%;
    height: auto;
    padding: 8% 0;
  }
}
.service_login .user input, .service_login .password input {
  background: #fff;
  border-bottom: 1px solid #e8e8e8;
  width: 94%;
  padding: 6px 3%;
  height: 38px;
  font-size: 16px;
  margin: 0 auto;
}
.service_login .user {
  display: inline-block;
  margin-top: 60px;
  width: 80%;
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .service_login .user {
    width: 90%;
    margin-top: 0;
    margin-bottom: 15px;
  }
}
.service_login .password {
  display: inline-block;
  width: 80%;
}
@media only screen and (max-width: 767px) {
  .service_login .password {
    width: 90%;
  }
}
.service_login .post_submit {
  margin: 30px auto 0 auto;
  width: 40%;
  border: 1px solid #0068af;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  color: #fff;
  position: relative;
  word-wrap: break-word;
}
@media only screen and (max-width: 767px) {
  .service_login .post_submit {
    width: 90%;
    margin: 20px auto 0 auto;
  }
}
.service_login .post_submit input {
  width: 100%;
  height: 46px;
  padding: 10px;
  text-align: center;
  font-weight: bold;
  font-size: 15px;
  letter-spacing: 0.05em;
  color: #fff;
  background: #0068af;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.service_login .post_submit:before, .service_login .post_submit:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.service_login .post_submit:after {
  width: 7px;
  height: 7px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  left: 25px;
  margin-top: -4px;
  margin-left: -3px;
}
.PC .service_login .post_submit:hover {
  cursor: pointer;
}
.PC .service_login .post_submit:hover:after {
  border-color: #0068af;
}
.PC .service_login .post_submit:hover input {
  cursor: pointer;
  background-color: #fff;
  color: #0068af;
}
.service_login .msg.msg-error {
  position: absolute;
  top: 17px;
  background: #ffe4e4;
  width: 50%;
  margin: auto;
  left: 0;
  right: 0;
}
@media only screen and (max-width: 767px) {
  .service_login .msg.msg-error {
    position: inherit;
    margin: 0% auto 7% auto;
    width: 90%;
    top: 0;
  }
}

.post_input input::-webkit-input-placeholder {
  color: #cccccc;
  font-weight: bold;
}
.post_input input:-moz-placeholder {
  color: #cccccc;
  font-weight: bold;
}

.boxFlexList02.service:after {
  content: "";
  display: block;
  width: 30%;
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.service:after {
    width: 100%;
  }
}
.boxFlexList02.service > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 30%;
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.service > .boxContent {
    width: 100%;
    margin-top: 30px;
  }
  .boxFlexList02.service > .boxContent:first-child {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 768px) {
  .boxFlexList02.service > .boxContent:nth-child(n+4) {
    margin-top: 30px;
  }
}
.boxFlexList02.service > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList02.service > .boxContent .boxImg {
  position: relative;
  height: 160px;
  overflow: hidden;
  border: 1px solid #eaeaea;
}
.boxFlexList02.service > .boxContent .boxImg img {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.boxFlexList02.service > .boxContent .boxImg a {
  display: block;
}
.boxFlexList02.service > .boxContent .boxImg .ser_text {
  position: absolute;
  bottom: 0;
  background: rgba(0, 160, 220, 0.9);
  font-size: 13px;
  height: 48px;
  width: 100%;
  line-height: 1;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}
.boxFlexList02.service > .boxContent .boxImg .ser_text span.not:before {
  display: none;
}
.boxFlexList02.service > .boxContent .boxImg .ser_text.link-01.type02 span:hover {
  color: #fff;
}
.boxFlexList02.service > .boxContent .note01 {
  text-align: left;
  display: inline-block;
  line-height: 1.2;
  margin-top: 10px;
  font-size: 13px;
  vertical-align: top;
  -webkit-display: flex;
  display: flex;
  width: 100%;
}
.boxFlexList02.service > .boxContent .note01:last-child {
  margin-top: 8px;
}
.boxFlexList02.service > .boxContent .note01 .head {
  display: table-cell;
  float: left;
  width: 40px;
}
.boxFlexList02.service > .boxContent .note01 .head.en {
  width: 62px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.service > .boxContent .note01 .head {
    width: 15%;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.service > .boxContent .note01 .head {
    width: 12%;
  }
}
.boxFlexList02.service > .boxContent .note01 .head01 {
  display: table-cell;
  float: left;
  width: 26%;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .boxFlexList02.service > .boxContent .note01 .head01 {
    width: 39%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.service > .boxContent .note01 .head01 {
    width: 34%;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.service > .boxContent .note01 .head01 {
    width: 25%;
  }
}
.boxFlexList02.service > .boxContent .note01 .head01.en {
  width: 17%;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .boxFlexList02.service > .boxContent .note01 .head01.en {
    width: 22%;
  }
}
.boxFlexList02.service > .boxContent .note01 .head02 {
  display: table-cell;
  float: left;
  width: 26%;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .boxFlexList02.service > .boxContent .note01 .head02 {
    width: 39%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.service > .boxContent .note01 .head02 {
    width: 34%;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.service > .boxContent .note01 .head02 {
    width: 25%;
  }
}
.boxFlexList02.service > .boxContent .note01 .head02.en {
  width: 21%;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .boxFlexList02.service > .boxContent .note01 .head02.en {
    width: 22%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.service > .boxContent .note01 .head02 {
    width: 23%;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.service > .boxContent .note01 .head02 {
    width: 20%;
  }
}
.boxFlexList02.service > .boxContent .note01 .head03 {
  display: table-cell;
  float: left;
  width: 26%;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .boxFlexList02.service > .boxContent .note01 .head03 {
    width: 39%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.service > .boxContent .note01 .head03 {
    width: 34%;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.service > .boxContent .note01 .head03 {
    width: 25%;
  }
}
.boxFlexList02.service > .boxContent .note01 .head03.en {
  width: 20%;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .boxFlexList02.service > .boxContent .note01 .head03.en {
    width: 20%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.service > .boxContent .note01 .head03 {
    width: 20%;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.service > .boxContent .note01 .head03 {
    width: 16%;
  }
}
.boxFlexList02.service > .boxContent .note01 .inner {
  display: table-cell;
  float: left;
  width: 234px;
}
.boxFlexList02.service > .boxContent .note01 .inner.en {
  width: 210px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.service > .boxContent .note01 .inner {
    width: 85%;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.service > .boxContent .note01 .inner {
    width: 88%;
  }
}
.boxFlexList02.service > .boxContent .note01 span {
  display: inline-block;
  text-indent: -20px;
  margin-left: 20px;
}
.boxFlexList02.service > .boxContent a:hover .link-01.type02 span {
  color: #000;
}
.boxFlexList02.service > .boxContent a:hover .link-01.type02 span:before {
  border: 1px solid #000;
}
.boxFlexList02.service > .boxContent a:hover .link-01.type02 span:after {
  border-color: #000;
}
.boxFlexList02.service > .boxContent a:hover .link-01.type03 span {
  color: #0068af;
}
.boxFlexList02.service > .boxContent a:hover .link-01.type03 span:before {
  border: 1px solid #0068af;
}
.boxFlexList02.service > .boxContent a:hover .link-01.type03 span:after {
  border-color: #0068af;
}
.boxFlexList02.service > .boxContent a:hover .boxImg img {
  opacity: 0.8;
}
.boxFlexList02 .ser_link_box {
  width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}

#ser_wrapper {
  width: 1280px;
  margin: 0 auto;
}

#ser_header {
  margin: 0 0 88px 0;
}

.ser_contents {
  margin: 0 auto;
  text-align: center;
}

#ser_footer {
  margin: 109px auto 0;
  padding-bottom: 16px;
  border-bottom: 16px #4E82AC solid;
  font-size: 12px;
  font-weight: bold;
  text-align: center;
}

/* ------------------------------------------------
フリーレイアウトカスタムcss サービス
------------------------------------------------ */
.ser_custom_img .imgbox {
  position: relative;
  width: 100%;
}
.ser_custom_img .imgbox img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.ser_custom_img .inner_img {
  position: relative;
}
.ser_custom_img .text_box {
  position: relative;
  z-index: 2;
  margin-top: -36%;
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .ser_custom_img .text_box {
    margin-top: 1%;
    width: 100%;
  }
}

/* -------------------------
  visualmanagement（追従アイコン）
---------------------------- */
.icon_vr img {
  position: fixed;
  bottom: 40px;
  right: 10px;
  width: 25%;
  -webkit-box-shadow: rgba(204, 204, 204, 0.5) 0px 1px 2px 2px;
  -moz-box-shadow: rgba(204, 204, 204, 0.5) 0px 1px 2px 2px;
  box-shadow: rgba(204, 204, 204, 0.5) 0px 1px 2px 2px;
}
@media only screen and (max-width: 767px) {
  .icon_vr img {
    width: 50%;
  }
}
.icon_vr img:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
  transition: opacity 0.25s ease-out;
}

/* ------------------------------------------------
  CSR
------------------------------------------------ */
.csr_voice_box_outer {
  width: 100%;
  padding: 0 0 0 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
.csr_voice_box_outer .csr_voice_box {
  width: 100%;
  height: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  background: url(/csr/img/csr_messege_bg02.png) repeat top right;
}
.csr_voice_box_outer .csr_voice_box.style01 {
  background: url(/csr/img/csr_messege_bg.png) repeat top right;
}
.csr_voice_box_outer .csr_voice_box .csr_voice_box_inner {
  width: 100%;
  background: #fff;
  position: relative;
  top: -5px;
  left: -5px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #0068af;
  padding: 0 50px 50px 50px;
}
@media only screen and (max-width: 767px) {
  .csr_voice_box_outer .csr_voice_box .csr_voice_box_inner {
    padding: 0 15px 15px 15px;
  }
}
.csr_voice_box_outer .csr_voice_box .csr_voice_box_inner.style01 {
  border: 1px solid #00a0dc;
}
.csr_voice_box_outer .csr_voice_box .csr_voice_box_inner .tit07 {
  margin: 40px 0 20px -56px;
  display: inline-block;
  font-size: 18px !important;
}
@media only screen and (max-width: 767px) {
  .csr_voice_box_outer .csr_voice_box .csr_voice_box_inner .tit07 {
    margin: 20px 0 20px -21px;
  }
}

.jp .csr_voice_box_inner .tit07 {
  font-size: 16px !important;
}

.icon_box {
  position: relative;
  display: table;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .icon_box {
    display: block;
  }
}
.icon_box span {
  display: inline;
}
.icon_box .tit07 p {
  display: inline;
  float: left;
  margin-right: 2%;
}
.icon_box .tit07 span {
  margin-top: -26px;
}
.icon_box .csr_icon01 .tit02 {
  display: table-cell;
  vertical-align: middle;
  max-width: 92%;
  width: auto;
  padding-right: 2%;
  float: left;
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon01 .tit02 {
    width: 100%;
  }
}
.icon_box .csr_icon01 .icon_inner {
  position: absolute;
  right: 0;
  bottom: 30%;
  vertical-align: middle;
  float: right;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon01 .icon_inner {
    display: block;
    position: inherit;
    width: 100%;
    text-align: left;
    margin-bottom: 25px;
    margin-top: -10px;
  }
}
.icon_box .csr_icon01 .icon_inner span {
  display: inline-block;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon01 .icon_inner span img {
    width: 60%;
  }
}
.icon_box .csr_icon02 .tit02 {
  display: table-cell;
  vertical-align: middle;
  float: left;
  max-width: 86%;
  width: auto;
  padding-right: 2%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon02 .tit02 {
    width: 100%;
    max-width: 100%;
  }
}
.icon_box .csr_icon02 .icon_inner {
  position: absolute;
  right: 0;
  bottom: 30%;
  vertical-align: middle;
  float: right;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon02 .icon_inner {
    display: block;
    position: inherit;
    width: 100%;
    text-align: left;
    margin-bottom: 25px;
    margin-top: -10px;
  }
}
.icon_box .csr_icon02 .icon_inner span {
  display: inline-block;
  padding-left: 2px;
  float: left;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon02 .icon_inner span:first-child {
    margin-left: 0;
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .icon_box .csr_icon02 .icon_inner span {
    margin-right: -25px;
  }
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon02 .icon_inner span img {
    width: 80%;
  }
}
.icon_box .csr_icon03.type01 .icon_inner span {
  margin-top: 10px;
}
.icon_box .csr_icon03 .tit02 {
  display: table-cell;
  vertical-align: middle;
  float: left;
  max-width: 73%;
  width: auto;
  padding-right: 2%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon03 .tit02 {
    width: 100%;
    max-width: 100%;
  }
}
.icon_box .csr_icon03 .icon_inner {
  position: absolute;
  right: 0;
  bottom: 30%;
  vertical-align: middle;
  float: right;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon03 .icon_inner {
    display: block;
    position: inherit;
    width: 100%;
    text-align: left;
    margin-bottom: 25px;
    margin-top: -10px;
  }
}
.icon_box .csr_icon03 .icon_inner span {
  display: inline-block;
  float: left;
  padding-left: 2px;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon03 .icon_inner span {
    display: block;
  }
  .icon_box .csr_icon03 .icon_inner span:first-child {
    margin-left: 0;
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .icon_box .csr_icon03 .icon_inner span {
    margin-right: -25px;
  }
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon03 .icon_inner span img {
    width: 60%;
  }
}
.icon_box .csr_icon04 .tit02 {
  display: table-cell;
  vertical-align: middle;
  float: left;
  max-width: 67%;
  width: auto;
  padding-right: 2%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon04 .tit02 {
    width: 100%;
    max-width: 100%;
  }
}
.icon_box .csr_icon04 .icon_inner {
  position: absolute;
  right: 0;
  bottom: 30%;
  float: right;
  vertical-align: middle;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon04 .icon_inner {
    display: block;
    position: inherit;
    width: 100%;
    text-align: left;
    margin-bottom: 25px;
    margin-top: -10px;
  }
}
.icon_box .csr_icon04 .icon_inner span {
  display: inline-block;
  padding-left: 2px;
  float: left;
}
.icon_box .csr_icon04 .icon_inner span:first-child {
  margin-left: 0;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon04 .icon_inner span {
    margin-right: -25px;
  }
}
.icon_box .csr_icon04 .icon_inner img {
  margin-top: -12px;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon04 .icon_inner img {
    width: 80%;
  }
}
.icon_box .csr_icon05 .tit02 {
  display: table-cell;
  vertical-align: middle;
  float: left;
  max-width: 66%;
  width: auto;
  padding-right: 2%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon05 .tit02 {
    width: 100%;
    max-width: 100%;
  }
}
.icon_box .csr_icon05 .icon_inner {
  position: absolute;
  right: 0;
  bottom: 30%;
  vertical-align: middle;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon05 .icon_inner {
    display: block;
    position: inherit;
    width: 100%;
    text-align: left;
    margin-bottom: 25px;
    margin-top: -10px;
  }
}
.icon_box .csr_icon05 .icon_inner span {
  display: inline-block;
  padding-left: 2px;
  float: left;
}
.icon_box .csr_icon05 .icon_inner span:first-child {
  margin-left: 0;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon05 .icon_inner span {
    margin-right: -25px;
  }
}
.icon_box .csr_icon05 .icon_inner img {
  margin-top: -12px;
}
@media only screen and (max-width: 767px) {
  .icon_box .csr_icon05 .icon_inner img {
    width: 80%;
  }
}

.jp .icon_box .type02 .icon_inner span {
  margin-top: 6px !important;
}

@media only screen and (max-width: 767px) {
  .icon_box02 {
    display: block;
  }
}
.icon_box02 .tit07 {
  align-items: center;
  display: flex;
  padding: 3px 3px 3px 20px;
}
.icon_box02 .tit07 p {
  padding-right: 2%;
  padding: 5px 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.icon_box02 .icon_inner {
  display: flex;
}
.icon_box02 .icon_inner span img {
  margin-left: 3px;
}
@media only screen and (max-width: 767px) {
  .icon_box02 .icon_inner {
    margin-bottom: 25px;
    margin-top: -10px;
    width: 100%;
    text-align: left;
    display: block;
  }
}
.icon_box02 .csr_icon01 .tit07 p {
  width: 93%;
}
@media only screen and (max-width: 767px) {
  .icon_box02 .csr_icon01 .tit07 p {
    width: 100%;
    max-width: 100%;
  }
}
.icon_box02 .csr_icon02 .tit07 p {
  width: 86%;
}
@media only screen and (max-width: 767px) {
  .icon_box02 .csr_icon02 .tit07 p {
    width: 100%;
    max-width: 100%;
  }
}
.icon_box02 .csr_icon03 .tit07 p {
  width: 79%;
}
@media only screen and (max-width: 767px) {
  .icon_box02 .csr_icon03 .tit07 p {
    width: 100%;
    max-width: 100%;
  }
}
.icon_box02 .csr_icon04 .tit07 p {
  width: 72%;
}
@media only screen and (max-width: 767px) {
  .icon_box02 .csr_icon04 .tit07 p {
    width: 100%;
    max-width: 100%;
  }
}
.icon_box02 .csr_icon05 .tit07 p {
  width: 64.9%;
}
@media only screen and (max-width: 767px) {
  .icon_box02 .csr_icon05 .tit07 p {
    width: 100%;
    max-width: 100%;
  }
}

.jp .csr_icon03.type01 .icon_inner span {
  margin-top: 5px;
}

.tit03 {
  align-items: center;
  display: flex;
  width: 100%;
}
.tit03 .img_box {
  display: flex;
}
@media only screen and (max-width: 767px) {
  .tit03 .img_box {
    display: block;
  }
}
.tit03 .img_box img {
  text-align: right;
  float: left;
  margin-left: 2px;
  display: inline-block;
}
@media only screen and (max-width: 767px) {
  .tit03 .img_box img {
    display: block;
    position: relative;
    top: 15px;
    float: left;
    padding-right: 1%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    width: 28%;
  }
}
@media only screen and (max-width: 767px) {
  .tit03.csr_icon01 {
    display: block;
  }
}
.tit03.csr_icon01 p {
  width: 91%;
  display: inline-block;
  padding-right: 2%;
}
@media only screen and (max-width: 767px) {
  .tit03.csr_icon01 p {
    max-width: 100%;
    width: 100%;
    margin-right: 0;
  }
}
@media only screen and (max-width: 767px) {
  .tit03.csr_icon02 {
    display: block;
  }
}
.tit03.csr_icon02 p {
  width: 84.4%;
  display: inline-block;
  margin-right: 2%;
}
@media only screen and (max-width: 767px) {
  .tit03.csr_icon02 p {
    max-width: 100%;
    width: 100%;
    margin-right: 0;
  }
}
.tit03.csr_icon03 {
  position: relative;
}
@media only screen and (max-width: 767px) {
  .tit03.csr_icon03 {
    display: block;
  }
}
.tit03.csr_icon03 p {
  width: 77%;
  display: inline-block;
  padding-right: 2%;
}
@media only screen and (max-width: 767px) {
  .tit03.csr_icon03 p {
    max-width: 100%;
    width: 100%;
    margin-right: 0;
  }
}
.tit03.csr_icon04 {
  position: relative;
}
@media only screen and (max-width: 767px) {
  .tit03.csr_icon04 {
    margin-bottom: 28%;
  }
}
.tit03.csr_icon04 p {
  width: 72.9%;
  display: inline-block;
  padding-right: 2%;
}
@media only screen and (max-width: 767px) {
  .tit03.csr_icon04 p {
    max-width: 100%;
    width: 100%;
    margin-right: 0;
  }
}
.tit03.csr_icon05 {
  position: relative;
}
@media only screen and (max-width: 767px) {
  .tit03.csr_icon05 {
    margin-bottom: 28%;
  }
}
.tit03.csr_icon05 p {
  width: 66.2%;
  display: inline-block;
  padding-right: 2%;
}
@media only screen and (max-width: 767px) {
  .tit03.csr_icon05 p {
    max-width: 100%;
    width: 100%;
    margin-right: 0;
  }
}

@media only screen and (max-width: 767px) {
  .sp_icon_sdg {
    margin-bottom: 25px;
    margin-top: -10px;
    width: 100%;
    text-align: left;
    display: block;
  }
}
.csr_voice_box02 {
  width: 100%;
  height: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border: 5px solid #7fb3d7;
  padding: 43px 45px 50px 45px;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .csr_voice_box02 {
    padding: 20px 20px 25px 20px;
  }
}
.csr_voice_box02 .csr_voice_box02_inner {
  position: relative;
  overflow: hidden;
}
.csr_voice_box02 .csr_voice_box02_inner .csr_voice_img {
  display: flexbox;
  float: left;
  width: 28%;
}
@media only screen and (max-width: 767px) {
  .csr_voice_box02 .csr_voice_box02_inner .csr_voice_img {
    width: 100%;
    float: none;
    text-align: center;
  }
}
.csr_voice_box02 .csr_voice_box02_inner .csr_voice_img img {
  width: 100%;
  max-width: 240px;
  height: auto;
  border: 5px solid #fff;
  box-shadow: rgba(204, 204, 204, 0.5) 0px 1px 2px 2px;
  -webkit-box-shadow: rgba(204, 204, 204, 0.5) 0px 1px 2px 2px;
  -moz-box-shadow: rgba(204, 204, 204, 0.5) 0px 1px 2px 2px;
  margin: 3px 0 0 3px;
}
@media only screen and (max-width: 767px) {
  .csr_voice_box02 .csr_voice_box02_inner .csr_voice_img img {
    margin: 3px 0 3px 3px;
    max-width: 80%;
    width: 80%;
    height: auto;
    text-align: center;
  }
}
.csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit01 {
  width: 68%;
  float: right;
  margin-top: 12px;
}
.csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit01.type01 {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit01 {
    width: 100%;
  }
}
.csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit01 .tit07 {
  display: inline-block;
  margin-bottom: 20px;
  width: 100%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit01 .tit07 {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit01 .tit07 {
    margin-bottom: 20px;
  }
}
.csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit01 .tit08 {
  margin: 0 0 0 20px;
  font-size: 20px;
  padding: 20px 0 19px 0;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit01 .tit08 {
    margin: 0 0 20px 20px;
  }
}
@media only screen and (max-width: 767px) {
  .csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit01 .tit08 {
    margin-bottom: 20px;
    width: 94%;
  }
}
.csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit {
  float: right;
  margin-left: 31px;
  width: 67%;
  display: flexbox;
}
.csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit.type01 {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit {
    width: 100%;
  }
}
.csr_voice_box02 .csr_voice_box02_inner .csr_voice_label {
  background: #eaeaea;
  width: 112%;
  position: relative;
  z-index: -1;
  margin-left: -66px;
  padding: 18px 0 18px 60px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  clear: both;
  line-height: 1.2;
}
.csr_voice_box02 .csr_voice_box02_inner .csr_voice_label.type01 {
  margin-left: 0;
  width: 100%;
  padding: 18px 0 18px 20px;
}
@media only screen and (max-width: 767px) {
  .csr_voice_box02 .csr_voice_box02_inner .csr_voice_label {
    width: 100%;
    margin-left: 0px;
    margin-top: 20px;
    padding: 10px 0 10px 20px;
  }
}
.csr_voice_box02 .csr_voice_box02_inner .csr_voice_label .csr_voice_label01 {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 8px;
}
.csr_voice_box02 .csr_voice_box02_inner .csr_voice_label .csr_voice_label02 {
  font-size: 16px;
  font-weight: bold;
}
.csr_voice_box02 .csr_voice_box02_inner .csr_voice_label .csr_voice_label03 {
  font-size: 20px;
  font-weight: bold;
  margin-top: -5px;
}
.csr_voice_box02 .csr_voice_txt {
  margin-top: 30px;
}
.csr_voice_box02 .csr_voice_txt .tit08.style01 {
  margin-bottom: 20px;
}

.jp .csr_voice_box02 .csr_voice_box02_inner .csr_voice_tit01 .tit08 {
  font-size: 18px;
}

.csr_topics_box {
  width: 100%;
  background: url(/csr/img/csr_topics_bg.png) no-repeat left top #ccecf8;
  overflow: hidden;
  padding: 50px 40px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .csr_topics_box {
    padding: 25px 20px;
  }
}
.csr_topics_box .tit09 {
  color: #00a0dc;
  font-size: 30px;
  font-family: "Roboto", "游ゴシック", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", Arial, Helvetica, Verdana, sans-serif;
  border-bottom: 1px solid #fff;
  font-weight: bold;
  margin-bottom: 30px !important;
  line-height: 1.2;
}
.csr_topics_box .tit10 {
  color: #000;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.4;
}
.csr_topics_box .boxImg.width1 {
  width: 20%;
}
@media only screen and (max-width: 767px) {
  .csr_topics_box .boxImg {
    width: 100%;
    margin-top: 10px;
  }
}
.csr_topics_box .boxImg.type01 {
  float: right;
  padding-left: 40px;
  padding-bottom: 40px;
}
.csr_topics_box .boxImg.type02 {
  float: left;
  padding-right: 40px;
  padding-bottom: 40px;
}
@media print, screen and (min-width: 768px) {
  .csr_topics_box .boxImg.type01_sp {
    display: none;
  }
  .csr_topics_box .boxImg.type02_sp {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .csr_topics_box .boxImg.type01 {
    display: none;
  }
  .csr_topics_box .boxImg.type02 {
    display: none;
  }
  .csr_topics_box .boxImg.type01_sp {
    display: block;
  }
  .csr_topics_box .boxImg.type02_sp {
    display: block;
  }
}
.csr_topics_box .boxImg .caption01 {
  display: block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
.csr_topics_box .boxTxt {
  text-align: left;
}
.csr_topics_box .boxTxt p {
  text-align: left;
}

.csr_vision {
  margin-top: -80px !important;
}

.csr_wh_icon {
  width: 120px;
  height: 120px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background-color: #fff;
}
.csr_wh_icon.type03 {
  border-left: 4px solid #ffa40d;
  border-top: 4px solid #ffa40d;
  border-right: 4px solid #ffedcf;
  border-bottom: 4px solid #ffedcf;
}
.csr_wh_icon.type03:after, .csr_wh_icon.type03:before {
  content: "";
  display: block;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 100%;
  background: -moz-linear-gradient(top, #ffa40d 0%, #ffa40d 40%, #ffedcf 50%, #ffedcf 100%);
  background: -webkit-linear-gradient(top, #ffa40d 0%, #ffa40d 50%, #ffedcf 50%, #ffedcf 100%);
  background: linear-gradient(to bottom, #ffa40d -20%, #ffa40d 50%, #ffedcf 50%, #ffedcf 100%);
}

.csr_wh_icon01 {
  width: 120px;
  height: 120px;
  margin: 0 auto;
  position: relative;
  top: 80px;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .csr_wh_icon01 {
    width: 13%;
    top: 90px;
  }
  .csr_wh_icon01 img {
    width: 100%;
    height: auto;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .csr_wh_icon01 {
    width: 13%;
    top: 90px;
  }
  .csr_wh_icon01 img {
    width: 100%;
    height: auto;
  }
}
@media only screen and (max-width: 767px) {
  .csr_wh_icon01 {
    top: 56px;
  }
  .csr_wh_icon01 img {
    width: 100%;
    height: auto;
  }
}
@media only screen and (max-width: 320px) {
  .csr_wh_icon01 {
    top: 70px;
  }
  .csr_wh_icon01 img {
    width: 100%;
    height: auto;
  }
}

.csr_wh_sankaku {
  width: 0;
  height: 0;
  margin: 0 auto;
  position: relative;
  top: 122px;
  border-style: solid;
  border-width: 11px 0 11px 20px;
}
.csr_wh_sankaku.type01 {
  border-color: transparent transparent transparent #00a0dc;
}
.csr_wh_sankaku.type02 {
  border-color: transparent transparent transparent #80ce3a;
}
.csr_wh_sankaku.type03 {
  border-color: transparent transparent transparent #ffa40d;
}
.csr_wh_sankaku.type04 {
  border-color: transparent transparent transparent #e06b62;
}
.csr_wh_sankaku.type05 {
  border-color: transparent transparent transparent #9c5fa5;
}
.csr_wh_sankaku.type06 {
  border-color: transparent transparent transparent #ec6d81;
}
@media only screen and (max-width: 767px) {
  .csr_wh_sankaku {
    top: 28px;
    border-width: 20px 11px 0 11px;
  }
  .csr_wh_sankaku.type01 {
    border-color: #00a0dc transparent transparent transparent;
  }
  .csr_wh_sankaku.type02 {
    border-color: #80ce3a transparent transparent transparent;
  }
  .csr_wh_sankaku.type03 {
    border-color: #ffa40d transparent transparent transparent;
  }
  .csr_wh_sankaku.type04 {
    border-color: #e06b62 transparent transparent transparent;
  }
  .csr_wh_sankaku.type05 {
    border-color: #9c5fa5 transparent transparent transparent;
  }
  .csr_wh_sankaku.type06 {
    border-color: #ec6d81 transparent transparent transparent;
  }
}

.mv_tit_vision {
  font-size: 16px;
  display: inline-block;
  vertical-align: middle;
  padding: 2px 10px 0px 10px;
  box-sizing: border-box;
  margin-top: -4px;
  color: #ffff;
}
.mv_tit_vision.type01 {
  background: #00a0dc;
}
.mv_tit_vision.type02 {
  background: #80ce3a;
}
.mv_tit_vision.type03 {
  background: #ffa40d;
}
.mv_tit_vision.type04 {
  background: #e06b62;
}
.mv_tit_vision.type05 {
  background: #9c5fa5;
}
.mv_tit_vision.type06 {
  background: #ec6d81;
}

.csr_wh_box {
  width: 100%;
  overflow: hidden;
  padding: 40px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-display: flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .csr_wh_box {
    padding: 20px;
    display: block;
  }
}
.csr_wh_box.type01 {
  background: #ccecf7;
}
.csr_wh_box.type01 .ulBasic01 li:before {
  background-color: #00a0dc;
}
.csr_wh_box.type02 {
  background: #e5f5d8;
}
.csr_wh_box.type02 .ulBasic01 li:before {
  background-color: #80ce3a;
}
.csr_wh_box.type03 {
  background: #ffedcf;
}
.csr_wh_box.type03 .ulBasic01 li:before {
  background-color: #ffa40d;
}
.csr_wh_box.type04 {
  background: #f8ded6;
}
.csr_wh_box.type04 .ulBasic01 li:before {
  background-color: #e06b62;
}
.csr_wh_box.type05 {
  background: #ebdfed;
}
.csr_wh_box.type05 .ulBasic01 li:before {
  background-color: #9c5fa5;
}
.csr_wh_box.type06 {
  background: #fce7e7;
  margin-bottom: 60px;
}
.csr_wh_box.type06 .ulBasic01 li:before {
  background-color: #ec6d81;
}
.csr_wh_box .tit {
  font-size: 40px;
  font-weight: bold;
  font-family: "Roboto", "游ゴシック", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", Arial, Helvetica, Verdana, sans-serif;
}
.csr_wh_box .tit.type01 {
  color: #00a0dc;
}
.csr_wh_box .tit.type02 {
  color: #80ce3a;
}
.csr_wh_box .tit.type03 {
  color: #ffa40d;
}
.csr_wh_box .tit.type04 {
  color: #e06b62;
}
.csr_wh_box .tit.type05 {
  color: #9c5fa5;
}
.csr_wh_box .tit.type06 {
  color: #ec6d81;
}
.csr_wh_box .csr_w {
  width: 380px;
  text-align: left;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .csr_wh_box .csr_w {
    width: 46%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .csr_wh_box .csr_w {
    width: 46%;
  }
}
@media only screen and (max-width: 767px) {
  .csr_wh_box .csr_w {
    width: 100%;
    margin-top: 50px;
  }
}
.csr_wh_box .csr_w .tit {
  padding: 0;
  text-align: center;
  border-bottom: 1px solid #fff;
  position: relative;
  margin: 0px 0 30px 0;
}
.csr_wh_box .csr_w .tit:before {
  content: "";
  display: block;
  width: 20px;
  position: absolute;
  bottom: 0;
  margin-bottom: -2px;
}
.csr_wh_box .csr_w .tit.type01:before {
  border-bottom: 2px solid #00a0dc;
}
.csr_wh_box .csr_w .tit.type02:before {
  border-bottom: 2px solid #80ce3a;
}
.csr_wh_box .csr_w .tit.type03:before {
  border-bottom: 2px solid #ffa40d;
}
.csr_wh_box .csr_w .tit.type04:before {
  border-bottom: 2px solid #e06b62;
}
.csr_wh_box .csr_w .tit.type05:before {
  border-bottom: 2px solid #9c5fa5;
}
.csr_wh_box .csr_w .tit.type06:before {
  border-bottom: 2px solid #ec6d81;
}
.csr_wh_box .csr_h {
  width: 380px;
}

.csr .ank {
  margin-top: -62px !important;
  padding-top: 62px;
}

@-moz-document url-prefix() {
  .csr .ank {
    margin-top: -120px;
    padding-top: 120px;
  }
}
/*-----------------------
mailmagazine
------------------------*/
input.type01 {
  border: solid 1px #eaeaea;
  width: 100%;
  height: 30px;
}

.btn_box01 {
  margin-bottom: 30px;
  text-align: center;
}

.tit_error {
  margin-bottom: 15px;
  font-weight: bold;
  font-size: 20px;
  word-wrap: break-word;
  line-height: 1.2;
}

.tit_error_en {
  margin-bottom: 15px;
  font-weight: bold;
  font-size: 20px;
  word-wrap: break-word;
  line-height: 1.2;
  font-family: "Roboto", "游ゴシック", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", Arial, Helvetica, Verdana, sans-serif;
}

.btn_box02 {
  width: 430px;
  margin: 30px auto;
}
.txt_malmag {
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .txt_malmag {
    text-align: left;
  }
}
.txt_malmag .f-red {
  color: #eb0000;
}

.service_login.style02 {
  background: #fff;
  width: auto;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .service_login.style02 {
    width: 60%;
  }
}
.service_login.style02 p {
  width: 30%;
}
@media only screen and (max-width: 767px) {
  .service_login.style02 p {
    float: none;
    width: 100%;
    margin: 0;
    margin-bottom: 2%;
  }
}

.malmag_tb01 {
  display: table;
  width: 80%;
  margin: 0 auto;
  box-sizing: border-box;
}
.malmag_tb01 table {
  width: 100%;
  text-align: left;
}
.malmag_tb01 .tit_input {
  width: 10%;
  vertical-align: middle;
}
.malmag_tb01 .input_area {
  width: 90%;
  padding: 5px 0;
}
.malmag_tb01 .tit_input_en {
  width: 20%;
  vertical-align: middle;
}
.malmag_tb01 .input_area_en {
  width: 80%;
  padding: 5px 0;
}
@media only screen and (max-width: 767px) {
  .malmag_tb01 {
    width: 90%;
  }
}
.malmag_tb01.style02 dt, .malmag_tb01.style02 dd {
  border-bottom: 1px solid #eaeaea;
}
.malmag_tb01 dt, .malmag_tb01 dd {
  display: table-cell;
  border: 1px solid #eaeaea;
  border-bottom: 0;
  border-left: 0;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .malmag_tb01 dt, .malmag_tb01 dd {
    display: block;
    width: 100%;
    border-left: 1px solid #eaeaea;
  }
}
.malmag_tb01 dt .f-red, .malmag_tb01 dd .f-red {
  color: #eb0000;
}
.malmag_tb01 dt {
  padding: 12px;
  background: #ebf2f8;
  vertical-align: middle;
  line-height: 1.6;
  font-weight: bold;
  text-align: -internal-center;
  width: 40%;
  margin: 0;
}
.malmag_tb01 dt p {
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .malmag_tb01 dt {
    width: 100%;
    border-right: 1px solid #eaeaea;
  }
  .malmag_tb01 dt p {
    text-align: left;
  }
}
.malmag_tb01 dd {
  padding: 16px 20px;
  vertical-align: middle;
  text-align: center;
  font-size: 14px;
  line-height: 1.6;
}

/*-----------------------
404 403 500
------------------------*/
.btn_totop {
  float: left;
}
.btn_totop:first-child {
  margin-right: 10px;
}
@media only screen and (max-width: 767px) {
  .btn_totop:first-child {
    margin: 0 auto;
  }
}
@media only screen and (max-width: 767px) {
  .btn_totop {
    float: none;
    margin: 0 auto;
    width: 80%;
  }
}

@media only screen and (max-width: 767px) {
  .error_bg {
    width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  .br_pc01 {
    display: none;
  }
}

/*-----------------------
社内報
----------------------*/
.shanaihou-wp {
  width: 100%;
  display: table;
}
.shanaihou-wp.style02 {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .shanaihou-wp.style02 {
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 767px) {
  .shanaihou-wp {
    display: block;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
}
.shanaihou-wp .shanaihou_box {
  display: table-cell;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .shanaihou-wp .shanaihou_box {
    display: block;
    width: 100%;
  }
}
.shanaihou-wp .shanaihou_box .shanaihou_date {
  font-weight: bold;
  padding-bottom: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .shanaihou-wp .shanaihou_box .shanaihou_date {
    float: none;
    width: 100%;
    display: block;
  }
}
@media only screen and (max-width: 1024px) {
  .shanaihou-wp .shanaihou_box .shanaihou_date {
    float: none;
    width: 100%;
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .shanaihou-wp .shanaihou_box .shanaihou_date {
    float: none;
    width: 100%;
  }
}
.shanaihou-wp .shanaihou_box .shanaihou_file {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .shanaihou-wp .shanaihou_box .shanaihou_file {
    float: none;
    width: 100%;
    display: block;
  }
}
@media only screen and (max-width: 1024px) {
  .shanaihou-wp .shanaihou_box .shanaihou_file {
    float: none;
    width: 100%;
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .shanaihou-wp .shanaihou_box .shanaihou_file {
    float: none;
    width: 100%;
  }
}

.logo_style01 {
  text-align: center;
}

.shanaihou_head {
  background: #0068af;
  height: 140px;
}

.shanihou_tit {
  color: #fff;
  text-align: center;
  padding-top: 50px;
}

.shanaihou_foot {
  height: 50px;
  background: #333;
}

/*-----------------------
採用情報
----------------------*/
.rec_top_btnwrap {
  width: 38%;
  height: 426px;
  background: url(/ir/img/ir_top_bg.gif) repeat;
  background-color: #00a0dc;
  position: relative;
  z-index: 10;
  float: left;
  display: table;
}
.rec_top_btnwrap.style02 {
  width: 50%;
  height: 280px;
}
@media only screen and (max-width: 767px) {
  .rec_top_btnwrap.style02 {
    width: 100%;
    height: 58px;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .rec_top_btnwrap {
    width: 48%;
  }
}
@media only screen and (max-width: 767px) {
  .rec_top_btnwrap {
    width: 100%;
    height: 58px;
    padding-top: 10px;
  }
}
.rec_top_btnwrap::after {
  content: "";
  display: inline-block;
  position: absolute;
  z-index: 2;
  margin: auto;
  top: 0;
  bottom: 0;
  width: 20px;
  height: 40px;
  background: url(/ir/img/arrow.png) no-repeat;
}
@media only screen and (max-width: 767px) {
  .rec_top_btnwrap::after {
    margin: -20px auto 0 auto;
    background: url(/ir/img/arrow_sp.png) no-repeat center top;
    left: 0;
    right: 0;
    width: 40px;
    height: 20px;
  }
}
.rec_top_btnwrap .recruit_txt {
  text-align: center;
  display: table-cell;
  vertical-align: middle;
  width: 100%;
}
.rec_top_btnwrap .recruit_txt span {
  width: 100%;
  display: inline-block;
  color: #fff;
  margin-bottom: 0;
  line-height: 1;
  font-size: 22px;
  font-weight: bold;
}
.rec_top_btnwrap .recruit_txt.style02 span {
  font-size: 18px;
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .rec_top_btnwrap .recruit_txt.style02 span span {
    line-height: 1;
    font-size: 16px;
    font-weight: normal;
  }
}

.rec_top_photo {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  width: 62%;
  height: 426px;
  float: right;
  overflow: hidden;
  background: url(/ir/img/ir_top.jpg) no-repeat center top;
  background-color: #00a0dc;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .rec_top_photo {
    width: 52%;
  }
}
.rec_top_photo.recruit01 {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  width: 50%;
  height: 280px;
  background: none;
  background-size: 130%;
}
@media only screen and (max-width: 767px) {
  .rec_top_photo.recruit01 {
    width: 100%;
    height: 260px;
    background-size: cover !important;
  }
}
@media print, screen and (min-width: 1280px) {
  .rec_top_photo {
    background: url(/ir/img/ir_top.jpg) no-repeat center 25%;
  }
}
@media print, screen and (min-width: 1600px) {
  .rec_top_photo {
    background: url(/ir/img/ir_top.jpg) no-repeat center 25%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .rec_top_photo {
    background: url(/ir/img/ir_top.jpg) no-repeat center 25%;
  }
}
@media print, screen and (min-width: 1921px) {
  .rec_top_photo {
    width: 52%;
  }
}
@media only screen and (max-width: 767px) {
  .rec_top_photo {
    width: 100%;
    height: 260px;
    background: url(/ir/img/ir_top.jpg) no-repeat center 25%;
    background-size: cover;
  }
}

@media print, screen and (min-width: 1025px) {
  a {
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  a:hover .rec_top_photo {
    -webkit-transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1);
  }
  a:hover .rec_top_photo.recruit01, a:hover .rec_top_photo.recruit02 {
    opacity: 0.6;
  }
}
.btn_area01 {
  max-width: 920px;
  margin: 25px auto 0;
  display: table;
  border-collapse: separate;
  border-spacing: 20px 0;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .btn_area01 {
    width: 80%;
  }
}
@media only screen and (max-width: 767px) {
  .btn_area01 {
    width: 100%;
  }
}
.rec_btn_wrap p {
  text-align: center;
}
.rec_btn_wrap.style02 {
  display: table-cell;
  border: solid 1px #ccc;
  width: 300px;
  height: 80px;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .rec_btn_wrap.style02 {
    display: block;
  }
}
.rec_btn_wrap.style02 .logo_gr {
  display: table-cell;
  vertical-align: middle;
}
@media only screen and (max-width: 767px) {
  .rec_btn_wrap.style02 .logo_gr {
    width: 80%;
  }
}
.rec_btn_wrap.style02 .logo_gr img {
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  .rec_btn_wrap.style02 .logo_gr img {
    width: auto;
    max-width: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .rec_btn_wrap.style02 {
    width: 100%;
    display: block;
    margin: 0 auto;
    margin-bottom: 10px;
  }
  .rec_btn_wrap.style02:last-child {
    margin: 0 auto;
  }
}
@media only screen and (max-width: 767px) {
  .rec_btn_wrap.style02 {
    width: 100%;
    float: none;
    margin-right: 0;
    margin-bottom: 10px;
  }
}
.rec_btn_wrap.style02 a {
  display: table;
  width: 100%;
  height: 100%;
}
@media print, screen and (min-width: 1025px) {
  .rec_btn_wrap.style02 a:hover {
    opacity: 0.5;
  }
}
.rec_btn_wrap.style02 a img {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}

.box-rec-01-wp {
  max-width: 960px;
  height: 220px;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-rec-01-wp {
    height: 230px;
  }
}
@media only screen and (max-width: 767px) {
  .box-rec-01-wp {
    height: 230px;
  }
}

.box-rec-02-wp {
  max-width: 1200px;
  margin: 0 auto;
}

.box-rec-03-wp {
  border-collapse: separate;
}
@media only screen and (max-width: 767px) {
  .box-rec-03-wp {
    display: block;
    border-spacing: 0;
  }
}

.box-rec-01 {
  width: calc(50% - 10px);
  height: auto;
  box-sizing: border-box;
  overflow: hidden;
  background-size: cover;
  border: solid 1px #eaeaea;
}
.box-rec-01.style01 {
  float: left;
}
.box-rec-01.style03 {
  float: right;
}
.box-rec-01 .rec_photo01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  width: 100%;
  height: 160px;
  overflow: hidden;
  background-size: cover;
}
.box-rec-01 .rec_messege {
  width: 100%;
  height: 60px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 15px 0;
  background: url(/ir/img/ir_top_bg.gif) repeat;
  background-color: #00a0dc;
  position: relative;
  z-index: 10;
  display: table;
}
@media only screen and (max-width: 767px) {
  .box-rec-01 .rec_messege {
    min-height: 68px;
  }
}
.box-rec-01 .rec_messege .recruit_txt {
  text-align: center;
  display: table-cell;
  vertical-align: middle;
}
.box-rec-01 .rec_messege .recruit_txt:after {
  content: "";
  display: inline-block;
  position: absolute;
  z-index: 2;
  top: -20px;
  left: 50%;
  margin-left: -20px;
  background: url(/ir/img/arrow_sp.png) no-repeat center top;
  width: 40px;
  height: 20px;
}
.box-rec-01 .rec_messege .recruit_txt span {
  vertical-align: middle;
  font-size: 18px;
  font-weight: normal;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .box-rec-01 .rec_messege .recruit_txt span {
    vertical-align: middle;
    font-size: 16px;
    display: block;
    width: 60%;
    margin: 0 auto;
    line-height: 1.2em;
    padding: 0;
  }
}
.box-rec-01 .rec_messege .recruit_txt span.out {
  position: relative;
}
.box-rec-01 .rec_messege .recruit_txt span:after {
  content: url(/common/img/ico_link_03.png);
  margin: 0px;
  position: absolute;
  top: -3px;
  right: -25px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-rec-01 .rec_messege .recruit_txt span:after {
    top: -5px;
    right: -25px;
  }
}
@media only screen and (max-width: 767px) {
  .box-rec-01 .rec_messege .recruit_txt span:after {
    top: 0px;
    right: -25px;
  }
}
@media only screen and (max-width: 480px) {
  .box-rec-01 .rec_messege .recruit_txt span:after {
    top: 10px;
    right: -20px;
  }
}
.PC .box-rec-01 a:hover .rec_photo01, .PC .box-rec-01 a:hover .rec_photo02 {
  -webkit-transform: scale(1.1, 1.1);
  -moz-transform: scale(1.1, 1.1);
  -ms-transform: scale(1.1, 1.1);
  -o-transform: scale(1.1, 1.1);
  transform: scale(1.1, 1.1);
  overflow: hidden;
  background-size: cover;
  opacity: 0.6;
}

.box-rec-02 {
  width: calc(50% - 10px);
  height: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
  border: solid 1px #eaeaea;
}

.box-rec-03 {
  width: calc(50% - 10px);
  height: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  float: right;
  border: solid 1px #eaeaea;
}

.box-rec-04 {
  width: 100%;
  height: auto;
  vertical-align: top;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .box-rec-04 {
    display: block;
    width: 100%;
  }
}

.rec-wp {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.rec-wp:after {
  display: none;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .rec-wp {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .rec-wp {
    display: block;
  }
}

.box-rec-05 {
  width: 32%;
  height: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
  border: solid 1px #eaeaea;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-rec-05 {
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .box-rec-05 {
    margin-bottom: 40px;
  }
}

.ir_top_box:last-child.style02.box-rec-05:last-child {
  width: 32%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ir_top_box:last-child.style02.box-rec-05:last-child {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .ir_top_box:last-child.style02.box-rec-05:last-child {
    width: 100%;
  }
}

.jp .ir_top_box.box-rec-05:first-child {
  margin-right: 0;
}
@media only screen and (min-width: 1025px) and (max-width: 1400px) {
  .jp .ir_top_box.box-rec-05:first-child {
    margin-right: 0;
  }
  .jp .jp .ir_top_box.box-rec-05:first-child {
    margin-right: 0;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1320px) {
  .jp .jp .ir_top_box.box-rec-05:first-child {
    margin-right: 0;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1040px) {
  .jp .ir_top_box.box-rec-05:first-child {
    margin-right: 0;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1210px) {
  .jp .ir_top_box.box-rec-05 {
    width: 32%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .jp .ir_top_box.box-rec-05 .ir_top_box_inner {
    margin-bottom: 0px;
  }
}
@media only screen and (max-width: 767px) {
  .jp .ir_top_box.box-rec-05 .ir_top_box_inner {
    margin-bottom: 0px;
  }
}

.career_list01.style02 {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-justify-content: space-between;
  -moz-justify-content: space-between;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.career_list01.style02 li {
  width: calc(50% - 10px);
  margin-bottom: 20px;
}
.career_list01.style02 li a {
  width: 100%;
  height: 100%;
  display: block;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-align-items: center;
  -moz-align-items: center;
  -webkit-align-items: center;
  align-items: center;
}
.career_list01 li {
  margin-bottom: 20px;
}

.table_rec01 tr th {
  width: 30%;
}
@media only screen and (max-width: 767px) {
  .table_rec01 tr th {
    width: 100%;
  }
}

.col_rec {
  padding: 20px 0;
  margin-bottom: 20px;
}

.txt_rec {
  text-align: right;
}

.csr_gol_box {
  margin: 30px auto 0 auto;
}
.csr_gol_box .csr_wh_sankaku02 {
  width: 0;
  height: 0;
  margin: 0 auto;
  border-style: solid;
  border-width: 30px 30px 0 30px;
}
.csr_gol_box .csr_wh_sankaku02.type01 {
  border-color: #00a0dc transparent transparent transparent;
}
.csr_gol_box .csr_wh_sankaku02.type02 {
  border-color: #80ce3a transparent transparent transparent;
}
.csr_gol_box .csr_wh_sankaku02.type03 {
  border-color: #ffa40d transparent transparent transparent;
}
.csr_gol_box .csr_wh_sankaku02.type04 {
  border-color: #e06b62 transparent transparent transparent;
}
.csr_gol_box .csr_wh_sankaku02.type05 {
  border-color: #9c5fa5 transparent transparent transparent;
}
.csr_gol_box .tit {
  text-align: center;
  font-size: 40px;
  font-weight: bold;
  position: relative;
  margin-top: 10px;
  font-family: "Roboto", "游ゴシック", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", Arial, Helvetica, Verdana, sans-serif;
}
@media only screen and (max-width: 767px) {
  .csr_gol_box .tit {
    line-height: 1.1;
    padding-bottom: 10px;
    margin-top: 20px;
  }
}
.csr_gol_box .tit.type01 {
  color: #00a0dc;
  border-bottom: 2px solid #ccecf7;
}
.csr_gol_box .tit.type01:before {
  border-bottom: 2px solid #00a0dc;
}
.csr_gol_box .tit.type02 {
  color: #80ce3a;
  border-bottom: 2px solid #e5f5d8;
}
.csr_gol_box .tit.type02:before {
  border-bottom: 2px solid #80ce3a;
}
.csr_gol_box .tit.type03 {
  color: #ffa40d;
  border-bottom: 2px solid #ffedcf;
}
.csr_gol_box .tit.type03:before {
  border-bottom: 2px solid #ffa40d;
}
.csr_gol_box .tit.type04 {
  color: #e06b62;
  border-bottom: 2px solid #f8ded6;
}
.csr_gol_box .tit.type04:before {
  border-bottom: 2px solid #e06b62;
}
.csr_gol_box .tit.type05 {
  color: #9c5fa5;
  border-bottom: 2px solid #ebdfed;
}
.csr_gol_box .tit.type05:before {
  border-bottom: 2px solid #9c5fa5;
}
.csr_gol_box .tit.type01:before, .csr_gol_box .tit.type02:before, .csr_gol_box .tit.type03:before, .csr_gol_box .tit.type04:before, .csr_gol_box .tit.type05:before {
  content: "";
  display: block;
  width: 20px;
  position: absolute;
  bottom: 0;
  margin-bottom: -2px;
}
.csr_gol_box .csr_gol_box_img {
  margin-top: 30px;
  width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.csr_gol_box .csr_gol_box_img .csr_gol_box_inner {
  margin-bottom: 10px;
}
.csr_gol_box .csr_gol_box_img .csr_gol_box_inner:first-child {
  margin-right: 30px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .csr_gol_box .csr_gol_box_img .csr_gol_box_inner:first-child {
    width: 34%;
  }
  .csr_gol_box .csr_gol_box_img .csr_gol_box_inner:first-child img {
    width: 100%;
    height: auto;
  }
}
@media only screen and (max-width: 767px) {
  .csr_gol_box .csr_gol_box_img .csr_gol_box_inner:first-child {
    margin-right: 0;
    margin-bottom: 10px;
    width: 80%;
  }
  .csr_gol_box .csr_gol_box_img .csr_gol_box_inner:first-child img {
    width: 100%;
    height: auto;
  }
}
.csr_gol_box .csr_gol_box_img .csr_gol_box_inner:nth-child(n+2) {
  margin-right: 10px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .csr_gol_box .csr_gol_box_img .csr_gol_box_inner:nth-child(n+2) {
    width: 18%;
  }
  .csr_gol_box .csr_gol_box_img .csr_gol_box_inner:nth-child(n+2) img {
    width: 100%;
    height: auto;
  }
}
@media only screen and (max-width: 767px) {
  .csr_gol_box .csr_gol_box_img .csr_gol_box_inner:nth-child(n+2) {
    margin-right: 3px;
    margin-left: 3px;
    margin-bottom: 6px;
    width: 22%;
  }
  .csr_gol_box .csr_gol_box_img .csr_gol_box_inner:nth-child(n+2) img {
    width: 100%;
  }
  .csr_gol_box .csr_gol_box_img .csr_gol_box_inner:nth-child(n+2):last-child {
    margin-bottom: 0;
  }
}

.csr_tit01 {
  text-align: left;
  font-size: 22px;
  font-weight: normal;
  position: relative;
  display: inline;
  padding-bottom: 6px;
}
@media all and (-ms-high-contrast: none) {
  .csr_tit01 {
    padding-bottom: 0;
  }
}
.csr_tit01:before {
  content: "";
  display: block;
  width: 20px;
  position: absolute;
  bottom: 0;
  margin-bottom: -3px;
}
.csr_tit01.type01 {
  border-bottom: 3px solid #ccecf7;
}
.csr_tit01.type01:before {
  border-bottom: 3px solid #00a0dc;
}
.csr_tit01.type02 {
  border-bottom: 3px solid #e5f5d8;
}
.csr_tit01.type02:before {
  border-bottom: 3px solid #80ce3a;
}
.csr_tit01.type03 {
  border-bottom: 3px solid #ffedcf;
}
.csr_tit01.type03:before {
  border-bottom: 3px solid #ffa40d;
}
.csr_tit01.type04 {
  border-bottom: 3px solid #f8ded6;
}
.csr_tit01.type04:before {
  border-bottom: 3px solid #e06b62;
}
.csr_tit01.type05 {
  border-bottom: 3px solid #ebdfed;
}
.csr_tit01.type05:before {
  border-bottom: 3px solid #9c5fa5;
}

.boxFlexList02.csr.type02:after, .boxFlexList02.csr.type04:after, .boxFlexList02.csr.type06:after, .boxFlexList02.csr.type08:after, .boxFlexList02.csr.type010:after, .boxFlexList02.csr.type012:after, .boxFlexList02.csr.type014:after, .boxFlexList02.csr.type016:after, .boxFlexList02.csr.type018:after, .boxFlexList02.csr.type020:after, .boxFlexList02.csr.type022:after {
  content: "";
  display: block;
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.csr.type02:after, .boxFlexList02.csr.type04:after, .boxFlexList02.csr.type06:after, .boxFlexList02.csr.type08:after, .boxFlexList02.csr.type010:after, .boxFlexList02.csr.type012:after, .boxFlexList02.csr.type014:after, .boxFlexList02.csr.type016:after, .boxFlexList02.csr.type018:after, .boxFlexList02.csr.type020:after, .boxFlexList02.csr.type022:after {
    width: 100%;
  }
}
.boxFlexList02.csr.type02 > .boxContent, .boxFlexList02.csr.type04 > .boxContent, .boxFlexList02.csr.type06 > .boxContent, .boxFlexList02.csr.type08 > .boxContent, .boxFlexList02.csr.type010 > .boxContent, .boxFlexList02.csr.type012 > .boxContent, .boxFlexList02.csr.type014 > .boxContent, .boxFlexList02.csr.type016 > .boxContent, .boxFlexList02.csr.type018 > .boxContent, .boxFlexList02.csr.type020 > .boxContent, .boxFlexList02.csr.type022 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 48.913%;
  height: 220px;
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.csr.type02 > .boxContent, .boxFlexList02.csr.type04 > .boxContent, .boxFlexList02.csr.type06 > .boxContent, .boxFlexList02.csr.type08 > .boxContent, .boxFlexList02.csr.type010 > .boxContent, .boxFlexList02.csr.type012 > .boxContent, .boxFlexList02.csr.type014 > .boxContent, .boxFlexList02.csr.type016 > .boxContent, .boxFlexList02.csr.type018 > .boxContent, .boxFlexList02.csr.type020 > .boxContent, .boxFlexList02.csr.type022 > .boxContent {
    width: 100%;
    margin-top: 30px;
  }
  .boxFlexList02.csr.type02 > .boxContent:first-child, .boxFlexList02.csr.type04 > .boxContent:first-child, .boxFlexList02.csr.type06 > .boxContent:first-child, .boxFlexList02.csr.type08 > .boxContent:first-child, .boxFlexList02.csr.type010 > .boxContent:first-child, .boxFlexList02.csr.type012 > .boxContent:first-child, .boxFlexList02.csr.type014 > .boxContent:first-child, .boxFlexList02.csr.type016 > .boxContent:first-child, .boxFlexList02.csr.type018 > .boxContent:first-child, .boxFlexList02.csr.type020 > .boxContent:first-child, .boxFlexList02.csr.type022 > .boxContent:first-child {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 768px) {
  .boxFlexList02.csr.type02 > .boxContent:nth-child(n+3), .boxFlexList02.csr.type04 > .boxContent:nth-child(n+3), .boxFlexList02.csr.type06 > .boxContent:nth-child(n+3), .boxFlexList02.csr.type08 > .boxContent:nth-child(n+3), .boxFlexList02.csr.type010 > .boxContent:nth-child(n+3), .boxFlexList02.csr.type012 > .boxContent:nth-child(n+3), .boxFlexList02.csr.type014 > .boxContent:nth-child(n+3), .boxFlexList02.csr.type016 > .boxContent:nth-child(n+3), .boxFlexList02.csr.type018 > .boxContent:nth-child(n+3), .boxFlexList02.csr.type020 > .boxContent:nth-child(n+3), .boxFlexList02.csr.type022 > .boxContent:nth-child(n+3) {
    margin-top: 30px;
  }
}
.boxFlexList02.csr.type02 > .boxContent > .boxTxt, .boxFlexList02.csr.type04 > .boxContent > .boxTxt, .boxFlexList02.csr.type06 > .boxContent > .boxTxt, .boxFlexList02.csr.type08 > .boxContent > .boxTxt, .boxFlexList02.csr.type010 > .boxContent > .boxTxt, .boxFlexList02.csr.type012 > .boxContent > .boxTxt, .boxFlexList02.csr.type014 > .boxContent > .boxTxt, .boxFlexList02.csr.type016 > .boxContent > .boxTxt, .boxFlexList02.csr.type018 > .boxContent > .boxTxt, .boxFlexList02.csr.type020 > .boxContent > .boxTxt, .boxFlexList02.csr.type022 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg, .boxFlexList02.csr.type04 > .boxContent .boxImg, .boxFlexList02.csr.type06 > .boxContent .boxImg, .boxFlexList02.csr.type08 > .boxContent .boxImg, .boxFlexList02.csr.type010 > .boxContent .boxImg, .boxFlexList02.csr.type012 > .boxContent .boxImg, .boxFlexList02.csr.type014 > .boxContent .boxImg, .boxFlexList02.csr.type016 > .boxContent .boxImg, .boxFlexList02.csr.type018 > .boxContent .boxImg, .boxFlexList02.csr.type020 > .boxContent .boxImg, .boxFlexList02.csr.type022 > .boxContent .boxImg {
  position: relative;
  height: 220px;
  overflow: hidden;
  border: 1px solid #eaeaea;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg img, .boxFlexList02.csr.type04 > .boxContent .boxImg img, .boxFlexList02.csr.type06 > .boxContent .boxImg img, .boxFlexList02.csr.type08 > .boxContent .boxImg img, .boxFlexList02.csr.type010 > .boxContent .boxImg img, .boxFlexList02.csr.type012 > .boxContent .boxImg img, .boxFlexList02.csr.type014 > .boxContent .boxImg img, .boxFlexList02.csr.type016 > .boxContent .boxImg img, .boxFlexList02.csr.type018 > .boxContent .boxImg img, .boxFlexList02.csr.type020 > .boxContent .boxImg img, .boxFlexList02.csr.type022 > .boxContent .boxImg img {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  object-fit: cover;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type04 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type06 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type08 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type010 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type012 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type014 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type016 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type018 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type020 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type022 > .boxContent .boxImg .sankaku {
  content: "";
  display: inline-block;
  position: absolute;
  bottom: 52px;
  left: 0;
  right: 0;
  margin: auto;
  width: 26px;
  height: 20px;
  z-index: 2;
  background: url(/csr/img/sankaku02.png) no-repeat;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type04 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type06 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type08 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type010 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type012 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type014 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type016 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type018 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type020 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type022 > .boxContent .boxImg .sankaku.style01 {
  background: url(/csr/img/sankaku01.png) no-repeat;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type04 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type06 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type08 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type010 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type012 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type014 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type016 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type018 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type020 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type022 > .boxContent .boxImg .sankaku.style02 {
  background: url(/csr/img/sankaku02.png) no-repeat;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type04 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type06 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type08 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type010 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type012 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type014 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type016 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type018 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type020 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type022 > .boxContent .boxImg .sankaku.style03 {
  background: url(/csr/img/sankaku03.png) no-repeat;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type04 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type06 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type08 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type010 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type012 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type014 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type016 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type018 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type020 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type022 > .boxContent .boxImg .sankaku.style04 {
  background: url(/csr/img/sankaku04.png) no-repeat;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type04 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type06 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type08 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type010 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type012 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type014 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type016 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type018 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type020 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type022 > .boxContent .boxImg .sankaku.style05 {
  background: url(/csr/img/sankaku05.png) no-repeat;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type04 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type06 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type08 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type010 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type012 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type014 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type016 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type018 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type020 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type022 > .boxContent .boxImg .csr_text {
  position: absolute;
  bottom: 0;
  font-size: 18px;
  font-weight: bold;
  height: 60px;
  width: 100%;
  line-height: 1;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  background: #118945 url(/csr/img/csr_bg.png) repeat;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type02 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type04 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type04 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type06 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type06 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type08 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type08 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type010 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type010 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type012 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type012 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type014 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type014 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type016 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type016 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type018 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type018 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type020 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type020 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type022 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type022 > .boxContent .boxImg .csr_text:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type04 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type06 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type08 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type010 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type012 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type014 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type016 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type018 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type020 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type022 > .boxContent .boxImg .csr_text:before {
  width: 30px;
  height: 30px;
  border: 2px solid #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  left: 20px;
  top: 15px;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type04 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type06 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type08 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type010 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type012 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type014 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type016 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type018 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type020 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type022 > .boxContent .boxImg .csr_text:after {
  width: 8px;
  height: 8px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 2px;
  border-right-width: 2px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 25px;
  left: 28px;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type04 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type06 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type08 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type010 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type012 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type014 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type016 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type018 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type020 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type022 > .boxContent .boxImg .csr_text.style01 {
  background: #00a0dc url(/csr/img/csr_bg.png) repeat;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type04 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type06 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type08 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type010 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type012 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type014 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type016 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type018 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type020 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type022 > .boxContent .boxImg .csr_text.style02 {
  background: #118945 url(/csr/img/csr_bg.png) repeat;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type04 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type06 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type08 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type010 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type012 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type014 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type016 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type018 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type020 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type022 > .boxContent .boxImg .csr_text.style03 {
  background: #ffa40d url(/csr/img/csr_bg.png) repeat;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type04 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type06 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type08 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type010 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type012 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type014 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type016 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type018 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type020 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type022 > .boxContent .boxImg .csr_text.style04 {
  background: #00ada9 url(/csr/img/csr_bg.png) repeat;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type04 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type06 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type08 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type010 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type012 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type014 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type016 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type018 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type020 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type022 > .boxContent .boxImg .csr_text.style05 {
  background: #9c5fa4 url(/csr/img/csr_bg.png) repeat;
}
.boxFlexList02.csr.type02 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type04 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type06 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type08 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type010 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type012 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type014 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type016 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type018 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type020 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type022 > .boxContent .boxImg .csr_text span {
  width: 100%;
  margin-top: 3px;
  text-align: center;
  display: inline-block;
  padding: 0 25px 0 25px;
  color: #fff;
  box-sizing: border-box;
}
.boxFlexList02.csr.type02 > .boxContent .note01, .boxFlexList02.csr.type04 > .boxContent .note01, .boxFlexList02.csr.type06 > .boxContent .note01, .boxFlexList02.csr.type08 > .boxContent .note01, .boxFlexList02.csr.type010 > .boxContent .note01, .boxFlexList02.csr.type012 > .boxContent .note01, .boxFlexList02.csr.type014 > .boxContent .note01, .boxFlexList02.csr.type016 > .boxContent .note01, .boxFlexList02.csr.type018 > .boxContent .note01, .boxFlexList02.csr.type020 > .boxContent .note01, .boxFlexList02.csr.type022 > .boxContent .note01 {
  text-align: left;
  display: inline-block;
  line-height: 1.2;
  margin-top: 10px;
  font-size: 13px;
  vertical-align: top;
  -webkit-display: flex;
  display: flex;
  width: 100%;
}
.boxFlexList02.csr.type02 > .boxContent .note01:last-child, .boxFlexList02.csr.type04 > .boxContent .note01:last-child, .boxFlexList02.csr.type06 > .boxContent .note01:last-child, .boxFlexList02.csr.type08 > .boxContent .note01:last-child, .boxFlexList02.csr.type010 > .boxContent .note01:last-child, .boxFlexList02.csr.type012 > .boxContent .note01:last-child, .boxFlexList02.csr.type014 > .boxContent .note01:last-child, .boxFlexList02.csr.type016 > .boxContent .note01:last-child, .boxFlexList02.csr.type018 > .boxContent .note01:last-child, .boxFlexList02.csr.type020 > .boxContent .note01:last-child, .boxFlexList02.csr.type022 > .boxContent .note01:last-child {
  margin-top: 8px;
}
.boxFlexList02.csr.type02 > .boxContent .note01 .head, .boxFlexList02.csr.type04 > .boxContent .note01 .head, .boxFlexList02.csr.type06 > .boxContent .note01 .head, .boxFlexList02.csr.type08 > .boxContent .note01 .head, .boxFlexList02.csr.type010 > .boxContent .note01 .head, .boxFlexList02.csr.type012 > .boxContent .note01 .head, .boxFlexList02.csr.type014 > .boxContent .note01 .head, .boxFlexList02.csr.type016 > .boxContent .note01 .head, .boxFlexList02.csr.type018 > .boxContent .note01 .head, .boxFlexList02.csr.type020 > .boxContent .note01 .head, .boxFlexList02.csr.type022 > .boxContent .note01 .head {
  display: table-cell;
  float: left;
  width: 40px;
}
.boxFlexList02.csr.type02 > .boxContent .note01 .head.en, .boxFlexList02.csr.type04 > .boxContent .note01 .head.en, .boxFlexList02.csr.type06 > .boxContent .note01 .head.en, .boxFlexList02.csr.type08 > .boxContent .note01 .head.en, .boxFlexList02.csr.type010 > .boxContent .note01 .head.en, .boxFlexList02.csr.type012 > .boxContent .note01 .head.en, .boxFlexList02.csr.type014 > .boxContent .note01 .head.en, .boxFlexList02.csr.type016 > .boxContent .note01 .head.en, .boxFlexList02.csr.type018 > .boxContent .note01 .head.en, .boxFlexList02.csr.type020 > .boxContent .note01 .head.en, .boxFlexList02.csr.type022 > .boxContent .note01 .head.en {
  width: 62px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.csr.type02 > .boxContent .note01 .head, .boxFlexList02.csr.type04 > .boxContent .note01 .head, .boxFlexList02.csr.type06 > .boxContent .note01 .head, .boxFlexList02.csr.type08 > .boxContent .note01 .head, .boxFlexList02.csr.type010 > .boxContent .note01 .head, .boxFlexList02.csr.type012 > .boxContent .note01 .head, .boxFlexList02.csr.type014 > .boxContent .note01 .head, .boxFlexList02.csr.type016 > .boxContent .note01 .head, .boxFlexList02.csr.type018 > .boxContent .note01 .head, .boxFlexList02.csr.type020 > .boxContent .note01 .head, .boxFlexList02.csr.type022 > .boxContent .note01 .head {
    width: 15%;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.csr.type02 > .boxContent .note01 .head, .boxFlexList02.csr.type04 > .boxContent .note01 .head, .boxFlexList02.csr.type06 > .boxContent .note01 .head, .boxFlexList02.csr.type08 > .boxContent .note01 .head, .boxFlexList02.csr.type010 > .boxContent .note01 .head, .boxFlexList02.csr.type012 > .boxContent .note01 .head, .boxFlexList02.csr.type014 > .boxContent .note01 .head, .boxFlexList02.csr.type016 > .boxContent .note01 .head, .boxFlexList02.csr.type018 > .boxContent .note01 .head, .boxFlexList02.csr.type020 > .boxContent .note01 .head, .boxFlexList02.csr.type022 > .boxContent .note01 .head {
    width: 12%;
  }
}
.boxFlexList02.csr.type02 > .boxContent .note01 .inner, .boxFlexList02.csr.type04 > .boxContent .note01 .inner, .boxFlexList02.csr.type06 > .boxContent .note01 .inner, .boxFlexList02.csr.type08 > .boxContent .note01 .inner, .boxFlexList02.csr.type010 > .boxContent .note01 .inner, .boxFlexList02.csr.type012 > .boxContent .note01 .inner, .boxFlexList02.csr.type014 > .boxContent .note01 .inner, .boxFlexList02.csr.type016 > .boxContent .note01 .inner, .boxFlexList02.csr.type018 > .boxContent .note01 .inner, .boxFlexList02.csr.type020 > .boxContent .note01 .inner, .boxFlexList02.csr.type022 > .boxContent .note01 .inner {
  display: table-cell;
  float: left;
  width: 234px;
}
.boxFlexList02.csr.type02 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type04 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type06 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type08 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type010 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type012 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type014 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type016 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type018 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type020 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type022 > .boxContent .note01 .inner.en {
  width: 210px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.csr.type02 > .boxContent .note01 .inner, .boxFlexList02.csr.type04 > .boxContent .note01 .inner, .boxFlexList02.csr.type06 > .boxContent .note01 .inner, .boxFlexList02.csr.type08 > .boxContent .note01 .inner, .boxFlexList02.csr.type010 > .boxContent .note01 .inner, .boxFlexList02.csr.type012 > .boxContent .note01 .inner, .boxFlexList02.csr.type014 > .boxContent .note01 .inner, .boxFlexList02.csr.type016 > .boxContent .note01 .inner, .boxFlexList02.csr.type018 > .boxContent .note01 .inner, .boxFlexList02.csr.type020 > .boxContent .note01 .inner, .boxFlexList02.csr.type022 > .boxContent .note01 .inner {
    width: 85%;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.csr.type02 > .boxContent .note01 .inner, .boxFlexList02.csr.type04 > .boxContent .note01 .inner, .boxFlexList02.csr.type06 > .boxContent .note01 .inner, .boxFlexList02.csr.type08 > .boxContent .note01 .inner, .boxFlexList02.csr.type010 > .boxContent .note01 .inner, .boxFlexList02.csr.type012 > .boxContent .note01 .inner, .boxFlexList02.csr.type014 > .boxContent .note01 .inner, .boxFlexList02.csr.type016 > .boxContent .note01 .inner, .boxFlexList02.csr.type018 > .boxContent .note01 .inner, .boxFlexList02.csr.type020 > .boxContent .note01 .inner, .boxFlexList02.csr.type022 > .boxContent .note01 .inner {
    width: 88%;
  }
}
.boxFlexList02.csr.type02 > .boxContent .note01 span, .boxFlexList02.csr.type04 > .boxContent .note01 span, .boxFlexList02.csr.type06 > .boxContent .note01 span, .boxFlexList02.csr.type08 > .boxContent .note01 span, .boxFlexList02.csr.type010 > .boxContent .note01 span, .boxFlexList02.csr.type012 > .boxContent .note01 span, .boxFlexList02.csr.type014 > .boxContent .note01 span, .boxFlexList02.csr.type016 > .boxContent .note01 span, .boxFlexList02.csr.type018 > .boxContent .note01 span, .boxFlexList02.csr.type020 > .boxContent .note01 span, .boxFlexList02.csr.type022 > .boxContent .note01 span {
  display: inline-block;
  text-indent: -20px;
  margin-left: 20px;
}
.boxFlexList02.csr.type02 > .boxContent a, .boxFlexList02.csr.type04 > .boxContent a, .boxFlexList02.csr.type06 > .boxContent a, .boxFlexList02.csr.type08 > .boxContent a, .boxFlexList02.csr.type010 > .boxContent a, .boxFlexList02.csr.type012 > .boxContent a, .boxFlexList02.csr.type014 > .boxContent a, .boxFlexList02.csr.type016 > .boxContent a, .boxFlexList02.csr.type018 > .boxContent a, .boxFlexList02.csr.type020 > .boxContent a, .boxFlexList02.csr.type022 > .boxContent a {
  color: #fff;
}
@media print, screen and (min-width: 1025px) {
  .boxFlexList02.csr.type02 > .boxContent a:hover, .boxFlexList02.csr.type04 > .boxContent a:hover, .boxFlexList02.csr.type06 > .boxContent a:hover, .boxFlexList02.csr.type08 > .boxContent a:hover, .boxFlexList02.csr.type010 > .boxContent a:hover, .boxFlexList02.csr.type012 > .boxContent a:hover, .boxFlexList02.csr.type014 > .boxContent a:hover, .boxFlexList02.csr.type016 > .boxContent a:hover, .boxFlexList02.csr.type018 > .boxContent a:hover, .boxFlexList02.csr.type020 > .boxContent a:hover, .boxFlexList02.csr.type022 > .boxContent a:hover {
    opacity: 0.7;
  }
  .boxFlexList02.csr.type02 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type04 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type06 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type08 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type010 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type012 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type014 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type016 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type018 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type020 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type022 > .boxContent a:hover .boxImg img {
    -webkit-transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1);
  }
  .boxFlexList02.csr.type02 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type04 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type06 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type08 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type010 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type012 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type014 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type016 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type018 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type020 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type022 > .boxContent a:hover .link-01.type02 span {
    color: #000;
  }
  .boxFlexList02.csr.type02 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type04 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type06 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type08 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type010 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type012 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type014 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type016 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type018 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type020 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type022 > .boxContent a:hover .link-01.type02 span:before {
    border: 1px solid #000;
  }
  .boxFlexList02.csr.type02 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type04 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type06 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type08 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type010 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type012 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type014 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type016 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type018 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type020 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type022 > .boxContent a:hover .link-01.type02 span:after {
    border-color: #000;
  }
  .boxFlexList02.csr.type02 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type04 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type06 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type08 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type010 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type012 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type014 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type016 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type018 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type020 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type022 > .boxContent a:hover .link-01.type03 span {
    color: #0068af;
  }
  .boxFlexList02.csr.type02 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type04 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type06 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type08 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type010 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type012 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type014 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type016 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type018 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type020 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type022 > .boxContent a:hover .link-01.type03 span:before {
    border: 1px solid #0068af;
  }
  .boxFlexList02.csr.type02 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type04 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type06 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type08 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type010 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type012 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type014 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type016 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type018 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type020 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type022 > .boxContent a:hover .link-01.type03 span:after {
    border-color: #0068af;
  }
  .boxFlexList02.csr.type02 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type04 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type06 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type08 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type010 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type012 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type014 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type016 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type018 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type020 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type022 > .boxContent a:hover .boxImg img {
    opacity: 0.8;
  }
}
.boxFlexList02.csr.type02 .boxContent:nth-child(even) .csr_text, .boxFlexList02.csr.type04 .boxContent:nth-child(even) .csr_text, .boxFlexList02.csr.type06 .boxContent:nth-child(even) .csr_text, .boxFlexList02.csr.type08 .boxContent:nth-child(even) .csr_text, .boxFlexList02.csr.type010 .boxContent:nth-child(even) .csr_text, .boxFlexList02.csr.type012 .boxContent:nth-child(even) .csr_text, .boxFlexList02.csr.type014 .boxContent:nth-child(even) .csr_text, .boxFlexList02.csr.type016 .boxContent:nth-child(even) .csr_text, .boxFlexList02.csr.type018 .boxContent:nth-child(even) .csr_text, .boxFlexList02.csr.type020 .boxContent:nth-child(even) .csr_text, .boxFlexList02.csr.type022 .boxContent:nth-child(even) .csr_text {
  background: #7fce39 url(/csr/img/csr_bg.png) repeat;
}
.boxFlexList02.csr.type02 .boxContent:nth-child(even) .sankaku, .boxFlexList02.csr.type04 .boxContent:nth-child(even) .sankaku, .boxFlexList02.csr.type06 .boxContent:nth-child(even) .sankaku, .boxFlexList02.csr.type08 .boxContent:nth-child(even) .sankaku, .boxFlexList02.csr.type010 .boxContent:nth-child(even) .sankaku, .boxFlexList02.csr.type012 .boxContent:nth-child(even) .sankaku, .boxFlexList02.csr.type014 .boxContent:nth-child(even) .sankaku, .boxFlexList02.csr.type016 .boxContent:nth-child(even) .sankaku, .boxFlexList02.csr.type018 .boxContent:nth-child(even) .sankaku, .boxFlexList02.csr.type020 .boxContent:nth-child(even) .sankaku, .boxFlexList02.csr.type022 .boxContent:nth-child(even) .sankaku {
  background: url(/csr/img/sankaku01.png) no-repeat;
}
.boxFlexList02.csr.type01:after, .boxFlexList02.csr.type03:after, .boxFlexList02.csr.type05:after, .boxFlexList02.csr.type07:after, .boxFlexList02.csr.type09:after, .boxFlexList02.csr.type011:after, .boxFlexList02.csr.type013:after, .boxFlexList02.csr.type015:after, .boxFlexList02.csr.type017:after, .boxFlexList02.csr.type019:after, .boxFlexList02.csr.type021:after {
  content: "";
  display: block;
  width: 31.956%;
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.csr.type01:after, .boxFlexList02.csr.type03:after, .boxFlexList02.csr.type05:after, .boxFlexList02.csr.type07:after, .boxFlexList02.csr.type09:after, .boxFlexList02.csr.type011:after, .boxFlexList02.csr.type013:after, .boxFlexList02.csr.type015:after, .boxFlexList02.csr.type017:after, .boxFlexList02.csr.type019:after, .boxFlexList02.csr.type021:after {
    width: 100%;
  }
}
.boxFlexList02.csr.type01 > .boxContent, .boxFlexList02.csr.type03 > .boxContent, .boxFlexList02.csr.type05 > .boxContent, .boxFlexList02.csr.type07 > .boxContent, .boxFlexList02.csr.type09 > .boxContent, .boxFlexList02.csr.type011 > .boxContent, .boxFlexList02.csr.type013 > .boxContent, .boxFlexList02.csr.type015 > .boxContent, .boxFlexList02.csr.type017 > .boxContent, .boxFlexList02.csr.type019 > .boxContent, .boxFlexList02.csr.type021 > .boxContent {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 31.956%;
  height: 220px;
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.csr.type01 > .boxContent, .boxFlexList02.csr.type03 > .boxContent, .boxFlexList02.csr.type05 > .boxContent, .boxFlexList02.csr.type07 > .boxContent, .boxFlexList02.csr.type09 > .boxContent, .boxFlexList02.csr.type011 > .boxContent, .boxFlexList02.csr.type013 > .boxContent, .boxFlexList02.csr.type015 > .boxContent, .boxFlexList02.csr.type017 > .boxContent, .boxFlexList02.csr.type019 > .boxContent, .boxFlexList02.csr.type021 > .boxContent {
    width: 100%;
    margin-top: 30px;
  }
  .boxFlexList02.csr.type01 > .boxContent:first-child, .boxFlexList02.csr.type03 > .boxContent:first-child, .boxFlexList02.csr.type05 > .boxContent:first-child, .boxFlexList02.csr.type07 > .boxContent:first-child, .boxFlexList02.csr.type09 > .boxContent:first-child, .boxFlexList02.csr.type011 > .boxContent:first-child, .boxFlexList02.csr.type013 > .boxContent:first-child, .boxFlexList02.csr.type015 > .boxContent:first-child, .boxFlexList02.csr.type017 > .boxContent:first-child, .boxFlexList02.csr.type019 > .boxContent:first-child, .boxFlexList02.csr.type021 > .boxContent:first-child {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 768px) {
  .boxFlexList02.csr.type01 > .boxContent:nth-child(n+4), .boxFlexList02.csr.type03 > .boxContent:nth-child(n+4), .boxFlexList02.csr.type05 > .boxContent:nth-child(n+4), .boxFlexList02.csr.type07 > .boxContent:nth-child(n+4), .boxFlexList02.csr.type09 > .boxContent:nth-child(n+4), .boxFlexList02.csr.type011 > .boxContent:nth-child(n+4), .boxFlexList02.csr.type013 > .boxContent:nth-child(n+4), .boxFlexList02.csr.type015 > .boxContent:nth-child(n+4), .boxFlexList02.csr.type017 > .boxContent:nth-child(n+4), .boxFlexList02.csr.type019 > .boxContent:nth-child(n+4), .boxFlexList02.csr.type021 > .boxContent:nth-child(n+4) {
    margin-top: 30px;
  }
}
.boxFlexList02.csr.type01 > .boxContent > .boxTxt, .boxFlexList02.csr.type03 > .boxContent > .boxTxt, .boxFlexList02.csr.type05 > .boxContent > .boxTxt, .boxFlexList02.csr.type07 > .boxContent > .boxTxt, .boxFlexList02.csr.type09 > .boxContent > .boxTxt, .boxFlexList02.csr.type011 > .boxContent > .boxTxt, .boxFlexList02.csr.type013 > .boxContent > .boxTxt, .boxFlexList02.csr.type015 > .boxContent > .boxTxt, .boxFlexList02.csr.type017 > .boxContent > .boxTxt, .boxFlexList02.csr.type019 > .boxContent > .boxTxt, .boxFlexList02.csr.type021 > .boxContent > .boxTxt {
  padding: 20px;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg, .boxFlexList02.csr.type03 > .boxContent .boxImg, .boxFlexList02.csr.type05 > .boxContent .boxImg, .boxFlexList02.csr.type07 > .boxContent .boxImg, .boxFlexList02.csr.type09 > .boxContent .boxImg, .boxFlexList02.csr.type011 > .boxContent .boxImg, .boxFlexList02.csr.type013 > .boxContent .boxImg, .boxFlexList02.csr.type015 > .boxContent .boxImg, .boxFlexList02.csr.type017 > .boxContent .boxImg, .boxFlexList02.csr.type019 > .boxContent .boxImg, .boxFlexList02.csr.type021 > .boxContent .boxImg {
  position: relative;
  height: 220px;
  overflow: hidden;
  border: 1px solid #eaeaea;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg img, .boxFlexList02.csr.type03 > .boxContent .boxImg img, .boxFlexList02.csr.type05 > .boxContent .boxImg img, .boxFlexList02.csr.type07 > .boxContent .boxImg img, .boxFlexList02.csr.type09 > .boxContent .boxImg img, .boxFlexList02.csr.type011 > .boxContent .boxImg img, .boxFlexList02.csr.type013 > .boxContent .boxImg img, .boxFlexList02.csr.type015 > .boxContent .boxImg img, .boxFlexList02.csr.type017 > .boxContent .boxImg img, .boxFlexList02.csr.type019 > .boxContent .boxImg img, .boxFlexList02.csr.type021 > .boxContent .boxImg img {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  object-fit: cover;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type03 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type05 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type07 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type09 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type011 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type013 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type015 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type017 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type019 > .boxContent .boxImg .sankaku, .boxFlexList02.csr.type021 > .boxContent .boxImg .sankaku {
  content: "";
  display: inline-block;
  position: absolute;
  bottom: 52px;
  left: 0;
  right: 0;
  margin: auto;
  width: 26px;
  height: 20px;
  z-index: 2;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type03 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type05 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type07 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type09 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type011 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type013 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type015 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type017 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type019 > .boxContent .boxImg .sankaku.style01, .boxFlexList02.csr.type021 > .boxContent .boxImg .sankaku.style01 {
  background: url(/csr/img/sankaku01.png) no-repeat;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type03 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type05 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type07 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type09 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type011 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type013 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type015 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type017 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type019 > .boxContent .boxImg .sankaku.style02, .boxFlexList02.csr.type021 > .boxContent .boxImg .sankaku.style02 {
  background: url(/csr/img/sankaku02.png) no-repeat;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type03 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type05 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type07 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type09 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type011 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type013 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type015 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type017 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type019 > .boxContent .boxImg .sankaku.style03, .boxFlexList02.csr.type021 > .boxContent .boxImg .sankaku.style03 {
  background: url(/csr/img/sankaku03.png) no-repeat;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type03 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type05 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type07 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type09 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type011 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type013 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type015 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type017 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type019 > .boxContent .boxImg .sankaku.style04, .boxFlexList02.csr.type021 > .boxContent .boxImg .sankaku.style04 {
  background: url(/csr/img/sankaku04.png) no-repeat;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type03 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type05 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type07 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type09 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type011 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type013 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type015 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type017 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type019 > .boxContent .boxImg .sankaku.style05, .boxFlexList02.csr.type021 > .boxContent .boxImg .sankaku.style05 {
  background: url(/csr/img/sankaku05.png) no-repeat;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type03 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type05 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type07 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type09 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type011 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type013 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type015 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type017 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type019 > .boxContent .boxImg .csr_text, .boxFlexList02.csr.type021 > .boxContent .boxImg .csr_text {
  position: absolute;
  bottom: 0;
  font-size: 18px;
  font-weight: bold;
  height: 60px;
  width: 100%;
  line-height: 1;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type01 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type03 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type03 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type05 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type05 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type07 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type07 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type09 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type09 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type011 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type011 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type013 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type013 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type015 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type015 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type017 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type017 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type019 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type019 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type021 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type021 > .boxContent .boxImg .csr_text:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type03 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type05 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type07 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type09 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type011 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type013 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type015 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type017 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type019 > .boxContent .boxImg .csr_text:before, .boxFlexList02.csr.type021 > .boxContent .boxImg .csr_text:before {
  width: 30px;
  height: 30px;
  border: 2px solid #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  left: 20px;
  top: 15px;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type03 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type05 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type07 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type09 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type011 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type013 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type015 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type017 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type019 > .boxContent .boxImg .csr_text:after, .boxFlexList02.csr.type021 > .boxContent .boxImg .csr_text:after {
  width: 8px;
  height: 8px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 2px;
  border-right-width: 2px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 25px;
  left: 28px;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type03 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type05 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type07 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type09 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type011 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type013 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type015 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type017 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type019 > .boxContent .boxImg .csr_text.style01, .boxFlexList02.csr.type021 > .boxContent .boxImg .csr_text.style01 {
  background: #00a0dc url(/csr/img/csr_bg.png) repeat;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type03 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type05 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type07 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type09 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type011 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type013 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type015 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type017 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type019 > .boxContent .boxImg .csr_text.style02, .boxFlexList02.csr.type021 > .boxContent .boxImg .csr_text.style02 {
  background: #118945 url(/csr/img/csr_bg.png) repeat;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type03 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type05 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type07 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type09 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type011 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type013 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type015 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type017 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type019 > .boxContent .boxImg .csr_text.style03, .boxFlexList02.csr.type021 > .boxContent .boxImg .csr_text.style03 {
  background: #ffa40d url(/csr/img/csr_bg.png) repeat;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type03 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type05 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type07 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type09 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type011 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type013 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type015 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type017 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type019 > .boxContent .boxImg .csr_text.style04, .boxFlexList02.csr.type021 > .boxContent .boxImg .csr_text.style04 {
  background: #00ada9 url(/csr/img/csr_bg.png) repeat;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type03 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type05 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type07 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type09 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type011 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type013 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type015 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type017 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type019 > .boxContent .boxImg .csr_text.style05, .boxFlexList02.csr.type021 > .boxContent .boxImg .csr_text.style05 {
  background: #9c5fa4 url(/csr/img/csr_bg.png) repeat;
}
.boxFlexList02.csr.type01 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type03 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type05 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type07 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type09 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type011 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type013 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type015 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type017 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type019 > .boxContent .boxImg .csr_text span, .boxFlexList02.csr.type021 > .boxContent .boxImg .csr_text span {
  width: 100%;
  margin-top: 3px;
  text-align: center;
  display: inline-block;
  padding: 0 25px 0 25px;
  color: #fff;
  box-sizing: border-box;
}
.boxFlexList02.csr.type01 > .boxContent .note01, .boxFlexList02.csr.type03 > .boxContent .note01, .boxFlexList02.csr.type05 > .boxContent .note01, .boxFlexList02.csr.type07 > .boxContent .note01, .boxFlexList02.csr.type09 > .boxContent .note01, .boxFlexList02.csr.type011 > .boxContent .note01, .boxFlexList02.csr.type013 > .boxContent .note01, .boxFlexList02.csr.type015 > .boxContent .note01, .boxFlexList02.csr.type017 > .boxContent .note01, .boxFlexList02.csr.type019 > .boxContent .note01, .boxFlexList02.csr.type021 > .boxContent .note01 {
  text-align: left;
  display: inline-block;
  line-height: 1.2;
  margin-top: 10px;
  font-size: 13px;
  vertical-align: top;
  -webkit-display: flex;
  display: flex;
  width: 100%;
}
.boxFlexList02.csr.type01 > .boxContent .note01:last-child, .boxFlexList02.csr.type03 > .boxContent .note01:last-child, .boxFlexList02.csr.type05 > .boxContent .note01:last-child, .boxFlexList02.csr.type07 > .boxContent .note01:last-child, .boxFlexList02.csr.type09 > .boxContent .note01:last-child, .boxFlexList02.csr.type011 > .boxContent .note01:last-child, .boxFlexList02.csr.type013 > .boxContent .note01:last-child, .boxFlexList02.csr.type015 > .boxContent .note01:last-child, .boxFlexList02.csr.type017 > .boxContent .note01:last-child, .boxFlexList02.csr.type019 > .boxContent .note01:last-child, .boxFlexList02.csr.type021 > .boxContent .note01:last-child {
  margin-top: 8px;
}
.boxFlexList02.csr.type01 > .boxContent .note01 .head, .boxFlexList02.csr.type03 > .boxContent .note01 .head, .boxFlexList02.csr.type05 > .boxContent .note01 .head, .boxFlexList02.csr.type07 > .boxContent .note01 .head, .boxFlexList02.csr.type09 > .boxContent .note01 .head, .boxFlexList02.csr.type011 > .boxContent .note01 .head, .boxFlexList02.csr.type013 > .boxContent .note01 .head, .boxFlexList02.csr.type015 > .boxContent .note01 .head, .boxFlexList02.csr.type017 > .boxContent .note01 .head, .boxFlexList02.csr.type019 > .boxContent .note01 .head, .boxFlexList02.csr.type021 > .boxContent .note01 .head {
  display: table-cell;
  float: left;
  width: 40px;
}
.boxFlexList02.csr.type01 > .boxContent .note01 .head.en, .boxFlexList02.csr.type03 > .boxContent .note01 .head.en, .boxFlexList02.csr.type05 > .boxContent .note01 .head.en, .boxFlexList02.csr.type07 > .boxContent .note01 .head.en, .boxFlexList02.csr.type09 > .boxContent .note01 .head.en, .boxFlexList02.csr.type011 > .boxContent .note01 .head.en, .boxFlexList02.csr.type013 > .boxContent .note01 .head.en, .boxFlexList02.csr.type015 > .boxContent .note01 .head.en, .boxFlexList02.csr.type017 > .boxContent .note01 .head.en, .boxFlexList02.csr.type019 > .boxContent .note01 .head.en, .boxFlexList02.csr.type021 > .boxContent .note01 .head.en {
  width: 62px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.csr.type01 > .boxContent .note01 .head, .boxFlexList02.csr.type03 > .boxContent .note01 .head, .boxFlexList02.csr.type05 > .boxContent .note01 .head, .boxFlexList02.csr.type07 > .boxContent .note01 .head, .boxFlexList02.csr.type09 > .boxContent .note01 .head, .boxFlexList02.csr.type011 > .boxContent .note01 .head, .boxFlexList02.csr.type013 > .boxContent .note01 .head, .boxFlexList02.csr.type015 > .boxContent .note01 .head, .boxFlexList02.csr.type017 > .boxContent .note01 .head, .boxFlexList02.csr.type019 > .boxContent .note01 .head, .boxFlexList02.csr.type021 > .boxContent .note01 .head {
    width: 15%;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.csr.type01 > .boxContent .note01 .head, .boxFlexList02.csr.type03 > .boxContent .note01 .head, .boxFlexList02.csr.type05 > .boxContent .note01 .head, .boxFlexList02.csr.type07 > .boxContent .note01 .head, .boxFlexList02.csr.type09 > .boxContent .note01 .head, .boxFlexList02.csr.type011 > .boxContent .note01 .head, .boxFlexList02.csr.type013 > .boxContent .note01 .head, .boxFlexList02.csr.type015 > .boxContent .note01 .head, .boxFlexList02.csr.type017 > .boxContent .note01 .head, .boxFlexList02.csr.type019 > .boxContent .note01 .head, .boxFlexList02.csr.type021 > .boxContent .note01 .head {
    width: 12%;
  }
}
.boxFlexList02.csr.type01 > .boxContent .note01 .inner, .boxFlexList02.csr.type03 > .boxContent .note01 .inner, .boxFlexList02.csr.type05 > .boxContent .note01 .inner, .boxFlexList02.csr.type07 > .boxContent .note01 .inner, .boxFlexList02.csr.type09 > .boxContent .note01 .inner, .boxFlexList02.csr.type011 > .boxContent .note01 .inner, .boxFlexList02.csr.type013 > .boxContent .note01 .inner, .boxFlexList02.csr.type015 > .boxContent .note01 .inner, .boxFlexList02.csr.type017 > .boxContent .note01 .inner, .boxFlexList02.csr.type019 > .boxContent .note01 .inner, .boxFlexList02.csr.type021 > .boxContent .note01 .inner {
  display: table-cell;
  float: left;
  width: 234px;
}
.boxFlexList02.csr.type01 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type03 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type05 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type07 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type09 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type011 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type013 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type015 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type017 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type019 > .boxContent .note01 .inner.en, .boxFlexList02.csr.type021 > .boxContent .note01 .inner.en {
  width: 210px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .boxFlexList02.csr.type01 > .boxContent .note01 .inner, .boxFlexList02.csr.type03 > .boxContent .note01 .inner, .boxFlexList02.csr.type05 > .boxContent .note01 .inner, .boxFlexList02.csr.type07 > .boxContent .note01 .inner, .boxFlexList02.csr.type09 > .boxContent .note01 .inner, .boxFlexList02.csr.type011 > .boxContent .note01 .inner, .boxFlexList02.csr.type013 > .boxContent .note01 .inner, .boxFlexList02.csr.type015 > .boxContent .note01 .inner, .boxFlexList02.csr.type017 > .boxContent .note01 .inner, .boxFlexList02.csr.type019 > .boxContent .note01 .inner, .boxFlexList02.csr.type021 > .boxContent .note01 .inner {
    width: 85%;
  }
}
@media only screen and (max-width: 767px) {
  .boxFlexList02.csr.type01 > .boxContent .note01 .inner, .boxFlexList02.csr.type03 > .boxContent .note01 .inner, .boxFlexList02.csr.type05 > .boxContent .note01 .inner, .boxFlexList02.csr.type07 > .boxContent .note01 .inner, .boxFlexList02.csr.type09 > .boxContent .note01 .inner, .boxFlexList02.csr.type011 > .boxContent .note01 .inner, .boxFlexList02.csr.type013 > .boxContent .note01 .inner, .boxFlexList02.csr.type015 > .boxContent .note01 .inner, .boxFlexList02.csr.type017 > .boxContent .note01 .inner, .boxFlexList02.csr.type019 > .boxContent .note01 .inner, .boxFlexList02.csr.type021 > .boxContent .note01 .inner {
    width: 88%;
  }
}
.boxFlexList02.csr.type01 > .boxContent .note01 span, .boxFlexList02.csr.type03 > .boxContent .note01 span, .boxFlexList02.csr.type05 > .boxContent .note01 span, .boxFlexList02.csr.type07 > .boxContent .note01 span, .boxFlexList02.csr.type09 > .boxContent .note01 span, .boxFlexList02.csr.type011 > .boxContent .note01 span, .boxFlexList02.csr.type013 > .boxContent .note01 span, .boxFlexList02.csr.type015 > .boxContent .note01 span, .boxFlexList02.csr.type017 > .boxContent .note01 span, .boxFlexList02.csr.type019 > .boxContent .note01 span, .boxFlexList02.csr.type021 > .boxContent .note01 span {
  display: inline-block;
  text-indent: -20px;
  margin-left: 20px;
}
.boxFlexList02.csr.type01 > .boxContent a, .boxFlexList02.csr.type03 > .boxContent a, .boxFlexList02.csr.type05 > .boxContent a, .boxFlexList02.csr.type07 > .boxContent a, .boxFlexList02.csr.type09 > .boxContent a, .boxFlexList02.csr.type011 > .boxContent a, .boxFlexList02.csr.type013 > .boxContent a, .boxFlexList02.csr.type015 > .boxContent a, .boxFlexList02.csr.type017 > .boxContent a, .boxFlexList02.csr.type019 > .boxContent a, .boxFlexList02.csr.type021 > .boxContent a {
  color: #fff;
}
@media print, screen and (min-width: 1025px) {
  .boxFlexList02.csr.type01 > .boxContent a:hover, .boxFlexList02.csr.type03 > .boxContent a:hover, .boxFlexList02.csr.type05 > .boxContent a:hover, .boxFlexList02.csr.type07 > .boxContent a:hover, .boxFlexList02.csr.type09 > .boxContent a:hover, .boxFlexList02.csr.type011 > .boxContent a:hover, .boxFlexList02.csr.type013 > .boxContent a:hover, .boxFlexList02.csr.type015 > .boxContent a:hover, .boxFlexList02.csr.type017 > .boxContent a:hover, .boxFlexList02.csr.type019 > .boxContent a:hover, .boxFlexList02.csr.type021 > .boxContent a:hover {
    opacity: 0.7;
  }
  .boxFlexList02.csr.type01 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type03 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type05 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type07 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type09 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type011 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type013 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type015 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type017 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type019 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type021 > .boxContent a:hover .boxImg img {
    -webkit-transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1);
  }
  .boxFlexList02.csr.type01 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type03 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type05 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type07 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type09 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type011 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type013 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type015 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type017 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type019 > .boxContent a:hover .link-01.type02 span, .boxFlexList02.csr.type021 > .boxContent a:hover .link-01.type02 span {
    color: #000;
  }
  .boxFlexList02.csr.type01 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type03 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type05 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type07 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type09 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type011 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type013 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type015 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type017 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type019 > .boxContent a:hover .link-01.type02 span:before, .boxFlexList02.csr.type021 > .boxContent a:hover .link-01.type02 span:before {
    border: 1px solid #000;
  }
  .boxFlexList02.csr.type01 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type03 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type05 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type07 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type09 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type011 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type013 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type015 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type017 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type019 > .boxContent a:hover .link-01.type02 span:after, .boxFlexList02.csr.type021 > .boxContent a:hover .link-01.type02 span:after {
    border-color: #000;
  }
  .boxFlexList02.csr.type01 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type03 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type05 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type07 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type09 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type011 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type013 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type015 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type017 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type019 > .boxContent a:hover .link-01.type03 span, .boxFlexList02.csr.type021 > .boxContent a:hover .link-01.type03 span {
    color: #0068af;
  }
  .boxFlexList02.csr.type01 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type03 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type05 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type07 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type09 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type011 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type013 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type015 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type017 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type019 > .boxContent a:hover .link-01.type03 span:before, .boxFlexList02.csr.type021 > .boxContent a:hover .link-01.type03 span:before {
    border: 1px solid #0068af;
  }
  .boxFlexList02.csr.type01 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type03 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type05 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type07 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type09 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type011 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type013 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type015 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type017 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type019 > .boxContent a:hover .link-01.type03 span:after, .boxFlexList02.csr.type021 > .boxContent a:hover .link-01.type03 span:after {
    border-color: #0068af;
  }
  .boxFlexList02.csr.type01 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type03 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type05 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type07 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type09 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type011 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type013 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type015 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type017 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type019 > .boxContent a:hover .boxImg img, .boxFlexList02.csr.type021 > .boxContent a:hover .boxImg img {
    opacity: 0.8;
  }
}
.boxFlexList02 .ser_link_box {
  width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}

.csr_bg_box {
  width: 100%;
  display: table;
  margin-bottom: 20px;
  clear: both;
}
@media only screen and (max-width: 767px) {
  .csr_bg_box {
    display: block;
  }
}
.csr_bg_box > .boxImg {
  width: 320px;
  display: table-cell;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  vertical-align: middle;
  padding: 10px 0 10px 20px;
}
@media only screen and (max-width: 767px) {
  .csr_bg_box > .boxImg {
    display: block;
    width: 80%;
    text-align: center;
    padding: 10px 0 10px 0;
    margin: 0 auto;
  }
}
.csr_bg_box > .boxImg img {
  width: 100%;
  height: auto;
}
.csr_bg_box > .boxImg .caption01 {
  display: block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
.csr_bg_box > .boxTxt {
  width: 64%;
  display: table-cell;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 50px;
  vertical-align: top;
}
@media only screen and (max-width: 767px) {
  .csr_bg_box > .boxTxt {
    display: block;
    width: 100%;
    padding: 20px;
    margin-bottom: 10px;
  }
}
.csr_bg_box > .boxTxt .tit {
  font-size: 16px;
  font-weight: bold;
  color: #00a0dc;
}
.csr_bg_box > .boxTxt.bg_type {
  background: #e5f5fb;
}
.csr_bg_box > .boxTxt.type01 {
  width: 95.651%;
  margin: 20px auto 0 auto;
  display: block;
}
@media only screen and (max-width: 767px) {
  .csr_bg_box > .boxTxt.type01 {
    width: 100%;
  }
}
.csr_bg_box.type01 > .boxImg {
  padding: 10px 20px 10px 0;
  margin-right: 20px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .csr_bg_box.type01 > .boxImg {
    width: 36%;
  }
}
@media only screen and (max-width: 767px) {
  .csr_bg_box.type01 > .boxImg {
    float: none;
    display: block;
    width: 80%;
    text-align: center;
    padding: 10px 0 10px 0;
    margin: 10px auto 0 auto;
  }
}
.csr_bg_box.type01 > .boxImg .caption01 {
  display: block;
  margin-top: 8px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
}
.csr_bg_box.type01 > .boxImg .caption01 img {
  width: 100%;
  height: auto;
}
.csr_bg_box.type01 > .boxTxt {
  width: 64%;
  display: table-cell;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 50px;
  vertical-align: top;
}
@media only screen and (max-width: 767px) {
  .csr_bg_box.type01 > .boxTxt {
    float: none;
    padding: 20px;
  }
}

.csr_tab_box {
  width: 100%;
  display: -webkit-flex;
  display: flex;
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  .csr_tab_box {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.csr_tab_box .csr_tab_box_inner {
  font-size: 14px;
  font-weight: bold;
  height: 40px;
  vertical-align: middle;
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .csr_tab_box .csr_tab_box_inner.en {
    font-size: 13px;
  }
}
.csr_tab_box .csr_tab_box_inner:nth-of-type(1) {
  width: 30%;
}
.csr_tab_box .csr_tab_box_inner:nth-of-type(2) {
  width: 20%;
}
.csr_tab_box .csr_tab_box_inner:nth-of-type(3) {
  width: 20%;
}
.csr_tab_box .csr_tab_box_inner:nth-of-type(4) {
  width: 30%;
}
.csr_tab_box .csr_tab_box_inner.en {
  width: 25%;
}
.csr_tab_box .csr_tab_box_inner.en a {
  padding: 9px 0 6px 20px;
}
@media only screen and (max-width: 767px) {
  .csr_tab_box .csr_tab_box_inner.en {
    display: block;
    line-height: 1.2;
  }
  .csr_tab_box .csr_tab_box_inner.en:nth-of-type(1) {
    width: 100%;
  }
  .csr_tab_box .csr_tab_box_inner.en:nth-of-type(2) {
    width: 100%;
  }
  .csr_tab_box .csr_tab_box_inner.en:nth-of-type(3) {
    width: 100%;
  }
  .csr_tab_box .csr_tab_box_inner.en:nth-of-type(4) {
    width: 100%;
  }
  .csr_tab_box .csr_tab_box_inner.en a {
    padding: 14px 0 6px 20px;
  }
  .csr_tab_box .csr_tab_box_inner.en:nth-of-type(1), .csr_tab_box .csr_tab_box_inner.en:nth-of-type(2), .csr_tab_box .csr_tab_box_inner.en:nth-of-type(3) {
    border-right: none;
  }
}
@media only screen and (max-width: 767px) {
  .csr_tab_box .csr_tab_box_inner {
    display: block;
  }
  .csr_tab_box .csr_tab_box_inner:nth-of-type(1) {
    width: 50%;
    margin-bottom: 1px;
  }
  .csr_tab_box .csr_tab_box_inner:nth-of-type(2) {
    width: 50%;
    margin-bottom: 1px;
  }
  .csr_tab_box .csr_tab_box_inner:nth-of-type(3) {
    width: 50%;
  }
  .csr_tab_box .csr_tab_box_inner:nth-of-type(4) {
    width: 50%;
  }
}
.csr_tab_box .csr_tab_box_inner.active {
  position: relative;
}
.csr_tab_box .csr_tab_box_inner.active a {
  background: #118945 url(/csr/img/csr_bg.png) repeat;
}
.csr_tab_box .csr_tab_box_inner.active:before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 20px;
  height: 20px;
  margin: 0 auto;
  background: #118945 url(/csr/img/csr_bg02.png) repeat;
  top: 29px;
  left: 0;
  right: 0;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media only screen and (max-width: 767px) {
  .csr_tab_box .csr_tab_box_inner.active:before {
    display: none;
  }
}
.csr_tab_box .csr_tab_box_inner:nth-of-type(1), .csr_tab_box .csr_tab_box_inner:nth-of-type(2), .csr_tab_box .csr_tab_box_inner:nth-of-type(3) {
  border-right: 2px solid #bfe79c;
}
@media only screen and (max-width: 767px) {
  .csr_tab_box .csr_tab_box_inner:nth-of-type(2) {
    border-right: none;
  }
}
.csr_tab_box .csr_tab_box_inner a {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  height: 100%;
  text-align: center;
  position: relative;
  width: 100%;
  padding: 9px 0 6px 0;
  background: #7fce39;
  display: table-cell;
  display: inline-block;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media print, screen and (min-width: 1025px) {
  .csr_tab_box .csr_tab_box_inner a:hover {
    background: #118945 url(/csr/img/csr_bg.png) repeat;
  }
}
.csr_tab_box .csr_tab_box_inner a:before, .csr_tab_box .csr_tab_box_inner a:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.csr_tab_box .csr_tab_box_inner a:before {
  width: 20px;
  height: 20px;
  border: 1px solid #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  left: 20px;
  top: 10px;
}
.csr_tab_box .csr_tab_box_inner a:after {
  width: 6px;
  height: 6px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 16px;
  left: 25px;
}
.csr_tab_box .csr_tab_box_inner span {
  width: 100%;
  color: #fff;
  text-align: center;
}
@media print, screen and (min-width: 1025px) {
  .csr_tab_box.en a:before {
    left: 10px;
    top: 10px;
  }
  .csr_tab_box.en a:after {
    top: 16px;
    left: 15px;
  }
}

.csr_tab_box02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
}
.csr_tab_box02:nth-child(n+2) {
  margin-top: 40px;
}
.csr_tab_box02 > li {
  width: 50%;
}
@media print, screen and (min-width: 1025px) {
  .csr_tab_box02 > li {
    width: 25%;
  }
}
.csr_tab_box02 > li a {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  border: 1px solid #fff;
  padding: 10px 25px;
  background: #7fce39;
  position: relative;
}
.csr_tab_box02 > li a:before, .csr_tab_box02 > li a:after {
  content: "";
  display: block;
  position: absolute;
}
.csr_tab_box02 > li a:before {
  width: 20px;
  height: 20px;
  border: 1px solid #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  left: 5px;
  top: 50%;
  margin-top: -10px;
}
.csr_tab_box02 > li a:after {
  width: 6px;
  height: 6px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  left: 10px;
  margin-top: -3px;
}
.csr_tab_box02 > li a span {
  line-height: 1.2;
  color: #fff;
  font-size: 11px;
  font-weight: bold;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .csr_tab_box02 > li a span {
    font-size: 14px;
  }
}
@media print, screen and (min-width: 768px) {
  .csr_tab_box02 > li a span {
    font-size: 13px;
  }
}

.scr_report_box li {
  width: 100%;
  margin-bottom: 20px;
}

@media all and (-ms-high-contrast: none) {
  a .library_text:before {
    top: -2px;
  }

  a .library_text:after {
    top: 3px;
  }
}
/* ------------------------------------------------
Story
------------------------------------------------ */
.story {
  color: #000;
}
@media print {
  .story section.page-before {
    page-break-before: always !important;
  }
}
.story#pankuzu {
  position: relative;
}
@media only screen and (max-width: 767px) {
  .story#pankuzu {
    position: static;
    background-color: #00192a;
    padding: 5px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
}
.story#pankuzu .pankuzu-inner {
  width: auto;
  padding-left: 20px;
}
.story .area-story-mv {
  margin-top: -31px;
  width: 100%;
  height: calc(100vh - 100px);
  position: relative;
  overflow: hidden;
  background-color: #00192a;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .area-story-mv {
    height: calc(70vh - 100px);
  }
}
@media screen and (max-width: 1024px) and (orientation: landscape) {
  .story .area-story-mv {
    height: calc(100vh - 100px);
  }
}
@media print {
  .story .area-story-mv {
    height: 600px;
  }
}
@media only screen and (max-width: 767px) {
  .story .area-story-mv {
    height: 46vh;
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) and (orientation: landscape) {
  .story .area-story-mv {
    height: calc(100vh - 100px);
  }
}
.story .area-story-mv:before, .story .area-story-mv:after {
  content: "";
  display: block;
  position: absolute;
}
.story .area-story-mv:before {
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url(../../story/img/spera/mv_story_01.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  -webkit-animation: mv-story 3s ease-in 0s forwards;
  -moz-animation: mv-story 3s ease-in 0s forwards;
  -o-animation: mv-story 3s ease-in 0s forwards;
  animation: mv-story 3s ease-in 0s forwards;
}
.story .area-story-mv:after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 18px 10px;
  bottom: -7px;
  left: 50%;
  transform: translateX(-50%);
  border-color: #00a0dc transparent transparent transparent;
  -webkit-animation: arr-story 2.5s cubic-bezier(0.22, 0.61, 0.54, 0.89) 0s infinite;
  -moz-animation: arr-story 2.5s cubic-bezier(0.22, 0.61, 0.54, 0.89) 0s infinite;
  -o-animation: arr-story 2.5s cubic-bezier(0.22, 0.61, 0.54, 0.89) 0s infinite;
  animation: arr-story 2.5s cubic-bezier(0.22, 0.61, 0.54, 0.89) 0s infinite;
}
.story .area-story-mv.story01 .area-story-mv:before {
  background-image: url(../../story/img/spera/mv_story_01.jpg);
}
.story .area-story-mv .mv-story-caption {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  padding-right: 20px;
  position: absolute;
  bottom: 0;
  color: #fff;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.6;
  text-align: right;
  text-shadow: 0px 0px 15px black;
}
@media only screen and (max-width: 767px) {
  .story.index .area-story-mv {
    height: 80vh;
    margin-top: 0;
  }
}
.story.index .area-story-mv:before {
  background-image: url(../../story/img/mv_story_index_01.jpg);
}
.story.index .area-story-mv:after {
  display: none;
}
.story.index .area-story-mv .tit-story-index-01 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  text-align: center;
  margin-top: -20px;
  width: 90%;
  text-shadow: 0px 0px 15px #000;
  line-height: 1.2;
}
.jp .story.index .area-story-mv .tit-story-index-01 {
  line-height: 1.8;
}
@media only screen and (max-width: 767px) {
  .story.index .area-story-mv .tit-story-index-01 {
    margin-top: -10vh;
  }
}
.story.index .area-story-mv .tit-story-index-in-01,
.story.index .area-story-mv .tit-story-index-in-02,
.story.index .area-story-mv .tit-story-index-in-03 {
  display: block;
}
.story.index .area-story-mv .tit-story-index-in-01 {
  font-size: 80px;
  font-size: 8rem;
  letter-spacing: 0.05em;
  text-shadow: 0px 0px 10px rgba(0, 25, 42, 0.5);
}
@media only screen and (max-width: 767px) {
  .story.index .area-story-mv .tit-story-index-in-01 {
    font-size: 40px;
    font-size: 4rem;
  }
}
.jp .story.index .area-story-mv .tit-story-index-in-01 {
  letter-spacing: 0.1em;
}
.story.index .area-story-mv .tit-story-index-in-02 {
  font-size: 40px;
  font-size: 4rem;
  line-height: 1;
  text-shadow: 0px 0px 10px rgba(0, 25, 42, 0.8);
}
@media only screen and (max-width: 767px) {
  .story.index .area-story-mv .tit-story-index-in-02 {
    font-size: 20px;
    font-size: 2rem;
  }
}
.story.index .area-story-mv .tit-story-index-in-03 {
  font-size: 30px;
  font-size: 3rem;
  letter-spacing: 0.1em;
  text-shadow: 0px 0px 10px rgba(0, 25, 42, 0.8);
}
@media only screen and (max-width: 767px) {
  .story.index .area-story-mv .tit-story-index-in-03 {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
.story.index .area-story-mv .tabnav {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 1200px;
}
.story.index .area-story-mv .tabnav li {
  display: block;
  float: left;
  width: 25%;
  padding: 0 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
@media screen and (max-width: 767px) and (orientation: portrait) {
  .story.index .area-story-mv .tabnav li {
    width: 50%;
  }
  .story.index .area-story-mv .tabnav li:nth-child(n+3) {
    margin-top: 20px;
  }
}
.story.index .area-story-mv .tabnav li span {
  cursor: pointer;
  display: block;
  text-align: center;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.3);
  border: 1px solid #fff;
  padding: 15px 0;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 767px) {
  .story.index .area-story-mv .tabnav li span {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
.story.index .area-story-mv .tabnav li.active span {
  background-color: #0068af;
}
.story.index .area-story-mv .tabnav li.active.style01 span {
  background-color: #00a0dc;
}
.story.index .area-story-mv .tabnav li.active.style02 span {
  background-color: #ffa40d;
}
.story.index .area-story-mv .tabnav li.active.style03 span {
  background-color: #7fce39;
}
.PC .story.index .area-story-mv .tabnav li:hover.style01 span {
  background-color: #00a0dc;
}
.PC .story.index .area-story-mv .tabnav li:hover.style02 span {
  background-color: #ffa40d;
}
.PC .story.index .area-story-mv .tabnav li:hover.style03 span {
  background-color: #7fce39;
}
.story.index .area-story-mv .tabnav li:after {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 2px;
  border-right-width: 2px;
  position: absolute;
  bottom: 7px;
  left: 50%;
  transform: translateX(-50%) rotate(135deg);
}
.story.index .layout-story-index-01 {
  margin: 30px 5px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media all and (-ms-high-contrast: none) {
  .story.index .layout-story-index-01 {
    display: inline-block\9 ;
    /* IE10 */
  }
}
@media print, screen and (min-width: 1921px) {
  .story.index .layout-story-index-01 {
    max-width: 1890px;
    margin: 30px auto;
  }
}
@media only screen and (max-width: 767px) {
  .story.index .layout-story-index-01 {
    -ms-justify-content: center;
    -moz-justify-content: center;
    -webkit-justify-content: center;
    justify-content: center;
  }
}
@media screen and (max-width: 767px) and (orientation: landscape) {
  .story.index .layout-story-index-01 {
    -ms-justify-content: left;
    -moz-justify-content: left;
    -webkit-justify-content: left;
    justify-content: left;
  }
}
.story.index .layout-story-index-01 .box-story-index-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 5px;
  width: 100%;
  height: 68.4931506849vw;
  max-width: 630px;
  max-height: 437px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story.index .layout-story-index-01 .box-story-index-01 {
    width: 50%;
    height: 34.2465753425vw;
  }
}
@media print, screen and (min-width: 1025px) {
  .story.index .layout-story-index-01 .box-story-index-01 {
    width: 33.3333333333%;
    height: 22.8310502283vw;
  }
}
@media screen and (max-width: 767px) and (orientation: landscape) {
  .story.index .layout-story-index-01 .box-story-index-01 {
    width: 50%;
    height: 34.2465753425vw;
  }
}
@media all and (-ms-high-contrast: none) {
  .story.index .layout-story-index-01 .box-story-index-01 {
    display: inline-block\9 ;
    /* IE10 */
    width: 450px\9 ;
    /* IE10 */
    height: 300px\9 ;
    /* IE10 */
  }
}
.story.index .layout-story-index-01 .box-story-index-01.style01 .label-mod-story-number-01 {
  background-color: #00a0dc;
}
.story.index .layout-story-index-01 .box-story-index-01.style01 .link-story-index-01:before, .story.index .layout-story-index-01 .box-story-index-01.style01 .link-story-index-01:after {
  border-color: #00a0dc;
}
.story.index .layout-story-index-01 .box-story-index-01.style02 .label-mod-story-number-01 {
  background-color: #ffa40d;
}
.story.index .layout-story-index-01 .box-story-index-01.style02 .link-story-index-01:before, .story.index .layout-story-index-01 .box-story-index-01.style02 .link-story-index-01:after {
  border-color: #ffa40d;
}
.story.index .layout-story-index-01 .box-story-index-01.style03 .label-mod-story-number-01 {
  background-color: #7fce39;
}
.story.index .layout-story-index-01 .box-story-index-01.style03 .link-story-index-01:before, .story.index .layout-story-index-01 .box-story-index-01.style03 .link-story-index-01:after {
  border-color: #7fce39;
}
.PC .story.index .layout-story-index-01 .box-story-index-01:hover .img img {
  -webkit-transform: scale(1.1, 1.1);
  -moz-transform: scale(1.1, 1.1);
  -ms-transform: scale(1.1, 1.1);
  -o-transform: scale(1.1, 1.1);
  transform: scale(1.1, 1.1);
}
.PC .story.index .layout-story-index-01 .box-story-index-01:hover .link {
  color: #fff;
}
.PC .story.index .layout-story-index-01 .box-story-index-01:hover .link:before, .PC .story.index .layout-story-index-01 .box-story-index-01:hover .link:after {
  border-color: #fff;
}
.PC .story.index .layout-story-index-01 .box-story-index-01:hover.style01 .link-story-index-01 {
  background-color: #00a0dc;
}
.PC .story.index .layout-story-index-01 .box-story-index-01:hover.style02 .link-story-index-01 {
  background-color: #ffa40d;
}
.PC .story.index .layout-story-index-01 .box-story-index-01:hover.style03 .link-story-index-01 {
  background-color: #7fce39;
}
.story.index .layout-story-index-01 .box-story-index-01-in {
  position: relative;
  width: 100%;
  height: 100%;
}
.story.index .layout-story-index-01 .tit-story-index-02,
.story.index .layout-story-index-01 .link-story-index-01,
.story.index .layout-story-index-01 .mod-story-number-01 {
  position: absolute;
}
.story.index .layout-story-index-01 .tit-story-index-02,
.story.index .layout-story-index-01 .link-story-index-01 {
  width: calc(100% - 10px);
  height: calc(100% - 50px);
  text-align: center;
}
.story.index .layout-story-index-01 .tit-story-index-02 {
  top: 0;
  left: 0;
  overflow: hidden;
  z-index: 2;
}
.story.index .layout-story-index-01 .tit-story-index-02 .tit,
.story.index .layout-story-index-01 .tit-story-index-02 .img {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
}
.story.index .layout-story-index-01 .tit-story-index-02 .tit {
  color: #fff;
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1.2;
  font-weight: bold;
  text-shadow: 0px 0px 15px black;
}
@media screen and (max-width: 350px) {
  .story.index .layout-story-index-01 .tit-story-index-02 .tit {
    font-size: 20px;
    font-size: 2rem;
  }
}
@media only screen and (max-width: 568px) and (orientation: landscape) {
  .story.index .layout-story-index-01 .tit-story-index-02 .tit {
    font-size: 20px;
    font-size: 2rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story.index .layout-story-index-01 .tit-story-index-02 .tit {
    font-size: 30px;
    font-size: 3rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .story.index .layout-story-index-01 .tit-story-index-02 .tit {
    font-size: 36px;
    font-size: 3.6rem;
  }
}
@media print {
  .story.index .layout-story-index-01 .tit-story-index-02 .tit {
    font-size: 24px;
    font-size: 2.4rem;
  }
}
.story.index .layout-story-index-01 .tit-story-index-02 .tit sup {
  font-size: 28px;
  font-size: 2.8rem;
  top: -0.2em;
}
@media print, screen and (min-width: 1025px) {
  .story.index .layout-story-index-01 .tit-story-index-02 .tit sup {
    font-size: 24px;
    font-size: 2.4rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .story.index .layout-story-index-01 .tit-story-index-02 .tit sup {
    font-size: 28px;
    font-size: 2.8rem;
  }
}
.story.index .layout-story-index-01 .tit-story-index-02 .img {
  height: 100%;
}
.story.index .layout-story-index-01 .tit-story-index-02 .img img {
  width: 100%;
  height: auto;
  -webkit-transition: all 1s ease;
  -moz-transition: all 1s ease;
  -ms-transition: all 1s ease;
  -o-transition: all 1s ease;
  transition: all 1s ease;
}
.story.index .layout-story-index-01 .tit-story-index-02 .img .note {
  font-size: 12px;
  font-size: 1.2rem;
  color: #fff;
  position: absolute;
  bottom: 10px;
  right: 10px;
}
@media only screen and (max-width: 1024px) {
  .story.index .layout-story-index-01 .tit-story-index-02 .img .note {
    font-size: 10px;
    font-size: 1rem;
  }
}
@media print {
  .story.index .layout-story-index-01 .tit-story-index-02 .img .note {
    font-size: 10px;
    font-size: 1rem;
  }
}
.story.index .layout-story-index-01 .tit-story-index-02 .note {
  display: block;
  font-size: calc(0.9rem + 0.6vw);
}
.story.index .layout-story-index-01 .link-story-index-01 {
  color: #000;
  bottom: 0;
  right: 0;
  border: 1px solid #fff;
  vertical-align: bottom;
  z-index: 1;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.story.index .layout-story-index-01 .link-story-index-01 .link {
  position: absolute;
  bottom: 10px;
  right: 10px;
  padding-right: 45px;
  font-size: 18px;
  font-size: 1.8rem;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.story.index .layout-story-index-01 .link-story-index-01 .link:before, .story.index .layout-story-index-01 .link-story-index-01 .link:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.story.index .layout-story-index-01 .link-story-index-01 .link:before {
  width: 30px;
  height: 30px;
  border-radius: 100%;
  border: 1px solid #000;
  right: 0px;
  transform: translateY(-50%);
}
.story.index .layout-story-index-01 .link-story-index-01 .link:after {
  width: 9px;
  height: 9px;
  border-style: solid;
  border-width: 1px 1px 0 0;
  transform: translateY(-50%) rotate(45deg);
  right: 13px;
}
.story.index .layout-story-index-01 .link-story-index-01:before, .story.index .layout-story-index-01 .link-story-index-01:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  border-style: solid;
  border-width: 1px;
  border-color: #00a0dc;
}
@media print, screen and (min-width: 1025px) {
  .story.index .layout-story-index-01 .link-story-index-01:before, .story.index .layout-story-index-01 .link-story-index-01:after {
    border-color: transparent;
  }
}
.story.index .layout-story-index-01 .link-story-index-01:before {
  top: -1px;
  left: -1px;
}
.story.index .layout-story-index-01 .link-story-index-01:after {
  top: -1px;
  left: -1px;
}
.story.index .layout-story-index-01 .mod-story-number-01 {
  position: absolute;
  bottom: 10px;
  left: 20px;
  z-index: 3;
  width: 80px;
  height: 80px;
}
@media print, screen and (min-width: 1025px) {
  .story.index .layout-story-index-01 .mod-story-number-01 {
    opacity: 0;
    transform: translateY(20px);
    transition: transform 1s 0.5s, opacity 1.5s 0.5s;
  }
}
@media print, screen and (min-width: 1280px) {
  .story.index .layout-story-index-01 .mod-story-number-01 {
    width: 100px;
    height: 100px;
  }
}
@media print, screen and (min-width: 1600px) {
  .story.index .layout-story-index-01 .mod-story-number-01 {
    width: 120px;
    height: 120px;
  }
}
@media print {
  .story.index .layout-story-index-01 .mod-story-number-01 {
    width: 80px;
    height: 80px;
  }
}
.story.index .layout-story-index-01 .mod-story-number-01 .tit {
  font-size: 30px;
  font-size: 3rem;
}
@media print, screen and (min-width: 1280px) {
  .story.index .layout-story-index-01 .mod-story-number-01 .tit {
    font-size: 35px;
    font-size: 3.5rem;
  }
}
@media print, screen and (min-width: 1600px) {
  .story.index .layout-story-index-01 .mod-story-number-01 .tit {
    font-size: 44px;
    font-size: 4.4rem;
  }
}
@media print {
  .story.index .layout-story-index-01 .mod-story-number-01 .tit {
    font-size: 30px;
    font-size: 3rem;
  }
}
.story.index .layout-story-index-01 .label-mod-story-number-01 {
  font-size: 12px;
  font-size: 1.2rem;
  padding: 2px 0;
}
@media print, screen and (min-width: 1280px) {
  .story.index .layout-story-index-01 .label-mod-story-number-01 {
    font-size: 14px;
    font-size: 1.4rem;
    padding: 4px 0;
  }
}
@media print {
  .story.index .layout-story-index-01 .label-mod-story-number-01 {
    font-size: 12px;
    font-size: 1.2rem;
    padding: 2px 0;
  }
}
@media only screen and (max-width: 1024px) {
  .story.index .layout-story-index-01.effect.no-sp .tit-story-index-02 {
    z-index: 2;
  }
  .story.index .layout-story-index-01.effect.no-sp .tit-story-index-02 .tit,
.story.index .layout-story-index-01.effect.no-sp .tit-story-index-02 .img {
    opacity: 1;
  }
}
.story.index .layout-story-index-01.effect.is-active .mod-story-number-01 {
  opacity: 1;
  transform: translateY(0px);
}
.story.index .layout-story-index-01.effect.is-active .tit-story-index-02 .tit,
.story.index .layout-story-index-01.effect.is-active .tit-story-index-02 .img {
  -webkit-animation: mv-story 1.5s ease-in 0.5s forwards;
  -moz-animation: mv-story 1.5s ease-in 0.5s forwards;
  -o-animation: mv-story 1.5s ease-in 0.5s forwards;
  animation: mv-story 1.5s ease-in 0.5s forwards;
}
@media print {
  .story.index .layout-story-index-01.effect.is-active .tit-story-index-02 .tit,
.story.index .layout-story-index-01.effect.is-active .tit-story-index-02 .img {
    opacity: 1;
  }
}
.story.index .layout-story-index-01.effect.is-active .link-story-index-01:before {
  -webkit-animation: square-story-02-01 2s cubic-bezier(0.04, 1.05, 0.53, 1) 0s forwards;
  -moz-animation: square-story-02-01 2s cubic-bezier(0.04, 1.05, 0.53, 1) 0s forwards;
  -o-animation: square-story-02-01 2s cubic-bezier(0.04, 1.05, 0.53, 1) 0s forwards;
  animation: square-story-02-01 2s cubic-bezier(0.04, 1.05, 0.53, 1) 0s forwards;
  border-color: #00a0dc #00a0dc transparent transparent;
}
.story.index .layout-story-index-01.effect.is-active .link-story-index-01:after {
  -webkit-animation: square-story-02-02 2s cubic-bezier(0.04, 1.05, 0.53, 1) 0s forwards;
  -moz-animation: square-story-02-02 2s cubic-bezier(0.04, 1.05, 0.53, 1) 0s forwards;
  -o-animation: square-story-02-02 2s cubic-bezier(0.04, 1.05, 0.53, 1) 0s forwards;
  animation: square-story-02-02 2s cubic-bezier(0.04, 1.05, 0.53, 1) 0s forwards;
  border-color: transparent transparent #00a0dc #00a0dc;
}
.story.index .layout-story-index-01.effect.is-active .box-story-index-01.style01 .link-story-index-01:before {
  border-color: #00a0dc #00a0dc transparent transparent;
}
.story.index .layout-story-index-01.effect.is-active .box-story-index-01.style01 .link-story-index-01:after {
  border-color: transparent transparent #00a0dc #00a0dc;
}
.story.index .layout-story-index-01.effect.is-active .box-story-index-01.style02 .link-story-index-01:before {
  border-color: #ffa40d #ffa40d transparent transparent;
}
.story.index .layout-story-index-01.effect.is-active .box-story-index-01.style02 .link-story-index-01:after {
  border-color: transparent transparent #ffa40d #ffa40d;
}
.story.index .layout-story-index-01.effect.is-active .box-story-index-01.style03 .link-story-index-01:before {
  border-color: #7fce39 #7fce39 transparent transparent;
}
.story.index .layout-story-index-01.effect.is-active .box-story-index-01.style03 .link-story-index-01:after {
  border-color: transparent transparent #7fce39 #7fce39;
}
.story .area-story-mv-in {
  position: relative;
  margin: 20px;
  margin-top: 31px;
  width: calc(100% - 40px);
  height: calc(100% - 51px);
}
@media only screen and (max-width: 767px) {
  .story .area-story-mv-in {
    margin-top: 20px;
    height: calc(100% - 40px);
  }
}
.story .area-story-mv-in:before, .story .area-story-mv-in:after {
  content: "";
  display: block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  border-style: solid;
  border-width: 1px;
  -webkit-animation: square-story-01 3s cubic-bezier(0.04, 1.05, 0.53, 1) 0s forwards;
  -moz-animation: square-story-01 3s cubic-bezier(0.04, 1.05, 0.53, 1) 0s forwards;
  -o-animation: square-story-01 3s cubic-bezier(0.04, 1.05, 0.53, 1) 0s forwards;
  animation: square-story-01 3s cubic-bezier(0.04, 1.05, 0.53, 1) 0s forwards;
  z-index: 1;
}
.story .area-story-mv-in:before {
  top: 0;
  left: 0;
  border-color: #00a0dc #00a0dc transparent transparent;
}
.story .area-story-mv-in:after {
  right: 0;
  bottom: 0;
  border-color: transparent transparent #00a0dc #00a0dc;
}
.story .area-story-tit-01 {
  display: table;
  position: relative;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  -webkit-animation: mv-story 1s ease-in 0s forwards;
  -moz-animation: mv-story 1s ease-in 0s forwards;
  -o-animation: mv-story 1s ease-in 0s forwards;
  animation: mv-story 1s ease-in 0s forwards;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .area-story-tit-01 {
    max-width: 80%;
  }
}
@media only screen and (max-width: 767px) {
  .story .area-story-tit-01 {
    max-width: 94%;
  }
}
.story .tit-story-01-wp {
  display: table-cell;
  vertical-align: middle;
  color: #fff;
  padding-left: 20px;
  text-shadow: 0px 0px 15px black;
}
@media print, screen and (min-width: 1025px) {
  .story .tit-story-01-wp {
    padding-left: 10px;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .tit-story-01-wp {
    padding-left: 40px;
  }
}
@media screen and (max-width: 767px) and (orientation: portrait) {
  .story .tit-story-01-wp {
    padding-left: 10px;
  }
}
.story .tit-sub-01 {
  display: block;
  position: relative;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: normal;
}
@media print, screen and (min-width: 1025px) {
  .story .tit-sub-01 {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
.story .tit-sub-01:after {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  left: 0;
  bottom: 0;
  -webkit-animation: tit-story-01 1s ease 0s forwards;
  -moz-animation: tit-story-01 1s ease 0s forwards;
  -o-animation: tit-story-01 1s ease 0s forwards;
  animation: tit-story-01 1s ease 0s forwards;
}
.story .tit-story-01 {
  display: block;
  font-size: calc(3rem + 0.6vw);
  line-height: 1.1;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 767px) {
  .story .tit-story-01 {
    font-size: calc(2rem + 0.6vw);
  }
}
@media print, screen and (min-width: 1025px) {
  .story .tit-story-01 {
    font-size: 60px;
    font-size: 6rem;
    line-height: 1.2;
  }
}
@media screen and (max-width: 320px) {
  .story .tit-story-01 {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
.story .tit-story-01 .note {
  display: block;
  font-size: calc(1.2rem + 0.6vw);
  padding-top: 0.1em;
}
@media only screen and (max-width: 1024px) {
  .story .tit-story-01 .note {
    padding-top: 0.5em;
  }
}
.story .tit-story-01 sup {
  font-size: 20px;
  font-size: 2rem;
}
@media print, screen and (min-width: 1025px) {
  .story .tit-story-01 sup {
    font-size: 40px;
    font-size: 4rem;
  }
}
.story .tit-story-02 {
  font-size: 32px;
  font-size: 3.2rem;
  line-height: 1.2;
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .story .tit-story-02 {
    font-size: 42px;
    font-size: 4.2rem;
    margin-bottom: 30px;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .tit-story-02 {
    margin-bottom: 60px;
  }
}
.story .tit-story-02.style01 {
  text-align: center;
  color: #fff;
  text-shadow: 0px 0px 10px rgba(80, 80, 80, 0.8);
}
.story .tit-story-02.style02 {
  text-align: center;
}
.story .tit-story-02.type01 {
  position: relative;
  margin-bottom: 30px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .tit-story-02.type01 {
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .tit-story-02.type01 {
    margin-bottom: 90px;
  }
}
.story .tit-story-02.type01 .tit-bg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 100%;
  height: auto;
  z-index: -1;
}
@media all and (-ms-high-contrast: none) {
  .story .tit-story-02.type01 .tit-bg {
    margin-top: -10px;
  }
}
.story .tit-story-02.type01 .tit-bg.effect {
  -webkit-transition: all 4s ease 0s;
  -moz-transition: all 4s ease 0s;
  -ms-transition: all 4s ease 0s;
  -o-transition: all 4s ease 0s;
  transition: all 4s ease 0s;
}
.story .txt-story-lead-01 {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: bold;
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .story .txt-story-lead-01 {
    font-size: 26px;
    font-size: 2.6rem;
    margin-bottom: 30px;
  }
}
.story .txt-story-lead-01.style01 {
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .story .txt-story-lead-01.style01 {
    margin-bottom: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .story .txt-story-lead-01.style01 {
    text-align: left;
  }
}
.story p {
  margin-bottom: 30px;
}
.story p:last-child {
  margin-bottom: 0;
}
.story .box-spera-01 {
  display: table;
}
.story .box-spera-01-in {
  display: table-cell;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.story .box-spera-02 {
  max-width: 700px;
  margin: 0 auto;
  padding-bottom: 160px;
}
@media only screen and (max-width: 1024px) {
  .story .box-spera-02 {
    padding: 0 10%;
  }
}
@media print {
  .story .box-spera-02 {
    padding-bottom: 80px !important;
  }
}
.story .box-spera-02.type01 {
  max-width: 800px;
  padding-bottom: 0px;
}
.story .box-spera-02.type02 {
  max-width: 900px;
  padding-bottom: 80px;
}
@media only screen and (max-width: 1024px) {
  .story .box-spera-02.type02 {
    padding-bottom: 0;
  }
}
@media only screen and (max-width: 1024px) {
  .story .box-spera-03.left {
    padding-top: 60px;
  }
  .story .box-spera-03.left .tit-bg-story-02 {
    top: 30px;
  }
  .story .box-spera-03.right {
    padding-bottom: 60px;
  }
  .story .box-spera-03.right .tit-bg-story-02 {
    top: -30px;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .box-spera-03 {
    padding: 40px 60px;
  }
}
.story .sec-spera-01 {
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.story .sec-spera-01 .box-spera-01 {
  max-width: 600px;
  padding: 200px 0;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  .story .sec-spera-01 .box-spera-01 {
    padding: 80px 10% 160px;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .sec-spera-01 .box-spera-01 {
    padding: 100px 0;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .sec-spera-01 .box-spera-01 {
    padding: 200px 0;
  }
}
.story .box-layout-story-01 {
  display: table;
  width: 100%;
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-01 {
    background-color: #00192a;
  }
}
.story .box-layout-story-01 .img-layout-story-01 {
  display: table-cell;
  vertical-align: middle;
  text-align: right;
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-01 .img-layout-story-01 {
    width: 25%;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-01 .img-layout-story-01 {
    width: 40%;
  }
}
@media print, screen and (min-width: 1600px) {
  .story .box-layout-story-01 .img-layout-story-01 {
    width: 52%;
  }
}
.story .box-layout-story-01 .img-layout-story-01:before, .story .box-layout-story-01 .img-layout-story-01:after {
  content: "";
  display: block;
  position: absolute;
}
.story .box-layout-story-01 .img-layout-story-01:before {
  width: 100%;
  height: 100%;
  background: url(../../story/img/spera/bg_section_01.png) 0 0 no-repeat;
  background-size: cover;
  top: 0;
  left: 0;
  z-index: 1;
  transform-origin: top right;
}
.story .box-layout-story-01 .img-layout-story-01:after {
  width: 100%;
  height: 100%;
  background-color: white;
  top: 0;
  z-index: 2;
  transform: skewX(-30deg);
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-01 .img-layout-story-01:after {
    left: 20vw;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-01 .img-layout-story-01:after {
    left: 30vw;
  }
}
@media print, screen and (min-width: 1600px) {
  .story .box-layout-story-01 .img-layout-story-01:after {
    left: 42vw;
  }
}
.story .box-layout-story-01 .img-layout-story-01-in {
  display: inline-block;
  transform: skewX(30deg);
  transform-origin: top right;
  background-color: rgba(255, 255, 255, 0.5);
  -webkit-box-shadow: inset 0 0 200px #fff;
  -moz-box-shadow: inset 0 0 200px #fff;
  box-shadow: inset 0 0 200px #fff;
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-01 .img-layout-story-01-in {
    width: 20vw;
    height: 17.3vw;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-01 .img-layout-story-01-in {
    width: 38vw;
    height: 32.87vw;
  }
}
@media print {
  .story .box-layout-story-01 .img-layout-story-01-in {
    display: none;
  }
}
.story .box-layout-story-01 .box-layout-story-01-in {
  display: table-cell;
  vertical-align: middle;
  position: relative;
  z-index: 3;
}
@media only screen and (max-width: 1024px) {
  .story .box-layout-story-01 .box-layout-story-01-in:before {
    content: "";
    display: block;
    width: 25%;
    height: 100%;
    background: url(../../story/img/spera/bg_section_01_sp.png) 0 0 no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
  }
}
.story .sec-spera-02 {
  position: relative;
  overflow: hidden;
  z-index: 4;
  background: url(../../story/img/spera/bg_section_02.png) 0 0 no-repeat;
  background-size: contain;
  margin-top: -100px;
  padding-top: 18%;
}
.story .sec-spera-02.regenerate {
  background: url(../../story/img/regenerative-medicine/bg_section_02.jpg) 0 0 no-repeat;
  background-size: contain;
  padding-top: 13%;
}
@media only screen and (max-width: 767px) {
  .story .sec-spera-02.regenerate.type01 {
    padding-bottom: 130px;
  }
}
.story .regenerate .note {
  position: relative;
  z-index: 10;
  padding: 20px 20px 0;
  margin-bottom: 0;
  text-align: left;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .story .regenerate .note {
    padding: 5px 10px 0;
  }
}
.story .regenerate .note.style01 {
  padding-left: 40px;
}
@media only screen and (max-width: 767px) {
  .story .regenerate .note.style01 {
    padding-left: 10px;
  }
}
.story .img-layout-story-02 {
  max-width: 1920px;
  position: relative;
  width: 100%;
  height: 45vw;
  margin: 40px auto;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .img-layout-story-02 {
    margin: 100px auto;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .img-layout-story-02 {
    margin: 0 auto 40px;
  }
}
.story .img-layout-story-02 .box-image-01 {
  position: absolute;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 50%;
}
.story .img-layout-story-02 .box-image-01:first-child {
  top: 40px;
  left: 0;
}
@media only screen and (max-width: 767px) {
  .story .img-layout-story-02 .box-image-01:first-child {
    top: 10px;
  }
}
.story .img-layout-story-02 .box-image-01:last-child {
  top: -40px;
  right: 0;
}
@media only screen and (max-width: 767px) {
  .story .img-layout-story-02 .box-image-01:last-child {
    top: -10px;
  }
}
.story .img-layout-story-02 .box-image-01 img {
  width: 100%;
  height: auto;
}
.story .img-layout-story-02.effect .box-image-01 {
  opacity: 0;
  -webkit-transition: all 1s ease 0s;
  -moz-transition: all 1s ease 0s;
  -ms-transition: all 1s ease 0s;
  -o-transition: all 1s ease 0s;
  transition: all 1s ease 0s;
}
.story .img-layout-story-02.effect .box-image-01:first-child {
  margin-left: 40px;
}
.story .img-layout-story-02.effect .box-image-01:last-child {
  margin-right: 40px;
}
.story .img-layout-story-02.effect.is-active .box-image-01 {
  opacity: 1;
  margin-right: 0;
  margin-left: 0;
}
.story .sec-spera-03 {
  position: relative;
  overflow: hidden;
  padding-bottom: 120px;
  max-width: 1920px;
  margin: 0 auto;
}
.story .sec-spera-03.type01 {
  padding-top: 100px;
}
@media only screen and (max-width: 767px) {
  .story .sec-spera-03.type01 {
    padding-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .story .sec-spera-03 {
    overflow: visible;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .sec-spera-03 .txt-story-lead-01 {
    padding-right: 15%;
  }
}
.story .sec-spera-03 .img-small-sp {
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .story .sec-spera-03 .img-small-sp {
    display: none;
  }
}
.story .sec-spera-03 .img-small-sp img {
  width: 100%;
  height: auto;
}
.story .sec-spera-03 .img-small-sp.effect {
  transform: translateY(-50px);
}
.story .sec-spera-03 .img-small-sp.effect.is-active {
  transform: translateY(0px);
}
@media only screen and (max-width: 1024px) {
  .story .sec-spera-03.qatar {
    padding-bottom: 0px;
  }
}
.story .box-layout-story-02 {
  display: table;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .story .box-layout-story-02 {
    margin-top: -50px;
  }
}
.story .box-layout-story-02 .box-layout-story-02-in,
.story .box-layout-story-02 .img-layout-story-03 {
  display: table-cell;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.story .box-layout-story-02 .box-layout-story-02-in {
  padding-top: 100px;
  padding-left: 10%;
  padding-right: 10%;
}
@media only screen and (max-width: 767px) {
  .story .box-layout-story-02 .box-layout-story-02-in {
    padding-top: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .box-layout-story-02 .box-layout-story-02-in {
    width: 100%;
    padding-top: 180px;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-02 .box-layout-story-02-in {
    padding-right: 0;
    padding-left: 5%;
    width: 75%;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-02 .box-layout-story-02-in {
    width: 60%;
  }
}
@media print, screen and (min-width: 1600px) {
  .story .box-layout-story-02 .box-layout-story-02-in {
    width: 55%;
  }
}
.story .box-layout-story-02 .box-layout-story-02-in.papua {
  padding-top: 0;
}
.story .box-layout-story-02 .img-layout-story-03 {
  position: relative;
}
.story .box-layout-story-02 .img-layout-story-03 .tit-bg-story-02 {
  position: absolute;
  transform: rotate(60deg);
  transform-origin: top left;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .box-layout-story-02 .img-layout-story-03 .tit-bg-story-02 {
    top: -10px;
    right: -420px;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-02 .img-layout-story-03 .tit-bg-story-02 {
    top: -10px;
    right: -320px;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-02 .img-layout-story-03 .tit-bg-story-02 {
    top: 50px;
    left: -110px;
    right: auto;
  }
}
@media print, screen and (min-width: 1600px) {
  .story .box-layout-story-02 .img-layout-story-03 .tit-bg-story-02 {
    left: -190px;
  }
}
.story .box-layout-story-02 .img-layout-story-03 .img-small {
  z-index: 3;
  height: auto;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .box-layout-story-02 .img-layout-story-03 .img-small {
    top: 15px;
    width: 310px;
    right: -50px;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-02 .img-layout-story-03 .img-small {
    top: 15px;
    width: 360px;
    right: 0;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-02 .img-layout-story-03 .img-small {
    top: 80px;
    width: 35vw;
    right: 20%;
  }
}
@media print, screen and (min-width: 1600px) {
  .story .box-layout-story-02 .img-layout-story-03 .img-small {
    left: -120px;
    right: auto;
    width: auto;
  }
}
.story .box-layout-story-02 .img-layout-story-03 .img-large {
  transform: translateX(10px);
  bottom: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: auto;
  display: none;
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-02 .img-layout-story-03 .img-large {
    width: 52vw;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-02 .img-layout-story-03 .img-large {
    display: block;
  }
}
@media print, screen and (min-width: 1600px) {
  .story .box-layout-story-02 .img-layout-story-03 .img-large {
    width: auto;
    top: 0;
    bottom: auto;
  }
}
.story .box-layout-story-02 .img-layout-story-03 .img-large.effect {
  transform: translateY(40px);
}
.story .box-layout-story-02 .img-layout-story-03 .img-large.effect.is-active {
  transform: translateY(0px);
}
.story .box-layout-story-02 .img-layout-story-03 .img-small,
.story .box-layout-story-02 .img-layout-story-03 .img-large {
  position: absolute;
}
@media print, screen and (min-width: 1921px) {
  .story .box-layout-story-02 .img-layout-story-03 .img-small,
.story .box-layout-story-02 .img-layout-story-03 .img-large {
    width: auto;
  }
}
.story .box-layout-story-03 {
  display: table;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
}
.story .box-layout-story-03 .box-layout-story-03-in,
.story .box-layout-story-03 .img-layout-story-03 {
  display: block;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-03 .box-layout-story-03-in,
.story .box-layout-story-03 .img-layout-story-03 {
    display: table-cell;
  }
}
.story .box-layout-story-03 .box-layout-story-03-in {
  padding: 0 10% 60px;
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-03 .box-layout-story-03-in {
    width: 70%;
    padding: 150px 50px;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-03 .box-layout-story-03-in {
    width: 60%;
    padding: 100px;
  }
}
@media print {
  .story .box-layout-story-03 .box-layout-story-03-in {
    width: auto !important;
  }
}
.story .box-layout-story-03 .box-layout-story-03-in .tit-bg-story-02 {
  position: absolute;
  top: -60px;
  left: 0px;
  z-index: -1;
}
@media only screen and (max-width: 767px) {
  .story .box-layout-story-03 .box-layout-story-03-in .tit-bg-story-02 {
    top: -30px;
  }
}
@media only screen and (max-width: 1024px) {
  .story .box-layout-story-03 .box-layout-story-03-in .tit-bg-story-02 {
    text-align: center;
  }
  .story .box-layout-story-03 .box-layout-story-03-in .tit-bg-story-02 img {
    width: 90%;
    height: auto;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-03 .box-layout-story-03-in .tit-bg-story-02 {
    top: 100px;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-03 .box-layout-story-03-in .tit-bg-story-02 {
    left: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .story .box-layout-story-03 .box-layout-story-03-in .link-02 {
    word-break: break-all;
  }
  .story .box-layout-story-03 .box-layout-story-03-in .link-02:before, .story .box-layout-story-03 .box-layout-story-03-in .link-02:after {
    display: none;
  }
}
.story .box-layout-story-03 .tit-story-02 {
  margin-top: 100px;
}
@media only screen and (max-width: 767px) {
  .story .box-layout-story-03 .tit-story-02 {
    margin-top: 30px;
  }
}
.story .box-layout-story-03 .tit-story-02.type02 {
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  .story .box-layout-story-03 .tit-story-02.type02 {
    margin-top: 30px;
  }
}
.story .box-layout-story-03 .txt-story-lead-01 {
  padding-right: 0;
}
.story .box-layout-story-03 .img-layout-story-03 {
  text-align: right;
  width: 60%;
}
@media only screen and (max-width: 1024px) {
  .story .box-layout-story-03 .img-layout-story-03 {
    margin: 60px auto 0;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-03 .img-layout-story-03 {
    width: 30%;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-03 .img-layout-story-03 {
    width: 40%;
  }
}
@media print {
  .story .box-layout-story-03 .img-layout-story-03 {
    width: 360px !important;
  }
  .story .box-layout-story-03 .img-layout-story-03 .mod-square-story-wp img {
    width: 360px !important;
  }
}
.story .box-layout-story-03 .img-layout-story-03 .img-small {
  z-index: 3;
  height: auto;
  position: absolute;
  top: -60%;
  left: -60%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .box-layout-story-03 .img-layout-story-03 .img-small {
    width: 310px;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-03 .img-layout-story-03 .img-small {
    width: 360px;
  }
}
@media print, screen and (min-width: 1921px) {
  .story .box-layout-story-03 .img-layout-story-03 .img-small {
    width: auto;
  }
}
.story .box-layout-story-03 .img-layout-story-03 .mod-square-story-wp {
  display: inline-block;
  width: 100%;
  height: auto;
}
.story .box-layout-story-03 .img-layout-story-03 .mod-square-story-wp img {
  max-width: 100%;
  height: auto;
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-03 .img-layout-story-03 .mod-square-story-wp {
    width: 480px;
    height: 480px;
  }
}
@media print {
  .story .box-layout-story-03 .img-layout-story-03 .mod-square-story-wp {
    width: 100%;
    height: auto;
  }
}
.story .box-layout-story-03 .img-layout-story-03 .mod-square-story {
  top: -20px;
  left: -20px;
}
.story .box-layout-story-03 .img-layout-story-03 .mod-square-story.rev {
  top: auto;
  left: auto;
  bottom: -20px;
  right: -20px;
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-03.papua .img-layout-story-03 .mod-square-story-wp {
    width: 100%;
    height: auto;
  }
}
.story .box-layout-story-03.papua .note {
  margin: 20px auto 0;
  padding: 0 20px;
  text-align: left;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: bold;
}
@media only screen and (max-width: 1024px) {
  .story .box-layout-story-03.rev .img-layout-story-03 {
    margin: 0px auto 60px;
  }
}
.story .box-layout-story-04 {
  width: 80%;
  max-width: 1600px;
  margin: 0 auto;
  display: table;
  padding: 40px 0;
}
@media print {
  .story .box-layout-story-04 {
    width: 100%;
  }
}
.story .box-layout-story-04 .box-layout-story-04-in,
.story .box-layout-story-04 .img-layout-story-04 {
  display: block;
  vertical-align: top;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-04 .box-layout-story-04-in,
.story .box-layout-story-04 .img-layout-story-04 {
    display: table-cell;
  }
}
@media print, screen and (min-width: 1600px) {
  .story .box-layout-story-04 .box-layout-story-04-in,
.story .box-layout-story-04 .img-layout-story-04 {
    vertical-align: middle;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-04 .box-layout-story-04-in {
    width: 70%;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-04 .box-layout-story-04-in {
    width: 60%;
  }
}
@media print, screen and (min-width: 1600px) {
  .story .box-layout-story-04 .box-layout-story-04-in {
    width: 50%;
  }
}
@media print {
  .story .box-layout-story-04 .box-layout-story-04-in {
    width: 70%;
  }
}
.story .box-layout-story-04 .img-layout-story-04 {
  text-align: center;
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-04 .img-layout-story-04 {
    width: 30%;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-04 .img-layout-story-04 {
    width: 40%;
  }
}
@media print, screen and (min-width: 1600px) {
  .story .box-layout-story-04 .img-layout-story-04 {
    width: 50%;
  }
}
.story .box-layout-story-04 .img-layout-story-04 .mod-square-story-wp {
  max-width: 800px;
}
.story .box-layout-story-04 .img-layout-story-04 img {
  width: 100%;
  height: auto;
}
.story .box-layout-story-04 .tit-bg-story-02 {
  position: absolute;
  top: -60px;
  left: 0px;
  z-index: -1;
}
@media only screen and (max-width: 1024px) {
  .story .box-layout-story-04 .tit-bg-story-02 {
    text-align: center;
  }
  .story .box-layout-story-04 .tit-bg-story-02 img {
    width: 90%;
    height: auto;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .box-layout-story-04 .tit-bg-story-02 {
    top: -30px;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-04 .tit-bg-story-02 {
    left: 60px;
  }
}
.story .sec-spera-04 {
  background: url(../../story/img/spera/bg_section_04.png) 50% 200px no-repeat;
  padding: 100px 0;
}
@media only screen and (max-width: 767px) {
  .story .sec-spera-04 {
    padding-top: 0;
    background-position: 50% 0px;
  }
}
.story .sec-spera-04 .img-layout-story-04 {
  width: 90%;
  max-width: 1200px;
  margin: 60px auto 0;
  text-align: center;
}
@media print, screen and (min-width: 1025px) {
  .story .sec-spera-04 .img-layout-story-04 img {
    max-width: 100%;
    height: auto;
  }
}
@media print {
  .story .sec-spera-04 .img-layout-story-04 {
    margin-top: 0;
  }
}
.story .sec-spera-04.type01 {
  background-image: none;
}
.story .sec-spera-04.type01 .img-layout-story-04 {
  width: 100%;
  max-width: 100%;
  text-align: center;
}
.story .sec-spera-04.type01 .img-layout-story-04 img {
  width: 90%;
  max-width: 100%;
  height: auto;
}
.story .sec-spera-04.qatar {
  margin-top: 60px;
}
.story .box-layout-story-05 {
  padding: 0 10%;
}
@media print, screen and (min-width: 1280px) {
  .story .box-layout-story-05 {
    padding-left: 50%;
    padding-right: 50px;
  }
}
@media print, screen and (min-width: 1600px) {
  .story .box-layout-story-05 {
    padding-left: 50%;
    padding-right: 100px;
  }
}
@media print {
  .story .box-layout-story-05 {
    padding-right: 0;
  }
}
.story .box-layout-story-05 p {
  text-shadow: 0px 0px 5px white;
}
.story .img-layout-story-05 {
  text-align: center;
  margin-top: 60px;
}
.story .img-layout-story-05 img {
  width: 90%;
  height: auto;
}
@media print, screen and (min-width: 768px) {
  .story .img-layout-story-05 img {
    width: auto;
    max-width: 100%;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .img-layout-story-05 img {
    width: 100%;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .img-layout-story-05 {
    position: absolute;
    bottom: 40px;
    left: -260px;
    z-index: -1;
  }
}
@media print, screen and (min-width: 1600px) {
  .story .img-layout-story-05 {
    left: -120px;
  }
}
@media print {
  .story .img-layout-story-05 {
    left: -260px;
    bottom: auto;
    top: 0 !important;
  }
}
.story .img-layout-story-05 .tit-bg-story-02 {
  margin-bottom: -30px;
  position: relative;
  z-index: 1;
}
@media print, screen and (min-width: 1280px) {
  .story .img-layout-story-05 .tit-bg-story-02 {
    position: absolute;
    top: 0;
    right: -45%;
    transform: rotate(60deg);
    transform-origin: top left;
    z-index: -2;
  }
}
.story .sec-spera-05 {
  overflow: hidden;
  position: relative;
  z-index: 1;
  padding: 120px 40px;
  margin-bottom: 80px;
}
@media only screen and (max-width: 1024px) {
  .story .sec-spera-05 {
    padding: 80px 0;
  }
}
@media print {
  .story .sec-spera-05 {
    padding-bottom: 0;
  }
}
.story .sec-spera-05 .sec-spera-05-in.effect:before, .story .sec-spera-05 .sec-spera-05-in.effect:after {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background-color: #00a0dc;
  position: absolute;
  -webkit-transition: all 1.5s ease 1s;
  -moz-transition: all 1.5s ease 1s;
  -ms-transition: all 1.5s ease 1s;
  -o-transition: all 1.5s ease 1s;
  transition: all 1.5s ease 1s;
}
.story .sec-spera-05 .sec-spera-05-in.effect:before {
  top: 40px;
  left: 0;
}
.story .sec-spera-05 .sec-spera-05-in.effect:after {
  bottom: 0px;
  right: 0;
}
.story .sec-spera-05 .sec-spera-05-in.effect.is-active:before, .story .sec-spera-05 .sec-spera-05-in.effect.is-active:after {
  width: 100%;
}
.story .sec-regenerate-01 {
  padding-bottom: 100px;
}
.story .box-regenerate-01 {
  width: 80%;
  max-width: 800px;
  margin: 0 auto;
}
.story .mod-story-number-01 {
  display: table;
  width: 120px;
  height: 120px;
  color: #fff;
  font-family: Roboto;
  line-height: 1;
  text-align: center;
  background-color: #00192a;
  border: 1px solid #fff;
  position: relative;
  z-index: 1;
}
@media print, screen and (min-width: 1025px) {
  .story .mod-story-number-01 {
    width: 200px;
    height: 200px;
  }
}
@media only screen and (max-width: 767px) {
  .story .mod-story-number-01 {
    width: 60px;
    height: 60px;
  }
}
.story .mod-story-number-01 .mod-story-number-in {
  display: table-cell;
  vertical-align: middle;
}
.story .mod-story-number-01 .tit {
  margin-top: -10px;
  font-size: 22px;
  font-size: 2.2rem;
  font-style: italic;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .mod-story-number-01 .tit {
    font-size: 45px;
    font-size: 4.5rem;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .mod-story-number-01 .tit {
    font-size: 74px;
    font-size: 7.4rem;
  }
}
.story .mod-story-number-01 .label-mod-story-number-01 {
  width: 100%;
  font-size: 14px;
  font-size: 1.4rem;
  padding: 7px 0;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #00a0dc;
}
@media print, screen and (min-width: 1025px) {
  .story .mod-story-number-01 .label-mod-story-number-01 {
    font-size: 20px;
    font-size: 2rem;
  }
}
@media only screen and (max-width: 767px) {
  .story .mod-story-number-01 .label-mod-story-number-01 {
    font-size: 10px;
    font-size: 1rem;
    padding: 2px 0;
  }
}
.story .mod-story-nav-prev-01,
.story .mod-story-nav-next-01 {
  display: table;
  position: absolute;
  z-index: 3;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  -webkit-animation: mv-story 1.5s ease 2s forwards;
  -moz-animation: mv-story 1.5s ease 2s forwards;
  -o-animation: mv-story 1.5s ease 2s forwards;
  animation: mv-story 1.5s ease 2s forwards;
}
@media only screen and (max-width: 767px) {
  .story .mod-story-nav-prev-01,
.story .mod-story-nav-next-01 {
    display: none;
  }
}
.story .mod-story-nav-prev-01 a,
.story .mod-story-nav-next-01 a {
  display: table-cell;
  vertical-align: middle;
  width: 50px;
  height: 50px;
  background-color: #00192a;
  font-family: Roboto;
  color: #fff;
  line-height: 1;
  font-style: italic;
  text-align: center;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.PC .story .mod-story-nav-prev-01:hover a,
.PC .story .mod-story-nav-next-01:hover a {
  width: 80px;
  height: 80px;
}
.PC .story .mod-story-nav-prev-01:hover.style01:before,
.PC .story .mod-story-nav-next-01:hover.style01:before {
  border-color: #00a0dc;
}
.PC .story .mod-story-nav-prev-01:hover.style02:before,
.PC .story .mod-story-nav-next-01:hover.style02:before {
  border-color: #ffa40d;
}
.PC .story .mod-story-nav-prev-01:hover.style03:before,
.PC .story .mod-story-nav-next-01:hover.style03:before {
  border-color: #7fce39;
}
.PC .story .mod-story-nav-prev-01:hover .tit,
.PC .story .mod-story-nav-next-01:hover .tit {
  font-size: 18px;
  font-size: 1.8rem;
}
.PC .story .mod-story-nav-prev-01:hover .number,
.PC .story .mod-story-nav-next-01:hover .number {
  font-size: 28px;
  font-size: 2.8rem;
}
.story .mod-story-nav-prev-01:before, .story .mod-story-nav-prev-01:after,
.story .mod-story-nav-next-01:before,
.story .mod-story-nav-next-01:after {
  content: "";
  display: block;
  position: absolute;
  pointer-events: none;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.story .mod-story-nav-prev-01:before,
.story .mod-story-nav-next-01:before {
  width: 85%;
  height: 85%;
  border: 1px solid transparent;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
.story .mod-story-nav-prev-01:after,
.story .mod-story-nav-next-01:after {
  width: 4px;
  height: 4px;
  border-style: solid;
  border-width: 2px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}
.story .mod-story-nav-prev-01 .tit,
.story .mod-story-nav-next-01 .tit {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
}
.story .mod-story-nav-prev-01 {
  left: 0;
}
.story .mod-story-nav-prev-01 .tit {
  margin-right: -5px;
}
.story .mod-story-nav-prev-01:after {
  border-color: transparent transparent #fff #fff;
  left: 5px;
}
.PC .story .mod-story-nav-prev-01:hover:after {
  left: 10px;
}
.story .mod-story-nav-next-01 {
  right: 0;
}
.story .mod-story-nav-next-01 .tit {
  margin-left: -5px;
}
.story .mod-story-nav-next-01:after {
  border-color: #fff #fff transparent transparent;
  right: 5px;
}
.PC .story .mod-story-nav-next-01:hover:after {
  right: 10px;
}
.story .mod-triangle-story,
.story .mod-triangle-story:before,
.story .mod-triangle-story:after {
  width: 0px;
  height: 1px;
  background-color: #00a0dc;
  position: absolute;
  z-index: 10;
}
.story .mod-triangle-story {
  -webkit-transition: all 1s ease 0s;
  -moz-transition: all 1s ease 0s;
  -ms-transition: all 1s ease 0s;
  -o-transition: all 1s ease 0s;
  transition: all 1s ease 0s;
}
.story .mod-triangle-story:before {
  -webkit-transition: all 1s ease 1s;
  -moz-transition: all 1s ease 1s;
  -ms-transition: all 1s ease 1s;
  -o-transition: all 1s ease 1s;
  transition: all 1s ease 1s;
}
.story .mod-triangle-story:after {
  -webkit-transition: all 1.5s ease 0.5s;
  -moz-transition: all 1.5s ease 0.5s;
  -ms-transition: all 1.5s ease 0.5s;
  -o-transition: all 1.5s ease 0.5s;
  transition: all 1.5s ease 0.5s;
}
.story .mod-triangle-story:before, .story .mod-triangle-story:after {
  content: "";
  display: block;
}
.story .mod-triangle-story:before {
  transform: rotate(-60deg);
  transform-origin: top right;
  right: 1px;
}
.story .mod-triangle-story:after {
  transform: rotate(60deg);
  transform-origin: top left;
  left: 1px;
}
.story .sec-spera-01 .mod-triangle-story {
  transform: translateY(-50%);
  top: 51%;
}
@media print, screen and (min-width: 1025px) {
  .story .sec-spera-01 .mod-triangle-story.is-active,
.story .sec-spera-01 .mod-triangle-story.is-active:before,
.story .sec-spera-01 .mod-triangle-story.is-active:after {
    width: 23vw;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .sec-spera-01 .mod-triangle-story.is-active,
.story .sec-spera-01 .mod-triangle-story.is-active:before,
.story .sec-spera-01 .mod-triangle-story.is-active:after {
    width: 41vw;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .sec-spera-01 .mod-triangle-story {
    margin-top: -9.9475vw;
    left: -23vw;
    margin-left: 1.5vw;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .sec-spera-01 .mod-triangle-story {
    margin-top: -17.7325vw;
    left: -41vw;
    margin-left: 1.5vw;
  }
}
.story .sec-spera-01 .tit-bg-story-01 {
  position: absolute;
  bottom: 40px;
  transform: rotate(-60deg);
  transform-origin: bottom left;
}
@media print, screen and (min-width: 1025px) {
  .story .sec-spera-01 .tit-bg-story-01 {
    left: -6.5vw;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .sec-spera-01 .tit-bg-story-01 {
    left: -13vw;
  }
}
.story .sec-spera-03 .mod-triangle-story {
  top: 65px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .sec-spera-03 .mod-triangle-story {
    top: 0px;
    right: -75px;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .sec-spera-03 .mod-triangle-story {
    top: 0px;
    right: -25px;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .sec-spera-03 .mod-triangle-story {
    top: 65px;
    right: 6vw;
  }
}
@media print, screen and (min-width: 1600px) {
  .story .sec-spera-03 .mod-triangle-story {
    left: -155px;
    right: auto;
  }
}
.story .sec-spera-03 .mod-triangle-story.is-active,
.story .sec-spera-03 .mod-triangle-story.is-active:before,
.story .sec-spera-03 .mod-triangle-story.is-active:after {
  width: 410px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .sec-spera-03 .mod-triangle-story.is-active,
.story .sec-spera-03 .mod-triangle-story.is-active:before,
.story .sec-spera-03 .mod-triangle-story.is-active:after {
    width: 360px;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .sec-spera-03 .mod-triangle-story.is-active,
.story .sec-spera-03 .mod-triangle-story.is-active:before,
.story .sec-spera-03 .mod-triangle-story.is-active:after {
    width: 410px;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .sec-spera-03 .mod-triangle-story.is-active,
.story .sec-spera-03 .mod-triangle-story.is-active:before,
.story .sec-spera-03 .mod-triangle-story.is-active:after {
    width: 39vw;
  }
}
@media print, screen and (min-width: 1600px) {
  .story .sec-spera-03 .mod-triangle-story.is-active,
.story .sec-spera-03 .mod-triangle-story.is-active:before,
.story .sec-spera-03 .mod-triangle-story.is-active:after {
    width: 690px;
  }
}
@media print, screen and (min-width: 1921px) {
  .story .sec-spera-03 .mod-triangle-story.is-active,
.story .sec-spera-03 .mod-triangle-story.is-active:before,
.story .sec-spera-03 .mod-triangle-story.is-active:after {
    width: 690px;
  }
}
.story .mod-square-story-wp {
  position: relative;
  width: 100%;
  height: 100%;
}
.story .mod-square-story {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 2;
  -webkit-transition: all 2s ease;
  -moz-transition: all 2s ease;
  -ms-transition: all 2s ease;
  -o-transition: all 2s ease;
  transition: all 2s ease;
  border: 1px solid transparent;
}
.story .mod-square-story:before, .story .mod-square-story:after {
  content: "";
  width: 0;
  height: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  z-index: 3;
  border-width: 1px;
  border-style: solid;
  border-color: transparent;
}
.story .mod-square-story:before {
  top: 0px;
  left: 0px;
}
.story .mod-square-story:after {
  bottom: 0px;
  right: 0px;
}
.story .effect.is-active .mod-square-story:before, .story .effect.is-active .mod-square-story:after {
  width: 100%;
  height: 100%;
}
.story .effect.is-active .mod-square-story:before {
  border-color: #00a0dc #00a0dc transparent transparent;
  transition: width 1s 0.5s, height 1s 1.5s;
}
.story .effect.is-active .mod-square-story:after {
  border-color: transparent transparent #00a0dc #00a0dc;
  transition: width 1s 0.5s, height 1s 1.5s;
}
.story .img-layout-story-02 .box-image-01:first-child .mod-square-story,
.story .img-layout-story-04 .box-image-01:first-child .mod-square-story {
  left: 2.5%;
  top: 3.3333333333%;
}
.story .img-layout-story-02 .box-image-01:last-child .mod-square-story,
.story .img-layout-story-04 .box-image-01:last-child .mod-square-story {
  right: 2.5%;
  bottom: 3.3333333333%;
}
.story .img-layout-story-02 .left .mod-square-story,
.story .img-layout-story-04 .left .mod-square-story {
  left: 2.5%;
  top: 3.3333333333%;
}
.story .img-layout-story-02 .right .mod-square-story,
.story .img-layout-story-04 .right .mod-square-story {
  right: 2.5%;
  bottom: 3.3333333333%;
}
.story .img-layout-story-02.effect .box-image-01:last-child .mod-square-story:before,
.story .img-layout-story-04.effect .box-image-01:last-child .mod-square-story:before {
  top: 0px;
  right: 0px;
  left: auto;
  bottom: auto;
}
.story .img-layout-story-02.effect .box-image-01:last-child .mod-square-story:after,
.story .img-layout-story-04.effect .box-image-01:last-child .mod-square-story:after {
  bottom: 0px;
  left: 0px;
  top: auto;
  right: auto;
}
.story .img-layout-story-02.effect.is-active .box-image-01:last-child .mod-square-story:before,
.story .img-layout-story-04.effect.is-active .box-image-01:last-child .mod-square-story:before {
  border-color: #00a0dc #00a0dc transparent transparent;
  transition: width 1s 0.5s, height 1s 1.5s;
}
.story .img-layout-story-02.effect.is-active .box-image-01:last-child .mod-square-story:after,
.story .img-layout-story-04.effect.is-active .box-image-01:last-child .mod-square-story:after {
  border-color: transparent transparent #00a0dc #00a0dc;
  transition: width 1s 0.5s, height 1s 1.5s;
}
.story .mod-relation-link-01 {
  text-align: center;
  overflow: hidden;
}
.story .mod-relation-link-01 .tit-mod-relation-link-01 {
  display: inline-block;
  font-size: 20px;
  font-size: 2rem;
  font-weight: normal;
  letter-spacing: 0.1;
  line-height: 1;
  padding: 10px 40px;
  color: #fff;
  background-color: #00192a;
  margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  .story .mod-relation-link-01 .tit-mod-relation-link-01 {
    padding: 10px 20px;
  }
}
@media all and (-ms-high-contrast: none) {
  .story .mod-relation-link-01 .tit-mod-relation-link-01 {
    padding-top: 15px;
  }
}
.story .mod-relation-link-01.effect .tit-mod-relation-link-01 {
  position: relative;
}
.story .mod-relation-link-01.effect .tit-mod-relation-link-01:before {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background-color: #00a0dc;
  position: absolute;
  top: 20px;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  -webkit-transition: all 1s ease 0s;
  -moz-transition: all 1s ease 0s;
  -ms-transition: all 1s ease 0s;
  -o-transition: all 1s ease 0s;
  transition: all 1s ease 0s;
}
.story .mod-relation-link-01.effect.is-active .tit-mod-relation-link-01:before {
  width: 100vw;
}
.story .mod-relation-link-01 .box-flex-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-justify-content: center;
  -moz-justify-content: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.story .mod-relation-link-01 .box-flex-01 .boxImg {
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
  .story .mod-relation-link-01 .box-flex-01 {
    -ms-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
@media all and (-ms-high-contrast: none) {
  .story .mod-relation-link-01 .box-flex-01 {
    display: block;
    text-align: center;
  }
}
.story .mod-relation-link-01 .item-flex-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px;
}
@media only screen and (max-width: 767px) {
  .story .mod-relation-link-01 .item-flex-01 {
    width: 50%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .mod-relation-link-01 .item-flex-01 {
    width: 25%;
  }
}
@media all and (-ms-high-contrast: none) {
  .story .mod-relation-link-01 .item-flex-01 {
    display: inline-block;
  }
}
.story .mod-relation-link-01 .item-flex-01 .boxImg {
  position: relative;
}
.story .mod-relation-link-01 .item-flex-01 .boxImg .caption {
  text-align: right;
  line-height: 1.1;
  position: absolute;
  bottom: 5px;
  right: 5px;
  font-size: 12px;
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  .story .mod-relation-link-01 .item-flex-01 .boxImg .caption {
    font-size: 8px;
    font-size: 0.8rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .mod-relation-link-01 .item-flex-01 .boxImg .caption {
    font-size: 10px;
    font-size: 1rem;
  }
}
.story .dialog-wp {
  width: 90%;
  margin: 0 auto;
  padding: 30px 0 60px;
}
@media print, screen and (min-width: 1025px) {
  .story .dialog-wp {
    width: 1000px;
    padding: 60px 0 120px;
  }
}
.story .box-dialog-lead-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #00a0dc;
  padding: 50px;
  margin-bottom: 80px;
  font-weight: bold;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .story .box-dialog-lead-01 {
    padding: 30px;
  }
}
.story .box-dialog-lead-01 p {
  margin-bottom: 0;
}
.story .box-dialog-lead-01 .mod-square-story {
  top: -10px;
  left: -10px;
}
@media print, screen and (min-width: 1025px) {
  .story .box-dialog-member-wp .box-dialog-member-01,
.story .box-dialog-member-wp .box-dialog-member-02 {
    display: table;
    width: 100%;
  }
}
.story .box-dialog-member-wp .tit-01 {
  font-weight: bold;
  position: relative;
  padding-left: 20px;
}
.story .box-dialog-member-wp .tit-01:before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  background-color: #00a0dc;
  position: absolute;
  top: 0.5em;
  left: 0;
}
@media print, screen and (min-width: 1025px) {
  .story .box-dialog-member-wp .tit-01 {
    display: table-cell;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    width: 20%;
    vertical-align: top;
  }
}
.story .box-dialog-member-wp .box-member-wp {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media print, screen and (min-width: 1025px) {
  .story .box-dialog-member-wp .box-member-wp {
    display: table-cell;
    width: 80%;
  }
}
.story .box-dialog-member-wp .box-member-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .story .box-dialog-member-wp .box-member-01 {
    width: 50%;
    margin-bottom: 40px;
    float: left;
  }
}
.story .box-dialog-member-wp .box-member-in {
  display: table;
  width: 100%;
}
.story .box-dialog-member-wp .box-member-in .box-img,
.story .box-dialog-member-wp .box-member-in .member {
  display: table-cell;
  vertical-align: middle;
  font-size: 12px;
  font-size: 1.2rem;
}
@media print, screen and (min-width: 1025px) {
  .story .box-dialog-member-wp .box-member-in .box-img,
.story .box-dialog-member-wp .box-member-in .member {
    font-size: 15px;
    font-size: 1.5rem;
  }
}
.story .box-dialog-member-wp .box-member-in .box-img .post,
.story .box-dialog-member-wp .box-member-in .member .post {
  display: block;
  line-height: 1.4;
}
.story .box-dialog-member-wp .box-member-in .box-img .name,
.story .box-dialog-member-wp .box-member-in .member .name {
  font-weight: bold;
  font-size: 16px;
  font-size: 1.6rem;
  color: #00a0dc;
}
.story .box-dialog-member-wp .box-member-in .box-img img {
  width: 100%;
  height: auto;
}
.story .box-dialog-member-wp .box-member-in .member {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 20px;
}
@media only screen and (max-width: 767px) {
  .story .box-dialog-member-wp .box-member-in .member {
    padding-left: 10px;
  }
}
.story .box-dialog-member-wp .box-dialog-member-01 {
  margin-top: 40px;
}
.story .box-dialog-member-wp .box-dialog-member-01 .box-member-in .box-img {
  width: 160px;
}
@media print, screen and (min-width: 1025px) {
  .story .box-dialog-member-wp .box-dialog-member-01 .box-member-in .member {
    width: 240px;
  }
}
@media only screen and (max-width: 767px) {
  .story .box-dialog-member-wp .box-dialog-member-01 .box-member-in .member {
    vertical-align: bottom;
  }
}
.story .box-dialog-member-wp .box-dialog-member-02 .tit-01:before {
  background-color: #0068af;
}
.story .box-dialog-member-wp .box-dialog-member-02 .name {
  color: #00a0dc;
}
@media only screen and (max-width: 767px) {
  .story .box-dialog-member-wp .box-dialog-member-02 .box-member-in .box-img,
.story .box-dialog-member-wp .box-dialog-member-02 .box-member-in .member {
    display: block;
  }
}
.story .box-dialog-member-wp .box-dialog-member-02 .box-member-in .box-img {
  width: 320px;
}
@media only screen and (max-width: 767px) {
  .story .box-dialog-member-wp .box-dialog-member-02 .box-member-in .box-img {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .story .box-dialog-member-wp .box-dialog-member-02 .box-member-in .member {
    padding-left: 0;
    padding-top: 20px;
  }
}
@media print, screen and (min-width: 768px) {
  .story .box-dialog-member-wp .box-dialog-member-02 .box-member-01 {
    width: 100%;
  }
}
.story .box-dialog-member-wp .box-dialog-title-01 {
  font-size: 24px;
  font-size: 2.4rem;
  margin-bottom: 30px;
}
@media print, screen and (min-width: 1025px) {
  .story .box-dialog-member-wp .box-dialog-title-01 {
    font-size: 32px;
    font-size: 3.2rem;
  }
}
.story .sec-dialog-01 {
  margin-top: 80px;
}
.story .sec-dialog-01 .tit-dialog-01 {
  font-size: 24px;
  font-size: 2.4rem;
  position: relative;
  padding-left: 35px;
  line-height: 1.5;
}
.story .sec-dialog-01 .tit-dialog-01:before {
  content: "";
  display: block;
  height: 0;
  width: 0;
  border-style: solid;
  border-color: #00a0dc transparent transparent transparent;
  border-width: 23px 14px;
  position: absolute;
  top: 0.25em;
  left: 0;
}
.story .sec-dialog-01 .tit-dialog-02 {
  background-color: #eee;
  padding: 20px;
  padding-left: 60px;
  margin-top: 20px;
  color: #0068af;
  line-height: 1.5;
  font-weight: bold;
  position: relative;
}
.story .sec-dialog-01 .tit-dialog-02:before {
  content: "";
  display: block;
  width: 30px;
  height: 1px;
  background-color: #0068af;
  position: absolute;
  top: 30px;
  left: 20px;
}
@media only screen and (max-width: 767px) {
  .story .sec-dialog-01 .tit-dialog-02 {
    padding: 10px 20px 10px 60px;
  }
  .story .sec-dialog-01 .tit-dialog-02:before {
    top: 20px;
  }
}
@media all and (-ms-high-contrast: none) {
  .story .sec-dialog-01 .tit-dialog-02 {
    padding: 15px 20px 5px 60px;
  }
  .story .sec-dialog-01 .tit-dialog-02:before {
    top: 25px;
  }
}
.story .sec-dialog-01 .box-dialog-paragraph-01 {
  display: table;
  width: 100%;
  padding: 20px 0;
}
.story .sec-dialog-01 .box-dialog-paragraph-01 .member,
.story .sec-dialog-01 .box-dialog-paragraph-01 .paragraph {
  display: table-cell;
  vertical-align: top;
}
@media only screen and (max-width: 767px) {
  .story .sec-dialog-01 .box-dialog-paragraph-01 .member,
.story .sec-dialog-01 .box-dialog-paragraph-01 .paragraph {
    display: block;
  }
}
.story .sec-dialog-01 .box-dialog-paragraph-01 .member {
  width: 6em;
  font-weight: bold;
  color: #00a0dc;
}
.jp .story .sec-dialog-01 .box-dialog-paragraph-01 .member {
  width: 4em;
}
.story .sec-dialog-01 .box-dialog-paragraph-01 .paragraph {
  padding: 0 20px;
  border-left: 3px solid #00a0dc;
}
@media only screen and (max-width: 767px) {
  .story .sec-dialog-01 .box-dialog-paragraph-01 .paragraph {
    border-left: none;
    border-top: 2px solid #00a0dc;
    padding: 20px 0 0;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .sec-dialog-01 .box-dialog-paragraph-01 .paragraph .box-txt {
    margin-bottom: 0;
  }
}
.story .sec-dialog-01 .box-dialog-paragraph-01 .paragraph .box-img {
  width: 100%;
}
.story .sec-dialog-01 .box-dialog-paragraph-01 .paragraph .box-img img {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  border: 5px solid #fff;
  -webkit-box-shadow: 0px 1px 2px 2px rgba(204, 204, 204, 0.5);
  -moz-box-shadow: 0px 1px 2px 2px rgba(204, 204, 204, 0.5);
  box-shadow: 0px 1px 2px 2px rgba(204, 204, 204, 0.5);
}
@media print, screen and (min-width: 1025px) {
  .story .sec-dialog-01 .box-dialog-paragraph-01 .paragraph.img-type01 .box-txt {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    width: 50%;
    padding-right: 20px;
    float: left;
  }
  .story .sec-dialog-01 .box-dialog-paragraph-01 .paragraph.img-type01 .box-img {
    width: 50%;
    float: right;
  }
}
.story .sec-dialog-01 .box-dialog-paragraph-01 .paragraph.img-type02 .box-img {
  width: 120px;
  float: right;
  padding-left: 20px;
}
.story .sec-dialog-01 .box-dialog-paragraph-01 .paragraph.img-type02 .box-img img {
  border: none;
  box-shadow: none;
}
.story .sec-dialog-01 .box-dialog-paragraph-01.style01 .member {
  color: #0068af;
}
.story .sec-dialog-01 .box-dialog-paragraph-01.style01 .paragraph {
  border-color: #0068af;
}
.story .sec-dialog-01 .box-dialog-picture-01 {
  margin-top: 20px;
  width: 100%;
}
.story .sec-dialog-01 .box-dialog-picture-01 .img {
  width: 100%;
}
.story .sec-dialog-01 .box-dialog-picture-01 .img > img {
  width: 100%;
  height: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border: 5px solid #fff;
  -webkit-box-shadow: 0px 1px 2px 2px rgba(204, 204, 204, 0.5);
  -moz-box-shadow: 0px 1px 2px 2px rgba(204, 204, 204, 0.5);
  box-shadow: 0px 1px 2px 2px rgba(204, 204, 204, 0.5);
}
.story .dialog2019-wp {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.story .dialog2019-wp .sec-content__hdg {
  font-size: 2.4rem;
  margin-bottom: 30px;
}
@media print, screen and (min-width: 1025px) {
  .story .dialog2019-wp .sec-content__hdg {
    font-size: 3.2rem;
  }
}
.story .dialog2019-wp .sec-content .m-img {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border: 4px solid #fff;
  box-shadow: 0px 0px 4px 1px rgba(0, 0, 0, 0.2);
}
.story .dialog2019-wp .sec-content img {
  width: 100%;
}
.story .dialog2019-wp .sec-content .m-person + .m-person {
  margin-top: 30px;
}
.story .dialog2019-wp .sec-content .m-person__tagline {
  font-size: 1.6rem;
  line-height: 1;
}
.story .dialog2019-wp .sec-content .m-person__ttl {
  margin-top: 20px;
  font-size: 1.6rem;
  border-bottom: 2px solid #fff;
  line-height: 1.5;
  padding-bottom: 5px;
}
.story .dialog2019-wp .sec-content .m-person__name {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.75;
  margin-top: 15px;
  font-size: 1.6rem;
}
.story .dialog2019-wp .sec-content .m-person__name .position {
  font-weight: 400;
  font-size: 1.4rem;
  display: block;
}
.story .dialog2019-wp .sec-content .m-media .m-media__img img {
  width: 100%;
}
.story .dialog2019-wp .sec-content .m-media__txt {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  background: #00a0dc;
  padding: 25px 20px;
  color: #fff;
}
.story .dialog2019-wp .sec-content .m-person__lead {
  margin-top: 30px;
  font-size: 1.4rem;
}
.story .dialog2019-wp .sec-content .m-person__body {
  margin-top: 30px;
}
.story .dialog2019-wp .sec-content .m-person__row + .m-person__row {
  margin-top: 30px;
}
.story .dialog2019-wp .sec-content .m-person__body .row-ttl {
  position: relative;
  background: #eee;
  padding: 18px 20px;
  color: #0068af;
  font-size: 1.4rem;
  line-height: 1;
}
.story .dialog2019-wp .sec-content .m-person__body .row-list {
  margin-top: 20px;
}
.story .dialog2019-wp .sec-content .m-person__body .row-list .row-item__ttl,
.story .dialog2019-wp .sec-content .m-person__body .row-list .row-item__txt,
.story .dialog2019-wp .sec-content .m-person__txt .txt {
  font-size: 1.4rem;
  color: #333;
}
.story .dialog2019-wp .sec-content .m-person__body .row-list .row-item__txt {
  margin-top: 10px;
}
.story .dialog2019-wp .sec-content .m-person__body .row-list .row-item {
  margin-top: 20px;
}
.story .dialog2019-wp .sec-content .m-person__body .row-list .row-item :first-child {
  margin-top: 0;
}
.story .dialog2019-wp .sec-content .m-person__txt {
  margin-top: 20px;
}
.story .dialog2019-wp .sec-content .m-person__txt .hdg {
  font-size: 1.4rem;
}
.story .dialog2019-wp .sec-content .m-person__txt .txt {
  margin-top: 10px;
}
@media print, screen and (min-width: 1025px) {
  .story .dialog2019-wp .sec-content .m-media {
    display: flex;
    align-items: center;
    width: 100%;
    background: #00a0dc;
  }
  .story .dialog2019-wp .sec-content .m-media .m-media__img {
    width: 40%;
  }
  .story .dialog2019-wp .sec-content .m-media .m-media__txt {
    position: relative;
    width: 60%;
    padding: 30px 35px 20px 35px;
  }
  .story .dialog2019-wp .sec-content .m-media .m-media__txt:before {
    content: "";
    display: block;
    position: absolute;
    left: -24px;
    top: 50%;
    transform: translateY(-50%);
    border-style: solid;
    border-width: 17px 24px 17px 0;
    border-color: transparent #00a0dc transparent transparent;
  }
  .story .dialog2019-wp .sec-content .m-person + .m-person {
    margin-top: 80px;
  }
  .story .dialog2019-wp .sec-content .m-person__tagline {
    font-size: 2.3rem;
  }
  .story .dialog2019-wp .sec-content .m-person__ttl {
    margin-top: 16px;
    font-size: 2.4rem;
    padding-bottom: 7px;
  }
  .story .dialog2019-wp .sec-content .m-person__name {
    font-size: 2rem;
  }
  .story .dialog2019-wp .sec-content .m-person__name .position {
    font-size: 1.7rem;
  }
  .story .dialog2019-wp .sec-content .m-person__body .row-list .row-item__ttl,
.story .dialog2019-wp .sec-content .m-person__body .row-list .row-item__txt,
.story .dialog2019-wp .sec-content .m-person__txt .txt {
    font-size: 1.6rem;
  }
  .story .dialog2019-wp .sec-content .m-person__lead {
    margin-top: 35px;
  }
  .story .dialog2019-wp .sec-content .m-person__lead .txt {
    font-size: 1.6rem;
  }
  .story .dialog2019-wp .sec-content .m-person__body {
    display: flex;
    justify-content: space-between;
  }
  .story .dialog2019-wp .sec-content .m-person__row {
    width: 48%;
  }
  .story .dialog2019-wp .sec-content .m-person__row + .m-person__row {
    margin-top: 0;
  }
  .story .dialog2019-wp .sec-content .m-person__body .row-ttl {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1.6rem;
    padding: 22px 20px;
  }
  .story .dialog2019-wp .sec-content .m-person__body .row-ttl:before {
    left: 25px;
  }
  .story .dialog2019-wp .sec-content .m-person__body .row-list {
    margin-top: 25px;
  }
  .story .dialog2019-wp .sec-content .m-person__body .row-list .row-item {
    margin-top: 35px;
  }
  .story .dialog2019-wp .sec-content .m-person__txt {
    margin-top: 35px;
  }
  .story .dialog2019-wp .sec-content .m-person__txt .hdg {
    font-size: 1.6rem;
  }
  .story .dialog2019-wp .sec-content .m-person--en .m-media__txt {
    padding: 30px 10px 10px 35px;
  }
  .story .dialog2019-wp .sec-content .m-person--en .m-person__tagline {
    font-size: 2rem;
  }
  .story .dialog2019-wp .sec-content .m-person--en .m-person__ttl {
    font-size: 2.1rem;
  }
  .story .dialog2019-wp .sec-content .m-person--en .m-person__name {
    font-size: 1.8rem;
  }
  .story .dialog2019-wp .sec-content .m-person--en .m-person__name .position {
    font-size: 1.6rem;
  }
}
.story .dialog2019-wp .sec-content .m-message {
  margin-top: 40px;
  border: 2px solid #00a0dc;
  padding: 20px;
}
.story .dialog2019-wp .sec-content .m-message .m-message__ttl {
  position: relative;
  font-size: 1.8rem;
  margin-bottom: 20px;
}
.story .dialog2019-wp .sec-content .m-message__media {
  display: flex;
  flex-direction: column-reverse;
}
.story .dialog2019-wp .sec-content .m-message__media .txt {
  font-size: 1.4rem;
  color: #333;
}
.story .dialog2019-wp .sec-content .m-message__media .image-area {
  margin-top: 20px;
  display: flex;
  align-items: center;
}
.story .dialog2019-wp .sec-content .m-message__media .image-area .image-area__txt {
  font-weight: 700;
  padding-left: 15px;
  font-size: 1.4rem;
  max-width: 100%;
}
.story .dialog2019-wp .sec-content .m-message__media .image-area .image-area__txt .position {
  display: block;
  font-weight: 400;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .dialog2019-wp .sec-content .m-message__media {
    flex-direction: row-reverse;
    justify-content: space-between;
  }
  .story .dialog2019-wp .sec-content .m-message__media .txt {
    width: 81%;
    margin-top: 0;
  }
  .story .dialog2019-wp .sec-content .m-message__media .image-area {
    flex-direction: column;
    width: 19%;
    margin-top: 0;
    padding-left: 20px;
  }
  .story .dialog2019-wp .sec-content .m-message__media .image-area .image-area__txt {
    text-align: right;
    margin-top: 15px;
    line-height: 1.5;
    padding-left: 0;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .dialog2019-wp .sec-content .m-message {
    margin-top: 60px;
    padding: 40px;
  }
  .story .dialog2019-wp .sec-content .m-message .m-message__ttl {
    font-size: 2.4rem;
  }
  .story .dialog2019-wp .sec-content .m-message .m-message__ttl:before {
    top: 50%;
  }
  .story .dialog2019-wp .sec-content .m-message__media {
    flex-direction: row-reverse;
    justify-content: space-between;
  }
  .story .dialog2019-wp .sec-content .m-message__media .txt {
    width: 81%;
    font-size: 1.6rem;
  }
  .story .dialog2019-wp .sec-content .m-message__media .image-area {
    flex-direction: column;
    width: 19%;
    padding-left: 20px;
    margin-top: 0;
  }
  .story .dialog2019-wp .sec-content .m-message__media .image-area .image-area__txt {
    text-align: right;
    margin-top: 15px;
    line-height: 1.5;
  }
}
.story .dialog2019-wp .sec-content .m-link {
  margin-top: 30px;
}
.story .dialog2019-wp .sec-content .m-link:first-child {
  margin-top: 0;
}
.story .dialog2019-wp .sec-content .m-link .m-link__ttl {
  position: relative;
  background: #00192a;
  padding: 20px 14px;
  line-height: 1;
}
.story .dialog2019-wp .sec-content .m-link a {
  display: block;
  color: #fff;
  border: 2px solid #00192a;
  transition: opacity 0.2s ease-out;
}
.story .dialog2019-wp .sec-content .m-link a:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
  transition: opacity 0.25s ease-out;
}
.story .dialog2019-wp .sec-content .m-link .m-link__ttl:before {
  content: "";
  display: block;
  position: absolute;
  right: 15px;
  top: 50%;
  background: #fff;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  transform: translateY(-50%);
}
.story .dialog2019-wp .sec-content .m-link .m-link__ttl:after {
  content: ">";
  position: absolute;
  display: block;
  right: 20px;
  top: 50%;
  font-size: 1.2rem;
  font-weight: 700;
  color: #00192a;
  transform: translateY(-50%);
}
.story .dialog2019-wp .sec-content .m-link .m-link__list {
  padding: 20px 10px;
}
.story .dialog2019-wp .sec-content .m-link .m-link__item {
  display: flex;
}
.story .dialog2019-wp .sec-content .m-link__item {
  margin-top: 30px;
}
.story .dialog2019-wp .sec-content .m-link__item:first-child {
  margin-top: 0;
}
.story .dialog2019-wp .sec-content .m-link__item .body {
  max-width: 60%;
}
.story .dialog2019-wp .sec-content .m-link__item .image {
  width: 40%;
  padding-right: 10px;
}
.story .dialog2019-wp .sec-content .m-link__item .body__ttl {
  font-size: 1.4rem;
  color: #0068af;
  padding-bottom: 5px;
  border-bottom: 2px solid #00a0dc;
}
.story .dialog2019-wp .sec-content .m-link__item .body .name {
  margin-top: 10px;
  font-size: 1.2rem;
  color: #00192a;
  font-weight: 700;
}
.story .dialog2019-wp .sec-content .m-link__item .body .name .position {
  display: block;
  font-weight: 400;
}
.story .dialog2019-wp .sec-content .m-link__media {
  padding: 20px 10px;
  display: flex;
  flex-direction: column-reverse;
}
.story .dialog2019-wp .sec-content .m-link__media .body .col {
  margin-top: 30px;
}
.story .dialog2019-wp .sec-content .m-link__media .body .col:first-child {
  margin-top: 0;
}
.story .dialog2019-wp .sec-content .m-link__media .body .ttl {
  color: #0068af;
  padding-left: 12px;
  border-left: 4px solid #00a0dc;
  line-height: 1;
  font-weight: 700;
}
.story .dialog2019-wp .sec-content .m-link__media .body .list .item {
  color: #00192a;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5;
  margin-top: 10px;
}
.story .dialog2019-wp .sec-content .m-link__media .body .list .item:first-child {
  margin-top: 0;
}
.story .dialog2019-wp .sec-content .m-link__media .body .list .item .position {
  font-weight: 400;
}
.story .dialog2019-wp .sec-content .m-link__media .body .list {
  margin-top: 20px;
  padding-right: 10px;
}
.story .dialog2019-wp .sec-content .m-link__media .image {
  margin-top: 30px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .story .dialog2019-wp .sec-content .m-link .m-link__list {
    display: flex;
    justify-content: space-between;
    padding: 25px 30px;
  }
  .story .dialog2019-wp .sec-content .m-link__item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    width: 48%;
    margin-top: 0;
  }
  .story .dialog2019-wp .sec-content .m-link__item .image {
    width: 36%;
  }
  .story .dialog2019-wp .sec-content .m-link__item .body {
    width: 64%;
    padding-left: 20px;
  }
  .story .dialog2019-wp .sec-content .m-link__media {
    padding: 25px 30px;
    flex-direction: row;
  }
  .story .dialog2019-wp .sec-content .m-link__media .image {
    width: 47%;
    margin-top: 0;
  }
  .story .dialog2019-wp .sec-content .m-link__media .body {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    width: 53%;
    padding-left: 35px;
  }
  .story .dialog2019-wp .sec-content .m-link__media .body .lineup {
    display: flex;
    justify-content: space-between;
  }
  .story .dialog2019-wp .sec-content .m-link__media .body .col {
    margin-top: 0;
    padding-right: 10px;
    width: 50%;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .dialog2019-wp .sec-content .m-link {
    margin-top: 60px;
  }
  .story .dialog2019-wp .sec-content .m-link:first-child {
    margin-top: 0;
  }
  .story .dialog2019-wp .sec-content .m-link .m-link__ttl {
    font-size: 2rem;
    padding: 17px 30px;
  }
  .story .dialog2019-wp .sec-content .m-link .m-link__ttl:before {
    right: 25px;
  }
  .story .dialog2019-wp .sec-content .m-link .m-link__ttl:after {
    right: 30px;
  }
  .story .dialog2019-wp .sec-content .m-link .m-link__list {
    display: flex;
    justify-content: space-between;
    padding: 25px 30px;
  }
  .story .dialog2019-wp .sec-content .m-link__item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    width: 48%;
    margin-top: 0;
  }
  .story .dialog2019-wp .sec-content .m-link__item .body {
    max-width: none;
  }
  .story .dialog2019-wp .sec-content .m-link__item .image {
    width: 36%;
  }
  .story .dialog2019-wp .sec-content .m-link__item .body {
    width: 64%;
    padding-left: 20px;
  }
  .story .dialog2019-wp .sec-content .m-link__item .body__ttl {
    font-size: 1.8rem;
    line-height: 1.5;
  }
  .story .dialog2019-wp .sec-content .m-link__item .body .name {
    font-size: 1.6rem;
  }
  .story .dialog2019-wp .sec-content .m-link--en .m-link__item .body .name .position {
    font-size: 1.4rem;
  }
  .story .dialog2019-wp .sec-content .m-link__media {
    padding: 25px 30px;
    flex-direction: row;
  }
  .story .dialog2019-wp .sec-content .m-link__media .image {
    width: 47%;
    margin-top: 0;
  }
  .story .dialog2019-wp .sec-content .m-link__media .body {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    width: 53%;
    padding-left: 35px;
  }
  .story .dialog2019-wp .sec-content .m-link__media .body .lineup {
    display: flex;
    justify-content: space-between;
  }
  .story .dialog2019-wp .sec-content .m-link__media .body .col {
    margin-top: 0;
    width: 50%;
  }
}
.story .dialog2019-wp .sec-content--02 {
  margin-top: 30px;
}
@media print, screen and (min-width: 1025px) {
  .story .dialog2019-wp .sec-content--02 {
    margin-top: 60px;
  }
}
.story .contribution-wp {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  padding: 30px 0 0;
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp {
    padding-top: 60px;
  }
}
.story .contribution-wp .l-main {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  padding: 0 20px;
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .l-main {
    max-width: 1000px;
    margin-right: auto;
    margin-left: auto;
  }
}
.story .contribution-wp .l-inner {
  width: 100%;
  max-width: 1280px;
  margin-right: auto;
  margin-left: auto;
}
.story .contribution-wp .sec-content--desc img {
  width: 100%;
  height: auto;
}
.story .contribution-wp .sec-content {
  position: relative;
  padding: 76px 20px 20px 20px;
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .sec-content {
    padding-left: 40px;
    padding-right: 40px;
  }
}
.story .contribution-wp .sec-content__hdg {
  font-size: 2.4rem;
  background: #005bab;
  padding: 10px 10px 10px 20px;
  color: #fff;
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .sec-content__hdg {
    font-size: 4.2rem;
    padding: 50px 20px 35px 70px;
    line-height: 1.25;
  }
}
.story .contribution-wp .txt-wrap {
  position: relative;
}
.story .contribution-wp .txt-wrap__body {
  padding: 30px;
  background-color: #fff;
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .txt-wrap__body {
    padding: 55px 60px 40px 75px;
  }
}
.story .contribution-wp .img-wrap {
  margin-top: 20px;
}
.story .contribution-wp .img-wrap img {
  width: 100%;
  height: auto;
}
.story .contribution-wp .img-wrap .img + .img {
  margin-top: 10px;
}
.story .contribution-wp .img-wrap figure {
  position: relative;
}
.story .contribution-wp .img-wrap figcaption {
  font-size: 10px;
}
.story .contribution-wp .img-wrap .on-img {
  position: absolute;
  left: 5px;
  bottom: 2px;
  color: #fff;
  text-shadow: 1px 1px 2px #000;
  font-size: 8px;
}
.story .contribution-wp .img-wrap .off-img {
  position: absolute;
  left: 0;
  bottom: -20px;
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .img-wrap {
    position: absolute;
    left: 40px;
    top: 0;
    z-index: 2;
  }
  .story .contribution-wp .img-wrap img {
    max-width: 100%;
  }
  .story .contribution-wp .img-wrap figcaption {
    font-size: 12px;
  }
  .story .contribution-wp .img-wrap .off-img {
    bottom: -30px;
  }
}
.story .contribution-wp .bg-title {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 50%;
  margin: auto;
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .bg-title {
    right: auto;
    width: auto;
  }
}
.story .contribution-wp .bg-title img {
  width: 100%;
  height: auto;
}
.story .contribution-wp .note,
.story .contribution-wp .sec-content__note {
  font-size: 1.2rem;
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .note,
.story .contribution-wp .sec-content__note {
    font-size: 1.4rem;
  }
}
.story .contribution-wp .area {
  margin-top: 20px;
}
.story .contribution-wp .area:first-child {
  margin-top: 0;
}
.story .contribution-wp .mod-square-story {
  top: 10px;
  left: -10px;
  position: absolute;
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .mod-square-story {
    top: 20px;
    left: -20px;
  }
}
.story .contribution-wp .effect.is-active .mod-square-story:before {
  border-color: #7fce39 #7fce39 transparent transparent;
}
.story .contribution-wp .effect.is-active .mod-square-story:after {
  border-color: transparent transparent #7fce39 #7fce39;
}
.story .contribution-wp .sec-content--lead .effect.is-active .mod-square-story:before {
  border-color: #7fce39 #7fce39 transparent transparent;
}
.story .contribution-wp .sec-content--lead .effect.is-active .mod-square-story:after {
  border-color: transparent transparent #7fce39 #7fce39;
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .sec-content--lead p {
    font-size: 1.8rem;
  }
  .story .contribution-wp .sec-content--lead .box-dialog-lead-01 {
    margin-bottom: 70px;
  }
  .story .contribution-wp .sec-content--lead .mod-square-story {
    top: -10px;
    left: -10px;
  }
}
.story .contribution-wp .sec-content--desc {
  padding-top: 0;
}
.story .contribution-wp .sec-content--desc desc {
  font-size: 1.4rem;
}
.story .contribution-wp .sec-content--desc img[usemap], .story .contribution-wp .sec-content--desc map area {
  outline: none;
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .sec-content--desc {
    z-index: 1;
    max-width: 1200px;
    margin: 0 auto;
  }
  .story .contribution-wp .sec-content--desc .desc {
    font-size: 2.4rem;
    margin-bottom: 10px;
  }
}
.story .contribution-wp .bg-img-wrap {
  position: relative;
  background: white;
  background: linear-gradient(to top, white 0%, #2989d8 17%, white 100%);
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .bg-img-wrap {
    background: url(../../story/img/contribution/bg_section01.jpg) 50% 100% no-repeat;
    background-size: cover;
  }
  .story .contribution-wp .bg-deco--01 {
    position: absolute;
    right: 40px;
    top: 32%;
    z-index: 0;
    pointer-events: none;
  }
}
.story .contribution-wp .sec-content--01 {
  padding-top: 50px;
}
.story .contribution-wp .sec-content--01 .bg-title--01 {
  width: 180px;
}
@media only screen and (max-width: 480px) {
  .story .contribution-wp .sec-content--01 .img-wrap .off-img {
    bottom: -40px;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .story .contribution-wp .sec-content--01 .img-wrap .off-img {
    bottom: -50px;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .sec-content--01 {
    z-index: 1;
    padding: 140px 40px 180px 40px;
    margin-top: 170px;
  }
  .story .contribution-wp .sec-content--01 .txt-wrap {
    width: 60%;
    margin-left: auto;
  }
  .story .contribution-wp .sec-content--01 .txt-wrap__body {
    padding-bottom: 70px;
  }
  .story .contribution-wp .sec-content--01 .img-wrap {
    width: 40%;
    margin-top: 0;
  }
  .story .contribution-wp .sec-content--01 .img-wrap .img--01 {
    width: 90%;
  }
  .story .contribution-wp .sec-content--01 .img-wrap .img--02 {
    margin-top: 35px;
  }
  .story .contribution-wp .sec-content--01 .bg-title--01 {
    top: 0;
    left: calc(40% + 20px);
    width: auto;
  }
}
.story .contribution-wp .sec-content--02 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 80px 0 0;
}
.story .contribution-wp .sec-content--02 .voice-head {
  display: flex;
  justify-content: space-between;
  flex-flow: row-reverse;
}
.story .contribution-wp .sec-content--02 .voice-main {
  padding: 10px;
}
.story .contribution-wp .sec-content--02 .voice-wrap .sec-content__hdg {
  background: #fff;
  color: #333;
  padding: 10px 0;
  line-height: 1;
  text-align: center;
}
.story .contribution-wp .sec-content--02 .voice-wrap__caption {
  font-size: 1.2rem;
}
.story .contribution-wp .sec-content--02 .voice-img,
.story .contribution-wp .sec-content--02 .voice-main {
  width: 50%;
}
.story .contribution-wp .sec-content--02 .voice-img img {
  width: 100%;
  height: auto;
}
.story .contribution-wp .sec-content--02 .sec-content__txt {
  margin-top: 20px;
  padding: 0 20px 20px;
}
.story .contribution-wp .sec-content--02 .voice-wrap--02 {
  background: #005bab;
}
.story .contribution-wp .sec-content--02 .voice-wrap--02 .voice-head {
  flex-flow: row;
}
.story .contribution-wp .sec-content--02 .voice-wrap--02 .sec-content__hdg {
  background: #005bab;
  color: #fff;
  padding-right: 20px;
}
.story .contribution-wp .sec-content--02 .voice-wrap--02 .voice-wrap__caption {
  color: #fff;
}
.story .contribution-wp .sec-content--02 .voice-wrap--02 .sec-content__txt {
  color: #fff;
}
.story .contribution-wp .sec-content--02 .bg-title--02 {
  top: 30px;
  width: 180px;
}
@media print, screen and (min-width: 768px) {
  .story .contribution-wp .sec-content--02 .voice-main {
    text-align: center;
  }
  .story .contribution-wp .sec-content--02 .voice-wrap__caption {
    font-size: 1.6rem;
  }
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .sec-content--02 {
    padding: 0;
    display: flex;
  }
  .story .contribution-wp .sec-content--02 .sec-content__hdg {
    font-size: 3.6rem;
    max-width: 100%;
  }
  .story .contribution-wp .sec-content--02 .voice-wrap {
    width: 50%;
  }
  .story .contribution-wp .sec-content--02 .voice-img {
    width: 60%;
  }
  .story .contribution-wp .sec-content--02 .voice-main {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    word-wrap: break-word;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    padding: 85px 20px 0;
    flex: 1;
  }
  .story .contribution-wp .sec-content--02 .voice-wrap__caption {
    margin-top: 9px;
    text-align: left;
    max-width: 100%;
  }
  .story .contribution-wp .sec-content--02 .bg-title--02 {
    left: 50%;
    top: 38px;
    transform: translateX(-53%);
    width: auto;
  }
  .story .contribution-wp .sec-content--02 .sec-content__txt {
    padding: 50px 65px;
    margin-top: 0;
  }
  .story .contribution-wp .sec-content--02 .voice-wrap--01 .voice-main {
    transform: translateX(-80px);
  }
  .story .contribution-wp .sec-content--02 .voice-wrap--01 .sec-content__hdg {
    background: transparent;
  }
  .story .contribution-wp .sec-content--02 .voice-wrap--02 .voice-main {
    transform: translateX(28px);
  }
  .story .contribution-wp .sec-content--02 .voice-wrap--02 .voice-img {
    width: 63%;
  }
  .story .contribution-wp .sec-content--02 .voice-wrap--02 .voice-wrap__caption {
    white-space: nowrap;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .story .contribution-wp .sec-content--02.en .voice-wrap .sec-content__hdg {
    font-size: 2.4rem;
  }
  .story .contribution-wp .sec-content--02.en .voice-wrap--01 .voice-main {
    transform: translateX(-40px);
  }
}
.story .contribution-wp .sec-content--03 {
  margin-top: 0;
  background: url(../../story/img/contribution/bg_section02.jpg) 50% 0 no-repeat;
  background-size: cover;
}
.story .contribution-wp .sec-content--03 .mod-square-story {
  left: 10px;
}
.story .contribution-wp .sec-content--03 .bg-title--03 {
  top: 35px;
  width: 290px;
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .sec-content--03 {
    padding-top: 280px;
    padding-bottom: 280px;
    background-size: 100% auto;
  }
  .story .contribution-wp .sec-content--03 .txt-wrap {
    width: 60%;
    margin-right: auto;
  }
  .story .contribution-wp .sec-content--03 .img-wrap {
    position: absolute;
    top: auto;
    left: 58%;
    bottom: 20px;
    width: 32%;
  }
  .story .contribution-wp .sec-content--03 .bg-title--03 {
    top: 100px;
    left: 40px;
    width: auto;
  }
  .story .contribution-wp .sec-content--03 .sec-content__img-desc {
    position: absolute;
    right: 40px;
    top: 740px;
    color: #fff;
    text-shadow: 1px 1px 2px #000;
    font-size: 0.8rem;
  }
  .story .contribution-wp .sec-content--03 .mod-square-story {
    left: 20px;
  }
}
.story .contribution-wp .sec-content--04 {
  margin-top: 0;
  background: url(../../story/img/contribution/bg_section03.jpg) 50% 0 no-repeat;
  background-size: 100% auto;
}
.story .contribution-wp .sec-content--04 .area {
  position: relative;
}
.story .contribution-wp .sec-content--04 .bg-title--04 {
  top: 30px;
  width: 180px;
}
.story .contribution-wp .sec-content--04 .sec-content__img-caption {
  display: none;
  position: absolute;
  font-size: 1rem;
  left: 0;
  top: -30px;
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .sec-content--04 {
    padding-top: 125px;
    padding-bottom: 140px;
    background-size: 100% 100%;
    background-size: contain;
  }
  .story .contribution-wp .sec-content--04 .sec-content__hdg {
    max-width: 1060px;
    margin-right: auto;
    margin-left: auto;
  }
  .story .contribution-wp .sec-content--04 .area {
    width: 100%;
    max-width: 640px;
  }
  .story .contribution-wp .sec-content--04 .area--01 {
    margin-left: auto;
    margin-top: 90px;
  }
  .story .contribution-wp .sec-content--04 .area--02 {
    margin-top: 30px;
    margin-right: auto;
    max-width: 50%;
  }
  .story .contribution-wp .sec-content--04 .txt-wrap__body {
    padding: 65px 50px 60px 35px;
  }
  .story .contribution-wp .sec-content--04 .area--02 .txt-wrap__body {
    padding-bottom: 30px;
  }
  .story .contribution-wp .sec-content--04 .img-wrap {
    position: absolute;
    top: auto;
    left: auto;
    right: 120px;
    bottom: 140px;
    max-width: 32%;
  }
  .story .contribution-wp .sec-content--04 .bg-title--04 {
    top: auto;
    left: auto;
    bottom: 110%;
    right: 0;
    width: auto;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .contribution-wp .sec-content--04 .img-wrap {
    right: 200px;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1300px) {
  .story .contribution-wp .sec-content--04 .sec-content__img-caption {
    display: block;
    left: -20px;
  }
}
@media print, screen and (min-width: 1280px) {
  .story .contribution-wp .sec-content--04 .sec-content__img-caption {
    display: block;
    left: -20px;
  }
}
@media print, screen and (min-width: 1600px) {
  .story .contribution-wp .sec-content--04 .sec-content__img-caption {
    left: -150px;
  }
}
@media print, screen and (min-width: 1921px) {
  .story .contribution-wp .sec-content--04 .sec-content__img-caption {
    left: -300px;
  }
}
@media only screen and (max-width: 767px) {
  .story .contribution-wp .sec-content--04 {
    background: url(../../story/img/contribution/bg_section03.jpg) 0 100px no-repeat;
    background-size: 165% auto;
  }
  .story .sec-content__img-caption_sp {
    font-size: 1rem;
    margin-top: 150px;
  }
}
.story .contribution-wp .sec-content--05 {
  padding-bottom: 80px;
}
.story .contribution-wp .sec-content--05 .img-wrap {
  margin-top: 50px;
}
.story .contribution-wp .sec-content--05 .bg-title--05 {
  width: 180px;
  top: 20px;
}
@media print, screen and (min-width: 1025px) {
  .story .contribution-wp .sec-content--05 {
    padding-top: 45px;
    padding-bottom: 200px;
    margin-bottom: 140px;
  }
  .story .contribution-wp .sec-content--05 .txt-wrap {
    width: 60%;
    margin-left: auto;
  }
  .story .contribution-wp .sec-content--05 .img-wrap {
    top: 200px;
    bottom: auto;
    width: 41%;
  }
  .story .contribution-wp .sec-content--05 .bg-title--05 {
    left: 0;
    top: -130px;
    width: auto;
  }
}
.story.style01 .area-story-mv:after {
  border-color: #00a0dc transparent transparent transparent;
}
.story.style01 .area-story-mv-in:before {
  border-color: #00a0dc #00a0dc transparent transparent;
}
.story.style01 .area-story-mv-in:after {
  border-color: transparent transparent #00a0dc #00a0dc;
}
.story.style01 .label-mod-story-number-01 {
  background-color: #00a0dc;
}
.story.style02 .area-story-mv:after {
  border-color: #ffa40d transparent transparent transparent;
}
.story.style02 .area-story-mv-in:before {
  border-color: #ffa40d #ffa40d transparent transparent;
}
.story.style02 .area-story-mv-in:after {
  border-color: transparent transparent #ffa40d #ffa40d;
}
.story.style02 .label-mod-story-number-01 {
  background-color: #ffa40d;
}
.story.style03 .area-story-mv:after {
  border-color: #7fce39 transparent transparent transparent;
}
.story.style03 .area-story-mv-in:before {
  border-color: #7fce39 #7fce39 transparent transparent;
}
.story.style03 .area-story-mv-in:after {
  border-color: transparent transparent #7fce39 #7fce39;
}
.story.style03 .label-mod-story-number-01 {
  background-color: #7fce39;
}
.story .caption {
  padding: 0 10px;
  position: absolute;
  z-index: 10;
  bottom: 10px;
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  text-shadow: 0px 0px 8px #000;
}
.story .caption.left {
  left: 0;
  bottom: 20px;
}
.story .caption.right {
  right: 0;
}
@media only screen and (max-width: 767px) {
  .story .caption {
    font-size: 11px;
    font-size: 1.1rem;
    bottom: 5px;
  }
  .story .caption.left {
    bottom: 10px;
  }
}
.story.story02 .area-story-mv:before {
  background-image: url(../../story/img/regenerative-medicine/mv_story_01.jpg);
}
@media print, screen and (min-width: 1025px) {
  .story.story02 .box-layout-story-02 .box-layout-story-02-in {
    padding: 150px 0;
    padding-left: 5%;
  }
}
.story.story03 .area-story-mv:before {
  background-image: url(../../story/img/qatar/mv_story_01.jpg);
}
.story.story04 .area-story-mv:before {
  background-image: url(../../story/img/papua/mv_story_01.jpg);
}
.story.story05 .area-story-mv:before {
  background-image: url(../../story/img/stakeholder/mv_story_01.jpg);
}
.story.story05.story05-01 .area-story-mv:before {
  background-image: url(../../story/img/stakeholder/mv_story_02.jpg);
}
.story.story06 .area-story-mv:before {
  background-image: url(../../story/img/contribution/mv_story_01.png);
}

@media print {
  .page-before {
    page-break-before: always !important;
  }
}
/* ------------------------------------------------
カテゴリトップMV
------------------------------------------------ */
.cat-top#pankuzu.type03 {
  position: absolute;
  top: 60px;
}
@media print, screen and (min-width: 768px) {
  .cat-top#pankuzu.type03 {
    top: 100px;
  }
}
@media print {
  .cat-top#pankuzu.type03 {
    position: inherit;
  }
}

.area-movie-mv {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  width: 100vw;
  height: 600px;
  position: relative;
}
.area-movie-mv .caption {
  position: absolute;
  right: 10px;
  bottom: 10px;
  line-height: 1.2;
  color: #fff;
  text-shadow: 0px 0px 8px #000;
}
.jp .area-movie-mv .caption {
  font-family: roboto;
}
@media only screen and (max-width: 1024px) {
  .area-movie-mv .caption {
    font-size: 11px;
    font-size: 1.1rem;
    right: 5px;
    bottom: 5px;
  }
}
.team .area-movie-mv {
  background: url(../../about/teamwork/img/mv_teamwork_02.jpg) center no-repeat;
  background-size: cover;
  background-position: bottom center;
}
@media print, screen and (min-width: 1600px) {
  .team .area-movie-mv {
    background-position: 50% -460px;
  }
}
.service .area-movie-mv {
  background: url(/img/bg_img_plant_01.jpg) center no-repeat;
  background-size: cover;
  background-position: 50%;
}
@media only screen and (max-width: 1024px) {
  .service .area-movie-mv {
    background-position: 50% 0px;
  }
}
@media only screen and (max-width: 1024px) {
  .area-movie-mv {
    position: relative;
    height: 38vw;
  }
}
@media only screen and (max-width: 767px) {
  .area-movie-mv {
    height: 60vw;
  }
}

.box-asset-movie-01 {
  width: 100%;
  height: 600px;
  overflow: hidden;
  position: absolute;
  top: 100px;
  left: 0;
  z-index: -100;
  background-color: #000;
}
@media only screen and (max-width: 1024px) {
  .box-asset-movie-01 {
    display: none;
  }
}

.asset-movie-01 {
  width: 100%;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.tit-movie-02,
.txt-lead-01 {
  color: #fff;
  text-shadow: 0px 0px 8px #000;
  letter-spacing: 2px;
}

.tit-movie-02 {
  font-weight: 500;
  font-size: calc(5rem + 2vw);
  line-height: 1;
}
.tit-movie-02 span {
  display: block;
}
@media only screen and (max-width: 767px) {
  .tit-movie-02 .roboto {
    letter-spacing: 0;
  }
}
.tit-movie-02 .japanese {
  font-size: 24px;
  font-size: 2.4rem;
  margin-top: 15px;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .tit-movie-02 .japanese {
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 5px;
  }
}
@media only screen and (max-width: 1024px) {
  .tit-movie-02 {
    padding-top: 32px;
  }
}

.txt-lead-01 {
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 10px;
}
@media only screen and (max-width: 767px) {
  .txt-lead-01 {
    line-height: 1.2;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .txt-lead-01 {
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 1025px) {
  .txt-lead-01 {
    font-size: 22px;
    font-size: 2.2rem;
    margin-top: 40px;
  }
}

/* ------------------------------------------------
teamwork
------------------------------------------------ */
.team .box-lead-01 {
  width: 90%;
  max-width: 1000px;
  margin: 60px auto;
}
.team .sec-team-02 {
  background: url(../../about/teamwork/img/bg_teamwork.png) top center no-repeat #f2fafd;
  background-size: contain;
  padding-top: 22vw;
  padding-bottom: 120px;
}
.team .tit-team-03 {
  color: #fff;
  text-shadow: 0px 0px 8px #000;
  line-height: 1;
  text-align: center;
}
.team .tit-team-03 .main,
.team .tit-team-03 .sub {
  display: block;
}
.team .tit-team-03 .main {
  font-size: 40px;
  font-size: 4rem;
  letter-spacing: 2px;
}
@media only screen and (max-width: 1024px) {
  .team .tit-team-03 .main {
    font-size: 30px;
    font-size: 3rem;
  }
}
.team .tit-team-03 .sub {
  font-weight: 400;
  font-style: italic;
  margin-top: 10px;
}
.team .area-team-01 {
  text-align: center;
}
.team .area-team-01 .img-team-01 {
  margin-top: 40px;
}
@media only screen and (max-width: 1024px) {
  .team .area-team-01 .img-team-01 {
    width: 90%;
    margin: 40px auto 0;
  }
  .team .area-team-01 .img-team-01 img {
    max-width: 100%;
    height: auto;
  }
}
.team .area-team-02 {
  margin-top: 40px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-justify-content: center;
  -moz-justify-content: center;
  -webkit-justify-content: center;
  justify-content: center;
  -ms-align-items: flex-end;
  -moz-align-items: flex-end;
  -webkit-align-items: flex-end;
  align-items: flex-end;
}
.team .area-team-02.style01 .role {
  background-color: #ff2975;
}
.team .area-team-02.style02 .role {
  background-color: #00a0dc;
}
.team .area-team-02.style03 .role {
  background-color: #ffa40d;
}
.team .area-team-02.style03 .role.item-style04 {
  background-color: #7fce39;
}
.team .area-team-02.style03 .role.item-style05 {
  background-color: #118945;
}
@media print {
  .team .area-team-02 {
    margin-top: 0;
    padding-top: 40px;
    background-color: #f2fafd;
  }
}
.team .item-member-01 {
  position: relative;
  margin: 30px 60px;
}
.PC .team .item-member-01:hover .btn-open-01,
.PC .team .item-member-01:hover .btn-member-01 {
  cursor: pointer;
  background-color: #fff;
  -webkit-box-shadow: 0px 0px 4px rgba(130, 130, 130, 0.5);
  -moz-box-shadow: 0px 0px 4px rgba(130, 130, 130, 0.5);
  box-shadow: 0px 0px 4px rgba(130, 130, 130, 0.5);
}
@media only screen and (max-width: 767px) {
  .team .item-member-01 {
    margin: 50px 25px;
  }
}
@media screen and (max-width: 767px) and (orientation: portrait) {
  .team .item-member-01 {
    margin-left: 0;
  }
}
.team .btn-open-01,
.team .btn-close-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 34px;
  height: 34px;
  border: 2px solid #0068af;
  border-radius: 100%;
  position: absolute;
  top: 32px;
  left: -17px;
}
.team .btn-open-01:before, .team .btn-open-01:after,
.team .btn-close-01:before,
.team .btn-close-01:after {
  content: "";
  display: block;
  width: 12px;
  height: 2px;
  background-color: #0068af;
  position: absolute;
  top: 50%;
  left: 50%;
}
.team .btn-open-01:before,
.team .btn-close-01:before {
  transform: translate(-50%, -50%);
}
.team .btn-open-01:after,
.team .btn-close-01:after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.team .btn-open-01 {
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.team .btn-close-01 {
  top: 20px;
  left: 20px;
}
.team .btn-close-01:before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.team .btn-close-01:after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.PC .team .btn-close-01:hover {
  background-color: #fff;
  -webkit-box-shadow: 0px 0px 6px rgba(130, 130, 130, 0.8);
  -moz-box-shadow: 0px 0px 6px rgba(130, 130, 130, 0.8);
  box-shadow: 0px 0px 6px rgba(130, 130, 130, 0.8);
  cursor: pointer;
}
.team .btn-member-01 {
  padding: 30px 40px;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
@media only screen and (max-width: 767px) {
  .team .btn-member-01 {
    padding: 30px;
  }
}
.team .btn-member-01 .role {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.2;
  color: #fff;
  font-weight: bold;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  min-width: 140px;
  padding: 8px;
  margin-top: 20px;
}
.jp .team .btn-member-01 .role.line-s {
  margin-top: 45px;
}
.jp .team .btn-member-01 .role.line-l {
  margin-top: 10px;
}
@media all and (-ms-high-contrast: none) {
  .jp .team .btn-member-01 .role {
    padding: 7px 8px 1px;
  }
}
.team .btn-member-01 .figure {
  position: absolute;
  right: -15%;
  bottom: -20%;
}
.team .btn-member-01 .figure.wide-s {
  right: -10%;
}
.team .btn-member-01 .figure.wide-m {
  right: -20%;
}
.team .btn-member-01 .figure.wide-l {
  right: -30%;
}
.team .box-member-01 {
  display: none;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.9);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
  cursor: pointer;
}
.team .box-member-01 .box-member-01-in {
  cursor: default;
  display: table;
  width: 90%;
  max-width: 1000px;
  max-height: 90vh;
  margin: 0 auto;
  background-color: #fff;
  -webkit-box-shadow: 0px 0px 10px rgba(130, 130, 130, 0.8);
  -moz-box-shadow: 0px 0px 10px rgba(130, 130, 130, 0.8);
  box-shadow: 0px 0px 10px rgba(130, 130, 130, 0.8);
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media only screen and (max-width: 767px) {
  .team .box-member-01 .box-member-01-in {
    display: block;
    height: 80vh;
    overflow-y: scroll;
  }
}
.team .box-member-01 .box-member-01-in .btn-member-01,
.team .box-member-01 .box-member-01-in .box-detail-01 {
  display: table-cell;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.team .box-member-01 .box-member-01-in .btn-member-01 {
  vertical-align: middle;
  width: 40%;
  background-color: #f2fafd !important;
}
.PC .team .box-member-01 .box-member-01-in .btn-member-01:hover {
  cursor: default;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .team .box-member-01 .box-member-01-in .btn-member-01 {
    width: auto;
  }
}
@media only screen and (max-width: 767px) {
  .team .box-member-01 .box-member-01-in .btn-member-01 {
    display: block;
    width: 100%;
    padding: 90px 0;
  }
  .jp .team .box-member-01 .box-member-01-in .btn-member-01 {
    padding: 70px 0;
  }
}
.team .box-member-01 .box-member-01-in .box-detail-01 {
  vertical-align: top;
  width: 60%;
}
@media only screen and (max-width: 767px) {
  .team .box-member-01 .box-member-01-in .box-detail-01 {
    display: block;
    width: 100%;
  }
}
.team .box-member-01 .box-member-01-in .btn-member-01 {
  position: relative;
  box-shadow: none !important;
}
.team .box-member-01 .box-member-01-in .btn-member-01 .box-role-01-in {
  display: inline-block;
  position: relative;
  margin-left: 60px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  .team .box-member-01 .box-member-01-in .btn-member-01 .box-role-01-in {
    margin-left: 0;
    margin-right: 40px;
  }
}
.team .box-member-01 .box-member-01-in .btn-member-01 .figure {
  right: -50%;
  bottom: -50%;
}
.team .box-member-01 .box-member-01-in .btn-member-01 .figure.wide-l {
  right: -70%;
}
.team .box-member-01 .box-member-01-in .btn-member-01 .figure.wide-s {
  right: -30%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .team .box-member-01 .box-member-01-in .btn-member-01 .figure.wide-s {
    right: -40%;
  }
}
.team .box-member-01 .box-member-01-in .box-detail-01 {
  padding: 50px;
}
@media only screen and (max-width: 767px) {
  .team .box-member-01 .box-member-01-in .box-detail-01 {
    padding: 20px;
  }
}
.team .box-member-01 .box-member-01-in .box-detail-01 .tit-role-01 {
  font-size: 22px;
  font-size: 2.2rem;
  color: #0068af;
  font-weight: bold;
  line-height: 1.2;
}
.jp .team .box-member-01 .box-member-01-in .box-detail-01 .tit-role-01 {
  font-size: 18px;
  font-size: 1.8rem;
}
.team .box-member-01 .box-member-01-in .box-detail-01 p {
  margin-top: 10px;
}

/* ------------------------------------------------
サステナビリティ
------------------------------------------------ */
.csr {
  position: relative;
  overflow: hidden;
}
.csr .area-csr-mv-wp {
  display: table;
  width: 100%;
  height: 600px;
  position: relative;
  padding: 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 1024px) {
  .csr .area-csr-mv-wp {
    height: auto;
    min-height: 50vh;
  }
}
.csr .area-csr-mv-wp:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../../csr/top/img/mv_csr_02.jpg?20220523) no-repeat;
  background-size: cover;
  background-position: 50% 10%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
.csr .area-csr-mv {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}
.csr .tit-csr-02,
.csr .txt-lead-01 {
  color: #fff;
  text-shadow: 0px 0px 8px #000;
  letter-spacing: 2px;
}
.csr .tit-csr-02 {
  font-weight: bold;
  font-size: calc(3.6rem + 2vw);
  line-height: 1;
}
.csr .tit-csr-02 span {
  display: block;
}
@media only screen and (max-width: 767px) {
  .jp .csr .tit-csr-02 {
    font-size: calc(2.2rem + 2vw);
  }
}
.csr .tit-csr-02 .japanese {
  font-size: 24px;
  font-size: 2.4rem;
  margin-top: 15px;
}
@media only screen and (max-width: 767px) {
  .csr .tit-csr-02 .japanese {
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 5px;
  }
}
@media only screen and (max-width: 1024px) {
  .csr .tit-csr-02 {
    padding-top: 32px;
  }
}
.csr .txt-lead-01 {
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 10px;
}
@media only screen and (max-width: 767px) {
  .csr .txt-lead-01 {
    line-height: 1.2;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .csr .txt-lead-01 {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
@media print, screen and (min-width: 1025px) {
  .csr .txt-lead-01 {
    font-size: 22px;
    font-size: 2.2rem;
  }
}
.csr .btn-csr-wp {
  margin: auto;
  display: flex;
}
@media print, screen and (min-width: 768px) {
  .csr .btn-csr-wp {
    margin-top: 60px;
    width: 820px;
    width: clamp(700px, 60vw, 860px);
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media only screen and (max-width: 767px) {
  .csr .btn-csr-wp {
    margin-top: 30px;
    flex-direction: column;
    width: 100%;
  }
}
.csr .btn-csr-wp .btn_type01 {
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .csr .btn-csr-wp .btn_type02 {
    width: calc(50% - 10px);
    margin-top: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .csr .btn-csr-wp .btn_type02 {
    margin-top: 10px;
  }
}
.csr .btn_csrmv a {
  display: table;
  width: 100%;
  height: 80px;
  padding: 0;
  line-height: 1;
  text-align: center;
  font-weight: bold;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  position: relative;
  color: #fff;
  border: none;
}
.csr .btn_csrmv a:before, .csr .btn_csrmv a:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  border-color: #fff;
}
.csr .btn_csrmv a:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 100%;
  right: 20px;
  top: 50%;
  width: 24px;
  height: 24px;
  border: 1px solid #fff;
  right: 10px;
  margin: auto;
  top: 0;
  bottom: 0;
}
.csr .btn_csrmv a:after {
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  margin: auto;
  top: 0;
  bottom: 0;
  right: 20px;
}
.csr .btn_csrmv a span {
  width: 100%;
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}
@media only screen and (max-width: 767px) {
  .csr .btn_csrmv a {
    height: 60px;
  }
  .csr .btn_csrmv a span {
    width: 60%;
    font-size: 16px;
    width: 100%;
  }
}
@media print, screen and (min-width: 1025px) {
  .PC .csr .btn_csrmv a:hover {
    color: #0068af;
    background: #fff;
    border: 1px solid #0068af;
  }
  .PC .csr .btn_csrmv a:hover:after, .PC .csr .btn_csrmv a:hover:before {
    border-color: #0068af;
  }
}
.csr .btn_csrmv.type01 a {
  font-size: 40px;
  font-size: clamp(35px, 2.5vw, 43px);
  background: #0068af;
}
.csr .btn_csrmv.type02 a {
  font-size: 24px;
  font-size: clamp(22px, 1.5vw, 28px);
  background: #00a0dc;
}
.csr .btn_csrmv.type02.small a {
  font-size: 18px;
  line-height: 1.3;
}

.box-vision-01-wp {
  width: 90%;
  max-width: 1160px;
  margin: 0 auto;
}

.box-vision-01 {
  display: table;
  width: 100%;
  height: 200px;
  color: #000;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  margin-top: 10px;
}
@media only screen and (max-width: 1024px) {
  .box-vision-01 {
    height: 250px;
  }
}
.box-vision-01:before, .box-vision-01:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
}
@media only screen and (max-width: 767px) {
  .box-vision-01:before, .box-vision-01:after {
    top: 22%;
  }
}
.box-vision-01:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 50px;
  height: 50px;
  border: 2px solid transparent;
  border-radius: 100%;
  right: 20px;
  transform: translateY(-50%);
}
.box-vision-01:after {
  width: 15px;
  height: 15px;
  border: 2px solid transparent;
  right: 40px;
  transform: translateY(-50%) rotate(45deg);
}
.box-vision-01 .tit-vision-01,
.box-vision-01 .txt-vision-01 {
  display: table-cell;
  vertical-align: middle;
}
@media only screen and (max-width: 767px) {
  .box-vision-01 .tit-vision-01,
.box-vision-01 .txt-vision-01 {
    display: block;
    width: 100% !important;
  }
}
.box-vision-01 .ico-vision-01 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media only screen and (max-width: 1024px) {
  .box-vision-01 .ico-vision-01 {
    position: static;
    transform: none;
    display: inline-block;
    width: 80px;
    margin-bottom: 20px;
  }
  .box-vision-01 .ico-vision-01 img {
    width: 100%;
    height: auto;
  }
}
.box-vision-01 .tit-vision-01,
.box-vision-01 .txt-vision-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 50%;
}
.box-vision-01 .tit-vision-01 {
  padding: 25px 80px 20px 0;
  font-size: 30px;
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
}
.box-vision-01 .tit-vision-01 span {
  line-height: 2;
  border-bottom: 5px solid transparent;
}
@media only screen and (max-width: 1024px) {
  .box-vision-01 .tit-vision-01 {
    padding: 20px;
    font-size: 22px;
    font-size: 2.2rem;
    width: 40%;
  }
  .box-vision-01 .tit-vision-01 span {
    display: block;
  }
}
.box-vision-01 .txt-vision-01 {
  padding: 25px 80px 20px 90px;
  font-size: 18px;
  font-size: 1.8rem;
  padding-right: 80px;
}
@media only screen and (max-width: 1024px) {
  .box-vision-01 .txt-vision-01 {
    padding: 20px 80px 20px 20px;
    width: 60%;
  }
}
@media only screen and (max-width: 767px) {
  .box-vision-01 .txt-vision-01 {
    padding: 0 20px 20px;
  }
}
.box-vision-01.vision01 {
  background-color: #ccecf8;
}
.box-vision-01.vision01:before {
  border-color: #00a0dc;
}
.box-vision-01.vision01:after {
  border-color: #00a0dc #00a0dc transparent transparent;
}
.box-vision-01.vision01 .tit-vision-01 span {
  border-color: #00a0dc;
}
.box-vision-01.vision02 {
  background-color: #e5f5d7;
}
.box-vision-01.vision02:before {
  border-color: #7fce39;
}
.box-vision-01.vision02:after {
  border-color: #7fce39 #7fce39 transparent transparent;
}
.box-vision-01.vision02 .tit-vision-01 span {
  border-color: #7fce39;
}
.box-vision-01.vision03 {
  background-color: #ffedcf;
}
.box-vision-01.vision03:before {
  border-color: #ffa40d;
}
.box-vision-01.vision03:after {
  border-color: #ffa40d #ffa40d transparent transparent;
}
.box-vision-01.vision03 .tit-vision-01 span {
  border-color: #ffa40d;
}
.box-vision-01.vision04 {
  background-color: #f8ded6;
}
.box-vision-01.vision04:before {
  border-color: #e06b62;
}
.box-vision-01.vision04:after {
  border-color: #e06b62 #e06b62 transparent transparent;
}
.box-vision-01.vision04 .tit-vision-01 span {
  border-color: #e06b62;
}
.box-vision-01.vision05 {
  background-color: #ebdfed;
}
.box-vision-01.vision05:before {
  border-color: #9c5fa4;
}
.box-vision-01.vision05:after {
  border-color: #9c5fa4 #9c5fa4 transparent transparent;
}
.box-vision-01.vision05 .tit-vision-01 span {
  border-color: #9c5fa4;
}
.PC .box-vision-01:hover {
  opacity: 0.6;
}

@media print, screen and (min-width: 768px) {
  .wrapper-csr-safety01 {
    margin-bottom: 120px !important;
  }
}
@media print, screen and (min-width: 768px) {
  .wrapper-csr-safety01 .tit01 {
    margin-bottom: 120px !important;
  }
}

.box-link-csr-safety01 {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  background: url("../../csr/top/img/bg_csr_top_safety.jpg") 50% 50% no-repeat;
  background-size: cover;
}
@media only screen and (max-width: 767px) {
  .box-link-csr-safety01 {
    display: block;
    background: none;
  }
}
.box-link-csr-safety01 > li {
  margin: 0;
}
@media only screen and (max-width: 767px) {
  .box-link-csr-safety01 > li {
    display: block;
    margin: 0 20px;
  }
  .box-link-csr-safety01 > li:nth-child(n+2) {
    border-top: 1px dotted #ccc;
  }
}
@media print, screen and (min-width: 768px) {
  .box-link-csr-safety01 > li:nth-child(1) {
    order: 1;
    transform: translateY(-5vw);
  }
}
@media only screen and (min-width: 768px) and (max-width: 767px) {
  .box-link-csr-safety01 > li:nth-child(1) {
    transform: translateY(0);
  }
}
@media print, screen and (min-width: 768px) {
  .box-link-csr-safety01 > li:nth-child(2) {
    order: 3;
    transform: translateY(-5vw);
  }
}
@media only screen and (min-width: 768px) and (max-width: 767px) {
  .box-link-csr-safety01 > li:nth-child(2) {
    transform: translateY(0);
  }
}
@media print, screen and (min-width: 768px) {
  .box-link-csr-safety01 > li:nth-child(3) {
    order: 5;
    transform: translateY(-5vw);
  }
}
@media only screen and (min-width: 768px) and (max-width: 767px) {
  .box-link-csr-safety01 > li:nth-child(3) {
    transform: translateY(0);
  }
}
@media print, screen and (min-width: 768px) {
  .box-link-csr-safety01 > li:nth-child(4) {
    order: 2;
    transform: translateY(5vw);
  }
}
@media only screen and (min-width: 768px) and (max-width: 767px) {
  .box-link-csr-safety01 > li:nth-child(4) {
    transform: translateY(0);
  }
}
@media print, screen and (min-width: 768px) {
  .box-link-csr-safety01 > li:nth-child(5) {
    order: 4;
    transform: translateY(5vw);
  }
}
@media only screen and (min-width: 768px) and (max-width: 767px) {
  .box-link-csr-safety01 > li:nth-child(5) {
    transform: translateY(0);
  }
}
.box-link-csr-safety01 > li a {
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
  color: #333;
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .box-link-csr-safety01 > li a {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    padding: 10px;
    font-size: 16px;
    font-size: 1.6rem;
    text-align: left;
  }
}
.box-link-csr-safety01 > li img {
  max-width: 100%;
  height: auto;
  margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  .box-link-csr-safety01 > li img {
    max-width: 100px;
    margin-right: 10px;
    margin-bottom: 0;
  }
}
.box-link-csr-safety01 > li p {
  line-height: 1.2;
}
@media only screen and (max-width: 767px) {
  .box-link-csr-safety01 > li p br {
    display: none;
  }
}

.box-link-csr-01 {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}
.box-link-csr-01 > li {
  width: 33.33333%;
}
@media only screen and (max-width: 767px) {
  .box-link-csr-01 > li {
    width: 100%;
    flex-direction: row;
  }
}
.box-link-csr-01 > li a {
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  justify-content: stretch;
  background: #118945 url(../img/bg_top_01.png) left top repeat;
}
@media only screen and (max-width: 767px) {
  .box-link-csr-01 > li a {
    flex-direction: row;
  }
}
.PC .box-link-csr-01 > li a:hover {
  opacity: 0.7;
}
.PC .box-link-csr-01 > li a:hover img {
  -webkit-transform: scale(1.1, 1.1);
  -moz-transform: scale(1.1, 1.1);
  -ms-transform: scale(1.1, 1.1);
  -o-transform: scale(1.1, 1.1);
  transform: scale(1.1, 1.1);
}
.box-link-csr-01 > li a .tit:before {
  background: #118945 url(../img/bg_top_02.png) left top repeat;
}
.box-link-csr-01 > li a img {
  width: 100%;
  height: auto;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.box-link-csr-01 > li a .img,
.box-link-csr-01 > li a .tit {
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .box-link-csr-01 > li a .img,
.box-link-csr-01 > li a .tit {
    width: 50%;
  }
}
.box-link-csr-01 > li a .img {
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.box-link-csr-01 > li a .tit {
  color: #fff;
  font-weight: bold;
  position: relative;
  line-height: 1.2;
  box-sizing: border-box;
  z-index: 100;
  font-size: 24px;
  font-size: 2.4rem;
}
@media print, screen and (min-width: 768px) {
  .box-link-csr-01 > li a .tit .only-sp {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-link-csr-01 > li a .tit {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .box-link-csr-01 > li a .tit {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
.box-link-csr-01 > li a .tit:before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  position: absolute;
  bottom: 0;
  margin-top: 1px;
  left: 50%;
  transform: translateY(50%) translateX(-50%) rotate(45deg);
}
@media only screen and (max-width: 767px) {
  .box-link-csr-01 > li a .tit:before {
    bottom: auto;
    left: auto;
    right: 0;
    top: 50%;
    transform: translateY(-50%) translateX(50%) rotate(45deg);
  }
}
.box-link-csr-01 > li a .tit span {
  display: inline-block;
  white-space: nowrap;
  padding-right: 40px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media only screen and (max-width: 1024px) {
  .box-link-csr-01 > li a .tit span {
    padding-right: 20px;
    font-size: 16px;
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 767px) {
  .box-link-csr-01 > li a .tit span {
    padding-right: 20px;
    font-size: 14px;
    font-size: 1.4rem;
  }
}
.box-link-csr-01 > li a .tit span:before, .box-link-csr-01 > li a .tit span:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
}
.box-link-csr-01 > li a .tit span:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 26px;
  height: 26px;
  border: 2px solid #fff;
  border-radius: 100%;
  right: 0;
  transform: translateY(-50%);
}
@media only screen and (max-width: 1024px) {
  .box-link-csr-01 > li a .tit span:before {
    right: -10px;
  }
}
.box-link-csr-01 > li a .tit span:after {
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  right: 0.4em;
  transform: translateY(-50%) rotate(45deg);
}
@media only screen and (max-width: 1024px) {
  .box-link-csr-01 > li a .tit span:after {
    right: 0;
  }
}
.box-link-csr-01 > li:nth-child(2n+1) a {
  flex-direction: column-reverse;
  background: #7fce39 url(../img/bg_top_01.png) left top repeat;
}
@media only screen and (max-width: 767px) {
  .box-link-csr-01 > li:nth-child(2n+1) a {
    flex-direction: row-reverse;
  }
}
.box-link-csr-01 > li:nth-child(2n+1) a .tit:before {
  background: #7fce39 url(../img/bg_top_02.png) left top repeat;
  top: 0;
  bottom: auto;
  transform: translateY(-50%) translateX(-50%) rotate(45deg);
}
@media only screen and (max-width: 767px) {
  .box-link-csr-01 > li:nth-child(2n+1) a .tit:before {
    left: 0;
    right: auto;
    top: 50%;
  }
}
@media print, screen and (min-width: 1025px) {
  .box-link-csr-01.ptn02 > li {
    width: 25%;
  }
}
@media print, screen and (min-width: 1025px) {
  .box-link-csr-01.ptn03 > li {
    width: 19.98%;
  }
}

.box-link-csr-02-wp {
  background: url(../../csr/top/img/bg_csr_01.jpg) top center no-repeat;
  background-size: cover;
}

.box-link-csr-02 {
  max-width: 1000px;
  padding: 10px;
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
}
@media only screen and (max-width: 767px) {
  .box-link-csr-02 {
    justify-content: left;
  }
}
@media print, screen and (min-width: 1280px) {
  .box-link-csr-02 {
    max-width: 1400px;
  }
}
@media print, screen and (min-width: 1280px) {
  .box-link-csr-02.style_2each {
    max-width: 1000px;
  }
}
.box-link-csr-02 .item-link {
  padding: 10px;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #fff;
  margin: 10px;
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
@media print, screen and (min-width: 768px) {
  .box-link-csr-02 .item-link {
    width: calc(50% - 20px);
  }
}
@media print, screen and (min-width: 1280px) {
  .box-link-csr-02 .item-link {
    width: calc(33.3333333333% - 20px);
  }
}
@media print, screen and (min-width: 1280px) {
  .box-link-csr-02 .item-link.style_2each {
    width: calc(50% - 20px);
  }
}
.box-link-csr-02 .item-link-in {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  color: #fff;
  padding: 60px 20px;
  position: relative;
}
.box-link-csr-02 .item-link-in .tit-link-csr-02 {
  text-align: center;
  height: 80px;
  margin-bottom: 10px;
  letter-spacing: 1px;
  line-height: 1.2;
  position: relative;
  font-size: 20px;
  font-size: 2rem;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-link-csr-02 .item-link-in .tit-link-csr-02 {
    font-size: 22px;
    font-size: 2.2rem;
  }
}
@media print, screen and (min-width: 1280px) {
  .box-link-csr-02 .item-link-in .tit-link-csr-02 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}
.box-link-csr-02 .item-link-in .box-txt {
  padding: 20px 0;
  width: 80%;
  margin: 0 auto;
}
@media print, screen and (min-width: 1600px) {
  .box-link-csr-02 .item-link-in .box-txt {
    width: 70%;
  }
}
.box-link-csr-02 .item-link-in .link li {
  margin-bottom: 5px;
}
.box-link-csr-02 .item-link-in .link a {
  line-height: 1.4;
  font-weight: bold;
  padding-left: 30px;
  display: block;
  color: #fff;
  position: relative;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  font-size: 14px;
  font-size: 1.4rem;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-link-csr-02 .item-link-in .link a {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
@media print, screen and (min-width: 1025px) {
  .box-link-csr-02 .item-link-in .link a {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
.box-link-csr-02 .item-link-in .link a:before, .box-link-csr-02 .item-link-in .link a:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.box-link-csr-02 .item-link-in .link a:before {
  width: 20px;
  height: 20px;
  border: 2px solid #fff;
  border-radius: 100%;
  left: 0;
  top: 2px;
}
@media only screen and (max-width: 1024px) {
  .box-link-csr-02 .item-link-in .link a:before {
    top: 0;
    left: -1px;
  }
}
.box-link-csr-02 .item-link-in .link a:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 6px;
  height: 6px;
  border: 1px solid #fff;
  border-color: #fff #fff transparent transparent;
  transform: rotate(45deg);
  top: 0.5em;
  left: 0.3em;
}
.PC .box-link-csr-02 .item-link-in .link a:hover {
  color: #0068af;
}
.PC .box-link-csr-02 .item-link-in .link a:hover:before {
  border-color: #0068af;
}
.PC .box-link-csr-02 .item-link-in .link a:hover:after {
  border-color: #0068af #0068af transparent transparent;
}
.box-link-csr-02 .item-link-in .link.type01 {
  width: 160px;
}
.jp .box-link-csr-02 .item-link-in .link.type01 {
  width: 290px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-link-csr-02 .item-link-in .link.type01 {
    width: 180px;
  }
  .jp .box-link-csr-02 .item-link-in .link.type01 {
    width: 320px;
  }
}
@media print, screen and (min-width: 1025px) {
  .box-link-csr-02 .item-link-in .link.type01 {
    width: 200px;
  }
  .jp .box-link-csr-02 .item-link-in .link.type01 {
    width: 350px;
  }
}
.box-link-csr-02 .item-link-in .link.type01 li {
  width: 100%;
  float: left;
}
.jp .box-link-csr-02 .item-link-in .link.type01 li {
  width: 50%;
}
.box-link-csr-02 .item-link-in .link.type01 a {
  white-space: normal;
}

.tb_materiality_wrap {
  max-width: 920px;
  overflow-x: scroll;
  transform: translateZ(0);
}

table.tb_materiality {
  table-layout: fixed;
  width: 100%;
  position: relative;
  border: 1px solid #ddd;
  border-collapse: collapse;
}
@media only screen and (max-width: 767px) {
  table.tb_materiality {
    font-size: 80%;
  }
}
table.tb_materiality .col {
  width: 107px;
}
@media only screen and (max-width: 767px) {
  table.tb_materiality .col {
    width: 80px;
  }
}
table.tb_materiality .col.no1 {
  width: 90px;
}
@media only screen and (max-width: 767px) {
  table.tb_materiality .col.no1 {
    width: 70px;
  }
}
table.tb_materiality .col.no2 {
  width: 220px;
}
@media only screen and (max-width: 767px) {
  table.tb_materiality .col.no2 {
    width: 110px;
  }
}
table.tb_materiality td, table.tb_materiality th {
  box-sizing: border-box;
  white-space: nowrap;
  padding: 5px;
  vertical-align: middle;
}
table.tb_materiality td {
  border: 1px solid #a2a2a2;
  text-align: center;
}
table.tb_materiality td .circle {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  border: 2px solid #00a0dc;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  table.tb_materiality td .circle {
    width: 15px;
    height: 15px;
  }
}
table.tb_materiality th {
  position: sticky;
}
table.tb_materiality th.sdg00 {
  color: #fff;
  background-color: #0599d9;
}
table.tb_materiality th.theme {
  box-sizing: border-box;
  padding: 12px 0;
  line-height: 1.4;
  text-align: center;
  color: #fff;
  border-left: 1px solid #fff;
}
table.tb_materiality th.theme.sdg01 {
  background-color: #e4011e;
}
table.tb_materiality th.theme.sdg02 {
  background-color: #d6a600;
}
table.tb_materiality th.theme.sdg03 {
  background-color: #1b973a;
}
table.tb_materiality th.theme.sdg04 {
  background-color: #c50e28;
}
table.tb_materiality th.theme.sdg05 {
  background-color: #e83418;
}
table.tb_materiality th.theme.sdg06 {
  background-color: #00a6d9;
}
table.tb_materiality th.theme.sdg07 {
  background-color: #fabd00;
}
table.tb_materiality th.theme.sdg07 span {
  font-size: 80%;
}
table.tb_materiality th.theme.sdg08 {
  background-color: #970a31;
}
table.tb_materiality th.theme.sdg09 {
  background-color: #ec6a06;
}
table.tb_materiality th.theme.sdg10 {
  background-color: #dc097b;
}
table.tb_materiality th.theme.sdg11 {
  background-color: #f5a20b;
}
table.tb_materiality th.theme.sdg12 {
  background-color: #d39206;
}
table.tb_materiality th.theme.sdg13 {
  background-color: #407936;
}
table.tb_materiality th.theme.sdg14 {
  background-color: #0075ba;
}
table.tb_materiality th.theme.sdg15 {
  background-color: #28a838;
}
table.tb_materiality th.theme.sdg16 {
  background-color: #004c88;
}
table.tb_materiality th.theme.sdg17 {
  background-color: #023067;
}
table.tb_materiality th.fixed01 {
  z-index: 2;
  box-sizing: border-box;
  position: sticky;
  left: 0;
  text-align: center;
  border: 1px solid #a2a2a2;
}
table.tb_materiality th.fixed01:before {
  content: "";
  position: absolute;
  top: 0;
  left: -1px;
  width: 100%;
  height: 100%;
  border-left: 1px solid #a2a2a2;
  z-index: 3;
}
table.tb_materiality th.fixed01:after {
  content: "";
  position: absolute;
  top: 0;
  left: 309px;
  width: 100%;
  height: 100%;
  border-left: 1px solid #a2a2a2;
  z-index: 3;
}
@media only screen and (max-width: 767px) {
  table.tb_materiality th.fixed01:after {
    left: 179px;
  }
}
table.tb_materiality th.fixed02 {
  z-index: 2;
  box-sizing: border-box;
  position: sticky;
  left: 90px;
  padding: 5px 10px;
  line-height: 1.6;
  text-align: left;
  background-color: #fff;
  border: 1px solid #a2a2a2;
  font-size: 90%;
}
@media only screen and (max-width: 767px) {
  table.tb_materiality th.fixed02 {
    left: 70px;
  }
}
table.tb_materiality th.fixed02:before {
  content: "";
  position: absolute;
  top: 0;
  left: -1px;
  width: 100%;
  height: 100%;
  border-left: 1px solid #a2a2a2;
  z-index: 3;
}

table.tb_materiality.en {
  font-size: 90%;
}
table.tb_materiality.en .col {
  width: 112px;
}
@media only screen and (max-width: 767px) {
  table.tb_materiality.en .col {
    width: 110px;
  }
}
table.tb_materiality.en .col.no1 {
  width: 90px;
}
@media only screen and (max-width: 767px) {
  table.tb_materiality.en .col.no1 {
    width: 70px;
  }
}
table.tb_materiality.en .col.no2 {
  width: 220px;
}
@media only screen and (max-width: 767px) {
  table.tb_materiality.en .col.no2 {
    width: 160px;
  }
}
table.tb_materiality.en .small {
  font-size: 80%;
}
table.tb_materiality.en th.theme {
  padding: 5px 0;
  line-height: 1.2;
}
@media only screen and (max-width: 767px) {
  table.tb_materiality.en th.fixed01:after {
    left: 229px;
  }
}
table.tb_materiality.en th.fixed02 {
  padding: 5px 10px;
  line-height: 1.6;
}
@media only screen and (max-width: 767px) {
  table.tb_materiality.en th.fixed02 {
    left: 70px;
  }
}
@media print, screen and (min-width: 1025px) {
  table.tb_materiality.en th.fixed02 .small {
    font-size: 100%;
  }
}
table.tb_materiality.en th.fixed02:before {
  top: 0;
  left: -1px;
  width: 100%;
  height: 100%;
}

@media only screen and (max-width: 767px) {
  .tb_materiality_ptn2_wrap {
    max-width: 100%;
    overflow-x: scroll;
    transform: translateZ(0);
  }
}

.tb_materiality_ptn2 {
  border-top: solid 2px #0068af;
  border-bottom: solid 2px #0068af;
}
@media only screen and (max-width: 767px) {
  .tb_materiality_ptn2 {
    font-size: 80%;
    width: 800px;
  }
}
.tb_materiality_ptn2 .tr_head .th_ico {
  width: 25%;
}
.tb_materiality_ptn2 .tr_head .th_blank {
  width: 14%;
}
@media only screen and (max-width: 767px) {
  .tb_materiality_ptn2 .tr_head .th_blank {
    display: none;
  }
}
.tb_materiality_ptn2 td, .tb_materiality_ptn2 th {
  box-sizing: border-box;
  padding: 15px;
}
@media only screen and (max-width: 767px) {
  .tb_materiality_ptn2 td, .tb_materiality_ptn2 th {
    padding: 8px;
  }
}
.tb_materiality_ptn2 td {
  vertical-align: top;
}
.tb_materiality_ptn2 td .instead_th_mini {
  color: #009dda;
  font-weight: bold;
}
.tb_materiality_ptn2 th {
  vertical-align: middle;
  color: #009dda;
  font-weight: bold;
}
.tb_materiality_ptn2 .th_mini {
  text-align: left;
  padding: 0;
}
@media only screen and (max-width: 767px) {
  .tb_materiality_ptn2 .th_mini {
    display: none;
  }
}
.tb_materiality_ptn2 .tr_last {
  border-top: solid 1px #aeaeae;
}

.nextstep {
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .section03.rich_text .nextstep img {
    width: 20%;
    height: auto;
  }
}

/* ------------------------------------------------
事業紹介
------------------------------------------------ */
.txt-lead-02 {
  text-align: center;
  font-weight: bold;
  padding: 0 10px;
}

.area-ple-01 {
  padding: 40px 0 60px;
  text-align: center;
}

.box-ple {
  display: inline-block;
  background-image: url("/service/img/ple_en.jpg");
  background-position: 0 0;
  background-repeat: no-repeat;
}
.jp .box-ple {
  background-image: url("/service/img/ple_jp.jpg");
}
@media only screen and (max-width: 1024px) {
  .box-ple {
    width: 80%;
    height: auto;
  }
  .box-ple img {
    width: 100%;
    height: auto;
  }
}
@media only screen and (max-width: 767px) {
  .box-ple {
    width: 90%;
  }
}

.area-service-01 {
  width: 90%;
  margin: 0 auto;
}
@media all and (-ms-high-contrast: none) {
  .area-service-01 {
    overflow: hidden;
  }
}

.area-service-01-in {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

.box-service-wp {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-justify-content: left;
  -moz-justify-content: left;
  -webkit-justify-content: left;
  justify-content: left;
}
.box-service-wp .box-service-01 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px 5px;
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .box-service-wp .box-service-01 {
    width: 100%;
  }
}
.box-service-wp .box-service-01 .box-tit-service-01 {
  font-size: 22px;
  font-size: 2.2rem;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-service-wp .box-service-01 .box-tit-service-01 {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 767px) {
  .box-service-wp .box-service-01 .box-tit-service-01 {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
.box-service-wp .box-service-01 .box-tit-service-01:before {
  border-width: 20px;
  top: -35px;
  margin-left: -20px;
}
.box-service-wp .box-service-01:nth-child(n+3) {
  width: 25%;
}
@media only screen and (max-width: 767px) {
  .box-service-wp .box-service-01:nth-child(n+3) {
    width: 100%;
  }
}
.box-service-wp .box-service-01:nth-child(n+3) .box-tit-service-01 {
  font-size: 16px;
  font-size: 1.6rem;
}
.jp .box-service-wp .box-service-01:nth-child(n+3) .box-tit-service-01 {
  font-size: 18px;
  font-size: 1.8rem;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .box-service-wp .box-service-01:nth-child(n+3) .box-tit-service-01 {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .jp .box-service-wp .box-service-01:nth-child(n+3) .box-tit-service-01 {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .box-service-wp .box-service-01:nth-child(n+3) .box-tit-service-01 {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
.box-service-wp .box-service-01:nth-child(n+3) .box-tit-service-01:before {
  border-width: 10px;
  top: -20px;
  margin-left: -10px;
}
.box-service-wp .box-service-01 .link-sp-tab {
  display: block;
}
.PC .box-service-wp .box-service-01:hover .box-service-in img {
  opacity: 0.5;
}
.PC .box-service-wp .box-service-01:hover .link-service-sub-01 {
  opacity: 1;
  transform: translate(-50%, -50%);
}
.box-service-wp .box-service-01.style02 {
  width: 33.33333%;
  /*  3つになったので一時的に3分の1にする */
  width: -webkit-calc(100% / 3);
  width: 33.3333333333%;
}
@media only screen and (max-width: 767px) {
  .box-service-wp .box-service-01.style02 {
    width: 100%;
  }
}
.box-service-wp .box-service-in {
  background-color: #000;
  position: relative;
}
.box-service-wp .box-service-in img {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  opacity: 1;
  width: 100%;
  height: auto;
}
.box-service-wp .box-service-in .caption {
  width: 45%;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1.2;
  color: #fff;
  text-shadow: 0px 0px 8px #000;
  position: absolute;
  right: 0;
  bottom: 5px;
}
.box-service-wp .link-service-sub-01 {
  -webkit-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  -moz-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  -ms-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  opacity: 0;
  width: 100%;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -20%);
}
.box-service-wp .link-service-sub-01 li {
  padding: 5px 20px;
  display: inline-block;
}
.box-service-wp .link-service-sub-01 a,
.box-service-wp .link-service-sub-01 span {
  font-size: 18px;
  font-size: 1.8rem;
  color: #fff;
  font-weight: bold;
  padding-left: 40px;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.box-service-wp .link-service-sub-01 a:before, .box-service-wp .link-service-sub-01 a:after,
.box-service-wp .link-service-sub-01 span:before,
.box-service-wp .link-service-sub-01 span:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.box-service-wp .link-service-sub-01 a:before,
.box-service-wp .link-service-sub-01 span:before {
  width: 24px;
  height: 24px;
  border-radius: 100%;
  border: 2px solid #fff;
  top: 50%;
  left: 0;
  margin-top: -12px;
}
.box-service-wp .link-service-sub-01 a:after,
.box-service-wp .link-service-sub-01 span:after {
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  left: 6px;
  top: 50%;
  margin-top: -4px;
}
.PC .box-service-wp .link-service-sub-01 a:hover,
.PC .box-service-wp .link-service-sub-01 span:hover {
  color: #00a0dc;
}
.PC .box-service-wp .link-service-sub-01 a:hover:before, .PC .box-service-wp .link-service-sub-01 a:hover:after,
.PC .box-service-wp .link-service-sub-01 span:hover:before,
.PC .box-service-wp .link-service-sub-01 span:hover:after {
  border-color: #00a0dc;
}
.box-service-wp .box-tit-service-01 {
  background-color: #0068af;
  color: #fff;
  text-align: center;
  font-weight: bold;
  padding: 10px 0;
  position: relative;
}
.box-service-wp .box-tit-service-01:before {
  content: "";
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px;
  border-color: transparent transparent #0068af transparent;
  left: 50%;
  top: -20px;
}

.area-field-01 {
  width: 90%;
  margin: 0 auto;
}
.area-field-01 .tabnav {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-justify-content: left;
  -moz-justify-content: left;
  -webkit-justify-content: left;
  justify-content: left;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
.area-field-01 .tabnav li {
  vertical-align: top;
  width: 25%;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .area-field-01 .tabnav li {
    width: 50%;
  }
}
.area-field-01 .tabnav li:before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background-color: transparent;
  position: absolute;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  bottom: -15px;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
@media only screen and (max-width: 767px) {
  .area-field-01 .tabnav li:before {
    display: none;
  }
}
.area-field-01 .tabnav li .boxTit {
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px;
  height: 230px;
  color: #fff;
  line-height: 1.2;
  background-color: #0068af;
  font-size: 18px;
  font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
  .area-field-01 .tabnav li .boxTit {
    height: 100px;
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
  }
}
.area-field-01 .tabnav li .boxTit .roboto {
  font-size: 55px;
  font-size: 5.5rem;
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .area-field-01 .tabnav li .boxTit .roboto {
    font-size: 40px;
    font-size: 4rem;
    float: left;
  }
}
.area-field-01 .tabnav li .boxTit .tit {
  display: block;
  line-height: 1.4;
}
.area-field-01 .tabnav li .boxTit:before, .area-field-01 .tabnav li .boxTit:after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.area-field-01 .tabnav li .boxTit:before {
  width: 45px;
  height: 45px;
  border: 2px solid #fff;
  border-radius: 100%;
  transform: translateX(-50%);
  bottom: 15px;
}
@media only screen and (max-width: 767px) {
  .area-field-01 .tabnav li .boxTit:before {
    width: 20px;
    height: 20px;
    bottom: 5px;
  }
}
.area-field-01 .tabnav li .boxTit:after {
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: translateX(-50%) rotate(135deg);
  bottom: 35px;
}
@media only screen and (max-width: 767px) {
  .area-field-01 .tabnav li .boxTit:after {
    width: 4px;
    height: 4px;
    bottom: 15px;
  }
}
.area-field-01 .tabnav li .boxImg {
  position: relative;
}
@media only screen and (max-width: 767px) {
  .area-field-01 .tabnav li .boxImg {
    display: none;
  }
}
.area-field-01 .tabnav li .boxImg .caption {
  position: absolute;
  text-align: right;
  font-size: 11px;
  font-size: 1.1rem;
  right: 5px;
  bottom: 5px;
  line-height: 1.2;
  color: #fff;
  text-shadow: 0px 0px 8px #000;
}
.jp .area-field-01 .tabnav li .boxImg .caption {
  font-family: roboto;
}
.area-field-01 .tabnav li.active, .area-field-01 .tabnav li:hover {
  cursor: pointer;
}
.area-field-01 .tabnav li.active .boxTit:before, .area-field-01 .tabnav li:hover .boxTit:before {
  background-color: #fff;
}
.area-field-01 .tabnav li.active .boxTit:after, .area-field-01 .tabnav li:hover .boxTit:after {
  border-top: none;
  border-right: none;
  border-left: 2px solid #0068af;
  border-bottom: 2px solid #0068af;
  bottom: 32px;
}
@media only screen and (max-width: 767px) {
  .area-field-01 .tabnav li.active .boxTit:after, .area-field-01 .tabnav li:hover .boxTit:after {
    bottom: 13px;
  }
}
.area-field-01 .tabnav li.active:before {
  background-color: #0068af;
}
.area-field-01 .tabnav li:nth-child(even) .boxTit {
  background-color: #00a0dc;
}
.area-field-01 .tabnav li:nth-child(even).active:before {
  background-color: #00a0dc;
}
.area-field-01 .tabnav li:nth-child(even).active .boxTit:after, .area-field-01 .tabnav li:nth-child(even):hover .boxTit:after {
  border-top: none;
  border-right: none;
  border-left: 2px solid #00a0dc;
  border-bottom: 2px solid #00a0dc;
}
@media only screen and (max-width: 767px) {
  .area-field-01 .tabnav li:nth-child(3) .boxTit {
    background-color: #00a0dc;
  }
  .area-field-01 .tabnav li:nth-child(3).active:before {
    background-color: #00a0dc;
  }
  .area-field-01 .tabnav li:nth-child(3).active .boxTit:after, .area-field-01 .tabnav li:nth-child(3):hover .boxTit:after {
    border-top: none;
    border-right: none;
    border-left: 2px solid #00a0dc;
    border-bottom: 2px solid #00a0dc;
  }
  .area-field-01 .tabnav li:nth-child(4) .boxTit {
    background-color: #0068af;
  }
  .area-field-01 .tabnav li:nth-child(4).active:before {
    background-color: #0068af;
  }
  .area-field-01 .tabnav li:nth-child(4).active .boxTit:after, .area-field-01 .tabnav li:nth-child(4):hover .boxTit:after {
    border-top: none;
    border-right: none;
    border-left: 2px solid #0068af;
    border-bottom: 2px solid #0068af;
  }
}
.area-field-01 .box-lead-01 {
  width: 90%;
  max-width: 1000px;
  padding: 30px 0;
  margin: 10px auto;
}
.area-field-01 .field-01-in {
  padding-top: 30px;
}

.area-field-01-en .tabnav li {
  width: 25%;
}
@media only screen and (max-width: 767px) {
  .area-field-01-en .tabnav li {
    width: 50%;
  }
}

/* ------------------------------------------------
お問い合わせ
------------------------------------------------ */
.contact_box {
  margin: 0 auto;
}
.contact_box .contact_text01 {
  text-align: center;
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .contact_box .contact_text01 {
    text-align: left;
  }
}
.contact_box .f-red {
  color: #eb0000;
}
.contact_box .contact_content {
  width: 100%;
  border-top: 1px solid #c7c8c8;
  border-bottom: 1px solid #c7c8c8;
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .contact_box .contact_content {
    border-top: none;
    border-bottom: none;
    margin-bottom: 0;
  }
  .contact_box .contact_content.sp td {
    padding: 15px 10px 20px 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
}
.contact_box .contact_content th {
  background: #f4f4f4;
  vertical-align: middle;
  width: 35%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border-top: #e2e2e2 1px solid;
  padding: 30px 0;
  font-size: 16px;
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .contact_box .contact_content th {
    display: block;
    width: 100%;
    padding: 3px 0;
    border-top: none;
  }
}
.contact_box .contact_content td {
  padding: 30px 10px 30px 24px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 75%;
  border-top: #e2e2e2 1px solid;
  vertical-align: middle;
}
@media only screen and (max-width: 767px) {
  .contact_box .contact_content td {
    display: block;
    width: 100%;
    border-top: none;
    padding: 15px 0 35px 0;
  }
}
@media only screen and (max-width: 767px) {
  .contact_box .contact_content td .contact_radio {
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px dotted #ccc;
  }
}
.contact_box .contact_content .radio01-input {
  display: none;
}
.contact_box .contact_content .radio01-parts {
  padding-left: 28px;
  position: relative;
  margin-right: 20px;
  display: block;
}
.contact_box .contact_content .radio01-parts::before {
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #bebebe;
  border-radius: 50%;
}
.contact_box .contact_content .radio01-input:checked + .radio01-parts {
  color: #009ad6;
}
.contact_box .contact_content .radio01-input:checked + .radio01-parts::after {
  content: "";
  display: block;
  position: absolute;
  top: 7px;
  left: 4px;
  width: 9px;
  height: 9px;
  background: #009ad6;
  border-radius: 50%;
}
.contact_box .contact_content .select01::-ms-expand {
  display: none;
}
.contact_box .contact_content .select01 {
  width: 100%;
  padding: 10px;
  padding: 16px 20px;
  border: 1px solid #e5e5e5;
  border-radius: 4px 4px 4px 4px;
  background-repeat: no-repeat;
  background-image: url(/common/img/arrow01.png);
  background-position: bottom 50% right 20px;
  background-size: 14px, 9px;
}
.contact_box .contact_content .ulCaution01 {
  font-size: 14px !important;
  margin-top: 15px;
}
.contact_box .contact_content .form400 {
  background: #fbfbfb;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 16px 10px;
  border: 1px solid #e5e5e5;
  border-radius: 4px 4px 4px 4px;
}
@media only screen and (max-width: 767px) {
  .contact_box .contact_content .form400 {
    background: none;
  }
}
.contact_box .contact_content textarea {
  background: #fbfbfb;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 16px 10px;
  border: 1px solid #e5e5e5;
  border-radius: 4px 4px 4px 4px;
  height: 200px;
}
@media only screen and (max-width: 767px) {
  .contact_box .contact_content textarea {
    background: none;
  }
}
.contact_box .contact_content textarea:focus {
  box-shadow: 0 0 6px 0 rgba(194, 194, 194, 0.5);
  border: 1px solid #64d9f0;
}
.contact_box .contact_content input[type=text]:focus {
  box-shadow: 0 0 6px 0 rgba(194, 194, 194, 0.5);
  border: 1px solid #64d9f0;
}
.contact_box #agreewrap {
  text-align: left;
  padding: 0;
  margin-bottom: 20px;
  border: 1px solid #CCC;
  height: 180px;
  overflow: auto;
}
.contact_box #agreewrap div {
  padding: 20px;
}
.contact_box #agreewrap div h3 {
  font-size: 140%;
  border: none;
  padding: 0;
  margin: 0px 0 20px;
  clear: both;
  color: #333;
}
.contact_box #agreewrap div h4 {
  margin: 30px 0 15px;
  font-size: 100%;
  border: none;
}
.contact_box #agreewrap div h4.first {
  margin: 0px 0 15px;
  font-weight: normal;
}
.contact_box #agreewrap p {
  margin-bottom: 20px;
}
.contact_box #agreewrap ul,
.contact_box #agreewrap ol {
  padding-left: 20px;
  margin: 0 20px;
}
.contact_box #agreewrap li {
  margin-bottom: 7px;
  line-height: 1.4;
}
.contact_box #agreewrap ul li ul,
.contact_box #agreewrap ol li ul {
  padding-top: 10px;
  margin: 0;
}
.contact_box #agreewrap ul li ul li,
.contact_box #agreewrap ol li ul li {
  list-style: none;
}
.contact_box #agreewrap ol li ul li {
  padding-left: 1em;
  text-indent: -1em;
}
.contact_box #agreewrap p.contact {
  padding: 10px 30px;
  border: 1px solid #CCC;
  margin-top: 20px;
}
.contact_box .err_area {
  margin: 0 auto;
  padding: 15px;
  width: 100%;
  border: 1px solid #d20000;
  background: #fbf7f7;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 25px;
}
.contact_box .err_area p {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.contact_box .thanks {
  border: 1px dotted #ccc;
  padding: 40px 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  background: #f4f4f4;
  text-align: center;
}
.contact_box .thanks img {
  width: 25%;
}
.contact_box .thanks p {
  display: block;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 35px;
}

.contact_box02 {
  text-align: center;
}
.contact_box02 .doui {
  width: 100%;
  margin: 40px auto 0 auto;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .contact_box02 .doui {
    margin: 40px auto 0 auto;
  }
}
.contact_box02 .doui .radio01-input {
  display: none;
}
.contact_box02 .doui .radio01-parts {
  padding-left: 28px;
  position: relative;
  margin-right: 20px;
}
@media only screen and (max-width: 767px) {
  .contact_box02 .doui .radio01-parts {
    display: inline-block;
  }
}
.contact_box02 .doui .radio01-parts::before {
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #bebebe;
  border-radius: 50%;
}
.contact_box02 .doui .radio01-input:checked + .radio01-parts {
  color: #009ad6;
}
.contact_box02 .doui .radio01-input:checked + .radio01-parts::after {
  content: "";
  display: block;
  position: absolute;
  top: 7px;
  left: 4px;
  width: 9px;
  height: 9px;
  background: #009ad6;
  border-radius: 50%;
}
.contact_box02 .contact_btn {
  text-align: center;
  display: inline-block;
  border: 1px solid #fff;
  line-height: 1.2;
  font-size: 16px;
  color: #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  color: #fff;
  position: relative;
  word-wrap: break-word;
  text-align: center;
}
.contact_box02 .contact_btn a {
  color: #fff;
}
.contact_box02 .contact_btn:before, .contact_box02 .contact_btn:after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.contact_box02 .contact_btn:after {
  width: 7px;
  height: 7px;
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  border-top-width: 1px;
  border-right-width: 1px;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  left: 20px;
  margin-top: -4px;
  margin-left: -3px;
}
@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  .contact_box02 .contact_btn:after {
    left: 14px;
  }
}
@media only screen and (max-width: 767px) {
  .contact_box02 .contact_btn {
    width: 100%;
    text-align: center;
  }
  .contact_box02 .contact_btn span {
    display: inline-block;
    width: 96%;
  }
}
.PC .contact_box02 .contact_btn:hover {
  background-color: #fff;
  color: #00192a;
}
.PC .contact_box02 .contact_btn:hover:after {
  border-color: #00192a;
}
.PC .contact_box02 .contact_btn:hover input {
  color: #0068af;
}
.PC .contact_box02 .contact_btn a:hover {
  color: #00192a;
}
.contact_box02 .contact_btn.style02 {
  color: #fff;
  background: #0068af;
  margin: 40px auto 0 auto;
}
@media only screen and (max-width: 767px) {
  .contact_box02 .contact_btn.style02 {
    margin: 20px auto 0 auto;
  }
}
.contact_box02 .contact_btn.style02:before, .contact_box02 .contact_btn.style02:after {
  border-color: #fff;
}
.contact_box02 .contact_btn.style02:hover {
  color: #0068af;
  background: #fff;
  border-color: #0068af;
  cursor: pointer;
}
.contact_box02 .contact_btn.style02:hover:before, .contact_box02 .contact_btn.style02:hover:after {
  border-color: #0068af;
}
.contact_box02 .contact_btn.type01 {
  margin-right: 25px;
}
@media only screen and (max-width: 767px) {
  .contact_box02 .contact_btn.type01 {
    margin-right: 0;
  }
}
.contact_box02 .contact_btn.type01.last-child {
  margin-left: 50px;
}
@media only screen and (max-width: 767px) {
  .contact_box02 .contact_btn.type01.last-child {
    margin-left: 0;
  }
}
.contact_box02 .contact_btn.disabled {
  pointer-events: none;
}
.contact_box02 .contact_btn input {
  color: #fff;
  font-size: 16px;
  letter-spacing: 0.1em;
  padding: 15px 78px 15px 88px;
  cursor: pointer;
  width: 100%;
  box-sizing: border-box;
}
.contact_box02 .contact_btn input:hover {
  color: #0068af;
}
.contact_box02 .contact_btn input[disabled] {
  background: #eaeaea;
  pointer-events: none;
}
.contact_box02 .link-btn-03 {
  margin-top: 40px;
}
.contact_box02 .link-btn-03 a {
  padding: 15px 40px 15px 50px;
}

.g-recaptcha > div {
  margin: 0 auto;
}

/* ------------------------------------------------
  サイトマップここから
------------------------------------------------ */
.sitemap .tit06.style01 {
  font-weight: bold;
  margin-bottom: 25px;
}
.sitemap.style_en .tit06.style01 {
  font-weight: 500;
}
.sitemap .tit03 {
  font-size: 30px;
}
.sitemap .link-03 a {
  margin-bottom: 0;
}
.sitemap .link-03:before {
  margin-top: 3px;
}
.sitemap .sitemap_arrow {
  padding-left: 16px;
  font-weight: bold;
  color: #333;
}

.cateTtl {
  margin-bottom: 30px;
  line-height: 1;
  padding-bottom: 5px;
  border-bottom: dotted 1px #666666;
}
@media only screen and (max-width: 767px) {
  .cateTtl {
    margin-bottom: 20px;
  }
}
.cateTtl a {
  color: #333;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.cateTtl a:hover {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  color: #00a0dc;
}
.sitemap_wp {
  margin-bottom: 80px;
}
@media only screen and (max-width: 767px) {
  .sitemap_wp.type02 {
    margin-bottom: 40px;
  }
}
.sitemap_wp.type03 {
  margin-bottom: 60px;
}

.siteList01 {
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  .siteList01 {
    margin-bottom: 0px;
  }
}
.siteList01 .link-01 {
  line-height: 1.4;
  margin-bottom: 20px;
  padding: 0 0 0 42px;
}
@media only screen and (max-width: 767px) {
  .siteList01 .link-01 {
    margin-bottom: 15px;
  }
}
.siteList01 .link-01:last-child {
  margin-bottom: 0;
}
.siteList01 .link-03 {
  margin-top: 60px;
  line-height: 1;
}
.siteList01 .link-03:first-child {
  margin-top: 0;
}
@media only screen and (max-width: 767px) {
  .siteList01 .link-03 {
    margin-top: 20px;
  }
}
.siteList01 .link-03.space30 {
  margin-top: 30px;
}
.siteList01 .link-03 a {
  padding-left: 16px;
}
@media only screen and (max-width: 767px) {
  .siteList01 .link-03 a {
    display: block;
  }
}
.siteList01 .link-03.space30 {
  margin-top: 30px;
}
.siteList01 .link-03.space30:first-child {
  margin-top: 0;
}
.siteList01.type01 {
  display: flex;
  flex-wrap: wrap;
}
.siteList01.type01 .link-03.type03 {
  font-size: 16px;
}
@media only screen and (max-width: 767px) {
  .siteList01.type01 .link-03.type03 {
    margin-bottom: 0;
  }
}
.siteList01.type01 ul {
  margin-top: 20px;
}
.siteList01.type01 .cont {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 31.42%;
  margin-right: 2.87%;
}
.siteList01.type01 .cont:nth-child(3n) {
  margin-right: 0;
}
@media only screen and (max-width: 767px) {
  .siteList01.type01 .cont.one_list {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .siteList01.type01 {
    flex-direction: column;
  }
  .siteList01.type01 .cont {
    width: 100%;
    margin-right: 0;
  }
  .siteList01.type01 .cont ul {
    margin-top: 15px;
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .siteList01.type02 {
    margin-bottom: 20px;
  }
}
.siteList01.type02 ul {
  margin-top: 15px;
}
@media only screen and (max-width: 767px) {
  .siteList01.type02 ul {
    margin-bottom: 30px;
  }
}
.siteList01.type02 ul li {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: calc(33% - 20px);
  margin-right: 10px;
}
.siteList01.type02 ul li a {
  display: block;
}
.siteList01.type02 ul li:nth-child(3n) {
  margin-right: 0;
}
@media only screen and (max-width: 767px) {
  .siteList01.type02 ul {
    flex-direction: column;
    margin-top: 15px;
  }
  .siteList01.type02 ul li {
    width: 100% !important;
    margin-right: 0;
  }
}
.siteList01.type03 {
  display: flex;
  flex-wrap: wrap;
}
.siteList01.type03 .cont {
  width: 49%;
  margin-right: 1%;
}
.siteList01.type03 .cont:nth-child(2n) {
  margin-right: 0;
  margin-left: 1%;
}
@media only screen and (max-width: 767px) {
  .siteList01.type03 .cont.type02 {
    margin-bottom: 20px;
  }
}
.siteList01.type03 .cont.type02 .link-03.type03 {
  margin-top: 30px;
}
.siteList01.type03 .cont.type02 .link-03.type03:first-child {
  margin-top: 0;
}
@media only screen and (max-width: 767px) {
  .siteList01.type03 .cont.type02 .link-03.type03 {
    margin-top: 20px;
  }
}
.siteList01.type03 .cont.type02 .link-03 a {
  line-height: 1.6;
}
.siteList01.type03 .cont ul {
  margin-top: 20px;
}
@media only screen and (max-width: 767px) {
  .siteList01.type03 .cont ul {
    margin-bottom: 30px;
  }
}
.siteList01.type03 .cont li.listBox01 {
  margin-bottom: 20px;
}
.siteList01.type03 .cont li.listBox01:last-child {
  margin-bottom: 0;
}
.siteList01.type03 .cont li.listBox01 .link-01 {
  margin-bottom: 15px;
}
.siteList01.type03 .cont li.listBox01 .link-01 a:before {
  width: 15px;
  height: 15px;
}
.siteList01.type03 .cont li.listBox01 .link-01 a:after {
  width: 4px;
  height: 4px;
}
@media only screen and (max-width: 767px) {
  .siteList01.type03 .cont li.listBox01 {
    margin-bottom: 20px;
  }
  .siteList01.type03 .cont li.listBox01 .link-01 {
    margin-bottom: 10px;
  }
}
.siteList01.type03 .cont ol {
  display: flex;
  flex-wrap: wrap;
  padding-left: 43px;
}
.siteList01.type03 .cont ol li {
  width: 48%;
  margin-right: 2%;
}
.siteList01.type03 .cont ol li:nth-child(2n) {
  margin-right: 0;
}
.siteList01.type03 .cont ol li.link-03.type03 {
  line-height: 1;
  margin-bottom: 10px !important;
  margin-top: 0;
  font-size: 14px;
}
@media only screen and (max-width: 767px) {
  .siteList01.type03 .cont ol li.link-03.type03 {
    margin-bottom: 15px;
  }
}
.siteList01.type03 .cont ol li.link-03.type03 a {
  margin-bottom: 0;
  padding-left: 14px;
  font-weight: normal;
  display: block;
  line-height: 1.4;
}
.siteList01.type03 .cont ol li.link-03.type03 a:before {
  border-top: 1px solid #0068af;
  border-right: 1px solid #0068af;
  width: 4px;
  height: 4px;
}
.PC .siteList01.type03 .cont ol li.link-03.type03 a:hover {
  text-decoration: underline;
}
@media only screen and (max-width: 767px) {
  .siteList01.type03 {
    flex-direction: column;
  }
  .siteList01.type03 .cont {
    width: 100%;
    margin-right: 0;
  }
  .siteList01.type03 .cont ol {
    padding-left: 42px;
    flex-direction: column;
  }
  .siteList01.type03 .cont ol li {
    width: 100%;
    margin-right: 0;
  }
}
.siteList01 ol.sub,
.siteList01 ol.third {
  display: block !important;
  flex-wrap: none;
  line-height: 1.4;
}
.siteList01 ol.sub > li,
.siteList01 ol.third > li {
  width: auto !important;
  display: block !important;
  position: relative;
  float: none;
}
.siteList01 ol.sub > li:nth-child(n+2) {
  margin-top: 15px !important;
}
.siteList01 ol.third {
  margin-top: 10px;
}
.siteList01 ol.third > li:nth-child(n+2) {
  margin-top: 5px !important;
}

/*-----------------------
SearchResult
------------------------*/
#search-results .result_tit {
  background: #eaeaea;
  padding: 8px 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 22px;
}
@media only screen and (max-width: 767px) {
  #search-results .result_tit {
    font-size: 18px;
  }
}
#search-results .serach_box {
  margin: 50px auto 40px auto;
  width: 70%;
  display: flex;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  #search-results .serach_box {
    width: 100%;
    margin: 0px auto 20px auto;
    display: block;
  }
  #search-results .serach_box.en {
    margin: 20px auto 10px auto;
  }
}
#search-results .serach_box .serach_box_first {
  width: 75%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #search-results .serach_box .serach_box_first {
    width: 72%;
  }
}
@media only screen and (max-width: 767px) {
  #search-results .serach_box .serach_box_first {
    width: 100%;
    margin: 15px auto;
  }
}
#search-results .serach_box #search {
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 2px;
  padding: 16px 20px;
  font-size: 16px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  #search-results .serach_box #search {
    padding: 15px 20px;
  }
}
#search-results .serach_box_last {
  width: 18%;
}
@media only screen and (max-width: 767px) {
  #search-results .serach_box_last {
    width: 60%;
    margin: -5px auto 15px auto;
  }
  #search-results .serach_box_last.en {
    margin: 0px auto 10px auto;
  }
}
#search-results .search-submit {
  width: 100%;
  height: 52px;
  vertical-align: middle;
  color: #fff;
  text-align: center;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  background: url(/common/img/ico-search.png) no-repeat #aeaeae 90% center;
}
@media only screen and (max-width: 767px) {
  #search-results .search-submit {
    background: url(none) no-repeat #aeaeae center;
    height: 42px;
  }
}
#search-results .search-submit span {
  vertical-align: middle;
  text-align: center;
  padding-right: 10px;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  #search-results .search-submit span {
    padding-right: 0;
  }
}
#search-results .search-submit:hover {
  box-shadow: 0px 0px 4px rgba(0, 25, 42, 0.5);
  cursor: pointer;
}
#search-results .result_number {
  border-bottom: 1px solid #ccc;
  padding: 3px;
}
#search-results .result_number span {
  font-weight: bold;
  padding-right: 3px;
  display: inline-block;
}
#search-results .link-02 a:before {
  background-color: #fff;
}
#search-results .tit09:hover a {
  color: #00a0dc !important;
}
#search-results .search-results-inner .tit01 {
  font-size: 16px;
}
#search-results .search-results-inner .tit02 {
  font-size: 16px;
  border-left: none;
  padding-left: 0;
}
#search-results .search-results-inner .tit03 {
  font-size: 16px;
  border-bottom: none;
}
#search-results .search-results-inner .tit04 {
  font-size: 16px;
}
#search-results .search-results-inner .tit05 {
  font-size: 16px;
  border-bottom: none;
}
#search-results .result_box {
  margin: 30px auto;
}
#search-results .searchWord {
  background: rgba(0, 160, 220, 0.18);
}
#search-results .search_url {
  font-size: 13px;
  color: #00a0dc;
  width: 100%;
  word-wrap: break-word;
}
#search-results .search_day {
  font-size: 13px;
  color: #aeaeae;
}

.search_page {
  overflow: hidden;
  width: 100%;
  margin: 0 auto;
}
.search_page .pagination {
  display: flex;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.search_page .pagination.link-02 a {
  display: inline-block;
  margin: 0 10px;
  padding: 3px 0px;
  font-size: 16px;
}
.search_page .pagination.link-02 a:before {
  background: #fff;
}
.search_page .pagination.link-02 a.next {
  background: none;
  color: #000;
  position: relative;
}
.search_page .pagination.link-02 a.next span:after {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 7px;
  right: -15px;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  margin-top: 6px;
}
.search_page .pagination.link-02.prev {
  background: none;
  color: #000;
  position: relative;
}
.search_page .pagination.link-02.prev span:before {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg);
  position: absolute;
  top: 7px;
  left: -15px;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  margin-top: 6px;
}
.search_page .pagination.link-02 span.here {
  margin: 0 10px;
  padding: 3px 0px;
  font-weight: bold;
  color: #00a0dc;
}

.rich_text .boxImg a {
  display: block;
}

.chiba_a {
  color: red;
}