@charset 'UTF-8';
/*========================================*/
/* Foundation
/*========================================*/
@font-face {
  font-family : 'Noto Sans Japanese';

  src : url('../fonts/NotoSansCJKjp-Regular.woff') format('woff');
}

@font-face {
  font-family : 'RobotoSlab';

  src : url('../fonts/RobotoSlab-Regular.eot');
  /* IE9 Compat Modes */
  src : url('../fonts/RobotoSlab-Regular.woff') format('woff'), url('../fonts/RobotoSlab-Regular.ttf') format('truetype'), url('../fonts/RobotoSlab-Regular.svg#svgFontName') format('svg');
  /* Legacy iOS */
}

/*--------------------------------------
  Reset Css
--------------------------------------*/
html , body , div , span , applet , object , iframe , h1 , h2 , h3 , h4 , h5 , h6 , p , blockquote , pre , a , abbr , acronym , address , big , cite , code , del , dfn , em , img , ins , kbd , q , s , samp , small , strike , strong , sub , sup , tt , var , b , u , i , center , dl , dt , dd , ol , ul , li , fieldset , form , label , legend , table , caption , tbody , tfoot , thead , tr , th , td , article , aside , canvas , details , embed , figure , figcaption , footer , header , hgroup , menu , nav , output , ruby , section , summary , time , mark , audio , video {
  font-size : 100%;
  margin : 0;
  padding : 0;
  vertical-align : baseline; 
  border : 0;
}

/* HTML5 display-role reset for older browsers */
article , aside , details , figcaption , figure , footer , header , hgroup , menu , nav , section {
  display : block;
}

ol , ul {
  list-style : none;
}

table {
  border-spacing : 0; 
  border-collapse : collapse;
}

blockquote , q {
  quotes : none;
}

blockquote:before , blockquote:after , q:before , q:after {
  content : none;
}

/*--------------------------------------
  Common-Setting
---------------------------------------*/
html {
  font-size : 10px;
  overflow-y : scroll;
}

body , input , button , select , textarea {
  font-family : 'Noto Sans Japanese', 'ヒラギノ角ゴシック', 'Hiragino Sans', 'メイリオ', Meiryo, sans-serif;
}

body {
  font-size : 1.4rem;
  line-height : 1.6;
  padding-top : 60px;
  text-align : left;
  word-wrap : break-word;
  color : #222;

  -webkit-text-size-adjust : 100%;
  overflow-wrap : break-word;
  -webkit-font-smoothing : antialiased;
  -moz-osx-font-smoothing : grayscale;
  font-feature-settings : 'palt';
}
@media print, screen and (min-width: 768px) {
  body {
    min-width : 980px;
    padding-top : 0;
  }
}

h1 , h2 , h3 , h4 , h5 , h6 {
  font-weight : normal;
  line-height : 1.4;
}

img {
  max-width : 100%;
  height : auto; 
  vertical-align : top;
}

table {
  width : 100%; 
  border-spacing : 0;
  border-collapse : collapse;
}

input , button , textarea , select {
  border : none;
  border-radius : 0;
  outline : none; 
  background : none;

  -webkit-appearance : none;
     -moz-appearance : none;
          appearance : none;
}

input[type='radio'] , input[type='checkbox'] {
  display : none;
}

label {
  cursor : pointer;
}

strong {
  font-weight : bold;
}

em {
  font-style : italic;
}

a {
  transition : all .3s ease, color .3s ease; 
  text-decoration : underline;
  color : #000065;
}

*:focus , a:focus , a img {
  transition : opacity .3s; 
  outline : none;
}

@media print, screen and (min-width: 768px) {
  a:hover {
    text-decoration : none;
    color : #2984a2;
  }
  a:hover img {
    opacity : .6;
  }
}

.icon img[src$='.svg'] {
  width : 100%;
}

* {
  box-sizing : border-box;
}

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

@font-face {
  font-family : 'icon';
  font-weight : normal;
  font-style : normal; 

  src : url('../fonts/icon.eot');
  src : url('../fonts/icon.eot?#iefix') format('eot'), url('../fonts/icon.woff') format('woff'), url('../fonts/icon.ttf') format('truetype'), url('../fonts/icon.svg#icon') format('svg');
}

[class^='icon-'] , [class*=' icon-'] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family : 'icon' !important;
  font-weight : normal;
  font-style : normal;
  font-variant : normal;
  line-height : 1;
  display : inline-block;
  vertical-align : middle;
  text-transform : none;
  color : #000065;

  speak : none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing : antialiased;
  -moz-osx-font-smoothing : grayscale;
}

.icon-efforts:before {
  content : '\EA01';
}

.icon-case:before {
  content : '\EA02';
}

.icon-notice:before {
  content : '\EA03';
}

.icon-navi:before {
  content : '\EA04';
}

.icon-seismic:before {
  content : '\EA05';
}

.icon-history:before {
  content : '\EA06';
}

.icon-faq:before {
  content : '\EA07';
}

.icon-pdf:before {
  content : '\EA08';
}

.icon-dxf:before {
  content : '\EA09';
}

.icon-jww:before {
  content : '\EA0A';
}

.icon-zip:before {
  content : '\EA0B';
}

.icon-arrow:before {
  content : '\EA0C';
}

.icon-link:before {
  content : '\EA0D';
}

.icon-search:before {
  content : '\EA0F';
}

.icon-caution:before {
  content : '\EA10';
}

.icon-book:before {
  content : '\EA11';
}

.icon-zoom:before {
  content : '\EA12';
}

.icon-cross:before {
  content : '\EA13';
}

.icon-download:before {
  content : '\EA0E';
}

.btn.btn_nav .icon2 {
  display: inline-block;
  width: 35px;
  height: 35px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: auto 100%;
}

.icon2-notice {
  background-image: url(/assets/images/icon/icon-notice.png);
}
.icon2-about {
  background-image: url(/assets/images/icon/icon-about.png);
}
.icon2-case {
  background-image: url(/assets/images/icon/icon-case.png);
}
.icon2-notice771 {
  background-image: url(/assets/images/icon/icon-notice771.png);
}
.icon2-navi {
  background-image: url(/assets/images/icon/icon-navi.png);
}
.icon2-chronology {
  background-image: url(/assets/images/icon/icon-chronology.png);
}
.icon2-qa {
  background-image: url(/assets/images/icon/icon-qa.png);
}
/*========================================*/
/* Layout
/*========================================*/
/* Layout
---------------------------------------*/
.l-inner {
  width : 100%;
  padding-right : 10px; 
  padding-left : 10px;
}

@media print, screen and (min-width: 768px) {
  .l-inner , .l-inner-pc {
    max-width : 960px;
    margin-right : auto; 
    margin-left : auto;
    padding-right : 0;
    padding-left : 0;
  }
  .home .l-inner {
    max-width : 980px;
  }
}

.l-contents {
  background : url(../images/common/content-bg.png) repeat-x center top #f2f2f7;
}
.home .l-contents {
  background : none;
}

.l-block-40 {
  padding-top : 40px;
  padding-bottom : 40px;
}

/* Header
---------------------------------------*/
.l-header {
  position : fixed;
  z-index : 9000; 
  top : 0;
  width : 100%;
}
@media print, screen and (min-width: 768px) {
  .l-header {
    position : static;
  }
}

.header-heading {
  position : relative; 
  padding : 12px 15px 11px;
  background-color : #fff;
}
@media print, screen and (min-width: 768px) {
  .header-heading {
    width : 980px;
    margin-right : auto;
    margin-left : auto;
    padding : 17px 0 16px;
  }
}

.header-logo {
  width : 247px;
}

.header-menu {
  font-family : 'RobotoSlab';
  position : absolute;
  top : 0;
  right : 0; 
  width : 60px;
  height : 60px;
  color : #000065;
}
.header-menu-text {
  font-size : 1.2rem;
  position : absolute;
  bottom : 8px; 
  width : 100%;
  text-align : center;
}
@media print, screen and (min-width: 768px) {
  .header-menu {
    display : none;
  }
}

.header-cnt {
  display : none;
  overflow-y : scroll;
  height : 100%;
  height : calc(100vh - 60px); 
  background-color : #fff;
}
@media print, screen and (min-width: 768px) {
  .header-cnt {
    position : relative; 
    display : block;
    overflow-y : visible;
    height : auto;
  }
}

.header-nav a {
  font-weight : bold;
  line-height : 1.2;
  position : relative; 
  display : block;
  text-decoration : none;
}

@media print, screen and (min-width: 768px) {
  .header-nav {
    width : 100%;
    background-color : #000065;
  }
  .header-nav > ul {
    display : -ms-flexbox;
    display : flex;
    max-width : 980px;
    margin-right : auto; 
    margin-left : auto;

    -ms-flex-pack : center;
    justify-content : center;
  }
}

.header-navItem {
  border-bottom : 1px solid #fff;
}
.header-navItem > a {
  font-size : 2rem;
  padding : 15px 20px; 
  color : #fff;
  background-color : #000065;
}
.header-navItem > a .icon-acc-wrap {
  right : 20px;
}
.header-navItem > ul li:not(:first-child) {
  border-top : 1px solid #e8e8f0;
}
.header-navItem > ul li a {
  font-size : 1.8rem;
  position : relative; 
  padding : 15px 45px 15px 20px;
}
.header-navItem > ul li a:after {
  font-family : 'icon' !important;
  font-size : 2rem;
  font-weight : normal;
  font-style : normal;
  font-variant : normal;
  line-height : 1;
  position : absolute;
  top : 50%;
  right : 20px;
  display : inline-block;
  margin-top : -1rem; 
  content : '\EA0C';
  vertical-align : middle;
  text-transform : none;
  color : #000065;

  speak : none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing : antialiased;
  -moz-osx-font-smoothing : grayscale;
}

@media print, screen and (min-width: 768px) {
  .header-navItem {
    position : relative; 
    width : 16.66%;
    height : 60px;
    border-bottom : none;
  }
  .header-navItem > a {
    font-size : 1.4rem;
    position : relative;
    height : 60px;
    padding : 22px 0;
    transition : all .3s ease; 
    text-align : center;
  }
  .header-navItem > a > span {
    position : relative;
    z-index : 10;
  }
  .header-navItem > a:before {
    position : absolute;
    z-index : 1;
    bottom : 0;
    left : 0;
    display : inline-block;
    width : 100%;
    height : 0;
    content : '';
    transition : all .3s ease; 
    background-color : #333384;
  }
  .header-navItem > a:hover {
    opacity : 1;
  }
  .header-navItem > a:hover:before {
    height : 100%;
  }
  .header-navItem > a.is-current {
    background-color : #333384;
  }
  .header-navItem:before , .header-navItem:last-child:after {
    position : absolute;
    z-index : 10; 
    top : 50%;
    left : 0;
    display : inline-block;
    width : 1px;
    height : 12px;
    margin-top : -6px;
    content : '';
    background-color : #48488e;
  }
  .header-navItem:last-child:after {
    right : 0; 
    left : auto;
  }
  .header-navItem > ul {
    display : none !important;
  }
}

.header-btn {
  padding : 20px 10px; 
  background-color : #000065;
}
.header-btn > p:not(:first-child) {
  margin-top : 10px;
}

.header-search {
  margin-top : 20px;
  padding-right : 10px; 
  padding-left : 10px;
  display: none;
}
.header-search input[type='text'] {
  font-size : 1.6rem;
  width : calc( 100% - 45px);
  height : 45px;
  padding : 10px; 
  background-color : #e8e8f0;

  -ms-flex : 0 0 auto;
      flex : 0 0 auto;
}

@media print, screen and (min-width: 768px) {
  .header-search {
    position : absolute;
    top : -56px;
    left : 50%;
    width : 230px;
    margin-top : 0;
    margin-left : 260px; 
    padding-right : 0;
    padding-left : 0;
  }
  .header-search input[type='text'] {
    font-size : 1.2rem;
    width : calc( 100% - 38px);
    height : 30px;
    padding-top : 5px;
    padding-bottom : 5px;
  }
}

.header-search #srchBox {
  height : 70px;
}
@media print, screen and (min-width: 768px) {
  .header-search #srchBox {
    height : 50px;
  }
}

.header-search #srchLogo {
  font-size : 1.2rem;
  margin-top : 4px;
}
.header-search #srchLogo a {
  text-decoration : none;
  color : #999;
}
@media print, screen and (min-width: 768px) {
  .header-search #srchLogo {
    font-size : 1rem;
    margin-top : 2px;
  }
}

.header-searchBlock {
  position : relative; 
  display : -ms-flexbox;
  display : flex;
}

.header-search_btn {
  width : 45px;
  height : 45px;
  background-color : #000065;
}
.header-search_btn .icon {
  font-size : 2.2rem; 
  color : #fff;
}
@media print, screen and (min-width: 768px) {
  .header-search_btn {
    width : 30px;
    height : 30px;
  }
  .header-search_btn .icon {
    font-size : 1.4rem;
  }
  .header-search_btn:hover {
    cursor : pointer;
  }
}

input[type='submit'] {
  font-size : 1.5rem;
  width : 45px;
  height : 45px;
  letter-spacing : 1px; 
  color : #fff;
  background-color : #000065;
}
@media print, screen and (min-width: 768px) {
  input[type='submit'] {
    font-size : 1rem; 
    width : 38px;
    height : 30px;
  }
}

.header-language {
  margin-top : 35px;
  margin-bottom : 35px; 
  text-align : center;
}
.header-language li {
  position : relative; 
  display : inline-block;
}
.header-language li:not(:first-child):before {
  position : absolute;
  top : -1px;
  left : 0; 
  display : block;
  content : '|';
}
.header-language li a {
  padding-right : 6px;
  padding-left : 14px;
  transition : all .3s ease; 
  text-decoration : none;
  color : #222;
}

@media print, screen and (min-width: 768px) {
  .header-language {
    position : absolute;
    top : -35px;
    left: 0;
    right: 0;
    width: 980px;
    margin: auto;
    text-align: right;
  }
  .header-language li a:hover {
    color : #2984a2;
  }
}

.header-close {
  font-family : 'RobotoSlab';
  font-size : 1.6rem;
  text-align : center;
  color : #000065; 
  border-top : 1px solid #000065;
}
.header-close_text {
  padding-top : 14px;
  padding-bottom : 90px;
}
.header-close .header-cross {
  top : auto;
  left : -45px;
}

/* ----- Header Common ----- */
.header-cross {
  font-size : 0;
  position : relative;
  top : 12px; 
  display : block;
}
.header-cross span , .header-cross:before , .header-cross:after {
  position : absolute;
  left : 50%;
  display : inline-block;
  width : 30px;
  height : 4px;
  margin-left : -15px; 
  content : '';
  transition : transform .2s;
  background-color : #000065;
}
.header-cross span {
  top : 8px;
}
.header-cross:before {
  top : 0;
}
.header-cross:after {
  top : 16px;
}
.is-open .header-cross {
  -ms-transform : scale(.9, .9);
      transform : scale(.9, .9);
}
.is-open .header-cross span {
  display : none;
}
.is-open .header-cross:before {
  top : 9px; 
  -ms-transform : rotate(45deg);
      transform : rotate(45deg);
}
.is-open .header-cross:after {
  top : 9px; 
  -ms-transform : rotate(-45deg);
      transform : rotate(-45deg);
}

/* Footer
---------------------------------------*/
.footer-primary {
  background : url(../images/common/footer-bg.png) no-repeat center top #000065;
  background-size : 100% auto;
}

.footerContact {
  font-size : 1.6rem;
  padding : 30px 10px 40px; 
  text-align : center;
  color : #fff;
}

.footerContact_title {
  font-size : 2.8rem;
  font-weight : bold;
  margin-bottom : 30px;
}
.footerContact_title span {
  font-family : 'RobotoSlab';
  font-size : 1.2rem;
  font-weight : normal;
  display : block;
  margin-top : 5px;
}

.footerContact-btn {
  margin-top : 30px;
}
.footerContact-btn > p {
  margin-top : 10px;
}

@media print, screen and (min-width: 768px) {
  .footerContact {
    max-width : 980px;
    margin-right : auto;
    margin-left : auto;
    padding : 70px 0 80px;
  }
  .footerContact-btn {
    display : -ms-flexbox;
    display : flex;
    margin-top : 40px; 

    -ms-flex-pack : justify;
    justify-content : space-between;
  }
  .footerContact-btn > p {
    width : 49%;
    width : calc( 50% - 10px);
    margin-top : 0;
  }
}

.footer-secondary {
  padding : 5px 20px 15px 20px;
}
.footer-secondary small {
  font-family : 'Helvetica Neue';
  font-size : 1.2rem;
  line-height : 1.4;
  display : block;
  margin : 30px -5px 0; 
  text-align : center;
  color : #999;
}

@media print, screen and (min-width: 768px) {
  .footer-secondary {
    overflow : hidden;
    max-width : 980px;
    margin-right : auto; 
    margin-left : auto;
    padding : 20px 0;
  }
  .footer-secondary small {
    float : left;
    width : 720px;
    margin : 10px 0 0; 
    text-align : left;
  }
  .footer-secondary_bnr {
    float : right; 
    width : 217px;
  }
}

.footer-secondary_heading {
  display : -ms-flexbox;
  display : flex;

  -ms-flex-align : center;
  align-items : center;
  -ms-flex-pack : justify;
  justify-content : space-between;
}
@media print, screen and (min-width: 768px) {
  .footer-secondary_heading {
    display : block;
  }
}

.footerSitemap {
  display : -ms-flexbox;
  display : flex;
  padding-top : 35px;
  padding-bottom : 35px; 

  -ms-flex-wrap : wrap;
      flex-wrap : wrap;
}
.footerSitemap li {
  margin-right : 20px;
}
.footerSitemap a {
  text-decoration : none;
  color : #000;
}

@media print, screen and (min-width: 768px) {
  .footerSitemap {
    float : left;
    width : 720px;
    padding-top : 0;
    padding-bottom : 10px; 
    border-bottom : 1px solid #f2f2f7;
  }
  .footerSitemap a {
    transition : all .3s ease;
  }
  .footerSitemap a:hover {
    color : #2984a2;
  }
}

.pagetop {
  position : relative;
  z-index : 1000;
  overflow : hidden; 
  width : 60px;
  height : 60px;
  -ms-transform : rotate(45deg);
      transform : rotate(45deg);

  -ms-flex : 0 0 auto;
      flex : 0 0 auto;
}
.pagetop.is-fixed {
  position : fixed;
  right : 20px;
  bottom : 15px;
}
.pagetop a {
  position : absolute;
  top : 50%;
  left : 50%;
  display : block;
  width : 85px;
  height : 85px;
  -ms-transform : translate(-50%, -50%) rotate(-45deg);
      transform : translate(-50%, -50%) rotate(-45deg); 
  color : #fff;
  background-color : #000065;
}
.pagetop a .icon {
  font-size : 2rem;
  position : absolute;
  z-index : 1010; 
  top : 15px;
  left : 50%;
  margin-left : -1rem;
  -ms-transform : rotate(-90deg);
      transform : rotate(-90deg);
  color : #fff;
}
.pagetop a span {
  font-family : 'RobotoSlab';
  font-size : 1.2rem;
  font-weight : bold;
  position : absolute;
  z-index : 1010; 
  bottom : 25px;
  display : block;
  width : 100%;
  text-align : center;
}

@media print, screen and (min-width: 768px) {
  .pagetop {
    position : fixed;
    right : 25px;
    bottom : 18px; 
    border : 1px solid #000065;
  }
  .pagetop a:before {
    position : absolute;
    top : 85px;
    display : block;
    width : 85px;
    height : 85px;
    content : '';
    transition : all .3s ease; 
    background-color : #fff;
  }
  .pagetop a:hover {
    color : #000065;
  }
  .pagetop a:hover .icon {
    color : #000065;
  }
  .pagetop a:hover:before {
    top : 0;
  }
}

/*========================================*/
/*  Utility
/*========================================*/
.u-clear {
  clear : both;
}

.u-cf:before , .u-cf:after {
  display : table; 
  content : ' ';
}

.u-cf:after {
  clear : both;
}

.u-cf {
  *zoom : 1;
}

img.u-img-center {
  display : block;
  margin-right : auto; 
  margin-left : auto;
}

img.u-img-bd {
  border : 1px solid #ccc;
}

.u-notes , .u-notes-text {
  font-size : 1.2rem;
  line-height : 1.4;
}

.u-notes {
  position : relative; 
  padding-left : 1.5rem;
}
.u-notes:before {
  position : absolute;
  left : 0; 
  content : '※';
}

.u-quote , .u-quote-text {
  font-size : 1.2rem;
  line-height : 1.4;
  color : #666;
}

.u-quote {
  position : relative; 
  padding-left : 1.5rem;
}
.u-quote:before {
  position : absolute;
  left : 0; 
  content : '※';
}

.u-list > li:not(:last-child) {
  margin-bottom : 12px;
}

.u-list-disc > li {
  position : relative;
  padding-left : 10px;
}
.u-list-disc > li:before {
  position : absolute;
  top : 10px;
  left : 0; 
  display : inline-block;
  width : 4px;
  height : 4px;
  content : '';
  border-radius : 50%;
  background : #222;
}
.u-list-disc > li:not(:last-child) {
  margin-bottom : 12px;
}

.u-list-number {
  counter-reset : my-counter;
}
.u-list-number > li {
  position : relative;
  padding-left : 20px;
}
.u-list-number > li:not(:last-child) {
  margin-bottom : 12px;
}
.u-list-number > li:before {
  line-height : 15px;
  position : absolute;
  top : 5px;
  left : 0; 
  display : inline-block;
  width : 22px;
  height : 15px;
  content : counter(my-counter) '）';
  counter-increment : my-counter;
}

.u-list-asterisk > li {
  position : relative;
  padding-left : 20px;
}
.u-list-asterisk > li:before {
  position : absolute;
  top : 0;
  left : 0; 
  display : inline-block;
  content : '※';
}
.u-list-asterisk > li:not(:last-child) {
  margin-bottom : 12px;
}

.u-flame {
  padding : 20px; 
  background-color : #fff;
}
@media print, screen and (min-width: 768px) {
  .u-flame {
    padding : 40px;
  }
}

.u-flame-bg {
  padding : 20px; 
  background-color : #f2f2f7;
}
@media print, screen and (min-width: 768px) {
  .u-flame-bg {
    padding : 24px;
  }
}

.u-flame-bd {
  padding : 18px; 
  border : 4px solid #e4e4ed;
}
@media print, screen and (min-width: 768px) {
  .u-flame-bd {
    padding : 20px;
  }
}

.u-flame-hr {
  height : 2px;
  margin : 0 -20px; 
  border : none;
  background-color : #e4e4ed;
}
@media print, screen and (min-width: 768px) {
  .u-flame-hr {
    margin-right : -40px; 
    margin-left : -40px;
  }
}

.label-list {
  display : -ms-flexbox;
  display : flex;

  -ms-flex-wrap : wrap;
      flex-wrap : wrap;
}
.label-list li {
  font-size : 1.2rem;
  font-weight : bold;
  line-height : 1.2;
  min-width : 80px;
  margin-right : 8px;
  margin-bottom : 8px; 
  padding : 3px 16px;
  text-align : center;
  color : #fff;
  background-color : #2984a2;
}

.label_item {
  font-size : 1.2rem;
  font-weight : bold;
  line-height : 1.2;
  display : inline-block;
  padding : 6px 24px; 
  text-align : center;
  color : #fff;
  background-color : #2984a2;
}

.labelFeature {
  font-size : 1.2rem;
  line-height : 1.2;
  display : -ms-flexbox;
  display : flex;
  color : #222; 
  background-color : #f2f2f7;
}
.labelFeature_title {
  font-size : 1rem;
  display : -ms-flexbox;
  display : flex;
  width : 24px;
  padding-right : 5px; 
  padding-left : 5px;
  text-align : center;
  background-color : #e4e4ed;

  -ms-flex : 0 0 auto;
      flex : 0 0 auto;
}
.labelFeature_title > span {
  display : -ms-flexbox;
  display : flex;

  -ms-flex-align : center;
  align-items : center;
}
.labelFeature_body {
  padding : 10px 12px;
}
.labelFeature_body > span:not(:last-child):after {
  margin-left : 3px; 
  content : '/';
}

.u-movie {
  position : relative;
  width : 100%;
  padding-top : 56.25%;
}
.u-movie iframe {
  position : absolute;
  top : 0;
  right : 0;
  width : 100%;
  height : 100%;
}

.u-hidden {
  display : none;
}

@media screen and (max-width: 767px) {
  .u-hidden-sp {
    display : none;
  }
}

@media print, screen and (min-width: 768px) {
  .u-hidden-pc {
    display : none;
  }
}

.u-bg-base {
  background-color : #f2f2f7;
}

.u-bg-gray {
  background-color : #f7f7f7;
}

.u-ta-left {
  text-align : left;
}

.u-ta-center {
  text-align : center;
}

.u-ta-right {
  text-align : right;
}

@media print, screen and (min-width: 768px) {
  .u-ta-right-pc {
    text-align : right;
  }
}

.u-t-bold {
  font-weight : bold;
}

.u-t-supText {
  font-size : 75.5%;
  font-weight : normal;
  position : relative;
  top : -.1em; 
  vertical-align : top;
}

.u-tc-basefont {
  color : #222 !important;
}

.u-tc-main {
  color : #000065 !important;
}

.u-tc-sub {
  color : #2984a2 !important;
}

.u-tc-red {
  color : #a22939 !important;
}

.u-ts-normal {
  font-size : 1.4rem !important;
}

.u-ts-md , .u-ts-md--w {
  font-size : 114%;
}

.u-ts-md--w {
  font-weight : bold;
}

.u-mt-0 {
  margin-top : 0 !important;
}

.u-mt-5 {
  margin-top : 5px !important;
}

.u-mt-10 {
  margin-top : 10px !important;
}

.u-mt-15 {
  margin-top : 15px !important;
}

.u-mt-20 {
  margin-top : 20px !important;
}

.u-mt-25 {
  margin-top : 25px !important;
}

.u-mt-30 {
  margin-top : 30px !important;
}

.u-mt-35 {
  margin-top : 35px !important;
}

.u-mt-40 {
  margin-top : 40px !important;
}

.u-mt-45 {
  margin-top : 45px !important;
}

.u-mt-50 {
  margin-top : 50px !important;
}

.u-mt-55 {
  margin-top : 55px !important;
}

.u-mt-60 {
  margin-top : 60px !important;
}

.u-mt-65 {
  margin-top : 65px !important;
}

.u-mt-70 {
  margin-top : 70px !important;
}

.u-mt-75 {
  margin-top : 75px !important;
}

.u-mt-80 {
  margin-top : 80px !important;
}

.u-mt-85 {
  margin-top : 85px !important;
}

.u-mt-90 {
  margin-top : 90px !important;
}

.u-mt-95 {
  margin-top : 95px !important;
}

.u-mt-100 {
  margin-top : 100px !important;
}

.u-mb-0 {
  margin-bottom : 0 !important;
}

.u-mb-5 {
  margin-bottom : 5px !important;
}

.u-mb-10 {
  margin-bottom : 10px !important;
}

.u-mb-15 {
  margin-bottom : 15px !important;
}

.u-mb-20 {
  margin-bottom : 20px !important;
}

.u-mb-25 {
  margin-bottom : 25px !important;
}

.u-mb-30 {
  margin-bottom : 30px !important;
}

.u-mb-35 {
  margin-bottom : 35px !important;
}

.u-mb-40 {
  margin-bottom : 40px !important;
}

.u-mb-45 {
  margin-bottom : 45px !important;
}

.u-mb-50 {
  margin-bottom : 50px !important;
}

.u-mb-55 {
  margin-bottom : 55px !important;
}

.u-mb-60 {
  margin-bottom : 60px !important;
}

.u-mb-65 {
  margin-bottom : 65px !important;
}

.u-mb-70 {
  margin-bottom : 70px !important;
}

.u-mb-75 {
  margin-bottom : 75px !important;
}

.u-mb-80 {
  margin-bottom : 80px !important;
}

.u-mb-85 {
  margin-bottom : 85px !important;
}

.u-mb-90 {
  margin-bottom : 90px !important;
}

.u-mb-95 {
  margin-bottom : 95px !important;
}

.u-mb-100 {
  margin-bottom : 100px !important;
}

.u-pt-0 {
  padding-top : 0 !important;
}

.u-pt-5 {
  padding-top : 5px !important;
}

.u-pt-10 {
  padding-top : 10px !important;
}

.u-pt-15 {
  padding-top : 15px !important;
}

.u-pt-20 {
  padding-top : 20px !important;
}

.u-pt-25 {
  padding-top : 25px !important;
}

.u-pt-30 {
  padding-top : 30px !important;
}

.u-pt-35 {
  padding-top : 35px !important;
}

.u-pt-40 {
  padding-top : 40px !important;
}

.u-pt-45 {
  padding-top : 45px !important;
}

.u-pt-50 {
  padding-top : 50px !important;
}

.u-pt-55 {
  padding-top : 55px !important;
}

.u-pt-60 {
  padding-top : 60px !important;
}

.u-pt-65 {
  padding-top : 65px !important;
}

.u-pt-70 {
  padding-top : 70px !important;
}

.u-pt-75 {
  padding-top : 75px !important;
}

.u-pt-80 {
  padding-top : 80px !important;
}

.u-pt-85 {
  padding-top : 85px !important;
}

.u-pt-90 {
  padding-top : 90px !important;
}

.u-pt-95 {
  padding-top : 95px !important;
}

.u-pt-100 {
  padding-top : 100px !important;
}

.u-pb-0 {
  padding-bottom : 0 !important;
}

.u-pb-5 {
  padding-bottom : 5px !important;
}

.u-pb-10 {
  padding-bottom : 10px !important;
}

.u-pb-15 {
  padding-bottom : 15px !important;
}

.u-pb-20 {
  padding-bottom : 20px !important;
}

.u-pb-25 {
  padding-bottom : 25px !important;
}

.u-pb-30 {
  padding-bottom : 30px !important;
}

.u-pb-35 {
  padding-bottom : 35px !important;
}

.u-pb-40 {
  padding-bottom : 40px !important;
}

.u-pb-45 {
  padding-bottom : 45px !important;
}

.u-pb-50 {
  padding-bottom : 50px !important;
}

.u-pb-55 {
  padding-bottom : 55px !important;
}

.u-pb-60 {
  padding-bottom : 60px !important;
}

.u-pb-65 {
  padding-bottom : 65px !important;
}

.u-pb-70 {
  padding-bottom : 70px !important;
}

.u-pb-75 {
  padding-bottom : 75px !important;
}

.u-pb-80 {
  padding-bottom : 80px !important;
}

.u-pb-85 {
  padding-bottom : 85px !important;
}

.u-pb-90 {
  padding-bottom : 90px !important;
}

.u-pb-95 {
  padding-bottom : 95px !important;
}

.u-pb-100 {
  padding-bottom : 100px !important;
}

@media screen and (max-width: 767px) {
  .u-mt-0--sp {
    margin-top : 0 !important;
  }
  .u-mt-5--sp {
    margin-top : 5px !important;
  }
  .u-mt-10--sp {
    margin-top : 10px !important;
  }
  .u-mt-15--sp {
    margin-top : 15px !important;
  }
  .u-mt-20--sp {
    margin-top : 20px !important;
  }
  .u-mt-25--sp {
    margin-top : 25px !important;
  }
  .u-mt-30--sp {
    margin-top : 30px !important;
  }
  .u-mt-35--sp {
    margin-top : 35px !important;
  }
  .u-mt-40--sp {
    margin-top : 40px !important;
  }
  .u-mt-45--sp {
    margin-top : 45px !important;
  }
  .u-mt-50--sp {
    margin-top : 50px !important;
  }
  .u-mt-55--sp {
    margin-top : 55px !important;
  }
  .u-mt-60--sp {
    margin-top : 60px !important;
  }
  .u-mt-65--sp {
    margin-top : 65px !important;
  }
  .u-mt-70--sp {
    margin-top : 70px !important;
  }
  .u-mt-75--sp {
    margin-top : 75px !important;
  }
  .u-mt-80--sp {
    margin-top : 80px !important;
  }
  .u-mt-85--sp {
    margin-top : 85px !important;
  }
  .u-mt-90--sp {
    margin-top : 90px !important;
  }
  .u-mt-95--sp {
    margin-top : 95px !important;
  }
  .u-mt-100--sp {
    margin-top : 100px !important;
  }
  .u-mb-0--sp {
    margin-bottom : 0 !important;
  }
  .u-mb-5--sp {
    margin-bottom : 5px !important;
  }
  .u-mb-10--sp {
    margin-bottom : 10px !important;
  }
  .u-mb-15--sp {
    margin-bottom : 15px !important;
  }
  .u-mb-20--sp {
    margin-bottom : 20px !important;
  }
  .u-mb-25--sp {
    margin-bottom : 25px !important;
  }
  .u-mb-30--sp {
    margin-bottom : 30px !important;
  }
  .u-mb-35--sp {
    margin-bottom : 35px !important;
  }
  .u-mb-40--sp {
    margin-bottom : 40px !important;
  }
  .u-mb-45--sp {
    margin-bottom : 45px !important;
  }
  .u-mb-50--sp {
    margin-bottom : 50px !important;
  }
  .u-mb-55--sp {
    margin-bottom : 55px !important;
  }
  .u-mb-60--sp {
    margin-bottom : 60px !important;
  }
  .u-mb-65--sp {
    margin-bottom : 65px !important;
  }
  .u-mb-70--sp {
    margin-bottom : 70px !important;
  }
  .u-mb-75--sp {
    margin-bottom : 75px !important;
  }
  .u-mb-80--sp {
    margin-bottom : 80px !important;
  }
  .u-mb-85--sp {
    margin-bottom : 85px !important;
  }
  .u-mb-90--sp {
    margin-bottom : 90px !important;
  }
  .u-mb-95--sp {
    margin-bottom : 95px !important;
  }
  .u-mb-100--sp {
    margin-bottom : 100px !important;
  }
  .u-pt-0--sp {
    padding-top : 0 !important;
  }
  .u-pt-5--sp {
    padding-top : 5px !important;
  }
  .u-pt-10--sp {
    padding-top : 10px !important;
  }
  .u-pt-15--sp {
    padding-top : 15px !important;
  }
  .u-pt-20--sp {
    padding-top : 20px !important;
  }
  .u-pt-25--sp {
    padding-top : 25px !important;
  }
  .u-pt-30--sp {
    padding-top : 30px !important;
  }
  .u-pt-35--sp {
    padding-top : 35px !important;
  }
  .u-pt-40--sp {
    padding-top : 40px !important;
  }
  .u-pt-45--sp {
    padding-top : 45px !important;
  }
  .u-pt-50--sp {
    padding-top : 50px !important;
  }
  .u-pt-55--sp {
    padding-top : 55px !important;
  }
  .u-pt-60--sp {
    padding-top : 60px !important;
  }
  .u-pt-65--sp {
    padding-top : 65px !important;
  }
  .u-pt-70--sp {
    padding-top : 70px !important;
  }
  .u-pt-75--sp {
    padding-top : 75px !important;
  }
  .u-pt-80--sp {
    padding-top : 80px !important;
  }
  .u-pt-85--sp {
    padding-top : 85px !important;
  }
  .u-pt-90--sp {
    padding-top : 90px !important;
  }
  .u-pt-95--sp {
    padding-top : 95px !important;
  }
  .u-pt-100--sp {
    padding-top : 100px !important;
  }
  .u-pb-0--sp {
    padding-bottom : 0 !important;
  }
  .u-pb-5--sp {
    padding-bottom : 5px !important;
  }
  .u-pb-10--sp {
    padding-bottom : 10px !important;
  }
  .u-pb-15--sp {
    padding-bottom : 15px !important;
  }
  .u-pb-20--sp {
    padding-bottom : 20px !important;
  }
  .u-pb-25--sp {
    padding-bottom : 25px !important;
  }
  .u-pb-30--sp {
    padding-bottom : 30px !important;
  }
  .u-pb-35--sp {
    padding-bottom : 35px !important;
  }
  .u-pb-40--sp {
    padding-bottom : 40px !important;
  }
  .u-pb-45--sp {
    padding-bottom : 45px !important;
  }
  .u-pb-50--sp {
    padding-bottom : 50px !important;
  }
  .u-pb-55--sp {
    padding-bottom : 55px !important;
  }
  .u-pb-60--sp {
    padding-bottom : 60px !important;
  }
  .u-pb-65--sp {
    padding-bottom : 65px !important;
  }
  .u-pb-70--sp {
    padding-bottom : 70px !important;
  }
  .u-pb-75--sp {
    padding-bottom : 75px !important;
  }
  .u-pb-80--sp {
    padding-bottom : 80px !important;
  }
  .u-pb-85--sp {
    padding-bottom : 85px !important;
  }
  .u-pb-90--sp {
    padding-bottom : 90px !important;
  }
  .u-pb-95--sp {
    padding-bottom : 95px !important;
  }
  .u-pb-100--sp {
    padding-bottom : 100px !important;
  }
}

@media print, screen and (min-width: 768px) {
  .u-mt-0--pc {
    margin-top : 0 !important;
  }
  .u-mt-5--pc {
    margin-top : 5px !important;
  }
  .u-mt-10--pc {
    margin-top : 10px !important;
  }
  .u-mt-15--pc {
    margin-top : 15px !important;
  }
  .u-mt-20--pc {
    margin-top : 20px !important;
  }
  .u-mt-25--pc {
    margin-top : 25px !important;
  }
  .u-mt-30--pc {
    margin-top : 30px !important;
  }
  .u-mt-35--pc {
    margin-top : 35px !important;
  }
  .u-mt-40--pc {
    margin-top : 40px !important;
  }
  .u-mt-45--pc {
    margin-top : 45px !important;
  }
  .u-mt-50--pc {
    margin-top : 50px !important;
  }
  .u-mt-55--pc {
    margin-top : 55px !important;
  }
  .u-mt-60--pc {
    margin-top : 60px !important;
  }
  .u-mt-65--pc {
    margin-top : 65px !important;
  }
  .u-mt-70--pc {
    margin-top : 70px !important;
  }
  .u-mt-75--pc {
    margin-top : 75px !important;
  }
  .u-mt-80--pc {
    margin-top : 80px !important;
  }
  .u-mt-85--pc {
    margin-top : 85px !important;
  }
  .u-mt-90--pc {
    margin-top : 90px !important;
  }
  .u-mt-95--pc {
    margin-top : 95px !important;
  }
  .u-mt-100--pc {
    margin-top : 100px !important;
  }
  .u-mb-0--pc {
    margin-bottom : 0 !important;
  }
  .u-mb-5--pc {
    margin-bottom : 5px !important;
  }
  .u-mb-10--pc {
    margin-bottom : 10px !important;
  }
  .u-mb-15--pc {
    margin-bottom : 15px !important;
  }
  .u-mb-20--pc {
    margin-bottom : 20px !important;
  }
  .u-mb-25--pc {
    margin-bottom : 25px !important;
  }
  .u-mb-30--pc {
    margin-bottom : 30px !important;
  }
  .u-mb-35--pc {
    margin-bottom : 35px !important;
  }
  .u-mb-40--pc {
    margin-bottom : 40px !important;
  }
  .u-mb-45--pc {
    margin-bottom : 45px !important;
  }
  .u-mb-50--pc {
    margin-bottom : 50px !important;
  }
  .u-mb-55--pc {
    margin-bottom : 55px !important;
  }
  .u-mb-60--pc {
    margin-bottom : 60px !important;
  }
  .u-mb-65--pc {
    margin-bottom : 65px !important;
  }
  .u-mb-70--pc {
    margin-bottom : 70px !important;
  }
  .u-mb-75--pc {
    margin-bottom : 75px !important;
  }
  .u-mb-80--pc {
    margin-bottom : 80px !important;
  }
  .u-mb-85--pc {
    margin-bottom : 85px !important;
  }
  .u-mb-90--pc {
    margin-bottom : 90px !important;
  }
  .u-mb-95--pc {
    margin-bottom : 95px !important;
  }
  .u-mb-100--pc {
    margin-bottom : 100px !important;
  }
  .u-pt-0--pc {
    padding-top : 0 !important;
  }
  .u-pt-5--pc {
    padding-top : 5px !important;
  }
  .u-pt-10--pc {
    padding-top : 10px !important;
  }
  .u-pt-15--pc {
    padding-top : 15px !important;
  }
  .u-pt-20--pc {
    padding-top : 20px !important;
  }
  .u-pt-25--pc {
    padding-top : 25px !important;
  }
  .u-pt-30--pc {
    padding-top : 30px !important;
  }
  .u-pt-35--pc {
    padding-top : 35px !important;
  }
  .u-pt-40--pc {
    padding-top : 40px !important;
  }
  .u-pt-45--pc {
    padding-top : 45px !important;
  }
  .u-pt-50--pc {
    padding-top : 50px !important;
  }
  .u-pt-55--pc {
    padding-top : 55px !important;
  }
  .u-pt-60--pc {
    padding-top : 60px !important;
  }
  .u-pt-65--pc {
    padding-top : 65px !important;
  }
  .u-pt-70--pc {
    padding-top : 70px !important;
  }
  .u-pt-75--pc {
    padding-top : 75px !important;
  }
  .u-pt-80--pc {
    padding-top : 80px !important;
  }
  .u-pt-85--pc {
    padding-top : 85px !important;
  }
  .u-pt-90--pc {
    padding-top : 90px !important;
  }
  .u-pt-95--pc {
    padding-top : 95px !important;
  }
  .u-pt-100--pc {
    padding-top : 100px !important;
  }
  .u-pb-0--pc {
    padding-bottom : 0 !important;
  }
  .u-pb-5--pc {
    padding-bottom : 5px !important;
  }
  .u-pb-10--pc {
    padding-bottom : 10px !important;
  }
  .u-pb-15--pc {
    padding-bottom : 15px !important;
  }
  .u-pb-20--pc {
    padding-bottom : 20px !important;
  }
  .u-pb-25--pc {
    padding-bottom : 25px !important;
  }
  .u-pb-30--pc {
    padding-bottom : 30px !important;
  }
  .u-pb-35--pc {
    padding-bottom : 35px !important;
  }
  .u-pb-40--pc {
    padding-bottom : 40px !important;
  }
  .u-pb-45--pc {
    padding-bottom : 45px !important;
  }
  .u-pb-50--pc {
    padding-bottom : 50px !important;
  }
  .u-pb-55--pc {
    padding-bottom : 55px !important;
  }
  .u-pb-60--pc {
    padding-bottom : 60px !important;
  }
  .u-pb-65--pc {
    padding-bottom : 65px !important;
  }
  .u-pb-70--pc {
    padding-bottom : 70px !important;
  }
  .u-pb-75--pc {
    padding-bottom : 75px !important;
  }
  .u-pb-80--pc {
    padding-bottom : 80px !important;
  }
  .u-pb-85--pc {
    padding-bottom : 85px !important;
  }
  .u-pb-90--pc {
    padding-bottom : 90px !important;
  }
  .u-pb-95--pc {
    padding-bottom : 95px !important;
  }
  .u-pb-100--pc {
    padding-bottom : 100px !important;
  }
}

.u-mb-72 {
  margin-bottom : 72px;
}

.u-pb-72 {
  padding-bottom : 72px;
}

.u-mb-32 {
  margin-bottom : 32px;
}

.u-pb-32 {
  padding-bottom : 32px;
}

.u-mb-16 {
  margin-bottom : 16px;
}

.u-pb-16 {
  padding-bottom : 16px;
}

.u-mb-8 {
  margin-bottom : 8px;
}

.u-pb-8 {
  padding-bottom : 8px;
}

.u-mr-10 {
  margin-right : 10px;
}

.u-fz-l {
  font-size: 114%;
}

/*========================================*/
/*  Module
/*========================================*/
.breadcrumbs {
  overflow-x : hidden;
  overflow-y : hidden;
  height : 40px;
  white-space : nowrap; 
  background-color : #f2f2f7;
}
.breadcrumbs ul {
  display : -ms-flexbox;
  display : flex;
  overflow-x : scroll;
  padding-bottom : 15px; 
  padding-left : 10px;
}
.breadcrumbs ul li {
  font-size : 1.2rem;
  line-height : 40px;
  position : relative; 

  -ms-flex : 0 0 auto;
      flex : 0 0 auto;
}
.breadcrumbs ul li:not(:last-child):after {
  line-height : 1;
  position : absolute;
  top : 50%;
  right : 0;
  display : inline-block;
  margin-top : -5px; 
  padding-right : 6px;
  padding-left : 6px;
  content : '＞';
}
.breadcrumbs ul li:last-child {
  padding-right : 10px;
}
.breadcrumbs ul li a {
  margin-right : 24px;
}
@media print, screen and (min-width: 768px) {
  .breadcrumbs {
    background-color : #fff;
  }
  .breadcrumbs ul {
    width : 960px;
    margin-right : auto; 
    margin-left : auto;
    padding-bottom : 0;
    padding-left : 0;
  }
}

.heading {
  padding-top : 40px;
  padding-bottom : 25px;
}

.ttl-xl {
  font-size : 2.8rem;
  font-weight : bold;
  padding-left : 12px; 
  border-left : 4px solid #000065;
}

.ttl-lg {
  font-size : 2.2rem;
  font-weight : bold;
  margin-bottom : 20px; 
  padding : 11px 12px;
  color : #fff;
  background-color : #000065;
}

.ttl-md , .ttl-md-v2 {
  font-size : 2rem;
  font-weight : bold;
  color : #000065;
}

.ttl-md-v2 {
  line-height : 1.2;
  padding : 10px 12px 11px; 
  background-color : #f2f2f7;
}

.ttl-sm {
  font-size : 1.8rem;
  font-weight : bold;
  color : #000065;
}

.ttl-xs {
  font-size : 1.6rem;
  font-weight : bold;
  color : #000065;
}

.btnBlock {
  display : -ms-flexbox;
  display : flex;
}

.btn {
  font-size : 1.6rem;
  line-height : 1.2;
  position : relative; 
  display : -ms-flexbox;
  display : flex;
  width : 100%;
  min-height : 50px;
  padding : 2px 40px 2px 37px;
  text-align : center;
  text-decoration : none;
  color : #000065;
  border : 1px solid #000065;
  background-color : #fff;

  -ms-flex-align : center;
  align-items : center;
}
.btn > span {
  display : block;
  width : 100%;
}
.btn .icon {
  font-size : 1.6rem;
  position : absolute;
  top : 50%;
  right : 14px;
  margin-top : -.8rem;
}
.btn .icon.icon--left {
  right : auto;
  left : 12px;
}
.btn.btn--sm {
  font-size : 1.4rem;
}
.btn.btn--lg {
  font-size : 2rem;
  font-weight : bold;
  min-height : 70px;
}

.btn.is-current {
  color : #fff; 
  background-color : #000065;
}
.btn.is-current .icon {
  color : #fff;
}

.btn.btn_bg {
  font-weight : bold;
  color : #fff; 
  background-color : #000065;
}
.btn.btn_bg .icon {
  color : #fff;
}

.btn.btn--red {
  color : #fff; 
  border : 1px solid #a22939;
  background-color : #a22939;
}
.btn.btn--red .icon {
  color : #fff;
}

.btn--ocher {
  color : #fff; 
  border : 1px solid #bf8d30;
  background-color : #bf8d30;
}
.btn--ocher .icon {
  color : #fff;
}

.btn.btn_nav {
  min-height : 70px;
  padding-right : 35px;
  padding-left : 70px; 
  text-align : left;
  color : #222;
  border : none;
  background-color : #fff;
}
.btn.btn_nav .icon {
  right : 10px;
}
.btn.btn_nav .icon.icon--left {
  font-size : 3.5rem;
  right : auto;
  left : 20px; 
  margin-top : -1.75rem;
}

.btn.btn_page .icon {
  -ms-transform : rotate(90deg);
      transform : rotate(90deg);
}

@media print, screen and (min-width: 768px) {
  .btn {
    max-width : 480px;
    margin-right : auto;
    margin-left : auto;
    transition : all .3s ease;
  }
  .btn--left {
    margin-right : auto;
    margin-left : 0;
  }
  .btn > span {
    position : relative;
    z-index : 10;
  }
  .btn .icon {
    font-size : 2rem;
    z-index : 10;
    margin-top : -1rem;
    transition : all .3s ease;
  }
  .btn .icon.icon-link {
    font-size : 1.6rem;
    margin-top : -.8rem;
  }
  .btn:before {
    position : absolute;
    z-index : 1;
    bottom : 0;
    left : 0;
    display : inline-block;
    width : 100%;
    height : 0;
    content : '';
    transition : all .3s ease; 
    background-color : #000065;
  }
  .btn:hover {
    opacity : 1;
    color : #fff;
  }
  .btn:hover .icon {
    color : #fff;
  }
  .btn:hover:before {
    height : 100%;
  }
  .btn.btn_bg:before {
    background-color : #fff;
  }
  .btn.btn_bg:hover {
    color : #000065;
  }
  .btn.btn_bg:hover .icon {
    color : #000065;
  }
  .btn.btn--red:before {
    background-color : #fff;
  }
  .btn.btn--red:hover {
    color : #a22939;
  }
  .btn.btn--red:hover .icon {
    color : #a22939;
  }
  .btn--ocher:before {
    background-color : #fff;
  }
  .btn--ocher:hover {
    color : #bf8d30;
  }
  .btn--ocher:hover .icon {
    color : #bf8d30;
  }
  .btn.btn_nav {
    padding-right : 45px;
  }
  .btn.btn_nav .icon {
    right : 20px;
  }
}

.btn--lg {
  font-size : 2rem;
  line-height : 1.2;
}

.btn--pink , .btn--orange , .btn--green {
  color : #fff; 
  border : none;
}
.btn--pink .icon , .btn--orange .icon , .btn--green .icon {
  color : #fff;
}

.btn--pink {
  border : 1px solid #f36164;
  background-color : #f36164;
}
.btn--pink.is-current {
  color : #f36164; 
  background-color : #fff;
}
.btn--pink.is-current .icon {
  color : #f36164;
}

.btn--orange {
  border : 1px solid #fa8559;
  background-color : #fa8559;
}
.btn--orange.is-current {
  color : #fa8559; 
  background-color : #fff;
}
.btn--orange.is-current .icon {
  color : #fa8559;
}

.btn--green {
  border : 1px solid #81cb49;
  background-color : #81cb49;
}
.btn--green.is-current {
  color : #81cb49; 
  background-color : #fff;
}
.btn--green.is-current .icon {
  color : #81cb49;
}

@media print, screen and (min-width: 768px) {
  .btn--pink:before , .btn--orange:before , .btn--green:before {
    background-color : #fff;
  }
  .btn.btn--pink:hover {
    color : #f36164;
  }
  .btn.btn--pink:hover .icon {
    color : #f36164;
  }
  .btn.btn--orange:hover {
    color : #fa8559;
  }
  .btn.btn--orange:hover .icon {
    color : #fa8559;
  }
  .btn.btn--green:hover {
    color : #81cb49;
  }
  .btn.btn--green:hover .icon {
    color : #81cb49;
  }
}

.btnList > li {
  display : -ms-flexbox;
  display : flex;
}
.btnList > li:not(:first-child) {
  margin-top : 8px;
}

@media print, screen and (min-width: 768px) {
  .btnList.is-3col , .btnList.is-4col {
    display : -ms-flexbox;
    display : flex;

    -ms-flex-wrap : wrap;
        flex-wrap : wrap;
  }
  .btnList.is-3col li {
    width : 33.333%;
  }
  .btnList.is-3col li:nth-child(-n+3) {
    margin-top : 0;
  }
  .btnList.is-3col li:not(:nth-child(3n)) {
    padding-right : 8px;
  }
  .btnList.is-4col li {
    width : 25%;
  }
  .btnList.is-4col li:nth-child(-n+4) {
    margin-top : 0;
  }
  .btnList.is-4col li:not(:nth-child(4n)) {
    padding-right : 8px;
  }
}

.btnNavList > li {
  display : -ms-flexbox;
  display : flex;
}
.btnNavList > li:not(:first-child) {
  margin-top : 1px;
}

.btnNavList.is-2col-sp {
  display : -ms-flexbox;
  display : flex;

  -ms-flex-wrap : wrap;
      flex-wrap : wrap;
}
.btnNavList.is-2col-sp li {
  width : 50%;
}
.btnNavList.is-2col-sp li:nth-child(-n+2) {
  margin-top : 0;
}
.btnNavList.is-2col-sp li:not(:nth-child(even)) {
  padding-right : 1px;
}

@media print, screen and (min-width: 768px) {
  .btnNavList {
    display : -ms-flexbox;
    display : flex;

    -ms-flex-wrap : wrap;
        flex-wrap : wrap;
  }
  .btnNavList li {
    width : 100%;
  }
  .btnNavList.is-2col li {
    width : 50%;
  }
  .btnNavList.is-2col li:nth-child(-n+2) {
    margin-top : 0;
  }
  .btnNavList.is-2col li:not(:nth-child(even)) {
    padding-right : 2px;
  }
  .btnNavList.is-3col li {
    width : 33.333%;
  }
  .btnNavList.is-3col li:nth-child(-n+3) {
    margin-top : 0;
  }
  .btnNavList.is-3col li:not(:nth-child(3n)) {
    padding-right : 2px;
  }
}

.btnFlame_text {
  font-size : 1.6rem;
  font-weight : bold;
  line-height : 1.4;
  margin-bottom : 20px; 
  color : #000065;
}

.btnFlame_btn {
  display : -ms-flexbox;
  display : flex;
}

@media print, screen and (min-width: 768px) {
  .btnFlame {
    display : -ms-flexbox;
    display : flex;

    -ms-flex-align : center;
    align-items : center;
  }
  .btnFlame_text , .btnFlame_btn {
    width : 50%;
  }
  .btnFlame_text {
    margin-right : 20px;
    margin-bottom : 0; 
    text-align : center;
  }
}

.table-cell-center {
  text-align : center;
  vertical-align : middle;
}

table .table-cell-white {
  background-color : #fff !important;
}

table .table-cell-bd--bottom {
  border-bottom : 1px solid #e7e7e7;
}

table .table-cell-bd--top {
  border-top : 1px solid #e7e7e7;
}

.tableSlide_text {
  font-size : 1.2rem;
  margin-bottom : 10px; 
  text-align : center;
  color : #666;
}
@media print, screen and (min-width: 768px) {
  .tableSlide_text {
    display : none;
  }
}

.tableSlide {
  overflow-x : scroll;
}
.tableSlide::-webkit-scrollbar {
  /*バーの太さ*/
  height : 8px;
}
.tableSlide::-webkit-scrollbar-track {
  margin-top : 2px; 
  /*バーの背景色*/
  border : 1px solid #e7e7e7;
  border-radius : 5px;
  background-color : #fafafa;
}
.tableSlide::-webkit-scrollbar-thumb {
  border-radius : 5px; 
  /*バーの色*/
  background-color : #c1c1c1;
}
.tableSlide table {
  width : 200%;
}

@media print, screen and (min-width: 768px) {
  .tableSlide {
    overflow-x : visible;
  }
  .tableSlide::-webkit-scrollbar {
    height : 0;
  }
  .tableSlide table {
    width : 100%;
  }
}

.table-v1 {
  border-bottom : 1px solid #dbdbdb;
}
.table-v1 th {
  font-size : 1.6rem;
  font-weight : bold;
  padding : 10px 15px;
  vertical-align : middle;
  white-space : nowrap; 
  border-top : 1px solid #e4e4ed;
  border-bottom : 1px solid #e4e4ed;
  background-color : #f2f2f7;
}
.table-v1 th:not(:first-child) {
  border-left : 1px solid #e4e4ed;
}
.table-v1 td {
  padding : 10px 15px;
}
.table-v1 td:not(:first-child) {
  border-left : 1px dashed #dbdbdb;
}
.table-v1 tr:nth-child(even) td {
  background-color : #f7f7f7;
}

.table-v1 .table-col-5 {
  width : 5%; 
  white-space : normal;
}

.table-v1 .table-col-10 {
  width : 10%; 
  white-space : normal;
}

.table-v1 .table-col-15 {
  width : 15%; 
  white-space : normal;
}

.table-v1 .table-col-20 {
  width : 20%; 
  white-space : normal;
}

.table-v1 .table-col-25 {
  width : 25%; 
  white-space : normal;
}

.table-v1 .table-col-30 {
  width : 30%; 
  white-space : normal;
}

.table-v1 .table-col-35 {
  width : 35%; 
  white-space : normal;
}

.table-v1 .table-col-40 {
  width : 40%; 
  white-space : normal;
}

.table-v1 .table-col-45 {
  width : 45%; 
  white-space : normal;
}

.table-v1 .table-col-50 {
  width : 50%; 
  white-space : normal;
}

.table-v1 .table-col-55 {
  width : 55%; 
  white-space : normal;
}

.table-v1 .table-col-60 {
  width : 60%; 
  white-space : normal;
}

.table-v1 .table-col-65 {
  width : 65%; 
  white-space : normal;
}

.table-v1 .table-col-70 {
  width : 70%; 
  white-space : normal;
}

.table-v1 .table-col-75 {
  width : 75%; 
  white-space : normal;
}

.table-v1 .table-col-80 {
  width : 80%; 
  white-space : normal;
}

.table-v1 .table-col-85 {
  width : 85%; 
  white-space : normal;
}

.table-v1 .table-col-90 {
  width : 90%; 
  white-space : normal;
}

.table-v1 .table-col-95 {
  width : 95%; 
  white-space : normal;
}

.table-v1 .table-col-100 {
  width : 100%; 
  white-space : normal;
}

.table-v1.table-3col th , .table-v1.table-3col td , .table-v1.table-3col tr td:not(:first-child) , .table-v1.table-4col th , .table-v1.table-4col td , .table-v1.table-4col tr td:not(:first-child) , .table-v1.table-5col th , .table-v1.table-5col td , .table-v1.table-5col tr td:not(:first-child) , .table-v1.table-6col th , .table-v1.table-6col td , .table-v1.table-6col tr td:not(:first-child) , .table-v1.table-7col th , .table-v1.table-7col td , .table-v1.table-7col tr td:not(:first-child) {
  width : auto;
  white-space : normal;
}

.table-v1.table-3col th {
  width : 33.333%;
}

.table-v1.table-4col th {
  width : 25%;
}

.table-v1.table-5col th {
  width : 20%;
}

.table-v1.table-6col th {
  width : 16.66%;
}

.table-v1.table-7col th {
  width : 14.28%;
}

.table-v2 {
  border-bottom : 1px solid #dbdbdb;
}
.table-v2 th {
  display : block;
  width : 24%;
  padding : 10px 15px; 
  text-align : right;
}
.table-v2 td {
  display : inline-block;
  width : 76%;
  padding-right : 15px;
  padding-bottom : 10px; 
  vertical-align : top;
}
.table-v2 td.table-v2_m {
  width : 24%;
  text-align : right;
}

@media print, screen and (min-width: 768px) {
  .table-v2 th {
    font-weight : normal;
    display : table-cell;
    width : 70px;
    padding-right : 10px;
    padding-left : 0;
  }
  .table-v2 td {
    display : table-cell;
    width : auto;
    padding : 10px 15px;
  }
  .table-v2 td.table-v2_m {
    width : 55px;
    padding-right : 20px;
    padding-left : 0; 
    border-right : 1px dashed #ccc;
  }
}

.table-v3 {
  border-bottom : 1px solid #dbdbdb;
}
.table-v3 tr:nth-child(odd) {
  background-color : #f7f7f7;
}
.table-v3 th , .table-v3 td {
  display : block;
}
.table-v3 th {
  position : relative; 
  padding : 15px;
  padding-bottom : 10px;
  text-align : left;
}
.table-v3 th:after {
  position : absolute;
  bottom : 0;
  left : 15px; 
  display : inline-block;
  width : calc( 100% - 30px);
  content : '';
  border-bottom : 1px dashed #ccc;
}
.table-v3 td {
  padding : 15px;
  padding-top : 10px;
}
.table-v3 td > p:not(:first-child) {
  margin-top : 10px;
}

@media print, screen and (min-width: 768px) {
  .table-v3 th , .table-v3 td {
    display : table-cell;
  }
  .table-v3 th {
    font-weight : normal;
    width : 160px;
    padding : 12px; 
    border-right : 1px dashed #ccc;
  }
  .table-v3 th:after {
    content : none;
  }
  .table-v3 td {
    padding : 12px 15px;
  }
}

.table-v3_title {
  font-weight : bold;
  position : relative; 
  padding-left : 30px;
}
.table-v3_title .icon {
  font-size : 2rem;
  position : absolute;
  left : 0;
}

.table-v3-mediaList li:not(first-child) {
  margin-top : 4px;
}

.table-v3-media {
  padding : 12px; 
  background-color : #f2f2f7;
}
.table-v3-media_body {
  margin-top : 15px;
}

@media print, screen and (min-width: 768px) {
  .table-v3-media {
    display : -ms-flexbox;
    display : flex;
  }
  .table-v3-media_img {
    width : 190px;
    margin-right : 20px; 

    -ms-flex : 0 0 auto;
        flex : 0 0 auto;
  }
  .table-v3-media_body {
    margin-top : 0; 

    -ms-flex : 1;
        flex : 1;
  }
}

.table-v4 {
  border : 1px solid #ddd;
}
.table-v4 th , .table-v4 td {
  width : 50%;
}
.table-v4 th {
  padding : 12px 15px; 
  background-color : #f7f7f7;
}
.table-v4 th:first-child {
  border-right : 1px solid #ddd;
}
.table-v4 tr:not(:first-child) {
  border-top : 1px solid #ddd;
}
.table-v4 td {
  padding : 20px;
}
.table-v4 td > p:not(:first-child) {
  margin-top : 10px;
}
.table-v4 td:first-child {
  border-right : 1px dashed #ddd;
}

.table-v5 {
  border : 1px solid #e4e4ed;
}
.table-v5 > li:not(:first-child) {
  border-top : 1px solid #e4e4ed;
}
.table-v5-body {
  padding : 16px;
}

.table-v5_title {
  font-size : 1.6rem;
  font-weight : bold;
  padding : 12px 15px; 
  background-color : #f2f2f7;

  border-botom : 1px solid #e4e4ed;
}

.table-v5_text {
  margin-top : 10px;
  margin-bottom : 10px;
}

@media print, screen and (min-width: 768px) {
  .table-v5 {
    display : -ms-flexbox;
    display : flex;
  }
  .table-v5 > li {
    width : 33.3333%;
  }
  .table-v5 > li:not(:first-child) {
    border-top : none;
    border-left : 1px solid #e4e4ed;
  }
}

.list-v1 > ul:not(:first-child) {
  margin-top : 20px;
}

.list-v1 > ul {
  position : relative;
}
.list-v1 > ul:after {
  position : absolute;
  bottom : 0;
  left : 0; 
  display : block;
  width : 100%;
  height : 1px;
  content : '';
  border-bottom : 1px solid #e4e4ed;
}

.list-v1 > ul > li {
  font-size : 1.2rem;
  padding : 10px 12px;
}
.list-v1 > ul > li:first-child {
  font-size : 1.4rem; 
  border-top : 1px solid #e4e4ed;
  background-color : #f2f2f7;
}

@media print, screen and (min-width: 768px) {
  .list-v1 {
    display : -ms-flexbox;
    display : flex;
    margin-right : -10px; 
    margin-left : -10px;

    -ms-flex-wrap : wrap;
        flex-wrap : wrap;
  }
  .list-v1 > ul {
    width : 50%;
    padding-right : 10px; 
    padding-left : 10px;
  }
  .list-v1 > ul:nth-child(-n+2) {
    margin-top : 0;
  }
  .list-v1 > ul:after {
    left : 10px; 
    width : calc(100% - 20px);
  }
}

.l-grid {
  display : -ms-flexbox;
  display : flex;

  -ms-flex-wrap : wrap;
      flex-wrap : wrap;
  -ms-flex-line-pack : stretch;
  align-content : stretch;
}

.col-sm-1 {
  width : 8.333%;
}

.col-sm-2 {
  width : 16.666%;
}

.col-sm-3 {
  width : 25%;
}

.col-sm-4 {
  width : 33.333%;
}

.col-sm-5 {
  width : 41.666%;
}

.col-sm-6 {
  width : 50%;
}

.col-sm-7 {
  width : 58.333%;
}

.col-sm-8 {
  width : 66.666%;
}

.col-sm-9 {
  width : 75%;
}

.col-sm-10 {
  width : 83.333%;
}

.col-sm-11 {
  width : 91.666%;
}

.col-sm-12 {
  width : 100%;
}

@media print, screen and (min-width: 768px) {
  .col-lg-1 {
    width : 8.333%;
  }
  .col-lg-2 {
    width : 16.666%;
  }
  .col-lg-3 {
    width : 25%;
  }
  .col-lg-4 {
    width : 33.333%;
  }
  .col-lg-5 {
    width : 41.666%;
  }
  .col-lg-6 {
    width : 50%;
  }
  .col-lg-7 {
    width : 58.333%;
  }
  .col-lg-8 {
    width : 66.666%;
  }
  .col-lg-9 {
    width : 75%;
  }
  .col-lg-10 {
    width : 83.333%;
  }
  .col-lg-11 {
    width : 91.666%;
  }
  .col-lg-12 {
    width : 100%;
  }
}

.l-grid {
  margin-right : -10px; 
  margin-left : -10px;
}
.l-grid .l-grid_col {
  display : -ms-flexbox;
  display : flex;
  padding-right : 10px; 
  padding-left : 10px;
}

@media print, screen and (min-width: 768px) {
  .acc_cnt .l-grid {
    margin-right : -20px; 
    margin-left : -20px;
  }
  .acc_cnt .l-grid .l-grid_col {
    padding-right : 20px; 
    padding-left : 20px;
  }
}

.grid-sm-1col > .l-grid_col:nth-child(n+2) , .grid-sm-2col > .l-grid_col:nth-child(n+3) , .grid-sm-3col > .l-grid_col:nth-child(n+4) , .grid-sm-4col > .l-grid_col:nth-child(n+5) , .grid-sm-5col > .l-grid_col:nth-child(n+6) , .grid-sm-6col > .l-grid_col:nth-child(n+7) , .grid-sm-7col > .l-grid_col:nth-child(n+8) , .grid-sm-8col > .l-grid_col:nth-child(n+9) , .grid-sm-9col > .l-grid_col:nth-child(n+10) , .grid-sm-10col > .l-grid_col:nth-child(n+11) , .grid-sm-11col > .l-grid_col:nth-child(n+12) , .grid-sm-12col > .l-grid_col:nth-child(n+13) {
  margin-top : 20px;
}

@media print, screen and (min-width: 768px) {
  .grid-lg-1col > .l-grid_col:nth-child(-n+2) , .grid-lg-2col > .l-grid_col:nth-child(-n+3) , .grid-lg-3col > .l-grid_col:nth-child(-n+4) , .grid-lg-4col > .l-grid_col:nth-child(-n+5) , .grid-lg-5col > .l-grid_col:nth-child(-n+6) , .grid-lg-6col > .l-grid_col:nth-child(-n+7) , .grid-lg-7col > .l-grid_col:nth-child(-n+8) , .grid-lg-8col > .l-grid_col:nth-child(-n+9) , .grid-lg-9col > .l-grid_col:nth-child(-n+10) , .grid-lg-10col > .l-grid_col:nth-child(-n+11) , .grid-lg-11col > .l-grid_col:nth-child(-n+12) , .grid-lg-12col > .l-grid_col:nth-child(-n+13) {
    margin-top : 0;
  }
  .grid-lg-1col > .l-grid_col:nth-child(n+2) , .grid-lg-2col > .l-grid_col:nth-child(n+3) , .grid-lg-3col > .l-grid_col:nth-child(n+4) , .grid-lg-4col > .l-grid_col:nth-child(n+5) , .grid-lg-5col > .l-grid_col:nth-child(n+6) , .grid-lg-6col > .l-grid_col:nth-child(n+7) , .grid-lg-7col > .l-grid_col:nth-child(n+8) , .grid-lg-8col > .l-grid_col:nth-child(n+9) , .grid-lg-9col > .l-grid_col:nth-child(n+10) , .grid-lg-10col > .l-grid_col:nth-child(n+11) , .grid-lg-11col > .l-grid_col:nth-child(n+12) , .grid-lg-12col > .l-grid_col:nth-child(n+13) {
    margin-top : 20px;
  }
}

.card {
  display : -ms-flexbox;
  display : flex;
      flex-direction : column;
  width : 100%;
  background-color : #fff; 

  -ms-flex-direction : column;
}
.card.cardLink {
  border : none;
}

.cardLink {
  text-decoration : none;
  color : #222;
}
.cardLink .card_title {
  position : relative;
  z-index : 10; 
  padding : 10px 50px 10px 20px;
  transition : all .3s ease;
}
.cardLink .card_title:before {
  font-family : 'icon' !important;
  font-weight : normal;
  font-style : normal;
  font-variant : normal;
  line-height : 1;
  position : absolute;
  top : 50%;
  right : 20px;
  display : inline-block;
  margin-top : -1rem; 
  content : '\EA0C';
  vertical-align : middle;
  text-transform : none;
  color : #000065;

  speak : none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing : antialiased;
  -moz-osx-font-smoothing : grayscale;
}
.cardLink .cardBody {
  position : relative;
  z-index : 10; 
  margin : 0 2px 2px;
  padding : 20px 18px;
  background-color : #fff;
}

@media print, screen and (min-width: 768px) {
  .cardLink {
    position : relative; 
    transition : all .3s ease;
  }
  .cardLink:before {
    position : absolute;
    z-index : 1;
    bottom : 0;
    left : 0;
    display : inline-block;
    width : 100%;
    height : 0;
    content : '';
    transition : all .3s ease; 
    background-color : #000065;
  }
  .cardLink:hover {
    opacity : 1;
    color : #222;
  }
  .cardLink:hover img {
    opacity : 1;
  }
  .cardLink:hover .card_title {
    color : #fff;
  }
  .cardLink:hover .card_title:after {
    background-color : #000065;
  }
  .cardLink:hover .card_title:before {
    color : #fff;
  }
  .cardLink:hover:before {
    height : 100%;
  }
}

.cardBody {
  min-height : 5%;
  padding : 20px;
}
.cardBody .labelFeature {
  margin-top : 12px;
}
.cardBody .btnList {
  margin-top : 16px;
}
.acc_cnt .cardBody {
  padding : 20px 0;
}

.card_title {
  font-size : 2rem;
  font-weight : bold;
  position : relative; 
  display : -ms-flexbox;
  display : flex;
  padding : 10px 20px;
  color : #000065;

  -ms-flex-align : center;
  align-items : center;
}
.card_title:after {
  position : absolute;
  bottom : 0;
  left : 20px; 
  display : block;
  width : 90%;
  width : calc( 100% - 40px);
  height : 2px;
  content : '';
  background-color : #e4e4ed;
}
.acc_cnt .card_title {
  padding : 0 0 10px;
}
.acc_cnt .card_title:after {
  left : 0; 
  width : 100%;
}

.cardMedia {
  display : -ms-flexbox;
  display : flex;
}
.cardMedia_img {
  max-width : 120px;
  margin-right : 14px; 

  -ms-flex : 0 0 auto;
      flex : 0 0 auto;
}
@media print, screen and (min-width: 768px) {
  .cardMedia_img--wide {
    max-width : 200px;
  }
}

.cardMediaBody {
  width : 100%;
  word-break : break-all;
}

.column {
  border : 2px solid #2984a2; 
  background-color : #fff;
}
@media print, screen and (min-width: 768px) {
  .column {
    max-width : 720px;
    margin-right : auto; 
    margin-left : auto;
  }
}

.columnTitle {
  font-size : 2rem;
  font-weight : bold;
  display : -ms-flexbox;
  display : flex;
  color : #2984a2; 
  border-bottom : 2px solid #2984a2;
}

.columnTitle_heading {
  font-size : 1.8rem;
  display : -ms-flexbox;
  display : flex;
  width : 110px;
  color : #fff; 
  background-color : #2984a2;

  -ms-flex : 0 0 auto;
      flex : 0 0 auto;
  -ms-flex-pack : center;
  justify-content : center;
}
.columnTitle_heading span {
  display : -ms-flexbox;
  display : flex;

  -ms-flex-align : center;
  align-items : center;
}
.columnTitle_heading .icon {
  margin-top : 1px;
  margin-right : 8px; 
  color : #fff;
}

.columnTitle_text {
  line-height : 1.2;
  padding : 8px 10px;
}

.columnCnt {
  padding : 20px;
}
@media print, screen and (min-width: 768px) {
  .columnCnt {
    display : -ms-flexbox;
    display : flex;
  }
}

.columnCnt_img {
  margin-bottom : 15px;
}
.columnCnt_img img {
  display : block;
  margin-right : auto; 
  margin-left : auto;
}
@media print, screen and (min-width: 768px) {
  .columnCnt_img {
    max-width : 260px;
    margin-right : 10px; 
    margin-bottom : 0;

    -ms-flex : 0 0 auto;
        flex : 0 0 auto;
  }
}

.columnCnt_text {
  margin-bottom : 15px;
}

.columnCnt_btn {
  display : -ms-flexbox;
  display : flex;
  padding-right : 20px; 
  padding-left : 20px;
}
@media print, screen and (min-width: 768px) {
  .columnCnt_btn {
    max-width : 240px;
    padding-right : 0; 
    padding-left : 0;
  }
}

.media {
  display : -ms-flexbox;
  display : flex;
      flex-direction : column-reverse; 

  -ms-flex-direction : column-reverse;
}
@media print, screen and (min-width: 768px) {
  .media {
    display : block;

    *zoom : 1;
  }
  .media:before , .media:after {
    display : table;
    content : ' ';
  }
  .media:after {
    clear : both;
  }
}

.media.media-img--left {
      flex-direction : column; 

  -ms-flex-direction : column;
}
@media print, screen and (min-width: 768px) {
  .media.media-img--left {
    display : block;

    *zoom : 1;
  }
  .media.media-img--left:before , .media.media-img--left:after {
    display : table;
    content : ' ';
  }
  .media.media-img--left:after {
    clear : both;
  }
}

.media-img {
  margin-top : 20px;
}
.media-img--left .media-img {
  margin-top : 0;
  margin-bottom : 20px;
}

@media print, screen and (min-width: 768px) {
  .media-img {
    float : right;
    margin-top : 0;
    margin-left : 20px;
  }
  .media-img--left .media-img {
    float : left;
    margin : 0 20px 0 0;
  }
}

@media print, screen and (min-width: 768px) {
  .media-body {
    overflow : hidden;
  }
}

.newsList > li {
  border-bottom : 1px solid #f2f2f7;
}
.newsList > li:first-child {
  border-top : 1px solid #f2f2f7;
}

.newsItem a {
  position : relative;
  display : block;
  padding : 30px 35px 30px 5px;
  transition : color .3s ease; 
  text-decoration : none;
}
.newsItem a:after {
  font-family : 'icon' !important;
  font-size : 2rem;
  font-weight : normal;
  font-style : normal;
  font-variant : normal;
  line-height : 1;
  position : absolute;
  top : 50%;
  right : 5px;
  display : inline-block;
  margin-top : -1rem; 
  content : '\EA0C';
  vertical-align : middle;
  text-transform : none;
  color : #000065;

  speak : none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing : antialiased;
  -moz-osx-font-smoothing : grayscale;
}
.newsItem a .news_text {
  text-decoration : underline;
}
@media print, screen and (min-width: 768px) {
  .newsItem a {
    padding-right : 50px;
    padding-left : 20px;
  }
  .newsItem a:after {
    right : 10px;
  }
  .newsItem a:hover .news_text {
    text-decoration : none;
    color : #2984a2;
  }
}

@media print, screen and (min-width: 768px) {
  .newsItem dl {
    display : -ms-flexbox;
    display : flex;

    -ms-flex-align : center;
    align-items : center;
  }
}

.news_date {
  margin-bottom : 5px; 
  color : #666;
}
@media print, screen and (min-width: 768px) {
  .news_date {
    width : 125px;

    -ms-flex : 0 0 auto;
        flex : 0 0 auto;
  }
}

.news_text {
  font-size : 1.6rem;
  transition : color .3s ease; 
  color : #222;
}

.pager {
  font-family : 'RobotoSlab';
  font-size : 2.7rem;
  line-height : 40px;
  position : relative; 
  height : 40px;
  margin-right : 40px;
  margin-left : 40px;
  text-align : center;
  color : #000065;
}
.pager:before , .pager:after {
  font-family : 'icon' !important;
  font-size : 2.2rem;
  font-weight : normal;
  font-style : normal;
  font-variant : normal;
  line-height : 1;
  position : absolute;
  z-index : 1; 
  top : 0;
  display : inline-block;
  width : 40px;
  height : 40px;
  padding : 8px;
  content : '\EA0C';
  vertical-align : middle;
  text-decoration : none;
  text-transform : none;
  color : #000065;
  color : #ccc;
  border : 1px solid #ccc;
  background-color : #fff;

  speak : none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing : antialiased;
  -moz-osx-font-smoothing : grayscale;
}
.pager:before {
  left : 0;
  -ms-transform : rotate(180deg);
      transform : rotate(180deg);
}
.pager:after {
  right : 0;
}
.pager > a , .pager > span {
  display : none;
}
.pager .pager-nav , .pager .pager-count {
  display : inline-block;
}

.pager-nav a {
  font-size : 2.2rem; 
  display : block;
  width : 40px;
  height : 40px;
  text-decoration : none;
  border : 1px solid #000065;
  background-color : #fff;
}
.pager-nav a .icon {
  display : block;
  padding : 8px;
}

.pager-nav--prev {
  position : absolute;
  z-index : 10; 
  top : 0;
  left : 0;
  -ms-transform : rotate(180deg);
      transform : rotate(180deg);
}

.pager-nav--next {
  position : absolute;
  z-index : 10; 
  top : 0;
  right : 0;
}

@media print, screen and (min-width: 768px) {
  .pager {
    font-size : 0;
    max-width : 570px;
    margin-right : auto; 
    margin-left : auto;
  }
  .pager .pager-count {
    display : none;
  }
  .pager > a , .pager > span {
    font-size : 1.6rem;
    display : inline-block;
    margin-right : 4px; 
    margin-left : 4px;
    text-decoration : none;
    color : #000065;
  }
  .pager > a {
    position : relative; 
    width : 40px;
    height : 40px;
    border : 1px solid #000065;
    background-color : #fff;
  }
  .pager > a > span {
    position : relative;
    z-index : 10;
  }
  .pager > a:before {
    position : absolute;
    z-index : 1;
    bottom : 0;
    left : 0;
    width : 100%;
    height : 0;
    content : '';
    transition : all .3s ease; 
    background-color : #000065;
  }
  .pager > a:hover {
    color : #fff;
  }
  .pager > a:hover:before {
    height : 100%;
  }
  .pager .pager-current {
    width : 40px;
    height : 40px;
    color : #fff; 
    border : 1px solid #000065;
    background-color : #000065;
  }
  .pager .pager-nav > a {
    position : relative;
  }
  .pager .pager-nav > a .icon {
    position : relative;
    z-index : 10; 
    transition : all .3s ease;
  }
  .pager .pager-nav > a:before {
    position : absolute;
    z-index : 1;
    bottom : 0;
    left : 0;
    width : 100%;
    height : 0;
    content : '';
    transition : all .3s ease; 
    background-color : #000065;
  }
  .pager .pager-nav > a:hover .icon {
    color : #fff;
  }
  .pager .pager-nav > a:hover:before {
    height : 100%;
  }
}

.pager02 {
  display : -ms-flexbox;
  display : flex;
  width : 100%;
  margin-top : 2px; 
  padding : 30px 20px;
  background-color : #fff;

  -ms-flex-pack : justify;
  justify-content : space-between;
}
.pager02 a {
  font-size : 1.6rem;
  position : relative; 
  text-decoration : none;
}
.pager02 a:before {
  font-family : 'icon' !important;
  font-size : 2.2rem;
  font-weight : normal;
  font-style : normal;
  font-variant : normal;
  line-height : 1;
  position : absolute;
  top : 50%;
  display : inline-block;
  margin-top : -1.1rem;
  content : '\EA0C';
  transition : all .3s ease; 
  vertical-align : middle;
  text-transform : none;
  color : #000065;

  speak : none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing : antialiased;
  -moz-osx-font-smoothing : grayscale;
}
.pager02 .before a {
  padding-left : 35px;
}
.pager02 .before a:before {
  left : 0;
  -ms-transform : rotate(180deg);
      transform : rotate(180deg);
}
.pager02 .next a {
  padding-right : 35px;
}
.pager02 .next a:before {
  right : 0;
}

@media print, screen and (min-width: 768px) {
  .pager02 {
    padding-right : 40px; 
    padding-left : 40px;
  }
  .pager02 a:hover:before {
    color : #2984a2;
  }
}

.accList > li:not(:first-child) {
  margin-top : 2px;
}

.accBlock {
  position : relative;
}
.accBlock:after {
  position : absolute;
  bottom : 0;
  left : 0; 
  display : block;
  width : 100%;
  height : 1px;
  content : '';
  background-color : #ccc;
}

.acc_trg {
  font-size : 1.8rem;
  font-weight : bold;
  line-height : 1.4;
  position : relative; 
  padding : 12px;
  padding-right : 40px;
  color : #fff;
  background-color : #000065;
}
.acc_trg h2 , .acc_trg h3 , .acc_trg h4 , .acc_trg h5 , .acc_trg h6 {
  font-weight : bold;
}

@media print, screen and (min-width: 768px) {
  .acc_trg {
    padding-right : 45px;
    padding-left : 16px;
    transition : opacity .3s ease;
  }
  .acc_trg > span {
    position : relative;
    z-index : 10;
  }
  .acc_trg h2 , .acc_trg h3 , .acc_trg h4 , .acc_trg h5 , .acc_trg h6 {
    position : relative;
    z-index : 10; 
    display : inline;
  }
  .acc_trg:before {
    position : absolute;
    z-index : 1;
    bottom : 0;
    left : 0;
    display : inline-block;
    width : 100%;
    height : 0;
    content : '';
    transition : all .3s ease; 
    background-color : #333384;
  }
  .acc_trg:hover {
    cursor : pointer;
  }
  .acc_trg:hover:before {
    height : 100%;
  }
}

.acc_cnt {
  padding : 20px; 
  border-right : 1px solid #ccc;
  border-left : 1px solid #ccc;
}
@media print, screen and (min-width: 768px) {
  .acc_cnt {
    padding : 40px;
  }
}

.acc_close {
  font-size : 1.6rem;
  line-height : 45px;
  position : relative; 
  text-align : center;
  color : #000065;
  border : 1px solid #ccc;
  border-bottom : none;
}
@media print, screen and (min-width: 768px) {
  .acc_close {
    display : none;
  }
}

.icon-acc-close {
  position : absolute;
  top : 50%;
  right : 12px;
  display : inline-block;
  width : 20px;
  height : 2px;
  margin-top : -1px; 
  background-color : #000065;
}

.icon-acc-wrap {
  position : absolute;
  z-index : 10; 
  top : 50%;
  right : 12px;
  width : 20px;
  height : 20px;
  margin-top : -10px;
}
@media print, screen and (min-width: 768px) {
  .icon-acc-wrap {
    right : 20px;
  }
}

.icon-acc , .icon-acc span {
  display : inline-block;
  transition : all .4s;
}

.icon-acc {
  position : absolute;
  top : 50%;
  width : 20px;
  height : 20px;
  margin-top : -10px;
}

.icon-acc span {
  position : absolute;
  right : 0;
  width : 100%;
  height : 2px;
  background-color : #fff;
}
.icon-acc span:nth-of-type(1) {
  top : 10px;
  -ms-transform : rotate(0deg);
      transform : rotate(0deg);
}
.icon-acc span:nth-of-type(2) {
  top : 10px;
  -ms-transform : rotate(90deg);
      transform : rotate(90deg);
}

/*+-切り替え*/
.is-open .icon-acc span:nth-of-type(1) {
  display : none;
}

.is-open .icon-acc span:nth-of-type(2) {
  -ms-transform : rotate(180deg);
      transform : rotate(180deg);
}

/* Slider */
.slick-slider {
  position : relative;
  display : block;
  box-sizing : border-box;
  -webkit-user-select : none;
     -moz-user-select : none;
      -ms-user-select : none;
          user-select : none;

  -webkit-touch-callout : none;
  -ms-touch-action : pan-y;
      touch-action : pan-y;
  -webkit-tap-highlight-color : transparent;
}

.slick-list {
  position : relative;
  display : block;
  overflow : hidden;
  margin : 0;
  padding : 0;
}
.slick-list:focus {
  outline : none;
}
.slick-list.dragging {
  cursor : pointer;
  cursor : hand;
}

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

.slick-track {
  position : relative;
  top : 0;
  left : 0;
  display : block;
  margin-right : auto; 
  margin-left : auto;
}
.slick-track:before , .slick-track:after {
  display : table; 
  content : '';
}
.slick-track:after {
  clear : both;
}
.slick-loading .slick-track {
  visibility : hidden;
}

.slick-slide {
  display : none; 
  float : left;
  height : 100%;
  min-height : 1px;
}
[dir='rtl'] .slick-slide {
  float : right;
}
.slick-slide img {
  display : block;
}
.slick-slide.slick-loading img {
  display : none;
}
.slick-slide.dragging img {
  pointer-events : none;
}
.slick-initialized .slick-slide {
  display : block;
}
.slick-loading .slick-slide {
  visibility : hidden;
}
.slick-vertical .slick-slide {
  display : block;
  height : auto;
  border : 1px solid transparent;
}

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

/* Arrows */
.slick-prev , .slick-next {
  font-size : 0;
  line-height : 0;
  position : absolute;
  z-index : 100;
  top : 50%;
  display : block;
  width : 59px;
  height : 67px;
  padding : 0;
  cursor : pointer;
  -ms-transform : translate(0, -50%);
      transform : translate(0, -50%);
  color : transparent;
  border : none;
  outline : none; 
  background : transparent;
}
.slick-prev:hover , .slick-prev:focus , .slick-next:hover , .slick-next:focus {
  color : transparent; 
  outline : none;
  background : transparent;
}
.slick-prev:before , .slick-next:before {
  display : inline-block;
  width : 67px;
  height : 59px;
  content : '';
  transition : all .3s ease; 
  background : url(../images/home/hero-nav.png);
  background-size : 67px auto;
}
.slick-prev:hover:before , .slick-next:hover:before {
  background : url(../images/home/hero-nav-hover.png);
  background-size : 67px auto;
}

.slick-prev {
  left : 20px;
}
.slick-prev:before {
  -ms-transform : rotate(180deg);
      transform : rotate(180deg);
}

.slick-next {
  right : 48px;
}

/* Dots */
.slick-dots {
  position : absolute;
  bottom : 10px;
  display : block;
  width : 100%; 
  margin : 0;
  padding : 0;
  list-style : none;
  text-align : center;
}
@media print, screen and (min-width: 768px) {
  .slick-dots {
    bottom : 20px;
  }
}
.slick-dots li {
  position : relative;
  display : inline-block;
  margin : 0 5px;
  padding : 0;
  cursor : pointer;
}
.slick-dots li button {
  font-size : 0;
  line-height : 0;
  display : block;
  padding : 5px;
  cursor : pointer; 
  color : transparent;
  border : 0;
  outline : none;
  background : transparent;
}
.slick-dots li button:before {
  font-size : 10px;
  line-height : 1;
  position : absolute;
  top : 0;
  left : 0;
  width : 10px;
  height : 10px;
  content : '';
  text-align : center;
  border : 1px solid #000065;
  border-radius : 50%;
  background-color : #fff;

  -webkit-font-smoothing : antialiased;
  -moz-osx-font-smoothing : grayscale;
}
@media print, screen and (min-width: 768px) {
  .slick-dots li button:before {
    border : none;
  }
}
.slick-dots li.slick-active button:before {
  background-color : #000065;
}

/*========================================*/
/*  Project
/*========================================*/
/* Home
---------------------------------------*/
.heroSlide {
  overflow : hidden; 
  background-color : #eee;
}
.heroSlide .slick-slide {
  padding-bottom : 30px;
}
@media print, screen and (min-width: 768px) {
  .heroSlide .slick-slide {
    padding-bottom : 0;
  }
}

.heroSlide_item a {
  display : block;
  width : 100%;
  height : 130px;
  background-position : center center; 
  background-size : cover;
}
@media print, screen and (min-width: 768px) {
  .heroSlide_item a {
    height : 450px;
    transition : opacity .3s;
  }
  .heroSlide_item a:hover {
    opacity : .6;
  }
}

.heroTopics {
  display : -ms-flexbox;
  display : flex;
}
.heroTopics dt {
  display : -ms-flexbox;
  display : flex;
  width : 100px;
  padding : 10px 5px; 
  text-align : center;
  color : #fff;
  background-color : #2984a2;

  -ms-flex-align : center;
  align-items : center;
  -ms-flex-pack : center;
  justify-content : center;
  -ms-flex : 0 0 auto;
      flex : 0 0 auto;
}
.heroTopics dd {
  display : -ms-flexbox;
  display : flex;
  width : 100%; 

  -ms-flex-align : center;
  align-items : center;
}
.heroTopics dd a {
  position : relative; 
  display : block;
  width : 100%;
  padding : 10px 35px 10px 10px;
  color : #222;
}
.heroTopics dd a .icon {
  font-size : 2rem;
  position : absolute;
  top : 50%;
  right : 10px;
  margin-top : -1rem;
}

@media print, screen and (min-width: 768px) {
  .heroTopics {
    font-size : 1.6rem;
    max-width : 980px;
    margin-right : auto; 
    margin-left : auto;
  }
  .heroTopics dt {
    width : 150px;
    padding : 14px 5px;
  }
  .heroTopics dd a {
    padding : 14px 45px 14px 20px;
    transition : all .3s ease;
  }
  .heroTopics dd a:hover {
    color : #2984a2;
  }
}

.home-title {
  font-size : 2.8rem;
  font-weight : bold;
  margin-bottom : 20px; 
  text-align : center;
}
.home-title span {
  font-family : 'RobotoSlab';
  font-size : 1.2rem;
  font-weight : normal;
  display : block;
  margin-top : 5px; 
  color : #000065;
}
@media print, screen and (min-width: 768px) {
  .home-title {
    margin-bottom : 40px;
  }
}

.homeProducts {
  padding-top : 35px;
  padding-bottom : 90px; 
  background : url(../images/common/content-bg.png) repeat-x center top #f2f2f7;
}
@media print, screen and (min-width: 768px) {
  .homeProducts {
    padding-top : 70px;
  }
}

.products-card {
  display : -ms-flexbox;
  display : flex;
  margin-right : -1px; 
  margin-left : -1px;

  -ms-flex-wrap : wrap;
      flex-wrap : wrap;
}
.products-card li {
  display : -ms-flexbox;
  display : flex;
  width : 50%;
  padding-right : 1px; 
  padding-left : 1px;
}
.products-card li:not(:nth-child(-n+2)) {
  margin-top : 2px;
}
.products-card a {
  display : -ms-flexbox;
  display : flex;
      flex-direction : column;
  width : 100%;
  text-decoration : none; 
  background-color : #fff;

  -ms-flex-direction : column;
}
.products-card_img {
  min-height : 5%;
}

@media print, screen and (min-width: 768px) {
  .products-card li {
    width : 25%;
  }
  .products-card li:not(:nth-child(-n+2)) {
    margin-top : 0;
  }
  .products-card a:hover img {
    opacity : 1;
  }
  .products-card a:hover .products-cardBody:before {
    height : 100%;
  }
  .products-card a:hover .products-card_btn , .products-card a:hover .products-card_text {
    color : #fff;
  }
  .products-card a:hover .products-card_btn .icon {
    color : #fff;
  }
}

.products-cardBody {
  padding : 10px 12px;
}
@media print, screen and (min-width: 768px) {
  .products-cardBody {
    position : relative;
  }
  .products-cardBody:before {
    position : absolute;
    z-index : 1;
    bottom : 0;
    left : 0;
    display : inline-block;
    width : 100%;
    height : 0;
    content : '';
    transition : all .3s ease; 
    background-color : #000065;
  }
}

.products-card_btn {
  font-size : 2rem;
  font-weight : bold;
  position : relative;
  z-index : 10;
}
.products-card_btn span {
  font-size : 1.4rem;
}
.products-card_btn .icon {
  font-size : 1.8rem;
  position : relative;
  top : -1px; 
  margin-left : 5px;
}

.products-card_text {
  line-height : 1.5;
  position : relative;
  z-index : 10; 
  margin-top : 10px;
  color : #222;
}

.homeDownloads {
  padding-bottom : 75px; 
  background-color : #e4e4ed;
}
.homeDownloads > div {
  overflow : hidden;
}
.homeDownloads .home-title {
  position : relative;
  top : -20px;
}

.homeDownloads-card {
  display : -ms-flexbox;
  display : flex;
  margin-right : -12px; 
  margin-left : -12px;

  -ms-flex-wrap : wrap;
      flex-wrap : wrap;
  -ms-flex-pack : center;
  justify-content : center;
}
.homeDownloads-card li {
  width : 50%;
  padding-right : 12px; 
  padding-left : 12px;
}
.homeDownloads-card li:not(:nth-child(-n+2)) {
  margin-top : 50px;
}
.homeDownloads-card a {
  font-size : 1.8rem;
  display : block;
  text-align : center;
  text-decoration : none;
  color : #000;
}
.homeDownloads-card .icon {
  margin-left : 10px;
}
@media print, screen and (min-width: 768px) {
  .homeDownloads-card {
    -ms-flex-wrap : nowrap;
        flex-wrap : nowrap;
  }
  .homeDownloads-card li {
    width : 20%;
  }
  .homeDownloads-card li:not(:nth-child(-n+2)) {
    margin-top : 0;
  }
  .homeDownloads-card a:hover .homeDownloads-card_img img {
    opacity : 1;
  }
  .homeDownloads-card a:hover .homeDownloads-card_img:before {
    height : 16.2vw;
  }
}
@media print, screen and (min-width: 1024px) {
  .homeDownloads-card {
    margin-right : 0; 
    margin-left : 0;

    -ms-flex-pack : justify;
    justify-content : space-between;
  }
  .homeDownloads-card li {
    width : 160px;
    padding-right : 0; 
    padding-left : 0;
  }
  .homeDownloads-card a:hover .homeDownloads-card_img:before {
    height : 160px;
  }
}

.homeDownloads-card_img {
  position : relative;
  overflow : hidden; 
  height : 44.2vw;
  margin-bottom : 15px;
  border-radius : 50%;
  background-color : #fff;
}
.homeDownloads-card_img img {
  position : absolute;
  z-index : 10; 
  top : 50%;
  left : 50%;
  /* Safari用 */
  -ms-transform : translate(-50%, -50%);
      transform : translate(-50%, -50%);
}
@media print, screen and (min-width: 768px) {
  .homeDownloads-card_img {
    position : relative; 
    height : 16.2vw;
  }
  .homeDownloads-card_img:before {
    position : absolute;
    z-index : 1;
    bottom : 0;
    left : 0;
    display : inline-block;
    width : 100%;
    height : 0;
    content : '';
    transition : all .3s ease; 
    background-color : #000065;
  }
}
@media print, screen and (min-width: 1024px) {
  .homeDownloads-card_img {
    height : 160px;
  }
}

.homeNavBlock {
  padding-top : 70px;
  padding-bottom : 80px;
}
@media print, screen and (min-width: 1024px) {
  .homeNavBlock {
    display : -ms-flexbox;
    display : flex;
  }
}

.homeMeasures {
  margin-bottom : 80px;
}
@media print, screen and (min-width: 1024px) {
  .homeMeasures {
    width : 50%;
    padding-right : 20px;
  }
}

.homeCompany .btnNavList .btn {
  padding-left : 20px;
}

.homeCompany-bnr {
  margin-top : 40px;
}
.homeCompany-bnr li {
  margin-top : 10px;
}

@media print, screen and (min-width: 1024px) {
  .homeCompany {
    width : 50%;
    padding-left : 20px;
  }
  .homeCompany-bnr {
    margin-top : 14px;
  }
}

.homeNews {
  padding-top : 70px;
  padding-bottom : 80px;
}

/* Products
---------------------------------------*/
@media print, screen and (min-width: 768px) {
  .products-pMap {
    position : relative; 
    text-align : center;
  }
  .products-pMap-sec01 , .products-pMap-sec02 {
    position : absolute;
    left : 50%;
    width : 600px;
    height : 255px;
    margin-left : -300px;
  }
  .products-pMap-sec01 {
    top : 150px;
  }
  .products-pMap-sec01_item01 a , .products-pMap-sec01_item02 a , .products-pMap-sec01_item03 a , .products-pMap-sec01_item04 a , .products-pMap-sec01_item05 a , .products-pMap-sec01_item06 a {
    position : absolute; 
    display : block;
  }
  .products-pMap-sec01_item01 a {
    top : 10px;
    left : 6px; 
    width : 75px;
    height : 75px;
  }
  .products-pMap-sec01_item02 a {
    bottom : 10px;
    left : 85px; 
    width : 75px;
    height : 75px;
  }
  .products-pMap-sec01_item03 a {
    top : 25px;
    right : 120px; 
    width : 158px;
    height : 52px;
  }
  .products-pMap-sec01_item04 a {
    top : 78px;
    right : 120px; 
    width : 158px;
    height : 48px;
  }
  .products-pMap-sec01_item05 a {
    top : 30px;
    right : 19px; 
    width : 100px;
    height : 70px;
  }
  .products-pMap-sec01_item06 a {
    top : 128px;
    right : 10px; 
    width : 127px;
    height : 70px;
  }
  .products-pMap-sec02 {
    bottom : 60px;
  }
  .products-pMap-sec02_item01 a , .products-pMap-sec02_item02 a , .products-pMap-sec02_item03 a , .products-pMap-sec02_item04 a , .products-pMap-sec02_item05 a , .products-pMap-sec02_item06 a , .products-pMap-sec02_item07 a , .products-pMap-sec02_item08 a , .products-pMap-sec02_item09 a , .products-pMap-sec02_item10 a , .products-pMap-sec02_item11 a {
    position : absolute; 
    display : block;
  }
  .products-pMap-sec02_item01 a {
    top : 20px;
    left : 6px; 
    width : 75px;
    height : 45px;
  }
  .products-pMap-sec02_item02 a {
    top : 78px;
    left : 44px; 
    width : 75px;
    height : 45px;
  }
  .products-pMap-sec02_item03 a {
    top : 78px;
    left : 137px; 
    width : 75px;
    height : 45px;
  }
  .products-pMap-sec02_item04 a {
    bottom : 10px;
    left : 85px; 
    width : 75px;
    height : 75px;
  }
  .products-pMap-sec02_item05 a {
    top : 127px;
    left : 232px; 
    width : 100px;
    height : 38px;
  }
  .products-pMap-sec02_item06 a {
    top : 30px;
    right : 120px; 
    width : 158px;
    height : 38px;
  }
  .products-pMap-sec02_item07 a {
    top : 78px;
    right : 120px; 
    width : 158px;
    height : 38px;
  }
  .products-pMap-sec02_item08 a {
    top : 30px;
    right : 20px; 
    width : 100px;
    height : 48px;
  }
  .products-pMap-sec02_item09 a {
    right : 130px; 
    bottom : 78px;
    width : 108px;
    height : 38px;
  }
  .products-pMap-sec02_item10 a {
    right : 10px; 
    bottom : 78px;
    width : 115px;
    height : 48px;
  }
  .products-pMap-sec02_item11 a {
    right : 38px; 
    bottom : 34px;
    width : 85px;
    height : 42px;
  }
}

.products-heading .label-list {
  margin-bottom : 10px;
}

.products-heading .labelFeature {
  margin-top : 20px;
}

.products-headingBody {
  margin-bottom : 20px;
}

@media print, screen and (min-width: 768px) {
  .products-heading {
    display : -ms-flexbox;
    display : flex;
  }
  .products-headingBody {
    width : calc(100% - 352px);
    margin-right : 20px; 
    margin-bottom : 0;
  }
}

.js-products-slide-nav {
  display : none;
}

.products-headingSlide {
  padding-bottom : 32px;
}

.products-headingSlide_main .slick-dots {
  bottom : -32px;
}
.products-headingSlide_main .slick-dots li button {
  padding : 10px;
}
.products-headingSlide_main .slick-dots li button:before {
  width : 20px;
  height : 20px;
  border : 2px solid #000065;
}

.products-headingSlide_main .productsSlide_item {
  margin-right : 5px; 
  margin-left : 5px;
}

@media print, screen and (min-width: 768px) {
  .js-products-slide-nav {
    display : block;
  }
  .products-headingSlide {
    display : -ms-flexbox;
    display : flex;
    width : 352px;
    padding-bottom : 0; 

    -ms-flex : 0 0 auto;
        flex : 0 0 auto;
    -ms-flex-pack : justify;
    justify-content : space-between;
  }
  .products-headingSlide_main {
    overflow : hidden; 
    width : 274px;
    height : 274px;
  }
  .products-headingSlide_main .productsSlide_item {
    margin-right : 0; 
    margin-left : 0;
  }
  .products-headingSlide_main .productsSlide_item img {
    min-width : 274px;
  }
  .products-headingSlide_nav {
    width : 67px;
  }
  .products-headingSlide_nav .slick-list {
    overflow : visible;
  }
  .products-headingSlide_nav .slick-track {
    transform : translate3d(0px, 0, 0px) !important;
  }
  .products-headingSlide_nav .slick-active {
    padding : 2px; 
    border : 2px solid #fff;
  }
  .products-headingSlide_nav .slick-active:not(:first-child) {
    margin-top : 2px;
  }
  .products-headingSlide_nav .slick-active:hover {
    cursor : pointer;
  }
  .products-headingSlide_nav .slick-current {
    position : relative; 
    border : 2px solid #000065;
  }
  .products-headingSlide_nav .slick-current:after {
    position : absolute;
    top : 50%;
    left : -13px;
    display : inline-block;
    margin-top : -6px; 
    content : '';
    border : 6px solid transparent;
    border-right : 6px solid #000065;
  }
}

.products-download {
  width : 100%;
}
.products-download .ttl-md-v2 {
  margin-bottom : 12px;
}
.products-download dd {
  display : -ms-flexbox;
  display : flex;
}
.products-download dd a {
  margin-top : 8px;
}
.products-download dd a .icon {
  font-family : 'icon' !important;
  font-size : 2rem;
  font-weight : normal;
  font-style : normal;
  font-variant : normal;
  line-height : 1;
  position : absolute;
  z-index : 10;
  top : 50%;
  right : 14px;
  display : inline-block;
  margin-top : -1rem;
  transition : all .3s ease; 
  vertical-align : middle;
  text-transform : none;
  color : #000065;

  speak : none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing : antialiased;
  -moz-osx-font-smoothing : grayscale;
}
.products-download dd a .icon:before {
  content : '\EA0C';
}
.products-download dd.is-pdf a .icon:before , .products-download dd.is-dxf a .icon:before , .products-download dd.is-jww a .icon:before {
  content : '\EA0E';
}
.products-download dd.is-pdf a:after , .products-download dd.is-dxf a:after , .products-download dd.is-jww a:after {
  font-family : 'icon' !important;
  font-size : 2rem;
  font-weight : normal;
  font-style : normal;
  font-variant : normal;
  line-height : 1;
  position : absolute;
  top : 50%;
  left : 12px;
  display : inline-block;
  margin-top : -1rem;
  transition : all .3s ease; 
  vertical-align : middle;
  text-transform : none;
  color : #000065;

  speak : none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing : antialiased;
  -moz-osx-font-smoothing : grayscale;
}
.products-download dd.is-pdf a:after {
  content : '\EA08';
}
.products-download dd.is-dxf a:after {
  content : '\EA09';
}
.products-download dd.is-jww a:after {
  content : '\EA0A';
}

@media print, screen and (min-width: 768px) {
  .products-download dd a:hover:after {
    z-index : 10; 
    color : #fff;
  }
}

.products-featureList > li:not(:last-child) {
  margin-bottom : 20px; 
  padding-bottom : 20px;
  border-bottom : 1px dashed #ccc;
}

.products-featureList .ttl-md {
  margin-bottom : 12px;
}

@media print, screen and (min-width: 768px) {
  .products-featureList > li {
    display : -ms-flexbox;
    display : flex;

    -ms-flex-pack : justify;
    justify-content : space-between;
  }
}

@media print, screen and (min-width: 768px) {
  .products-featureBodyCnt {
    padding-left : 1.5rem;
  }
}

.products-featureImg li {
  margin-top : 12px;
}
.products-featureImg li a {
  position : relative; 
  display : block;
}
.products-featureImg li a:after {
  font-family : 'icon' !important;
  font-size : 2.4rem;
  font-weight : normal;
  font-style : normal;
  font-variant : normal;
  line-height : 1;
  line-height : 30px;
  position : absolute;
  z-index : 10; 
  right : 0;
  bottom : 0;
  display : inline-block;
  width : 30px;
  height : 30px;
  content : '\EA12';
  text-align : center;
  vertical-align : middle;
  text-transform : none;
  color : #000065;
  color : #fff;
  background-color : #000065;

  speak : none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing : antialiased;
  -moz-osx-font-smoothing : grayscale;
}

@media print, screen and (min-width: 768px) {
  .products-featureImg {
    display : -ms-flexbox;
    display : flex;
    max-width : 367px;

    -ms-flex : 0 0 auto;
        flex : 0 0 auto;
  }
  .products-featureImg li {
    max-width : 168px;
    margin-top : 0;
    margin-left : 15px;

    -ms-flex : 0 0 auto;
        flex : 0 0 auto;
  }
  .products-featureImg li a:after {
    font-size : 1.6rem;
    line-height : 20px; 
    width : 20px;
    height : 20px;
  }
}

.products-accCnt-method > p {
  margin-top : 20px;
}
.products-accCnt-method > p:first-child {
  margin-top : 15px;
}

/* News
---------------------------------------*/
.newsArchiveList {
  display : -ms-flexbox;
  display : flex;
  margin-right : -4px; 
  margin-left : -4px;

  -ms-flex-wrap : wrap;
      flex-wrap : wrap;
}
.newsArchiveList li {
  display : -ms-flexbox;
  display : flex;
  width : 50%;
  padding : 4px;
}

@media print, screen and (min-width: 768px) {
  .newsArchiveList li {
    width : 25%;
    padding-top : 0;
    padding-bottom : 0;
  }
  .newsArchiveList li .btn.is-current {
    color : #fff; 
    background-color : #000065;
  }
  .newsArchiveList li .btn.is-current .icon {
    color : #fff;
  }
}

.newsDetail-heading {
  padding-bottom : 20px; 
  border-bottom : 2px solid #e4e4ed;
}

.newsDetail_date {
  font-size : 1.4rem;
  margin-bottom : 15px; 
  color : #666;
}

.newsDetail-cnt {
  padding-top : 40px;
  padding-bottom : 40px;
}

/* Form
---------------------------------------*/
form dl.form:first-of-type {
  border-top : 1px solid #d6d6d6;
}

dl.form {
  padding-top : 24px;
  padding-bottom : 24px; 
  border-bottom : 1px solid #d6d6d6;
}
dl.form:first-child {
  border-top : 1px solid #d6d6d6;
}
dl.form dt , dl.form dd {
  margin-right : 15px; 
  margin-left : 15px;
}
dl.form dt {
  margin-bottom : 10px;
}
dl.form dt span {
  color : #c00;
}
dl.form dd {
  min-width : 1px;
}
dl.form dd .error-message {
  display : none;
}

@media print, screen and (min-width: 768px) {
  dl.form {
    display : -ms-flexbox;
    display : flex;
  }
  dl.form dt {
    line-height : 36px;
    width : 220px;
    margin : 0 20px; 

    -ms-flex : 0 0 auto;
        flex : 0 0 auto;
  }
  dl.form dd {
    max-width : calc( 100% - 260px);
    margin-left : 0;
  }
  dl.form.naiyou dt {
    line-height : 1.6;
  }
}

.form input[type='text'] , .form textarea , .form select {
  font-size : 1.6rem;
  width : 100%;
  padding : 5px 10px; 
  border : 1px solid #ddd;
  background-color : #fff;
}

.form textarea {
  min-height : 200px;
}

.form select {
  background : url(../images/common/select-bg.svg) no-repeat right 12px center;
  background-size : 11px auto;
}

@media print, screen and (min-width: 768px) {
  .form input[type='text'] , .form select {
    width : 300px;
  }
  .form.add input[type='text'] , .form.mail input[type='text'] , .form textarea {
    width : 440px;
  }
}

.form.name01 .nameBlock , .form.name02 .nameBlock {
  display : -ms-flexbox;
  display : flex;
}
.form.name01 .nameBlock .name_item , .form.name02 .nameBlock .name_item {
  line-height : 36px; 
  display : -ms-flexbox;
  display : flex;
}
.form.name01 .nameBlock .name_item label , .form.name02 .nameBlock .name_item label {
  margin-right : 12px;
  white-space : nowrap;
}
.form.name01 .nameBlock .name_item:first-child , .form.name02 .nameBlock .name_item:first-child {
  margin-right : 20px;
}

@media print, screen and (min-width: 768px) {
  .form.name01 .nameBlock input[type='text'] , .form.name02 .nameBlock input[type='text'] {
    width : 193px;
  }
  .form.name01 .error .error-message {
    display : inline-block;
    width : 48%;
    padding-left : 25px;
  }
  .form.name01 .error .error-message:last-child {
    padding-left : 40px;
  }
  .form.name02 .error .error-message {
    display : inline-block;
    width : 48%;
    padding-left : 40px;
  }
  .form.name02 .error .error-message:last-child {
    padding-left : 55px;
  }
}

.form .addItem {
  line-height : 36px; 
  display : -ms-flexbox;
  display : flex;
}
.form .addItem input[type='text'] {
  width : 41%;
  margin-right : 8px; 
  margin-left : 8px;
}

@media print, screen and (min-width: 768px) {
  .form .addItem input[type='text'] {
    width : 20%;
  }
}

.form.tel dd .telItem {
  display : -ms-flexbox;
  display : flex;

  -ms-flex-align : center;
  align-items : center;
}
.form.tel dd .telItem > span {
  margin-right : 8px; 
  margin-left : 8px;
}
.form.tel dd .telItem input[type='text'] {
  width : 30%;
}

@media print, screen and (min-width: 768px) {
  .form.tel dd .telItem input[type='text'] {
    width : 20%;
  }
}

.form-radioList li {
  position : relative; 
  display : inline-block;
}
.form-checkboxList li {
  position : relative; 
  display : block;
}
@media print, screen and (min-width: 768px) {
    .form-checkboxList {
      display: flex;
      flex-wrap: wrap;
    }
    .form-checkboxList li {
      width: 50%;
    }
}
.form-radioList li input , .form-checkboxList li input {
  position : absolute;
  top : 0;
  left : 0; 
  width : 100%;
  height : 100%;
}
.form-radioList li.other , .form-checkboxList li.other {
  display : -ms-flexbox;
  display : flex;
  margin-top : 5px; 

  -ms-flex-align : center;
  align-items : center;
}
.form-radioList li.other input[type='text'] , .form-checkboxList li.other input[type='text'] {
  position : static;
}

input[type='radio'] + label , .form-radioList input[type='radio'] + label {
  display : inline-block;
  padding : 6px 30px 6px 22px; 
  background : url(../images/common/radio-bg.svg) no-repeat 0 center;
  background-size : 16px 16px;
}

input[type='radio'] + label {
  padding-right : 10px;
  white-space : nowrap;
}

input[type='radio']:checked + label , .form-radioList input[type='radio']:checked + label {
  background : url(../images/common/radio-bg-current.svg) no-repeat 0 center;
  background-size : 16px 16px;
}

input[type='checkbox'] + label , .form-checkboxList input[type='checkbox'] + label {
  display : inline-block;
  padding : 6px 30px 6px 22px; 
  background : url(../images/common/checkbox-bg.svg) no-repeat 0 center;
  background-size : 16px 16px;
}

input[type='checkbox'] + label {
  padding-right : 10px;
}

input[type='checkbox']:checked + label , .form-checkboxList input[type='checkbox']:checked + label {
  background : url(../images/common/checkbox-bg-current.svg) no-repeat 0 center;
  background-size : 16px 16px;
}

.form-textScroll {
  overflow-y : auto;
  height : 200px;
  margin-right : 15px;
  margin-left : 15px;
  padding : 22px;
  border : 1px solid #ddd;

  -webkit-overflow-scrolling : touch;
}
.form-textScroll::-webkit-scrollbar {
  /*バーの太さ*/
  width : 10px;
}
.form-textScroll::-webkit-scrollbar-track {
  /*バーの背景色*/
  border-left : 1px solid #ddd;
  background-color : #fafafa;
}
.form-textScroll::-webkit-scrollbar-thumb {
  border-radius : 5px; 
  /*バーの色*/
  background-color : #c1c1c1;
}

input::-webkit-input-placeholder {
  color : #a8a8a8;
}

input:-ms-input-placeholder {
  color : #a8a8a8;
}

input::-moz-placeholder {
  color : #a8a8a8;
}

textarea::-webkit-input-placeholder {
  color : #a8a8a8;
}

textarea:-ms-input-placeholder {
  color : #a8a8a8;
}

textarea::-moz-placeholder {
  color : #a8a8a8;
}

.form-btn {
  display : -ms-flexbox;
  display : flex;
      flex-direction : column; 

  -ms-flex-direction : column;
}
.form-btn button:not(:first-child) {
  margin-top : 30px;
}

@media print, screen and (min-width: 768px) {
  button[type='submit'] {
    cursor : pointer;
  }
  .form-btn {
        flex-direction : row;
    max-width : 760px;
    margin-right : auto; 
    margin-left : auto;

    -ms-flex-direction : row;
    -ms-flex-pack : center;
    justify-content : center;
  }
  .form-btn button {
    margin-right : 10px; 
    margin-left : 10px;
  }
  .form-btn button:not(:first-child) {
    margin-top : 0;
  }
  .form-btn button[type='button'] {
    width : 240px;

    -ms-flex : 0 0 auto;
        flex : 0 0 auto;
  }
  .form-btn button[type='submit'] {
    max-width : calc( 100% - 280px);
  }
}

.errorText , .error-message {
  color : #c00;
}

.error .formText {
  display : none;
}

.form .error .error-message {
  font-size : 1.2rem;
  display : block;
  margin-top : 5px; 
  color : #c00;
}

.form .error input[type='text'] , .form .error textarea , .form .error select {
  border : 1px solid #c00; 
  background-color : #fcf2f2;
}

.form .error .form-radioList li input[type='text'] , .form .error .form-checkboxList li input[type='text'] {
  border : 1px solid #ddd; 
  background-color : #fff;
}

.form.name01 dd.error input[type='text'] , .form.name02 dd.error input[type='text'] {
  border : 1px solid #ddd; 
  background-color : #fff;
}

.form.name01 dd.error .name_item.error input[type='text'] , .form.name02 dd.error .name_item.error input[type='text'] {
  border : 1px solid #c00; 
  background-color : #fcf2f2;
}

form.confirm dd {
  font-weight : bold;
}

@media print, screen and (min-width: 768px) {
  form.confirm dl.form dt {
    line-height : 1.6;
  }
}

/* Aseismic
---------------------------------------*/
@media print, screen and (min-width: 768px) {
  .aseismic_index li:nth-child(1) {
    -ms-flex-order : 1;
    order : 1;
  }
  .aseismic_index li:nth-child(2) {
    -ms-flex-order : 3;
    order : 3;
  }
  .aseismic_index li:nth-child(3) {
    -ms-flex-order : 5;
    order : 5;
  }
  .aseismic_index li:nth-child(4) {
    -ms-flex-order : 7;
    order : 7;
  }
  .aseismic_index li:nth-child(5) {
    -ms-flex-order : 2;
    order : 2;
  }
  .aseismic_index li:nth-child(6) {
    -ms-flex-order : 4;
    order : 4;
  }
  .aseismic_index li:nth-child(7) {
    -ms-flex-order : 6;
    order : 6;
  }
}

.btn_nav.btn_nav-aseismic {
  border-bottom : 1px solid #f2f2f7;
}

.l-grid_col-aseismic {
  padding-right : 10px; 
  padding-left : 10px;
}

.aseismic-img-center {
  max-width : 340px;
  margin-right : auto; 
  margin-left : auto;
}
.aseismic-img-center p:not(:nth-child(2)) {
  margin-left : 25px;
}
.aseismic-img-center p:not(:nth-child(2)) span {
  display : inline-block;
  margin-top : 15px;
  margin-left : 15px;
}

.aseismic-link-caption {
  font-size : 1.2rem;
  margin-bottom : 10px;
  text-align : center;
  color : #666;
}
@media print, screen and (min-width: 768px) {
  .aseismic-link-caption {
    display : none;
  }
}

.bulletinNavi-chart1 , .bulletinNavi-chart2 {
  position : relative;
}
.bulletinNavi-chart1 li a , .bulletinNavi-chart2 li a {
  position : absolute;
  display : block;
}

.bulletinNavi-chart1-sec {
  position : absolute;
  top : 0;
  left : 80px; 
  width : 721px;
  height : 629px;
}

.bulletinNavi-chart1-item01 a {
  top : 50px; 
  left : 294px;
  width : 115px;
  height : 25px;
}

.bulletinNavi-chart1-item02 a {
  bottom : 22px; 
  left : 34px;
  width : 305px;
  height : 33px;
}

.bulletinNavi-chart1-item03 a {
  right : 32px;
  bottom : 22px; 
  width : 305px;
  height : 33px;
}

.bulletinNavi-chart2-sec {
  position : absolute;
  top : 0;
  left : 80px; 
  width : 720px;
  height : 1377px;
}

.bulletinNavi-chart2-item01 a {
  top : 55px; 
  left : 170px;
  width : 260px;
  height : 25px;
}

.bulletinNavi-chart2-item02 a {
  top : 450px; 
  left : 120px;
  width : 115px;
  height : 25px;
}

.bulletinNavi-chart2-item03 a {
  top : 642px; 
  left : 75px;
  width : 200px;
  height : 25px;
}

.bulletinNavi-chart2-item04 a {
  top : 1318px; 
  left : 32px;
  width : 133px;
  height : 30px;
}

.bulletinNavi-chart2-item05 a {
  top : 1318px; 
  left : 208px;
  width : 133px;
  height : 30px;
}

.bulletinNavi-chart2-item06 a {
  top : 1318px; 
  left : 385px;
  width : 133px;
  height : 30px;
}

.bulletinNavi-chart2-item07 a {
  top : 1318px; 
  left : 557px;
  width : 133px;
  height : 30px;
}

.modal-header {
  display : -ms-flexbox;
  display : flex;
  margin-bottom : 10px; 

  -ms-flex-align : center;
  align-items : center;
}

.modal-ttl {
  -ms-flex : 1 1 auto;
      flex : 1 1 auto;
}

.modal-close-btn {
  font-size : 20px;
  line-height : 1;
  cursor : pointer; 
  text-align : right;

  -ms-flex : 0 0 50px;
      flex : 0 0 50px;
}

.aseismic-img-3col > li:not(:last-child) {
  margin-bottom : 10px;
}

@media print, screen and (min-width: 768px) {
  .aseismic-img-3col {
    display : -ms-flexbox;
    display : flex;

    -ms-flex-align : center;
    align-items : center;
  }
  .aseismic-img-3col > li {
    -ms-flex : 0 0 auto;
        flex : 0 0 auto;
  }
  .aseismic-img-3col > li:not(:last-child) {
    margin-right : 10px;
    margin-bottom : 0;
  }
}

.aseismic-fig-ttl {
  font-size : 1.0rem;
  margin-bottom : 5px;
}
@media print, screen and (min-width: 768px) {
  .aseismic-fig-ttl {
    font-size : 1.4rem; 
    max-width : 700px;
    margin-right : auto;
    margin-left : auto;
  }
}

.aseismic-fig-ttl-2col {
  font-size : 1.0rem; 
  display : -ms-flexbox;
  display : flex;
  margin-bottom : 5px;

  -ms-flex-pack : distribute;
  justify-content : space-around;
}
.aseismic-fig-ttl-2col span:first-child {
  margin-right : 5px;
}
.aseismic-fig-ttl-2col span:last-child {
  margin-left : 5px;
}
@media print, screen and (min-width: 768px) {
  .aseismic-fig-ttl-2col {
    font-size : 1.4rem; 
    max-width : 700px;
    margin-right : auto;
    margin-left : auto;
  }
}

.section03-table {
  position : relative;
}
.section03-table li a {
  position : absolute;
  display : block;
}

.section03-table-sec {
  position : absolute;
  top : 0;
  left : 50%;
  width : 100%;
  max-width : 720px;
  height : 100%;
  -ms-transform : translateX(-50%);
      transform : translateX(-50%);
}

.section03-table-item01 a {
  top : 17.793594%; 
  left : 33.055556%;
  width : 28.472222%;
  height : 28.469751%;
}

.section03-table-item02 a {
  top : 17.793594%; 
  left : 61.805556%;
  width : 28.472222%;
  height : 28.469751%;
}

.section03-table-item03 a {
  bottom : 13.523132%; 
  left : 33.055556%;
  width : 28.472222%;
  height : 10.714286%;
}

.section03-table-item04 a {
  bottom : 13.523132%; 
  left : 61.805556%;
  width : 28.472222%;
  height : 10.714286%;
}

@media print, screen and (min-width: 768px) {
  .u-movie-aseismicAbout {
    width : 320px;
    margin-right : auto; 
    margin-left : auto;
  }
}

.aseismicAbout-arrow {
  position : relative;
}
.aseismicAbout-arrow:before {
  position : absolute;
  z-index : 0; 
  bottom : -60px;
  left : 50%;
  width : 88px;
  height : 99px;
  margin-left : -25px;
  content : '';
  -ms-transform : rotate(90deg);
      transform : rotate(90deg);
  background-image : url(/assets/images/aseismic/about_arrow.png);
  background-repeat : no-repeat;
  background-size : contain;
}
@media print, screen and (min-width: 768px) {
  .aseismicAbout-arrow:before {
    top : 50%;
    right : -50px; 
    bottom : auto;
    left : auto;
    -ms-transform : rotate(0) translateY(-50%);
        transform : rotate(0) translateY(-50%);
  }
}

@media print, screen and (min-width: 768px) {
  .btnFlame-aseismicAbout {
    width : 720px;
    margin-right : auto; 
    margin-left : auto;

    -ms-flex-pack : justify;
    justify-content : space-between;
  }
  .btnFlame-aseismicAbout .btnFlame_text {
    -ms-flex : 0 0 352px;
        flex : 0 0 352px;
  }
  .btnFlame-aseismicAbout .btnFlame_btn {
    -ms-flex : 0 0 300px;
        flex : 0 0 300px;
  }
}

.btn--left {
  margin-left : 0;
}

.case-contents-link {
  margin-top : -60px; 
  padding-top : 60px;
}
@media print, screen and (min-width: 768px) {
  .case-contents-link {
    margin-top : 0; 
    padding-top : 0;
  }
}

/* Faq
---------------------------------------*/
.faqBlock:not(:first-child) {
  margin-bottom : 24px;
}

.faq_q , .faq_a {
  position : relative;
  padding-top : 5px;
  padding-left : 40px;
}
.faq_q:before , .faq_a:before {
  font-family : arial, sans-serif;
  font-size : 2rem;
  font-weight : bold;
  line-height : 30px;
  position : absolute;
  top : 0;
  left : 0; 
  display : inline-block;
  width : 32px;
  height : 32px;
  text-align : center;
  color : #000065;
}
@media print, screen and (min-width: 768px) {
  .faq_q , .faq_a {
    padding-bottom : 5px;
  }
}

.faq_q {
  font-weight : bold;
  margin-bottom : 8px;
}
.faq_q:before {
  content : 'Q';
  border : 2px solid #e4e4ed;
}

.faq_a:before {
  content : 'A';
  background-color : #e4e4ed;
}

/* Company
---------------------------------------*/
.company-card {
  width : 100%; 
  text-decoration : none;
  color : #222;
}

.company-cardBody {
  padding : 10px 12px;
}
.company-cardBody .icon-arrow {
  position : relative;
  top : -2px; 
  margin-left : 5px;
}

.locationMap-tab {
  display : -ms-flexbox;
  display : flex;
  margin-bottom : 20px;
  cursor : pointer; 
  border-bottom : 4px solid #000065;
}

.locationMap-tab-btn {
  line-height : 40px;
  height : 40px;
  transition : all .3s ease; 
  text-align : center;
  color : #000065;

  -ms-flex : 1 1 50%;
      flex : 1 1 50%;
}
@media print, screen and (min-width: 768px) {
  .locationMap-tab-btn {
    line-height : 50px;
    position : relative; 
    height : 50px;
  }
  .locationMap-tab-btn span {
    position : relative;
    z-index : 10;
  }
  .locationMap-tab-btn:before {
    position : absolute;
    z-index : 1;
    bottom : 0;
    left : 0;
    display : inline-block;
    width : 100%;
    height : 0;
    content : '';
    transition : all .3s ease; 
    background-color : #000065;
  }
  .locationMap-tab-btn:hover {
    opacity : 1;
    color : #fff;
  }
  .locationMap-tab-btn:hover:before {
    height : 100%;
  }
}

.locationMap-tab-btn.is-active {
  color : #fff;
  background-color : #000065;
}

.js-tab-conts {
  display : none;
}
.js-tab-conts.is-show {
  display : block;
}

.recruit-bnr-grid .l-grid_col:first-child {
  margin-bottom : 10px;
}

@media print, screen and (min-width: 768px) {
  .recruit-bnr-grid {
    -ms-flex-align : end;
    align-items : flex-end;
  }
  .recruit-bnr-grid .l-grid_col:first-child {
    margin-bottom : 0;
  }
}

@media print, screen and (min-width: 768px) {
  .rd-main-wrapper {
    max-width : 712px;
    margin-right : auto; 
    margin-left : auto;
  }
}

@media print, screen and (min-width: 768px) {
  .u-flex-jc-center {
    -ms-flex-pack : center;
    justify-content : center;
  }
}

/* movie
---------------------------------------*/
.movie-contents-link {
  margin-top : -60px; 
  padding-top : 60px;
}
@media print, screen and (min-width: 768px) {
  .movie-contents-link {
    margin-top : 0; 
    padding-top : 0;
  }
}

.movie-contents-link-2nd {
  margin-top : -40px !important; 
  padding-top : 60px;
}
@media print, screen and (min-width: 768px) {
  .movie-contents-link-2nd {
    margin-top : 0 !important; 
    padding-top : 0;
  }
}

/* sitemap
---------------------------------------*/
.sitemap-fz-small {
  font-size : 12px;
}

.sitemap-textLink-icon .icon {
  margin-left : 10px;
}

.sitemapBlock {
  width : 100%;
}

.sitemapList .ttl-lg {
  margin-bottom : 0;
}

.sitemapList_title {
  font-size : 1.8rem;
  padding : 16px 10px;
}

.sitemapList li {
  border-top : 1px solid #f2f2f7;
}

.sitemapList a {
  font-size : 1.8rem;
  position : relative;
  display : block;
  padding : 16px 34px 16px 10px;
  text-decoration : none; 
  color : #222;
}
.sitemapList a span {
  text-decoration : underline;
}
.sitemapList a:after {
  font-family : 'icon' !important;
  font-size : 1.8rem;
  font-weight : normal;
  font-style : normal;
  font-variant : normal;
  line-height : 1;
  position : absolute;
  top : 50%;
  right : 10px;
  display : inline-block;
  margin-top : -.9rem; 
  content : '\EA0C';
  vertical-align : middle;
  text-transform : none;
  color : #000065;

  speak : none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing : antialiased;
  -moz-osx-font-smoothing : grayscale;
}
.sitemapList a.is-blank:after {
  content : '\EA0D';
}

.sitemapList > ul > li {
  border-top : none;
  border-bottom : 1px solid #f2f2f7;
}

.sitemapList > ul > li > ul > li > a {
  padding-left : 28px;
}
.sitemapList > ul > li > ul > li > a:before {
  font-size : 1.6rem;
  position : absolute;
  top : 19px;
  left : 8px; 
  content : '└';
  color : #666;
}

.sitemapList > ul > li > ul > li > ul > li > a {
  padding-left : 46px;
}
.sitemapList > ul > li > ul > li > ul > li > a:before {
  font-size : 1.6rem;
  position : absolute;
  top : 19px;
  left : 26px; 
  content : '└';
  color : #666;
}

@media print, screen and (min-width: 768px) {
  .sitemapList a span {
    transition : color .3s ease;
  }
  .sitemapList a:hover span {
    text-decoration : none;
    color : #2984a2;
  }
  .sitemapList a:hover:before {
    color : #666;
  }
}