@charset "UTF-8";
@import url(//fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(//fonts.googleapis.com/css?family=Oswald:400,300);
/*////////////////////////////////////////////////////

	変数、mixin、プレースホルダー 定義　適宜変更・追加すること

////////////////////////////////////////////////////*/
footer, #fNav ul, .boxTxt, .box01, .box02, .boxContent01, .boxContent02, .boxContent03, .boxList01, .boxList02, .boxList03, .boxList04, .boxList05, .boxFlexList01, .dlBasic01, .boxCompany01 {
  *zoom: 1; }
  footer:after, #fNav ul:after, .boxTxt:after, .box01:after, .box02:after, .boxContent01:after, .boxContent02:after, .boxContent03:after, .boxList01:after, .boxList02:after, .boxList03:after, .boxList04:after, .boxList05:after, .boxFlexList01:after, .dlBasic01:after, .boxCompany01:after {
    content: '';
    display: table;
    clear: both; }

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

    リセット

////////////////////////////////////////////////////*/
/**
 * html5doctor.com Reset Stylesheet v1.6.1 (http://html5doctor.com/html-5-reset-stylesheet/)
 * Richard Clark (http://richclarkdesign.com)
 * http://cssreset.com
 */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: bottom;
  background: transparent; }

html, body {
  width: 100%; }

body {
  line-height: 1; }

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

ul, ol, li {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

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

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

del {
  text-decoration: line-through; }

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

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

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

input, select {
  vertical-align: middle; }

img {
  border: none;
  vertical-align: top;
  zoom: 1; }

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

	フォント・文字サイズ設定

////////////////////////////////////////////////////*/
html {
  font-size: 62.5%; }

body {
  /*font size自動調整をきる*/
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%;
  font-family: 'Noto Sans Japanese',"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", Arial, Helvetica, Verdana, sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6;
  color: #666;
  font-weight: 300; }
  @media only screen and (max-width: 480px) {
    body {
      /*@include fz($fSizeS);*/ } }

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

	共通レイアウト
		body,html
		header
			SEO用テキスト、サイトロゴ、グローバルメニュー、ヘッダーメニュー
		content
		footer
			コピーライト、ソーシャルボタン、フッターメニュー、SEOテキスト、SEOテキストエリア、ページトップボタン
		下層
			（サブメニュー、パンくずリスト、カテゴリータイトル、ページタイトル）

	※全ページ共通のレイアウトを記述してください。（他：メインビジュアル、バナー、フッター用サイトマップ、イベントニュースカルーセル、お問い合わせエリア、など・・・）

////////////////////////////////////////////////////*/
body, html {
  /*ipad対策*/
  height: 100%; }
  @media print {
    body, html {
      min-width: 1000px; } }

body {
  /*background-color: $baseColor02;*/ }
  @media only screen and (max-width: 767px) {
    body {
      min-width: 320px; } }
  @media print {
    body {
      width: 1000px; } }

#bg {
  display: table;
  table-layout: fixed;
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100%;
  z-index: 2; }
  @media print {
    #bg {
      display: none; } }
  @media only screen and (max-width: 767px) {
    #bg {
      display: none; } }
  #bg span {
    display: table-cell;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    /*width: 20vw;*/
    border-left: 1px solid #eee; }
    #bg span:first-child {
      border-left: none; }

.nicescroll-rails {
  z-index: 10 !important;
  opacity: 0.3 !important;
  width: 8px !important;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  cursor: pointer !important; }
  @media print {
    .nicescroll-rails {
      display: none; } }
  .nicescroll-rails:hover {
    opacity: 1 !important; }
  .nicescroll-rails > div {
    width: 6px !important;
    border-radius: 2px !important; }

/* ------------------------------------------------
	headerここから
------------------------------------------------ */
header {
  position: fixed;
  z-index: 4;
  width: 100%;
  top: 0;
  left: 0; }
  @media print {
    header {
      position: relative; } }

#header {
  display: table;
  width: 100%;
  height: 100px; }
  @media only screen and (max-width: 767px) {
    #header {
      height: 60px; } }
  #header:after {
    content: '';
    display: table-cell;
    width: 20%; }
    @media only screen and (max-width: 767px) {
      #header:after {
        display: none; } }

#titSite,
#txtLead,
#btnIndex {
  display: table-cell;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px; }

/* tit_site サイトロゴ*/
#titSite {
  width: 20%;
  text-align: center;
  background-color: #fff; }
  @media only screen and (max-width: 767px) {
    #titSite {
      width: auto;
      text-align: left; } }
  #titSite img {
    width: 100%;
    max-width: 205px;
    height: auto; }
    @media only screen and (max-width: 767px) {
      #titSite img {
        height: 40px;
        width: auto; } }

#txtLead {
  width: 60%;
  background-color: #fff;
  border-left: 1px solid #eee;
  color: #333;
  font-weight: 500; }
  @media only screen and (max-width: 767px) {
    #txtLead {
      display: none; } }

#btnIndex {
  display: none;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease; }
  @media only screen and (max-width: 767px) {
    #btnIndex {
      display: table-cell;
      position: relative;
      width: 60px;
      background-color: #000; }
      #btnIndex span {
        overflow: hidden;
        text-indent: -99999px; }
      #btnIndex span, #btnIndex:before, #btnIndex:after {
        display: block;
        content: '';
        width: 40px;
        height: 4px;
        border-radius: 2px;
        background-color: #fff;
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        -ms-transition: all 0.5s ease;
        -o-transition: all 0.5s ease;
        transition: all 0.5s ease; }
      #btnIndex:before, #btnIndex:after {
        position: absolute;
        left: 10px; }
      #btnIndex:before {
        top: 16px; }
      #btnIndex:after {
        bottom: 16px; } }
  #btnIndex.active {
    background-color: #eee; }
    #btnIndex.active span {
      opacity: 0; }
    #btnIndex.active:before, #btnIndex.active:after {
      background-color: #333; }
    #btnIndex.active:before {
      -webkit-transform-origin: 20px 2px;
      -ms-transform-origin: 20px 2px;
      transform-origin: 20px 2px;
      -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      transform: rotate(45deg);
      top: 28px; }
    #btnIndex.active:after {
      -webkit-transform-origin: 20px 2px;
      -ms-transform-origin: 20px 2px;
      transform-origin: 20px 2px;
      -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
      transform: rotate(-45deg);
      bottom: 28px; }

/* gNav グローバルメニュー*/
#gNav {
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }
  @media only screen and (max-width: 767px) {
    #gNav {
      padding: 10px;
      background-color: #eee;
      display: none; } }
  #gNav ul {
    display: block;
    width: 100%;
    display: table;
    table-layout: fixed; }
    @media only screen and (max-width: 767px) {
      #gNav ul {
        display: block;
        border-radius: 5px;
        overflow: hidden;
        background-color: #000; }
        #gNav ul:after {
          content: '';
          display: block;
          clear: both; } }
    #gNav ul li {
      display: table-cell;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box;
      box-sizing: border-box;
      border-left: 1px solid #fcfcfc;
      line-height: 1.2; }
      @media only screen and (max-width: 767px) {
        #gNav ul li {
          display: table;
          border-left: none;
          width: 50%;
          border-bottom: 1px solid #333;
          float: left; } }
      @media only screen and (max-width: 480px) {
        #gNav ul li {
          width: 100%;
          float: none; } }
      #gNav ul li:first-child {
        border-left: none; }
      #gNav ul li.active a {
        background-color: #4d4d4d;
        border-bottom-color: transparent !important; }
      #gNav ul li a {
        display: table-cell;
        width: 20vw;
        vertical-align: bottom;
        height: 70px;
        padding: 10px;
        background-color: #000;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
        border-bottom: 3px solid #1848A0;
        color: #999;
        text-decoration: none;
        font-size: 11px;
        font-size: 1.1rem; }
        @media print {
          #gNav ul li a {
            width: 200px; } }
        @media only screen and (max-width: 767px) {
          #gNav ul li a {
            width: 100%;
            height: 50px;
            border-bottom: none;
            position: relative;
            vertical-align: middle;
            padding: 0 10px; }
            #gNav ul li a:after {
              display: block;
              content: '';
              width: 3px;
              height: 50px;
              position: absolute;
              top: 0;
              right: 0;
              background-color: #1848A0; } }
        #gNav ul li a .en {
          color: #fff;
          font-size: 18px;
          font-size: 1.8rem;
          font-family: 'Oswald', sans-serif;
          font-weight: 400;
          font-weight: 400; }
      .PC #gNav ul li:hover a, .PC #gNav ul li.hover a {
        background-color: #595959; }
      #gNav ul li#gNav01.active a {
        background-color: #18489C;
        color: #ccc; }
        #gNav ul li#gNav01.active a .en {
          color: #fff; }
      #gNav ul li#gNav01 a {
        border-bottom-color: #18489C; }
        #gNav ul li#gNav01 a:after {
          background-color: #18489C; }
      #gNav ul li#gNav02.active a {
        background-color: #18489D;
        color: #ccc; }
      #gNav ul li#gNav02 a {
        border-bottom-color: #18489D; }
        #gNav ul li#gNav02 a:after {
          background-color: #18489D; }
      #gNav ul li#gNav03.active a {
        color: #ccc;
        background-color: #18489E; }
        #gNav ul li#gNav03.active a .en {
          color: #fff; }
      #gNav ul li#gNav03 a {
        border-bottom-color: #18489E; }
        #gNav ul li#gNav03 a:after {
          background-color: #18489E; }
      #gNav ul li#gNav04.active a {
        background-color: #18489F;
        color: #ccc; }
      #gNav ul li#gNav04 a {
        border-bottom-color: #18489F; }
        #gNav ul li#gNav04 a:after {
          background-color: #18489F; }
      #gNav ul li#gNav05.active a {
        color: #ccc;
        background-color: #1848A0; }
        #gNav ul li#gNav05.active a .en {
          color: #fff; }
      #gNav ul li#gNav05 a {
        border-bottom-color: #1848A0; }
        #gNav ul li#gNav05 a:after {
          background-color: #1848A0; }

#btnIndexClose {
  display: none;
  position: relative;
  cursor: pointer; }
  @media only screen and (max-width: 767px) {
    #btnIndexClose {
      display: block;
      margin-top: 20px;
      height: 32px; }
      #btnIndexClose:after {
        content: '';
        display: block;
        width: 12px;
        height: 12px;
        border-top: 2px solid #1848A0;
        border-right: 2px solid #1848A0;
        position: absolute;
        top: 5px;
        left: 50%;
        margin-left: -7px;
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg); }
      #btnIndexClose span {
        /*overflow: hidden;*/
        text-indent: -99999px;
        top: 20px; }
        #btnIndexClose span:before {
          top: 5px; }
        #btnIndexClose span:after {
          top: 10px; }
      #btnIndexClose span,
      #btnIndexClose span:after,
      #btnIndexClose span:before {
        content: '';
        display: block;
        position: absolute;
        width: 40px;
        height: 2px;
        border-radius: 1px;
        background-color: #1848A0;
        left: 50%;
        margin-left: -20px; } }

#btnSocial2 {
  position: absolute;
  top: -100px;
  right: 0;
  display: table;
  height: 100px;
  width: 20vw;
  font-family: 'Verdana', sans-serif;
  font-weight: 600;
  font-size: 18px;
  font-size: 1.8rem; }
  @media print {
    #btnSocial2 {
      width: 200px; } }
  @media only screen and (max-width: 767px) {
    #btnSocial2 {
      position: relative;
      top: auto;
      right: auto;
      width: 100%;
      height: 50px;
      margin-top: 10px; } }
  #btnSocial2 a {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    background-color: #ffffff;
    color: #ffffff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px;
    text-decoration: none; }
    @media only screen and (max-width: 767px) {
      #btnSocial2 a {
        border-radius: 3px; } }
    #btnSocial2 a:hover {
      background-color: #eeeeee; }

#btnFacebook {
  position: absolute;
  top: -100px;
  right: 0;
  display: table;
  height: 100px;
  width: 20vw;
  font-family: 'Verdana', sans-serif;
  font-weight: 600;
  font-size: 18px;
  font-size: 1.8rem; }
  @media print {
    #btnFacebook {
      width: 200px; } }
  @media only screen and (max-width: 767px) {
    #btnFacebook {
      position: relative;
      top: auto;
      right: auto;
      width: 100%;
      height: 50px;
      margin-top: 10px; } }
  #btnFacebook a {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    background-color: #3B5998;
    color: #fff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px;
    text-decoration: none; }
    @media only screen and (max-width: 767px) {
      #btnFacebook a {
        border-radius: 3px; } }
    #btnFacebook a:hover {
      background-color: #6a83bc; }

#btnTwitter {
  position: absolute;
  top: -100px;
  right: 20vw;
  display: table;
  height: 100px;
  width: 20vw;
  font-family: 'Verdana', sans-serif;
  font-weight: 600;
  font-size: 18px;
  font-size: 1.8rem; }
  @media print {
    #btnTwitter {
      width: 200px; } }
  @media only screen and (max-width: 767px) {
    #btnTwitter {
      position: relative;
      top: auto;
      right: auto;
      width: 100%;
      height: 50px;
      margin-top: 10px; } }
  #btnTwitter a {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    background-color: #55acee;
    color: #fff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px;
    text-decoration: none; }
    @media only screen and (max-width: 767px) {
      #btnTwitter a {
        border-radius: 3px; } }
    #btnTwitter a:hover {
      background-color: #85dcfe; }

/* ------------------------------------------------
	#contentsエリアここから
------------------------------------------------ */
#contents {
  position: relative;
  z-index: 3;
  padding-top: 170px; }
  @media only screen and (max-width: 767px) {
    #contents {
      padding-top: 60px; } }
  @media print {
    #contents {
      padding-top: 0; } }

/* ------------------------------------------------
	footerここから
------------------------------------------------ */
footer {
  padding: 50px 0;
  position: relative;
  z-index: 3;
  font-size: 13px;
  font-size: 1.3rem;
  color: #333;
  border-top: 1px solid #eee; }
  @media only screen and (max-width: 767px) {
    footer {
      padding-bottom: 0; } }
  footer a {
    text-decoration: none;
    color: #333; }

address {
  width: 40%;
  float: left;
  display: table;
  table-layout: fixed;
  font-style: normal; }
  @media only screen and (max-width: 767px) {
    address {
      width: auto;
      float: none;
      display: block; } }
  address h2,
  address .boxTxt {
    display: table-cell;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 20px;
    vertical-align: top; }
    @media only screen and (max-width: 767px) {
      address h2,
      address .boxTxt {
        display: block; } }
  address h2 {
    text-align: center; }
    address h2 img {
      width: 100%;
      max-width: 166px;
      height: auto; }
  @media only screen and (max-width: 767px) {
    address .boxTxt {
      text-align: center;
      padding: 50px 0; } }
  address .txtTel {
    white-space: nowrap; }
  address a.txtTel {
    padding-right: 10px; }

#fNav {
  width: 60%;
  float: left; }
  @media only screen and (max-width: 767px) {
    #fNav {
      width: auto;
      float: none;
      border-top: 1px solid #eee; } }
  @media only screen and (min-width: 768px) and (max-width: 1000px) {
    #fNav {
      width: 40%; } }
  #fNav ul li {
    float: left;
    width: 33.33333%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 20px 10px; }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      #fNav ul li {
        width: 50%; } }
    @media only screen and (max-width: 767px) {
      #fNav ul li {
        border-bottom: 1px solid #eee;
        width: 50%;
        padding: 0; }
        #fNav ul li a {
          display: block;
          padding: 15px 10px; }
        #fNav ul li:nth-child(odd) {
          border-right: 1px solid #eee; } }

#bnr_privacy {
  position: absolute;
  top: 50px;
  right: 10px; }
  @media only screen and (min-width: 768px) and (max-width: 1000px) {
    #bnr_privacy {
      width: 20vw;
      display: block;
      text-align: center;
      right: 0; } }
  @media only screen and (max-width: 767px) {
    #bnr_privacy {
      clear: both;
      position: relative;
      top: auto;
      right: auto;
      float: right;
      padding: 10px 10px 10px 0; } }

/*コピーライト*/
small {
  clear: both;
  display: block;
  text-align: center;
  padding-top: 50px;
  font-family: 'Oswald', sans-serif;
  font-weight: 300;
  font-size: 11px;
  font-size: 1.1rem; }
  @media only screen and (max-width: 767px) {
    small {
      clear: none;
      text-align: left;
      padding: 20px 0 0 10px;
      margin-right: 90px; } }

/* btn_pagetop ページトップボタン */
#btn_pagetop {
  cursor: pointer;
  position: fixed;
  bottom: 10px;
  right: 10px;
  opacity: 0;
  filter: alpha(opacity=0);
  /*overflow: hidden;*/
  width: 40px;
  height: 40px;
  border-radius: 100%;
  background-color: #000;
  text-indent: -99999px;
  z-index: 10;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease; }
  @media print {
    #btn_pagetop {
      display: none; } }
  #btn_pagetop.show {
    opacity: 1;
    filter: alpha(opacity=100); }
  #btn_pagetop:before {
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    border-top: 2px solid #fff;
    border-right: 2px solid #eee;
    position: absolute;
    top: 15px;
    left: 12px;
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg); }
  #btn_pagetop:hover {
    background-color: #1848A0; }

/* ------------------------------------------------
	下層共通設定ここから
------------------------------------------------ */
/* sNav サブメニュー */
#sNav {
  z-index: 2;
  background-color: #fff;
  border-top: 1px solid #eee; }
  #sNav ul {
    display: table;
    margin: 0 auto; }
    @media only screen and (max-width: 767px) {
      #sNav ul {
        width: 100%;
        table-layout: fixed; } }
  #sNav li {
    display: table-cell;
    text-align: center;
    font-size: 15px;
    font-size: 1.5rem;
    padding: 0;
    border: none; }
    #sNav li a {
      display: block;
      padding: 30px 20px;
      background-color: #fff;
      color: #333;
      text-decoration: none;
      margin: 0;
      border: none; }
      #sNav li a:hover {
        background-color: #eee;
        color: #73abea; }
    #sNav li.active a {
      background-color: #eee; }

.sNavFooter {
  display: none; }
  @media only screen and (max-width: 767px) {
    .sNavFooter {
      display: block;
      border-top: 2px solid #18489C;
      border-bottom: 2px solid #18489C;
      padding: 10px; }
      .sNavFooter li {
        padding-top: 1px; }
        .sNavFooter li:first-child {
          padding-top: 0; }
          .sNavFooter li:first-child a {
            border-radius: 5px 5px 0 0; }
        .sNavFooter li:last-child a {
          border-radius: 0 0 5px 5px; }
        .sNavFooter li a {
          display: block;
          padding: 20px;
          background-color: #eee;
          color: #333;
          font-size: 18px;
          font-size: 1.8rem;
          text-decoration: none;
          text-align: center; } }

#headPage {
  background-color: #fff;
  border-bottom: 1px solid #eee;
  position: relative;
  z-index: 2; }
  @media only screen and (max-width: 767px) {
    #headPage {
      border-top: 1px solid #eee; } }
  #headPage:after {
    content: '';
    display: block;
    position: absolute;
    bottom: -2px;
    left: 50%;
    margin-left: -500px;
    width: 100%;
    max-width: 1000px;
    height: 2px;
    background: -moz-linear-gradient(left, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
    background: -webkit-linear-gradient(left, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
    background: -o-linear-gradient(left, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
    background: -ms-linear-gradient(left, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
    background: linear-gradient(to right, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%); }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      #headPage:after {
        left: 0;
        margin-left: 0; } }
    @media only screen and (max-width: 767px) {
      #headPage:after {
        left: 0;
        margin-left: 0; } }

/* pankuzu */
#pankuzu {
  display: table;
  margin: 0 auto;
  padding: 10px 0 0; }
  @media only screen and (max-width: 767px) {
    #pankuzu {
      display: none; } }
  #pankuzu li {
    display: table-cell;
    font-size: 13px;
    font-size: 1.3rem; }
    #pankuzu li:before {
      content: '';
      display: inline-block;
      width: 6px;
      height: 6px;
      border-top: 1px solid #000;
      border-right: 1px solid #000;
      -webkit-transform-origin: center center;
      -ms-transform-origin: center center;
      transform-origin: center center;
      -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      transform: rotate(45deg);
      margin: 0 8px; }
    #pankuzu li:first-child:before {
      display: none; }
    #pankuzu li.home a {
      position: relative;
      padding-left: 20px; }
      #pankuzu li.home a:before, #pankuzu li.home a:after {
        content: '';
        display: block;
        position: absolute; }
      #pankuzu li.home a:before {
        width: 0;
        height: 0;
        border-width: 7px 8px 7px 8px;
        border-style: solid;
        border-color: transparent transparent #000 transparent;
        top: -5px;
        left: 0; }
      #pankuzu li.home a:after {
        width: 2px;
        height: 4px;
        border-left: 4px solid #000;
        border-right: 4px solid #000;
        top: 9px;
        left: 3px; }
    #pankuzu li a {
      text-decoration: none;
      color: #333; }
      #pankuzu li a:hover {
        color: #73abea; }

/* tit_cat カテゴリータイトル */
/* tit_page ページタイトル */
#titPage {
  font-size: 15px;
  font-size: 1.5rem;
  color: #333;
  text-align: center;
  padding: 50px 10px;
  line-height: 1.4; }
  #titPage .en {
    font-family: 'Oswald', sans-serif;
    font-weight: 400;
    font-size: 36px;
    font-size: 3.6rem;
    color: #000; }

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

	汎用レイアウト（レイアウトセット参照）
		ここではレイアウトに関わるスタイルのみ記載し、
		背景色や背景画像、ボーダー、シャドウなどのデザインバリエーションは、
		_design.scss内に継承クラスで指定すること
		（例：.box01.style01）

////////////////////////////////////////////////////*/
.boxImg img {
  width: 100%;
  height: auto; }

/* ------------------------------------------------
	.wrapperシリーズここから
------------------------------------------------ */
.wrapper01 {
  padding: 50px 0;
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  margin-bottom: 50px; }
  @media only screen and (max-width: 767px) {
    .wrapper01 {
      margin-bottom: 0;
      border-bottom: none; } }
  .wrapper01:last-child {
    margin-bottom: 0;
    border-bottom: none; }

.wrapper02 {
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  margin-bottom: 50px;
  padding: 0; }
  @media only screen and (max-width: 767px) {
    .wrapper02 {
      margin-bottom: 0;
      border-bottom: none; } }
  .wrapper02:last-child {
    margin-bottom: 0;
    border-bottom: none; }

.wrapper03 {
  border-top: 1px solid #eee;
  padding: 50px 10px;
  background-color: #fff; }
  .wrapper03 > .boxInner {
    max-width: 1000px;
    margin: 0 auto; }
  .wrapper03 > .boxInner + .boxInner {
    margin-top: 50px; }

#headPage + .wrapper03,
.tit03 + .wrapper03 {
  border-top: none; }

/* ------------------------------------------------
	.boxClmシリーズここから
------------------------------------------------ */
.boxClm01 {
  display: table;
  width: 100%;
  table-layout: fixed;
  /*/.clm5　ここまで*/ }
  .boxClm01 > li, .boxClm01 > .boxContent {
    display: table-cell;
    vertical-align: top;
    text-align: center;
    padding: 0 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box; }
  @media only screen and (max-width: 767px) {
    .boxClm01.clm5 {
      display: block;
      text-align: center; }
      .boxClm01.clm5:after {
        clear: both;
        display: block;
        content: ''; }
      .boxClm01.clm5 > li, .boxClm01.clm5 > .boxContent {
        width: 33.33333%;
        display: block;
        float: left; }
        .boxClm01.clm5 > li .boxImg, .boxClm01.clm5 > .boxContent .boxImg {
          width: auto; }
        .boxClm01.clm5 > li:nth-child(3n+1), .boxClm01.clm5 > .boxContent:nth-child(3n+1) {
          clear: both;
          margin-left: 16.1848A0%; }
        .boxClm01.clm5 > li:first-child, .boxClm01.clm5 > .boxContent:first-child {
          margin-left: 0 !important; }
        .boxClm01.clm5 > li:nth-child(n+4), .boxClm01.clm5 > .boxContent:nth-child(n+4) {
          margin-top: 20px; } }

.boxClm02 {
  display: table;
  width: 100vw; }
  @media only screen and (max-width: 767px) {
    .boxClm02 {
      display: block; } }
  .boxClm02 > .boxTit, .boxClm02 > .boxContent {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 50px 20px;
    display: table-cell;
    vertical-align: middle; }
    @media only screen and (max-width: 767px) {
      .boxClm02 > .boxTit, .boxClm02 > .boxContent {
        display: block;
        width: auto !important;
        border-bottom: 1px solid #eee; } }
  @media only screen and (min-width: 1600px) {
    .boxClm02:before, .boxClm02:after {
      display: table-cell;
      content: '';
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box;
      box-sizing: border-box;
      width: 20vw; }
    .boxClm02:before {
      background-color: #fcfcfc; }
    .boxClm02:after {
      background-color: #fff;
      border-left: 1px solid #eee; } }
  .boxClm02 > .boxTit {
    width: 40vw;
    background-color: #fcfcfc; }
    @media only screen and (min-width: 1600px) {
      .boxClm02 > .boxTit {
        width: 20vw;
        border-left: 1px solid #eee; } }
  .boxClm02 > .boxContent {
    width: 60vw;
    background-color: #fff;
    border-left: 1px solid #eee; }
    @media only screen and (min-width: 1600px) {
      .boxClm02 > .boxContent {
        width: 40vw; } }
  @media only screen and (min-width: 1600px) {
    .boxClm02.style01:before {
      background-color: #18489C; } }
  .boxClm02.style01 > .boxTit {
    background-color: #18489C; }

.boxClm03 {
  display: table;
  width: 100vw; }
  .Android .boxClm03 {
    width: 100%; }
  @media only screen and (max-width: 767px) {
    .boxClm03 {
      display: block; } }
  @media only screen and (min-width: 1600px) {
    .boxClm03:after {
      content: '';
      display: table-cell;
      width: 20vw;
      /*border-left: 1px solid $baseColor03;*/ } }
  .boxClm03 .boxImg,
  .boxClm03 .boxContent {
    display: table-cell;
    vertical-align: middle;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box; }
    @media only screen and (max-width: 767px) {
      .boxClm03 .boxImg,
      .boxClm03 .boxContent {
        display: block; } }
  .boxClm03 .boxImg {
    width: 60vw;
    -webkit-background-size: cover;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    height: 30vw !important; }
    @media only screen and (max-width: 767px) {
      .boxClm03 .boxImg {
        width: auto;
        height: 66vw !important; }
        .Android .boxClm03 .boxImg {
          height: 400px !important; } }
    @media only screen and (max-width: 767px) and (max-width: 767px) {
      .Android .boxClm03 .boxImg {
        height: 260px !important; } }

  .boxClm03 .boxContent {
    padding: 20px;
    background-color: #fff; }
    @media only screen and (min-width: 1600px) {
      .boxClm03 .boxContent {
        background-color: transparent; } }

/* ------------------------------------------------
	.boxContentシリーズここから
------------------------------------------------ */
.box01, .box02 {
  max-width: 1000px;
  width: auto;
  margin: 50px auto 0;
  padding: 0 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }
  .box01:first-child, .box02:first-child {
    margin-top: 0; }

.box02 {
  padding: 20px; }

/* ------------------------------------------------
	.boxContentシリーズここから
------------------------------------------------ */
.boxContent01, .boxContent02, .boxContent03 {
  max-width: 1000px;
  width: auto;
  margin: 50px auto 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }
  .boxContent01:first-child, .boxContent02:first-child, .boxContent03:first-child {
    margin-top: 0; }

.boxContent01 > .boxImg {
  margin: 20px 0; }
  .boxContent01 > .boxImg:first-child {
    margin-top: 0; }
  .boxContent01 > .boxImg:last-child {
    margin-bottom: 0; }
@media only screen and (min-width: 768px) {
  .boxContent01 > .boxTxt {
    padding: 0 10px; } }

.boxContent02 > .boxImg {
  width: 30%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  float: left; }
.boxContent02 > .boxTxt {
  width: 70%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 0 0 20px;
  float: right; }
.boxContent02.reverse > .boxImg {
  float: right; }
.boxContent02.reverse > .boxTxt {
  float: left;
  padding: 0 40px 0 0; }
@media only screen and (max-width: 767px) {
  .boxContent02 {
    /* 一列表示、画像100％ */
    /* 一列表示、画像最大サイズ設定あり */ }
    .boxContent02.type01 > .boxImg, .boxContent02.type01 > .boxTxt, .boxContent02.type01.reverse > .boxImg, .boxContent02.type01.reverse > .boxTxt, .boxContent02.type02 > .boxImg, .boxContent02.type02 > .boxTxt, .boxContent02.type02.reverse > .boxImg, .boxContent02.type02.reverse > .boxTxt {
      float: none;
      width: auto; }
    .boxContent02.type01 > .boxImg, .boxContent02.type01.reverse > .boxImg, .boxContent02.type02 > .boxImg, .boxContent02.type02.reverse > .boxImg {
      margin: 20px auto; }
      .boxContent02.type01 > .boxImg:first-child, .boxContent02.type01.reverse > .boxImg:first-child, .boxContent02.type02 > .boxImg:first-child, .boxContent02.type02.reverse > .boxImg:first-child {
        margin-top: 0; }
      .boxContent02.type01 > .boxImg:last-child, .boxContent02.type01.reverse > .boxImg:last-child, .boxContent02.type02 > .boxImg:last-child, .boxContent02.type02.reverse > .boxImg:last-child {
        margin-bottom: 0; }
    .boxContent02.type01 > .boxTxt, .boxContent02.type01.reverse > .boxTxt, .boxContent02.type02 > .boxTxt, .boxContent02.type02.reverse > .boxTxt {
      padding: 0; }
    .boxContent02.type02 > .boxImg, .boxContent02.type02.reverse > .boxImg {
      max-width: 300px; } }

.boxContent03 > .boxImg, .boxContent03 > .boxTxt {
  width: 50%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }
.boxContent03 > .boxImg {
  float: left;
  padding: 0 10px 0 0; }
.boxContent03 > .boxTxt {
  padding: 0 0 0 10px;
  float: right; }
.boxContent03.reverse > .boxImg {
  float: right;
  padding: 0 0 0 10px; }
.boxContent03.reverse > .boxTxt {
  float: left;
  padding: 0 10px 0 0; }
@media only screen and (max-width: 767px) {
  .boxContent03 {
    /* 一列表示、画像100％ */
    /* 一列表示、画像最大サイズ設定あり */ }
    .boxContent03.type01 > .boxImg, .boxContent03.type01 > .boxTxt, .boxContent03.type01.reverse > .boxImg, .boxContent03.type01.reverse > .boxTxt, .boxContent03.type02 > .boxImg, .boxContent03.type02 > .boxTxt, .boxContent03.type02.reverse > .boxImg, .boxContent03.type02.reverse > .boxTxt {
      float: none;
      width: auto; }
    .boxContent03.type01 > .boxImg, .boxContent03.type01.reverse > .boxImg, .boxContent03.type02 > .boxImg, .boxContent03.type02.reverse > .boxImg {
      padding: 0;
      margin: 20px auto; }
      .boxContent03.type01 > .boxImg:first-child, .boxContent03.type01.reverse > .boxImg:first-child, .boxContent03.type02 > .boxImg:first-child, .boxContent03.type02.reverse > .boxImg:first-child {
        margin-top: 0; }
      .boxContent03.type01 > .boxImg:last-child, .boxContent03.type01.reverse > .boxImg:last-child, .boxContent03.type02 > .boxImg:last-child, .boxContent03.type02.reverse > .boxImg:last-child {
        margin-bottom: 0; }
    .boxContent03.type01 > .boxTxt, .boxContent03.type01.reverse > .boxTxt, .boxContent03.type02 > .boxTxt, .boxContent03.type02.reverse > .boxTxt {
      padding: 0; }
    .boxContent03 > type02 > .boxImg, .boxContent03 > type02.reverse > .boxImg {
      max-width: 490px; } }

/* ------------------------------------------------
	.boxFlexContentシリーズここから
------------------------------------------------ */
.boxFlexContent01 {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-direction: row;
  -webkit-flex-direction: row;
  flex-direction: row;
  -ms-align-items: center;
  -moz-align-items: center;
  -webkit-align-items: center;
  align-items: center;
  /*IE9以下*/
  width: 100% \9;
  /*/.type01*/
  /*/.type02*/ }
  .boxFlexContent01.reverse {
    -ms-flex-direction: row-reverse;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse; }
  @media only screen and (max-width: 767px) {
    .boxFlexContent01 {
      display: block; } }
  .boxFlexContent01 > .boxImg {
    width: 40%; }
    @media only screen and (max-width: 767px) {
      .boxFlexContent01 > .boxImg {
        width: 100%; } }
  .boxFlexContent01 > .boxTxt {
    width: 60%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 20px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .boxFlexContent01 > .boxTxt {
        width: 100%;
        padding: 20px 10px 50px; } }
  .boxFlexContent01 > .boxImg, .boxFlexContent01 > .boxTxt {
    display: table-cell\9;
    vertical-align: middle\9; }
  .boxFlexContent01.type01 > .boxImg, .boxFlexContent01.type01 > .boxTxt {
    width: 50%; }
    @media only screen and (max-width: 767px) {
      .boxFlexContent01.type01 > .boxImg, .boxFlexContent01.type01 > .boxTxt {
        width: 100%; } }
  .boxFlexContent01.type02 > .boxImg {
    width: 60%; }
    @media only screen and (max-width: 767px) {
      .boxFlexContent01.type02 > .boxImg {
        width: 100%; } }
  .boxFlexContent01.type02 > .boxTxt {
    width: 40%; }
    @media only screen and (max-width: 767px) {
      .boxFlexContent01.type02 > .boxTxt {
        width: 100%; } }

/* ------------------------------------------------
	.boxListシリーズここから
------------------------------------------------ */
.boxList01, .boxList02, .boxList03, .boxList04, .boxList05 {
  max-width: 1000px;
  width: auto;
  margin: 50px auto 0; }
  .boxList01:first-child, .boxList02:first-child, .boxList03:first-child, .boxList04:first-child, .boxList05:first-child {
    margin-top: 0; }

.boxList01 > .boxContent > .boxImg, .boxList02 > .boxContent > .boxImg, .boxList03 > .boxContent > .boxImg {
  margin: 20px auto; }
  .boxList01 > .boxContent > .boxImg:first-child, .boxList02 > .boxContent > .boxImg:first-child, .boxList03 > .boxContent > .boxImg:first-child {
    margin-top: 0; }
  .boxList01 > .boxContent > .boxImg:last-child, .boxList02 > .boxContent > .boxImg:last-child, .boxList03 > .boxContent > .boxImg:last-child {
    margin-bottom: 0; }

.boxList01 > .boxContent > .boxTxt, .boxList02 > .boxContent > .boxTxt, .boxList03 > .boxContent > .boxTxt {
  padding: 0 10px; }

/* 1列表示 */
/* 画像とテキストの並列表示 */
.boxList01 {
  /*スマホレイアウトバリエーション*/ }
  .boxList01 > .boxContent {
    width: 50%;
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 50px; }
    .boxList01 > .boxContent:last-child, .boxList01 > .boxContent:nth-last-child(2):nth-child(odd) {
      margin-bottom: 0; }
    .boxList01 > .boxContent:nth-child(odd) {
      clear: both;
      padding-right: 10px; }
    .boxList01 > .boxContent:nth-child(even) {
      padding-left: 10px; }
    .boxList01 > .boxContent > .boxImg {
      max-width: 480px; }
  @media only screen and (max-width: 767px) {
    .boxList01 {
      /*1列表示*/
      /*/.type01*/
      /*1列表示、画像とテキストを1:1で並列表示*/ }
      .boxList01.type01 > .boxContent {
        width: 100%;
        margin-bottom: 50px;
        float: none; }
        .boxList01.type01 > .boxContent:last-child {
          margin-bottom: 0; }
        .boxList01.type01 > .boxContent:nth-child(odd) {
          padding-right: 0; }
        .boxList01.type01 > .boxContent:nth-child(even) {
          padding-left: 0; }
        .boxList01.type01 > .boxContent:nth-last-child(2):nth-child(odd) {
          margin-bottom: 50px; }
      .boxList01.type01 > .space01, .boxList01.type01 > .space02 {
        display: none; }
      .boxList01.type02 > .boxContent {
        display: table;
        width: 100%;
        margin-bottom: 20px; }
        .boxList01.type02 > .boxContent:last-child {
          margin-bottom: 0; }
        .boxList01.type02 > .boxContent > .boxImg, .boxList01.type02 > .boxContent > .boxTxt {
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          -o-box-sizing: border-box;
          -ms-box-sizing: border-box;
          box-sizing: border-box;
          display: table-cell;
          vertical-align: top; }
        .boxList01.type02 > .boxContent > .boxTxt {
          padding-left: 0 0 0 10px; }
        .boxList01.type02 > .boxContent:nth-child(odd) {
          padding-right: 0; }
        .boxList01.type02 > .boxContent:nth-child(even) {
          padding-left: 0; }
        .boxList01.type02 > .boxContent:nth-last-child(2):nth-child(odd) {
          margin-bottom: 50px; }
        .boxList01.type02 > .boxContent > .boxImg {
          width: 50%; }
      .boxList01.type02 > .space01, .boxList01.type02 > .space02 {
        display: none; } }

/*/.boxList01*/
.boxList02 {
  /*.boxContent*/
  /*スマホレイアウトバリエーション*/ }
  .boxList02 > .boxContent {
    width: 33.33333%;
    float: left;
    padding: 0 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box; }
    @media only screen and (max-width: 767px) {
      .boxList02 > .boxContent {
        width: 100%;
        margin-bottom: 50px;
        float: none; }
        .boxList02 > .boxContent:last-child {
          margin-bottom: 0; } }
    .boxList02 > .boxContent:nth-child(3n+1) {
      clear: both; }
    @media only screen and (max-width: 767px) {
      .boxList02 > .boxContent > .boxImg {
        max-width: 313.33333px; } }
  @media only screen and (max-width: 767px) {
    .boxList02 {
      /* 画像を横100%表示。スマホでは767pxの画像を用意すること。 */
      /* 画像とテキストを1:2で並列表示; */
      /*/.type02*/ }
      .boxList02.type01.boxContent > .boxImg {
        width: 100%;
        max-width: none; }
      .boxList02.type02 > .boxContent {
        display: table;
        width: 100%;
        margin-bottom: 20px; }
        .boxList02.type02 > .boxContent:last-child {
          margin-bottom: 0; }
        .boxList02.type02 > .boxContent > .boxImg, .boxList02.type02 > .boxContent > .boxTxt {
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          -o-box-sizing: border-box;
          -ms-box-sizing: border-box;
          box-sizing: border-box;
          display: table-cell;
          vertical-align: top; }
        .boxList02.type02 > .boxContent > .boxTxt {
          padding-left: 0 0 0 10px; }
        .boxList02.type02 > .boxContent > .boxImg {
          width: 25%;
          margin-bottom: 0; } }

/*/.boxList02*/
.boxList03 {
  /*スマホレイアウトバリエーション*/ }
  .boxList03 > .boxContent {
    width: 25%;
    float: left;
    padding: 0 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box; }
    .boxList03 > .boxContent:nth-child(n+5) {
      margin-top: 20px; }
    .boxList03 > .boxContent:nth-child(4n+1) {
      clear: both; }
    @media only screen and (max-width: 767px) {
      .boxList03 > .boxContent {
        width: 50%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
        margin-bottom: 50px; }
        .boxList03 > .boxContent:nth-child(odd) {
          clear: both;
          padding: 0 10px 0 0; }
        .boxList03 > .boxContent:nth-child(even) {
          padding: 0 0 0 10px; } }
    @media only screen and (max-width: 767px) {
      .boxList03 > .boxContent > .boxImg {
        max-width: 230px; } }
  @media only screen and (max-width: 767px) {
    .boxList03 {
      /* 一列表示 */
      /*/.type01*/
      /* 一列表示、画像とテキストを1:3で並列表示; */
      /*/.type02*/ }
      .boxList03.type01 > .boxContent {
        width: 100%;
        margin-bottom: 50px;
        float: none; }
        .boxList03.type01 > .boxContent:last-child {
          margin-bottom: 0; }
      .boxList03.type02 > .boxContent {
        display: table;
        width: 100%;
        margin-bottom: 20px; }
        .boxList03.type02 > .boxContent:last-child {
          margin-bottom: 0; }
        .boxList03.type02 > .boxContent > .boxImg, .boxList03.type02 > .boxContent > .boxTxt {
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          -o-box-sizing: border-box;
          -ms-box-sizing: border-box;
          box-sizing: border-box;
          display: table-cell;
          vertical-align: top; }
        .boxList03.type02 > .boxContent > .boxTxt {
          padding-left: 0 0 0 10px; }
        .boxList03.type02 > .boxContent:nth-child(even), .boxList03.type02 > .boxContent:nth-child(odd) {
          padding: 0; }
        .boxList03.type02 > .boxContent > .boxImg {
          width: 25%; } }

/*/.boxList03*/
.boxList04 {
  /* 画像とテキストの位置を逆転 */
  /*スマホレイアウトバリエーション*/ }
  .boxList04 > .boxContent {
    width: 50%;
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box; }
    .boxList04 > .boxContent:nth-child(odd) {
      padding-right: 10px; }
    .boxList04 > .boxContent:nth-child(even) {
      padding-left: 10px; }
    .boxList04 > .boxContent > .boxImg {
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box;
      box-sizing: border-box;
      float: left;
      width: 50%;
      padding-right: 5px; }
      @media only screen and (max-width: 767px) {
        .boxList04 > .boxContent > .boxImg {
          width: auto;
          max-width: 240px;
          float: none;
          margin: 20px auto; }
          .boxList04 > .boxContent > .boxImg:first-child {
            margin-top: 0; }
          .boxList04 > .boxContent > .boxImg:last-child {
            margin-bottom: 0; } }
    .boxList04 > .boxContent > .boxTxt {
      margin-left: 50%;
      padding-left: 5px; }
      @media only screen and (max-width: 767px) {
        .boxList04 > .boxContent > .boxTxt {
          margin-left: 0;
          padding: 0 10px; } }
  .boxList04.reverse > .boxContent > .boxImg {
    float: right;
    padding-right: 0;
    padding-left: 5px; }
    @media only screen and (max-width: 767px) {
      .boxList04.reverse > .boxContent > .boxImg {
        float: none; } }
  .boxList04.reverse > .boxContent > .boxTxt {
    margin-left: 0;
    margin-right: 50%;
    padding-left: 0;
    padding-right: 5px; }
    @media only screen and (max-width: 767px) {
      .boxList04.reverse > .boxContent > .boxTxt {
        margin-right: 0;
        padding: 0 10px; } }
  @media only screen and (max-width: 767px) {
    .boxList04 {
      /* 一列表示 */
      /*/.type01*/
      /*/.type02*/ }
      .boxList04.type01 > .boxContent {
        width: 100%;
        margin-bottom: 50px;
        float: none; }
        .boxList04.type01 > .boxContent:last-child {
          margin-bottom: 0; }
        .boxList04.type01 > .boxContent:nth-child(even), .boxList04.type01 > .boxContent:nth-child(odd) {
          padding: 0; }
        .boxList04.type01 > .boxContent > .boxImg {
          float: none; }
      .boxList04.type02 > .boxContent {
        display: table;
        width: 100%;
        margin-bottom: 20px; }
        .boxList04.type02 > .boxContent:last-child {
          margin-bottom: 0; }
        .boxList04.type02 > .boxContent > .boxImg, .boxList04.type02 > .boxContent > .boxTxt {
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          -o-box-sizing: border-box;
          -ms-box-sizing: border-box;
          box-sizing: border-box;
          display: table-cell;
          vertical-align: top; }
        .boxList04.type02 > .boxContent > .boxTxt {
          padding-left: 0 0 0 10px; }
        .boxList04.type02 > .boxContent:nth-child(even), .boxList04.type02 > .boxContent:nth-child(odd) {
          padding: 0; }
        .boxList04.type02 > .boxContent > .boxImg {
          width: 25%;
          padding: 0; }
      .boxList04.type02.reverse > .boxContent {
        display: block; }
        .boxList04.type02.reverse > .boxContent > .boxImg, .boxList04.type02.reverse > .boxContent > .boxTxt {
          display: block; }
        .boxList04.type02.reverse > .boxContent .boxTxt {
          padding: 0 10px 0 0;
          margin-right: 25%; } }

/*/.boxList04*/
.boxList05 {
  /*.boxList05を余白つきの枠で囲む場合*/ }
  .boxList05 > .boxContent {
    width: 33.33333%;
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px; }
    .boxList05 > .boxContent:nth-child(3n+1) {
      clear: both; }
    .boxList05 > .boxContent:nth-child(n+4) {
      margin-top: 20px; }
    @media only screen and (max-width: 767px) {
      .boxList05 > .boxContent {
        width: 100%;
        margin: 0 0 20px !important; }
        .boxList05 > .boxContent:last-child {
          margin-bottom: 0 !important; } }
    .boxList05 > .boxContent > .boxImg {
      width: 100px;
      float: left; }
      @media only screen and (max-width: 480px) {
        .boxList05 > .boxContent > .boxImg {
          width: 50px; } }
    .boxList05 > .boxContent > .boxTxt {
      padding-left: 10px;
      margin-left: 100px; }
      @media only screen and (max-width: 480px) {
        .boxList05 > .boxContent > .boxTxt {
          margin-left: 50px; } }
  .boxList05.reverse > .boxContent > .boxImg {
    float: right; }
  .boxList05.reverse > .boxContent > .boxTxt {
    padding-left: 0;
    padding-right: 10px;
    margin-left: 0;
    margin-right: 100px; }
    @media only screen and (max-width: 480px) {
      .boxList05.reverse > .boxContent > .boxTxt {
        margin-left: 0;
        margin-right: 50px; } }

/*/.boxList05*/
/* ------------------------------------------------
	.boxFlexListシリーズここから
------------------------------------------------ */
.boxFlexList01 {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-direction: row;
  -webkit-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap; }
  @media only screen and (max-width: 767px) {
    .boxFlexList01 {
      display: block; } }
  .boxFlexList01 > .boxContent {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    width: 33.33333%; }
    .boxFlexList01 > .boxContent > .boxTxt {
      padding: 10px; }
  .boxFlexList01.row4 > .boxContent {
    width: 25%; }
  @media only screen and (max-width: 767px) {
    .boxFlexList01 .boxContent, .boxFlexList01.row4 > .boxContent {
      width: 100%; }
    .boxFlexList01.type01 > .boxContent, .boxFlexList01.row4.type01 > .boxContent {
      width: 50%;
      float: left; } }

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

	汎用スタイルパターン（レイアウトセット参照）
		ここでは_layout.scssで用意したレイアウトパターンに適用する
		スタイルのバリエーション(背景色や背景画像、ボーダー、シャドウなど)を継承クラスとして指定してください。
		例：
			.box01,
			.box02 {
				&.style01 {
	
				}
				&.style02 {
	
				}
			}

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

	テキスト、見出しの汎用スタイル

////////////////////////////////////////////////////*/
/* ------------------------------------------------
	テキスト
------------------------------------------------ */
.txtLead01 {
  font-size: 15px;
  font-size: 1.5rem;
  text-align: center;
  color: #333;
  margin-top: 20px; }
  .txtLead01:last-child {
    margin-bottom: 0; }

.txtLead02 {
  font-size: 15px;
  font-size: 1.5rem;
  text-align: center;
  color: #333;
  margin-top: 20px;
  font-weight: 600; }
  .txtLead02:last-child {
    margin-bottom: 0; }

.txtEm01 {
  font-size: 15px;
  font-size: 1.5rem;
  color: #000;
  font-weight: 600; }

.txtEm02 {
  font-size: 15px;
  font-size: 1.5rem;
  color: #000;
  font-weight: 400;
  padding-bottom: 1px;
  border-bottom: 1px dotted #18489D; }

.txtFax01 {
  font-family: 'Oswald', sans-serif;
  font-weight: 400;
  font-size: 18px;
  font-size: 1.8rem;
  color: #000; }

.txtCaption01 {
  text-align: center;
  margin-top: 10px; }

/* ------------------------------------------------
	見出し
------------------------------------------------ */
.tit00 {
  text-align: center;
  font-weight: normal;
  font-size: 18px;
  font-size: 1.8rem;
  color: #fff;
  margin-bottom: 30px;
  line-height: 1.2; }
  .tit00:last-child {
    margin-bottom: 0; }
  .tit00 .en {
    font-family: 'Oswald', sans-serif;
    font-weight: 400;
    font-size: 36px;
    font-size: 3.6rem; }

.tit01 {
  text-align: center;
  font-weight: normal;
  font-size: 18px;
  font-size: 1.8rem;
  color: #000;
  margin-bottom: 30px;
  line-height: 1.2; }
  .tit01:last-child {
    margin-bottom: 0; }
  .tit01 .en {
    font-family: 'Oswald', sans-serif;
    font-weight: 400;
    font-size: 36px;
    font-size: 3.6rem; }

.tit02 {
  padding-top: 20px;
  font-weight: normal;
  color: #000;
  font-size: 18px;
  font-size: 1.8rem;
  text-align: center;
  margin-bottom: 10px; }
  .tit02:before {
    content: '';
    display: block;
    width: 80px;
    height: 2px;
    margin: 0 auto 20px;
    background: -moz-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
    background: -webkit-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
    background: -o-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
    background: -ms-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
    background: linear-gradient(to right, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%); }
  @media only screen and (min-width: 768px) {
    .tit02.type01 {
      padding-bottom: 20px;
      margin-bottom: 0;
      padding-top: 0; }
      .tit02.type01:before {
        display: none; } }
  @media only screen and (min-width: 768px) {
    .tit02.type01:after {
      content: '';
      display: block;
      width: 80px;
      height: 2px;
      margin: 20px auto 0;
      background: -moz-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
      background: -webkit-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
      background: -o-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
      background: -ms-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
      background: linear-gradient(to right, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%); } }

.tit03 {
  padding: 20px;
  font-size: 24px;
  font-size: 2.4rem;
  text-align: center;
  background-color: #fcfcfc;
  text-align: center;
  margin: 0;
  font-weight: normal;
  color: #000;
  border-top: 1px solid #eee;
  position: relative; }
  .tit03:before {
    content: '';
    display: block;
    width: 200px;
    height: 2px;
    background: -moz-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
    background: -webkit-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
    background: -o-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
    background: -ms-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
    background: linear-gradient(to right, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
    position: absolute;
    top: -1px;
    left: 50%;
    margin-left: -100px; }
  .tit03.noBorder {
    border-top: none; }
    .tit03.noBorder:before {
      display: none; }

.titEn01 {
  font-family: 'Oswald', sans-serif;
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  color: #000;
  margin-bottom: 10px; }
  @media only screen and (max-width: 767px) {
    .titEn01 {
      text-align: center; } }

.titBasic01 {
  font-weight: normal;
  font-size: 18px;
  font-size: 1.8rem;
  color: #333;
  border-bottom: 1px dotted #ccc;
  border-top: 2px solid #000;
  padding: 10px 0;
  max-width: 1000px;
  margin: 0 auto 10px; }

.titBasic02 {
  font-weight: normal;
  font-size: 18px;
  font-size: 1.8rem;
  color: #333;
  margin-bottom: 10px;
  padding: 0 0 0 20px;
  position: relative; }
  .titBasic02:before {
    display: block;
    content: '';
    width: 8px;
    height: 8px;
    position: absolute;
    top: 7px;
    left: 1px;
    border-style: solid;
    border-color: #18489C #18489D #18489E #18489F;
    border-width: 2px;
    border-radius: 100%; }

.titBasic03 {
  color: #333;
  font-size: 15px;
  font-size: 1.5rem;
  margin-bottom: 10px;
  font-weight: 600; }

.titBasic04 {
  color: #333;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: normal;
  margin-bottom: 10px; }

.titBasic03.center,
.titBasic04.center {
  text-align: center; }

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

	汎用リンク

////////////////////////////////////////////////////*/
/* ------------------------------------------------
	ベース設定
------------------------------------------------ */
a {
  color: #2076d7;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease; }
  a:hover {
    color: #73abea; }

/* ------------------------------------------------
	テキストリンク
------------------------------------------------ */
/* インラインリンク */
.link01, .linkBlock01 {
  text-decoration: none;
  padding-left: 10px;
  position: relative; }
  .link01:before, .linkBlock01:before {
    border-width: 3px 0 3px 4px;
    border-color: transparent transparent transparent #2076d7;
    display: block;
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    position: absolute;
    top: 4px;
    left: 3px; }
  .link01:hover, .linkBlock01:hover {
    text-decoration: underline; }

/*　ブロックリンク　*/
.linkBlock01 {
  display: block; }
  .linkBlock01:before {
    top: 7px; }

/* ------------------------------------------------
	ボタン
------------------------------------------------ */
.btn01 {
  margin: 30px 0;
  text-align: center; }
  .btn01:first-child {
    margin-top: 0; }
  .btn01:last-child {
    margin-bottom: 0; }
  .btn01 > a, .btn01 > span, .btn01 > input, .btn01 > button {
    max-width: 640px;
    margin: 0 auto;
    display: block;
    padding: 15px 10px;
    background-color: #000;
    border-radius: 5px;
    border: none;
    text-decoration: none;
    color: #fff;
    font-size: 18px;
    font-size: 1.8rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box; }
    .btn01 > a:hover, .btn01 > span:hover, .btn01 > input:hover, .btn01 > button:hover {
      background-color: #1848A0; }
  .btn01.facebook > a, .btn01.facebook > span, .btn01.facebook > input {
    background-color: #4b68a8; }
    .btn01.facebook > a:hover, .btn01.facebook > span:hover, .btn01.facebook > input:hover {
      background-color: #6a83bc; }

.btnTel01 {
  margin: 30px 0;
  text-align: center; }
  .btnTel01:first-child {
    margin-top: 0; }
  .btnTel01:last-child {
    margin-bottom: 0; }
  .btnTel01 a {
    max-width: 640px;
    color: #333;
    text-decoration: none;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    font-family: 'Oswald', sans-serif;
    font-weight: 400;
    font-size: 20px;
    font-size: 2rem; }
    @media only screen and (max-width: 767px) {
      .btnTel01 a {
        display: block;
        padding: 15px 10px;
        background-color: #000;
        border-radius: 5px;
        color: #fff; } }
  .btnTel01 span {
    padding: 0 0 0 10px; }
    @media only screen and (max-width: 767px) {
      .btnTel01 span {
        display: block;
        margin-top: 5px; } }

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

	汎用リスト

////////////////////////////////////////////////////*/
/* ------------------------------------------------
	ul li
------------------------------------------------ */
.ulBasic01 li {
  padding-left: 15px;
  position: relative; }
  .ulBasic01 li:before {
    content: '';
    display: block;
    width: 4px;
    height: 4px;
    background-color: #333;
    position: absolute;
    top: 7px;
    left: 2px;
    border-radius: 100%; }

/* 取引先などの並列リスト */
.ulList01 {
  text-align: center; }
  .ulList01 li {
    white-space: nowrap;
    display: inline-block;
    padding: 5px 10px 0 0; }
    @media only screen and (max-width: 480px) {
      .ulList01 li {
        white-space: normal;
        padding: 10px 0 0;
        display: block; } }
    .ulList01 li:after {
      content: '/';
      padding-left: 10px; }
      @media only screen and (max-width: 480px) {
        .ulList01 li:after {
          display: none; } }
    .ulList01 li:last-child:after {
      display: none; }

/* リンクリスト */
.ulLink01 li {
  border-bottom: 1px solid #eee;
  background-color: #fff;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  position: relative; }
  .ulLink01 li:hover {
    background-color: #fcfcfc; }
  .ulLink01 li:after {
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    border-top: 2px solid #ccc;
    border-right: 2px solid #ccc;
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    right: 9px;
    top: 50%;
    margin-top: -8px; }
  .ulLink01 li.blank:after {
    width: 22px;
    height: 22px;
    border: none;
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    background: url(../img/ico_link01.png) 0 0 no-repeat;
    -webkit-background-size: 22px;
    background-size: 22px;
    right: 4px;
    margin-top: -11px; }
  .ulLink01 li a {
    display: block;
    padding: 10px 30px 10px 10px;
    color: #666;
    text-decoration: none; }
    .ulLink01 li a:hover {
      color: #73abea; }

.ulLink02 {
  text-align: center; }
  .ulLink02 li {
    display: inline;
    margin: 0 10px;
    white-space: nowrap; }
    .ulLink02 li a {
      text-decoration: none;
      padding-left: 10px;
      position: relative; }
      .ulLink02 li a:before {
        border-width: 3px 0 3px 4px;
        border-color: transparent transparent transparent #2076d7;
        display: block;
        content: '';
        width: 0;
        height: 0;
        border-style: solid;
        position: absolute;
        top: 4px;
        left: 3px; }
      .ulLink02 li a:hover {
        text-decoration: underline; }

/* 注釈用 */
.ulCaution01 {
  padding-left: 1em; }
  .ulCaution01 li {
    text-align: left;
    text-indent: -1em; }

/* サムネイルメニューリスト */
/* 電話番号・Fax番号リスト */
.ulAddress01 {
  margin-top: 20px; }
  .ulAddress01:first-child {
    margin-top: 0; }
  .ulAddress01 li {
    margin: 20px 0 0; }
    .ulAddress01 li:first-child {
      margin-top: 0; }

/*ニュースリスト*/
.ulNews01 li {
  display: table;
  line-height: 1.6;
  padding-top: 10px; }
  @media only screen and (max-width: 767px) {
    .ulNews01 li {
      width: 100%;
      border-bottom: 1px dotted #ccc;
      padding: 10px 0; } }
  @media only screen and (max-width: 480px) {
    .ulNews01 li {
      display: block; } }
  .ulNews01 li:first-child {
    padding-top: 0; }
  .ulNews01 li a {
    text-decoration: none;
    position: relative; }
    @media only screen and (max-width: 767px) {
      .ulNews01 li a {
        padding-right: 20px;
        display: block; }
        .ulNews01 li a:after {
          content: '';
          display: block;
          width: 15px;
          height: 15px;
          border-top: 2px solid #333;
          border-right: 2px solid #333;
          -webkit-transform-origin: center center;
          -ms-transform-origin: center center;
          transform-origin: center center;
          -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
          transform: rotate(45deg);
          position: absolute;
          right: 4px;
          top: 50%;
          margin-top: -10px; } }
  .ulNews01 li .date,
  .ulNews01 li .data {
    display: table-cell;
    vertical-align: top;
    text-align: left; }
    @media only screen and (max-width: 480px) {
      .ulNews01 li .date,
      .ulNews01 li .data {
        display: block; } }
  .ulNews01 li .date {
    width: 100px;
    color: #333;
    font-weight: 500; }

/* ------------------------------------------------
	ol li
------------------------------------------------ */
.olBasic01 li {
  list-style: decimal;
  margin-left: 2em; }

/* ------------------------------------------------
	記述リスト dl dt dd
------------------------------------------------ */
.dlBasic01 dt, .dlBasic01 dd {
  padding: 10px 0; }
  .dlBasic01 dt:first-child, .dlBasic01 dt:nth-child(2), .dlBasic01 dd:first-child, .dlBasic01 dd:nth-child(2) {
    padding-top: 0; }
  .dlBasic01 dt:last-child, .dlBasic01 dt:nth-last-child(2), .dlBasic01 dd:last-child, .dlBasic01 dd:nth-last-child(2) {
    padding-bottom: 0; }
.dlBasic01 dt {
  clear: both;
  float: left;
  width: 180px;
  line-height: 1.4;
  font-size: 15px;
  font-size: 1.5rem;
  color: #333; }
  @media only screen and (max-width: 480px) {
    .dlBasic01 dt {
      float: none;
      width: auto; } }
.dlBasic01 dd {
  margin-left: 180px;
  padding-left: 10px;
  position: relative; }
  @media only screen and (max-width: 480px) {
    .dlBasic01 dd {
      margin-left: 0;
      padding-left: 2rem; } }
  .dlBasic01 dd:before {
    border-width: 3px 0 3px 4px;
    border-color: transparent transparent transparent #000;
    display: block;
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    position: absolute;
    top: 18px;
    left: 0; }
    @media only screen and (max-width: 480px) {
      .dlBasic01 dd:before {
        left: 10px; } }
  .dlBasic01 dd:nth-child(2):before {
    top: 8px; }

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

	汎用テーブル 
		※入れ子にした際に孫のテーブルにスタイルが引き継がれないよう、
		　　&>を使用したスタイル設定を推奨

////////////////////////////////////////////////////*/
/* ------------------------------------------------
	テーブル
------------------------------------------------ */
/*ベーシックなテーブルスタイル*/
.tbBasic01 {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  width: 100%; }
  .tbBasic01 > thead > tr {
    position: relative; }
    .tbBasic01 > thead > tr > th {
      padding: 15px;
      background-color: #333;
      border-top: 1px solid #1848A0;
      border-left: 1px dotted #1848A0;
      color: #fff;
      font-weight: 500; }
      .tbBasic01 > thead > tr > th:first-child {
        border-left: none; }
    .tbBasic01 > thead > tr:first-child > th {
      border-top: 1px solid #000; }
  .tbBasic01 > tbody > tr > th, .tbBasic01 > tbody > tr > td, .tbBasic01 > tr > th, .tbBasic01 > tr > td {
    padding: 15px; }
  .tbBasic01 > tbody > tr > th, .tbBasic01 > tr > th {
    background-color: #eee;
    border-bottom: 1px solid #fff;
    font-weight: normal;
    color: #333;
    white-space: nowrap;
    vertical-align: middle; }
    @media only screen and (max-width: 767px) {
      .tbBasic01 > tbody > tr > th, .tbBasic01 > tr > th {
        vertical-align: top; } }
  .tbBasic01 > tbody > tr > td, .tbBasic01 > tr > td {
    background-color: #fcfcfc;
    border-bottom: 1px solid #eee;
    vertical-align: top;
    border-left: 1px dotted #ccc; }
  .tbBasic01 > tbody > tr > th + td, .tbBasic01 > tr > th + td {
    border-left: 2px solid #ccc; }
  .tbBasic01 > tbody > tr:last-child > th, .tbBasic01 > tbody > tr:last-child > td, .tbBasic01 > tr:last-child > th, .tbBasic01 > tr:last-child > td {
    border-bottom: none; }
  .tbBasic01.autoW {
    width: auto; }
  @media only screen and (max-width: 767px) {
    .tbBasic01.type01 {
      display: block; }
      .tbBasic01.type01 > tbody, .tbBasic01.type01 > thead {
        display: block; }
      .tbBasic01.type01 > tbody > tr, .tbBasic01.type01 > tr {
        display: block;
        width: auto !important; }
        .tbBasic01.type01 > tbody > tr > th, .tbBasic01.type01 > tbody > tr > td, .tbBasic01.type01 > tr > th, .tbBasic01.type01 > tr > td {
          display: block;
          width: auto !important; }
        .tbBasic01.type01 > tbody > tr > td, .tbBasic01.type01 > tr > td {
          border-left: none !important; }
          .tbBasic01.type01 > tbody > tr > td:last-child, .tbBasic01.type01 > tr > td:last-child {
            border-bottom: 1px solid #ccc; }
        .tbBasic01.type01 > tbody > tr:last-child > td:last-child, .tbBasic01.type01 > tr:last-child > td:last-child {
          border-bottom: none; } }

/*沿革用のテーブルスタイル*/
.tbBasic02 {
  margin: 0 auto; }
  .tbBasic02 > tbody > tr > th, .tbBasic02 > tbody > tr > td, .tbBasic02 > tr > th, .tbBasic02 > tr > td {
    vertical-align: top;
    padding: 0 0 20px; }
  .tbBasic02 > tbody > tr > th, .tbBasic02 > tr > th {
    white-space: nowrap;
    font-weight: normal;
    padding-right: 20px;
    text-align: right;
    color: #000;
    font-size: 15px;
    font-size: 1.5rem; }
    @media only screen and (max-width: 480px) {
      .tbBasic02 > tbody > tr > th, .tbBasic02 > tr > th {
        padding-right: 10px;
        font-size: 14px;
        font-size: 1.4rem; } }
  .tbBasic02 > tbody > tr > th + td, .tbBasic02 > tr > th + td {
    padding-left: 20px;
    position: relative; }
    @media only screen and (max-width: 480px) {
      .tbBasic02 > tbody > tr > th + td, .tbBasic02 > tr > th + td {
        padding-left: 10px; } }
    .tbBasic02 > tbody > tr > th + td:before, .tbBasic02 > tr > th + td:before {
      border-width: 3px 0 3px 5px;
      border-color: transparent transparent transparent #2076d7;
      display: block;
      content: '';
      width: 0;
      height: 0;
      border-style: solid;
      position: absolute;
      top: 8px;
      left: 0; }
  .tbBasic02 > tbody > tr:last-child > th, .tbBasic02 > tbody > tr:last-child > td, .tbBasic02 > tr:last-child > th, .tbBasic02 > tr:last-child > td {
    padding-bottom: 0; }

/*装飾のないシンプルなテーブル*/
.tbSimple01 {
  width: auto !important;
  border: none !important;
  background: none !important; }
  .tbSimple01 > tbody > tr > th, .tbSimple01 > tbody > tr > td, .tbSimple01 > tr > th, .tbSimple01 > tr > td {
    text-align: left !important;
    vertical-align: top !important;
    width: auto !important;
    border: none !important;
    background: none !important;
    padding: 0 !important;
    margin: 0 !important; }
  .tbSimple01 > tbody > tr > th, .tbSimple01 > tr > th {
    white-space: nowrap;
    padding-right: 1em !important;
    font-weight: normal; }

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

	その他の汎用スタイル

////////////////////////////////////////////////////*/
/* ページ内リンク用スタイル　※他クラスとの併用はさけ、必ず単体で利用すること */
.pageLink01 {
  padding-top: 170px;
  margin-top: -170px;
  vertical-align: top; }
  @media only screen and (max-width: 767px) {
    .pageLink01 {
      padding-top: 60px;
      margin-top: -60px; } }

/* ------------------------------------------------
	デバイスごとの表示切り分け
	例： <br class="pc">
------------------------------------------------ */
@media only screen and (max-width: 767px) {
  .pc {
    display: none; } }

@media only screen and (min-width: 768px) {
  .sp {
    display: none; } }

/* ------------------------------------------------
	スペース
------------------------------------------------ */
.space01 {
  clear: both;
  height: 50px; }

.space02 {
  clear: both;
  height: 20px; }

.boxCenter01 {
  text-align: center; }

/* ------------------------------------------------
	囲み枠
------------------------------------------------ */
.boxEnclosure01 {
  margin: 20px 0;
  padding: 20px;
  background-color: #fcfcfc;
  border: 1px solid #eee; }
  .boxEnclosure01:first-child {
    margin-top: 0; }
  .boxEnclosure01:last-child {
    margin-bottom: 0; }
  .tit01 + .boxEnclosure01, .tit02 + .boxEnclosure01, .titEn01 + .boxEnclosure01, .titBasic01 + .boxEnclosure01, .titBasic02 + .boxEnclosure01, .titBasic03 + .boxEnclosure01, .titBasic04 + .boxEnclosure01 {
    margin-top: 0; }

/* ------------------------------------------------
	画像スタイル
------------------------------------------------ */
.imgStyle01 img {
  border-radius: 100%; }

.boxImg01 {
  margin: 0 auto;
  text-align: center; }
  .boxImg01 img {
    max-width: 100%;
    height: auto; }

/* ------------------------------------------------
	タブ
------------------------------------------------ */
/*////////////////////////////////////////////////////

	ページごとの個別スタイル
	※サイト規模によってはさらにファイルを分けること

////////////////////////////////////////////////////*/
#aaa { 
	//max-height: 375px; 
	height: 40vw;
	background-image: url("http://www.cybernauts.co.jp/common/img/earth.jpg"); 
}
#ggMap {
  height: 40vw;
  width: 100%;
  padding-top: 50px;
  position: absolute;
  top: 0;
  left: 0; }
  @media only screen and (max-width: 767px) {
    #ggMap {
      height: 160vw;
      padding: 0; } }
  @media print {
    #ggMap {
      height: 400px; } }

/* ------------------------------------------------
	トップページここから
------------------------------------------------ */
#mv {
  background-color: #ccc;
  position: relative; }
  @media only screen and (max-width: 767px) {
    #mv {
      padding-top: 60vw; } }
  #mv:after {
    content: '';
    display: block;
    height: 1px;
    width: 100vw;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #eee;
    z-index: 4; }
    @media only screen and (max-width: 767px) {
      #mv:after {
        display: none; } }

/* btn_pagetop ページトップボタン */
#btnMVScroll {
  cursor: pointer;
  position: absolute;
  bottom: -20px;
  left: 50%;
  margin-left: -20px;
  overflow: hidden;
  width: 40px;
  height: 40px;
  border-radius: 100%;
  background-color: #000;
  text-indent: -99999px;
  z-index: 10;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease; }
  @media only screen and (max-width: 767px) {
    #btnMVScroll {
      display: none; } }
  #btnMVScroll:before {
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #eee;
    position: absolute;
    bottom: 15px;
    left: 12px;
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg); }
  #btnMVScroll:hover {
    background-color: #1848A0; }

#gMap {
  height: 40vw;
  width: 100%;
  padding-top: 50px;
  position: absolute;
  top: 0;
  left: 0; }
  @media only screen and (max-width: 767px) {
    #gMap {
      height: 160vw;
      padding: 0; } }
  @media print {
    #gMap {
      height: 400px; } }

#indexMenu {
  display: table;
  width: 100vw;
  table-layout: fixed; }
  @media print {
    #indexMenu {
      width: 100%; } }
  @media only screen and (max-width: 767px) {
    #indexMenu {
      display: block; }
      #indexMenu:after {
        clear: both;
        display: block;
        content: ''; } }
  #indexMenu li {
    padding-top: 50px;
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    position: relative; }
    @media only screen and (max-width: 767px) {
      #indexMenu li {
        display: block;
        width: 50vw;
        height: 50vw;
        float: left;
        padding-top: 0;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box; }
        #indexMenu li:nth-child(odd) {
          clear: both; }
        #indexMenu li:before, #indexMenu li:after {
          display: none !important; }
        #indexMenu li:nth-child(even) {
          border-left: 1px solid #eee; } }
    #indexMenu li:before {
      content: '';
      display: block;
      height: 1px;
      width: 20vw;
      z-index: 4;
      background-color: #eee;
      position: absolute;
      top: 50px;
      left: 0; }
    #indexMenu li:after {
      content: '';
      display: block;
      height: 40vw;
      padding-top: 50px;
      width: 1px;
      background-color: #eee;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 4; }
    #indexMenu li a {
      display: block;
      text-decoration: none;
      color: #fff;
      position: relative; }
      @media only screen and (min-width: 768px) {
        #indexMenu li a {
          height: 40vw; }
          #indexMenu li a:before {
            width: 20vw;
            position: absolute;
            top: -100px;
            height: 50px;
            background-color: #1848A0;
            content: '';
            display: block;
            -webkit-transition: all 0.5s ease;
            -moz-transition: all 0.5s ease;
            -ms-transition: all 0.5s ease;
            -o-transition: all 0.5s ease;
            transition: all 0.5s ease; }
          #indexMenu li a:after {
            -webkit-transition: all 0.5s ease;
            -moz-transition: all 0.5s ease;
            -ms-transition: all 0.5s ease;
            -o-transition: all 0.5s ease;
            transition: all 0.5s ease;
            border-width: 10px 15px 0;
            border-color: #1848A0 transparent transparent;
            display: block;
            content: '';
            width: 0;
            height: 0;
            border-style: solid;
            z-index: 3;
            position: absolute;
            left: 50%;
            top: 0;
            margin-left: -15px;
            opacity: 0; } }
      @media print {
        #indexMenu li a {
          height: 400px; } }
    #indexMenu li .panel,
    #indexMenu li .btn {
      width: 20vw;
      height: 20vw;
      vertical-align: middle;
      text-align: center;
      display: table;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box;
      box-sizing: border-box;
      /*border-left: 1px solid $baseColor03;*/
      z-index: 2; }
      @media print {
        #indexMenu li .panel,
        #indexMenu li .btn {
          width: 200px;
          height: 200px; } }
      @media only screen and (max-width: 767px) {
        #indexMenu li .panel,
        #indexMenu li .btn {
          width: 50vw;
          height: 50vw; } }
      #indexMenu li .panel .boxInner,
      #indexMenu li .btn .boxInner {
        display: table-cell;
        vertical-align: middle;
        text-align: center;
        z-index: 10;
        position: relative; }
    #indexMenu li .panel {
      background-color: rgba(153, 204, 255, 0.3);
      position: relative; }
      @media only screen and (min-width: 768px) {
        #indexMenu li .panel {
          background-color: transparent; }
          #indexMenu li .panel:before, #indexMenu li .panel:after {
            content: '';
            display: block;
            width: 20vw;
            height: 20vw;
            top: 0;
            left: 0;
            z-index: 1;
            position: absolute;
            -webkit-transform-style: preserve-3d;
            -moz-transform-style: preserve-3d;
            transform-style: preserve-3d; }
          #indexMenu li .panel:before {
            -webkit-transition: all 0.5s ease;
            -moz-transition: all 0.5s ease;
            -ms-transition: all 0.5s ease;
            -o-transition: all 0.5s ease;
            transition: all 0.5s ease;
            -webkit-transform-origin: 50% 50% -10vw;
            -moz-transform-origin: 50% 50% -10vw;
            transform-origin: 50% 50% -10vw;
            background-color: rgba(153, 204, 255, 0.3); }
          #indexMenu li .panel:after {
            background-color: #1848A0;
            opacity: 0;
            -webkit-transition: all 0.5s ease;
            -moz-transition: all 0.5s ease;
            -ms-transition: all 0.5s ease;
            -o-transition: all 0.5s ease;
            transition: all 0.5s ease;
            -webkit-transform: rotateY(-90deg);
            -moz-transform: rotateY(-90deg);
            transform: rotateY(-90deg);
            -webkit-transform-origin: 50% 50% -10vw;
            -moz-transform-origin: 50% 50% -10vw;
            transform-origin: 50% 50% -10vw;
            pointer-events: none; } }
      #indexMenu li .panel p {
        font-size: 15px;
        font-size: 1.5rem; }
        @media only screen and (min-width: 768px) and (max-width: 1000px) {
          #indexMenu li .panel p {
            font-size: 14px;
            font-size: 1.4rem; } }
      #indexMenu li .panel .en {
        font-family: 'Oswald', sans-serif;
        font-weight: 400;
        font-size: 24px;
        font-size: 2.4rem; }
        @media only screen and (min-width: 768px) and (max-width: 1000px) {
          #indexMenu li .panel .en {
            font-size: 22px;
            font-size: 2.2rem; } }
      #indexMenu li .panel img {
        height: auto !important; }
    #indexMenu li .btn {
      background-color: rgba(255, 255, 255, 0.7);
      position: absolute;
      bottom: 1px;
      left: 0;
      -webkit-transition: all 0.5s ease;
      -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
      -o-transition: all 0.5s ease;
      transition: all 0.5s ease;
      opacity: 0; }
      @media print {
        #indexMenu li .btn {
          display: none; } }
      @media only screen and (max-width: 767px) {
        #indexMenu li .btn {
          display: none; } }
      #indexMenu li .btn .boxInner:after {
        content: '';
        display: block;
        width: 120px;
        height: 120px;
        background-color: #fff;
        border-radius: 100%;
        position: absolute;
        top: 10vw;
        left: 10vw;
        margin-left: -60px;
        margin-top: -60px;
        z-index: 1;
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        -ms-transition: all 0.5s ease;
        -o-transition: all 0.5s ease;
        transition: all 0.5s ease;
        -webkit-transform: scale(0.7, 0.7);
        -moz-transform: scale(0.7, 0.7);
        -ms-transform: scale(0.7, 0.7);
        -o-transform: scale(0.7, 0.7);
        transform: scale(0.7, 0.7); }
        @media only screen and (min-width: 768px) and (max-width: 1000px) {
          #indexMenu li .btn .boxInner:after {
            width: 100px;
            height: 100px;
            margin-left: -50px;
            margin-top: -50px; } }
      #indexMenu li .btn .ico {
        position: relative;
        z-index: 2;
        font-family: 'Oswald', sans-serif;
        font-weight: 400;
        font-size: 22px;
        font-size: 2.2rem; }
        @media only screen and (min-width: 768px) and (max-width: 1000px) {
          #indexMenu li .btn .ico {
            font-size: 15px;
            font-size: 1.5rem; } }
        #indexMenu li .btn .ico:after, #indexMenu li .btn .ico:before {
          content: '';
          display: block;
          background-color: #fff;
          position: absolute; }
        #indexMenu li .btn .ico:before {
          width: 1px;
          height: 31px;
          top: 50%;
          left: 50%;
          margin-top: -53px; }
          @media only screen and (min-width: 768px) and (max-width: 1000px) {
            #indexMenu li .btn .ico:before {
              height: 25px;
              margin-top: -44px; } }
        #indexMenu li .btn .ico:after {
          width: 31px;
          height: 1px;
          top: 50%;
          left: 50%;
          margin-top: -38px;
          margin-left: -15px; }
          @media only screen and (min-width: 768px) and (max-width: 1000px) {
            #indexMenu li .btn .ico:after {
              width: 25px;
              margin-left: -12px;
              margin-top: -32px; } }
    #indexMenu li:nth-child(even) .panel,
    #indexMenu li:nth-child(even) .btn {
      position: absolute;
      left: 0; }
    #indexMenu li:nth-child(even) .panel {
      /*top: $spaceL;
      margin-top: 20vw;*/
      bottom: 1px; }
      @media only screen and (max-width: 767px) {
        #indexMenu li:nth-child(even) .panel {
          position: relative;
          left: auto;
          top: auto;
          bottom: auto;
          margin-top: 0; } }
    #indexMenu li:nth-child(even) .btn {
      top: 0;
      bottom: auto; }
    @media only screen and (min-width: 768px) {
      #indexMenu li:nth-child(odd) a:after {
        top: 20vw;
        margin-top: -1px; } }
    @media print {
      #indexMenu li:nth-child(odd) a:after {
        top: 200px;
        margin-top: -1px; } }
    @media only screen and (min-width: 768px) {
      .PC #indexMenu li:hover a:before, .PC #indexMenu li.hover a:before {
        top: -50px; }
      .PC #indexMenu li:hover a:after, .PC #indexMenu li.hover a:after {
        opacity: 1; } }
    .PC #indexMenu li:hover .panel:before, .PC #indexMenu li.hover .panel:before {
      -webkit-transform: rotateY(90deg);
      -moz-transform: rotateY(90deg);
      transform: rotateY(90deg); }
    .PC #indexMenu li:hover .panel:after, .PC #indexMenu li.hover .panel:after {
      opacity: 1;
      -webkit-transform: rotateY(0deg);
      -moz-transform: rotateY(0deg);
      transform: rotateY(0deg); }
    .PC #indexMenu li:hover .btn, .PC #indexMenu li.hover .btn {
      opacity: 1; }
      .PC #indexMenu li:hover .btn .boxInner:after, .PC #indexMenu li.hover .btn .boxInner:after {
        -webkit-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1); }
  #indexMenu #indexMenu1 a:before {
    background-color: #18489C; }
  #indexMenu #indexMenu1 a:after {
    border-top-color: #18489C; }
  #indexMenu #indexMenu1 .panel:after {
    background-color: #18489C; }
  @media only screen and (max-width: 767px) {
    #indexMenu #indexMenu1 .panel {
      border-bottom: 3px solid #18489C; } }
  #indexMenu #indexMenu1 .panel img {
    width: 58px !important;
    height: 61px !important; }
    @media only screen and (max-width: 480px) {
      #indexMenu #indexMenu1 .panel img {
        width: 40.6px !important;
        height: 42.7px !important; } }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      #indexMenu #indexMenu1 .panel img {
        width: 40.6px !important;
        height: 42.7px !important; } }
  #indexMenu #indexMenu1 .btn .ico {
    color: #18489C; }
    #indexMenu #indexMenu1 .btn .ico:after, #indexMenu #indexMenu1 .btn .ico:before {
      background-color: #18489C; }
  #indexMenu #indexMenu2 a:before {
    background-color: #18489D; }
  #indexMenu #indexMenu2 a:after {
    border-top-color: #18489D; }
  #indexMenu #indexMenu2 .panel:after {
    background-color: #18489D; }
  @media only screen and (max-width: 767px) {
    #indexMenu #indexMenu2 .panel {
      border-bottom: 3px solid #18489D; } }
  #indexMenu #indexMenu2 .panel img {
    width: 80px !important;
    height: 68px !important; }
    @media only screen and (max-width: 480px) {
      #indexMenu #indexMenu2 .panel img {
        width: 56px !important;
        height: 47.6px !important; } }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      #indexMenu #indexMenu2 .panel img {
        width: 56px !important;
        height: 47.6px !important; } }
  #indexMenu #indexMenu2 .btn .ico {
    color: #18489D; }
    #indexMenu #indexMenu2 .btn .ico:after, #indexMenu #indexMenu2 .btn .ico:before {
      background-color: #18489D; }
  #indexMenu #indexMenu3 a:before {
    background-color: #18489E; }
  #indexMenu #indexMenu3 a:after {
    border-top-color: #18489E; }
  #indexMenu #indexMenu3 .panel:after {
    background-color: #18489E; }
  @media only screen and (max-width: 767px) {
    #indexMenu #indexMenu3 .panel {
      border-bottom: 3px solid #18489E; } }
  #indexMenu #indexMenu3 .panel img {
    width: 58px !important;
    height: 74px !important; }
    @media only screen and (max-width: 480px) {
      #indexMenu #indexMenu3 .panel img {
        width: 40.6px !important;
        height: 51.8px !important; } }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      #indexMenu #indexMenu3 .panel img {
        width: 40.6px !important;
        height: 51.8px !important; } }
  #indexMenu #indexMenu3 .btn .ico {
    color: #18489E; }
    #indexMenu #indexMenu3 .btn .ico:after, #indexMenu #indexMenu3 .btn .ico:before {
      background-color: #18489E; }
  #indexMenu #indexMenu4 a:before {
    background-color: #18489F; }
  #indexMenu #indexMenu4 a:after {
    border-top-color: #18489F; }
  #indexMenu #indexMenu4 .panel:after {
    background-color: #18489F; }
  @media only screen and (max-width: 767px) {
    #indexMenu #indexMenu4 .panel {
      border-bottom: 3px solid #18489F; } }
  #indexMenu #indexMenu4 .panel img {
    width: 56px !important;
    height: 63px !important; }
    @media only screen and (max-width: 480px) {
      #indexMenu #indexMenu4 .panel img {
        width: 39.2px !important;
        height: 44.1px !important; } }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      #indexMenu #indexMenu4 .panel img {
        width: 39.2px !important;
        height: 44.1px !important; } }
  #indexMenu #indexMenu4 .btn .ico {
    color: #18489F; }
    #indexMenu #indexMenu4 .btn .ico:after, #indexMenu #indexMenu4 .btn .ico:before {
      background-color: #18489F; }
  #indexMenu #indexMenu5 a:before {
    background-color: #1848A0; }
  #indexMenu #indexMenu5 a:after {
    border-top-color: #1848A0; }
  #indexMenu #indexMenu5 .panel:after {
    background-color: #1848A0; }
  @media only screen and (max-width: 767px) {
    #indexMenu #indexMenu5 .panel {
      border-bottom: 3px solid #1848A0; } }
  #indexMenu #indexMenu5 .panel img {
    width: 58px !important;
    height: 63px !important; }
    @media only screen and (max-width: 480px) {
      #indexMenu #indexMenu5 .panel img {
        width: 40.6px !important;
        height: 44.1px !important; } }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      #indexMenu #indexMenu5 .panel img {
        width: 40.6px !important;
        height: 44.1px !important; } }
  #indexMenu #indexMenu5 .btn .ico {
    color: #1848A0; }
    #indexMenu #indexMenu5 .btn .ico:after, #indexMenu #indexMenu5 .btn .ico:before {
      background-color: #1848A0; }
  @media only screen and (max-width: 767px) {
    #indexMenu #indexMenu5 {
      display: none; } }

#topField a {
  text-decoration: none;
  display: block; }
  #topField a:hover {
    opacity: .6; }
#topField .boxImg {
  height: 60px;
  display: table-cell;
  width: 20vw;
  vertical-align: middle;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    #topField .boxImg {
      width: 33.33333vw; } }
@media only screen and (max-width: 767px) {
  #topField .boxTxt .tit02 {
    font-size: 14px;
    font-size: 1.4rem;
    margin-bottom: 0;
    padding-top: 10px; }
    #topField .boxTxt .tit02:before {
      width: 40px;
      margin-bottom: 10px; } }
#topField .boxTxt p {
  color: #666; }
  @media only screen and (max-width: 767px) {
    #topField .boxTxt p {
      display: none; } }

#icoField01 {
  width: 43px;
  height: auto; }

#icoField02 {
  width: 50px;
  height: auto; }

#icoField03 {
  width: 37px;
  height: auto; }

#icoField04 {
  width: 41px;
  height: auto; }

#icoField05 {
  width: 64px;
  height: auto; }

@media only screen and (min-width: 1600px) {
  #topRecruit:after {
    background: url(../../img/index/img_recruit01.png) 50% 100% no-repeat; } }
#topRecruit .vegas-timer-progress {
  background-color: #18489C; }
#topRecruit .vegas-slide {
  display: table;
  width: 100%;
  height: 30vw; }
  @media only screen and (min-width: 768px) {
    #topRecruit .vegas-slide {
      min-height: 460px; } }
  @media only screen and (max-width: 767px) {
    #topRecruit .vegas-slide {
      height: 66vw; }
      .Android #topRecruit .vegas-slide {
        height: 400px !important; } }
    @media only screen and (max-width: 767px) and (max-width: 480px) {
      .Android #topRecruit .vegas-slide {
        height: 260px !important; } }

  @media only screen and (min-width: 1600px) {
    #topRecruit .vegas-slide {
      min-height: auto; } }

.boxProducts01 {
  display: table; }
  @media only screen and (max-width: 767px) {
    .boxProducts01 {
      display: block; } }
  .boxProducts01 .boxImg,
  .boxProducts01 .boxTxt {
    display: table-cell;
    vertical-align: top;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .boxProducts01 .boxImg,
      .boxProducts01 .boxTxt {
        display: block; } }
  .boxProducts01 .boxImg {
    width: 74px;
    padding-right: 10px; }
    .boxProducts01 .boxImg img {
      width: 74px;
      height: auto; }
    @media only screen and (max-width: 767px) {
      .boxProducts01 .boxImg {
        width: auto;
        text-align: center;
        padding: 0 0 30px; } }
  .boxProducts01 .ulProduct {
    display: table;
    width: 100%;
    table-layout: fixed;
    border: 1px dotted #333;
    margin-top: 20px;
    vertical-align: middle; }
    @media only screen and (max-width: 767px) {
      .boxProducts01 .ulProduct {
        border: none;
        width: auto;
        margin: 20px auto 0; } }
    .boxProducts01 .ulProduct li {
      display: table-cell;
      border-left: 1px dotted #333;
      vertical-align: top;
      text-align: center;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box;
      box-sizing: border-box;
      padding: 10px; }
      @media only screen and (max-width: 767px) {
        .boxProducts01 .ulProduct li {
          border: none;
          padding: 0; } }
      .boxProducts01 .ulProduct li:first-child {
        border-left: none; }
      @media only screen and (max-width: 767px) {
        .boxProducts01 .ulProduct li .head {
          display: none; } }
  .boxProducts01 .links {
    display: table;
    margin: 0 auto; }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      .boxProducts01 .links {
        display: block; } }
    .boxProducts01 .links p {
      display: table-cell;
      padding: 5px;
      vertical-align: middle;
      text-align: center; }
      @media only screen and (min-width: 768px) and (max-width: 1000px) {
        .boxProducts01 .links p {
          display: block; } }
    @media only screen and (max-width: 767px) {
      .boxProducts01 .links .qr {
        display: none; } }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      .boxProducts01 .links.sizeL {
        display: table; } }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      .boxProducts01 .links.sizeL p {
        display: table-cell; } }

/* ------------------------------------------------
	CSRここから
------------------------------------------------ */
.boxCompany01 > li {
  /*display: inline-block;*/
  width: 33.33333%;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 20px; }
  @media only screen and (max-width: 767px) {
    .boxCompany01 > li {
      width: auto;
      float: none; } }
  .boxCompany01 > li:nth-child(4) {
    margin-left: 16.1848A065%;
    clear: both; }
    @media only screen and (max-width: 767px) {
      .boxCompany01 > li:nth-child(4) {
        margin-left: 0; } }
  .boxCompany01 > li:nth-child(n+4) {
    margin-top: 20px; }
  @media only screen and (max-width: 767px) {
    .boxCompany01 > li {
      margin-top: 20px; }
      .boxCompany01 > li:first-child {
        margin-top: 0; } }
.boxCompany01 .pointCompany01 {
  font-family: 'Oswald', sans-serif;
  font-weight: 400;
  font-size: 48px;
  font-size: 4.8rem;
  line-height: 1.1;
  text-align: center;
  color: #000; }
  @media only screen and (max-width: 480px) {
    .boxCompany01 .pointCompany01 {
      font-size: 36px;
      font-size: 3.6rem; } }
@media only screen and (max-width: 767px) {
  .boxCompany01 .tit02 {
    padding: 10px 0; }
    .boxCompany01 .tit02:before {
      margin-bottom: 10px; } }

/* ------------------------------------------------
	企業理念ここから
------------------------------------------------ */
.imgPhilosophy01 {
  text-align: center; }
  .imgPhilosophy01 img {
    width: 120px;
    height: auto; }

/* ------------------------------------------------
	アクセスここから
------------------------------------------------ */
.wpMap01 {
  background-color: #fff; }

#map {
  height: 45vw; }
  @media only screen and (min-width: 1600px) {
    #map {
      height: 35vw; } }
  @media only screen and (min-width: 768px) and (max-width: 1000px) {
    #map {
      height: 60vw; } }
  @media only screen and (max-width: 767px) {
    #map {
      height: 60vw; }
      .Android #map {
        height: 400px; } }
  @media only screen and (max-width: 480px) {
    .Android #map {
      height: 260px; } }
  @media print {
    #map {
      height: 400px; } }

#mapAo {
  height: 45vw; }
  @media only screen and (min-width: 1600px) {
    #mapAo {
      height: 35vw; } }
  @media only screen and (min-width: 768px) and (max-width: 1000px) {
    #mapAo {
      height: 60vw; } }
  @media only screen and (max-width: 767px) {
    #mapAo {
      height: 60vw; }
      .Android #mapAo {
        height: 400px; } }
  @media only screen and (max-width: 480px) {
    .Android #mapAo {
      height: 260px; } }
  @media print {
    #mapAo {
      height: 400px; } }

.boxAddress01 {
  text-align: left;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto; }

/* ------------------------------------------------
	事業内容ここから
------------------------------------------------ */
.tbBusiness01 > thead tr > th, .tbBusiness01 > tbody tr > th, .tbBusiness01 > tr > th {
  width: 30%; }

.wpWorks01 .titBasic01 {
  text-align: center; }

.boxWorks01 {
  margin-bottom: 20px;
  text-align: center; }
  .boxWorks01 > .img {
    text-align: center; }
    .boxWorks01 > .img:after {
      content: '';
      display: block;
      width: 60px;
      height: 2px;
      margin: 20px auto 0;
      background: -moz-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
      background: -webkit-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
      background: -o-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
      background: -ms-linear-gradient(left, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%);
      background: linear-gradient(to right, #18489C 0%, #18489C 25%, #18489D 25%, #18489D 50%, #18489E 50%, #18489E 75%, #18489F 75%); }

/*# sourceMappingURL=style.css.map */
