@charset "UTF-8";
/*
Theme Name: rayture_v2
Author: rayture
Author URI: 
Version: 1.0.0
*/
@import url(https://fonts.googleapis.com/css?family=Roboto:100,100i,300,300i,400,400i,500,500i,700,700i,900,900i|Lato:100,100i,300,300i,400,400i,700,700i,900,900i|Old+Standard+TT:400,400i,700);
.clearfix, .container, .container-full, .mddWrap .mddInner, .mddWrap .mddInner-right .m-l-box .dropContent, .mddWrap .mddInner-left .dropContent .news-lsit, .mddWrap .mddInner-left .dropContent .news-lsit.expo, #footer, .contents-sidebar, .tenji, .productPic, .product-ph #gallery-2, .product-app, .product-paper, .laboboxp-outer, .productdetail, .product-ph, .photogallery {
  *zoom: 1; }
  .clearfix:after, .container:after, .container-full:after, .mddWrap .mddInner:after, .mddWrap .mddInner-right .m-l-box .dropContent:after, .mddWrap .mddInner-left .dropContent .news-lsit:after, .mddWrap .mddInner-left .dropContent .news-lsit.expo:after, #footer:after, .contents-sidebar:after, .tenji:after, .productPic:after, .product-ph #gallery-2:after, .product-app:after, .product-paper:after, .laboboxp-outer:after, .productdetail:after, .product-ph:after, .photogallery:after {
    content: "";
    display: table;
    clear: both; }

/* --- サイト内共通 ----------------------------------------------------------------------------------------- */
html {
  font-size: 62.5%;
  font-family: "Lato", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "游ゴシック Medium", YuGothic Gothic Medium, "メイリオ", "Meiryo", sans-serif; }
  @media (min-width: 48em) {
    html {
      font-size: 125%; } }
  @media all and (-ms-high-contrast: none) {
    html {
      font-family: "メイリオ",Meiryo,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",sans-serif; } }

body {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.625;
  color: #444; }
  @media (min-width: 48em) {
    body {
      font-size: 0.8rem; } }

a {
  position: relative;
  color: #000;
  outline: none;
  text-decoration: underline;
  -webkit-transition: 0.05s ease-in-out;
  -moz-transition: 0.05s ease-in-out;
  transition: 0.05s ease-in-out; }
  @media (min-width: 62em) {
    a:hover {
      -webkit-transition: 0.05s ease-in-out;
      -moz-transition: 0.05s ease-in-out;
      transition: 0.05s ease-in-out;
      opacity: 0.40; } }

#wrapper {
  overflow: hidden; }

.container {
  position: relative;
  margin: 0 auto;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  max-width: 75em; }

.container-full {
  position: relative;
  margin: 0 auto;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  width: 100%; }

.container-full-pad {
  padding: 2em 0; }
  @media (min-width: 30em) {
    .container-full-pad {
      padding: 3em 0; } }
  @media (min-width: 48em) {
    .container-full-pad {
      padding: 4em 0; } }

.col-md-1,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-10,
.col-md-11,
.col-md-12 {
  float: left;
  position: relative;
  min-height: 1px;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-bottom: 1.5rem; }

.col-md-1 {
  float: none; }
  @media (min-width: 48em) {
    .col-md-1 {
      float: left;
      width: 8.3333%; } }

.col-md-2 {
  float: left;
  width: 50%; }
  @media (min-width: 30em) {
    .col-md-2 {
      width: 33.333%; } }
  @media (min-width: 48em) {
    .col-md-2 {
      width: 33.333%; } }
  @media (min-width: 62em) {
    .col-md-2 {
      width: 25%; } }
  @media (min-width: 64em) {
    .col-md-2 {
      width: 25%; } }
  @media (min-width: 68.75em) {
    .col-md-2 {
      width: 16.6666%; } }

.col-md-3 {
  float: none;
  width: 100%; }
  @media (min-width: 62em) {
    .col-md-3 {
      float: left;
      width: 25%; } }

.col-md-4 {
  float: none;
  width: 100%; }
  @media (min-width: 62em) {
    .col-md-4 {
      float: left;
      width: 33.3333%; } }

.col-md-5 {
  float: none;
  width: 100%; }
  @media (min-width: 62em) {
    .col-md-5 {
      float: left;
      width: 41.6666%; } }

.col-md-6 {
  float: none;
  width: 100%; }
  @media (min-width: 62em) {
    .col-md-6 {
      float: left;
      width: 50%; } }

.col-md-7,
.col-md-8,
.col-md-9,
.col-md-10,
.col-md-11,
.col-md-12 {
  float: none;
  width: 100%; }
  @media (min-width: 62em) {
    .col-md-7,
    .col-md-8,
    .col-md-9,
    .col-md-10,
    .col-md-11,
    .col-md-12 {
      float: left;
      width: 58.3333%; } }

@media (min-width: 62em) {
  .col-md-8 {
    float: left;
    width: 66.6666%; } }

@media (min-width: 62em) {
  .col-md-9 {
    width: 75%;
    margin: 0 auto; } }

@media (min-width: 62em) {
  .col-md-10 {
    float: none;
    width: 100%; } }
@media (min-width: 68.75em) {
  .col-md-10 {
    float: none;
    width: 83.3333%;
    margin: 0 auto; } }

@media (min-width: 62em) {
  .col-md-11 {
    float: none;
    width: 100%; } }
@media (min-width: 68.75em) {
  .col-md-11 {
    float: none;
    width: 91.6666%;
    margin: 0 auto; } }

@media (min-width: 62em) {
  .col-md-12 {
    float: none;
    width: 100%; } }

.pd-4px-8px {
  padding-top: 0.4rem !important;
  padding-bottom: 0.4rem !important; }

.pd-8px-16px {
  padding-top: 0.8rem !important;
  padding-bottom: 0.8rem !important; }

.pd-12px-24px {
  padding-top: 1.2rem !important;
  padding-bottom: 1.2rem !important; }

.pd-16px-32px {
  padding-top: 1.6rem !important;
  padding-bottom: 1.6rem !important; }

.pd-20px-40px {
  padding-top: 2rem !important;
  padding-bottom: 2rem !important; }

.pd-24px-48px {
  padding-top: 2.4rem !important;
  padding-bottom: 2.4rem !important; }

.pd-28px-56px {
  padding-top: 2.8rem !important;
  padding-bottom: 2.8rem !important; }

.pd-32px-64px {
  padding-top: 3.2rem !important;
  padding-bottom: 3.2rem !important; }

.pd-36px-72px {
  padding-top: 3.6rem !important;
  padding-bottom: 3.6rem !important; }

.pd-40px-80px {
  padding-top: 4rem !important;
  padding-bottom: 4rem !important; }

.pd-box-4px-8px {
  padding: 0.4rem !important; }

.pd-box-8px-16px {
  padding: 0.8rem !important; }

.pd-box-12px-24px {
  padding: 1.2rem !important; }

.pd-box-16px-32px {
  padding: 1.6rem !important; }

.pd-box-20px-40px {
  padding: 2rem !important; }

.pd-box-24px-48px {
  padding: 2.4rem !important; }

.pd-box-28px-56px {
  padding: 2.8rem !important; }

.pd-box-32px-64px {
  padding: 3.2rem !important; }

.pd-box-36px-72px {
  padding: 3.6rem !important; }

.pd-box-40px-80px {
  padding: 4rem !important; }

.mg-bottom-4px-8px {
  margin-bottom: 0.4rem !important; }

.mg-bottom-8px-16px {
  margin-bottom: 0.8rem !important; }

.mg-bottom-12px-24px {
  margin-bottom: 1.2rem !important; }

.mg-bottom-16px-32px {
  margin-bottom: 1.6rem !important; }

.mg-bottom-20px-40px {
  margin-bottom: 2rem !important; }

.mg-bottom-24px-48px {
  margin-bottom: 2.4rem !important; }

.mg-bottom-28px-56px {
  margin-bottom: 2.8rem !important; }

.mg-bottom-32px-64px {
  margin-bottom: 3.2rem !important; }

.mg-bottom-36px-72px {
  margin-bottom: 3.6rem !important; }

.mg-bottom-40px-80px {
  margin-bottom: 4rem !important; }

.w-10pc {
  width: 10% !important; }

.w-20pc {
  width: 20% !important; }

.w-30pc {
  width: 30% !important; }

.w-40pc {
  width: 40% !important; }

.w-50pc {
  width: 50% !important; }

.w-60pc {
  width: 60% !important; }

.w-70pc {
  width: 70% !important; }

.w-80pc {
  width: 80% !important; }

.w-90pc {
  width: 90% !important; }

.w-100pc {
  width: 100% !important; }

.co-center {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: auto;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }
  .co-center-y {
    position: absolute;
    top: 50%;
    left: auto;
    margin: auto;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    transform: translateY(-50%); }

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

.fo-st-italic {
  font-style: italic; }
.fo-st-normal {
  font-style: normal; }

.fo-w-normal {
  font-weight: normal; }
.fo-w-bold {
  font-weight: bold; }
.fo-w-100 {
  font-weight: 100; }
.fo-w-300 {
  font-weight: 300; }
.fo-w-400 {
  font-weight: 400; }
.fo-w-700 {
  font-weight: 700; }
.fo-w-900 {
  font-weight: 900; }

.fo-fa-Lato {
  font-family: Lato; }
.fo-fa-Roboto {
  font-family: Roboto; }
.fo-fa-Old_Standard_TT {
  font-family: Old Standard TT; }
.fo-fa-jp-go {
  font-family: "Lato", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "游ゴシック Medium", YuGothic Gothic Medium, "メイリオ", "Meiryo", sans-serif; }
.fo-fa-jp-min {
  font-family: "Old Standard TT", "Times New Roman", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝", YuMincho, "HGS明朝E", "ＭＳ Ｐ明朝", serif; }

.fo-2px {
  font-size: 2px;
  font-size: 0.2rem !important;
  line-height: 5 !important; }
  @media (min-width: 48em) {
    .fo-2px {
      font-size: 0.1rem !important; } }

.fo-2px-sp {
  font-size: 2px;
  font-size: 0.2rem !important;
  line-height: 5 !important; }

@media (min-width: 48em) {
  .fo-2px-pc {
    font-size: 2px;
    font-size: 0.1rem !important;
    line-height: 5 !important; } }

.fo-4px {
  font-size: 4px;
  font-size: 0.4rem !important;
  line-height: 3 !important; }
  @media (min-width: 48em) {
    .fo-4px {
      font-size: 0.2rem !important; } }

.fo-4px-sp {
  font-size: 4px;
  font-size: 0.4rem !important;
  line-height: 3 !important; }

@media (min-width: 48em) {
  .fo-4px-pc {
    font-size: 4px;
    font-size: 0.2rem !important;
    line-height: 3 !important; } }

.fo-6px {
  font-size: 6px;
  font-size: 0.6rem !important;
  line-height: 2.3333333333 !important; }
  @media (min-width: 48em) {
    .fo-6px {
      font-size: 0.3rem !important; } }

.fo-6px-sp {
  font-size: 6px;
  font-size: 0.6rem !important;
  line-height: 2.3333333333 !important; }

@media (min-width: 48em) {
  .fo-6px-pc {
    font-size: 6px;
    font-size: 0.3rem !important;
    line-height: 2.3333333333 !important; } }

.fo-8px {
  font-size: 8px;
  font-size: 0.8rem !important;
  line-height: 2 !important; }
  @media (min-width: 48em) {
    .fo-8px {
      font-size: 0.4rem !important; } }

.fo-8px-sp {
  font-size: 8px;
  font-size: 0.8rem !important;
  line-height: 2 !important; }

@media (min-width: 48em) {
  .fo-8px-pc {
    font-size: 8px;
    font-size: 0.4rem !important;
    line-height: 2 !important; } }

.fo-10px {
  font-size: 10px;
  font-size: 1rem !important;
  line-height: 1.8 !important; }
  @media (min-width: 48em) {
    .fo-10px {
      font-size: 0.5rem !important; } }

.fo-10px-sp {
  font-size: 10px;
  font-size: 1rem !important;
  line-height: 1.8 !important; }

@media (min-width: 48em) {
  .fo-10px-pc {
    font-size: 10px;
    font-size: 0.5rem !important;
    line-height: 1.8 !important; } }

.fo-12px {
  font-size: 12px;
  font-size: 1.2rem !important;
  line-height: 1.6666666667 !important; }
  @media (min-width: 48em) {
    .fo-12px {
      font-size: 0.6rem !important; } }

.fo-12px-sp {
  font-size: 12px;
  font-size: 1.2rem !important;
  line-height: 1.6666666667 !important; }

@media (min-width: 48em) {
  .fo-12px-pc {
    font-size: 12px;
    font-size: 0.6rem !important;
    line-height: 1.6666666667 !important; } }

.fo-14px {
  font-size: 14px;
  font-size: 1.4rem !important;
  line-height: 1.5714285714 !important; }
  @media (min-width: 48em) {
    .fo-14px {
      font-size: 0.7rem !important; } }

.fo-14px-sp {
  font-size: 14px;
  font-size: 1.4rem !important;
  line-height: 1.5714285714 !important; }

@media (min-width: 48em) {
  .fo-14px-pc {
    font-size: 14px;
    font-size: 0.7rem !important;
    line-height: 1.5714285714 !important; } }

.fo-16px {
  font-size: 16px;
  font-size: 1.6rem !important;
  line-height: 1.5 !important; }
  @media (min-width: 48em) {
    .fo-16px {
      font-size: 0.8rem !important; } }

.fo-16px-sp {
  font-size: 16px;
  font-size: 1.6rem !important;
  line-height: 1.5 !important; }

@media (min-width: 48em) {
  .fo-16px-pc {
    font-size: 16px;
    font-size: 0.8rem !important;
    line-height: 1.5 !important; } }

.fo-18px {
  font-size: 18px;
  font-size: 1.8rem !important;
  line-height: 1.4444444444 !important; }
  @media (min-width: 48em) {
    .fo-18px {
      font-size: 0.9rem !important; } }

.fo-18px-sp {
  font-size: 18px;
  font-size: 1.8rem !important;
  line-height: 1.4444444444 !important; }

@media (min-width: 48em) {
  .fo-18px-pc {
    font-size: 18px;
    font-size: 0.9rem !important;
    line-height: 1.4444444444 !important; } }

.fo-20px {
  font-size: 20px;
  font-size: 2rem !important;
  line-height: 1.4 !important; }
  @media (min-width: 48em) {
    .fo-20px {
      font-size: 1rem !important; } }

.fo-20px-sp {
  font-size: 20px;
  font-size: 2rem !important;
  line-height: 1.4 !important; }

@media (min-width: 48em) {
  .fo-20px-pc {
    font-size: 20px;
    font-size: 1rem !important;
    line-height: 1.4 !important; } }

.fo-22px {
  font-size: 22px;
  font-size: 2.2rem !important;
  line-height: 1.3636363636 !important; }
  @media (min-width: 48em) {
    .fo-22px {
      font-size: 1.1rem !important; } }

.fo-22px-sp {
  font-size: 22px;
  font-size: 2.2rem !important;
  line-height: 1.3636363636 !important; }

@media (min-width: 48em) {
  .fo-22px-pc {
    font-size: 22px;
    font-size: 1.1rem !important;
    line-height: 1.3636363636 !important; } }

.fo-24px {
  font-size: 24px;
  font-size: 2.4rem !important;
  line-height: 1.3333333333 !important; }
  @media (min-width: 48em) {
    .fo-24px {
      font-size: 1.2rem !important; } }

.fo-24px-sp {
  font-size: 24px;
  font-size: 2.4rem !important;
  line-height: 1.3333333333 !important; }

@media (min-width: 48em) {
  .fo-24px-pc {
    font-size: 24px;
    font-size: 1.2rem !important;
    line-height: 1.3333333333 !important; } }

.fo-26px {
  font-size: 26px;
  font-size: 2.6rem !important;
  line-height: 1.3076923077 !important; }
  @media (min-width: 48em) {
    .fo-26px {
      font-size: 1.3rem !important; } }

.fo-26px-sp {
  font-size: 26px;
  font-size: 2.6rem !important;
  line-height: 1.3076923077 !important; }

@media (min-width: 48em) {
  .fo-26px-pc {
    font-size: 26px;
    font-size: 1.3rem !important;
    line-height: 1.3076923077 !important; } }

.fo-28px {
  font-size: 28px;
  font-size: 2.8rem !important;
  line-height: 1.2857142857 !important; }
  @media (min-width: 48em) {
    .fo-28px {
      font-size: 1.4rem !important; } }

.fo-28px-sp {
  font-size: 28px;
  font-size: 2.8rem !important;
  line-height: 1.2857142857 !important; }

@media (min-width: 48em) {
  .fo-28px-pc {
    font-size: 28px;
    font-size: 1.4rem !important;
    line-height: 1.2857142857 !important; } }

.fo-30px {
  font-size: 30px;
  font-size: 3rem !important;
  line-height: 1.2666666667 !important; }
  @media (min-width: 48em) {
    .fo-30px {
      font-size: 1.5rem !important; } }

.fo-30px-sp {
  font-size: 30px;
  font-size: 3rem !important;
  line-height: 1.2666666667 !important; }

@media (min-width: 48em) {
  .fo-30px-pc {
    font-size: 30px;
    font-size: 1.5rem !important;
    line-height: 1.2666666667 !important; } }

.fo-32px {
  font-size: 32px;
  font-size: 3.2rem !important;
  line-height: 1.25 !important; }
  @media (min-width: 48em) {
    .fo-32px {
      font-size: 1.6rem !important; } }

.fo-32px-sp {
  font-size: 32px;
  font-size: 3.2rem !important;
  line-height: 1.25 !important; }

@media (min-width: 48em) {
  .fo-32px-pc {
    font-size: 32px;
    font-size: 1.6rem !important;
    line-height: 1.25 !important; } }

.fo-34px {
  font-size: 34px;
  font-size: 3.4rem !important;
  line-height: 1.2352941176 !important; }
  @media (min-width: 48em) {
    .fo-34px {
      font-size: 1.7rem !important; } }

.fo-34px-sp {
  font-size: 34px;
  font-size: 3.4rem !important;
  line-height: 1.2352941176 !important; }

@media (min-width: 48em) {
  .fo-34px-pc {
    font-size: 34px;
    font-size: 1.7rem !important;
    line-height: 1.2352941176 !important; } }

.fo-36px {
  font-size: 36px;
  font-size: 3.6rem !important;
  line-height: 1.2222222222 !important; }
  @media (min-width: 48em) {
    .fo-36px {
      font-size: 1.8rem !important; } }

.fo-36px-sp {
  font-size: 36px;
  font-size: 3.6rem !important;
  line-height: 1.2222222222 !important; }

@media (min-width: 48em) {
  .fo-36px-pc {
    font-size: 36px;
    font-size: 1.8rem !important;
    line-height: 1.2222222222 !important; } }

.fo-38px {
  font-size: 38px;
  font-size: 3.8rem !important;
  line-height: 1.2105263158 !important; }
  @media (min-width: 48em) {
    .fo-38px {
      font-size: 1.9rem !important; } }

.fo-38px-sp {
  font-size: 38px;
  font-size: 3.8rem !important;
  line-height: 1.2105263158 !important; }

@media (min-width: 48em) {
  .fo-38px-pc {
    font-size: 38px;
    font-size: 1.9rem !important;
    line-height: 1.2105263158 !important; } }

.fo-40px {
  font-size: 40px;
  font-size: 4rem !important;
  line-height: 1.2 !important; }
  @media (min-width: 48em) {
    .fo-40px {
      font-size: 2rem !important; } }

.fo-40px-sp {
  font-size: 40px;
  font-size: 4rem !important;
  line-height: 1.2 !important; }

@media (min-width: 48em) {
  .fo-40px-pc {
    font-size: 40px;
    font-size: 2rem !important;
    line-height: 1.2 !important; } }

.fo-42px {
  font-size: 42px;
  font-size: 4.2rem !important;
  line-height: 1.1904761905 !important; }
  @media (min-width: 48em) {
    .fo-42px {
      font-size: 2.1rem !important; } }

.fo-42px-sp {
  font-size: 42px;
  font-size: 4.2rem !important;
  line-height: 1.1904761905 !important; }

@media (min-width: 48em) {
  .fo-42px-pc {
    font-size: 42px;
    font-size: 2.1rem !important;
    line-height: 1.1904761905 !important; } }

.fo-44px {
  font-size: 44px;
  font-size: 4.4rem !important;
  line-height: 1.1818181818 !important; }
  @media (min-width: 48em) {
    .fo-44px {
      font-size: 2.2rem !important; } }

.fo-44px-sp {
  font-size: 44px;
  font-size: 4.4rem !important;
  line-height: 1.1818181818 !important; }

@media (min-width: 48em) {
  .fo-44px-pc {
    font-size: 44px;
    font-size: 2.2rem !important;
    line-height: 1.1818181818 !important; } }

.fo-46px {
  font-size: 46px;
  font-size: 4.6rem !important;
  line-height: 1.1739130435 !important; }
  @media (min-width: 48em) {
    .fo-46px {
      font-size: 2.3rem !important; } }

.fo-46px-sp {
  font-size: 46px;
  font-size: 4.6rem !important;
  line-height: 1.1739130435 !important; }

@media (min-width: 48em) {
  .fo-46px-pc {
    font-size: 46px;
    font-size: 2.3rem !important;
    line-height: 1.1739130435 !important; } }

.fo-48px {
  font-size: 48px;
  font-size: 4.8rem !important;
  line-height: 1.1666666667 !important; }
  @media (min-width: 48em) {
    .fo-48px {
      font-size: 2.4rem !important; } }

.fo-48px-sp {
  font-size: 48px;
  font-size: 4.8rem !important;
  line-height: 1.1666666667 !important; }

@media (min-width: 48em) {
  .fo-48px-pc {
    font-size: 48px;
    font-size: 2.4rem !important;
    line-height: 1.1666666667 !important; } }

.fo-50px {
  font-size: 50px;
  font-size: 5rem !important;
  line-height: 1.16 !important; }
  @media (min-width: 48em) {
    .fo-50px {
      font-size: 2.5rem !important; } }

.fo-50px-sp {
  font-size: 50px;
  font-size: 5rem !important;
  line-height: 1.16 !important; }

@media (min-width: 48em) {
  .fo-50px-pc {
    font-size: 50px;
    font-size: 2.5rem !important;
    line-height: 1.16 !important; } }

.fo-52px {
  font-size: 52px;
  font-size: 5.2rem !important;
  line-height: 1.1538461538 !important; }
  @media (min-width: 48em) {
    .fo-52px {
      font-size: 2.6rem !important; } }

.fo-52px-sp {
  font-size: 52px;
  font-size: 5.2rem !important;
  line-height: 1.1538461538 !important; }

@media (min-width: 48em) {
  .fo-52px-pc {
    font-size: 52px;
    font-size: 2.6rem !important;
    line-height: 1.1538461538 !important; } }

.fo-54px {
  font-size: 54px;
  font-size: 5.4rem !important;
  line-height: 1.1481481481 !important; }
  @media (min-width: 48em) {
    .fo-54px {
      font-size: 2.7rem !important; } }

.fo-54px-sp {
  font-size: 54px;
  font-size: 5.4rem !important;
  line-height: 1.1481481481 !important; }

@media (min-width: 48em) {
  .fo-54px-pc {
    font-size: 54px;
    font-size: 2.7rem !important;
    line-height: 1.1481481481 !important; } }

.fo-56px {
  font-size: 56px;
  font-size: 5.6rem !important;
  line-height: 1.1428571429 !important; }
  @media (min-width: 48em) {
    .fo-56px {
      font-size: 2.8rem !important; } }

.fo-56px-sp {
  font-size: 56px;
  font-size: 5.6rem !important;
  line-height: 1.1428571429 !important; }

@media (min-width: 48em) {
  .fo-56px-pc {
    font-size: 56px;
    font-size: 2.8rem !important;
    line-height: 1.1428571429 !important; } }

.fo-58px {
  font-size: 58px;
  font-size: 5.8rem !important;
  line-height: 1.1379310345 !important; }
  @media (min-width: 48em) {
    .fo-58px {
      font-size: 2.9rem !important; } }

.fo-58px-sp {
  font-size: 58px;
  font-size: 5.8rem !important;
  line-height: 1.1379310345 !important; }

@media (min-width: 48em) {
  .fo-58px-pc {
    font-size: 58px;
    font-size: 2.9rem !important;
    line-height: 1.1379310345 !important; } }

.fo-60px {
  font-size: 60px;
  font-size: 6rem !important;
  line-height: 1.1333333333 !important; }
  @media (min-width: 48em) {
    .fo-60px {
      font-size: 3rem !important; } }

.fo-60px-sp {
  font-size: 60px;
  font-size: 6rem !important;
  line-height: 1.1333333333 !important; }

@media (min-width: 48em) {
  .fo-60px-pc {
    font-size: 60px;
    font-size: 3rem !important;
    line-height: 1.1333333333 !important; } }

.fo-co-base {
  color: #000; }
.fo-co-white {
  color: #fff; }
.fo-co-black {
  color: black; }
.fo-co-gray {
  color: #eee; }
.fo-co-red {
  color: #e92f2f; }
.fo-co-pink {
  color: #f36861; }
.fo-co-blue {
  color: #60d1da; }
.fo-co-green {
  color: #00a63c; }
.fo-co-orange {
  color: #f98700; }
.fo-co-yellow {
  color: #f8b500; }

.text-lh-16px {
  line-height: 16px; }

.text-lh-24px {
  line-height: 24px; }

.text-lh-32px {
  line-height: 32px; }

.text-lh-40px {
  line-height: 40px; }

.text-lh-48px {
  line-height: 48px; }

.text-lh-56px {
  line-height: 56px; }

.text-indent-1em {
  text-indent: 1em; }

.img-float-l, .img-float-r {
  display: block;
  margin: 0 auto 2rem auto;
  text-align: center; }
  @media (min-width: 30em) {
    .img-float-l, .img-float-r {
      float: left;
      display: inline-block;
      margin: 0 1.875rem 1.875rem 0; } }
@media (min-width: 30em) {
  .img-float-r {
    float: right;
    margin: 0 0 1.875rem 1.875rem; } }

.border-top {
  border-top: 1px #c8c8c8 solid; }
.border-bottom {
  border-bottom: 1px #c8c8c8 solid; }
.border-1px {
  border: 1px #ddd solid; }
.border-2px {
  border: 2px #ddd solid; }
.border-3px {
  border: 3px #ddd solid; }
.border-4px {
  border: 4px #eee solid; }
.border-5px {
  border: 5px #eee solid; }
.border-co-base {
  border-color: #000; }
.border-co-white {
  border-color: #fff; }
.border-co-black {
  border-color: black; }
.border-co-gray {
  border-color: #eee; }
.border-co-red {
  border-color: #e92f2f; }
.border-co-pink {
  border-color: #f36861; }
.border-co-blue {
  border-color: #60d1da; }
.border-co-green {
  border-color: #00a63c; }
.border-co-orange {
  border-color: #f98700; }
.border-co-yellow {
  border-color: #f8b500; }

.radius-4 {
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }
.radius-8 {
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px; }
.radius-16 {
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  border-radius: 16px; }
.radius-24 {
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  border-radius: 24px; }
.radius-32 {
  -webkit-border-radius: 32px;
  -moz-border-radius: 32px;
  border-radius: 32px; }
.radius-40 {
  -webkit-border-radius: 40px;
  -moz-border-radius: 40px;
  border-radius: 40px; }
.radius-100 {
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%; }

.bg-co-gray-light {
  background-color: #e1e1e1; }
.bg-co-gray-middle {
  background-color: #d5d5d5; }
.bg-co-gray-dark {
  background-color: #c8c8c8; }
.bg-co-black {
  background-color: black;
  color: #fff; }
.bg-co-white {
  background-color: #fff; }

#PagetopBtn {
  position: fixed;
  right: -44px;
  bottom: 14px;
  z-index: 800;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity = 0);
  filter: alpha(opacity = 0);
  opacity: 0;
  -webkit-transition: 0.3s ease-in;
  -moz-transition: 0.3s ease-in;
  transition: 0.3s ease-in; }
  #PagetopBtn.visible {
    right: 10px;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity = 100);
    filter: alpha(opacity = 100);
    opacity: 1; }
  #PagetopBtn a {
    outline: none;
    width: 40px;
    height: 40px;
    display: block;
    color: #000;
    text-align: center;
    font-size: 16px;
    line-height: 38px;
    background-color: rgba(255, 255, 255, 0.8);
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%; }
    #PagetopBtn a:hover {
      -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity = 60);
      filter: alpha(opacity = 60);
      opacity: 0.6; }

.tab {
  margin: 0;
  padding: 0;
  list-style: none; }
  .tab li {
    margin: 0; }

.content_wrap {
  display: block; }
  .content_wrap.disnon {
    display: block; }
  @media (min-width: 48em) {
    .content_wrap.disnon {
      display: none; } }

.accordion-menu-btn {
  cursor: pointer; }
.accordion-menu-box {
  display: none; }
  .accordion-menu-box.visible {
    display: none; }

.accordion-menu-sp-btn {
  cursor: pointer; }
  @media (min-width: 48em) {
    .accordion-menu-sp-btn {
      cursor: auto; } }
.accordion-menu-sp-box {
  display: none; }
  .accordion-menu-sp-box.visible {
    display: none; }
  .accordion-menu-sp-box.invisible {
    display: block; }
  @media (min-width: 48em) {
    .accordion-menu-sp-box {
      display: block; }
      .accordion-menu-sp-box.invisible, .accordion-menu-sp-box.visible {
        display: block; } }

.slider,
.slider-multi {
  margin: 0;
  padding: 0;
  list-style: none; }
  .slider li,
  .slider-multi li {
    margin: 0; }
  .slider img,
  .slider-multi img {
    margin: 0 auto;
    min-width: 100%; }

.slick-list {
  z-index: 0; }

/* Arrows */
.slick-prev,
.slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  margin-top: -20px;
  display: block;
  width: 20px;
  height: 40px;
  padding: 0;
  cursor: pointer;
  border: none;
  outline: none;
  background: transparent;
  z-index: 300; }
  .slick-prev:before,
  .slick-next:before {
    content: "\f105";
    font-family: FontAwesome;
    position: absolute;
    top: 50%;
    right: 0;
    outline: 0;
    font-size: 48px;
    color: rgba(255, 255, 255, 0.6);
    -webkit-text-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
    -moz-text-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out; }

.slick-prev:before {
  left: 0;
  right: auto;
  content: "\f104"; }

.slick-prev {
  left: 0.75rem; }
  @media (min-width: 48em) {
    .slick-prev {
      left: 0.75rem; } }

.slick-next {
  right: 0.75rem; }
  @media (min-width: 48em) {
    .slick-next {
      right: 0.75rem; } }

.slick-prev:hover:before,
.slick-next:hover:before {
  color: white; }

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  color: rgba(255, 255, 255, 0.6); }

/* Dots */
.slick-dots {
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  z-index: 300; }
  @media (min-width: 48em) {
    .slick-dots {
      bottom: 8px; } }
  .slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
    cursor: pointer;
    vertical-align: middle; }
    .slick-dots li button {
      font-size: 0;
      line-height: 0;
      display: block;
      padding: 0;
      cursor: pointer;
      color: transparent;
      border: 0;
      outline: none;
      background: transparent; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
      .slick-dots li button:hover:before, .slick-dots li button:focus:before {
        opacity: 1; }
      .slick-dots li button:before {
        line-height: 12px;
        position: absolute;
        top: 0;
        left: 50%;
        width: 10px;
        height: 10px;
        margin-left: -5px;
        content: '';
        background-color: rgba(255, 255, 255, 0.2);
        text-align: center;
        color: black;
        -webkit-border-radius: 100%;
        -moz-border-radius: 100%;
        border-radius: 100%; }
    .slick-dots li.slick-active button:before {
      background-color: rgba(0, 0, 0, 0.8); }

.slider-multi .slick-slide {
  width: 320px; }
  @media (min-width: 48em) {
    .slider-multi .slick-slide {
      width: 768px; } }
  @media (min-width: 62em) {
    .slider-multi .slick-slide {
      width: 970px; } }

.slick-next-button, .slick-prev-button {
  position: absolute;
  top: 50%;
  margin-top: -33px; }
  .slick-next-button span, .slick-prev-button span {
    position: relative;
    display: block;
    width: 40px;
    height: 40px;
    cursor: pointer;
    font-size: 40px;
    line-height: 1;
    text-align: center;
    color: #fff;
    -webkit-text-shadow: 0 0 6px rgba(0, 0, 0, 0.3);
    -moz-text-shadow: 0 0 6px rgba(0, 0, 0, 0.3);
    text-shadow: 0 0 6px rgba(0, 0, 0, 0.3); }
    @media (min-width: 62em) {
      .slick-next-button span i, .slick-prev-button span i {
        position: relative;
        z-index: 10; }
      .slick-next-button span:before, .slick-prev-button span:before {
        content: '';
        opacity: 0;
        position: absolute;
        top: -5px;
        left: -5px;
        width: 50px;
        height: 50px;
        background-color: rgba(255, 255, 255, 0.8);
        -webkit-border-radius: 100%;
        -moz-border-radius: 100%;
        border-radius: 100%;
        -webkit-transition: 0.2s ease-in-out;
        -moz-transition: 0.2s ease-in-out;
        transition: 0.2s ease-in-out; }
      .slick-next-button span:hover, .slick-prev-button span:hover {
        color: rgba(0, 0, 0, 0.8);
        -webkit-text-shadow: none;
        -moz-text-shadow: none;
        text-shadow: none; }
        .slick-next-button span:hover:before, .slick-prev-button span:hover:before {
          opacity: 1; } }
.slick-next-button {
  right: -30px; }
  .slick-next-button i {
    margin-left: 4px; }
  @media (min-width: 48em) {
    .slick-next-button {
      right: 0; } }
  @media (min-width: 64em) {
    .slick-next-button {
      right: 15px; } }
.slick-prev-button {
  left: -30px; }
  .slick-prev-button i {
    margin-right: 4px; }
  @media (min-width: 48em) {
    .slick-prev-button {
      left: 0; } }
  @media (min-width: 64em) {
    .slick-prev-button {
      left: 15px; } }

.easy-select-box {
  display: inline-block;
  position: relative; }
  .easy-select-box .esb-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 300;
    display: none; }

.ui-datepicker {
  width: 96%;
  padding-bottom: 16px;
  background-color: #000;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25);
  -moz-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25);
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25); }
  @media (min-width: 62em) {
    .ui-datepicker {
      width: auto; } }
  .ui-datepicker-header {
    position: relative;
    margin: 0 auto;
    width: 300px;
    height: 48px;
    background-color: #000;
    text-align: center;
    color: #fff;
    line-height: 48px; }
    @media (min-width: 62em) {
      .ui-datepicker-header {
        width: 295px; } }
  .ui-datepicker-prev, .ui-datepicker-next {
    position: absolute;
    width: 32px;
    height: 32px;
    color: #fff;
    cursor: pointer; }
    .ui-datepicker-prev:before, .ui-datepicker-next:before {
      content: '\f104';
      font-family: FontAwesome;
      position: absolute;
      top: 10px;
      border: 1px solid #fff;
      display: block;
      width: 32px;
      height: 32px;
      font-size: 16px;
      line-height: 28px;
      -webkit-border-radius: 16px;
      -moz-border-radius: 16px;
      border-radius: 16px; }
    .ui-datepicker-prev .ui-icon, .ui-datepicker-next .ui-icon {
      display: block;
      overflow: hidden;
      white-space: nowrap;
      text-indent: 100%; }
  .ui-datepicker-prev {
    left: 10px; }
    .ui-datepicker-prev:before {
      left: 0; }
  .ui-datepicker-next {
    right: 10px; }
    .ui-datepicker-next:before {
      content: '\f105';
      right: 0; }
  .ui-datepicker-calendar {
    min-width: 300px;
    margin: 0 auto;
    background-color: #000;
    color: #fff;
    text-align: center; }
    @media (min-width: 62em) {
      .ui-datepicker-calendar {
        min-width: 295px; } }
    .ui-datepicker-calendar .ui-state-default {
      color: #fff; }

#header {
  position: fixed;
  top: 0;
  z-index: 9999;
  margin-bottom: 1px;
  background-color: #fff;
  height: 57px;
  width: 100%;
  display: block;
  -webkit-box-shadow: 0px -6px 10px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0px -6px 10px rgba(0, 0, 0, 0.3);
  box-shadow: 0px -6px 10px rgba(0, 0, 0, 0.3); }
  @media (min-width: 68.75em) {
    #header {
      position: relative;
      height: 99px;
      -webkit-box-shadow: 0px 5px 5px rgba(0, 0, 0, 0);
      -moz-box-shadow: 0px 5px 5px rgba(0, 0, 0, 0);
      box-shadow: 0px 5px 5px rgba(0, 0, 0, 0); } }

.header-title {
  margin: 0;
  padding: 10px;
  width: 244px;
  height: auto;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0; }
  @media (min-width: 68.75em) {
    .header-title {
      padding: 22px 15px; } }
  @media (min-width: 78.125em) {
    .header-title {
      padding: 22px 15px; } }
  @media (min-width: 84.375em) {
    .header-title {
      padding: 15px;
      width: 266px; } }
  .header-title .title-main {
    width: 160px;
    height: auto;
    display: inline-block; }
    @media (min-width: 68.75em) {
      .header-title .title-main {
        width: 210px; }
        .header-title .title-main img {
          width: 210px; } }
    @media (min-width: 84.375em) {
      .header-title .title-main {
        width: 266px; }
        .header-title .title-main img {
          width: 266px; } }
.header-menu {
  float: right;
  margin: 0;
  padding: 0;
  height: 100vh;
  z-index: 900;
  position: absolute;
  opacity: 0;
  left: 100vw; }
  @media (min-width: 68.75em) {
    .header-menu {
      height: 57px;
      position: relative;
      opacity: 1;
      height: 100px;
      display: block;
      left: 0;
      background: #000; } }
  .header-menu-gl {
    float: right;
    margin: 0 20px 0 0;
    display: inline-block;
    position: relative; }
    .header-menu-gl:before {
      position: absolute;
      top: 0;
      left: -40px;
      content: "";
      display: block;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 0 0 100px 40px;
      border-color: transparent transparent black transparent; }
    .header-menu-gl:after {
      position: absolute;
      top: 0;
      right: -60px;
      content: "";
      display: block;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 100px 40px 0 0;
      border-color: #000000 transparent transparent transparent; }
    .header-menu-gl ul.mainlist-navi {
      background-color: black;
      margin: 0 -20px 0 0;
      padding: 0;
      list-style: none;
      font-size: 0;
      display: inline-block;
      height: auto; }
      @media (min-width: 68.75em) {
        .header-menu-gl ul.mainlist-navi {
          height: 100px;
          height: auto; } }
      @media (min-width: 84.375em) {
        .header-menu-gl ul.mainlist-navi {
          padding: 0; } }
    .header-menu-gl li {
      display: block;
      margin: 0;
      padding: 0 0 1px 0;
      font-size: 1.8rem;
      line-height: 1.15625;
      letter-spacing: 0.1em; }
      @media (min-width: 48em) {
        .header-menu-gl li {
          display: inline-block;
          font-size: 0.8rem; } }
      .header-menu-gl li:nth-last-child(-n + 4) a:before {
        display: none; }
      .header-menu-gl li.pclarge-downon {
        display: inline-block; }
        @media (min-width: 68.75em) {
          .header-menu-gl li.pclarge-downon {
            display: none; } }
    .header-menu-gl a {
      text-decoration: none;
      font-size: 1.2rem;
      line-height: 1.4166666667;
      position: relative;
      display: block;
      color: #fff;
      padding: 1.0rem 2.5rem; }
      @media (min-width: 48em) {
        .header-menu-gl a {
          font-size: 0.8rem;
          font-weight: normal;
          padding: 1.05rem 0.5rem; }
          .header-menu-gl a:before {
            content: '';
            position: absolute;
            right: 0;
            top: 50%;
            margin-top: -15px;
            width: 1px;
            height: 30px;
            background-color: #686868;
            transform: skewX(-20deg); } }
      @media (min-width: 68.75em) {
        .header-menu-gl a {
          font-size: 0.6rem;
          padding: 0.55rem 0.5rem; } }
      @media (min-width: 75em) {
        .header-menu-gl a {
          font-size: 0.7rem;
          padding: 0.55rem 0.5rem; } }
      @media (min-width: 78.125em) {
        .header-menu-gl a {
          padding: 0.5rem;
          font-size: 0.8rem; } }
      @media (min-width: 93.75em) {
        .header-menu-gl a {
          padding: 0.5rem;
          font-size: 0.9rem; } }
    .header-menu-gl ul.sublist-navi {
      margin: 24px 0 0 0 !important;
      padding: 0 !important;
      display: flex;
      justify-content: flex-end;
      width: 102.6%; }
      .header-menu-gl ul.sublist-navi.pclarge-upon {
        display: none; }
        @media (min-width: 68.75em) {
          .header-menu-gl ul.sublist-navi.pclarge-upon {
            display: flex; } }
      .header-menu-gl ul.sublist-navi li {
        background: none !important;
        list-style: none !important; }
        .header-menu-gl ul.sublist-navi li a {
          background: none !important;
          padding: 0 0 0 1.2em !important;
          /*font-size: 12px;*/
          color: #c4c4c4 !important; }
          .header-menu-gl ul.sublist-navi li a:before {
            display: none !important; }
  .header-menu-sub {
    padding: 36px 16px 36px 36px;
    width: 190px;
    height: 100px;
    background: #434343;
    display: block;
    position: relative;
    float: right;
    position: relative; }
    @media (min-width: 84.375em) {
      .header-menu-sub {
        padding: 36px 16px 36px 36px;
        width: 200px; } }
    .header-menu-sub-tel {
      position: absolute;
      top: 20px;
      right: 26px; }
      @media (min-width: 84.375em) {
        .header-menu-sub-tel {
          right: 25px; } }
      .header-menu-sub-tel a {
        text-decoration: none;
        color: #fff;
        font-weight: bold;
        font-size: 1.6rem;
        line-height: 1.3125; }
        @media (min-width: 48em) {
          .header-menu-sub-tel a {
            font-size: 0.8rem; } }
  .header-menu.open {
    opacity: 1;
    display: block;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding-bottom: 50px;
    background: #252525; }
    .header-menu.open .header-menu-gl {
      padding-bottom: 50px;
      float: none;
      margin: 0;
      display: block;
      width: 100%;
      position: relative;
      height: 100%;
      overflow: auto;
      -webkit-overflow-scrolling: touch; }
      .header-menu.open .header-menu-gl:before {
        display: none; }
      .header-menu.open .header-menu-gl:after {
        display: none; }
      .header-menu.open .header-menu-gl ul {
        background-color: white;
        margin: 0 0 50px 0;
        padding: 0;
        list-style: none;
        font-size: 0;
        width: 100%; }
      .header-menu.open .header-menu-gl li {
        display: block;
        width: 100%;
        margin: 0;
        padding: 0; }
      .header-menu.open .header-menu-gl a {
        font-size: 1.4rem;
        line-height: 1.3571428571;
        position: relative;
        display: block;
        color: #fff;
        padding: 1.7rem 2.0rem;
        border-bottom: 1px solid #3c3c3c;
        background: #252525; }
        @media (min-width: 48em) {
          .header-menu.open .header-menu-gl a {
            padding: 1.0rem;
            font-size: 0.7rem; }
            .header-menu.open .header-menu-gl a:before {
              display: none; } }
    .header-menu.open .header-menu-sub {
      padding: 15px;
      background: black;
      display: block;
      position: relative;
      float: none;
      width: 100%;
      position: relative;
      height: 57px; }
      .header-menu.open .header-menu-sub-tel {
        position: absolute;
        top: 18px;
        right: 68px; }
        @media (min-width: 48em) {
          .header-menu.open .header-menu-sub-tel {
            top: 16px;
            right: 76px; } }
        .header-menu.open .header-menu-sub-tel a {
          color: #fff;
          font-size: 1.2rem;
          line-height: 1.4166666667; }
          @media (min-width: 48em) {
            .header-menu.open .header-menu-sub-tel a {
              font-size: 0.8rem; } }
    .header-menu.open .header-search {
      background-color: black;
      margin: 0;
      max-width: 50%;
      max-width: 60%; }
      @media (min-width: 48em) {
        .header-menu.open .header-search {
          max-width: 70%; } }
      .header-menu.open .header-search-form {
        position: relative;
        text-align: left;
        font-size: 0; }
        @media (min-width: 62em) {
          .header-menu.open .header-search-form {
            min-height: 24px; } }
      .header-menu.open .header-search-moduleInput {
        display: inline-block;
        font-size: 14px;
        line-height: 1;
        width: 80%;
        color: #fff; }
        .header-menu.open .header-search-moduleInput input {
          background: none;
          border: none;
          padding: 4px 10px 5px 10px;
          width: 100%;
          color: #fff;
          outline: 0;
          -webkit-border-radius: 3px;
          -moz-border-radius: 3px;
          border-radius: 3px; }
          .header-menu.open .header-search-moduleInput input[type="text"] {
            background: #5f5f5f; }
            .header-menu.open .header-search-moduleInput input[type="text"]:focus {
              background: #5f5f5f; }
      .header-menu.open .header-search-moduleButton {
        display: inline-block;
        font-size: 14px;
        line-height: 1;
        width: 12%; }
        .header-menu.open .header-search-moduleButton button {
          background: none;
          border: none;
          color: #fff;
          padding: 6px 8px;
          width: 30px;
          text-align: right; }
.header-search {
  background-color: #434343;
  margin: 14px 0 0 10%;
  max-width: 90%; }
  .header-search-form {
    position: relative;
    text-align: center;
    margin: 0 auto;
    font-size: 0; }
    @media (min-width: 62em) {
      .header-search-form {
        min-height: 24px; } }
  .header-search-moduleInput {
    display: inline-block;
    font-size: 14px;
    line-height: 1;
    width: 88%;
    color: #fff; }
    .header-search-moduleInput input {
      background: none;
      border: none;
      padding: 10px;
      width: 100%;
      color: #fff;
      outline: 0; }
      .header-search-moduleInput input[type="text"] {
        border-bottom: 1px solid #5f5f5f; }
        .header-search-moduleInput input[type="text"]:focus {
          background: #5f5f5f; }
    @media (min-width: 48em) {
      .header-search-moduleInput input {
        padding: 5px 1.5rem; } }
    @media (min-width: 62em) {
      .header-search-moduleInput {
        width: 75%; }
        .header-search-moduleInput input {
          padding: 4px 10px 5px 10px; } }
  .header-search-moduleButton {
    display: inline-block;
    font-size: 14px;
    line-height: 1;
    width: 12%; }
    .header-search-moduleButton button {
      background: none;
      border: none;
      color: #fff;
      padding: 8px;
      width: 100%;
      text-align: right; }
    @media (min-width: 48em) {
      .header-search-moduleButton button {
        padding: 6px 8px; } }
    @media (min-width: 62em) {
      .header-search-moduleButton {
        width: 20%; } }

.mddWrap {
  display: block;
  position: relative;
  background: #fff; }
  @media (min-width: 68.75em) {
    .mddWrap {
      position: absolute;
      top: 96px;
      left: -250px;
      z-index: 50;
      display: none;
      width: 1050px;
      background: #fff;
      -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
      -moz-box-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
      box-shadow: 0 0 15px rgba(0, 0, 0, 0.5); } }
  @media (min-width: 84.375em) {
    .mddWrap {
      left: -315px;
      width: 1300px; } }
  .mddWrap .mddInner {
    display: block;
    overflow: hidden; }
    .mddWrap .mddInner-right {
      display: block;
      width: 100%;
      padding: 1.5rem 1.5rem .5rem 1.5rem; }
      @media (min-width: 68.75em) {
        .mddWrap .mddInner-right {
          float: left;
          width: 80%; } }
      .mddWrap .mddInner-right .m-l-box .dropContent {
        display: block; }
        .mddWrap .mddInner-right .m-l-box .dropContent .specsearchnav-btn {
          text-decoration: none !important; }
        .mddWrap .mddInner-right .m-l-box .dropContent .dropContent-title {
          color: black;
          background: #fff;
          letter-spacing: 0;
          margin-bottom: 0.75rem;
          font-size: 1.4rem;
          line-height: 1.3571428571; }
          @media (min-width: 48em) {
            .mddWrap .mddInner-right .m-l-box .dropContent .dropContent-title {
              font-size: 1rem; } }
        .mddWrap .mddInner-right .m-l-box .dropContent a {
          padding: 0 !important;
          border: none;
          background: #fff; }
          .mddWrap .mddInner-right .m-l-box .dropContent a:before {
            display: none; }
        .mddWrap .mddInner-right .m-l-box .dropContent .dropContent-title1 {
          color: #000;
          border-left: 5px solid #000;
          padding: 0.5rem 0.65rem;
          background: #e2e2e2;
          margin: 10px 0 0 0;
          font-weight: bold;
          font-size: 1.4rem;
          line-height: 1.3571428571;
          letter-spacing: 0; }
          @media (min-width: 48em) {
            .mddWrap .mddInner-right .m-l-box .dropContent .dropContent-title1 {
              border-left: 8px solid #000;
              padding: 0.5rem 0.55rem;
              line-height: 1.3125;
              font-size: 0.8rem; } }
        .mddWrap .mddInner-right .m-l-box .dropContent .dropContent-title2 {
          text-decoration: underline;
          text-align: center;
          color: black;
          padding: 0.05rem 0.5rem;
          margin: 4px 0 0 0;
          font-size: 1.4rem;
          line-height: 1.3571428571;
          letter-spacing: 0; }
          @media (min-width: 48em) {
            .mddWrap .mddInner-right .m-l-box .dropContent .dropContent-title2 {
              margin: 10px 0 0 0;
              line-height: 1.3125;
              font-size: 0.8rem; } }
        .mddWrap .mddInner-right .m-l-box .dropContent .dropContent-list {
          margin: 7px 0 0 0;
          padding: 0;
          background: none;
          display: block;
          width: 100%; }
          .mddWrap .mddInner-right .m-l-box .dropContent .dropContent-list li {
            background: none;
            display: block;
            width: 100%; }
            @media (min-width: 68.75em) {
              .mddWrap .mddInner-right .m-l-box .dropContent .dropContent-list li {
                margin: 0 0 -1px 0; } }
            .mddWrap .mddInner-right .m-l-box .dropContent .dropContent-list li a {
              position: relative;
              color: black;
              background: #fff;
              display: block !important;
              width: 100% !important;
              font-size: 1.4rem;
              line-height: 1.3571428571;
              letter-spacing: 0;
              padding: 0.2rem 0.2rem 0.2rem 1.4rem !important;
              text-decoration: none !important;
              margin: 0; }
              @media (min-width: 48em) {
                .mddWrap .mddInner-right .m-l-box .dropContent .dropContent-list li a {
                  padding: 0.2rem 0.2rem 0.2rem 1rem !important;
                  line-height: 1.3125;
                  font-size: 0.8rem; } }
              .mddWrap .mddInner-right .m-l-box .dropContent .dropContent-list li a:after {
                font-style: normal !important;
                display: block;
                width: 5px;
                height: 5px;
                border: 5px solid transparent;
                border-left: 5px solid #00a63c;
                position: absolute;
                top: 7px;
                left: 3px;
                margin: auto;
                content: "";
                vertical-align: top;
                background: #fff !important; }
                @media (min-width: 48em) {
                  .mddWrap .mddInner-right .m-l-box .dropContent .dropContent-list li a:after {
                    top: 11px;
                    left: 6px; } }
        .mddWrap .mddInner-right .m-l-box .dropContent .app-list {
          padding: 0;
          margin: 0;
          background: #fff;
          height: auto !important;
          display: flex;
          flex-flow: wrap; }
          .mddWrap .mddInner-right .m-l-box .dropContent .app-list li {
            width: 100% !important; }
            @media (min-width: 48em) {
              .mddWrap .mddInner-right .m-l-box .dropContent .app-list li {
                width: 50% !important; } }
            @media (min-width: 68.75em) {
              .mddWrap .mddInner-right .m-l-box .dropContent .app-list li {
                width: 25% !important; } }
            .mddWrap .mddInner-right .m-l-box .dropContent .app-list li:first-child a {
              margin-top: 0; }
            .mddWrap .mddInner-right .m-l-box .dropContent .app-list li a {
              text-decoration: none !important;
              line-height: 1em !important;
              color: #00a63c;
              padding: 0.7em 0.7em 0.7em 1.7em !important;
              font-size: 1.4rem;
              letter-spacing: 0;
              width: 100% !important;
              margin-top: 0; }
              @media (min-width: 48em) {
                .mddWrap .mddInner-right .m-l-box .dropContent .app-list li a {
                  margin-top: -1px;
                  margin-top: 0;
                  font-size: 0.8rem; } }
              @media (min-width: 68.75em) {
                .mddWrap .mddInner-right .m-l-box .dropContent .app-list li a {
                  padding: 0 0 0 1em !important;
                  padding: 0.9em 0.9em 0.9em 1.9em !important; } }
              .mddWrap .mddInner-right .m-l-box .dropContent .app-list li a i {
                margin-left: -1em !important; }
        .mddWrap .mddInner-right .m-l-box .dropContent .btn {
          margin-top: 10px; }
          .mddWrap .mddInner-right .m-l-box .dropContent .btn a {
            text-decoration: none !important;
            line-height: 2.8em;
            background: #00a63c !important;
            font-size: 1.3rem; }
            @media (min-width: 48em) {
              .mddWrap .mddInner-right .m-l-box .dropContent .btn a {
                font-size: 0.8rem; } }
        .mddWrap .mddInner-right .m-l-box .dropContent .makerimg {
          border: 1px solid #d3d3d3; }
        .mddWrap .mddInner-right .m-l-box .dropContent.droppad {
          margin-left: -0.75rem;
          margin-right: -0.75rem; }
          @media (min-width: 68.75em) {
            .mddWrap .mddInner-right .m-l-box .dropContent.droppad {
              margin-bottom: 50px; } }
          .mddWrap .mddInner-right .m-l-box .dropContent.droppad .dropContent-title {
            margin-left: 0.75rem;
            margin-right: 0.75rem; }
    .mddWrap .mddInner-left {
      background: #deefe6;
      border-top: 8px solid #00a63c;
      padding: 1rem 1.5rem 1rem 1.5rem;
      display: block;
      width: 100%; }
      @media (min-width: 68.75em) {
        .mddWrap .mddInner-left {
          padding: 1rem 1.5rem .5rem 1.5rem;
          display: block;
          width: 20%;
          float: right; } }
      .mddWrap .mddInner-left .dropContent {
        padding: 1rem 0 0 0; }
        @media (min-width: 68.75em) {
          .mddWrap .mddInner-left .dropContent {
            padding: 0; } }
        .mddWrap .mddInner-left .dropContent .dropContent-title {
          color: black;
          background: #fff;
          background: #deefe6;
          letter-spacing: 0;
          margin-bottom: 0.75rem;
          font-size: 1.4rem;
          line-height: 1.3571428571; }
          @media (min-width: 48em) {
            .mddWrap .mddInner-left .dropContent .dropContent-title {
              font-size: 1rem; } }
        .mddWrap .mddInner-left .dropContent .news-lsit {
          background: none;
          margin: -1rem 0 1rem 0;
          height: auto;
          padding: 0; }
          @media (min-width: 68.75em) {
            .mddWrap .mddInner-left .dropContent .news-lsit {
              margin: 0 0 1.6rem 0; } }
          .mddWrap .mddInner-left .dropContent .news-lsit li {
            display: block;
            width: 100%;
            background: #fff;
            background: #deefe6 !important;
            color: #444; }
            .mddWrap .mddInner-left .dropContent .news-lsit li a {
              background: #fff;
              background: #deefe6 !important;
              padding: 1em 0;
              color: black;
              letter-spacing: 0;
              display: block;
              width: 100%;
              border: none !important;
              font-size: 1.4rem;
              letter-spacing: 0; }
              @media (min-width: 48em) {
                .mddWrap .mddInner-left .dropContent .news-lsit li a {
                  font-size: 0.8rem; } }
              @media (min-width: 68.75em) {
                .mddWrap .mddInner-left .dropContent .news-lsit li a {
                  padding: 0.5em 0; } }
              .mddWrap .mddInner-left .dropContent .news-lsit li a:before {
                display: none; }
              .mddWrap .mddInner-left .dropContent .news-lsit li a img {
                margin-bottom: 5px; }
              .mddWrap .mddInner-left .dropContent .news-lsit li a p b {
                margin-bottom: 5px;
                display: block; }
          .mddWrap .mddInner-left .dropContent .news-lsit.expo {
            margin: 0 0 -1rem 0; }
            .mddWrap .mddInner-left .dropContent .news-lsit.expo li {
              padding: 0 0.75rem 0rem 0.75rem;
              width: 50%;
              float: left; }
              @media (min-width: 68.75em) {
                .mddWrap .mddInner-left .dropContent .news-lsit.expo li {
                  padding: 0.5em 0;
                  width: 100%;
                  float: none; } }
              .mddWrap .mddInner-left .dropContent .news-lsit.expo li a {
                border: none;
                padding: 0 0 0.25rem 0; }
                @media (min-width: 68.75em) {
                  .mddWrap .mddInner-left .dropContent .news-lsit.expo li a {
                    border-bottom: 1px solid #d3d3d3;
                    padding: 0.5em 0; } }

#mega {
  cursor: pointer; }
  #mega:after {
    display: block;
    content: "";
    width: 100%;
    height: 40px;
    margin-bottom: -40px; }

.droppad .col-md-3 {
  width: 50%;
  float: left; }
  @media (min-width: 30em) {
    .droppad .col-md-3 {
      width: 25%; } }
  .droppad .col-md-3 img {
    width: 100%; }

.mddWrap .mddInner-right .m-l-box .dropContent.wavelength {
  margin-top: -40px; }
.mddWrap .mddInner-right .m-l-box .dropContent .wavelength_list {
  margin: 0 0 40px 0; }
  @media (min-width: 68.75em) {
    .mddWrap .mddInner-right .m-l-box .dropContent .wavelength_list {
      margin: 0 0 60px 0; } }
  .mddWrap .mddInner-right .m-l-box .dropContent .wavelength_list li a {
    padding: 0.75em 1.25em !important;
    font-size: 1.2rem; }
    @media (min-width: 48em) {
      .mddWrap .mddInner-right .m-l-box .dropContent .wavelength_list li a {
        font-size: 0.7rem; } }
    .mddWrap .mddInner-right .m-l-box .dropContent .wavelength_list li a span {
      font-size: 0.8rem; }
      @media (min-width: 48em) {
        .mddWrap .mddInner-right .m-l-box .dropContent .wavelength_list li a span {
          font-size: 0.5rem; } }

.wavelength_list {
  padding: 0;
  display: flex !important;
  flex-wrap: wrap !important;
  width: 100%;
  margin: 40px 0 0 0;
  background: none !important; }
  @media (min-width: 68.75em) {
    .wavelength_list {
      margin: 60px 0 0 0; } }
  .wavelength_list li {
    list-style: none;
    width: calc(50% - 1px);
    margin: 0 1px 1px 0;
    padding: 0;
    border: none;
    position: relative;
    /*&:nth-child(1) {
    	a {
    	background: #b10000 !important;
    	}
    }
    &:nth-child(2) {
    	a {
    	background: #e92f2f !important;
    		}
    }
    &:nth-child(3) {
    	a {
    	background: #f8b500 !important;
    		}
    }
    &:nth-child(4) {
    	a {
    	background: #00a63c !important;
    		}
    }
    &:nth-child(5) {
    	a {
    	background: #a863d3 !important;
    		}
    }
    &:nth-child(6) {
    	a {
    	background: #a863d3 !important;
    		}
    }
    &:nth-child(7) {
    	a {
    	background: #282828 !important;
    		}
    }*/ }
    @media (min-width: 48em) {
      .wavelength_list li {
        width: calc(25% - 1px); } }
    .wavelength_list li a {
      color: #fff;
      background: #b10000 !important;
      font-weight: bold;
      padding: 0.75em 1.25em !important;
      display: block;
      height: 100%;
      text-decoration: none;
      font-size: 1.4rem; }
      @media (min-width: 48em) {
        .wavelength_list li a {
          font-size: 0.8rem; } }
      .wavelength_list li a span {
        display: block;
        width: 100%;
        font-weight: normal;
        font-size: 1rem; }
        @media (min-width: 48em) {
          .wavelength_list li a span {
            font-size: 0.6rem; } }

.banner-header {
  text-align: center;
  background: #4bbdc7;
  margin-top: 0; }

#menu-btn {
  position: fixed;
  right: 0;
  top: 0;
  padding: 0;
  width: 57px;
  height: 57px;
  display: block;
  z-index: 9000;
  cursor: pointer;
  background-color: #000;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out; }
  @media (min-width: 68.75em) {
    #menu-btn {
      display: none; } }
  #menu-btn .menu-btn-icon {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 30px;
    height: 1px;
    margin: 0 0 0 -15px;
    background-color: #fff;
    border-radius: 2px; }
    #menu-btn .menu-btn-icon:before, #menu-btn .menu-btn-icon:after {
      content: "";
      display: block;
      border-radius: 2px;
      position: absolute;
      top: 0;
      left: 0;
      width: 30px;
      height: 1px;
      background-color: #fff;
      -webkit-transition: 0.3s ease-in-out;
      -moz-transition: 0.3s ease-in-out;
      transition: 0.3s ease-in-out; }
    #menu-btn .menu-btn-icon:before {
      margin-top: -8px; }
    #menu-btn .menu-btn-icon:after {
      margin-top: 8px; }
  #menu-btn .menu-btn-text {
    position: absolute;
    bottom: 4px;
    left: 0;
    width: 100%;
    text-align: center;
    color: #fff; }
    @media (min-width: 48em) {
      #menu-btn .menu-btn-text {
        font-size: 0.5rem; } }
  #menu-btn.open .menu-btn-icon {
    background: transparent; }
    #menu-btn.open .menu-btn-icon:before {
      margin-top: 0;
      -webkit-transform: rotate(-45deg);
      -moz-transform: rotate(-45deg);
      transform: rotate(-45deg); }
    #menu-btn.open .menu-btn-icon:after {
      margin-top: 0;
      -webkit-transform: rotate(-135deg);
      -moz-transform: rotate(-135deg);
      transform: rotate(-135deg); }

#footer {
  position: relative;
  padding: 3.6rem 2.0rem 3.0rem 2.0rem;
  background-color: #2c2c2c;
  color: #fff; }
  @media (min-width: 48em) {
    #footer {
      padding: 2.0rem 2.0rem 1.0rem 2.0rem; } }
  #footer a {
    color: #fff; }
    #footer a:hover {
      color: rgba(255, 255, 255, 0.6); }
  #footer .col-md-3 {
    padding-bottom: 0; }

.footer-sitemap {
  padding: 0;
  list-style: none;
  font-size: 0; }
  .footer-sitemap li {
    display: inline-block;
    margin: 0;
    line-height: 36px;
    border-bottom: 1px solid #3d3d3d;
    display: block;
    font-size: 1.6rem; }
    @media (min-width: 48em) {
      .footer-sitemap li {
        line-height: 50px;
        font-size: 0.8rem; } }
  .footer-sitemap-cate {
    padding-left: 2em; }
.footer-title {
  margin: 0 auto;
  text-align: center; }
  @media (min-width: 48em) {
    .footer-title {
      margin: 0 2em 0.4rem 0; } }
  .footer-title img {
    margin: 0 auto;
    width: 200px; }
    @media (min-width: 62em) {
      .footer-title img {
        width: auto; } }
.footer-copy {
  display: block;
  position: relative;
  margin: 2rem 0 0 0;
  text-align: center;
  letter-spacing: 0.1em; }
  @media (min-width: 62em) {
    .footer-copy {
      margin: 0;
      display: inline-block;
      position: absolute;
      bottom: 5px;
      right: 5px; } }

#mainContents {
  margin-top: 57px; }
  @media (min-width: 68.75em) {
    #mainContents {
      margin-top: 0; } }

@media (min-width: 62em) {
  .main-left {
    float: left;
    width: 100%;
    margin-right: -330px;
    padding-right: 330px; } }
@media (min-width: 62em) {
  .main-right {
    float: right;
    width: 300px; } }

.contents-sidebar {
  position: relative;
  margin: 0 -0.75rem 2.4rem -0.75rem; }
  @media (min-width: 62em) {
    .contents-sidebar {
      margin: 0 0 1.4rem 0; } }

.heading1-0 {
  position: relative;
  font-size: 2rem;
  line-height: 1.25;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.2em;
  margin: 0;
  color: #fff;
  padding: 3rem 0;
  background: url(ph/slider2.jpg) center center no-repeat;
  background-size: cover; }
  @media (min-width: 48em) {
    .heading1-0 {
      font-size: 1.2rem; } }

.heading1-0-new {
  position: relative;
  font-size: 2.2rem;
  line-height: 1.2272727273;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #fff;
  margin-bottom: 50px;
  background: #3b3b3b url(ph/slider2.jpg) no-repeat;
  background-size: cover;
  padding: 3em 0 4em 0; }
  @media (min-width: 48em) {
    .heading1-0-new {
      font-size: 1.5rem;
      margin-bottom: 70px; } }
  .heading1-0-new:after {
    position: absolute;
    display: block;
    content: "";
    height: 4px;
    background: #60d1da;
    width: 30px;
    bottom: 3.2em;
    left: calc(50% - 15px); }
    @media (min-width: 48em) {
      .heading1-0-new:after {
        width: 40px;
        bottom: 3.2em;
        left: calc(50% - 20px); } }
  .heading1-0-new span {
    font-family: 'Oswald', sans-serif;
    color: #828282;
    display: block;
    width: 100%;
    letter-spacing: 0.05em;
    padding-bottom: 1em;
    font-size: 0.8rem; }
    @media (min-width: 48em) {
      .heading1-0-new span {
        font-size: 0.5rem; } }
  .heading1-0-new h1 {
    margin: 0;
    padding: 0;
    font-size: 2.2rem;
    line-height: 1.2272727273; }
    @media (min-width: 48em) {
      .heading1-0-new h1 {
        font-size: 1.5rem; } }

.heading1-1 {
  position: relative;
  font-size: 2.2rem;
  line-height: 1.2272727273;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.1em;
  color: #333333;
  margin-bottom: 50px; }
  @media (min-width: 48em) {
    .heading1-1 {
      font-size: 1.5rem;
      margin-bottom: 70px; } }
  .heading1-1:after {
    position: absolute;
    display: block;
    content: "";
    height: 4px;
    background: #60d1da;
    width: 30px;
    bottom: -18px;
    left: calc(50% - 15px); }
    @media (min-width: 48em) {
      .heading1-1:after {
        width: 40px;
        bottom: -25px;
        left: calc(50% - 20px); } }

.heading1-1-new {
  position: relative;
  font-size: 2.2rem;
  line-height: 1.2272727273;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #fff;
  margin-bottom: 50px;
  background: #104c83 url(ph/stbg.jpg) no-repeat;
  background-blend-mode: overlay;
  padding: 3em 1.5em 4em 1.5em; }
  @media (min-width: 48em) {
    .heading1-1-new {
      padding: 3em 0 4em 0;
      font-size: 1.5rem;
      margin-bottom: 70px; } }
  .heading1-1-new:after {
    position: absolute;
    display: block;
    content: "";
    height: 4px;
    background: #60d1da;
    width: 30px;
    bottom: 3.2em;
    left: calc(50% - 15px); }
    @media (min-width: 48em) {
      .heading1-1-new:after {
        width: 40px;
        bottom: 3.2em;
        left: calc(50% - 20px); } }
  .heading1-1-new h1 {
    margin: 0;
    padding: 0;
    font-size: 2.2rem;
    line-height: 1.2272727273; }
    @media (min-width: 48em) {
      .heading1-1-new h1 {
        font-size: 1.5rem; } }
  .heading1-1-new span {
    font-family: 'Oswald', sans-serif;
    color: #828282;
    display: block;
    width: 100%;
    letter-spacing: 0.05em;
    padding-bottom: 1em;
    font-size: 0.8rem; }
    @media (min-width: 48em) {
      .heading1-1-new span {
        font-size: 0.5rem; } }

.heading1-1-newco {
  position: relative;
  height: 203px;
  padding-top: 67px;
  text-align: center;
  margin-bottom: 50px;
  background: #104c83 url(ph/stbgcom.jpg) no-repeat center center;
  background-size: cover; }
  @media (min-width: 48em) {
    .heading1-1-newco {
      height: 268px;
      padding-top: 85px; } }
  .heading1-1-newco img {
    height: 68px;
    width: auto; }
    @media (min-width: 48em) {
      .heading1-1-newco img {
        height: 98px; } }

.heading1-2 {
  position: relative;
  font-size: 1.8rem;
  line-height: 1.2777777778;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #fff;
  margin-bottom: 70px; }
  @media (min-width: 48em) {
    .heading1-2 {
      font-size: 1.2rem; } }
  .heading1-2:after {
    position: absolute;
    display: block;
    content: "";
    width: 40px;
    height: 4px;
    background: #60d1da;
    bottom: -25px;
    left: calc(50% - 20px); }

.heading1-3 {
  position: relative;
  font-size: 1.8rem;
  line-height: 1.2777777778;
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #fff;
  margin-bottom: 20px; }
  @media (min-width: 48em) {
    .heading1-3 {
      font-size: 1.2rem; } }

.heading1-4 {
  position: relative;
  font-size: 1.8rem;
  line-height: 1.2777777778;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #000;
  margin-bottom: 25px; }
  @media (min-width: 48em) {
    .heading1-4 {
      font-size: 1.2rem;
      margin-bottom: 40px; } }

.heading1-5 {
  position: relative;
  font-size: 1.8rem;
  line-height: 1.2777777778;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #000;
  margin-bottom: 40px; }
  @media (min-width: 48em) {
    .heading1-5 {
      font-size: 1.2rem; } }

.heading1-6 {
  font-size: 1.6rem;
  line-height: 1.3125;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #000;
  margin-bottom: 25px; }
  @media (min-width: 48em) {
    .heading1-6 {
      font-size: 1rem; } }

.heading1-6-new {
  font-size: 2.2rem;
  line-height: 1.2272727273;
  text-align: center;
  letter-spacing: 0.2em;
  margin-bottom: 25px;
  font-weight: normal; }
  @media (min-width: 48em) {
    .heading1-6-new {
      font-size: 1.5rem; } }
  .heading1-6-new span {
    color: #000;
    font-weight: bold;
    font-family: 'Oswald', sans-serif; }

.heading1-6-1 {
  font-size: 1.4rem;
  line-height: 1.3571428571;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #000;
  margin-bottom: 25px;
  border-top: 2px solid black;
  padding-top: 3rem; }
  @media (min-width: 48em) {
    .heading1-6-1 {
      font-size: 0.8rem; } }

.heading1-7 {
  font-size: 1.6rem;
  line-height: 1.3125;
  font-weight: bold;
  letter-spacing: 0.1em;
  color: #000;
  margin-top: 3rem;
  margin-bottom: 1rem; }
  @media (min-width: 48em) {
    .heading1-7 {
      font-size: 0.9rem; } }

.heading1-8 {
  font-size: 1.6rem;
  line-height: 2.25;
  font-weight: bold;
  letter-spacing: 0.1em;
  color: #000;
  margin-bottom: 0.7rem;
  text-align: center; }
  @media (min-width: 48em) {
    .heading1-8 {
      font-size: 1rem; } }

.heading1-9 {
  font-size: 1.4rem;
  line-height: 2.25;
  font-weight: bold;
  letter-spacing: 0.1em;
  margin: 0.8rem 0;
  padding: 0 0.75rem;
  color: #575757;
  text-align: center; }
  @media (min-width: 48em) {
    .heading1-9 {
      font-size: 0.8rem; } }

.heading1-10 {
  font-size: 1.8rem;
  line-height: 2.25;
  font-weight: bold;
  letter-spacing: 0.1em;
  margin: 0.5rem 0;
  padding: 0 0.75rem;
  color: #fff;
  text-align: center; }
  @media (min-width: 48em) {
    .heading1-10 {
      font-size: 0.9rem; } }
  .heading1-10 a {
    color: #fff; }

.heading-wavelength {
  display: block;
  width: 100%;
  text-align: center;
  margin-top: 1rem; }

.h3p {
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 1.2em;
  line-height: 1.625;
  padding: 0.2em 0.6em;
  color: black;
  background: #fff;
  border: none; }
  @media (min-width: 48em) {
    .h3p {
      font-size: 0.8rem; } }

.h3p-new {
  font-size: 2.6rem;
  margin-bottom: 0.5em;
  margin-top: 1.2em;
  line-height: 1.625;
  padding: 0.2em 0.6em;
  color: #c6c6c6;
  width: 100%;
  text-align: center;
  border: none;
  font-weight: normal; }
  @media (min-width: 48em) {
    .h3p-new {
      font-size: 1.3rem; } }
  .h3p-new span {
    font-weight: bold;
    color: #fff; }

.txtp2 .h3p-new {
  color: #444; }

.h4p {
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 1.2em;
  line-height: 1.625;
  padding: 0.2em 0.6em;
  color: black;
  background: #f5f5f5;
  border: none; }
  @media (min-width: 48em) {
    .h4p {
      font-size: 0.8rem; } }

.subcatgory-button {
  margin: 0 0 1.2rem;
  font-size: 0;
  text-align: left; }
  .subcatgory-button span {
    display: inline-block;
    width: 33.333333%;
    padding: 0 1px 1px 0;
    vertical-align: top;
    font-size: 1.4rem;
    line-height: 1.3571428571;
    text-align: center; }
    @media (min-width: 48em) {
      .subcatgory-button span {
        font-size: 0.7rem; } }
    @media (min-width: 62em) {
      .subcatgory-button span {
        width: auto; } }
    .subcatgory-button span.on a {
      background-color: #be1a20;
      color: #fff; }
      .subcatgory-button span.on a:hover {
        opacity: 0.60; }
  .subcatgory-button a {
    display: block;
    padding: 10px 0;
    background-color: #444;
    color: #fff; }
    @media (min-width: 62em) {
      .subcatgory-button a {
        padding: 10px 20px; } }

.more-link {
  margin: 0;
  text-align: center;
  font-size: 15px;
  line-height: 40px; }
  .more-link a {
    display: block;
    margin: 0 auto;
    max-width: 200px;
    min-height: 40px;
    padding: 0;
    border: 1px solid #fff;
    color: #fff; }
    .more-link a:hover {
      background-color: #fff;
      color: #000;
      opacity: 1.00; }

.pankuzu {
  position: relative;
  margin: 0 auto;
  width: 100%;
  padding: 0.4rem 0.75rem 0.4rem 0;
  line-height: 22px;
  background: #f4f4f4; }
  .pankuzu .container span {
    font-size: 1rem; }
    @media (min-width: 48em) {
      .pankuzu .container span {
        font-size: 0.7rem; } }
  .pankuzu a {
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding: 0 9px 0 0;
    color: #2084e0; }
    @media (min-width: 48em) {
      .pankuzu a {
        display: block; } }
    @media (min-width: 48em) {
      .pankuzu a {
        padding: 0 19px 0 0; } }
    .pankuzu a:after {
      content: '\f105';
      font-family: FontAwesome;
      margin-left: 8px;
      font-size: 14px;
      line-height: 22px;
      color: #666; }
    @media (min-width: 48em) {
      .pankuzu a {
        display: inline-block; }
        .pankuzu a:after {
          position: absolute;
          right: 4px;
          top: 0;
          margin: 0; } }

span.iconn {
  display: inline-block;
  margin: 0 1em 0 0.5em;
  line-height: 2em;
  padding: 0;
  width: 80px;
  text-align: center;
  color: #fff;
  background: #00a63c;
  font-size: 1rem; }
  @media (min-width: 48em) {
    span.iconn {
      width: 100px;
      font-size: 0.6rem;
      margin: 0 1.7em 0 1em; } }

span.n-info {
  background: #a5e131; }

span.n-products {
  background: #ef3c55; }

span.n-expo {
  background: #ffa200; }

span.iconp {
  display: inline-block;
  margin: 0;
  letter-spacing: 0;
  line-height: 1em;
  padding: 0.5em 0.45em;
  color: #fff;
  background: #ddd;
  font-size: 1.4rem; }
  @media (min-width: 48em) {
    span.iconp {
      font-size: 0.7rem; } }

span.p-1064nm, span.p-1053nm {
  background: #b10000; }

span.p-671nm, span.p-660nm, span.p-640nm {
  background: #e92f2f; }

span.p-561nm {
  background: #f8b500; }

span.p-532nm, span.p-527nm {
  background: #00a63c; }

span.p-473nm, span.p-351nm, span.p-355nm {
  background: #2084e0; }

span.p-266nm, span.p-213nm, span.p-263nm {
  background: #a863d3; }

.btn {
  width: 100%;
  text-align: center;
  margin-bottom: 1em;
  display: block; }
  .btn a {
    display: block;
    padding: 1.35em 2em;
    margin: 0 auto;
    text-align: center;
    text-decoration: none;
    font-size: 1.6rem;
    line-height: 1.3125; }
    @media (min-width: 48em) {
      .btn a {
        font-size: 0.8rem; } }
    .btn a.black-one {
      color: #fff;
      max-width: 260px;
      background: black url("img/common/svg/arrow_w.svg") no-repeat;
      background-position: right 20px bottom 15px;
      background-size: 26px 10px; }
      @media (min-width: 30em) {
        .btn a.black-one {
          max-width: 360px; } }
    .btn a.green-one {
      color: #fff;
      max-width: 260px;
      background: #00a63c url("img/common/svg/arrow_w.svg") no-repeat;
      background-position: right 20px bottom 15px;
      background-size: 26px 10px; }
      @media (min-width: 30em) {
        .btn a.green-one {
          max-width: 360px; } }
    .btn a.blue-one {
      color: #fff;
      max-width: 260px;
      background: #60d1da url("img/common/svg/arrow_w.svg") no-repeat;
      background-position: right 20px bottom 15px;
      background-size: 26px 10px; }
      @media (min-width: 30em) {
        .btn a.blue-one {
          max-width: 360px; } }
    .btn a.blue-one2 {
      color: #fff;
      font-weight: bold;
      width: 90%;
      background: #60d1da url("img/common/svg/arrow_w.svg") no-repeat;
      background-position: right 20px bottom 15px;
      background-size: 26px 10px; }
      @media (min-width: 48em) {
        .btn a.blue-one2 {
          width: 80%; } }
    .btn a.white-two {
      color: #00a63c;
      max-width: 260px;
      background: #fff url("img/common/svg/arrow_g.svg") no-repeat;
      background-position: right 20px bottom 15px;
      background-size: 26px 10px; }
      @media (min-width: 30em) {
        .btn a.white-two {
          max-width: 360px; } }
      @media (min-width: 48em) {
        .btn a.white-two {
          max-width: 560px; } }

.laboboxp .btn {
  margin-bottom: 4em; }

.categorybox {
  margin-top: -2em; }
  @media (min-width: 48em) {
    .categorybox {
      margin-top: -4em; } }
  .categorybox .dropContent-title {
    color: #00a63c;
    font-weight: bold;
    margin: 0.5em 0;
    font-size: 1.6rem;
    line-height: 1.3125; }
    @media (min-width: 48em) {
      .categorybox .dropContent-title {
        font-size: 0.9rem; } }
  .categorybox .dropContent-list {
    margin: 0 0 0 1.6em;
    padding: 0; }
    .categorybox .dropContent-list li {
      font-size: 1.4rem;
      line-height: 1.3571428571; }
      @media (min-width: 48em) {
        .categorybox .dropContent-list li {
          font-size: 0.8rem; } }
  .categorybox .col-md-3 {
    width: 50%;
    padding-bottom: 1.4em !important;
    float: left; }
    .categorybox .col-md-3 img {
      width: 100%; }
    @media (min-width: 48em) {
      .categorybox .col-md-3 {
        padding-bottom: 0 !important;
        width: 25%; } }

.appbox, .app {
  background: url("ph/slider3.jpg") center center no-repeat;
  background-size: cover; }
  .appbox-list, .app-list {
    width: calc(100% - 2rem);
    padding: 0;
    background: #fff;
    margin: 0 1rem 25px 1rem;
    display: flex;
    flex-flow: wrap;
    border-top: 1px solid #00a63c; }
    @media (min-width: 62em) {
      .appbox-list, .app-list {
        margin: 0 0 50px 0; } }
    .appbox-list li, .app-list li {
      border-bottom: 1px solid #00a63c;
      border-left: 1px solid #00a63c;
      border-right: 1px solid #00a63c;
      margin: 0;
      padding: 0;
      list-style: none;
      width: 100%;
      display: table; }
      @media (min-width: 48em) {
        .appbox-list li, .app-list li {
          border-right: none;
          width: 50%; } }
      @media (min-width: 62em) {
        .appbox-list li, .app-list li {
          width: 25%; } }
      .appbox-list li a, .app-list li a {
        text-decoration: none;
        display: table-cell;
        width: 100%;
        height: 100%;
        vertical-align: middle;
        color: #00a63c;
        background: #fff;
        line-height: 3em;
        padding: 0 1.6em;
        font-size: 1.6rem; }
        @media (min-width: 48em) {
          .appbox-list li a, .app-list li a {
            font-size: 0.8rem; } }
      @media (min-width: 48em) {
        .appbox-list li:last-child, .app-list li:last-child {
          border-right: 1px solid #00a63c; } }
      @media (min-width: 48em) {
        .appbox-list li:last-child, .app-list li:last-child {
          width: calc(50% + 1px); } }
      @media (min-width: 62em) {
        .appbox-list li:last-child, .app-list li:last-child {
          width: calc(25% + 1px); } }
      @media (min-width: 48em) {
        .appbox-list li:nth-child(2n), .app-list li:nth-child(2n) {
          border-right: 1px solid #00a63c; } }
      @media (min-width: 62em) {
        .appbox-list li:nth-child(2n), .app-list li:nth-child(2n) {
          border-right: none; } }
      @media (min-width: 48em) {
        .appbox-list li:nth-child(4n), .app-list li:nth-child(4n) {
          width: 50%; } }
      @media (min-width: 62em) {
        .appbox-list li:nth-child(4n), .app-list li:nth-child(4n) {
          width: 25%; } }
      @media (min-width: 62em) {
        .appbox-list li:nth-child(4n), .app-list li:nth-child(4n) {
          border-right: 1px solid #00a63c; } }

@media (min-width: 62em) {
  .appbox-list {
    margin: 0 0 30px 0; } }
.appbox-list li a {
  line-height: 1em;
  padding: 0.7em 0.7em 0.7em 1.7em; }
  @media (min-width: 48em) {
    .appbox-list li a {
      padding: 0.9em 1.6em 0.9em 2.6em; } }
  .appbox-list li a i {
    margin-left: -1em; }

.makerbox .dropContent-title {
  text-align: center;
  display: block;
  margin: 1.2em 0 0.5em 0;
  font-size: 1.2rem;
  line-height: 1.8333333333; }
  @media (min-width: 48em) {
    .makerbox .dropContent-title {
      line-height: 1.3125;
      font-size: 0.8rem; } }
.makerbox img {
  border: 1px solid #d3d3d3;
  width: 100%; }
.makerbox-inner .col-md-3 {
  width: 50%;
  float: left; }
  @media (min-width: 48em) {
    .makerbox-inner .col-md-3 {
      width: 25%; } }

.labobox {
  display: block;
  width: 100%;
  padding: 0; }
  @media (min-width: 48em) {
    .labobox {
      display: table; } }
  .labobox-list {
    border-top: 1px solid #fff;
    display: flex;
    flex-flow: wrap;
    justify-content: center;
    margin: 0 0 25px 0;
    padding: 0;
    background: #fff;
    text-align: center; }
    @media (min-width: 62em) {
      .labobox-list {
        margin: 0 0 50px 0; } }
    .labobox-list li {
      border-bottom: 1px solid #fff;
      border-left: 1px solid #fff;
      border-right: 1px solid #fff;
      padding: 0;
      list-style: none;
      display: block;
      width: 100%; }
      @media (min-width: 48em) {
        .labobox-list li {
          border-left: none;
          width: 50%; } }
      @media (min-width: 62em) {
        .labobox-list li {
          width: 25%; } }
      .labobox-list li a {
        text-decoration: none;
        display: block;
        color: #fff;
        background: #60d1da;
        line-height: 2.7em;
        padding: 0 0.4em;
        text-align: left;
        font-size: 1.6rem; }
        @media (min-width: 48em) {
          .labobox-list li a {
            text-align: center;
            font-size: 0.8rem; } }
      .labobox-list li:last-child {
        border-right: 1px solid #fff; }
        @media (min-width: 48em) {
          .labobox-list li:last-child {
            width: calc(50% + 1px); } }
        @media (min-width: 62em) {
          .labobox-list li:last-child {
            width: calc(25% + 1px); } }
      @media (min-width: 48em) {
        .labobox-list li:nth-child(2n) {
          border-right: 1px solid #fff; } }
      .labobox-list li:nth-child(4n) {
        border-right: 1px solid #fff; }
        @media (min-width: 48em) {
          .labobox-list li:nth-child(4n) {
            border-right: 1px solid #fff; } }
        @media (min-width: 62em) {
          .labobox-list li:nth-child(4n) {
            border-right: 1px solid #fff; } }
  .labobox-left {
    display: block;
    width: 100%;
    vertical-align: middle;
    background: url("ph/slider2.jpg") center center no-repeat;
    background-size: cover;
    padding: 4.4em 2em;
    color: #fff;
    font-size: 1.4rem;
    line-height: 1.3571428571;
    text-align: center; }
    @media (min-width: 30em) {
      .labobox-left {
        padding: 6em 2em; } }
    @media (min-width: 48em) {
      .labobox-left {
        font-size: 0.7rem;
        padding: 8em 2em; } }
    @media (min-width: 62em) {
      .labobox-left {
        padding: 3em 5em;
        text-align: left;
        display: table-cell;
        width: 50%; } }
    .labobox-left .btn {
      text-align: center; }
      @media (min-width: 62em) {
        .labobox-left .btn {
          text-align: left; } }
      .labobox-left .btn a {
        margin: 20px auto 0 auto; }
        @media (min-width: 62em) {
          .labobox-left .btn a {
            margin: 40px 0 0 0; } }
  .labobox-right {
    display: block;
    width: 100%;
    padding: 0; }
    @media (min-width: 62em) {
      .labobox-right {
        width: 50%;
        display: table-cell; } }

.newsbox-inner {
  float: none;
  margin: 0 auto;
  padding-bottom: 0; }
  .newsbox-inner-list {
    margin: 0 0 2.5em 0;
    padding: 0; }
    @media (min-width: 48em) {
      .newsbox-inner-list {
        margin: 0 0 5em 0; } }
    .newsbox-inner-list li {
      display: block;
      width: 100%;
      list-style: none;
      border-bottom: 1px solid #c9c9c9;
      line-height: auto;
      padding: 1.2em 0;
      line-height: 1.6em; }
      @media (min-width: 48em) {
        .newsbox-inner-list li {
          display: table;
          padding: 1.7em 0; } }
      .newsbox-inner-list li span.daten, .newsbox-inner-list li span.iconnouter {
        white-space: nowrap;
        display: inline-block;
        vertical-align: top; }
        @media (min-width: 48em) {
          .newsbox-inner-list li span.daten, .newsbox-inner-list li span.iconnouter {
            display: table-cell; } }
      .newsbox-inner-list li a {
        display: inline-block;
        width: 100%;
        vertical-align: top;
        margin-top: 0.25em; }
        @media (min-width: 48em) {
          .newsbox-inner-list li a {
            margin-top: 0;
            display: table-cell; } }

.single-title h1 {
  font-size: 1.8rem;
  line-height: 1.625;
  letter-spacing: 0;
  text-align: left;
  margin-bottom: 0.5rem;
  font-weight: bold;
  color: #333333; }
  @media (min-width: 48em) {
    .single-title h1 {
      line-height: 1.4166666667;
      font-size: 1.2rem; } }
  .single-title h1:after {
    display: none; }
.single-title .newsbox-inner-list {
  margin: 0 0 0.3rem 0;
  padding: 0; }
  .single-title .newsbox-inner-list li {
    border: none;
    line-height: 1em; }
    @media (min-width: 48em) {
      .single-title .newsbox-inner-list li {
        line-height: 2em; } }

.tenji {
  display: block;
  width: 100%;
  margin: 0 auto;
  padding: 0; }

.tenji li {
  display: block;
  width: 50%;
  padding: 2%;
  float: left; }

.tenji li p {
  padding: 1em 0 0 0; }

.Map {
  max-width: 600px;
  margin: 0 auto; }

.fig-trade {
  padding: 2rem 0;
  text-align: center;
  font-weight: bold;
  font-size: 1.8rem; }
  @media (min-width: 48em) {
    .fig-trade {
      font-size: 0.9rem; } }
  .fig-trade .trade {
    display: block;
    position: relative;
    background: #e8e8e8;
    padding: 1rem;
    margin-bottom: 3.8rem; }
    @media (min-width: 48em) {
      .fig-trade .trade {
        margin-bottom: 2rem; } }
    .fig-trade .trade:after {
      content: "";
      position: absolute;
      right: 0;
      bottom: -30px;
      left: 0;
      width: 0px;
      height: 0px;
      margin: auto;
      border-style: solid;
      border-color: #4e4e4e transparent transparent transparent;
      border-width: 20px 20px 0 20px; }
  .fig-trade .litron, .fig-trade .photonics {
    position: relative;
    display: block;
    margin-bottom: 1rem; }
    .fig-trade .litron a, .fig-trade .photonics a {
      color: #fff;
      background: #60d1da;
      display: block;
      padding: 1rem; }
  .fig-trade .off {
    position: absolute;
    color: #fff;
    background: #e92f2f;
    font-size: 8px;
    font-weight: bold;
    display: block;
    width: 46px;
    line-height: 46px;
    text-align: center;
    top: -7px;
    left: -7px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    z-index: 10; }
    @media (min-width: 48em) {
      .fig-trade .off {
        top: -15px;
        left: -15px;
        font-size: 14px;
        width: 60px;
        line-height: 60px; } }

.form-outer {
  background: #e5ebeb;
  padding: 1rem 1rem; }
  @media (min-width: 48em) {
    .form-outer {
      padding: 1.5rem 4.5rem; } }
  @media (min-width: 62em) {
    .form-outer {
      padding: 2rem 7rem; } }
.form-outer-inner {
  border: 1px solid #e6e6e6;
  padding: 1.8rem 2.5rem;
  background: #fff;
  width: 100%;
  margin-bottom: 1rem; }
  @media (min-width: 48em) {
    .form-outer-inner {
      padding: 2rem 4rem;
      margin-bottom: 3rem; } }
  .form-outer-inner .ness {
    background: #e92f2f;
    color: #fff;
    padding: 0.1rem 0.25rem;
    margin: 0 0.7rem;
    font-size: 1.2rem; }
    @media (min-width: 48em) {
      .form-outer-inner .ness {
        font-size: 0.6rem; } }
  .form-outer-inner label {
    font-weight: bold; }
  .form-outer-inner input[type="text"], .form-outer-inner input[type="tel"], .form-outer-inner input[type="email"] {
    width: 100%;
    padding: 0.35rem 0.4rem;
    border: 1px solid #d6d6d6;
    margin: 0.3rem 0 0 0;
    font-weight: normal; }
  .form-outer-inner textarea {
    width: 100%;
    padding: 0.35rem 0.2rem;
    border: 1px solid #d6d6d6;
    margin: 0.3rem 0 0 0;
    font-weight: normal; }
  .form-outer-inner select {
    padding: 0.35rem 0.4rem;
    border: 1px solid #d6d6d6; }
  .form-outer-inner .form7btn {
    width: 100%;
    display: block;
    text-align: center; }
    .form-outer-inner .form7btn input[type="submit"] {
      padding: 1.1em 5em;
      background: black;
      color: #fff;
      border: none; }
.form-outer-innerpop {
  width: 100%; }
  .form-outer-innerpop .ness {
    background: #e92f2f;
    color: #fff;
    padding: 0.1rem 0.25rem;
    margin: 0 0.7rem;
    font-size: 1.2rem; }
    @media (min-width: 48em) {
      .form-outer-innerpop .ness {
        font-size: 0.6rem; } }
  .form-outer-innerpop label {
    font-weight: bold; }
  .form-outer-innerpop input[type="text"], .form-outer-innerpop input[type="tel"], .form-outer-innerpop input[type="email"] {
    width: 100%;
    padding: 0.35rem 0.4rem;
    border: 1px solid #d6d6d6;
    margin: 0.3rem 0 0 0;
    font-weight: normal; }
  .form-outer-innerpop textarea {
    width: 100%;
    padding: 0.35rem 0.2rem;
    border: 1px solid #d6d6d6;
    margin: 0.3rem 0 0 0;
    font-weight: normal; }
  .form-outer-innerpop select {
    padding: 0.35rem 0.4rem; }
  .form-outer-innerpop .form7btn {
    width: 100%;
    display: block;
    text-align: center; }
    .form-outer-innerpop .form7btn input[type="submit"] {
      padding: 1.1em 3em;
      background: black;
      color: #fff;
      border: none; }

.inqbox {
  background: linear-gradient(-90deg, #00907f, #00ae44) fixed; }
  .inqbox-inner {
    text-align: center;
    color: #fff; }
    .inqbox-inner-title {
      letter-spacing: 0.2em;
      font-size: 1.1rem;
      line-height: 1.4545454545;
      margin-bottom: 1.2em;
      font-weight: bold; }
      @media (min-width: 30em) {
        .inqbox-inner-title {
          font-size: 1.6rem;
          line-height: 1.3125; } }
      @media (min-width: 48em) {
        .inqbox-inner-title {
          margin-bottom: 1em;
          font-size: 1.4rem; } }
    .inqbox-inner-info {
      font-size: 2.2rem;
      letter-spacing: 0.1em;
      line-height: 1.3em; }
      @media (min-width: 30em) {
        .inqbox-inner-info {
          font-size: 3rem; } }
      @media (min-width: 48em) {
        .inqbox-inner-info {
          font-size: 1.5rem;
          font-weight: normal; } }
      .inqbox-inner-info a {
        color: #fff; }

.inqbox2 {
  background: linear-gradient(-90deg, #00907f, #00ae44) fixed;
  padding: 1.6rem 1rem 0.6rem 1rem; }
  .inqbox2-inner {
    text-align: center;
    color: #fff; }
    .inqbox2-inner-title {
      font-size: 1.5rem;
      line-height: 1.3333333333;
      letter-spacing: 0.2em;
      margin-bottom: 1em; }
      @media (min-width: 48em) {
        .inqbox2-inner-title {
          font-size: 0.75rem;
          font-weight: bold; } }

/*.boxr {
  display: block;
  text-align: right;
  margin: 1rem 0;
  a {
    color: $bluetwo;
  }
}*/
.boxr {
  display: block;
  width: 100%;
  margin: -3.7rem 0 1rem 0;
  text-align: center;
  background: #60d1da;
  border-top: 1px solid #96e8ef;
  font-size: 1.2rem; }
  @media (min-width: 30em) {
    .boxr {
      font-size: 1.6rem; } }
  @media (min-width: 48em) {
    .boxr {
      font-size: 0.9rem;
      margin: -1.9rem 0 1rem 0; } }
  .boxr a {
    text-decoration: none;
    color: #fff;
    display: inline-block;
    width: auto;
    padding: 0.5em;
    font-weight: bold; }

.not404 {
  display: block;
  height: 50vh;
  text-align: center; }
  .not404 h1 {
    width: 100%;
    display: block;
    padding-top: 20vh;
    font-size: 2.6rem;
    line-height: 1.1923076923;
    letter-spacing: 0.2em; }
    @media (min-width: 48em) {
      .not404 h1 {
        font-size: 2rem;
        font-weight: bold; } }
  .not404 p {
    display: block;
    font-size: 1.4rem;
    line-height: 1.3571428571;
    letter-spacing: 0.2em; }
    @media (min-width: 48em) {
      .not404 p {
        font-size: 1rem; } }

.coming {
  display: block;
  text-align: center; }
  .coming .comingsoon {
    color: #9c9c9c;
    width: 100%;
    display: block;
    padding: 1rem 0 3rem 0;
    font-size: 2.6rem;
    line-height: 1.1923076923;
    letter-spacing: 0.2em; }
    @media (min-width: 48em) {
      .coming .comingsoon {
        font-size: 2rem;
        font-weight: bold; } }

.pagination {
  display: block;
  text-align: center; }
  .pagination .nav-links {
    text-align: center;
    margin: 1rem auto 1rem auto; }
    .pagination .nav-links .page-numbers {
      text-decoration: none;
      display: inline-block;
      line-height: 36px;
      min-width: 36px;
      text-align: center;
      background: #fff;
      color: #484848;
      border: 1px solid #484848;
      font-size: 1rem; }
      @media (min-width: 48em) {
        .pagination .nav-links .page-numbers {
          line-height: 44px;
          min-width: 44px;
          font-size: 0.7rem; } }
      .pagination .nav-links .page-numbers.current {
        background: black;
        color: #fff;
        border: 1px solid black; }

.pagebox-inner, .newsbox-inner {
  float: none;
  margin: 3rem auto 3rem auto;
  padding-bottom: 0; }
  @media (min-width: 48em) {
    .pagebox-inner, .newsbox-inner {
      margin: 0rem auto 4.5rem auto; } }

.laboboxcom {
  display: block;
  width: 100%;
  padding: 0; }
  @media (min-width: 48em) {
    .laboboxcom {
      display: table; } }
  .laboboxcom-list {
    display: flex;
    justify-content: center;
    flex-flow: wrap;
    border-top: 1px solid #fff;
    margin: 0 0 25px 0;
    padding: 0;
    background: #fff;
    text-align: center; }
    @media (min-width: 62em) {
      .laboboxcom-list {
        margin: 0 0 50px 0; } }
    .laboboxcom-list li {
      border: 1px solid #fff;
      border-right: none;
      border-top: none;
      padding: 0;
      list-style: none;
      display: block;
      width: 50%; }
      @media (min-width: 48em) {
        .laboboxcom-list li {
          width: 33.333%; } }
      .laboboxcom-list li a {
        text-decoration: none;
        display: block;
        color: #fff;
        background: black;
        line-height: 2.7em;
        padding: 0 0.4em;
        text-align: left;
        font-size: 1.6rem; }
        @media (min-width: 48em) {
          .laboboxcom-list li a {
            text-align: center;
            font-size: 0.8rem; } }
      .laboboxcom-list li:nth-child(2n) {
        border-right: 1px solid #fff; }
        @media (min-width: 48em) {
          .laboboxcom-list li:nth-child(2n) {
            border-right: none; } }
      .laboboxcom-list li:nth-child(3n) {
        border-right: none; }
        @media (min-width: 48em) {
          .laboboxcom-list li:nth-child(3n) {
            border-right: 1px solid #fff; } }
      .laboboxcom-list li:nth-child(6n) {
        border-right: 1px solid #fff; }

.FAQ {
  margin-top: 1em; }

.FAQ dt:before {
  content: "Q. ";
  color: #00d4be;
  font-weight: bold; }

.FAQ dt {
  font-weight: bold;
  margin-bottom: 0.8em; }

.career ul {
  margin-left: 1.2em; }

.career ul li {
  list-style: circle; }

.FAQ dd {
  margin-bottom: 1.4em; }

.st {
  font-size: 24px;
  margin-top: 1em; }

.jc-left {
  justify-content: left !important; }

.single-application .txtp table tr td {
  background: none; }

.reason4 {
  font-size: 18px;
  line-height: 2em; }

.r_navi {
  margin: 0;
  padding: 40px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  @media (min-width: 48em) {
    .r_navi {
      padding: 80px 0; } }
  .r_navi li {
    list-style: none;
    display: block;
    width: 100%;
    margin-bottom: 10%; }
    @media (min-width: 48em) {
      .r_navi li {
        margin-bottom: 5%;
        width: 47.5%; } }
    .r_navi li a {
      position: relative;
      padding: 4%;
      background: #ddd;
      display: block;
      text-decoration: none !important; }
      @media (min-width: 48em) {
        .r_navi li a {
          padding: 5%; } }
      @media (min-width: 84.375em) {
        .r_navi li a {
          padding: 45px; } }
      .r_navi li a .r_num {
        position: absolute;
        top: -20px;
        left: 2.5%;
        font-size: 40px;
        font-style: italic;
        font-weight: bold; }
        @media (min-width: 48em) {
          .r_navi li a .r_num {
            left: 25px;
            font-size: 50px; } }
      .r_navi li a .r_copy {
        position: relative;
        padding-left: 0;
        font-style: italic;
        color: #fff;
        font-weight: bold;
        margin-bottom: 0.5em;
        font-size: 18px; }
        @media (min-width: 48em) {
          .r_navi li a .r_copy {
            font-size: 1.44vw; } }
        @media (min-width: 84.375em) {
          .r_navi li a .r_copy {
            font-size: 20px; } }
      .r_navi li a .r_title {
        position: relative;
        padding: 0 0.2em;
        color: #fff;
        text-decoration: none;
        font-size: 24px;
        font-weight: bold;
        background: #000;
        display: inline-block;
        margin: 0; }
        @media (min-width: 48em) {
          .r_navi li a .r_title {
            font-size: 2.5vw; } }
        @media (min-width: 84.375em) {
          .r_navi li a .r_title {
            font-size: 34px; } }
      .r_navi li a .r_arrow {
        position: absolute;
        bottom: 7px;
        right: 7px;
        color: #fff;
        font-weight: bold;
        font-size: 20px; }
        @media (min-width: 48em) {
          .r_navi li a .r_arrow {
            bottom: 15px;
            right: 10px; } }
    .r_navi li:nth-child(1) a {
      background: url("ph/r4_1.jpg");
      background-size: cover !important;
      background-position: center center !important;
      background-repeat: no-repeat !important; }
    .r_navi li:nth-child(2) a {
      background: url("ph/r4_2.jpg");
      background-size: cover !important;
      background-position: center center !important;
      background-repeat: no-repeat !important; }
    .r_navi li:nth-child(3) a {
      background: url("ph/r4_3.jpg");
      background-size: cover !important;
      background-position: center center !important;
      background-repeat: no-repeat !important; }
    .r_navi li:nth-child(4) a {
      background: url("ph/r4_4.jpg");
      background-size: cover !important;
      background-position: center center !important;
      background-repeat: no-repeat !important; }

.r_box {
  padding: 0 0 75px 0; }
  @media (min-width: 48em) {
    .r_box {
      padding: 0 0 75px 0; } }
  .r_box .rn1 {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding-bottom: 0; }
    @media (min-width: 48em) {
      .r_box .rn1 {
        padding-bottom: 30px; } }
    .r_box .rn1 span {
      display: block;
      width: 60px;
      line-height: 60px;
      text-align: center;
      color: #fff;
      font-style: italic;
      font-weight: bold;
      font-size: 24px; }
      @media (min-width: 48em) {
        .r_box .rn1 span {
          font-size: 30px;
          width: 80px;
          line-height: 80px; } }
    .r_box .rn1 p {
      display: block;
      width: calc(100% - 60px);
      margin: 5px 0;
      line-height: 50px;
      color: #fff;
      font-weight: bold;
      font-size: 20px;
      padding: 0 15px;
      background: #212121; }
      @media (min-width: 48em) {
        .r_box .rn1 p {
          padding: 0 30px;
          width: calc(100% - 80px);
          font-size: 28px;
          line-height: 60px; } }

#r_n_1 .rn1 span {
  background: #ed2f48; }

#r_n_2 .rn1 span {
  background: #fa795b; }

#r_n_3 .rn1 span {
  background: #24d069; }

#r_n_4 .rn1 span {
  background: #ad62e0; }

.r_box_in {
  padding: 0 10px; }
  @media (min-width: 48em) {
    .r_box_in {
      padding: 0 64px; } }
  .r_box_in .r_box_b {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center; }
    .r_box_in .r_box_b .r_box_half {
      display: block;
      width: 100%; }
      @media (min-width: 48em) {
        .r_box_in .r_box_b .r_box_half {
          width: 48%; } }

.figurebox {
  display: block;
  width: 100%;
  background: #ebebeb;
  display: block;
  text-align: center;
  padding: 20px;
  margin-top: 6%; }
  @media (min-width: 48em) {
    .figurebox {
      padding: 35px; } }

.fig4 {
  display: flex;
  flex-wrap: wrap; }
  .fig4 figure {
    display: block;
    width: 100%;
    padding: 0 0% 6% 0%;
    text-align: center; }
    @media (min-width: 48em) {
      .fig4 figure {
        padding: 0 1.5% 3% 1.5%;
        width: 50%; } }

figcaption {
  padding-top: 0.5em;
  font-size: 14px;
  line-height: 1.4em; }

a.greenlink {
  color: #05c9b0;
  font-weight: bold;
  text-decoration: none; }

.awardsbox {
  background: url("ph/bg_aw.jpg") 0% 0%/cover;
  position: relative;
  padding: 50px 0 50px 0; }
  @media (min-width: 48em) {
    .awardsbox {
      padding: 130px 0 150px 0; } }
  .awardsbox .container {
    text-align: center; }
    .awardsbox .container .awards-outer {
      display: inline-block;
      text-align: left;
      padding: 0 15px; }
      @media (min-width: 48em) {
        .awardsbox .container .awards-outer {
          padding: 0; } }
      .awardsbox .container .awards-outer .awards-list {
        padding: 10px 0; }
        @media (min-width: 48em) {
          .awardsbox .container .awards-outer .awards-list {
            padding: 25px 0; } }
        .awardsbox .container .awards-outer .awards-list a {
          display: flex;
          align-items: center;
          flex-wrap: nowrap;
          color: #fff;
          text-decoration: none; }
          .awardsbox .container .awards-outer .awards-list a figure {
            display: block;
            width: 110px; }
            @media (min-width: 48em) {
              .awardsbox .container .awards-outer .awards-list a figure {
                width: 147px; } }
            .awardsbox .container .awards-outer .awards-list a figure img {
              width: 110px;
              height: auto; }
              @media (min-width: 48em) {
                .awardsbox .container .awards-outer .awards-list a figure img {
                  width: 147px; } }
          .awardsbox .container .awards-outer .awards-list a p {
            font-family: 'Noto Serif JP', serif;
            line-height: 1.2em;
            padding-left: 15px;
            display: block;
            width: calc(100% - 110px);
            font-size: 1.8rem;
            margin-bottom: 0; }
            @media (min-width: 48em) {
              .awardsbox .container .awards-outer .awards-list a p {
                width: calc(100% - 147px);
                padding-left: 25px;
                font-size: 1.5rem; } }
            .awardsbox .container .awards-outer .awards-list a p span {
              display: block;
              line-height: 1.6em;
              margin-bottom: 1em;
              font-size: 1rem; }
              @media (min-width: 48em) {
                .awardsbox .container .awards-outer .awards-list a p span {
                  font-size: 0.7rem; } }

.headlinglp-a {
  display: block;
  width: 100%;
  text-align: center; }
  .headlinglp-a span {
    position: relative;
    font-family: 'Lato', sans-serif;
    color: #c7be9a;
    font-weight: 700;
    line-height: 1.1666666667;
    font-size: 3rem; }
    @media (min-width: 48em) {
      .headlinglp-a span {
        line-height: 1.0892857143;
        font-size: 2.8rem; } }
    @media (min-width: 55.5625em) {
      .headlinglp-a span {
        line-height: 1.078125;
        font-size: 3.2rem; } }
    .headlinglp-a span:before {
      position: absolute;
      top: 0;
      left: -64px;
      content: "";
      display: block;
      width: 54px;
      height: 86px;
      background: url("ph/leef.png") no-repeat center center;
      background-size: contain; }
      @media (min-width: 30em) {
        .headlinglp-a span:before {
          height: 62px; } }
      @media (min-width: 48em) {
        .headlinglp-a span:before {
          height: 100px; } }
    .headlinglp-a span:after {
      position: absolute;
      top: 0;
      right: -84px;
      content: "";
      display: block;
      width: 54px;
      height: 86px;
      background: url("ph/leef2.png") no-repeat center center;
      background-size: contain; }
      @media (min-width: 30em) {
        .headlinglp-a span:after {
          height: 62px; } }
      @media (min-width: 48em) {
        .headlinglp-a span:after {
          height: 100px; } }
  .headlinglp-a h3 {
    font-family: 'Noto Serif JP', serif;
    color: #c7be9a;
    font-weight: normal;
    margin-bottom: 25px;
    line-height: 1.2777777778;
    font-size: 0.9rem; }
    @media (min-width: 48em) {
      .headlinglp-a h3 {
        margin-bottom: 75px;
        line-height: 1.2083333333;
        font-size: 1.2rem; } }

.nolinkk {
  cursor: inherit; }
  .nolinkk:hover {
    opacity: 1; }

.main-slider {
  position: relative;
  background-color: #fff; }
  @media (min-width: 62em) {
    .main-slider {
      margin: 0 0 1.2rem 0; } }
  .main-slider .slider-main {
    margin: 0;
    padding: 0; }
    @media (min-width: 62em) {
      .main-slider .slider-main li {
        position: relative; } }
    .main-slider .slider-main .slick-dots {
      position: relative;
      padding: 10px 0;
      bottom: 0; }
      @media (min-width: 62em) {
        .main-slider .slider-main .slick-dots {
          position: relative; } }
      .main-slider .slider-main .slick-dots li button:before {
        background-color: rgba(204, 204, 204, 0.8); }
      .main-slider .slider-main .slick-dots li.slick-active button:before {
        background-color: rgba(0, 166, 60, 0.8); }
    .main-slider .slider-main-button {
      color: #fff; }
      .main-slider .slider-main-button span {
        position: absolute;
        cursor: pointer;
        font-size: 70px;
        z-index: 500; }
      .main-slider .slider-main-button .main-next-button {
        right: 1.0rem;
        top: calc(50% - 57px); }
        @media (min-width: 48em) {
          .main-slider .slider-main-button .main-next-button {
            top: calc(50% - 57px); } }
        .main-slider .slider-main-button .main-next-button:hover {
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out;
          opacity: 0.60; }
      .main-slider .slider-main-button .main-prev-button {
        left: 1.0rem;
        top: calc(50% - 57px); }
        @media (min-width: 48em) {
          .main-slider .slider-main-button .main-prev-button {
            top: calc(50% - 57px); } }
        .main-slider .slider-main-button .main-prev-button:hover {
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out;
          opacity: 0.60; }
    .main-slider .slider-main .link {
      background-size: cover !important;
      background-position: center center !important;
      background-repeat: no-repeat !important;
      display: block;
      min-height: 30vh; }
      @media (min-width: 48em) {
        .main-slider .slider-main .link {
          min-height: 50vh; } }
      @media (min-width: 62em) {
        .main-slider .slider-main .link {
          min-height: 60vh; } }

/*トップスライド　youtube*/
.movie-slide {
  display: block;
  min-height: 100%;
  max-width: 100%;
  position: relative; }

.movie-slide iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%; }

.movie-link {
  position: absolute;
  bottom: 0;
  right: 0;
  background: #60d1da;
  z-index: 99999;
  padding: 5px 10px; }
  @media (min-width: 55.5625em) {
    .movie-link {
      right: calc(50% - 445px); } }

.movie-link a {
  color: #fff; }

/*slider*/
.main-slider {
  display: block;
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  background: #000;
  background: #000;
  margin-bottom: 40px; }
  @media (min-width: 55.5625em) {
    .main-slider {
      margin-bottom: 60px;
      padding-top: 500px; } }

.main-slider .slider-main {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important; }

.slick-slide {
  position: static; }

.slick-slide img {
  display: block;
  margin: 0 auto;
  width: 100%;
  height: auto; }
  @media (min-width: 55.5625em) {
    .slick-slide img {
      width: auto;
      height: 500px; } }

.movie-slide {
  display: block;
  position: relative;
  width: 100%;
  padding-bottom: 0 !important; }
  @media (min-width: 55.5625em) {
    .movie-slide {
      height: 500px;
      width: 889px; } }

/* Chrome  */
.movie-slide iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important; }
  @media (min-width: 55.5625em) {
    .movie-slide iframe {
      left: calc(50% - 445px);
      width: 889px !important;
      height: 500px !important;
      margin: 0 auto !important; } }

.pannel {
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity = 0);
  filter: alpha(opacity = 0);
  opacity: 0;
  -webkit-transition: 0.2s ease-in-out;
  -moz-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
  display: block;
  background-color: rgba(0, 0, 0, 0.8);
  position: fixed;
  bottom: -80px;
  left: 0;
  right: 0;
  padding: 11px 7px;
  z-index: 800;
  color: #fff; }
  @media (min-width: 48em) {
    .pannel {
      text-align: center;
      bottom: -100px;
      padding: 23px; } }
  .pannel.visible {
    bottom: 0;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity = 100);
    filter: alpha(opacity = 100);
    opacity: 1; }
  .pannel-btn {
    position: relative;
    display: inline-block;
    line-height: 44px;
    width: 130px;
    padding-left: 7px;
    padding-right: 7px;
    color: #fff;
    margin: 0 3px;
    text-decoration: none;
    text-align: right;
    -webkit-box-shadow: 1px 1px 1px white;
    -moz-box-shadow: 1px 1px 1px white;
    box-shadow: 1px 1px 1px white;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    font-size: 1rem; }
    @media (min-width: 48em) {
      .pannel-btn {
        text-align: center;
        letter-spacing: 0.05em;
        margin: 0 7px;
        margin: 0 10px;
        width: 260px;
        font-size: 0.7rem; } }
    .pannel-btn i {
      position: absolute;
      left: 7px;
      top: 15px;
      font-size: 1.4rem; }
      @media (min-width: 48em) {
        .pannel-btn i {
          left: 15px;
          top: 15px;
          font-size: 0.7rem; } }
  .pannel .p-pdf {
    background: #e92f2f; }
  .pannel .p-inq {
    background: #00a63c; }
  .pannel-rireki {
    position: relative;
    margin-left: 12px;
    width: 40px;
    line-height: 40px;
    display: inline-block; }
    @media (min-width: 48em) {
      .pannel-rireki {
        margin-left: 15px;
        width: 54px;
        line-height: 54px; } }
    .pannel-rireki i {
      position: absolute;
      top: -25px;
      left: 0;
      font-size: 2.6rem;
      color: #fff; }
      @media (min-width: 48em) {
        .pannel-rireki i {
          font-size: 1.7rem; } }
    .pannel-rireki-number {
      color: #fff;
      position: absolute;
      top: -30px;
      right: 10px;
      display: block;
      width: 16px;
      line-height: 16px;
      background: #e92f2f;
      text-align: center;
      font-size: 0.6rem;
      -webkit-border-radius: 11px;
      -moz-border-radius: 11px;
      border-radius: 11px; }
      @media (min-width: 48em) {
        .pannel-rireki-number {
          top: -35px;
          right: 19px;
          width: 22px;
          line-height: 22px;
          font-size: 0.5rem; } }
    .pannel-rireki-txt {
      display: block;
      position: absolute;
      bottom: -30px;
      left: -5px;
      font-size: 0.8rem;
      -webkit-border-radius: 9px;
      -moz-border-radius: 9px;
      border-radius: 9px;
      color: #fff; }
      @media (min-width: 48em) {
        .pannel-rireki-txt {
          bottom: -43px;
          left: -5px;
          font-size: 0.5rem; } }

.productPic {
  position: relative;
  max-width: 600px;
  margin: 0 auto;
  padding: 0 1em; }
  @media (min-width: 62em) {
    .productPic {
      max-width: 100%;
      padding: 0 1em 0 0; } }
  .productPic #navi {
    position: relative;
    min-height: 1px; }
  .productPic #photo {
    width: 100%;
    background: #fff;
    position: relative;
    min-height: 1px;
    padding-left: 0;
    padding-right: 0;
    padding-top: 100%;
    margin-bottom: 1rem; }
    .productPic #photo span {
      position: absolute;
      display: table;
      table-layout: fixed;
      width: 100%;
      height: 100%;
      top: 0; }
      .productPic #photo span a {
        display: table-cell;
        vertical-align: middle;
        text-align: center;
        width: 100%;
        height: 100%;
        position: relative; }
        .productPic #photo span a img {
          position: absolute;
          top: 0;
          bottom: 0;
          left: 0;
          right: 0;
          margin: auto; }
  .productPic #navi {
    padding: 0 1em; }
    @media (min-width: 62em) {
      .productPic #navi {
        padding: 0px; } }
    .productPic #navi ul {
      margin: 0;
      padding: 0; }
      .productPic #navi ul li {
        width: 23%;
        padding-right: 2%;
        list-style: none;
        margin-bottom: 0.4rem;
        float: left; }
        .productPic #navi ul li span.outter {
          position: relative;
          display: block;
          width: 100%;
          padding-top: 100%;
          background: #fff;
          overflow: hidden; }
          .productPic #navi ul li span.outter span.inner {
            position: absolute;
            display: table;
            table-layout: fixed;
            width: 100%;
            height: 100%;
            top: 0; }
            .productPic #navi ul li span.outter span.inner a {
              display: table-cell;
              vertical-align: middle;
              text-align: center;
              width: 100%;
              height: 100%;
              top: 0;
              bottom: 0;
              left: 0;
              right: 0; }
              .productPic #navi ul li span.outter span.inner a img {
                height: auto;
                width: auto;
                max-width: 100% !important;
                max-height: 100% !important;
                min-width: auto !important;
                min-height: auto !important;
                margin: auto; }
  .productPic #photo {
    position: relative; }
    .productPic #photo i {
      position: absolute;
      bottom: 8px;
      right: 8px;
      -webkit-text-shadow: 0 0 4px white;
      -moz-text-shadow: 0 0 4px white;
      text-shadow: 0 0 4px white;
      font-size: 1.8rem; }
      @media (min-width: 48em) {
        .productPic #photo i {
          font-size: 0.9rem; } }

@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, .productPic #photo span a img {
    margin: 0; }

  /* IE11 */ }
.product .back-link {
  margin-bottom: 0.65em; }
  .product .back-link a {
    text-decoration: none;
    display: inline-block;
    padding: 0.175em 0.9em;
    margin-right: 0.5em;
    border: 1px solid #fff;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    color: #fff; }
  .product .back-link span {
    font-weight: bold;
    color: #fff;
    margin-left: 0.5em; }
.product .catch-copy {
  margin-bottom: 0.1em;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.1666666667; }
  @media (min-width: 48em) {
    .product .catch-copy {
      font-size: 1.8rem; } }
.product-title {
  font-size: 1.4rem;
  line-height: 1.3571428571;
  display: inline-block;
  color: #b7b7b7;
  padding-right: 0.5em;
  border-right: 1px solid #b7b7b7;
  margin-bottom: 0.2em;
  margin-right: 0.5em; }
  @media (min-width: 48em) {
    .product-title {
      font-size: 0.7rem; } }
.product-title-s {
  position: relative;
  font-size: 2.2rem;
  line-height: 1.2272727273;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.1em;
  color: #fff;
  margin: 0 0 30px 0; }
  @media (min-width: 48em) {
    .product-title-s {
      font-size: 1.8rem;
      margin-bottom: 45px; } }
  .product-title-s:after {
    position: absolute;
    display: block;
    content: "";
    height: 4px;
    background: #60d1da;
    width: 30px;
    bottom: -0.7em;
    left: calc(50% - 15px); }
    @media (min-width: 48em) {
      .product-title-s:after {
        width: 40px;
        bottom: -0.7em;
        left: calc(50% - 20px); } }
  .product-title-s span {
    font-family: 'Oswald', sans-serif;
    color: #828282;
    display: block;
    width: 100%;
    letter-spacing: 0.05em;
    padding-bottom: 1em;
    font-size: 0.8rem; }
    @media (min-width: 48em) {
      .product-title-s span {
        font-size: 0.5rem; } }
  .product-title-s i {
    color: #797979; }
  .product-title-s h1 {
    font-size: 2.2rem;
    line-height: 1.2272727273; }
    @media (min-width: 48em) {
      .product-title-s h1 {
        font-size: 1.8rem; } }
.product-maker {
  margin-bottom: 0.5em;
  display: inline-block;
  width: auto; }
  .product-maker a {
    color: #6be8ff;
    font-size: 1.4rem;
    line-height: 1.3571428571;
    display: inline-block;
    width: auto;
    margin-bottom: 0.2em; }
    @media (min-width: 48em) {
      .product-maker a {
        font-size: 0.7rem; } }
.product-ph {
  margin-bottom: 1.5rem; }
  .product-ph figure {
    padding-left: 0.25rem;
    padding-right: 0.25rem;
    padding-bottom: 1.5rem; }
  .product-ph .col-md-6 {
    padding-left: 0.25rem;
    padding-right: 0.25rem;
    padding-bottom: 0.25rem; }
    .product-ph .col-md-6 figure {
      padding-left: 0;
      padding-right: 0; }
  .product-ph figcaption {
    padding: 0.25rem 0.75rem;
    margin-left: -0.25rem;
    margin-right: -0.25rem;
    display: block;
    text-align: center; }
.product-feature {
  margin: 0 !important;
  padding: 0 !important; }
  .product-feature ul {
    padding: 0 0 0 0.75rem !important;
    margin: 0 !important; }
    .product-feature ul li {
      list-style: none;
      padding: 0.1rem 0; }
      .product-feature ul li:before {
        content: "\f058";
        display: inline-block;
        margin-right: 0.15rem;
        font: normal normal normal 14px/1 FontAwesome;
        font-size: inherit;
        text-rendering: auto;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
.product-app {
  margin: 0;
  padding: 0; }
  .product-app li {
    display: block;
    list-style: none;
    padding: 0.25rem 1.5%;
    width: 97%;
    float: left; }
    @media (min-width: 30em) {
      .product-app li {
        padding: 0.25rem 1.5%;
        width: 49.5%; } }
    .product-app li i {
      color: #00a63c; }
    .product-app li a {
      color: #2084e0; }
.product-table {
  border-collapse: collapse;
  margin-bottom: 2rem;
  width: 100%;
  text-align: left;
  display: inline-block;
  position: relative;
  overflow-x: auto;
  white-space: nowrap; }
  @media (min-width: 48em) {
    .product-table {
      width: 100%;
      display: table; } }
  .product-table caption {
    font-weight: bold;
    text-align: left;
    font-size: 1.4rem;
    margin-bottom: 0.6em;
    color: black; }
    @media (min-width: 48em) {
      .product-table caption {
        font-size: 0.7rem; } }
  .product-table th, .product-table td {
    padding: 0.5rem; }
  .product-table th {
    width: 35%;
    font-weight: bold; }
.product .ver1 {
  display: block;
  width: 100%;
  table-layout: fixed; }
  .product .ver1 tr {
    border: 1px solid #d1d1d1; }
    .product .ver1 tr:nth-child(odd) {
      background: #ebebeb; }
    .product .ver1 tr.p-1064nm-tr {
      background: #e4b3b3;
      font-weight: bold;
      color: #b10000; }
    .product .ver1 tr.p-671nm-tr, .product .ver1 tr.p-660nm-tr {
      background: #ffb1b1;
      font-weight: bold;
      color: #e92f2f; }
    .product .ver1 tr.p-561nm-tr {
      background: #fff5da;
      font-weight: bold;
      color: #f8b500; }
    .product .ver1 tr.p-532nm-tr, .product .ver1 tr.p-527nm-tr {
      background: #c2f1d3;
      font-weight: bold;
      color: #00a63c; }
    .product .ver1 tr.p-473nm-tr {
      background: #c3e2ff;
      font-weight: bold;
      color: #2084e0; }
    .product .ver1 tr.p-266nm-tr, .product .ver1 tr.p-213nm-tr, .product .ver1 tr.p-263nm-tr {
      background: #e5cff3;
      font-weight: bold;
      color: #a863d3; }
    .product .ver1 tr th {
      border: 1px solid #9c9c9c;
      width: auto; }
    .product .ver1 tr td {
      border: 1px solid #9c9c9c;
      width: 100%; }
.product .ver2, .product .ver3 {
  display: none;
  table-layout: fixed;
  border: 2px solid #272727; }
  .product .ver2 tr.p-now-tr, .product .ver3 tr.p-now-tr {
    background: #e2e2e2; }
    .product .ver2 tr.p-now-tr td, .product .ver2 tr.p-now-tr th, .product .ver3 tr.p-now-tr td, .product .ver3 tr.p-now-tr th {
      font-weight: bold;
      background: #fff; }
  .product .ver2 tr th, .product .ver2 tr td, .product .ver3 tr th, .product .ver3 tr td {
    border: 1px solid #9c9c9c;
    background: #fff;
    white-space: normal; }
  .product .ver2 tr th, .product .ver3 tr th {
    background: #272727;
    color: #fff;
    text-align: center;
    white-space: nowrap; }
  .product .ver2 tr td a, .product .ver3 tr td a {
    color: #2084e0; }
  .product .ver2 tr td.p-1064nm-td, .product .ver3 tr td.p-1064nm-td {
    background: #e4b3b3;
    font-weight: bold;
    color: #b10000; }
  .product .ver2 tr td.p-671nm-td, .product .ver2 tr td.p-660nm-td, .product .ver3 tr td.p-671nm-td, .product .ver3 tr td.p-660nm-td {
    background: #ffb1b1;
    font-weight: bold;
    color: #e92f2f; }
  .product .ver2 tr td.p-561nm-td, .product .ver3 tr td.p-561nm-td {
    background: #fff5da;
    font-weight: bold;
    color: #f8b500; }
  .product .ver2 tr td.p-532nm-td, .product .ver2 tr td.p-527nm-td, .product .ver3 tr td.p-532nm-td, .product .ver3 tr td.p-527nm-td {
    background: #c2f1d3;
    font-weight: bold;
    color: #00a63c; }
  .product .ver2 tr td.p-473nm-td, .product .ver2 tr td.p-351nm-td, .product .ver2 tr td.p-355nm-td, .product .ver3 tr td.p-473nm-td, .product .ver3 tr td.p-351nm-td, .product .ver3 tr td.p-355nm-td {
    background: #c3e2ff;
    font-weight: bold;
    color: #2084e0; }
  .product .ver2 tr td.p-266nm-td, .product .ver2 tr td.p-213nm-td, .product .ver2 tr td.p-263nm-td, .product .ver3 tr td.p-266nm-td, .product .ver3 tr td.p-213nm-td, .product .ver3 tr td.p-263nm-td {
    background: #e5cff3;
    font-weight: bold;
    color: #a863d3; }
.product .ver3 {
  display: block;
  border: none; }
  .product .ver3 tr th {
    white-space: nowrap; }
    .product .ver3 tr th:first-child {
      width: 1%; }
  .product .ver3 tr td:first-child {
    white-space: nowrap !important;
    width: 1%; }
  .product .ver3 tr td a {
    text-decoration: underline; }
.product-paper {
  margin: 0;
  padding: 0 !important; }
  .product-paper li {
    list-style: none;
    width: 25%;
    padding: 0 1em;
    text-align: center;
    float: left; }
    @media (min-width: 48em) {
      .product-paper li {
        width: 16.6666%; } }
    .product-paper li a {
      color: #2084e0;
      display: block;
      width: 100%;
      padding: 0.25rem 0 !important; }
      .product-paper li a i {
        color: #e92f2f;
        font-size: 7rem;
        margin: 0.07em; }
        @media (min-width: 48em) {
          .product-paper li a i {
            font-size: 3.5rem; } }
.product-head {
  color: #fff;
  /*background: #104c83 url(ph/stbg.jpg)*/
  background-color: #104c83;
  background-image: url(ph/stbg.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-blend-mode: overlay;
  background-size: cover;
  padding-top: 50px; }
  .product-head .txtp {
    background-color: rgba(0, 0, 0, 0.75);
    padding: 0.3em 1em !important;
    margin-bottom: 2.6em !important; }
  .product-head .txtp2 {
    background-color: white;
    padding: 2em !important;
    color: #444; }
  .product-head:after {
    display: block;
    content: "";
    width: 100%;
    height: 30px;
    background: url(ph/arrowbg.png) no-repeat center top; }
.product-body {
  background: #e5ebeb;
  padding: 1em 0 3em 0;
  margin-bottom: 4em; }
  @media (min-width: 48em) {
    .product-body .container {
      background: url("ph/logo-op.png") no-repeat;
      background-position: 100% 97%; } }

.btnp {
  margin: 1em 0; }
  .btnp-btn {
    text-decoration: none;
    font-weight: bold;
    position: relative;
    display: inline-block;
    line-height: 30px;
    width: 178px;
    color: black;
    background: #fff;
    text-align: center;
    margin: 0 4px 5px 0;
    border: 1px solid black;
    -webkit-box-shadow: 1px 1px 1px black;
    -moz-box-shadow: 1px 1px 1px black;
    box-shadow: 1px 1px 1px black;
    font-size: 1.4rem;
    letter-spacing: 0; }
    @media (min-width: 48em) {
      .btnp-btn {
        font-size: 0.7rem; } }
    .btnp-btn i {
      position: absolute;
      left: 5px;
      top: 10px; }
      .btnp-btn i.fa-file-pdf-o {
        color: #e92f2f; }
      .btnp-btn i.fa-envelope {
        color: #00a63c; }
    .btnp-btn.contact {
      margin: 0 0 5px 0; }

.btnc {
  margin: 0.2em 0 1.2em 0;
  text-align: center; }
  .btnc-btn {
    text-decoration: none;
    font-weight: bold;
    position: relative;
    display: inline-block;
    line-height: 34px;
    color: #fff;
    text-align: center;
    margin: 0 2px 2px 0;
    padding-left: 2rem;
    padding-right: 1rem;
    border: 1px solid black;
    background: black;
    font-size: 1.6rem;
    letter-spacing: 0.05em; }
    @media (min-width: 48em) {
      .btnc-btn {
        padding-left: 1.6rem;
        padding-right: 0.5rem;
        margin: 0 4px 4px 0;
        line-height: 40px;
        font-size: 0.9rem; } }
    .btnc-btn i {
      position: absolute;
      left: 8px;
      top: 12px; }
      @media (min-width: 48em) {
        .btnc-btn i {
          left: 10px;
          top: 14px; } }
    .btnc-btn.w-1064nm {
      color: #fff;
      border: 1px solid #b10000;
      background: #b10000; }
    .btnc-btn.w-671nm, .btnc-btn.w-660nm {
      color: #fff;
      border: 1px solid #e92f2f;
      background: #e92f2f; }
    .btnc-btn.w-561nm {
      color: #fff;
      border: 1px solid #f8b500;
      background: #f8b500; }
    .btnc-btn.w-532nm, .btnc-btn.w-527nm {
      color: #fff;
      border: 1px solid #00a63c;
      background: #00a63c; }
    .btnc-btn.w-473nm {
      color: #fff;
      border: 1px solid #2084e0;
      background: #2084e0; }
    .btnc-btn.w-355nm {
      color: #fff;
      border: 1px solid #2084e0;
      background: #2084e0; }
    .btnc-btn.w-266nm, .btnc-btn.w-263nm, .btnc-btn.w-213nm {
      color: #fff;
      border: 1px solid #a863d3;
      background: #a863d3; }
    .btnc-btn.p-low {
      color: #fff;
      border: 1px solid #f98700;
      background: #f98700; }
    .btnc-btn.p-high {
      color: #fff;
      border: 1px solid #f98700;
      background: #f98700; }

.zoom-in {
  display: block; }

.fixItem .col-md-2.laboboxp-item2 {
  position: static; }

.fixItem {
  margin: 0 -0.75rem;
  position: relative; }

.laboboxp {
  background: #e5ebeb;
  overflow: visible; }
  .laboboxp-item {
    float: none; }
    .laboboxp-item img {
      width: 100%; }
    .laboboxp-item a {
      position: relative;
      display: block;
      text-align: center; }
      .laboboxp-item a img {
        width: 100%; }
      .laboboxp-item a p {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        display: block;
        width: 100%;
        background-color: rgba(0, 0, 0, 0.7);
        color: #fff;
        margin: 0;
        padding: 0.3rem;
        font-size: 1rem; }
        @media (min-width: 48em) {
          .laboboxp-item a p {
            font-size: 0.7rem; } }
  .laboboxp-item2 {
    float: none;
    padding-bottom: 0.75rem;
    padding-top: 0.75rem;
    display: flex;
    margin: 0 0 1.2rem 0; }
    @media (min-width: 62em) {
      .laboboxp-item2 {
        background: #fff;
        border-top: 1px solid #e2e2e2;
        border-left: 1px solid #e2e2e2;
        border-bottom: 1px solid #e2e2e2;
        border-right: 1px solid #e2e2e2;
        margin: 0 0.75% 1.9rem 0.75%; } }
    .laboboxp-item2 img {
      width: 100%; }
    .laboboxp-item2-txt {
      line-height: 1.2em;
      margin: 0.3rem 0;
      font-weight: bold;
      font-size: 1.6rem; }
      @media (min-width: 48em) {
        .laboboxp-item2-txt {
          font-size: 0.9rem; } }
    .laboboxp-item2-title {
      line-height: 1.2em;
      margin: 0 0 0.3rem 0;
      font-size: 1.6rem;
      font-weight: bold; }
      @media (min-width: 48em) {
        .laboboxp-item2-title {
          font-size: 0.8rem; } }
      .laboboxp-item2-title a {
        color: #2084e0; }
    .laboboxp-item2 .infobtn {
      display: none; }
      @media (min-width: 62em) {
        .laboboxp-item2 .infobtn {
          display: block; } }
    .laboboxp-item2-btn {
      text-decoration: none;
      cursor: pointer;
      border: 1px solid black;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      background: black;
      color: #fff;
      display: block;
      text-align: center;
      font-size: 1.4rem;
      font-weight: bold;
      padding: 0.35rem;
      margin: 0.5rem 0 0 0; }
      @media (min-width: 48em) {
        .laboboxp-item2-btn {
          font-size: 0.7rem; } }
      .laboboxp-item2-btn:hover {
        -webkit-transition: 0.2s ease-in-out;
        -moz-transition: 0.2s ease-in-out;
        transition: 0.2s ease-in-out;
        -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity = 100);
        filter: alpha(opacity = 100);
        opacity: 1;
        background: #fff;
        color: black;
        opacity: 1; }
      .laboboxp-item2-btn:before {
        content: "";
        display: block;
        width: 100%;
        height: 14px;
        position: absolute;
        bottom: -15px;
        left: 0; }
      .laboboxp-item2-btn.onbtn:after {
        content: "";
        display: block;
        width: 10px;
        height: 16px;
        position: absolute;
        bottom: -15px;
        left: calc(50% - 5px);
        border-right: 10px solid transparent;
        border-bottom: 16px solid #272727;
        border-left: 10px solid transparent; }
    .laboboxp-item2 .lineup {
      position: absolute;
      left: 0;
      z-index: 50;
      margin-top: 14px;
      -webkit-box-shadow: 0 0 8px 3px rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0 0 8px 3px rgba(0, 0, 0, 0.1);
      box-shadow: 0 0 8px 3px rgba(0, 0, 0, 0.1);
      display: none; }
      .laboboxp-item2 .lineup tr td a {
        text-decoration: underline; }
  .laboboxp-outer {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; }
    .laboboxp-outer .col-md-2.laboboxp-item2 {
      display: inline-block;
      width: 50%; }
      @media (min-width: 30em) {
        .laboboxp-outer .col-md-2.laboboxp-item2 {
          width: 33.333%; } }
      @media (min-width: 48em) {
        .laboboxp-outer .col-md-2.laboboxp-item2 {
          width: 33.333%; } }
      @media (min-width: 62em) {
        .laboboxp-outer .col-md-2.laboboxp-item2 {
          width: 23.5%; } }
      @media (min-width: 64em) {
        .laboboxp-outer .col-md-2.laboboxp-item2 {
          width: 23.5%; } }
      @media (min-width: 68.75em) {
        .laboboxp-outer .col-md-2.laboboxp-item2 {
          width: 23.5%; } }
    .laboboxp-outer .col-md-3.laboboxp-item {
      display: inline-block;
      width: 50% !important; }
      @media (min-width: 30em) {
        .laboboxp-outer .col-md-3.laboboxp-item {
          width: 33.333% !important; } }
      @media (min-width: 48em) {
        .laboboxp-outer .col-md-3.laboboxp-item {
          width: 33.333% !important; } }
      @media (min-width: 62em) {
        .laboboxp-outer .col-md-3.laboboxp-item {
          width: 25% !important; } }
      @media (min-width: 64em) {
        .laboboxp-outer .col-md-3.laboboxp-item {
          width: 25% !important; } }

.searchitem.product.laboboxp-outer .laboboxp-item2 {
  float: left; }

.normal-table {
  table-layout: fixed;
  border: 1px solid #272727;
  margin: 50px 0;
  width: 100%;
  padding: 0; }
  .normal-table tr th, .normal-table tr td {
    border: 1px solid #d1d1d1;
    background: #fff;
    padding: 1rem;
    text-align: left;
    vertical-align: top; }
  .normal-table tr th {
    background: #272727;
    color: #fff; }
  .normal-table tr td a {
    color: #2084e0; }
  .normal-table tr td.headringheadring {
    text-align: center;
    font-weight: bold; }

.onbtn {
  background: black;
  color: #fff; }

.wp-caption {
  max-width: 100%; }

.lineupbox {
  display: none; }
  @media (min-width: 62em) {
    .lineupbox {
      display: block; } }

.evenodd-box:nth-child(odd) {
  background: #fafafa; }
.evenodd-box:nth-child(even) {
  background: #fff; }

.makerlogo {
  display: block;
  width: 100%;
  text-align: center;
  padding: 0 0 2em 0;
  margin-top: -1.5em; }

.productdetail {
  padding: 0; }
  .productdetail .makerlogo {
    padding: 0 0 2em 0;
    margin-top: 0; }
  .productdetail-l {
    display: block;
    width: 100%; }
    @media (min-width: 48em) {
      .productdetail-l {
        width: 20%;
        float: left; } }
  .productdetail-r {
    display: block;
    width: 100%; }
    @media (min-width: 48em) {
      .productdetail-r {
        width: 80%;
        float: left; } }
  .productdetail-des {
    padding: 2em 0; }
  .productdetail-app {
    padding: 2em 0; }
  .productdetail-cat {
    padding: 2em 0; }
  .productdetail-lineup {
    background: #253031;
    padding: 2em 0 0 0; }
  .productdetail-h2 {
    font-weight: normal;
    color: #b2c3c5;
    text-align: center;
    font-size: 1.2rem; }
    @media (min-width: 48em) {
      .productdetail-h2 {
        font-size: 0.6rem;
        text-align: left; } }
    .productdetail-h2 span {
      font-weight: 400;
      line-height: 1em;
      font-family: 'Oswald', sans-serif;
      font-size: 2.8rem;
      display: block;
      width: 100%; }
      @media (min-width: 48em) {
        .productdetail-h2 span {
          font-size: 1.4rem; } }
    .productdetail-h2 h2 {
      font-weight: normal;
      font-size: 1.2rem; }
      @media (min-width: 48em) {
        .productdetail-h2 h2 {
          font-size: 0.6rem; } }
  .productdetail-head {
    color: #fff;
    background: #287982 url(ph/slider2.jpg) no-repeat;
    background-blend-mode: overlay;
    background-size: cover;
    padding-top: 2em; }
    .productdetail-head .txtp {
      background-color: rgba(0, 0, 0, 0.75);
      padding: 1em !important;
      margin-bottom: 1em !important; }
    .productdetail-head .txtp2 {
      background-color: rgba(255, 255, 255, 0.9);
      padding: 2em !important;
      color: #444; }
  .productdetail-lineup {
    background: #253031; }
    .productdetail-lineup:after {
      display: block;
      content: "";
      width: 100%;
      height: 30px;
      background: url(ph/arrowbg2.png) no-repeat center top; }
  .productdetail-contact {
    padding-top: 10px !important; }
    .productdetail-contact-h4 {
      background: linear-gradient(-90deg, #00907f, #00ae44) fixed;
      display: block;
      width: 100%;
      color: #fff;
      font-weight: bold;
      text-align: center;
      margin-bottom: 0;
      font-size: 1.8rem;
      padding: 0.5em; }
      @media (min-width: 48em) {
        .productdetail-contact-h4 {
          font-size: 1.2rem; } }
    .productdetail-contact .wpcf7 {
      background: #ceeddd; }
      .productdetail-contact .wpcf7 .form-outer-inner {
        background: none;
        margin-bottom: 0;
        padding: 1.8rem 2.5rem; }
        @media (min-width: 48em) {
          .productdetail-contact .wpcf7 .form-outer-inner {
            padding: 2rem 8rem; } }

.laboboxp-outer-list .laboboxp-item3 {
  margin: 0 0 5rem 0;
  padding: 0;
  display: flex;
  flex-flow: wrap;
  justify-content: space-between; }
  @media (min-width: 30em) {
    .laboboxp-outer-list .laboboxp-item3 {
      margin: 0 0 3rem 0; } }
  @media (min-width: 48em) {
    .laboboxp-outer-list .laboboxp-item3 {
      margin: 0 0 0.75rem 0;
      padding: .75rem;
      background: #fff;
      border-top: 1px solid #e2e2e2;
      border-left: 1px solid #e2e2e2;
      border-bottom: 1px solid #e2e2e2;
      border-right: 1px solid #e2e2e2; } }
  .laboboxp-outer-list .laboboxp-item3 .spyou {
    display: block;
    width: 100%; }
    @media (min-width: 48em) {
      .laboboxp-outer-list .laboboxp-item3 .spyou {
        display: none; } }
    .laboboxp-outer-list .laboboxp-item3 .spyou.laboboxp-item2-btn {
      padding: 1rem; }
      @media (min-width: 48em) {
        .laboboxp-outer-list .laboboxp-item3 .spyou.laboboxp-item2-btn {
          padding: inherit; } }
  .laboboxp-outer-list .laboboxp-item3 .item3_foto {
    display: block;
    width: 100%;
    text-align: center;
    margin-bottom: 1em; }
    @media (min-width: 30em) {
      .laboboxp-outer-list .laboboxp-item3 .item3_foto {
        margin: 0;
        width: 40%; } }
    @media (min-width: 48em) {
      .laboboxp-outer-list .laboboxp-item3 .item3_foto {
        width: 25%; } }
    @media (min-width: 62em) {
      .laboboxp-outer-list .laboboxp-item3 .item3_foto {
        width: 250px; } }
    .laboboxp-outer-list .laboboxp-item3 .item3_foto img {
      width: 100%;
      height: auto; }
  .laboboxp-outer-list .laboboxp-item3 .lolinfo {
    display: block;
    width: 100%; }
    @media (min-width: 30em) {
      .laboboxp-outer-list .laboboxp-item3 .lolinfo {
        width: calc(100% - 40% - 2.5rem); } }
    @media (min-width: 48em) {
      .laboboxp-outer-list .laboboxp-item3 .lolinfo {
        width: calc(100% - 25% - 0.75rem); } }
    @media (min-width: 62em) {
      .laboboxp-outer-list .laboboxp-item3 .lolinfo {
        width: calc(100% - 250px - 0.75rem); } }
    .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_block {
      display: block; }
      @media (min-width: 48em) {
        .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_block {
          display: flex;
          justify-content: space-between;
          align-items: center; } }
      .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_block .lolinfo_info {
        display: block; }
        @media (min-width: 48em) {
          .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_block .lolinfo_info {
            width: calc(100% - 200px);
            padding-right: 0.75rem;
            border-right: 1px solid #e2e2e2; } }
        .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_block .lolinfo_info p {
          margin-bottom: 0; }
        .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_block .lolinfo_info .lolinfo_maker {
          margin: 0 0 0.5rem 0; }
          .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_block .lolinfo_info .lolinfo_maker a img {
            height: 30px;
            width: auto; }
        .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_block .lolinfo_info .lolinfo_title {
          line-height: 1.2em;
          margin: 0.15rem 0;
          font-weight: bold;
          font-size: 1.6rem; }
          @media (min-width: 48em) {
            .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_block .lolinfo_info .lolinfo_title {
              font-size: 0.9rem; } }
        .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_block .lolinfo_info .lolinfo_title2 {
          margin: 0.15rem 0; }
          .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_block .lolinfo_info .lolinfo_title2 a {
            margin: 0;
            font-weight: bold;
            color: #2084e0; }
      .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_block .lolinfo_btn {
        display: none; }
        @media (min-width: 48em) {
          .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_block .lolinfo_btn {
            width: 200px;
            padding: 0;
            display: block;
            padding: 0 0 0 0.75rem; } }
    .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_spec {
      display: block;
      width: 100%;
      word-break: keep-all; }
      @media (min-width: 48em) {
        .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_spec {
          overflow: hidden; } }
      .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_spec .lolinfo_spec_in {
        display: block;
        width: 100%; }
        @media (min-width: 48em) {
          .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_spec .lolinfo_spec_in {
            width: 300%; } }
        .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_spec .lolinfo_spec_in .specbox {
          display: block;
          position: relative;
          padding: 0;
          border-right: 1px solid #e2e2e2;
          margin: 0.25em 0; }
          @media (min-width: 48em) {
            .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_spec .lolinfo_spec_in .specbox {
              display: inline-block;
              padding: 0 0.75em 0 0;
              margin: 1em 0.75em 0.5em 0; } }
          .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_spec .lolinfo_spec_in .specbox:last-child {
            border: none; }
          .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_spec .lolinfo_spec_in .specbox .iconp {
            margin-right: 0.25em;
            margin-bottom: 0.25em; }
            @media (min-width: 48em) {
              .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_spec .lolinfo_spec_in .specbox .iconp {
                margin-bottom: 0; } }
          .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_spec .lolinfo_spec_in .specbox .detitle {
            border: 1px solid #999;
            color: #999;
            background: #fff;
            margin-right: 0.75em; }
          .laboboxp-outer-list .laboboxp-item3 .lolinfo .lolinfo_spec .lolinfo_spec_in .specbox .maxspec {
            color: #f039f9; }

.cp_actab {
  position: relative;
  overflow: hidden;
  width: 100%;
  margin: 0 auto -1px auto;
  color: black;
  border: 1px solid #d3d3d3;
  font-size: 1.4rem; }
  @media (min-width: 48em) {
    .cp_actab {
      font-size: 0.7rem; } }
  .cp_actab input {
    position: absolute;
    z-index: -1;
    opacity: 0; }
  .cp_actab label {
    font-weight: bold;
    line-height: 3.6;
    position: relative;
    display: block;
    padding: 0 0 0 1em;
    cursor: pointer;
    margin: 0 0 1px 0; }
  .cp_actab-content {
    overflow: hidden;
    max-height: 0;
    -webkit-transition: max-height 0.35s;
    transition: max-height 0.35s;
    background: #f9f9f9; }
    .cp_actab-content p {
      margin: 1em; }
  .cp_actab input:checked ~ .cp_actab-content {
    max-height: 200em; }
  .cp_actab label::after {
    line-height: 3.6;
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 3.6em;
    height: 3.6em;
    -webkit-transition: all 0.35s;
    transition: all 0.35s;
    text-align: center; }
  .cp_actab input[type=checkbox] + label::after {
    content: '+'; }
  .cp_actab input[type=checkbox]:checked + label::after {
    transform: rotate(315deg); }
  .cp_actab div.mouter {
    padding: 0.6rem 1rem; }
    .cp_actab div.mouter ul {
      margin: 0;
      padding: 0; }
      .cp_actab div.mouter ul li {
        font-size: 1.4rem; }
        @media (min-width: 48em) {
          .cp_actab div.mouter ul li {
            font-size: 0.7rem;
            padding: 0.1rem 0; } }
    .cp_actab div.mouter .search-list-cate {
      margin-bottom: 0.8rem; }
      .cp_actab div.mouter .search-list-cate li {
        list-style: none; }
        .cp_actab div.mouter .search-list-cate li .search-list-cate-sub li {
          list-style: none; }
    .cp_actab div.mouter .search-list-app {
      margin-bottom: 0.8rem; }
      .cp_actab div.mouter .search-list-app li {
        list-style: none; }
    .cp_actab div.mouter .search-list-maker {
      display: block; }
      .cp_actab div.mouter .search-list-maker li {
        display: block;
        list-style: none;
        text-align: center; }
        .cp_actab div.mouter .search-list-maker li img {
          border: 1px solid #d3d3d3; }

.search-number {
  display: block;
  width: 100%;
  text-align: center;
  padding: 0.5rem 0.8rem;
  letter-spacing: 0.05em;
  font-weight: normal;
  font-size: 1.8rem;
  background: #fff;
  margin: 45px 0 20px 0;
  color: #000; }
  @media (min-width: 48em) {
    .search-number {
      font-size: 0.9rem; } }
  .search-number span {
    color: #e92f2f;
    font-weight: bold;
    font-size: 2.6rem; }
    @media (min-width: 48em) {
      .search-number span {
        font-size: 1.3rem; } }

.maker-head -head {
  margin-bottom: 2.5rem; }

.maker-title {
  position: relative;
  text-align: center;
  margin-bottom: 1.5rem;
  overflow: hidden; }
  .maker-title-inner {
    width: 100%;
    display: inline-block;
    display: table;
    height: 230px;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-image: url("ph/maker-bg.jpg"); }
    .maker-title-inner:after {
      -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity = 60);
      filter: alpha(opacity = 60);
      opacity: 0.6;
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: #004751;
      z-index: 2;
      mix-blend-mode: multiply; }
  .maker-title-logo {
    vertical-align: middle;
    background-color: rgba(255, 255, 255, 0.8);
    position: absolute;
    z-index: 4;
    top: 0;
    left: -20px;
    padding: 20px 50px;
    height: 80px;
    transform: skewX(-20deg); }
    .maker-title-logo img {
      transform: skewX(20deg);
      height: 40px;
      width: auto; }

.maker-title-photo {
  position: absolute;
  display: block;
  left: 0;
  right: 0;
  text-align: center;
  margin-top: -100px;
  padding-left: 25px;
  padding-right: 25px;
  z-index: 6; }

.no-results.not-found {
  display: block;
  width: 100%; }
  .no-results.not-found .page-content {
    display: block;
    width: 100%;
    text-align: center; }
    .no-results.not-found .page-content p {
      font-size: 1.8rem;
      font-weight: bold;
      padding: 2rem 0 4rem 0; }
      @media (min-width: 48em) {
        .no-results.not-found .page-content p {
          font-size: 0.9rem; } }

.specsearchnav {
  background: #60d1da;
  padding: 7px !important;
  margin: 0.5rem 0 1rem 0 !important; }
  .specsearchnav-btn {
    border: 3px solid #fff !important;
    text-align: center !important;
    background: #60d1da !important;
    line-height: 2.4em !important;
    font-size: 1.2rem; }
    @media (min-width: 48em) {
      .specsearchnav-btn {
        font-size: 0.7rem; } }

.specsearch {
  background: #60d1da; }
  .specsearch-btn {
    border: 3px solid #fff;
    color: #fff;
    width: calc(100% - 2rem);
    display: block;
    margin: 0 1rem;
    padding: 0.6em 0;
    text-align: center;
    font-weight: bold;
    text-decoration: none;
    font-size: 2rem; }
    @media (min-width: 48em) {
      .specsearch-btn {
        width: 100%;
        margin: 0 auto;
        padding: 0.6em 0;
        font-size: 1rem; } }
  .specsearch.container-full.container-full-pad {
    padding: 1.8em 0; }
    @media (min-width: 30em) {
      .specsearch.container-full.container-full-pad {
        padding: 2.2em 0; } }
    @media (min-width: 48em) {
      .specsearch.container-full.container-full-pad {
        padding: 2.6em 0; } }

.detailed-box {
  padding: 1.25rem;
  background-color: rgba(0, 0, 0, 0.7); }
  .detailed-box .detailed-search-category {
    text-align: center;
    margin-bottom: 2rem; }
    .detailed-box .detailed-search-category input {
      margin-left: 0.45rem; }
    .detailed-box .detailed-search-category h3 {
      font-size: 1.8rem;
      padding: 0.2em 0.6em;
      margin-bottom: 1em;
      background-color: #60d1da;
      color: #000; }
      @media (min-width: 48em) {
        .detailed-box .detailed-search-category h3 {
          font-size: 0.9rem; } }
    .detailed-box .detailed-search-category #products-all {
      margin-left: 0.6em; }
    .detailed-box .detailed-search-category label {
      margin-right: 0.45rem;
      margin-left: 0.1rem; }
    .detailed-box .detailed-search-category .detailed-search-subcategory {
      background-color: rgba(0, 0, 0, 0.9);
      padding: 0.3rem 0.5rem;
      margin: 1em 1em 0 1em; }
      .detailed-box .detailed-search-category .detailed-search-subcategory h4 {
        font-size: 1.2rem;
        padding: 0;
        margin-bottom: 0.5em; }
        @media (min-width: 48em) {
          .detailed-box .detailed-search-category .detailed-search-subcategory h4 {
            font-size: 0.6rem; } }
      .detailed-box .detailed-search-category .detailed-search-subcategory label {
        margin-right: 0.45rem;
        margin-left: 0.1rem; }
    .detailed-box .detailed-search-category div {
      margin-bottom: 1em; }
      .detailed-box .detailed-search-category div h4 {
        background: #2f2f2f;
        font-size: 1.4rem;
        padding: 0.1em 0.5em;
        margin-bottom: 0.5em; }
        @media (min-width: 48em) {
          .detailed-box .detailed-search-category div h4 {
            font-size: 0.7rem; } }
    .detailed-box .detailed-search-category-inner {
      text-align: left; }
      .detailed-box .detailed-search-category-inner .checkoption {
        display: inline-block; }
      @media (min-width: 48em) {
        .detailed-box .detailed-search-category-inner.laser-block .checkoption {
          width: 24%; } }
      @media (min-width: 62em) {
        .detailed-box .detailed-search-category-inner.laser-block .checkoption {
          width: 19%; } }
      @media (min-width: 68.75em) {
        .detailed-box .detailed-search-category-inner.laser-block .checkoption {
          width: 16%; } }
      .detailed-box .detailed-search-category-inner.laser-block .checkoption input:checked + label {
        color: #29ff56;
        font-weight: bold; }
      @media (min-width: 48em) {
        .detailed-box .detailed-search-category-inner.output-block .checkoption {
          width: calc((100% - 6em)/4); } }
      @media (min-width: 62em) {
        .detailed-box .detailed-search-category-inner.output-block .checkoption {
          width: 19%; } }
      @media (min-width: 68.75em) {
        .detailed-box .detailed-search-category-inner.output-block .checkoption {
          width: 16%; } }
      .detailed-box .detailed-search-category-inner.output-block .checkoption input:checked + label {
        color: #29ff56;
        font-weight: bold; }
      @media (min-width: 48em) {
        .detailed-box .detailed-search-category-inner.output-block .checkoption.first-block {
          width: 5em; } }
      @media (min-width: 62em) {
        .detailed-box .detailed-search-category-inner.output-block .checkoption.first-block {
          width: 19%; } }
      @media (min-width: 68.75em) {
        .detailed-box .detailed-search-category-inner.output-block .checkoption.first-block {
          width: 16%; } }
      .detailed-box .detailed-search-category-inner.category-block input:checked + label {
        color: #29ff56;
        font-weight: bold; }

#detailed-search-clearbtn {
  margin: 0 auto 1em auto;
  display: block;
  width: 250px;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
  line-height: 40px;
  background: #fff;
  color: black;
  text-align: center;
  font-weight: bold;
  border: none;
  font-size: 1.8rem; }
  @media (min-width: 48em) {
    #detailed-search-clearbtn {
      font-size: 0.9rem; } }

.checkoption {
  word-break: keep-all;
  display: inline-block;
  font-size: 1.6rem; }
  @media (min-width: 48em) {
    .checkoption {
      font-size: 0.9rem; } }

.processing_products .searchitem.product.laboboxp-outer.fixItem {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  margin: 0; }
  .processing_products .searchitem.product.laboboxp-outer.fixItem .col-md-2.laboboxp-item2 {
    float: none;
    text-align: left;
    display: inline-block; }

.geiki .col-md-6 a {
  text-decoration: none;
  border: 1px solid #d3d3d3;
  line-height: 74px;
  text-align: center;
  display: block;
  width: 100%;
  font-weight: bold;
  font-size: 1.4rem; }
  @media (min-width: 48em) {
    .geiki .col-md-6 a {
      font-size: 0.8rem; } }

/* --- basic setting ----------------------------------------------------------------------------------------- */
.wp-caption-text {
  text-align: center; }

.alignright {
  float: right; }

.alignleft {
  float: left; }

.aligncenter {
  margin-left: auto;
  margin-right: auto; }

.centered {
  margin-left: auto;
  margin-right: auto; }

.clear {
  clear: both; }

.youtube-top {
  position: relative;
  width: 100%;
  padding-top: 56.25%; }

.youtube-top iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%; }

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%; }
  @media (min-width: 48em) {
    .youtube {
      width: calc(100% - 200px);
      margin: 50px 100px; } }

.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important; }

.m-article-text-main,
.twitter-tweet,
.instagram-media,
.instagram-media-rendered {
  margin-left: auto !important;
  margin-right: auto !important; }

.page-detail iframe {
  margin-left: auto !important;
  margin-right: auto !important;
  display: block; }

/* --- WordPress preset CSS ----------------------------------------------------------------------------------------- */
.page-body, .product-ph, .txtp {
  margin: 3rem 0 6rem 0;
  /* image */
  /* gallery */
  /* icon */
  /* table */
  /* list */
  /* block quote */ }
  .page-body p, .product-ph p, .txtp p {
    margin-bottom: 1.5rem; }
  .page-body small, .product-ph small, .txtp small {
    font-size: 1.2rem; }
    @media (min-width: 48em) {
      .page-body small, .product-ph small, .txtp small {
        font-size: 0.6rem; } }
  .page-body a, .product-ph a, .txtp a {
    color: #0185f1; }
  .page-body h1, .page-body h2, .product-ph h1, .product-ph h2, .txtp h1, .txtp h2 {
    clear: both;
    margin-bottom: 1.2rem;
    padding: 0.75rem 0;
    color: #000;
    font-weight: bold; }
  .page-body h1, .product-ph h1, .txtp h1 {
    border-bottom: 2px solid #b9b9b9; }
  .page-body h2, .product-ph h2, .txtp h2 {
    border-bottom: 1px solid #e2e2e2; }
  .page-body h3, .product-ph h3, .txtp h3 {
    position: relative;
    margin: 0 0 1.2rem;
    color: #fff;
    letter-spacing: 0.04em;
    background: none;
    border: 1px solid #929292;
    padding: 0.5em; }
  .page-body h4,
  .page-body h5,
  .page-body h6, .product-ph h4,
  .product-ph h5,
  .product-ph h6, .txtp h4,
  .txtp h5,
  .txtp h6 {
    margin-bottom: 0.6rem;
    color: #000; }
  .page-body h1, .page-body h2, .product-ph h1, .product-ph h2, .txtp h1, .txtp h2 {
    font-size: 1.8rem;
    line-height: 1.2777777778; }
  .page-body h3, .product-ph h3, .txtp h3 {
    font-size: 1.6rem;
    line-height: 1.3333333333; }
  .page-body h4, .product-ph h4, .txtp h4 {
    font-size: 1.4rem;
    line-height: 1.3571428571; }
  .page-body h4, .page-body h5, .page-body h6, .product-ph h4, .product-ph h5, .product-ph h6, .txtp h4, .txtp h5, .txtp h6 {
    font-size: 1.4rem;
    line-height: 1.3571428571; }
  @media (min-width: 48em) {
    .page-body h1, .page-body h2, .product-ph h1, .product-ph h2, .txtp h1, .txtp h2 {
      font-size: 1rem; }
    .page-body h3, .product-ph h3, .txtp h3 {
      font-size: 0.9rem; }
    .page-body h4, .product-ph h4, .txtp h4 {
      font-size: 0.8rem; }
    .page-body h4, .page-body h5, .page-body h6, .product-ph h4, .product-ph h5, .product-ph h6, .txtp h4, .txtp h5, .txtp h6 {
      font-size: 0.8rem; } }
  .page-body img, .product-ph img, .txtp img {
    height: auto;
    max-width: 100%;
    margin: 0 auto; }
  .page-body img.centered, .page-body div.centered, .product-ph img.centered, .product-ph div.centered, .txtp img.centered, .txtp div.centered {
    display: block;
    margin: 24px auto; }
  .page-body img.aligncenter, .page-body div.aligncenter, .product-ph img.aligncenter, .product-ph div.aligncenter, .txtp img.aligncenter, .txtp div.aligncenter {
    display: block;
    margin: 24px auto; }
  .page-body img.alignright, .page-body div.alignright, .product-ph img.alignright, .product-ph div.alignright, .txtp img.alignright, .txtp div.alignright {
    float: none;
    margin: 4px auto 16px auto;
    display: block; }
  .page-body img.alignleft, .page-body div.alignleft, .product-ph img.alignleft, .product-ph div.alignleft, .txtp img.alignleft, .txtp div.alignleft {
    float: none;
    margin: 4px auto 16px auto;
    display: block; }
  .page-body .wp-caption, .product-ph .wp-caption, .txtp .wp-caption {
    max-width: 100%;
    padding: 0;
    margin: 24px auto; }
  .page-body .wp-caption.alignright, .product-ph .wp-caption.alignright, .txtp .wp-caption.alignright {
    float: none;
    margin: 4px auto 16px auto; }
  .page-body .wp-caption.alignleft, .product-ph .wp-caption.alignleft, .txtp .wp-caption.alignleft {
    float: none;
    margin: 4px auto 16px auto; }
  .page-body .wp-caption.aligncenter, .product-ph .wp-caption.aligncenter, .txtp .wp-caption.aligncenter {
    margin: 24px auto; }
  .page-body .wp-caption img, .product-ph .wp-caption img, .txtp .wp-caption img {
    display: block;
    margin: 0 auto;
    max-width: 100%; }
  .page-body .wp-caption .wp-caption-text, .product-ph .wp-caption .wp-caption-text, .txtp .wp-caption .wp-caption-text {
    padding: 8px 0 0;
    color: #999;
    font-size: 12px; }
  @media (min-width: 48em) {
    .page-body img.alignright, .page-body div.alignright, .product-ph img.alignright, .product-ph div.alignright, .txtp img.alignright, .txtp div.alignright {
      float: right;
      margin: 4px 0 30px 30px;
      display: inline; }
    .page-body img.alignleft, .page-body div.alignleft, .product-ph img.alignleft, .product-ph div.alignleft, .txtp img.alignleft, .txtp div.alignleft {
      float: left;
      margin: 4px 30px 30px 0;
      display: inline; }
    .page-body .wp-caption.alignright, .product-ph .wp-caption.alignright, .txtp .wp-caption.alignright {
      float: right;
      margin: 4px 0 30px 30px; }
    .page-body .wp-caption.alignleft, .product-ph .wp-caption.alignleft, .txtp .wp-caption.alignleft {
      float: left;
      margin: 4px 30px 30px 0; } }
  .page-body .gallery, .product-ph .gallery, .txtp .gallery {
    margin-bottom: 1.8rem;
    font-size: 0;
    text-align: center; }
    .page-body .gallery-item, .product-ph .gallery-item, .txtp .gallery-item {
      display: inline-block;
      vertical-align: top;
      text-align: center;
      padding: 8px;
      width: 50%; }
      @media (min-width: 30em) {
        .page-body .gallery-item, .product-ph .gallery-item, .txtp .gallery-item {
          width: auto; } }
    .page-body .gallery-caption, .product-ph .gallery-caption, .txtp .gallery-caption {
      padding: 8px;
      color: #999;
      font-size: 12px;
      line-height: 18px; }
  .page-body i.fa, .product-ph i.fa, .txtp i.fa {
    margin-right: 6px; }
  .page-body table, .product-ph table, .txtp table {
    margin: 0 0 2.0rem 0;
    display: block;
    width: auto;
    position: relative;
    overflow-x: auto;
    white-space: nowrap; }
    @media (min-width: 48em) {
      .page-body table, .product-ph table, .txtp table {
        display: table; } }
    @media (min-width: 62em) {
      .page-body table, .product-ph table, .txtp table {
        white-space: inherit; } }
  .page-body td,
  .page-body th, .product-ph td,
  .product-ph th, .txtp td,
  .txtp th {
    border: 1px solid #ddd;
    background-color: #fff;
    padding: 12px 15px;
    vertical-align: top;
    text-align: left;
    font-size: 1.4rem;
    line-height: 1.3571428571; }
    @media (min-width: 48em) {
      .page-body td,
      .page-body th, .product-ph td,
      .product-ph th, .txtp td,
      .txtp th {
        font-size: 0.8rem;
        line-height: 1.5; } }
  .page-body th, .product-ph th, .txtp th {
    background-color: #eee;
    font-weight: bold;
    color: #000;
    width: 35%; }
    @media (min-width: 48em) {
      .page-body th, .product-ph th, .txtp th {
        width: 26%; } }
  .page-body dt,
  .page-body dd, .product-ph dt,
  .product-ph dd, .txtp dt,
  .txtp dd {
    margin: 0; }
  .page-body ul,
  .page-body ol, .product-ph ul,
  .product-ph ol, .txtp ul,
  .txtp ol {
    margin: 0 0 0.8rem;
    padding: 0 0 0 16px; }
  .page-body ul li,
  .page-body ol li, .product-ph ul li,
  .product-ph ol li, .txtp ul li,
  .txtp ol li {
    margin: 0 0 0.375rem 0.8rem;
    padding: 0 0 0 0.4rem; }
  .page-body .blockquote, .product-ph .blockquote, .txtp .blockquote {
    margin: 0 0 1.5em 0;
    padding: 15px;
    background: #f2f2f2;
    color: #555;
    position: relative; }
    .page-body .blockquote p:nth-last-child(-n + 1), .product-ph .blockquote p:nth-last-child(-n + 1), .txtp .blockquote p:nth-last-child(-n + 1) {
      margin-bottom: 0; }
  .page-body blockquote, .product-ph blockquote, .txtp blockquote {
    margin: 0 0 2em 0;
    padding: 30px 30px 2px;
    background: #f2f2f2;
    color: #555;
    position: relative; }
  .page-body blockquote:before, .product-ph blockquote:before, .txtp blockquote:before {
    content: '"';
    font-style: italic;
    font-size: 30px;
    font-weight: bold;
    line-height: 40px;
    width: 30px;
    height: 30px;
    position: absolute;
    top: 10px;
    left: 10px;
    color: #999; }
  .page-body blockquote:after, .product-ph blockquote:after, .txtp blockquote:after {
    content: '"';
    font-style: italic;
    font-size: 30px;
    font-weight: bold;
    text-align: left;
    line-height: 60px;
    width: 30px;
    height: 30px;
    position: absolute;
    bottom: 10px;
    right: 5px;
    color: #999; }
  .page-body .noclick, .product-ph .noclick, .txtp .noclick {
    pointer-events: none; }

.page-body h3 {
  color: #000;
  border: none; }

.product-ph {
  margin: 0 0 0 0 !important; }
  .product-ph ul {
    margin: 0 0 1.5rem 0;
    padding: 0 0 0 0.5rem; }
    .product-ph ul li {
      list-style: none;
      margin: 0 !important;
      padding: 0.25rem 0 !important; }
      .product-ph ul li:before {
        content: "\f058";
        display: inline-block;
        margin-right: 0.15rem;
        font: normal normal normal 14px/1 FontAwesome;
        font-size: inherit;
        text-rendering: auto;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
  .product-ph h2 {
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 1.2em;
    line-height: 1.625;
    padding: 0.2em 0.6em;
    color: black;
    background: #e5e5e5;
    border: none; }
    @media (min-width: 48em) {
      .product-ph h2 {
        font-size: 0.8rem; } }
  .product-ph h3, .product-ph h4, .product-ph h5, .product-ph h6 {
    font-size: 1.6rem;
    line-height: 1.3125;
    font-weight: bold;
    margin-bottom: 1.2em;
    padding: 0 0 0 0.7em;
    color: black;
    border-left: 4px solid black;
    border-bottom: none;
    border-top: none;
    border-right: none; }
    @media (min-width: 48em) {
      .product-ph h3, .product-ph h4, .product-ph h5, .product-ph h6 {
        font-size: 0.8rem; } }

/* コメント */
#comments.comments-area {
  clear: both;
  padding: 2.0rem 0; }
#comments .comment-respond {
  padding: 2.0rem;
  border: 1px solid #ddd;
  font-size: 1.4rem;
  line-height: 1.3571428571; }
  @media (min-width: 48em) {
    #comments .comment-respond {
      font-size: 0.7rem; } }
#comments .comment-form-comment textarea {
  outline: none;
  display: block;
  width: 100%;
  padding: 12px;
  margin-bottom: 0.4rem;
  color: #444;
  border: 1px solid #eee;
  background-color: #e1e1e1;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1); }
#comments .comment-form-author input, #comments .comment-form-email input {
  outline: none;
  display: block;
  width: 100%;
  padding: 12px;
  margin-bottom: 0.4rem;
  color: #444;
  border: 1px solid #eee;
  background-color: #e1e1e1;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1); }
@media (min-width: 48em) {
  #comments .comment-form-author, #comments .comment-form-email {
    float: left;
    width: 48%; } }
@media (min-width: 48em) {
  #comments .comment-form-email {
    float: right; } }
#comments .form-submit {
  clear: both;
  padding-top: 8px;
  text-align: center; }
  #comments .form-submit input[type="submit"] {
    width: 100%;
    margin: 0;
    height: 56px;
    line-height: 56px;
    border: 1px black solid;
    background-color: black;
    color: #fff;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px; }
    #comments .form-submit input[type="submit"]:hover {
      -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity = 60);
      filter: alpha(opacity = 60);
      opacity: 0.6; }
    @media (min-width: 30em) {
      #comments .form-submit input[type="submit"] {
        width: 300px;
        display: inline-block;
        margin: 0; } }

/* next-page */
.pagesprit {
  text-align: center;
  font-size: 0;
  padding: 16px 0 32px 0; }

.pagesprit .page-numbers {
  line-height: 1; }

.pagesprit a,
.pagesprit span {
  display: inline-block;
  margin: 0 2px 4px 2px;
  font-size: 14px;
  line-height: 14px; }

.pagesprit .numbers {
  border: 1px #000 solid;
  width: 40px;
  height: 40px;
  line-height: 40px;
  background-color: #000;
  color: #fff; }

.pagesprit a:hover {
  opacity: 1; }

.pagesprit a:hover .numbers {
  background-color: #000;
  color: #fff;
  opacity: 1; }

.pagesprit a .numbers {
  background-color: #fff;
  color: #000; }

@media (min-width: 62em) {
  .pagesprit .numbers {
    width: 36px;
    height: 36px;
    line-height: 34px; } }
/* PageNaviプラグイン */
.wp-pagenavi {
  padding: 0 0 16px 0;
  text-align: center; }

.wp-pagenavi .pages {
  display: block;
  margin: 8px;
  font-size: 14px;
  font-weight: 500; }

.wp-pagenavi .current,
.wp-pagenavi .page,
.wp-pagenavi .extend,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink {
  display: inline-block;
  border: 1px solid #000;
  margin: 8px 2px;
  width: 40px;
  height: 40px;
  line-height: 40px;
  font-size: 16px;
  font-weight: 500; }

.wp-pagenavi .extend {
  border: none;
  margin: 8px 0; }

.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink {
  border: none; }

.wp-pagenavi .current {
  background-color: #000;
  color: #fff; }

.wp-pagenavi .page:hover {
  color: #fff;
  background-color: #000;
  opacity: 1; }

.wp-pagenavi .nextpostslink:hover,
.wp-pagenavi .previouspostslink:hover {
  color: #000; }

@media (min-width: 62em) {
  .wp-pagenavi .current,
  .wp-pagenavi .page,
  .wp-pagenavi .nextpostslink,
  .wp-pagenavi .previouspostslink {
    width: 36px;
    height: 36px;
    line-height: 34px; } }
.outer-wp-pagenavi {
  margin-top: -3.0rem; }

.screen-reader-text {
  display: none; }

/*contactform7*/
div.wpcf7-validation-errors, div.wpcf7-acceptance-missing {
  border: none; }

div.wpcf7-response-output {
  border: none;
  padding: 0.8em; }

.wpcf7-validation-errors {
  background: #e92f2f;
  color: #fff; }

.wpcf7-mail-sent-ok {
  background: #00a63c;
  color: #fff; }

/*ギャラり*/
.txtp {
  margin: 0 0 3em 0; }

.txtp p {
  margin: 0.75rem 0 !important; }

/*固定ページの見出し用*/
.page-body.fixpage-body h1 {
  position: relative;
  font-size: 2.2rem;
  line-height: 1.2272727273;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.1em;
  color: #333333;
  margin-bottom: 50px;
  border-bottom: none;
  padding: 0; }

@media (min-width: 48em) {
  .page-body.fixpage-body h1 {
    font-size: 1.5rem;
    margin-bottom: 70px; } }
.page-body.fixpage-body h1:after {
  position: absolute;
  display: block;
  content: "";
  height: 4px;
  background: #60d1da;
  width: 30px;
  bottom: -18px;
  left: calc(50% - 15px); }

@media (min-width: 48em) {
  .page-body.fixpage-body h1:after {
    width: 40px;
    bottom: -25px;
    left: calc(50% - 20px); } }
.page-body.fixpage-body h2 {
  clear: both;
  margin-bottom: 1.2rem;
  padding: 0.75rem 0;
  color: #000;
  font-weight: bold; }

.page-body.fixpage-body h2 {
  border-bottom: 1px solid #e2e2e2; }

.page-body.fixpage-body h3 {
  border-left: 3px solid #60d1da;
  padding-left: 1rem; }

.page-body.fixpage-body h2 {
  font-size: 1.8rem;
  line-height: 1.2777777778; }

.page-body.fixpage-body h3 {
  font-size: 1.6rem;
  line-height: 1.3333333333; }

@media (min-width: 48em) {
  .page-body.fixpage-body h2 {
    font-size: 1rem; }

  .page-body.fixpage-body h3 {
    font-size: 0.9rem; } }
/*20210319 fancyboxのクローズボタンなど調整*/
.fancybox-toolbar {
  right: calc(50% - 88px) !important;
  bottom: 0 !important;
  top: auto !important; }

.fancybox-button--zoom,
.fancybox-button--play,
.fancybox-button--thumbs,
.fancybox-button--close {
  background: #00a63c !important; }

.single-application .txtp table tr td {
  background: none; }
