@charset "UTF-8";
*, *::before, *::after {
  box-sizing: border-box; }

ul, ol {
  padding-left: 25px; }

ol li {
  padding-bottom: 1rem; }

body, h1, h2, h3, h4, p, ul, ol, figure, blockquote, dl, dd {
  margin: 0;
  padding: 0; }

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5; }

ul[class], ol[class] {
  list-style: none; }

a {
  text-decoration: none; }

img, picture {
  max-width: 100%;
  height: auto; }

article > * + * {
  margin-top: 2em; }

input, button, textarea, select {
  font: inherit; }

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none; }

*:focus {
  outline: none; }

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

* {
  overflow-wrap: break-word;
  word-wrap: break-word; }

@font-face {
  font-family: 'icomoon';
  font-display: swap;
  src: url("../fonts/icomoon.eot?6y3i5o");
  src: url("../fonts/icomoon.eot?#iefix6y3i5o") format("embedded-opentype"), url("../fonts/icomoon.woff?6y3i5o") format("woff"), url("../fonts/icomoon.ttf?6y3i5o") format("truetype"), url("../fonts/icomoon.svg?6y3i5o#icomoon") format("svg");
  font-weight: normal;
  font-style: normal; }
@font-face {
  font-family: 'Noto Sans CJK JP Subset';
  font-display: swap;
  font-style: normal;
  font-weight: 400;
  src: local("Noto Sans CJK JP"), local("NotoSansCJKjp-Regular"), local("NotoSansJP-Regular"), url("../fonts/NotoSansCJKjp-Regular.woff") format("woff"), url("../fonts/NotoSansCJKjp-Regular.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-Regular.ttf") format("truetype"); }
/*@font-face {
  font-family: 'Noto Sans CJK JP Subset';
  font-display: swap;
  font-style: normal;
  font-weight: 500;
  src: local('Noto Sans CJK JP'), local('NotoSansCJKjp-Medium'), local('NotoSansJP-Medium'), url('../fonts/NotoSansCJKjp-Medium.woff') format('woff'), url('../fonts/NotoSansCJKjp-Medium.woff2') format('woff2'), url('../fonts/NotoSansCJKjp-Medium.ttf') format('truetype');
}*/
@font-face {
  font-family: 'Noto Sans CJK JP Subset';
  font-display: swap;
  font-style: bold;
  font-weight: 700;
  src: local("NotoSansCJKjp-Bold"), local("NotoSansJP-Bold"), url("../fonts/NotoSansCJKjp-Bold.woff") format("woff"), url("../fonts/NotoSansCJKjp-Bold.woff2"), format("woff2"), url("../fonts/NotoSansCJKjp-Bold.ttf") format("truetype"); }
body {
  font-family: "Avenir", "Arial", "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, sans-serif;
  line-height: 1.6;
  font-weight: normal;
  font-size: 16px;
  font-weight: 400;
  scroll-behavior: smooth;
  overflow: auto;
  height: 100%;
  color: #13172F; }

.padding-w, .padding-wh, #column-2, #breadcrumb ul, .top-slider .slider-items .slider-item, #header-img .header-long, #header-img .header-short {
  margin: 0 auto;
  padding-left: calc((100% - 1240px) / 2 + 60px);
  padding-right: calc((100% - 1240px) / 2 + 60px); }
  @media only screen and (max-width: 1239px) {
    .padding-w, .padding-wh, #column-2, #breadcrumb ul, .top-slider .slider-items .slider-item, #header-img .header-long, #header-img .header-short {
      max-width: 100%;
      padding-left: 60px;
      padding-right: 60px; } }
  @media only screen and (max-width: 960px) {
    .padding-w, .padding-wh, #column-2, #breadcrumb ul, .top-slider .slider-items .slider-item, #header-img .header-long, #header-img .header-short {
      max-width: 100%;
      padding-left: 20px;
      padding-right: 20px; } }
  @media only screen and (max-width: 559px) {
    .padding-w, .padding-wh, #column-2, #breadcrumb ul, .top-slider .slider-items .slider-item, #header-img .header-long, #header-img .header-short {
      padding-left: 15px;
      padding-right: 15px; } }

.padding-h, .padding-wh, #column-2 .side-block, .top-slider .slider-items .slider-item {
  padding-top: 60px;
  padding-bottom: 60px; }
  @media only screen and (max-width: 960px) {
    .padding-h, .padding-wh, #column-2 .side-block, .top-slider .slider-items .slider-item {
      padding-top: 40px;
      padding-bottom: 40px; } }

#contact-form {
  max-width: 784px;
  margin: 0 auto;
  padding: 80px 12px; }
  @media only screen and (max-width: 960px) {
    #contact-form {
      max-width: 100%;
      padding: 60px 15px; } }

/*%section-padding-text-block {
  padding-left: 15%;
  padding-right: 15%;
}*/
section {
  overflow: hidden;
  transition: .8s; }

#column-2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: auto;
  height: auto; }
  #column-2 .main-block {
    width: 100%; }
    @media only screen and (min-width: 961px) {
      #column-2 .main-block {
        width: calc(75% - 60px); } }
  #column-2 .side-block {
    width: 100%;
    max-width: 100%; }
    @media only screen and (min-width: 961px) {
      #column-2 .side-block {
        width: 25%;
        max-width: 300px; } }
    @media only screen and (max-width: 960px) {
      #column-2 .side-block {
        padding-top: 10px;
        padding-bottom: 40px; } }

.block {
  margin-bottom: 40px; }
  .block:last-child {
    margin-bottom: 0; }
  .block:before, .block:after {
    content: "";
    clear: both;
    height: 0;
    display: block;
    visibility: hidden; }

@media only screen and (max-width: 1239px) {
  .pc-only {
    display: none !important; } }
.bg-alumi, .cat-link, .products-movie .container .item:hover, #case-list .container .item:hover, #important-news, #products-movie .container .item:hover {
  background: #E9EAEA;
  background: -webkit-linear-gradient(to right, #E9EAEA, #fefefe, #dbdbdb, #eaeaea);
  background: linear-gradient(to right, #E9EAEA, #fefefe, #dbdbdb, #eaeaea); }

.section-ttl h2::after {
  background: #B4C1C2;
  background: -webkit-linear-gradient(to right, #EAF0F0, #B4C1C2, #EAF0F0);
  background: linear-gradient(to right, #EAF0F0, #B4C1C2, #EAF0F0); }

.products-movie .container .item h3 a::after, #case-list .container .item h3 a::after, .news-list ul li a::after, .navi-img-link a::after, #products-movie .container .item h3 a::after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: ""; }

.mt0 {
  margin-top: 0px !important; }

.mr0 {
  margin-right: 0px !important; }

.mb0 {
  margin-bottom: 0px !important; }

.ml0 {
  margin-left: 0px !important; }

.pt0 {
  padding-top: 0px !important; }

.pr0 {
  padding-right: 0px !important; }

.pb0 {
  padding-bottom: 0px !important; }

.pl0 {
  padding-left: 0px !important; }

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

.mr5 {
  margin-right: 5px !important; }

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

.ml5 {
  margin-left: 5px !important; }

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

.pr5 {
  padding-right: 5px !important; }

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

.pl5 {
  padding-left: 5px !important; }

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

.mr10 {
  margin-right: 10px !important; }

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

.ml10 {
  margin-left: 10px !important; }

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

.pr10 {
  padding-right: 10px !important; }

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

.pl10 {
  padding-left: 10px !important; }

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

.mr15 {
  margin-right: 15px !important; }

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

.ml15 {
  margin-left: 15px !important; }

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

.pr15 {
  padding-right: 15px !important; }

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

.pl15 {
  padding-left: 15px !important; }

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

.mr20 {
  margin-right: 20px !important; }

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

.ml20 {
  margin-left: 20px !important; }

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

.pr20 {
  padding-right: 20px !important; }

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

.pl20 {
  padding-left: 20px !important; }

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

.mr25 {
  margin-right: 25px !important; }

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

.ml25 {
  margin-left: 25px !important; }

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

.pr25 {
  padding-right: 25px !important; }

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

.pl25 {
  padding-left: 25px !important; }

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

.mr30 {
  margin-right: 30px !important; }

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

.ml30 {
  margin-left: 30px !important; }

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

.pr30 {
  padding-right: 30px !important; }

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

.pl30 {
  padding-left: 30px !important; }

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

.mr35 {
  margin-right: 35px !important; }

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

.ml35 {
  margin-left: 35px !important; }

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

.pr35 {
  padding-right: 35px !important; }

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

.pl35 {
  padding-left: 35px !important; }

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

.mr40 {
  margin-right: 40px !important; }

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

.ml40 {
  margin-left: 40px !important; }

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

.pr40 {
  padding-right: 40px !important; }

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

.pl40 {
  padding-left: 40px !important; }

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

.mr45 {
  margin-right: 45px !important; }

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

.ml45 {
  margin-left: 45px !important; }

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

.pr45 {
  padding-right: 45px !important; }

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

.pl45 {
  padding-left: 45px !important; }

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

.mr50 {
  margin-right: 50px !important; }

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

.ml50 {
  margin-left: 50px !important; }

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

.pr50 {
  padding-right: 50px !important; }

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

.pl50 {
  padding-left: 50px !important; }

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

.mr55 {
  margin-right: 55px !important; }

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

.ml55 {
  margin-left: 55px !important; }

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

.pr55 {
  padding-right: 55px !important; }

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

.pl55 {
  padding-left: 55px !important; }

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

.mr60 {
  margin-right: 60px !important; }

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

.ml60 {
  margin-left: 60px !important; }

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

.pr60 {
  padding-right: 60px !important; }

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

.pl60 {
  padding-left: 60px !important; }

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

.mr65 {
  margin-right: 65px !important; }

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

.ml65 {
  margin-left: 65px !important; }

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

.pr65 {
  padding-right: 65px !important; }

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

.pl65 {
  padding-left: 65px !important; }

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

.mr70 {
  margin-right: 70px !important; }

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

.ml70 {
  margin-left: 70px !important; }

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

.pr70 {
  padding-right: 70px !important; }

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

.pl70 {
  padding-left: 70px !important; }

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

.mr75 {
  margin-right: 75px !important; }

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

.ml75 {
  margin-left: 75px !important; }

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

.pr75 {
  padding-right: 75px !important; }

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

.pl75 {
  padding-left: 75px !important; }

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

.mr80 {
  margin-right: 80px !important; }

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

.ml80 {
  margin-left: 80px !important; }

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

.pr80 {
  padding-right: 80px !important; }

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

.pl80 {
  padding-left: 80px !important; }

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

.mr85 {
  margin-right: 85px !important; }

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

.ml85 {
  margin-left: 85px !important; }

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

.pr85 {
  padding-right: 85px !important; }

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

.pl85 {
  padding-left: 85px !important; }

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

.mr90 {
  margin-right: 90px !important; }

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

.ml90 {
  margin-left: 90px !important; }

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

.pr90 {
  padding-right: 90px !important; }

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

.pl90 {
  padding-left: 90px !important; }

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

.mr95 {
  margin-right: 95px !important; }

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

.ml95 {
  margin-left: 95px !important; }

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

.pr95 {
  padding-right: 95px !important; }

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

.pl95 {
  padding-left: 95px !important; }

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

.mr100 {
  margin-right: 100px !important; }

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

.ml100 {
  margin-left: 100px !important; }

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

.pr100 {
  padding-right: 100px !important; }

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

.pl100 {
  padding-left: 100px !important; }

p {
  margin-bottom: 1.7rem; }
  p:last-child {
    margin-bottom: 0; }
  @media only screen and (max-width: 960px) {
    p {
      font-size: 0.95rem; } }

img {
  max-width: 100%;
  height: auto;
  border: 0;
  vertical-align: middle;
  transition: 0.3s ease-out; }

a img:hover {
  opacity: 0.8; }

small, .text-small {
  font-size: 0.85rem; }

a {
  color: #00478f;
  transition: 0.3s; }
  a:hover {
    color: #F80; }

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

h2 {
  font-size: 34px;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 0.45em; }
  @media only screen and (max-width: 960px) {
    h2 {
      font-size: 5.0vw; } }
  @media only screen and (max-width: 559px) {
    h2 {
      font-size: 6vw; } }

h3 {
  font-size: 20px; }
  @media only screen and (max-width: 559px) {
    h3 {
      font-size: 16px; } }

/*h2 {
  font-size: 25px;
  @media only screen and (max-width:559px) {
    font-size: 20px;
  }
}

h4 {
  font-size: 16px;
  @media only screen and (max-width:559px) {
    font-size: 15px;
  }
}*/
.section-ttl {
  margin-bottom: 30px;
  text-align: center; }
  .section-ttl h2 {
    color: #13172F;
    font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    line-height: 1;
    letter-spacing: 0.05em;
    padding-bottom: 0;
    margin-bottom: 10px; }
    .section-ttl h2::after {
      content: '';
      display: block;
      width: 100%;
      height: 2px;
      margin-top: 10px; }
  .section-ttl p {
    color: #777;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin-bottom: 0; }
    @media only screen and (max-width: 559px) {
      .section-ttl p {
        font-size: 14px; } }
  .section-ttl img {
    max-width: 300px; }
    @media only screen and (max-width: 559px) {
      .section-ttl img {
        max-width: 70%; } }

.h-blue, .h-orange {
  font-size: 20px;
  margin-bottom: 10px; }
  @media only screen and (max-width: 559px) {
    .h-blue, .h-orange {
      font-size: 16px; } }

.h-blue {
  color: #00478f; }

.h-orange {
  color: #F80; }

.h-border {
  color: #13172F;
  font-size: 18px;
  padding-bottom: 5px;
  margin-bottom: 10px;
  border-bottom: 1px solid #DDDDEE; }
  @media only screen and (max-width: 559px) {
    .h-border {
      font-size: 16px; } }

.h-border-accent {
  color: #003366;
  font-size: 24px;
  padding-bottom: 5px;
  margin-bottom: 20px;
  border-bottom: 2px solid #003366; }
  @media only screen and (max-width: 559px) {
    .h-border-accent {
      font-size: 16px; } }

.h-bar {
  display: block;
  padding: 5px 10px;
  text-align: center;
  margin-bottom: 20px;
  color: #FFF !important;
  background: #F80;
  border-radius: 4px; }
  @media only screen and (max-width: 559px) {
    .h-bar {
      font-size: 16px; } }

.h-min {
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  font-weight: bold;
  line-height: 1.5; }

.h-side {
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  font-weight: bold;
  font-size: 18px;
  margin-bottom: 10px; }
  @media only screen and (max-width: 559px) {
    .h-side {
      font-size: 22px; } }

.ttl-min-accent {
  color: #003366;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  margin-bottom: 20px; }
  @media only screen and (max-width: 559px) {
    .ttl-min-accent {
      font-weight: bold; } }

.ttl-info {
  text-align: center;
  color: #F80;
  margin-bottom: 20px; }
  .ttl-info::before {
    font-family: 'icomoon';
    content: "\ea0c";
    padding-right: 5px; }

.page-catch {
  font-size: 26px;
  margin-bottom: 30px;
  color: #555; }
  .page-catch span {
    color: #F80; }
  @media only screen and (max-width: 559px) {
    .page-catch {
      font-size: 22px; } }

.page-catch-s {
  font-size: 19px;
  color: #555;
  margin-bottom: 20px;
  line-height: 1.7; }
  .page-catch-s span {
    color: #F80; }
  @media only screen and (min-width: 961px) {
    .page-catch-s {
      text-align: justify; } }
  @media only screen and (max-width: 559px) {
    .page-catch-s {
      font-size: 17px; } }

.page-title {
  font-size: 26px;
  margin-bottom: 20px; }
  @media only screen and (max-width: 559px) {
    .page-title {
      font-size: 22px; } }

.entry-more::after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: ""; }

/*ページのセクション背景*/
.bg-blue {
  background: rgba(0, 51, 102, 0.1); }

.underline {
  border-bottom: dotted 5px #F80;
  line-height: 1.1;
  display: inline-block; }
  @media only screen and (max-width: 559px) {
    .underline {
      border-bottom: dotted 3px #F80; } }

.blockquote {
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  text-align: center;
  margin-bottom: 30px;
  font-size: 26px; }
  .blockquote::before, .blockquote::after {
    font-size: 0.5em;
    color: #F80;
    font-family: 'icomoon';
    vertical-align: text-top; }
  .blockquote::before {
    content: '\f10d';
    padding-right: 5px; }
  .blockquote::after {
    content: '\f10e'; }
  @media only screen and (max-width: 559px) {
    .blockquote {
      font-size: 6.0vw;
      font-weight: bold; }
      .blockquote span {
        display: block; }
      .blockquote br {
        display: none; } }

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

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

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

.text-large {
  font-size: 1.2rem;
  line-height: 1.8; }
  @media only screen and (max-width: 559px) {
    .text-large {
      font-size: 1.1rem; } }

.text-xlarge {
  font-size: 1.6rem; }
  @media only screen and (max-width: 559px) {
    .text-xlarge {
      font-size: 1.4rem; } }

strong {
  color: #F80; }

.text-accent {
  color: #003366; }

.text-accent2 {
  color: #F80; }

.text-white {
  color: #FFF; }

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

.caution-right {
  text-align: right;
  padding-right: 10px;
  font-size: 0.85rem;
  margin-bottom: 0; }

.float-left {
  float: left;
  max-width: 40%;
  margin-right: 15px;
  margin-bottom: 15px; }
  @media only screen and (max-width: 559px) {
    .float-left {
      float: none;
      display: block;
      max-width: 100%;
      margin-right: 0; } }

.float-right {
  float: right;
  max-width: 40%;
  margin-left: 15px;
  margin-bottom: 15px; }
  @media only screen and (max-width: 559px) {
    .float-right {
      float: none;
      display: block;
      max-width: 100%;
      margin-left: 0; } }

.text-border-short {
  padding-bottom: 5px;
  /* 余白指定 */
  margin-bottom: 15px;
  /* 周りの余白指定 */
  position: relative;
  /* 位置調整 */
  font-weight: normal; }
  .text-border-short:before {
    content: '';
    /* 空白の要素を作る */
    width: 100px;
    /* 幅指定 */
    height: 1px;
    /* 高さ指定 */
    background-color: #F80;
    /* 背景色指定 */
    display: block;
    /* ブロック要素にする */
    position: absolute;
    /* 位置調整 */
    left: 0;
    /* 位置調整 */
    bottom: -6px; }

.text-border {
  border-bottom: 1px solid #F80; }

.text-border-gray {
  border-bottom: 1px solid #555; }

.ttl-min-main {
  color: #003366;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  margin-bottom: 20px; }
  .ttl-min-main:not(:first-of-type) {
    margin-top: 60px; }
  @media only screen and (max-width: 559px) {
    .ttl-min-main {
      font-weight: bold; } }

@media only screen and (min-width: 961px) {
  .narrow-block {
    padding-left: 15%;
    padding-right: 15%; } }
/*　エフェクト */
.effect-gray {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%); }
  .effect-gray:hover {
    -webkit-filter: grayscale(0);
    -moz-filter: grayscale(0);
    -ms-filter: grayscale(0);
    -o-filter: grayscale(0);
    filter: grayscale(0); }

/*ボタン左からアニメーション--*/
.button-bg-left {
  width: 100%;
  text-align: center;
  display: inline-block;
  vertical-align: top;
  padding: 12px;
  color: #003366;
  /* 文字色 */
  background: #FFF;
  border: 1px solid #003366;
  /* 枠線 */
  border-radius: 4px;
  font-weight: bold;
  font-size: 1rem;
  position: relative;
  overflow: hidden;
  z-index: 1; }
  .button-bg-left::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: #003366;
    /* 背景色 */
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    transition: transform 0.2s;
    transform: translate(-100%); }
  .button-bg-left:hover {
    color: #fff; }
    .button-bg-left:hover::after {
      transform: translate(0); }

/*テキストボタン　下に罫線--*/
.effect-text-under-border {
  position: relative;
  padding: 0.3em 1.0em;
  margin-top: 20px;
  display: inline-block;
  transition: .3s;
  color: #003366;
  background-color: #555; }
  .effect-text-under-border::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    content: '';
    width: 0;
    height: 1px;
    background-color: #003366;
    transition: .3s;
    transform: translateX(-50%); }
  .effect-text-under-border:hover::after {
    color: #13172F;
    width: 100%; }

/*ボタン　上下に罫線--*/
.effect-text-round {
  background: #003366;
  color: #FFF;
  border: none;
  position: relative;
  line-height: 60px;
  font-size: 1.2rem;
  font-weight: 500;
  text-align: center;
  padding: 0.8em 2em;
  cursor: pointer;
  transition: 800ms ease all;
  outline: none; }
  @media only screen and (max-width: 559px) {
    .effect-text-round {
      width: 80%;
      margin: 0 auto;
      line-height: 25px;
      padding: 15px 0.5em;
      display: block; } }
  .effect-text-round:hover {
    background: #FFF;
    color: #003366; }
  .effect-text-round:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    height: 2px;
    width: 0;
    background: #003366;
    transition: 400ms ease all; }
  .effect-text-round:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    height: 2px;
    width: 0;
    background: #003366;
    transition: 400ms ease all;
    right: inherit;
    top: inherit;
    left: 0;
    bottom: 0; }
  .effect-text-round:hover:before, .effect-text-round:hover:after {
    width: 100%;
    transition: 800ms ease all; }

/*ボタン ghost--*/
.btn-ghost a {
  display: inline-block;
  padding: 10px 20px;
  color: #003366;
  border: solid 1px #003366;
  transition: .6s; }
  .btn-ghost a:hover {
    background: #003366;
    color: #FFF; }

/*ボタン　テキストの廻りを回る--*/
.effect-text-border {
  font-weight: bold;
  font-size: 1.2rem;
  position: relative;
  padding: 0.6em 1.0em;
  margin-top: 20px;
  display: inline-block;
  transition: .3s;
  color: #003366;
  background-color: rgba(0, 0, 0, 0.05); }
  .effect-text-border::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    content: '';
    width: 0;
    height: 4px;
    background-color: #003366;
    transition: .3s;
    transform: translateX(-50%); }
  .effect-text-border:hover::after {
    color: #13172F;
    width: 100%; }

.stickarrow {
  width: 40px;
  height: 8px;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: skew(45deg); }

.effect-bordr {
  overflow: hidden; }

.effect-bordr::after {
  border-bottom: 1px solid #F80;
  content: "";
  position: relative;
  display: block;
  width: 0%;
  animation: up 5s infinite ease-in-out;
  -webkit-animation: up 5s infinite ease-in-out; }

@keyframes up {
  0% {
    width: 0%; }
  25% {
    width: 100%;
    left: 0px; }
  50% {
    left: 100%;
    width: 100%;
    opacity: 0.2; }
  100% {
    left: 100%;
    width: 100%;
    opacity: 0.2; } }
@-webkit-keyframes up {
  0% {
    width: 0%; }
  25% {
    width: 100%;
    left: 0px; }
  50% {
    left: 100%;
    width: 100%;
    opacity: 0.2; }
  100% {
    left: 100%;
    width: 100%;
    opacity: 0.2; } }
.before-check:before {
  font-family: 'icomoon';
  content: "\ea10";
  color: #003366; }

.btn_arrow_right {
  line-height: 1em; }
  .btn_arrow_right a {
    color: #13172F; }
    .btn_arrow_right a::after {
      font-family: 'icomoon';
      content: "\e917";
      color: #003366;
      padding-left: 0.3em;
      color: #F80; }
    .btn_arrow_right a:hover {
      color: #F80; }

.btn_slide {
  text-align: center; }
  .btn_slide a {
    display: inline-block;
    background: #003366;
    padding: 15px 50px;
    border-radius: 4px;
    font-size: 16px;
    letter-spacing: 0.05em;
    color: #fff;
    overflow: hidden;
    position: relative;
    transition: 0.6s; }
    .btn_slide a::after {
      content: "";
      position: absolute;
      height: 250px;
      width: 100px;
      background: #fff;
      opacity: 0.2;
      transform: rotate(35deg);
      top: -80px;
      left: -140px;
      transition: 0.3s; }
    .btn_slide a:hover {
      background: #00478f; }
      .btn_slide a:hover::after {
        left: 120%; }

.sns_box {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 10px 0 20px 0; }

.sns_button {
  float: left;
  box-shadow: inset 0 0 0 2px #FFF;
  border-radius: 100%;
  -moz-transition: all 280ms ease;
  -o-transition: all 280ms ease;
  -webkit-transition: all 280ms ease;
  transition: all 280ms ease; }

.sns_button a {
  display: table-cell;
  width: 44px;
  height: 44px;
  color: #003366;
  text-align: center;
  vertical-align: middle;
  -moz-transition: all 280ms ease;
  -o-transition: all 280ms ease;
  -webkit-transition: all 280ms ease;
  transition: all 280ms ease; }

.sns_button span {
  font-size: 20px;
  vertical-align: middle;
  font-family: 'icomoon';
  color: #FFF; }

.sns_button:hover {
  box-shadow: inset 0 0 0 22px #FFF; }

.sns_button + .sns_button {
  margin: 0 0 0 12px; }

.twitter span:before {
  content: "\e903"; }
.twitter:hover span {
  color: #1B95E0; }

.facebook span:before {
  content: "\e902"; }
.facebook:hover span {
  color: #3B5999; }

.instagram span:before {
  content: "\e904"; }
.instagram:hover span {
  color: #2b5c84; }

.pocket span:before {
  content: "\e901"; }
.pocket:hover span {
  color: #EE4056; }

.line span:before {
  content: "\e900"; }
.line:hover span {
  color: #00b900; }

dl {
  margin-bottom: 1.7rem; }
  dl dt {
    font-weight: bold;
    color: #555; }

.table-border tr th, .table-border tr td {
  padding: 15px 10px; }
.table-border tr th {
  text-align: left;
  border-bottom: 2px solid #DDDDEE; }
.table-border tr td {
  border-bottom: 1px solid #DDDDEE; }
  .table-border tr td:first-child, .table-border tr td:nth-child(3) {
    width: 14em; }
@media only screen and (max-width: 960px) {
  .table-border tr.heading {
    display: none; }
  .table-border tr td {
    display: block;
    width: 100% !important; }
    .table-border tr td:first-child {
      background: #DDDDEE; }
    .table-border tr td::before {
      content: attr(data-label);
      font-size: .85rem;
      color: #555;
      display: block;
      margin-bottom: 0.25rem; } }

.img-center {
  display: block;
  margin: 0 auto; }

.img-border {
  border: 1px solid #DDDDEE; }

.externalLink:after {
  font-family: 'icomoon';
  content: " \e91a"; }

.altanatokyoTable th {
  width: 17em; }

.altana {
  width: 100%; }
  .altana tr td:first-child, .altana tr td:nth-child(2) {
    width: calc(42% - 10px); }
  .altana tr td:nth-child(3) {
    width: 16%; }

.architectual img {
  margin-bottom: 10px;
  border: solid 1px #003366;
  border-radius: 4px; }
.architectual-exterior a:before {
  font-family: 'icomoon';
  content: "\e90d";
  padding-right: 5px; }

.manufacturers ul {
  margin: 10px 0;
  padding: 0;
  list-style-type: none; }
  .manufacturers ul li {
    padding: 5px 0 10px 10px; }
  .manufacturers ul a:after {
    font-family: 'icomoon';
    content: " \e91a"; }

/*カテゴリーリンク*/
.cat-link {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-top: 20px;
  padding-bottom: 20px; }
  .cat-link .item {
    width: calc(100% / 4 - 10px);
    /*a {
      color: $color-accent;
      font-weight: bold;
      padding: 10px;
      display: block;
    }*/ }
    @media only screen and (max-width: 559px) {
      .cat-link .item {
        width: calc(100% / 2 - 5px);
        margin-bottom: 10px; }
        .cat-link .item:nth-last-child(-n+2) {
          margin-bottom: 0; } }

/*カラム　バリエーションなど*/
.list-row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  .list-row.row-2 .item {
    width: calc(100% / 2 - 20px);
    margin-bottom: 40px; }
    @media only screen and (max-width: 559px) {
      .list-row.row-2 .item {
        width: 100%;
        margin-bottom: 20px; } }
  .list-row.row-3::before {
    width: calc(100% / 3 - 20px);
    content: "";
    display: block;
    height: 0;
    order: 1; }
  .list-row.row-3 .item {
    width: calc(100% / 3 - 20px);
    margin-bottom: 40px; }
    @media only screen and (max-width: 559px) {
      .list-row.row-3 .item {
        width: calc(100% / 2 - 10px);
        margin-bottom: 20px; } }
  .list-row.row-4::before, .list-row.row-4::after {
    width: calc(100% / 4 - 20px);
    content: "";
    display: block;
    height: 0; }
  .list-row.row-4::before {
    order: 1; }
  .list-row.row-4 .item {
    width: calc(100% / 4 - 20px);
    margin-bottom: 40px; }
    @media only screen and (max-width: 559px) {
      .list-row.row-4 .item {
        width: calc(100% / 2 - 10px);
        margin-bottom: 20px; } }
  .list-row.row-5::before, .list-row.row-5::after {
    width: calc(100% / 5 - 20px);
    content: "";
    display: block;
    height: 0; }
  .list-row.row-5::before {
    order: 1; }
  @media only screen and (max-width: 1239px) {
    .list-row.row-5::before, .list-row.row-5::after {
      width: calc(100% / 4 - 10px);
      content: "";
      display: block;
      height: 0; } }
  .list-row.row-5 .item {
    width: calc(100% / 5 - 20px);
    margin-bottom: 40px; }
    @media only screen and (max-width: 1239px) {
      .list-row.row-5 .item {
        width: calc(100% / 4 - 10px);
        margin-bottom: 20px; } }
    @media only screen and (max-width: 559px) {
      .list-row.row-5 .item {
        width: calc(100% / 2 - 10px);
        margin-bottom: 20px; } }
  .list-row.row-6 .item {
    width: calc(100% / 6 - 20px);
    margin-bottom: 40px; }
    @media only screen and (max-width: 559px) {
      .list-row.row-6 .item {
        width: calc(100% / 2 - 10px);
        margin-bottom: 20px; } }
  .list-row .item-img {
    text-align: center; }
  .list-row.item-block .item-img img {
    margin-bottom: 10px; }
  .list-row.item-block h3 {
    color: #003366;
    font-size: 17px; }
  .list-row.item-block p {
    font-size: 15px;
    margin-bottom: 0; }
  .list-row.item-block .item-draw {
    padding: 5px;
    margin-top: 10px;
    border: 1px solid #DDDDEE; }
    .list-row.item-block .item-draw p {
      font-size: 14px;
      text-align: right;
      font-weight: bold;
      color: #003366; }
  @media only screen and (max-width: 559px) {
    .list-row.item-block h3 {
      font-size: 15px; }
    .list-row.item-block p {
      font-size: 14px; } }

/*画像　※折り返し無し*/
.row-nowrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  .row-nowrap .item {
    padding: 10px; }
  @media only screen and (max-width: 559px) {
    .row-nowrap {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; } }

/*取付方法　動画*/
#products-movie {
  background: rgba(0, 51, 102, 0.1); }

.products-movie .container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  .products-movie .container::before {
    width: calc(100% / 3 - 10px);
    content: "";
    display: block;
    height: 0;
    order: 1; }
  .products-movie .container .item {
    width: calc(100% / 3 - 10px);
    border: 1px solid #DDDDEE;
    border-radius: 4px;
    background: #FFF;
    padding: 10px;
    margin-bottom: 20px;
    position: relative; }
    .products-movie .container .item .item-img {
      margin-bottom: 10px;
      overflow: hidden;
      position: relative; }
      .products-movie .container .item .item-img::before {
        position: absolute;
        z-index: 1;
        top: 50%;
        left: 50%;
        -ms-transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        margin: 0;
        padding: 0;
        font-family: 'icomoon';
        color: #FFFEF7;
        font-size: 2.5em;
        content: "\e919";
        display: block; }
      .products-movie .container .item .item-img img {
        width: 100%; }
    .products-movie .container .item h3 {
      font-size: 16px; }
    .products-movie .container .item p {
      font-size: 11px;
      margin-top: 5px; }
      .products-movie .container .item p span {
        display: inline-block;
        border: 1px solid #DDDDEE;
        background: #FFF;
        border-radius: 12px;
        padding: 3px 10px;
        margin-right: 5px;
        margin-bottom: 5px; }
    .products-movie .container .item:hover {
      border-radius: 4px; }
      .products-movie .container .item:hover .item-img {
        overflow: hidden; }
        .products-movie .container .item:hover .item-img img {
          transform: scale(1.1, 1.1);
          transition: 0.6s all; }
  @media only screen and (max-width: 960px) {
    .products-movie .container .item {
      width: calc(100% / 2 - 5px);
      margin-bottom: 10px; }
      .products-movie .container .item p {
        font-size: 10px; } }
  @media only screen and (max-width: 559px) {
    .products-movie .container .item {
      width: 100%; } }

.iframe-content {
  position: relative;
  padding-top: 56.25%; }
  .iframe-content iframe {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0; }

/*施工事例*/
#case-list .container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  #case-list .container::before {
    width: calc(100% / 4 - 10px);
    content: "";
    display: block;
    height: 0;
    order: 1; }
  #case-list .container::after {
    width: calc(100% / 4 - 10px);
    margin-bottom: 20px;
    content: "";
    display: block;
    height: 0; }
  #case-list .container .item {
    width: calc(100% / 4 - 10px);
    border: 1px solid #DDDDEE;
    border-radius: 4px;
    padding: 8px;
    margin-bottom: 20px;
    position: relative; }
    #case-list .container .item .item-img {
      margin-bottom: 10px;
      overflow: hidden; }
    #case-list .container .item h3 {
      font-size: 16px;
      margin-bottom: 5px; }
    #case-list .container .item p {
      font-size: 11px; }
      #case-list .container .item p span {
        display: inline-block;
        border: 1px solid #DDDDEE;
        background: #FFF;
        border-radius: 12px;
        padding: 3px 10px;
        margin-right: 5px;
        margin-bottom: 5px; }
    #case-list .container .item:hover {
      border-radius: 4px; }
      #case-list .container .item:hover .item-img {
        overflow: hidden; }
        #case-list .container .item:hover .item-img img {
          transform: scale(1.1, 1.1);
          transition: 0.6s all; }
  @media only screen and (max-width: 960px) {
    #case-list .container .item {
      width: calc(100% / 2 - 5px);
      margin-bottom: 10px; }
      #case-list .container .item p {
        font-size: 10px; } }

/*お問い合わせ*/
#contact-box {
  background: #003366; }

.contact-box h2 {
  text-align: center;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  color: #FFF;
  font-size: 26px;
  line-height: 1;
  letter-spacing: 0.05em;
  margin-bottom: 20px; }
  @media only screen and (max-width: 559px) {
    .contact-box h2 {
      font-size: 5.0vw; } }
.contact-box .container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center; }
.contact-box .item {
  text-align: center;
  width: 40%;
  padding: 10px 20px;
  margin: 5px;
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: 4px; }
  .contact-box .item h3, .contact-box .item p {
    line-height: 1;
    padding: 5px 0; }
  .contact-box .item h3 {
    color: #FFFF00;
    font-size: 28px;
    font-weight: normal; }
  .contact-box .item p {
    color: #FFF;
    font-size: 0.9rem;
    margin-bottom: 0; }
  @media only screen and (max-width: 1239px) {
    .contact-box .item h3 {
      font-size: 1.9vw; }
    .contact-box .item p {
      font-size: 0.7vw; } }
  @media only screen and (max-width: 960px) {
    .contact-box .item {
      width: calc(100% / 2 - 10px); }
      .contact-box .item h3 {
        font-size: 3.4vw; }
      .contact-box .item p {
        font-size: 2.0vw; } }
  @media only screen and (max-width: 559px) {
    .contact-box .item {
      width: 100%; }
      .contact-box .item h3 {
        font-size: 5.8vw; }
      .contact-box .item p {
        font-size: 3.6vw; } }
  .contact-box .item:hover {
    background-color: rgba(255, 255, 255, 0.8);
    transition: 0.6s; }
    .contact-box .item:hover h3 {
      color: #003366; }
    .contact-box .item:hover p {
      color: #003366; }

.contact-mail::before {
  font-family: 'icomoon';
  content: "\e909";
  font-weight: normal; }

.contact-tel::before {
  font-family: 'icomoon';
  content: "\e90a";
  font-weight: normal; }

#footer {
  font-size: 0.9em;
  background: #000 url(../img/footer_bg.jpg) no-repeat center center/cover; }
  #footer .footer-menu {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    #footer .footer-menu ul li {
      line-height: 1.9; }
      #footer .footer-menu ul li a {
        color: #FFF;
        display: block; }
        #footer .footer-menu ul li a::before {
          font-family: 'icomoon';
          content: "\e90d";
          color: #FFF;
          padding-right: 5px; }
        #footer .footer-menu ul li a:hover {
          color: #FFFF00; }
      #footer .footer-menu ul li.menu-ttl a::before {
        content: none; }
    @media only screen and (max-width: 960px) {
      #footer .footer-menu ul {
        width: 100%;
        border-top: 1px solid rgba(255, 255, 255, 0.2); }
        #footer .footer-menu ul li {
          line-height: 3;
          padding-left: 5px; }
          #footer .footer-menu ul li:hover {
            background: rgba(255, 255, 255, 0.1); }
          #footer .footer-menu ul li:not(:last-child) {
            border-bottom: 1px solid rgba(255, 255, 255, 0.2); } }
    #footer .footer-menu .footer-logo {
      width: 300px;
      color: #FFF;
      border-right: 1px solid rgba(255, 255, 255, 0.4);
      padding-right: 20px;
      text-align: center; }
      #footer .footer-menu .footer-logo p {
        margin-bottom: 0; }
      #footer .footer-menu .footer-logo img {
        max-width: 100%;
        margin-bottom: 5px; }
      @media screen and (max-width: 959px) {
        #footer .footer-menu .footer-logo {
          width: 100%;
          text-align: center;
          border-right: none;
          padding-right: 0;
          margin-bottom: 40px; }
          #footer .footer-menu .footer-logo img {
            width: 300px; } }
  #footer .footer-copy {
    text-align: center;
    color: #FFF;
    padding-bottom: 20px; }

/*パンくず*/
#breadcrumb {
  border-bottom: 1px solid #DDDDEE;
  font-weight: light; }
  #breadcrumb ul {
    padding-top: 5px;
    padding-bottom: 5px;
    text-decoration: none;
    font-size: 0; }
    #breadcrumb ul li {
      display: inline-block;
      font-size: 14px;
      padding-right: 0.5em;
      padding-bottom: 0; }
      #breadcrumb ul li:not(:first-child)::before {
        font-family: 'icomoon';
        content: "\e90d";
        color: #555;
        padding-right: 0.5em;
        font-size: 1em; }

/*型番検索*/
.search-number {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  .search-number input[type='search'] {
    width: calc(100% - 85px); }
  .search-number input[type='submit'] {
    width: 80px;
    border: 1px solid rgba(221, 221, 238, 0.3); }

#header-img {
  padding-top: 50px; }
  #header-img .header-contents {
    position: absolute; }
    #header-img .header-contents h2 {
      font-size: 5.2vw;
      color: #FFF;
      font-weight: 700;
      line-height: 1.5;
      margin-bottom: 0;
      font-feature-settings: "palt";
      letter-spacing: 0.05;
      text-shadow: 1px 1px 5px #003366, 0px 0px 10px #003366; }
    #header-img .header-contents img {
      max-width: 80%;
      margin-bottom: 20px; }
    #header-img .header-contents p {
      color: #FFF;
      font-weight: bold;
      letter-spacing: 0.05em; }
    #header-img .header-contents .btn_slide {
      margin-top: 20px;
      text-align: left; }
  @media screen and (min-width: 1024px) {
    #header-img {
      padding-top: 60px; }
      #header-img .header-contents h2 {
        font-size: 38px; }
      #header-img .header-contents img {
        max-width: 100%; } }
  @media only screen and (max-width: 559px) {
    #header-img .header-contents .btn_slide {
      text-align: center; } }

.subImage__text {
  margin-bottom: 0;
  font-size: 33px;
  line-height: 1.3;
  letter-spacing: -0.03em !important;
  text-shadow: 1px 1px 5px #003366, 0px 0px 10px #003366; }
  @media only screen and (max-width: 559px) {
    .subImage__text {
      font-size: 5.2vw; } }
  .subImage__text span {
    font-size: 80%; }

/*トップメインスライダー*/
.top-slider {
  height: 500px; }
  .top-slider .slider-items .slider-item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    background-size: cover;
    background-repeat: no-repeat; }
  .top-slider .slider-items .slider-item1 {
    position: relative;
    background-image: url("../img/header_bg_top_01.jpg");
    background-position: center center; }
    @media only screen and (max-width: 559px) {
      .top-slider .slider-items .slider-item1 {
        background-image: url("../img/header_bg_top_01_sp.jpg");
        background-position: center center; } }
    .top-slider .slider-items .slider-item1 .header-contents {
      position: relative;
      display: flex;
      justify-content: center;
      align-items: flex-end; }
      .top-slider .slider-items .slider-item1 .header-contents img {
        max-height: 200px; }
    .top-slider .slider-items .slider-item1 .btn_slide {
      position: absolute;
      left: 50%;
      bottom: 3rem;
      transform: translateX(-50%);
      text-align: center; }
      @media only screen and (max-width: 1239px) {
        .top-slider .slider-items .slider-item1 .btn_slide {
          width: 26rem; } }
      @media only screen and (max-width: 559px) {
        .top-slider .slider-items .slider-item1 .btn_slide {
          width: 20rem; } }
  .top-slider .slider-items .slider-item2 {
    background-image: url("../img/header_louverrail.jpg");
    background-position: center center; }
    @media only screen and (max-width: 559px) {
      .top-slider .slider-items .slider-item2 {
        background-image: url("../img/header_louverrail_sp.jpg");
        background-position: center center; } }
  .top-slider .slider-items .slider-item3 {
    background-image: url("../img/header_visorrail.jpg");
    background-position: center center; }
    @media only screen and (max-width: 559px) {
      .top-slider .slider-items .slider-item3 {
        background-image: url("../img/header_visorrail_sp.jpg");
        background-position: center center; } }
  .top-slider .slider-items .slider-item4 {
    background-image: url("../img/header_boxrail.jpg");
    background-position: center center; }
    @media only screen and (max-width: 559px) {
      .top-slider .slider-items .slider-item4 {
        background-image: url("../img/header_boxrail_sp.jpg");
        background-position: left 90% center; } }
  .top-slider .slider-items .slider-item5 {
    background-image: url("../img/header_alumispan.jpg");
    background-position: center center; }
    @media only screen and (max-width: 559px) {
      .top-slider .slider-items .slider-item5 {
        background-image: url("../img/header_alumispan_sp.jpg");
        background-position: left 85% center; } }
  .top-slider .slider-items .slider-item-boxrail01 {
    background-image: url("../img/header_boxrail_slider_01.jpg");
    background-position: center center; }
    @media only screen and (max-width: 559px) {
      .top-slider .slider-items .slider-item-boxrail01 {
        background-image: url("../img/header_boxrail_slider_01_sp.jpg");
        background-position: center center; } }
  .top-slider .slider-items .slider-item-boxrail02 {
    background-image: url("../img/header_boxrail_slider_02.jpg");
    background-position: center center; }
    @media only screen and (max-width: 559px) {
      .top-slider .slider-items .slider-item-boxrail02 {
        background-image: url("../img/header_boxrail_slider_02_sp.jpg");
        background-position: left 70% center; } }
  .top-slider .slider-items .slider-item-boxrail03 {
    background-image: url("../img/header_boxrail_slider_03.jpg");
    background-position: center center; }
    @media only screen and (max-width: 559px) {
      .top-slider .slider-items .slider-item-boxrail03 {
        background-image: url("../img/header_boxrail_slider_03_sp.jpg");
        background-position: center center; } }
  .top-slider .slider-items .slider-item-louverrail01 {
    background-image: url("../img/header_louverrail_slider_01.jpg");
    background-position: center center; }
    @media only screen and (max-width: 559px) {
      .top-slider .slider-items .slider-item-louverrail01 {
        background-image: url("../img/header_louverrail_slider_01_sp.jpg");
        background-position: center center; } }
  .top-slider .slider-items .slider-item-louverrail02 {
    background-image: url("../img/header_louverrail_slider_02.jpg");
    background-position: center center; }
    @media only screen and (max-width: 559px) {
      .top-slider .slider-items .slider-item-louverrail02 {
        background-image: url("../img/header_louverrail_slider_02_sp.jpg");
        background-position: left 70% center; } }
  .top-slider .slider-items .slider-item-louverrail03 {
    background-image: url("../img/header_louverrail_slider_03.jpg");
    background-position: center center; }
    @media only screen and (max-width: 559px) {
      .top-slider .slider-items .slider-item-louverrail03 {
        background-image: url("../img/header_louverrail_slider_03_sp.jpg");
        background-position: center center; } }
  @media only screen and (max-width: 559px) {
    .top-slider .next1, .top-slider .prev1 {
      display: none; } }

#header-img .header-long, #header-img .header-short {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: center;
  align-items: center;
  background-size: cover;
  background-repeat: no-repeat; }
#header-img .header-long {
  height: 450px; }
#header-img .header-short {
  height: 200px; }
  #header-img .header-short .header-contents h2 {
    letter-spacing: 0.1em; }
#header-img .product-boxrail {
  background-image: url("../img/header_boxrail.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    #header-img .product-boxrail {
      background-image: url("../img/header_boxrail_sp.jpg");
      background-position: right center; } }
#header-img .product-louverrail {
  background-image: url("../img/header_louverrail.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    #header-img .product-louverrail {
      background-image: url("../img/header_louverrail_sp.jpg");
      background-position: left center; } }
#header-img .product-visorrail {
  background-image: url("../img/header_visorrail.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    #header-img .product-visorrail {
      background-image: url("../img/header_visorrail_sp.jpg");
      background-position: right 25% center; } }
#header-img .product-alumispan {
  background-image: url("../img/header_alumispan.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    #header-img .product-alumispan {
      background-image: url("../img/header_alumispan_sp.jpg");
      background-position: right 30% center; } }
#header-img .altanatokyo {
  background-image: url("../img/header_altanatokyo.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    #header-img .altanatokyo {
      background-image: url("../img/header_altanatokyo_sp.jpg");
      background-position: right 30% center; } }
#header-img .about {
  background-image: url("../img/header_about.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    #header-img .about {
      background-image: url("../img/header_about_sp.jpg");
      background-position: center center; } }
#header-img .wholesale {
  background-image: url("../img/header_wholesale.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    #header-img .wholesale {
      background-image: url("../img/header_wholesale_sp.jpg");
      background-position: center center; } }
#header-img .news {
  background-image: url("../img/header_news.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    #header-img .news {
      background-image: url("../img/header_news_sp.jpg");
      background-position: center center; } }
#header-img .case {
  background-image: url("../img/header_case.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    #header-img .case {
      background-image: url("../img/header_case_sp.jpg");
      background-position: center center; } }
#header-img .movie {
  background-image: url("../img/header_movie.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    #header-img .movie {
      background-image: url("../img/header_movie_sp.jpg");
      background-position: center center; } }
#header-img .contact {
  background-image: url("../img/header_contact.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    #header-img .contact {
      background-image: url("../img/header_contact_sp.jpg");
      background-position: center center; } }
#header-img .drawing {
  background-image: url("../img/header_drawing.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    #header-img .drawing {
      background-image: url("../img/header_drawing_sp.jpg");
      background-position: center center; } }
#header-img .recruit {
  background-image: url("../img/header_recruit.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    #header-img .recruit {
      background-image: url("../img/header_recruit_sp.jpg");
      background-position: center center; } }

#important-news {
  padding-top: 20px;
  padding-bottom: 20px; }
  #important-news .item a {
    position: relative;
    display: block;
    line-height: 2em;
    padding-left: 2.5em; }
    #important-news .item a:before {
      position: absolute;
      top: 0;
      left: 0;
      font-family: 'icomoon';
      content: "\e914";
      color: #003366;
      font-size: 2em; }

/*トップページバナー*/
#top-products {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background: rgba(0, 51, 102, 0.3);
  padding: 10px; }
  #top-products .products-item {
    width: calc(100% / 6 - 8px); }
  @media only screen and (max-width: 960px) {
    #top-products {
      padding: 5px; }
      #top-products .products-item {
        width: calc(100% / 2 - 2.5px);
        margin-bottom: 5px; }
        #top-products .products-item:nth-last-child(-n+2) {
          margin-bottom: 0; } }

/*ニュース*/
#top-news .column {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  #top-news .column .column-left {
    width: calc(100% - 340px); }
  #top-news .column .column-right {
    width: 300px;
    text-align: center; }
  @media screen and (max-width: 767px) {
    #top-news .column {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-direction: column-reverse !important;
      flex-direction: column-reverse !important; }
      #top-news .column .column-left, #top-news .column .column-right {
        width: 100%; }
      #top-news .column .column-right {
        padding-bottom: 20px; } }

.banner-parts img {
  width: 100%;
  margin-bottom: 10px;
  padding: 5px;
  background: #DDDDEE;
  border-radius: 4px; }

.news-list ul {
  margin-bottom: 20px;
  border-top: 1px solid rgba(119, 119, 119, 0.3); }
  .news-list ul li {
    display: -ms-flexbox;
    display: flex;
    color: #003366;
    position: relative;
    border-bottom: 1px solid rgba(119, 119, 119, 0.3);
    padding: 15px 0; }
    .news-list ul li:hover {
      background-color: transparent;
      background-image: radial-gradient(circle at 50% 50%, rgba(85, 85, 85, 0.1) 20%, transparent 100%); }
    .news-list ul li time {
      font-weight: bold;
      color: #555;
      width: 6em; }
    .news-list ul li a {
      color: #003366;
      width: calc(100% - 7em);
      transition: 0.6s; }
      .news-list ul li a span {
        display: inline-block;
        width: 6em;
        font-size: 13px;
        line-height: 1;
        text-align: center;
        padding: 3px 5px;
        margin-right: 10px;
        background: #00478f;
        border-radius: 2px;
        color: #FFF; }
@media only screen and (max-width: 960px) {
  .news-list ul {
    padding: 0; }
    .news-list ul li {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      padding: 10px 0; }
      .news-list ul li time {
        width: 100%;
        padding-bottom: 0;
        border-bottom: none; }
      .news-list ul li a {
        width: 100%;
        padding-top: 0; } }

/*取付動画*/
/*田中金属の強み*/
#top-feature {
  background: rgba(0, 51, 102, 0.1); }
  #top-feature .container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    #top-feature .container .item {
      width: 32%;
      background: #003366;
      padding: 20px;
      color: #FFF;
      border-radius: 8px; }
      #top-feature .container .item img {
        display: block;
        margin: 0 auto;
        width: 70%; }
      #top-feature .container .item:nth-child(2) {
        background: #00478f; }
      #top-feature .container .item:nth-child(3) {
        background: #0059b3; }
      #top-feature .container .item h3 {
        margin-bottom: 30px;
        text-align: center;
        position: relative; }
        #top-feature .container .item h3::before {
          content: '';
          position: absolute;
          bottom: -15px;
          display: inline-block;
          width: 40px;
          height: 4px;
          left: 50%;
          -moz-transform: translateX(-50%);
          -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
          transform: translateX(-50%);
          background-color: #fff;
          border-radius: 2px; }
      #top-feature .container .item p {
        margin-bottom: 20px; }
      @media screen and (max-width: 767px) {
        #top-feature .container .item {
          width: 100%;
          margin-bottom: 20px; } }
  #top-feature .btn_slide a {
    width: 100%;
    background-color: transparent;
    border: 1px solid #DDDDEE;
    padding: 10px;
    font-size: 16px; }

.louverrail_textSet {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center; }

@media only screen and (min-width: 961px) {
  .col-60-40 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .col-60-40::after {
      content: "";
      clear: both;
      height: 0;
      display: block;
      visibility: hidden; }

  .col-60 {
    width: 60%; }

  .col-40 {
    width: 33%; } }
.item-thumb {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 20px; }
  .item-thumb::before, .item-thumb::after {
    width: calc(100% / 4 - 10px);
    content: "";
    display: block;
    height: 0; }
  .item-thumb::before {
    order: 1; }
  .item-thumb a {
    width: calc(100% / 4 - 10px);
    margin-bottom: 15px; }
  @media only screen and (max-width: 559px) {
    .item-thumb {
      margin-bottom: 40px; }
      .item-thumb a {
        width: calc(100% / 2 - 5px);
        margin-bottom: 10px; } }

.item-spec dl dt {
  font-size: 0.85em;
  padding-left: 5px;
  margin-bottom: 5px;
  border-left: 5px solid rgba(255, 136, 0, 0.6);
  position: relative; }
.item-spec dl dd {
  margin-bottom: 20px; }
  .item-spec dl dd:last-of-type {
    margin-bottom: 0; }
.item-spec p {
  margin-bottom: 1.7rem; }

/*お知らせ*/
#news header h2 {
  font-size: 24px;
  line-height: 1.6; }
#news header span {
  padding-left: 10px; }
  #news header span::before {
    content: "|";
    padding-right: 10px; }
@media only screen and (max-width: 559px) {
  #news header h2 {
    font-size: 18px; } }
#news .news-contents p {
  line-height: 1.8; }
#news .news-contents h3 {
  margin-bottom: 10px;
  color: #00478f; }

#case .col-60 {
  text-align: center; }
  #case .col-60 img {
    width: 100%; }

/*図面データ*/
#drawing .drawing-menu {
  margin-bottom: 20px; }
  #drawing .drawing-menu ul li {
    display: inline-block;
    font-size: 0.85em; }
    #drawing .drawing-menu ul li a {
      padding: 5px; }
      #drawing .drawing-menu ul li a::after {
        font-family: 'icomoon';
        content: "\e910";
        color: #F80; }
#drawing table {
  width: 100%;
  border-top: 1px solid #DDDDEE; }
  #drawing table tr {
    background-color: rgba(221, 221, 238, 0.1);
    border-bottom: 1px solid #DDDDEE;
    /*th, td {
      border-right: 1px solid $color-white;
      &:last-child {
        border-right: none;
      }
    }*/ }
    #drawing table tr:nth-child(odd) {
      background-color: rgba(221, 221, 238, 0.4); }
    #drawing table tr th {
      font-weight: normal;
      padding: 10px;
      font-size: 0.85em; }
    #drawing table tr td {
      padding: 10px; }
      #drawing table tr td h3 {
        font-size: 1.1em; }
        #drawing table tr td h3 a {
          color: #003366;
          cursor: default; }
      #drawing table tr td .btn_arrow_right {
        display: inline-block; }
      #drawing table tr td:nth-child(1) {
        text-align: center; }
        #drawing table tr td:nth-child(1) img {
          max-width: 120px;
          max-height: 120px;
          width: auto;
          height: auto; }
      #drawing table tr td:nth-child(2) {
        font-weight: bold; }
        #drawing table tr td:nth-child(2) ul {
          list-style: none; }
          #drawing table tr td:nth-child(2) ul li {
            display: block;
            font-weight: normal;
            line-height: 1.3; }
            #drawing table tr td:nth-child(2) ul li a {
              font-size: 0.85em;
              color: #555; }
              #drawing table tr td:nth-child(2) ul li a:hover {
                color: #F80; }
      #drawing table tr td:nth-child(3) {
        font-size: 0.85em; }
      #drawing table tr td:last-child {
        text-align: right;
        width: 100px; }
        #drawing table tr td:last-child a {
          width: 80px;
          display: inline-block;
          text-align: center;
          padding: 5px 10px;
          margin: 2px 1px;
          font-size: 13px;
          color: #003366;
          border: solid 1px #003366;
          transition: .6s; }
          #drawing table tr td:last-child a:after {
            font-family: 'icomoon';
            content: " \e91b"; }
          #drawing table tr td:last-child a:hover {
            background: #003366;
            color: #FFF; }
  @media only screen and (max-width: 559px) {
    #drawing table tr {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      padding: 10px; }
      #drawing table tr th, #drawing table tr td {
        border-right: none; }
      #drawing table tr th {
        display: none; }
      #drawing table tr td {
        padding: 0 10px; }
        #drawing table tr td:nth-child(1) {
          min-width: 120px; }
        #drawing table tr td:nth-child(3) {
          width: 100%;
          text-align: center;
          padding-top: 10px; }
        #drawing table tr td:last-child {
          width: 100%;
          text-align: center; }
          #drawing table tr td:last-child a {
            width: auto;
            padding: 10px; } }

.archive #spotlight .scene img, .page #spotlight .scene img {
  background: #fff;
  padding: 20px !important; }

.single-case #spotlight .scene img {
  max-height: 80%; }

.about-theme {
  text-align: center;
  margin-bottom: 30px; }
  .about-theme p {
    font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    font-size: 25px;
    font-weight: bold;
    line-height: 0.8; }
    @media only screen and (min-width: 961px) {
      .about-theme p {
        font-size: 28px;
        display: inline-block; } }

.table-01 {
  width: 100%;
  border-top: 1px solid #DDDDEE; }
  .table-01 th, .table-01 td {
    text-align: left;
    padding: 15px 20px;
    border-bottom: 1px solid #DDDDEE; }
  .table-01 th {
    width: 12em;
    background-color: rgba(221, 221, 238, 0.3); }
  @media only screen and (max-width: 559px) {
    .table-01 th, .table-01 td {
      width: 100%;
      display: block; }
    .table-01 th {
      background: #DDDDEE; } }

#map_canvas {
  height: 400px;
  margin-bottom: 20px; }

.img_asr-9001 {
  margin: 0 auto;
  width: 300px; }
  @media only screen and (max-width: 559px) {
    .img_asr-9001 {
      width: 75%; } }

.img_cartificate {
  border: solid 1px #DDDDEE; }

#map {
  display: block;
  height: 60px;
  margin-top: -60px;
  content: ""; }

.side-block .side-parts {
  margin-bottom: 40px; }
  .side-block .side-parts:last-of-type {
    margin-bottom: 0; }

.side-block .listlayout {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .side-block .listlayout .item {
    width: 100%;
    padding: 5px; }
    .side-block .listlayout .item .item-photo {
      width: 25%;
      margin-right: 5%; }
    .side-block .listlayout .item .item-detail {
      width: 70%; }
      .side-block .listlayout .item .item-detail h3 {
        font-size: 0.85rem;
        margin: 4px 0 0 0; }
    @media only screen and (max-width: 960px) {
      .side-block .listlayout .item {
        width: calc(50% - 10px); } }

.side-list ul {
  padding-left: 0;
  list-style: none; }
  .side-list ul li {
    border-bottom: 1px solid #DDDDEE;
    font-size: 1rem;
    position: relative; }
    @media only screen and (max-width: 960px) {
      .side-list ul li {
        font-size: 1.0rem; } }
    .side-list ul li:before {
      position: absolute;
      top: 50%;
      left: 3px;
      transform: translateY(-50%);
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      font-family: 'icomoon';
      content: "\e910";
      color: #F80; }
    .side-list ul li a {
      display: block;
      color: #13172F;
      padding: 10px 5px 10px 24px;
      background-color: rgba(221, 221, 238, 0.3); }
      .side-list ul li a:hover {
        background-color: rgba(221, 221, 238, 0.6);
        color: #F80;
        transition: 0.1s linear; }
      .side-list ul li a img {
        height: 40px;
        padding: 5px 0;
        display: block; }
    .side-list ul li:first-child {
      border-top: 1px solid #DDDDEE; }
.side-list.news-list ul li {
  padding: 0; }
.side-list.news-list a {
  width: 100%;
  font-size: 14px; }
  .side-list.news-list a span {
    font-size: 12px;
    width: auto; }

.side-newpost ul {
  padding-left: 0;
  list-style: none; }
  .side-newpost ul li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #DDDDEE;
    padding: 10px 5px;
    font-size: 0.9rem;
    line-height: 1.4;
    position: relative; }
    .side-newpost ul li:hover {
      background-color: #DDDDEE;
      transition: 0.5s linear; }
    .side-newpost ul li a {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      text-indent: -9999px; }
    .side-newpost ul li:first-child {
      border-top: 1px solid #DDDDEE; }
    .side-newpost ul li .thumbnail {
      width: 26%; }
    .side-newpost ul li .title {
      width: 69%; }

.side-parts .cardlayout .item {
  border-bottom: 1px solid #DDDDEE; }
  .side-parts .cardlayout .item:first-child {
    border-top: 1px solid #DDDDEE; }

.side-parts.banner-parts {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  @media only screen and (min-width: 560px) and (max-width: 960px) {
    .side-parts.banner-parts .banner-item {
      width: 32%; } }

#contact-form button {
  background: none;
  border: none;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }
#contact-form h3 {
  font-weight: normal;
  font-size: 24px;
  margin: 50px 0 20px 0;
  color: #003366; }
  @media only screen and (max-width: 559px) {
    #contact-form h3 {
      font-size: 18px; } }

.box {
  border-bottom: 1px solid #777;
  padding: 15px 0; }
  .box:first-of-type {
    border-top: 1px solid #777; }

.item-name {
  display: block;
  margin-bottom: 10px;
  font-size: 1.2rem;
  padding-left: 50px;
  position: relative; }
  @media only screen and (max-width: 559px) {
    .item-name {
      font-size: 1.0rem;
      padding-left: 40px; } }
  .item-name::before {
    content: '任意';
    font-size: 0.8rem;
    background: #777;
    color: #FFF;
    padding: 2px 10px;
    margin-right: 5px;
    position: absolute;
    left: 0;
    top: 2px;
    display: block; }
    @media only screen and (max-width: 559px) {
      .item-name::before {
        font-size: 0.7rem;
        padding: 2px 5px; } }
  .item-name.required::before {
    content: '必須';
    background: #F80; }

.item-sub-name {
  display: block;
  color: #777;
  margin-bottom: 5px;
  margin-top: 20px; }

.note {
  font-size: 0.9em;
  background: rgba(221, 221, 238, 0.4);
  padding: 15px;
  margin: 20px 0 40px 0; }
  .note ul {
    list-style: disc;
    padding-left: 25px; }
    .note ul li {
      margin-bottom: 5px; }

.text-red {
  color: #F80; }

.text-wrap, .select-wrap, .checkbox-wrap, .radio-wrap, .textarea-wrap {
  color: #555; }

input, textarea, select {
  font-size: 17px;
  line-height: 1; }
  @media only screen and (max-width: 960px) {
    input, textarea, select {
      font-size: 16px; } }

/* ----------------------------- */
/* ------ input,textarea  ------ */
/* ----------------------------- */
::placeholder {
  color: #bbb; }

input[type='text'], input[type='email'], input[type='search'] {
  width: 100%;
  padding: 10px;
  border: 1px solid #777;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none; }
  input[type='text'].error-element, input[type='email'].error-element, input[type='search'].error-element {
    border: 1px solid #F80;
    background: rgba(255, 136, 0, 0.05); }

.btn-large {
  border: none;
  display: block;
  width: 100%;
  max-width: 300px;
  padding: 15px;
  background-color: #003366;
  color: #FFF;
  letter-spacing: 0.05em;
  font-weight: bold;
  line-height: normal;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  margin: 10px auto 0  auto;
  text-align: center; }
  .btn-large a {
    color: #FFF; }
  .btn-large:hover {
    background-color: rgba(0, 51, 102, 0.8);
    color: #FFF; }
  .btn-large.btn-gray {
    background-color: #777; }
    .btn-large.btn-gray:hover {
      background-color: rgba(119, 119, 119, 0.8);
      color: #FFF; }
  .btn-large.btn-goast {
    color: #003366;
    background-color: #FFF;
    border: 1px solid #003366; }
    .btn-large.btn-goast:hover {
      background-color: rgba(0, 51, 102, 0.8); }

input[type='button'], input[type='submit'] {
  border: none;
  display: block;
  width: 100%;
  max-width: 300px;
  padding: 15px;
  background-color: #00478f;
  color: #FFF;
  letter-spacing: 0.05em;
  font-weight: bold;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  text-align: center;
  cursor: pointer; }
  input[type='button']:hover, input[type='submit']:hover {
    background-color: rgba(0, 51, 102, 0.8); }
  input[type='button'].btn-red, input[type='submit'].btn-red {
    background-color: #F80;
    cursor: pointer; }
    input[type='button'].btn-red:hover, input[type='submit'].btn-red:hover {
      background-color: rgba(255, 136, 0, 0.8); }
  input[type='button'].btn-gray, input[type='submit'].btn-gray {
    background-color: #777; }
    input[type='button'].btn-gray:hover, input[type='submit'].btn-gray:hover {
      background-color: rgba(119, 119, 119, 0.8);
      color: #FFF; }

textarea {
  width: 100%;
  height: 13em;
  padding: 10px;
  border: 1px solid #777;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none; }
  textarea.error-element {
    border: 1px solid #F80;
    background: rgba(255, 136, 0, 0.05); }

/* ---------------------------- */
/* ---------- radio  ---------- */
/* ---------------------------- */
.radio-wrap label {
  padding-right: 30px;
  display: inline-block;
  cursor: pointer; }

.radio-wrap input {
  display: none; }

.radio-wrap input + span {
  padding-left: 30px;
  position: relative;
  line-height: 2.4; }

.radio-wrap input + span::before {
  content: "";
  background-image: url(../img/contact/form-radio.png);
  background-size: contain;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 24px; }

.radio-wrap input:checked + span {
  color: #487cff; }

.radio-wrap input:checked + span::after {
  content: "";
  background-image: url(../img/contact/form-radio-checked.png);
  background-size: contain;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 24px; }

/* --------------------------- */
/* -------- checkbox  -------- */
/* --------------------------- */
.checkbox-wrap label {
  padding-right: 30px;
  display: inline-block;
  cursor: pointer; }

.checkbox-wrap input {
  display: none; }

.checkbox-wrap input + span {
  padding-left: 30px;
  position: relative;
  line-height: 2.4; }

.checkbox-wrap input + span::before {
  content: "";
  background-image: url(../img/contact/form-check.png);
  background-size: contain;
  display: block;
  position: absolute;
  top: -3px;
  left: 0;
  width: 24px;
  height: 24px; }

.checkbox-wrap input:checked + span {
  color: #487cff; }

.checkbox-wrap input:checked + span::after {
  content: "";
  background-image: url(../img/contact/form-check-checked.png);
  background-size: contain;
  display: block;
  position: absolute;
  top: -3px;
  left: 0;
  width: 24px;
  height: 24px; }

.checkbox-wrap input + span.error {
  padding-left: 0; }
  .checkbox-wrap input + span.error::before {
    content: none; }

.mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 0 !important; }

/* ----------------------------- */
/* ---------- select  ---------- */
/* ----------------------------- */
.select-wrap {
  position: relative;
  width: 100%;
  max-width: 250px; }

.select-wrap select {
  width: 100%;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  height: 40px;
  padding: 5px 10px 5px 5px;
  border: 1px solid #777;
  background: url(../img/contact/form-select.png) no-repeat;
  background-color: #fff;
  background-size: auto 15px;
  background-position: right 7px center; }
  .select-wrap select.error-element {
    border: 1px solid #F80;
    background-color: rgba(255, 136, 0, 0.05); }

.select-wrap select::-ms-expand {
  display: none; }

.btn-confirm {
  display: flex;
  display: -ms-flexbox;
  justify-content: center;
  -ms-flex-pack: center; }
  .btn-confirm div {
    width: 300px;
    margin: 0 10px 10px 10px; }
    @media only screen and (max-width: 559px) {
      .btn-confirm div {
        width: auto;
        margin: 0 3px 10px 3px; } }

.stepbar ol {
  display: flex;
  max-width: 500px;
  position: relative;
  margin: 0 auto 20px auto;
  text-align: center; }

.stepbar ol li {
  font-size: 1.0rem;
  list-style: none;
  position: relative;
  width: 33.333%; }

.stepbar ol li:after {
  background: rgba(0, 51, 102, 0.2);
  content: "";
  width: calc(100% - 30px);
  height: 4px;
  position: absolute;
  left: calc(-50% + 15px);
  top: 13px; }

.stepbar ol li:first-child:after {
  display: none; }

.stepbar ol li span {
  background: rgba(0, 51, 102, 0.2);
  color: #ffffff;
  display: inline-block;
  height: 30px;
  margin-bottom: 5px;
  line-height: 30px;
  width: 30px; }

.stepbar .visited:after {
  background: #003366; }

.stepbar .visited span {
  background: #003366; }

#contact-form .box-wrap:last-of-type .box {
  border-bottom: none; }
#contact-form .privacy {
  display: none; }
#contact-form .mw_wp_form_input .privacy {
  display: block; }
#contact-form .privacy-wrap {
  font-size: 0.9rem;
  width: 100%;
  height: 300px;
  overflow: scroll;
  padding: 20px;
  border: 1px solid #777;
  margin-bottom: 20px; }
  #contact-form .privacy-wrap h3 {
    font-size: 1rem;
    margin: 0 0 10px 0; }

.iframe-wrap {
  position: relative;
  width: 100%;
  padding-top: 40%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  border: 2px solid #ccc;
  margin-bottom: 20px; }
  .iframe-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
    display: block; }
  @media only screen and (max-width: 559px) {
    .iframe-wrap {
      padding-top: 100%; } }

.btn-submit {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 40px; }
  .btn-submit input {
    width: 40%;
    margin: 5px 10px 0 10px; }
  @media only screen and (max-width: 559px) {
    .btn-submit {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      flex-direction: row-reverse; }
      .btn-submit input {
        width: 100%; } }

.table-recruit {
  margin-bottom: 40px;
  width: 100%;
  border-top: 1px solid #DDDDEE; }
  .table-recruit th, .table-recruit td {
    text-align: left;
    padding: 15px 20px;
    border-bottom: 1px solid #DDDDEE; }
  .table-recruit th {
    width: 15em;
    background-color: rgba(221, 221, 238, 0.3); }
  @media only screen and (max-width: 559px) {
    .table-recruit th, .table-recruit td {
      width: 100%;
      display: block; }
    .table-recruit th {
      background: #DDDDEE; } }

#map_canvas {
  height: 400px;
  margin-bottom: 20px; }

/* NAVIGATION
================================*/
.navigation {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: initial;
  align-items: initial;
  width: 100%;
  min-height: 50px;
  padding: 0;
  position: relative;
  line-height: initial;
  font-family: inherit;
  box-sizing: border-box;
  background-color: #f5f5fa;
  border-bottom: solid 1px #DDDDEE;
  transition: background 0.3s; }
  @media (min-width: 1024px) {
    .navigation {
      height: 60px; } }
  .navigation *,
  .navigation *:before,
  .navigation *:after {
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
    text-decoration: none; }
  .navigation.fixed-top {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 19998; }
  .navigation.sticky-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    will-change: opacity;
    z-index: 19998; }
  .navigation > .container {
    display: -ms-flexbox;
    display: flex; }

/*.navigation-body::after {
	content: '';
	display: block;
	width: 100%;
	height: 5px;
	background: $grada-heading;
}
*/
/* MOBILE HEADER
================================*/
.navigation-header {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  @media (min-width: 1024px) {
    .navigation-header {
      display: none; } }

/* OVERLAY PANEL
================================*/
.overlay-panel {
  width: 0;
  height: 0;
  position: fixed;
  left: 0;
  top: 0;
  opacity: 0;
  z-index: -999999;
  transition: opacity 0.8s; }
  .overlay-panel.is-visible {
    width: 100%;
    height: 100%;
    opacity: 1;
    z-index: 19999; }
  .overlay-panel.is-invisible {
    opacity: 0; }
  @media (min-width: 1024px) {
    .overlay-panel.is-visible {
      display: none !important; } }

/* NAVIGATION BRAND TEXT
================================*/
.navigation-brand-text a {
  font-size: 16px;
  font-weight: bold;
  color: #555;
  text-decoration: none; }
  @media (min-width: 1024px) {
    .navigation-brand-text a {
      font-size: 22px; } }
.navigation-header .navigation-brand-text {
  padding: 0 1rem; }

/* NAVIGATION LOGO
================================*/
.navigation-logo {
  display: -ms-flexbox;
  display: flex;
  /* @include flexAlignCenterVertically();*/
  margin-right: auto; }
  .navigation-logo a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center; }
    .navigation-logo a img {
      height: 50px;
      display: block;
      padding: 5px 10px; }
      @media (min-width: 1024px) {
        .navigation-logo a img {
          height: 60px; } }
  .navigation-logo-top .navigation-body .navigation-logo img {
    width: auto;
    height: auto; }
  .navigation-header .navigation-logo {
    padding: 0 1rem 0 0; }
  .navigation-logo.navigation-item a img {
    width: auto;
    height: auto; }

/* NAVIGATION BUTTON TOGGLER
================================*/
.navigation-button-toggler {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  cursor: pointer; }
  .navigation-button-toggler .hamburger-icon {
    width: 30px;
    height: 3px;
    display: inline-block;
    font-style: normal;
    color: #003366;
    box-shadow: inset 0 0 0 32px, 0 -8px, 0 8px; }

.navigation-button-add {
  font-size: 1.8rem;
  margin-left: 15px; }
  .navigation-button-add a {
    color: #003366; }

.navigation-icon-item .icon-mail::before, .navigation-icon-item .icon-mail-black::before, .navigation-icon-item .icon-phone::before {
  font-size: 1.6rem;
  padding-right: 8px; }
  @media (min-width: 1024px) {
    .navigation-icon-item .icon-mail::before, .navigation-icon-item .icon-mail-black::before, .navigation-icon-item .icon-phone::before {
      padding-right: 0; } }

/* NAVIGATION BODY
================================*/
.navigation-body {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: -100%;
  overflow-x: hidden;
  overflow-y: auto;
  background-color: #FFF;
  z-index: 20000;
  transition: left 0.8s cubic-bezier(0.1, 0.1, 0.1, 0.1), right 0.8s cubic-bezier(0.1, 0.1, 0.1, 0.1); }
  @media (min-width: 500px) {
    .navigation-body {
      width: 320px; } }
  @media (min-width: 1024px) {
    .navigation-body {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
      align-items: center;
      width: 100%;
      position: relative;
      left: auto;
      overflow: visible;
      z-index: auto;
      background-color: transparent;
      transition: all 0s ease 0s;
      margin: 0 auto;
      padding-left: calc((100% - 1240px) / 2 + 60px);
      padding-right: calc((100% - 1240px) / 2 + 60px); } }
  .navigation-body.offcanvas-right {
    left: auto;
    right: -100%; }
    @media (min-width: 1024px) {
      .navigation-body.offcanvas-right {
        right: auto; } }
  .navigation-body.is-visible {
    left: 0;
    transition: left 0.8s, right 0.8s; }
  .navigation-body.offcanvas-right.is-visible {
    right: 0;
    left: auto; }
    @media (min-width: 1024px) {
      .navigation-body.offcanvas-right.is-visible {
        right: auto; } }
  .navigation-body.is-invisible {
    left: -100%; }
  .navigation-body.offcanvas-right.is-invisible {
    right: -100%; }
  .navigation-body.scroll-momentum {
    -webkit-overflow-scrolling: touch; }
  @media (min-width: 1024px) {
    .navigation-centered .navigation-body {
      -ms-flex-pack: center;
      justify-content: center; }
    .navigation-justified .navigation-body {
      -ms-flex-pack: justify;
      justify-content: space-between; }
    .navigation-logo-top .navigation-body {
      -ms-flex-direction: column;
      flex-direction: column; } }

.navigation-body-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-right: auto;
  padding: 0px;
  border-bottom: solid 1px #DDDDEE; }
  @media (min-width: 1024px) {
    .navigation-body-header {
      border: none; }
      .navigation-centered .navigation-body-header {
        padding: 0; }
      .navigation-logo-top .navigation-body-header {
        padding-top: 20px; } }

.navigation-body-close-button {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  width: 40px;
  height: 40px;
  margin-left: auto;
  margin-right: 5px;
  padding-bottom: 2px;
  line-height: initial;
  text-align: center;
  font-size: 25px;
  color: #555;
  cursor: pointer; }
  @media (min-width: 1024px) {
    .navigation-body-close-button {
      display: none; } }

.navigation-body-section {
  width: 100%;
  padding: 16px;
  display: inline-flex;
  -ms-flex-direction: column;
  flex-direction: column; }
  @media (min-width: 1024px) {
    .navigation-body-section {
      width: auto;
      display: inline-block; } }
  .navigation-body-section + .navigation-body-section {
    padding-top: 0; }
    @media (min-width: 1024px) {
      .navigation-body-section + .navigation-body-section {
        padding-top: 16px; } }

/* NAVIGATION MENU
================================*/
.navigation-menu {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 0rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  display: inline-block;
  float: left; }
  @media (min-width: 1024px) {
    .navigation-menu {
      width: auto;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
      align-items: center; }
      .navigation .navigation-menu {
        -ms-flex-item-align: stretch;
        align-self: stretch;
        -ms-flex-align: stretch;
        align-items: stretch; }
      .navigation-logo-top .navigation-menu {
        -ms-flex-pack: center;
        justify-content: center; } }

/* Navbar item */
.navigation-item {
  width: 100%;
  margin: 0;
  float: left;
  display: inline-block; }
  @media (min-width: 1024px) {
    .navigation-item {
      width: auto; } }

/* Navbar link */
.navigation-link {
  width: 100%;
  padding: 13px 16px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  font-size: 15px;
  letter-spacing: 0.3px;
  color: #13172F;
  text-decoration: none !important;
  border-bottom: solid 1px #DDDDEE;
  transition: border-color 0.3s, color 0.3s, background 0.3s; }
  .navigation-link:visited {
    color: #13172F; }
  @media (min-width: 1024px) {
    .navigation-item:last-child .navigation-link {
      border-top: none;
      border-bottom: none; } }
  .navigation-item:not(.navigation-brand-text):hover .navigation-link, .navigation-item:not(.navigation-brand-text):focus .navigation-link, .navigation-item:not(.navigation-brand-text).is-active .navigation-link {
    color: white;
    background-color: #00478f; }
  @media (min-width: 1024px) {
    .navigation-link {
      height: 100%;
      padding: 10px 13px;
      line-height: 1.4;
      border: none; } }
  .navigation-menu.navigation-social-menu + .navigation-menu:not(.navigation-social-menu) .navigation-item:first-child .navigation-link {
    border-top: solid 1px #DDDDEE; }
    @media (min-width: 1024px) {
      .navigation-menu.navigation-social-menu + .navigation-menu:not(.navigation-social-menu) .navigation-item:first-child .navigation-link {
        border-top: none; } }
  .navigation-link i {
    width: 28px;
    float: left;
    text-align: center;
    font-size: 24px;
    line-height: 0; }
    .navigation-link i[class*=fa] {
      font-size: 21px; }
    @media (min-width: 1024px) {
      .navigation-link i {
        width: auto; } }
    .navigation-link i + span {
      padding-left: 8px; }
  .navigation-icon-item .navigation-link {
    padding: 13px 16px; }
    @media (min-width: 1024px) {
      .navigation-icon-item .navigation-link {
        width: 100%;
        margin: 0;
        padding: 15px 25px;
        border-left: solid 1px #DDDDEE; } }
    @media (min-width: 1024px) {
      .navigation-icon-item .navigation-link span:not(.submenu-indicator) {
        display: none; } }
    @media (min-width: 1024px) {
      .navigation-icon-item .navigation-link .navigation-badge {
        right: 10px; } }
    @media (min-width: 1024px) {
      .navigation-icon-item .navigation-link i {
        width: 20px;
        height: 26px;
        margin: 0;
        line-height: 26px;
        text-align: center;
        float: left;
        font-size: 25.6px; }
        .navigation-icon-item .navigation-link i[class*=fa] {
          width: auto;
          font-size: 21px; } }
  .navigation-body-section + .navigation-menu:not(.navigation-social-menu) > .navigation-item:first-child > .navigation-link {
    border-top: solid 1px #DDDDEE; }
    @media (min-width: 1024px) {
      .navigation-body-section + .navigation-menu:not(.navigation-social-menu) > .navigation-item:first-child > .navigation-link {
        border-top: none; } }

/* NAVIGATION SOCIAL MENU
================================*/
.navigation-social-menu {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  padding: 0 16px;
  text-align: center; }
  @media (min-width: 1024px) {
    .navigation-social-menu {
      width: auto; } }
  @media (max-width: 1023px) {
    .navigation-social-menu {
      padding: 16px; } }
  .navigation-social-menu .navigation-item {
    width: auto;
    display: inline-block; }
    .navigation-social-menu .navigation-item .navigation-link {
      margin: 0;
      padding: 0 5px;
      border: none; }
      .navigation-social-menu .navigation-item .navigation-link i {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: center;
        width: 38px;
        height: 38px;
        margin: 0;
        line-height: initial;
        font-size: 19px;
        border-radius: 50%;
        background-color: white; }
        .navigation-social-menu .navigation-item .navigation-link i:not([class*=fa]):before {
          margin-right: -1px; }
    .navigation-social-menu .navigation-item .navigation-link:hover,
    .navigation-social-menu .navigation-item .navigation-link:focus,
    .navigation-social-menu .navigation-item .navigation-link.is-active {
      color: #13172F;
      background: transparent; }
    .navigation-social-menu .navigation-item:last-child .navigation-link {
      padding-right: 0; }
    .navigation-social-menu .navigation-item:first-child .navigation-link {
      padding-left: 0; }
    @media (max-width: 1023px) {
      .navigation-social-menu .navigation-item {
        display: flex; } }

/* SUBMENU INDICATOR
================================*/
.submenu-indicator {
  width: 46px;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 20000; }
  @media (min-width: 1024px) {
    .submenu-indicator {
      width: 6px;
      height: 6px;
      margin-left: 6px;
      float: right;
      position: relative; }
      li:not(.navigation-icon-item) span:not(.navigation-badge) + .submenu-indicator, li:not(.navigation-icon-item) i + span + .navigation-badge + .submenu-indicator {
        margin-left: 0; } }
  .submenu-indicator:after {
    height: 6px;
    width: 6px;
    margin: -3px 0 0 -3px;
    top: 50%;
    left: 50%;
    content: "";
    position: absolute;
    border-style: solid;
    border-width: 0 1px 1px 0;
    border-color: transparent #555 #555 transparent;
    transform: rotate(45deg);
    transition: border 0.3s, transform 0.3s; }
    .navigation-item:hover > .navigation-link > .submenu-indicator:after, .navigation-item:focus > .navigation-link > .submenu-indicator:after, .navigation-item.is-active > .navigation-link > .submenu-indicator:after {
      border-color: transparent white white transparent; }
  .submenu-indicator.is-active:after {
    transform: rotate(-135deg); }
    @media (min-width: 1024px) {
      .submenu-indicator.is-active:after {
        transform: rotate(45deg); } }

/* NAVIGATION BUTTON
================================*/
.navigation-btn {
  width: 100%;
  padding: 10px 12px;
  text-align: center;
  display: block;
  line-height: 1.4;
  font-size: 14px;
  white-space: nowrap;
  color: #fff;
  cursor: pointer;
  border-radius: 4px;
  border: solid 1px #13172F;
  background-color: #13172F;
  transition: opacity 0.3s, background 0.3s; }
  .navigation-btn:hover, .navigation-btn:focus {
    color: #FFF;
    text-decoration: none;
    background-color: #0d1020; }
  @media (min-width: 1024px) {
    .navigation-btn {
      width: auto; } }

/* NAVIGATION TEXT
================================*/
.navigation-text {
  padding: 11px 0;
  display: inline-block;
  color: #555;
  font-size: 14px; }
  @media (min-width: 1024px) {
    .navigation-text {
      padding: 11px 16px; } }

/* NAVIGATION BADGE
================================*/
.navigation-badge {
  min-width: 18px !important;
  height: 18px;
  margin: 0 5px;
  display: inline-block;
  line-height: 18px;
  text-align: center;
  font-size: 11px;
  color: #FFF;
  border-radius: 20px;
  background-color: #13172F; }
  @media (min-width: 1024px) {
    .navigation-link .navigation-badge {
      position: absolute;
      right: -2px;
      top: calc(50% + -20px); }
    .navigation-dropdown-link .navigation-badge {
      position: static; } }

/* NAVIGATION INLINE FORM
================================*/
.navigation-inline-form {
  position: relative; }
  @media (min-width: 1024px) {
    .navigation-inline-form {
      display: -ms-flexbox;
      display: flex; } }
  .navigation-inline-form .navigation-btn {
    display: -ms-flexbox;
    display: flex;
    width: auto;
    height: 100%;
    position: absolute;
    top: 0;
    right: 4px;
    background-color: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important; }

.navigation-input {
  width: 100%;
  padding: 11px 32px 11px 12px;
  outline-width: 0;
  font-size: 14px;
  color: #555;
  line-height: 1.4;
  box-shadow: none;
  border-radius: 4px;
  background-color: #5f5f5f;
  border-style: solid;
  border-width: 1px;
  border-color: #DDDDEE;
  transition: border 0.3s; }
  .navigation-input:hover, .navigation-input:focus {
    border-color: #13172F; }
  .navigation-input::placeholder {
    color: #585858; }
  .navigation-input:-ms-input-placeholder {
    color: #585858; }
  .navigation-input::-ms-input-placeholder {
    color: #585858; }

.navigation-search-icon {
  width: 14px;
  height: 14px;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  color: #a2a2a2;
  text-align: left;
  text-indent: -9999px;
  border: 2px solid;
  border-radius: 50%;
  transform: rotate(-45deg);
  transition: color 0.3s; }
  .navigation-search-icon:after, .navigation-search-icon:before {
    content: '';
    pointer-events: none; }
  .navigation-search-icon:before {
    width: 2px;
    height: 7px;
    top: 10px;
    position: absolute;
    left: 50%;
    border-radius: 0 0 1px 1px;
    box-shadow: inset 0 0 0 32px;
    transform: translateX(-50%); }
  .navigation-btn:hover .navigation-search-icon {
    color: #13172F; }

/* NAVIGATION DROPDOWN
================================*/
.navigation-dropdown {
  width: 100%;
  max-height: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  list-style: none;
  position: static;
  display: block;
  z-index: 20001;
  background-color: #00478f;
  border-right: 1px solid #DDDDEE;
  border-left: 1px solid #DDDDEE;
  transition: max-height 2s cubic-bezier(0, 1, 0, 1); }
  .navigation-dropdown.is-visible {
    max-height: 2500px;
    transition: max-height 5s ease-out; }
  @media (min-width: 1024px) {
    .navigation-dropdown {
      width: 180px;
      margin-top: 40px;
      position: absolute;
      display: inline-block;
      opacity: 0;
      box-shadow: 0 12px 20px -5px rgba(0, 0, 0, 0.05);
      transition: opacity 0.3s linear, max-height 0s linear 0.6s, margin 0.3s; }
      .navigation-dropdown.is-visible {
        margin-top: 0;
        opacity: 1;
        overflow: visible;
        transition: opacity 0.3s linear, max-height 0s linear, margin 0.3s; } }
  .navigation-dropdown .navigation-dropdown {
    left: 100%; }
  .navigation-dropdown .navigation-dropdown-left {
    right: 100%;
    left: auto; }

.navigation-dropdown-item {
  width: 100%;
  margin: 0;
  float: left;
  display: inline-block; }

.navigation-dropdown-link {
  width: 100%;
  display: inline-block;
  position: relative;
  font-size: 13px;
  color: #FFF;
  border-bottom: solid 1px #DDDDEE;
  transition: border 0.3s, color 0.3s, background 0.3s; }
  .navigation-dropdown-link:visited {
    color: #FFF; }
  .navigation-dropdown-item:hover > .navigation-dropdown-link, .navigation-dropdown-item:focus > .navigation-dropdown-link, .navigation-dropdown-item.is-active > .navigation-dropdown-link {
    text-decoration: none !important;
    color: white;
    border-color: #1a2041;
    background-color: #003366; }
  .navigation-dropdown-link {
    padding: 14px 19px; }
  .navigation-dropdown-link + ul .navigation-dropdown-link {
    padding-left: 32px; }
  .navigation-dropdown-link + ul .navigation-dropdown-link + ul .navigation-dropdown-link {
    padding-left: 48px; }
  .navigation-dropdown-link + ul .navigation-dropdown-link + ul .navigation-dropdown-link + ul .navigation-dropdown-link {
    padding-left: 48px; }
  .navigation-dropdown-link + ul .navigation-dropdown-link + ul .navigation-dropdown-link + ul .navigation-dropdown-link + ul .navigation-dropdown-link {
    padding-left: 64px; }
  .navigation-dropdown-link + ul .navigation-dropdown-link + ul .navigation-dropdown-link + ul .navigation-dropdown-link + ul .navigation-dropdown-link + ul .navigation-dropdown-link {
    padding-left: 128px; }
  @media (min-width: 1024px) {
    .navigation-dropdown-link {
      padding-left: 19px !important;
      border-bottom: none; } }
  .navigation-dropdown-link > .submenu-indicator {
    right: 0;
    top: 0;
    position: absolute; }
    .navigation-dropdown-item:hover > .navigation-dropdown-link > .submenu-indicator:after, .navigation-dropdown-item:focus > .navigation-dropdown-link > .submenu-indicator:after, .navigation-dropdown-item.is-active > .navigation-dropdown-link > .submenu-indicator:after {
      border-color: transparent white white transparent; }
    @media (min-width: 1024px) {
      .navigation-dropdown-link > .submenu-indicator {
        position: absolute;
        top: 50%;
        right: 10px;
        transform: translateY(-50%); }
        .navigation-dropdown-link > .submenu-indicator:after {
          transform: rotate(-45deg); }
        .navigation-dropdown-link > .submenu-indicator.submenu-indicator-left:after {
          transform: rotate(135deg); } }

/* MEGAMENU
================================*/
.navigation-megamenu {
  width: 100%;
  max-height: 0;
  overflow: hidden;
  display: block;
  position: static;
  font-size: 15px;
  color: #FFF;
  z-index: 20001;
  background: linear-gradient(to bottom, #00478f, rgba(0, 71, 143, 0.2)), url(../img/footer_bg.jpg) no-repeat center center/cover;
  transition: max-height 2s cubic-bezier(0, 1, 0, 1);
  /*[class*="container"] [class*="col-"]{
  	padding: 0;
  }*/ }
  .navigation-megamenu.is-visible {
    max-height: 2500px;
    border-bottom: solid 1px #DDDDEE;
    transition: max-height 5s ease-out; }
  @media (min-width: 1024px) {
    .navigation-megamenu {
      margin-top: 40px;
      position: absolute;
      opacity: 0;
      border-top: solid 0px transparent;
      transition: opacity 0.3s linear, max-height 0s linear 0.6s, margin 0.3s; }
      .navigation-megamenu.is-visible {
        margin-top: 0;
        opacity: 1;
        border-bottom: none;
        box-shadow: 0 12px 20px -5px rgba(0, 0, 0, 0.05);
        transition: opacity 0.3s linear, max-height 0s linear, margin 0.3s; }
      .navigation-megamenu.navigation-megamenu-half {
        width: 50%; }
      .navigation-megamenu.navigation-megamenu-quarter {
        width: 25%; }
      .navigation-megamenu.navigation-megamenu-narrow {
        width: 300px; } }
  .navigation-megamenu__linkText {
    color: #003366; }
  .scroll-momentum .navigation-megamenu {
    transform: translateZ(0); }
    @media (min-width: 1024px) {
      .scroll-momentum .navigation-megamenu {
        transform: none; } }
  .navigation-megamenu [class*="container"] {
    width: 100%;
    max-width: 1120px;
    margin: 0 auto; }

.navigation-megamenu-container {
  padding: 16px;
  display: table; }
  @media (min-width: 1024px) {
    .navigation-megamenu-container {
      padding: 30px 16px; } }

.navigation-megamenu-contact .contact-tel {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 0; }
  .navigation-megamenu-contact .contact-tel a {
    color: #FFFF00; }
    .navigation-megamenu-contact .contact-tel a:hover {
      color: #FFFFBF; }

.navi-img-link a {
  padding-left: 1.2em;
  display: block;
  color: #FFF; }
  .navi-img-link a:hover {
    color: #FFFFBF; }
  .navi-img-link a:before {
    content: "\25E5";
    position: absolute;
    left: 0;
    padding-top: 4px;
    font-size: 9px;
    transform: rotate(45deg); }
  .navi-img-link a span {
    display: inline-block; }
.navi-img-link img {
  max-width: 100%;
  padding-bottom: 8px; }
@media (min-width: 1024px) {
  .navi-img-link img {
    max-width: 100%; } }

.navi-products-brand {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0; }
  .navi-products-brand li {
    width: 100%;
    position: relative;
    margin-bottom: 20px; }
  @media (min-width: 1024px) {
    .navi-products-brand li {
      width: 50% !important;
      padding-right: 20px; }
      .navi-products-brand li:nth-last-child(-n+2) {
        margin-bottom: 0; }
      .navi-products-brand li:hover img {
        opacity: 0.8; } }

.navi-products-other hr {
  display: none; }
.navi-products-other ul {
  padding-left: 0; }
  .navi-products-other ul li {
    width: 100%;
    position: relative;
    margin-bottom: 10px; }
@media (min-width: 1024px) {
  .navi-products-other {
    padding-right: 20px !important; }
    .navi-products-other hr {
      display: block;
      height: 1px;
      color: #FFFFBF;
      background-color: #FFFFBF;
      border: none;
      margin-bottom: 20px;
      margin-top: 0; }
    .navi-products-other ul li {
      margin-bottom: 20px; }
      .navi-products-other ul li:last-child {
        margin-bottom: 0; }
      .navi-products-other ul li:hover img {
        opacity: 0.8; } }

.drawing-data .navi-products-other ul li {
  margin-bottom: 0;
  padding: 8px 0;
  border-bottom: 1px solid rgba(255, 255, 191, 0.4); }
  .drawing-data .navi-products-other ul li:not([class]):hover {
    background: rgba(255, 255, 255, 0.05); }
  .drawing-data .navi-products-other ul li.navigation-list-heading {
    padding-bottom: 5px;
    border-bottom: 1px solid #ffffbf; }
.drawing-data .navi-products-other ul img {
  max-height: 50px; }

.navi-catalog img {
  margin-bottom: 10px;
  max-width: 80%; }
@media (max-width: 1024px) {
  .navi-catalog div {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start; }
    .navi-catalog div img {
      width: 30%;
      height: auto; }
    .navi-catalog div ul {
      width: 65%; } }

#navigation .news-list ul li {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 13px;
  padding: 10px 0; }
  #navigation .news-list ul li:hover {
    background: rgba(255, 255, 255, 0.05); }
  #navigation .news-list ul li time {
    display: block;
    color: rgba(255, 255, 191, 0.7);
    margin-bottom: 5px;
    letter-spacing: 0.05em; }
  #navigation .news-list ul li a {
    width: 100%;
    color: #FFF; }
    #navigation .news-list ul li a span {
      font-size: 10px;
      background: #0059b3;
      margin-right: 5px; }
#navigation .btn_arrow_right a {
  color: #FFF; }

/* MEGAMENU GRID
================================*/
.navigation-heading {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  border-bottom: 1px solid rgba(255, 255, 255, 0.8);
  padding-bottom: 10px;
  margin-bottom: 10px; }
  .navigation-heading-title {
    font-size: 20px;
    font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.05em; }
    @media (min-width: 1024px) {
      .navigation-heading-title {
        font-size: 26px; } }

.navigation-row {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap; }
  .navigation-row > [class^=navigation-col] {
    width: 100%;
    min-height: 20px;
    margin-bottom: 1rem;
    position: relative; }
    @media (min-width: 1024px) {
      .navigation-row > [class^=navigation-col] {
        width: calc(100% - 1rem);
        padding: .5rem; } }
  @media (min-width: 1024px) {
    .navigation-row .navigation-col {
      flex-basis: 0;
      -ms-flex-positive: 1;
      flex-grow: 1;
      max-width: 100%; } }
  @media (min-width: 1024px) {
    .navigation-row .navigation-col-1 {
      -ms-flex: 0 0 8.333333%;
      flex: 0 0 8.333333%;
      max-width: 8.333333%; }
    .navigation-row .navigation-col-2 {
      -ms-flex: 0 0 16.666666%;
      flex: 0 0 16.666666%;
      max-width: 16.666666%; }
    .navigation-row .navigation-col-3 {
      -ms-flex: 0 0 25%;
      flex: 0 0 25%;
      max-width: 25%; }
    .navigation-row .navigation-col-4 {
      -ms-flex: 0 0 33.333333%;
      flex: 0 0 33.333333%;
      max-width: 33.333333%; }
    .navigation-row .navigation-col-5 {
      -ms-flex: 0 0 41.666667%;
      flex: 0 0 41.666667%;
      max-width: 41.666666%; }
    .navigation-row .navigation-col-6 {
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      max-width: 50%; }
    .navigation-row .navigation-col-7 {
      -ms-flex: 0 0 58.333333%;
      flex: 0 0 58.333333%;
      max-width: 58.333333%; }
    .navigation-row .navigation-col-8 {
      -ms-flex: 0 0 66.666666%;
      flex: 0 0 66.666666%;
      max-width: 66.666666%; }
    .navigation-row .navigation-col-9 {
      -ms-flex: 0 0 75%;
      flex: 0 0 75%;
      max-width: 75%; }
    .navigation-row .navigation-col-10 {
      -ms-flex: 0 0 83.333333%;
      flex: 0 0 83.333333%;
      max-width: 83.333333%; }
    .navigation-row .navigation-col-11 {
      -ms-flex: 0 0 91.666666%;
      flex: 0 0 91.666666%;
      max-width: 91.666666%; }
    .navigation-row .navigation-col-12 {
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%; } }
  .navigation-row:last-of-type [class^=navigation-col]:last-child {
    margin-bottom: 0; }
  @media (min-width: 1024px) {
    .navigation-row:last-of-type [class^=navigation-col] {
      margin-bottom: 0; } }

/* MEGAMENU LIST
================================*/
.navigation-list {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none; }
  @media (min-width: 1024px) {
    [class^=navigation-col]:last-of-type .navigation-list {
      padding: 0; } }
  .navigation-list > li {
    width: 100%;
    margin: 0; }
    .navigation-list > li > a {
      padding: 7px 0 7px 1.2em;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
      align-items: center;
      font-size: 15px;
      color: #FFF;
      text-decoration: none;
      position: relative;
      transition: color 0.3s, background 0.3s; }
      .navigation-list > li > a:hover {
        color: #FFFFBF;
        background-color: rgba(0, 71, 143, 0.8);
        border-radius: 4px; }
      @media (min-width: 1024px) {
        .navigation-list > li > a {
          padding: 5px 0 5px 1.2em; } }
      [class^=navigation-col]:last-of-type .navigation-list > li > a {
        border-right: none; }
    .navigation-list > li:not(.navigation-list-heading) > a:before {
      content: "\25E5";
      position: absolute;
      left: 0;
      font-size: 9px;
      transform: rotate(45deg); }

.navigation-list-heading {
  text-transform: uppercase;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  font-weight: bold;
  font-size: 18px;
  color: #FFFFBF;
  border-bottom: 1px solid #FFFFBF;
  padding-bottom: 5px; }
  .navigation-list-heading > a {
    padding: 0 16px 13px !important; }
    .navigation-list-heading > a:hover {
      color: #555 !important;
      background-color: transparent !important; }

.navigation-list-heading2 {
  color: #FFFFBF;
  margin-bottom: 10px !important; }

/* UTILITIES
 ================================*/
.align-to-right {
  margin-left: auto !important; }

.align-to-left {
  margin-right: auto !important; }

.margin-top {
  margin-top: 1rem !important; }
  @media (min-width: 1024px) {
    .margin-top {
      margin-top: 0 !important; } }

@media (max-width: 1023px) {
  .hide-on-portrait {
    display: none !important; } }

@media (min-width: 1024px) {
  .hide-on-landscape {
    display: none !important; } }

@media (max-width: 1023px) {
  .is-visible-sp {
    max-height: 2500px;
    border-bottom: solid 1px #fcfcfa;
    transition: max-height 5s ease-out; } }

/**
 * Swiper 4.5.3
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://www.idangero.us/swiper/
 *
 * Copyright 2014-2019 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: October 16, 2019
 */
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
  transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform; }

.swiper-slide-invisible-blank {
  visibility: hidden; }

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto; }

.swiper-container-autoheight .swiper-wrapper {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  -o-transition-property: transform, height;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform; }

/* 3D Effects */
.swiper-container-3d {
  -webkit-perspective: 1200px;
  perspective: 1200px; }

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d; }

.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10; }

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

/* IE10 Windows Phone 8 Fixes */
.swiper-container-wp8-horizontal,
.swiper-container-wp8-horizontal > .swiper-wrapper {
  -ms-touch-action: pan-y;
  touch-action: pan-y; }

.swiper-container-wp8-vertical,
.swiper-container-wp8-vertical > .swiper-wrapper {
  -ms-touch-action: pan-x;
  touch-action: pan-x; }

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 27px 44px;
  background-position: center;
  background-repeat: no-repeat; }

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-prev.swiper-button-white,
.swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white,
.swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-black,
.swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-black,
.swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-lock {
  display: none; }

.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: 300ms opacity;
  -o-transition: 300ms opacity;
  transition: 300ms opacity;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 10; }

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0; }

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%; }

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0; }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transform: scale(0.33);
  -ms-transform: scale(0.33);
  transform: scale(0.33);
  position: relative; }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  -webkit-transform: scale(0.66);
  -ms-transform: scale(0.66);
  transform: scale(0.66); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  -webkit-transform: scale(0.33);
  -ms-transform: scale(0.33);
  transform: scale(0.33); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  -webkit-transform: scale(0.66);
  -ms-transform: scale(0.66);
  transform: scale(0.66); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  -webkit-transform: scale(0.33);
  -ms-transform: scale(0.33);
  transform: scale(0.33); }

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: 0.2; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-bullet-active {
  opacity: 1;
  background: #007aff; }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
  transform: translate3d(0px, -50%, 0); }

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block; }

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 8px; }

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  -webkit-transition: 200ms top, 200ms -webkit-transform;
  transition: 200ms top, 200ms -webkit-transform;
  -o-transition: 200ms transform, 200ms top;
  transition: 200ms transform, 200ms top;
  transition: 200ms transform, 200ms top, 200ms -webkit-transform; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px; }

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  white-space: nowrap; }

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: 200ms left, 200ms -webkit-transform;
  transition: 200ms left, 200ms -webkit-transform;
  -o-transition: 200ms transform, 200ms left;
  transition: 200ms transform, 200ms left;
  transition: 200ms transform, 200ms left, 200ms -webkit-transform; }

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: 200ms right, 200ms -webkit-transform;
  transition: 200ms right, 200ms -webkit-transform;
  -o-transition: 200ms transform, 200ms right;
  transition: 200ms transform, 200ms right;
  transition: 200ms transform, 200ms right, 200ms -webkit-transform; }

/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #007aff;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
  -ms-transform-origin: right top;
  transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #ffffff; }

.swiper-pagination-progressbar.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.25); }

.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
  background: #ffffff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000000; }

.swiper-pagination-progressbar.swiper-pagination-black {
  background: rgba(0, 0, 0, 0.25); }

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000000; }

.swiper-pagination-lock {
  display: none; }

/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

.swiper-scrollbar-lock {
  display: none; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center; }

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
  object-fit: contain; }

.swiper-slide-zoomed {
  cursor: move; }

/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
  -ms-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
  animation: swiper-preloader-spin 1s steps(12, end) infinite; }

.swiper-lazy-preloader:after {
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-position: 50%;
  background-size: 100%;
  background-repeat: no-repeat; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }
@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }
/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  -webkit-transition-property: opacity;
  -o-transition-property: opacity;
  transition-property: opacity; }

.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube {
  overflow: visible; }

.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  -webkit-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
  -ms-transform-origin: 100% 0;
  transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0; }

.swiper-container-flip {
  overflow: visible; }

.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1; }

.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.swiper-container-coverflow .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px; }

/*---------------*/
/***** swiper-カスタマイズ *****/
/*---------------*/
#case-list .swiper-container {
  padding-bottom: 30px; }

.prev1 {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.next1 {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.prev2 {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23003366'%2F%3E%3C%2Fsvg%3E"); }

.next2 {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23003366'%2F%3E%3C%2Fsvg%3E"); }

.swiper-navi-bottom {
  padding-bottom: 70px; }

.swiper-slide {
  height: auto; }

.swiper-pagination-bullet {
  background: #ce009f;
  width: 12px;
  height: 12px; }

.swiper-pagination-bullet-active {
  background: #003366; }

.next2, .prev2 {
  top: auto;
  bottom: 12px; }

.page2 {
  bottom: 18px !important; }

/* tingle v0.15.2 */
.tingle-modal * {
  box-sizing: border-box; }

.tingle-modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  display: flex;
  visibility: hidden;
  flex-direction: column;
  align-items: center;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  background: rgba(0, 0, 0, 0.85);
  opacity: 0;
  user-select: none;
  cursor: pointer;
  -webkit-user-select: none;
  -ms-user-select: none; }

/* confirm and alerts
-------------------------------------------------------------- */
.tingle-modal--confirm .tingle-modal-box {
  text-align: center; }

/* modal
-------------------------------------------------------------- */
.tingle-modal--noOverlayClose {
  cursor: default; }

.tingle-modal--noClose .tingle-modal__close {
  display: none; }

.tingle-modal__close {
  position: fixed;
  top: 2rem;
  right: 2rem;
  z-index: 1000;
  padding: 0;
  width: 2rem;
  height: 2rem;
  border: none;
  background-color: transparent;
  color: #fff;
  cursor: pointer; }

.tingle-modal__close svg * {
  fill: currentColor; }

.tingle-modal__closeLabel {
  display: none; }

.tingle-modal__close:hover {
  color: #fff; }

.tingle-modal-box {
  position: relative;
  flex-shrink: 0;
  margin-top: auto;
  margin-bottom: auto;
  width: 60%;
  border-radius: 4px;
  background: #fff;
  opacity: 1;
  cursor: auto;
  will-change: transform, opacity; }

.tingle-modal-box__content {
  padding: 3rem 3rem; }

.tingle-modal-box__footer {
  padding: 1.5rem 2rem;
  width: auto;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
  background-color: #f5f5f5;
  cursor: auto; }

.tingle-modal-box__footer::after {
  display: table;
  clear: both;
  content: ""; }

.tingle-modal-box__footer--sticky {
  position: fixed;
  bottom: -200px;
  /* TODO : find a better way */
  z-index: 10001;
  opacity: 1;
  transition: bottom .3s ease-in-out .3s; }

/* state
-------------------------------------------------------------- */
.tingle-enabled {
  position: fixed;
  right: 0;
  left: 0;
  overflow: hidden; }

.tingle-modal--visible .tingle-modal-box__footer {
  bottom: 0; }

.tingle-enabled .tingle-content-wrapper {
  filter: blur(8px); }

.tingle-modal--visible {
  visibility: visible;
  opacity: 1; }

.tingle-modal--visible .tingle-modal-box {
  animation: scale 0.2s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards; }

.tingle-modal--overflow {
  overflow-y: scroll;
  padding-top: 8vh; }

/* btn
-------------------------------------------------------------- */
.tingle-btn {
  display: inline-block;
  margin: 0 .5rem;
  padding: 1rem 2rem;
  border: none;
  background-color: grey;
  box-shadow: none;
  color: #fff;
  vertical-align: middle;
  text-decoration: none;
  font-size: inherit;
  font-family: inherit;
  line-height: normal;
  cursor: pointer;
  transition: background-color .4s ease; }

.tingle-btn--primary {
  background-color: #3498db; }

.tingle-btn--danger {
  background-color: #e74c3c; }

.tingle-btn--default {
  background-color: #34495e; }

.tingle-btn--pull-left {
  float: left; }

.tingle-btn--pull-right {
  float: right; }

/* responsive
-------------------------------------------------------------- */
@media (max-width: 540px) {
  .tingle-modal {
    top: 0px;
    display: block;
    padding-top: 60px;
    width: 100%; }

  .tingle-modal-box {
    width: auto;
    border-radius: 0; }

  .tingle-modal-box__content {
    overflow-y: scroll; }

  .tingle-modal--noClose {
    top: 0; }

  .tingle-modal--noOverlayClose {
    padding-top: 0; }

  .tingle-modal-box__footer .tingle-btn {
    display: block;
    float: none;
    margin-bottom: 1rem;
    width: 100%; }

  .tingle-modal__close {
    top: 0;
    right: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 60px;
    border: none;
    background-color: #2c3e50;
    box-shadow: none;
    color: #fff; }

  .tingle-modal__closeLabel {
    display: inline-block;
    vertical-align: middle;
    font-size: 1.6rem;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; }

  .tingle-modal__closeIcon {
    display: inline-block;
    margin-right: .8rem;
    width: 1.6rem;
    vertical-align: middle;
    font-size: 0; } }
@supports (-webkit-backdrop-filter: blur(12px)) or (backdrop-filter: blur(12px)) {
  .tingle-modal:before {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: "";
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px); }

  .tingle-enabled .tingle-content-wrapper {
    filter: none; } }
/* animations
-------------------------------------------------------------- */
@keyframes scale {
  0% {
    opacity: 0;
    transform: scale(0.9); }
  100% {
    opacity: 1;
    transform: scale(1); } }
/**
* tingle modal modified
**/
.tingle-modal--visible {
  z-index: 99999; }

.tingle-modal {
  padding-top: 40px;
  padding-bottom: 40px; }

.tingle-modal-box {
  width: 850px;
  max-width: 90%;
  border-radius: 0; }

.tingle-modal-box__content {
  padding: 0; }

.tingle-modal__close {
  height: 45px;
  width: 48px;
  outline: none !important;
  background-color: rgba(0, 0, 0, 0.8); }

@media (max-width: 540px) {
  .tingle-modal {
    padding: 20px 15px; }

  .tingle-modal-box {
    max-width: 100%; }

  .tingle-modal__close {
    font-size: 1.6rem;
    left: auto;
    right: 0px;
    line-height: 1.6rem; }

  .tingle-modal__closeIcon {
    font-size: 1.2rem;
    margin-right: 0; }

  .tingle-modal__closeLabel {
    display: none; } }
@media (min-width: 541px) {
  .tingle-modal__close {
    font-size: 1.2rem;
    top: 20px;
    right: 20px; }

  .tingle-modal__closeIcon {
    font-size: 1.2rem;
    margin-right: 0; } }
#spotlight .header div {
  width: 50px !important; }

#spotlight .icon {
  background-size: 40px 40px !important; }

#spotlight .footer .title {
  font-size: 100% !important;
  font-weight: 500;
  text-align: center;
  line-height: 1.6; }

/*ページのセクション背景*/
.bg-alumi {
  background: linear-gradient(to right, #E9EAEA, #fefefe, #dbdbdb, #eaeaea); }

.louverrail_textSet {
  display: flex;
  align-items: center;
  justify-content: center; }

.img-center {
  display: block;
  margin: 0 auto; }

.img-border {
  border: 1px solid #DDDDEE; }

.externalLink:after {
  font-family: 'icomoon';
  content: " \e91a"; }

.altanatokyoTable th {
  width: 17em; }

.altana {
  width: 100%; }
  .altana tr td:first-child, .altana tr td:nth-child(2) {
    width: calc(42% - 10px); }
  .altana tr td:nth-child(3) {
    width: 16%; }
  .altana li {
    margin-bottom: 8px; }

.architectual img {
  margin-bottom: 10px;
  border: solid 1px #003366;
  border-radius: 4px; }

.manufacturers ul {
  margin: 10px 0;
  padding: 0;
  list-style-type: none; }
  .manufacturers ul li {
    padding: 5px 0 10px 10px; }
  .manufacturers ul a:after {
    font-family: 'icomoon';
    content: " \e91a"; }

.catalog_list ul li {
  list-style-type: none; }
.catalog_list img {
  margin-bottom: 10px;
  border: solid 1px #003366; }
.catalog_list a:before {
  font-family: 'icomoon';
  content: "\e90d";
  padding-right: 5px; }

#header-img .header-contents h2 {
  text-shadow: 1px 1px 5px #003366, 0px 0px 10px #003366; }

.header-long.product-boxrail {
  background-image: url("../img/header_boxrail.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    .header-long.product-boxrail {
      background-image: url("../img/header_boxrail_sp.jpg");
      background-position: right center; } }
.header-long.product-louverrail {
  background-image: url("../img/header_louverrail.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    .header-long.product-louverrail {
      background-image: url("../img/header_louverrail_sp.jpg");
      background-position: left center; } }
.header-long.product-visorrail {
  background-image: url("../img/header_visorrail.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    .header-long.product-visorrail {
      background-image: url("../img/header_visorrail_sp.jpg");
      background-position: right 25% center; } }
.header-long.product-alumispan {
  background-image: url("../img/header_alumispan.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    .header-long.product-alumispan {
      background-image: url("../img/header_alumispan_sp.jpg");
      background-position: right 30% center; } }
.header-long.altanatokyo {
  background-image: url("../img/header_altanatokyo.jpg");
  background-position: center center; }
  @media only screen and (max-width: 559px) {
    .header-long.altanatokyo {
      background-image: url("../img/header_altanatokyo_sp.jpg");
      background-position: right 30% center; } }

.navigation-megamenu {
  background: linear-gradient(to bottom, #00478f, rgba(0, 71, 143, 0.2)), url(../img/megamenu_bg.jpg) no-repeat center center/cover; }

/*
.header-short {
  height: 200px;
  &.about {
    background-image: url('../img/header_about.jpg');
    background-position: center center;
    @media only screen and (max-width:1239px) {}
    @media only screen and (max-width:559px) {
      background-image: url('../img/header_about_sp.jpg');
      background-position: center center;
    }
  }
  &.wholesale {
    background-image: url('../img/header_wholesale.jpg');
    background-position: center center;
    @media only screen and (max-width:1239px) {}
    @media only screen and (max-width:559px) {
      background-image: url('../img/header_wholesale_sp.jpg');
      background-position: center center;
    }
  }
}
*/
/*
#header-img {
  .about {
    background-image: url('../img/header_about.jpg');
    background-position: center center;
    @media only screen and (max-width:1239px) {}
    @media only screen and (max-width:559px) {
      background-image: url('../img/header_about_sp.jpg');
      background-position: center center;
    }
  }
  .wholesale {
    background-image: url('../img/header_wholesale.jpg');
    background-position: center center;
    @media only screen and (max-width:1239px) {}
    @media only screen and (max-width:559px) {
      background-image: url('../img/header_wholesale_sp.jpg');
      background-position: center center;
    }
  }
}
*/
/*取付方法　動画*/
#products-movie {
  background: rgba(0, 51, 102, 0.1); }
  #products-movie .container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    #products-movie .container::before {
      width: calc(100% / 3 - 10px);
      content: "";
      display: block;
      display: none;
      height: 0;
      order: 1; }
    #products-movie .container .item {
      width: calc(100% / 3 - 10px);
      border: 1px solid #DDDDEE;
      border-radius: 4px;
      background: #FFF;
      padding: 8px;
      margin-bottom: 20px;
      position: relative; }
      #products-movie .container .item .item-img {
        margin-bottom: 10px;
        overflow: hidden;
        position: relative; }
        #products-movie .container .item .item-img::before {
          position: absolute;
          z-index: 1;
          top: 50%;
          left: 50%;
          -ms-transform: translate(-50%, -50%);
          -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
          margin: 0;
          padding: 0;
          font-family: 'icomoon';
          color: #FFFEF7;
          font-size: 2.5em;
          content: "\e919";
          display: block; }
        #products-movie .container .item .item-img img {
          width: 100%; }
      #products-movie .container .item h3 {
        font-size: 16px;
        margin-bottom: 5px; }
      #products-movie .container .item p {
        font-size: 11px; }
        #products-movie .container .item p span {
          display: inline-block;
          border: 1px solid #DDDDEE;
          background: #FFF;
          border-radius: 12px;
          padding: 3px 10px;
          margin-right: 5px;
          margin-bottom: 5px; }
      #products-movie .container .item:hover {
        border-radius: 4px; }
        #products-movie .container .item:hover .item-img {
          overflow: hidden; }
          #products-movie .container .item:hover .item-img img {
            transform: scale(1.1, 1.1);
            transition: 0.6s all; }
    @media only screen and (max-width: 960px) {
      #products-movie .container .item {
        width: 95%;
        margin: 0 auto 10px; }
        #products-movie .container .item p {
          font-size: 10px; } }

.mt0 {
  margin-top: 0px !important; }

.mr0 {
  margin-right: 0px !important; }

.mb0 {
  margin-bottom: 0px !important; }

.ml0 {
  margin-left: 0px !important; }

.pt0 {
  padding-top: 0px !important; }

.pr0 {
  padding-right: 0px !important; }

.pb0 {
  padding-bottom: 0px !important; }

.pl0 {
  padding-left: 0px !important; }

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

.mr5 {
  margin-right: 5px !important; }

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

.ml5 {
  margin-left: 5px !important; }

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

.pr5 {
  padding-right: 5px !important; }

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

.pl5 {
  padding-left: 5px !important; }

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

.mr10 {
  margin-right: 10px !important; }

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

.ml10 {
  margin-left: 10px !important; }

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

.pr10 {
  padding-right: 10px !important; }

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

.pl10 {
  padding-left: 10px !important; }

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

.mr15 {
  margin-right: 15px !important; }

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

.ml15 {
  margin-left: 15px !important; }

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

.pr15 {
  padding-right: 15px !important; }

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

.pl15 {
  padding-left: 15px !important; }

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

.mr20 {
  margin-right: 20px !important; }

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

.ml20 {
  margin-left: 20px !important; }

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

.pr20 {
  padding-right: 20px !important; }

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

.pl20 {
  padding-left: 20px !important; }

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

.mr25 {
  margin-right: 25px !important; }

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

.ml25 {
  margin-left: 25px !important; }

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

.pr25 {
  padding-right: 25px !important; }

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

.pl25 {
  padding-left: 25px !important; }

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

.mr30 {
  margin-right: 30px !important; }

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

.ml30 {
  margin-left: 30px !important; }

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

.pr30 {
  padding-right: 30px !important; }

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

.pl30 {
  padding-left: 30px !important; }

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

.mr35 {
  margin-right: 35px !important; }

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

.ml35 {
  margin-left: 35px !important; }

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

.pr35 {
  padding-right: 35px !important; }

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

.pl35 {
  padding-left: 35px !important; }

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

.mr40 {
  margin-right: 40px !important; }

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

.ml40 {
  margin-left: 40px !important; }

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

.pr40 {
  padding-right: 40px !important; }

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

.pl40 {
  padding-left: 40px !important; }

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

.mr45 {
  margin-right: 45px !important; }

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

.ml45 {
  margin-left: 45px !important; }

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

.pr45 {
  padding-right: 45px !important; }

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

.pl45 {
  padding-left: 45px !important; }

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

.mr50 {
  margin-right: 50px !important; }

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

.ml50 {
  margin-left: 50px !important; }

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

.pr50 {
  padding-right: 50px !important; }

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

.pl50 {
  padding-left: 50px !important; }

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

.mr55 {
  margin-right: 55px !important; }

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

.ml55 {
  margin-left: 55px !important; }

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

.pr55 {
  padding-right: 55px !important; }

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

.pl55 {
  padding-left: 55px !important; }

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

.mr60 {
  margin-right: 60px !important; }

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

.ml60 {
  margin-left: 60px !important; }

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

.pr60 {
  padding-right: 60px !important; }

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

.pl60 {
  padding-left: 60px !important; }

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

.mr65 {
  margin-right: 65px !important; }

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

.ml65 {
  margin-left: 65px !important; }

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

.pr65 {
  padding-right: 65px !important; }

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

.pl65 {
  padding-left: 65px !important; }

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

.mr70 {
  margin-right: 70px !important; }

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

.ml70 {
  margin-left: 70px !important; }

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

.pr70 {
  padding-right: 70px !important; }

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

.pl70 {
  padding-left: 70px !important; }

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

.mr75 {
  margin-right: 75px !important; }

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

.ml75 {
  margin-left: 75px !important; }

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

.pr75 {
  padding-right: 75px !important; }

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

.pl75 {
  padding-left: 75px !important; }

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

.mr80 {
  margin-right: 80px !important; }

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

.ml80 {
  margin-left: 80px !important; }

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

.pr80 {
  padding-right: 80px !important; }

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

.pl80 {
  padding-left: 80px !important; }

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

.mr85 {
  margin-right: 85px !important; }

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

.ml85 {
  margin-left: 85px !important; }

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

.pr85 {
  padding-right: 85px !important; }

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

.pl85 {
  padding-left: 85px !important; }

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

.mr90 {
  margin-right: 90px !important; }

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

.ml90 {
  margin-left: 90px !important; }

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

.pr90 {
  padding-right: 90px !important; }

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

.pl90 {
  padding-left: 90px !important; }

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

.mr95 {
  margin-right: 95px !important; }

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

.ml95 {
  margin-left: 95px !important; }

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

.pr95 {
  padding-right: 95px !important; }

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

.pl95 {
  padding-left: 95px !important; }

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

.mr100 {
  margin-right: 100px !important; }

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

.ml100 {
  margin-left: 100px !important; }

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

.pr100 {
  padding-right: 100px !important; }

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

.pl100 {
  padding-left: 100px !important; }
