@charset "UTF-8";
@import url(//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css);
@import url(//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css);
@import url(//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css);
@import url(//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css);
@import url(//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css);
@import url(//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css);
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

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

@media print, screen and (min-width: 480px) {
  html {
    font-size: 62.5%; } }
@media screen and (max-width: 479px) {
  html {
    font-size: calc(100vw / 40); } }

body {
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  line-height: 1.7;
  color: #000;
  -webkit-font-smoothing: antialiased; }
  @media screen and (max-width: 479px) {
    body {
      font-size: 12.3076923077px;
      font-size: 1.2307692308rem; } }

.body {
  position: relative; }

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }
  img:hover {
    opacity: 1; }

a {
  /*@include link-text($link-color, 100%, none);*/
  color: #35588A;
  text-decoration: none; }
  a:visited {
    color: #971d69; }
  a:active {
    color: #909090; }
  a:hover {
    color: #2BAAE2; }

.container {
  margin: 0 auto;
  max-width: 1140px;
  padding-right: 20px;
  padding-left: 20px;
  padding-right: calc(20px + constant(safe-area-inset-right));
  padding-left: calc(20px + constant(safe-area-inset-left)); }
  .container .container {
    padding: 0; }

.narrow-container {
  margin: 0 auto;
  max-width: 960px;
  padding-right: 30px;
  padding-left: 30px;
  padding-right: calc(20px + constant(safe-area-inset-right));
  padding-left: calc(20px + constant(safe-area-inset-left)); }

@media (max-width: 1140px) {
  .container {
    padding-right: 30px;
    padding-left: 30px;
    padding-right: calc(30px + constant(safe-area-inset-right));
    padding-left: calc(30px + constant(safe-area-inset-left)); }

  .narrow-container {
    padding-right: 30px;
    padding-left: 30px;
    padding-right: calc(30px + constant(safe-area-inset-right));
    padding-left: calc(30px + constant(safe-area-inset-left)); } }
@media screen and (max-width: 767px) {
  .container {
    padding-right: 5px;
    padding-left: 5px; } }
#adminBox {
  margin-top: 0;
  margin-bottom: 0; }
  #adminBox + .body .wrap main {
    margin-top: 0; }

.head-wrapper {
  background: #fff; }

.header {
  margin-bottom: 0; }
  @media screen and (max-width: 991px) {
    .header {
      padding: 5px 0; } }
  @media print, screen and (min-width: 992px) {
    .header {
      height: auto;
      width: 100%;
      display: table;
        /*position: fixed;
        top: 0;
        left: 0;
        z-index: 100;

		
		.container{
			position: relative;
			overflow: visible;
		}*/ }
      .header .header-logo {
        display: table-cell;
        width: 40%; }
      .header .header-nav {
        display: table-cell;
        width: 60%; } }
  .header p {
    margin: 0;
    padding: 0; }
  .header .header-logo {
    /*text-align: center;
    padding: 15px;*/ }
    .header .header-logo .site-name {
      margin: 10px 0 0;
      width: 40%; }
      @media print, screen and (min-width: 992px) {
        .header .header-logo .site-name {
          width: 60%; } }
      .header .header-logo .site-name .logo-icon {
        width: 52%;
        display: inline-block;
                /*@include mq( $pc , min ) {
					width: 189px;
				}*/ }
        .header .header-logo .site-name .logo-icon img {
          vertical-align: middle; }
      .header .header-logo .site-name .logo-text {
        width: 48%;
        padding-left: 10px;
        display: inline-block;
                /*@include mq( $pc , min ) {
					width: 121px;
					margin: 15px auto 0;
				}*/ }
        .header .header-logo .site-name .logo-text img {
          vertical-align: middle; }
      @media screen and (max-width: 767px) {
        .header .header-logo .site-name {
          width: 50%;
          padding: 0;
          margin: 0;
          line-height: 1; } }
    @media screen and (max-width: 767px) {
      .header .header-logo {
        /*width: 100%;
        position: relative;
        padding: 10px;*/ } }
    @media print, screen and (min-width: 992px) {
      .header .header-logo .menu-btn {
        display: none; } }
    .header .header-logo .nav-menu-btn {
      position: absolute;
      top: 0;
      right: 0;
      color: #fff;
      padding: 7px;
      background: #fff;
      line-height: 1; }
      .header .header-logo .nav-menu-btn a {
        color: #BF1920; }
      .header .header-logo .nav-menu-btn .acms-icon-sort {
        color: #BF1920; }
      .header .header-logo .nav-menu-btn .nav-menu-btn-text {
        color: #BF1920;
        font-size: 14px;
        font-size: 1.4rem;
        padding-left: 5px; }
        @media screen and (max-width: 479px) {
          .header .header-logo .nav-menu-btn .nav-menu-btn-text {
            font-size: 10.7692307692px;
            font-size: 1.0769230769rem; } }
  @media screen and (max-width: 991px) {
    .header .header-nav {
      display: none; } }
  .header .header-nav nav.navbar {
    margin-bottom: 8px; }
    .header .header-nav nav.navbar ul {
      padding: 0;
      margin: 0;
      -js-display: flex;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: space-between;
      justify-content: space-between; }
      .header .header-nav nav.navbar ul li {
        list-style: none;
        text-align: center;
        line-height: 1;
        margin: 4px 0;
        font-size: 15px;
        font-size: 1.5rem; }
        @media screen and (max-width: 479px) {
          .header .header-nav nav.navbar ul li {
            font-size: 11.5384615385px;
            font-size: 1.1538461538rem; } }
        .header .header-nav nav.navbar ul li a {
          position: relative;
          display: inline-block;
          text-decoration: none;
          padding: 6px 0;
          color: #000;
          text-decoration: none; }
          .header .header-nav nav.navbar ul li a:hover, .header .header-nav nav.navbar ul li a:active, .header .header-nav nav.navbar ul li a:focus {
            color: black;
            text-decoration: none; }
          .header .header-nav nav.navbar ul li a:visited {
            color: black; }
          .header .header-nav nav.navbar ul li a::after {
            position: absolute;
            bottom: -14px;
            left: 0;
            content: '';
            width: 100%;
            height: 4px;
            background: #BF1920;
            transform: scale(0, 1);
            transform-origin: left top;
            transition: transform .3s; }
          .header .header-nav nav.navbar ul li a:hover::after {
            transform: scale(1, 1); }
        .header .header-nav nav.navbar ul li.stay a:after {
          transform: scale(1, 1); }
        .header .header-nav nav.navbar ul li .navbar-btn {
          padding: 0 10px; }
          .header .header-nav nav.navbar ul li .navbar-btn .btn-en {
            background: #ECEDED; }
      .header .header-nav nav.navbar ul .navbar-btn {
        display: inline-block;
        text-align: center;
        line-height: 1;
        font-size: 12px;
        font-size: 1.2rem;
        font-weight: normal; }
        .header .header-nav nav.navbar ul .navbar-btn::after {
          content: "";
          display: block;
          clear: both; }
        @media screen and (max-width: 479px) {
          .header .header-nav nav.navbar ul .navbar-btn {
            font-size: 9.2307692308px;
            font-size: 0.9230769231rem; } }
        .header .header-nav nav.navbar ul .navbar-btn .btn {
          margin: 0 !important;
          font-size: 12px;
          font-size: 1.2rem;
          font-weight: normal; }
          @media screen and (max-width: 479px) {
            .header .header-nav nav.navbar ul .navbar-btn .btn {
              font-size: 9.2307692308px;
              font-size: 0.9230769231rem; } }
        .header .header-nav nav.navbar ul .navbar-btn a {
          color: #414B50;
          text-decoration: none;
          display: block;
          border-radius: 3px;
          padding: 9px 1.5em 8px 2.2em;
          position: relative;
          width: 100%;
          background: #ECEDED; }
          .header .header-nav nav.navbar ul .navbar-btn a:hover, .header .header-nav nav.navbar ul .navbar-btn a:active, .header .header-nav nav.navbar ul .navbar-btn a:focus {
            color: #414b50;
            text-decoration: none; }
          .header .header-nav nav.navbar ul .navbar-btn a:visited {
            color: #414b50; }
          .header .header-nav nav.navbar ul .navbar-btn a:before {
            content: "";
            display: block;
            width: 5px;
            height: 5px;
            border-right: 2px solid #BF1920;
            border-top: 2px solid #BF1920;
            transform: rotate(135deg);
            position: absolute;
            top: 50%;
            left: 1.2em;
            margin-top: -5px; }

.header-btn::after {
  content: "";
  display: block;
  clear: both; }
.header-btn p {
  display: inline-block;
  text-align: center;
  line-height: 1;
  margin: 0 3px; }
.header-btn a {
  color: #fff;
  text-decoration: none;
  display: block;
  border-radius: 3px;
  padding: 9px 23px 8px 21px; }
  .header-btn a:hover, .header-btn a:active, .header-btn a:focus {
    color: white;
    text-decoration: none; }
  .header-btn a:visited {
    color: white; }

.header-sns {
  color: #BF1920;
  display: inline-block; }
  .header-sns a {
    color: #BF1920;
    text-decoration: none;
    border-radius: 20px;
    background: #fff;
    line-height: 1;
    padding: 8px 8px 2px; }
    .header-sns a:hover, .header-sns a:active, .header-sns a:focus {
      color: #bf1920;
      text-decoration: none; }
    .header-sns a:visited {
      color: #bf1920; }
  .header-sns ul {
    display: inline-block;
    padding: 0;
    margin: 0; }
  .header-sns li {
    display: inline-block;
    margin: 0 2px; }
    .header-sns li:first-child a {
      padding: 8px 10px 2px; }
    .header-sns li .fa {
      font-size: 22px;
      font-size: 2.2rem;
      line-height: 1; }
      @media screen and (max-width: 479px) {
        .header-sns li .fa {
          font-size: 16.9230769231px;
          font-size: 1.6923076923rem; } }

.js-acms-offcanvas-active .js-acms-offcanvas-sidebar-right {
  background: #BF1920; }

.js-acms-header-fixed {
  z-index: 9999; }

.footer {
  margin-top: 0;
  padding: 1em 0 0;
  background: #F1F4F6; }
  @media print, screen and (min-width: 992px) {
    .footer {
      padding: 3em 0 0; } }
  @media print, screen and (min-width: 992px) {
    .footer .footer-sec {
      float: left; } }
  .footer .site-info {
    text-align: center; }
    @media print, screen and (min-width: 992px) {
      .footer .site-info {
        text-align: left;
        width: 33%; } }
    .footer .site-info__logo {
      margin: 0 0 0.8em; }
      .footer .site-info__logo span {
        line-height: 1;
        display: block; }
        @media screen and (max-width: 991px) {
          .footer .site-info__logo span {
            padding: 5px; } }
      @media screen and (max-width: 991px) {
        .footer .site-info__logo {
          margin: 0 auto;
          width: 50%; } }
      @media print, screen and (min-width: 992px) {
        .footer .site-info__logo {
          width: 213px; }
          .footer .site-info__logo span {
            display: block;
            width: 148px; } }
    .footer .site-info__address {
      font-size: 16px;
      font-size: 1.6rem; }
      @media screen and (max-width: 479px) {
        .footer .site-info__address {
          font-size: 12.3076923077px;
          font-size: 1.2307692308rem; } }
    .footer .site-info__tel {
      margin-top: 1.6em; }
  .footer .footer-nav::after {
    content: "";
    display: block;
    clear: both; }
  @media screen and (max-width: 991px) {
    .footer .footer-nav {
      display: none; } }
  @media print, screen and (min-width: 992px) {
    .footer .footer-nav {
      width: 47%;
      -js-display: flex;
      display: -webkit-flex;
      display: flex; } }
  .footer .footer-nav ul {
    margin: 0;
    padding: 0; }
    .footer .footer-nav ul li {
      list-style-type: none;
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: normal;
      margin-bottom: 1em; }
      @media screen and (max-width: 479px) {
        .footer .footer-nav ul li {
          font-size: 10.7692307692px;
          font-size: 1.0769230769rem; } }
      .footer .footer-nav ul li a {
        color: #414B50;
        text-decoration: none; }
        .footer .footer-nav ul li a:hover, .footer .footer-nav ul li a:active, .footer .footer-nav ul li a:focus {
          color: #414b50;
          text-decoration: underline; }
        .footer .footer-nav ul li a:visited {
          color: #414b50; }
  .footer .footer-nav .footer-nav-list {
    padding: 0;
    margin-left: 0; }
    .footer .footer-nav .footer-nav-list li {
      list-style: none;
      margin-bottom: 1.6em;
      line-height: 1.5;
      font-size: 15px;
      font-size: 1.5rem;
      font-weight: bold; }
      @media screen and (max-width: 479px) {
        .footer .footer-nav .footer-nav-list li {
          font-size: 11.5384615385px;
          font-size: 1.1538461538rem; } }
      .footer .footer-nav .footer-nav-list li a {
        color: #595959;
        text-decoration: none; }
        .footer .footer-nav .footer-nav-list li a:hover, .footer .footer-nav .footer-nav-list li a:active, .footer .footer-nav .footer-nav-list li a:focus {
          color: #595959;
          text-decoration: underline; }
        .footer .footer-nav .footer-nav-list li a:visited {
          color: #595959; }
      .footer .footer-nav .footer-nav-list li:before {
        font-family: FontAwesome;
        content: "";
        display: inline-block;
        margin-top: -0.5em;
        font-size: 1.3rem;
        line-height: 1;
        color: #BF1920; }
  .footer .footer-nav .footer-link-group {
    font-size: 12px;
    font-size: 1.2rem;
    padding-left: 1em; }
    @media screen and (max-width: 479px) {
      .footer .footer-nav .footer-link-group {
        font-size: 9.2307692308px;
        font-size: 0.9230769231rem; } }
    .footer .footer-nav .footer-link-group a {
      color: #6E6E6E;
      text-decoration: none; }
      .footer .footer-nav .footer-link-group a:hover, .footer .footer-nav .footer-link-group a:active, .footer .footer-nav .footer-link-group a:focus {
        color: #6e6e6e;
        text-decoration: underline; }
      .footer .footer-nav .footer-link-group a:visited {
        color: #6e6e6e; }
    .footer .footer-nav .footer-link-group li {
      text-indent: -1em;
      margin-bottom: 0; }
      .footer .footer-nav .footer-link-group li:before {
        content: "";
        display: inline-block;
        width: 5px;
        height: 8px;
        border-radius: 7px;
        background: none;
        background: url(../img/arrow_red.png) no-repeat 50% 50%;
        background-size: 4.8px auto;
        margin-right: 3px; }
      .footer .footer-nav .footer-link-group li ul li:before {
        content: "";
        display: inline-block;
        width: 4px;
        height: 4px;
        border-radius: 2px;
        background: #BF1920;
        margin-right: 3px; }
  @media print, screen and (min-width: 992px) {
    .footer .footer-nav__first {
      width: 30%;
      float: left;
      padding: 10px 0 10px 20px;
      border-left: 1px solid #B4B6B8; } }
  @media print, screen and (min-width: 992px) {
    .footer .footer-nav__second {
      width: 35%;
      float: left;
      padding: 10px 0 10px 20px;
      border-left: 1px solid #B4B6B8; } }
  @media print, screen and (min-width: 992px) {
    .footer .footer-nav__third {
      width: 35%;
      float: left;
      padding: 10px 0 10px 20px;
      border-left: 1px solid #B4B6B8; } }
  .footer .footer-banner {
    padding: 0;
    margin: 0; }
    @media screen and (max-width: 991px) {
      .footer .footer-banner {
        display: none; } }
    @media print, screen and (min-width: 992px) {
      .footer .footer-banner {
        width: 20%; } }

  .footer .utility-navigation {
    padding: 0;
    text-align: center; }
    @media screen and (max-width: 991px) {
      .footer .utility-navigation {
        display: none; } }
    .footer .utility-navigation li {
      display: inline-block;
      line-height: 1;
      padding: 0 1em;
      border-right: 1px solid #414B50;
      font-size: 14px;
      font-size: 1.4rem; }
      @media screen and (max-width: 479px) {
        .footer .utility-navigation li {
          font-size: 10.7692307692px;
          font-size: 1.0769230769rem; } }
      .footer .utility-navigation li:last-child {
        border: none; }
  .footer .footer-utility .search-box {
    width: 65%;
    float: left; }
  .footer .footer-utility .footer-sns {
    width: 35%;
    text-align: center;
    color: #BF1920;
    display: inline-block;
    padding-top: 4px; }
    .footer .footer-utility .footer-sns a {
      color: #fff;
      text-decoration: none;
      border-radius: 20px;
      background: #BF1920;
      line-height: 1;
      padding: 8px 8px 2px; }
      .footer .footer-utility .footer-sns a:hover, .footer .footer-utility .footer-sns a:active, .footer .footer-utility .footer-sns a:focus {
        color: white;
        text-decoration: none; }
      .footer .footer-utility .footer-sns a:visited {
        color: white; }
    .footer .footer-utility .footer-sns ul {
      display: inline-block;
      padding: 0;
      margin: 0; }
    .footer .footer-utility .footer-sns li {
      display: inline-block;
      margin: 0 2px; }
      .footer .footer-utility .footer-sns li:first-child a {
        padding: 8px 10px 2px; }
      .footer .footer-utility .footer-sns li .fa {
        font-size: 22px;
        font-size: 2.2rem;
        line-height: 1; }
        @media screen and (max-width: 479px) {
          .footer .footer-utility .footer-sns li .fa {
            font-size: 16.9230769231px;
            font-size: 1.6923076923rem; } }
  .footer .copyright {
    margin-top: 2em;
    background: #BF1920;
    color: #fff;
    text-align: center;
    font-size: 12px;
    font-size: 1.2rem;
    padding: 1em; }
    @media screen and (max-width: 479px) {
      .footer .copyright {
        font-size: 9.2307692308px;
        font-size: 0.9230769231rem; } }
    .footer .copyright p {
      margin: 0; }

.page-top {
  /*position: fixed;
  cursor: pointer;
  right: 10px;
  bottom: 10px;*/
  text-align: center;
  color: #fff;
  width: 100%;
  margin: 2em auto 0;
  background: #000;
  /*z-index: 1000;
  
  a{
  	text-indent: -9999px;
  }*/
  /*@include mq( $pc , min ) {
  	right: 40px;
  	bottom: 100px;
  }*/ }
  .page-top img {
    width: 60px;
    margin: 0 auto; }
  .page-top a {
    display: block;
    padding: 1em; }
  .page-top:hover {
    opacity: 1; }

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

main {
  display: block; }
  @media print, screen and (min-width: 768px) {
    main {
      margin-top: 2em; } }

.container::after {
  content: "";
  display: block;
  clear: both; }
@media print, screen and (min-width: 768px) {
  .container {
    max-width: 1140px;
    margin-right: auto;
    margin-left: auto; } }
@media screen and (max-width: 767px) {
  .container {
    padding-left: 10px;
    padding-right: 10px; } }

@media print, screen and (min-width: 768px) {
  .wide-container {
    max-width: 1260px;
    margin-right: auto;
    margin-left: auto; } }
@media screen and (max-width: 767px) {
  .wide-container {
    padding-left: 10px;
    padding-right: 10px; } }

.container-breaking-out {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw); }

.top .module-header {
  width: 100%;
  position: relative; }
  .top .module-header .module-heading {
    padding: 12px 10px 13px 60px;
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
    color: #000;
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    background: #E6EAEE;
    line-height: 1;
    margin-top: 0; }
    @media screen and (max-width: 479px) {
      .top .module-header .module-heading {
        font-size: 18.4615384615px;
        font-size: 1.8461538462rem; } }
    @media screen and (max-width: 767px) {
      .top .module-header .module-heading {
        font-size: 20px;
        font-size: 2rem; } }
  @media screen and (max-width: 767px) and (max-width: 479px) {
    .top .module-header .module-heading {
      font-size: 15.3846153846px;
      font-size: 1.5384615385rem; } }

  .top .module-header .more {
    font-size: 14px;
    font-size: 1.4rem;
    width: 98px;
    position: absolute;
    right: 10px;
    top: 11px; }
    @media screen and (max-width: 479px) {
      .top .module-header .more {
        font-size: 10.7692307692px;
        font-size: 1.0769230769rem; } }
    @media screen and (max-width: 767px) {
      .top .module-header .more {
        right: 5px;
        top: 8px;
        width: 75px; } }
    .top .module-header .more a {
      color: #fff;
      text-decoration: none;
      background: #6E6E6E;
      padding: 5px 20px;
      display: inline-block;
      border-radius: 13px;
      line-height: 1; }
      .top .module-header .more a:hover, .top .module-header .more a:active, .top .module-header .more a:focus {
        color: white;
        text-decoration: none; }
      .top .module-header .more a:visited {
        color: white; }
      @media screen and (max-width: 767px) {
        .top .module-header .more a {
          padding: 5px 10px; } }
      .top .module-header .more a:before {
        content: "";
        display: inline-block;
        width: 14px;
        height: 14px;
        border-radius: 7px;
        background: #BF1920 url(../img/arrow.png) no-repeat 50% 50%;
        background-size: 4.8px auto;
        margin-right: 10px; }
.top .module-section-smallsun_news .module-heading.smallsun_news-icon {
  background: #E6EAEE url(../img/megaphone.png) no-repeat 18px 50%;
  background-size: 25px auto; }
.top .module-section-seminar .module-heading.seminar-icon {
  background: #E6EAEE url(../img/man.png) no-repeat 18px 50%;
  background-size: 35px auto; }
.top .module-section-business_semi .module-heading.business_semi-icon {
  background: #E6EAEE url(../img/note.png) no-repeat 18px 50%;
  background-size: 38px auto;
  padding-left: 70px; }
.top .module-section-yabai .module-heading.yabai-icon {
  background: #E6EAEE url(../img/people.png) no-repeat 18px 50%;
  background-size: 38px auto;
  padding-left: 70px; }
.top .module-section-yabai .summary-box .text .photo-title {
  font-weight: normal; }
  .top .module-section-yabai .summary-box .text .photo-title a {
    color: #A7171D;
    text-decoration: none; }
    .top .module-section-yabai .summary-box .text .photo-title a:hover, .top .module-section-yabai .summary-box .text .photo-title a:active, .top .module-section-yabai .summary-box .text .photo-title a:focus {
      color: #a7171d;
      text-decoration: none; }
    .top .module-section-yabai .summary-box .text .photo-title a:visited {
      color: #a7171d; }
.top .module-section-news .module-heading {
  margin-bottom: 10px; }
  .top .module-section-news .module-heading.news-icon {
    background: #E6EAEE url(../img/feed.png) no-repeat 25px 50%;
    background-size: 22px auto; }

.module-section .summary-custom {
  padding: 0;
  margin: 1em 0 2em; }
  .module-section .summary-custom li {
    list-style: none;
    margin-bottom: 1em; }
.module-section .summary-box {
  background: #F2F3F5;
  position: relative; }
  .module-section .summary-box .text-icon-cat {
    position: absolute;
    top: 0;
    left: 0; }
  .module-section .summary-box .photo {
    background: #B6B6B6; }
  .module-section .summary-box .text {
    padding: 13px; }
    .module-section .summary-box .text .photo-title {
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: bold;
      color: #595959; }
      @media screen and (max-width: 479px) {
        .module-section .summary-box .text .photo-title {
          font-size: 10.7692307692px;
          font-size: 1.0769230769rem; } }
    .module-section .summary-box .text .photo-summary {
      font-size: 13px;
      font-size: 1.3rem;
      color: #6E6E6E;
      margin-top: 5px; }
      @media screen and (max-width: 479px) {
        .module-section .summary-box .text .photo-summary {
          font-size: 10px;
          font-size: 1rem; } }
  .module-section .summary-box p {
    margin: 0;
    line-height: 1.2; }

.headline-list {
  margin: 0;
  border: none; }
  .headline-list li {
    border-bottom: 1px solid #ECEDED;
    padding: 10px 2em 10px 1em;
    background: rgba(255,255,255,0.9);
    width: 100%;
    position: relative; }
    .headline-list li:first-child {
      border-top: 1px solid #ECEDED; }
    .headline-list li:after {
      content: "";
      display: block;
      width: 5px;
      height: 5px;
      border-right: 2px solid #898989;
      border-top: 2px solid #898989;
      transform: rotate(45deg);
      position: absolute;
      top: 50%;
      right: 15px;
      margin-top: -4px; }
    .headline-list li:hover {
      background: #BF1920; }
      .headline-list li:hover:after {
        border-right: 2px solid #BF1920;
        border-top: 2px solid #BF1920; }
    .headline-list li a {
      color: #000; }
    .headline-list li .label-category {
      border: 1px solid #BF1920;
      background: none;
      color: #BF1920;
      font-size: 13px;
      font-size: 1.3rem;
      padding: 1px 10px 0;
      margin: 0 0.8em 0 1.5em;
      width: 7.5em;
      display: inline-block;
      text-align: center; }
      @media screen and (max-width: 479px) {
        .headline-list li .label-category {
          font-size: 10px;
          font-size: 1rem; } }
      .headline-list li .label-category.label-news-info {
        border: 1px solid #BF1920;
        color: #BF1920; }
      .headline-list li .label-category.label-exhibition {
        border: 1px solid #FA6E00;
        color: #FA6E00; }
      .headline-list li .label-category.label-seminar {
        border: 1px solid #00A95F;
        color: #00A95F; }
      .headline-list li .label-category.label-new-item {
        border: 1px solid #2EB4E2;
        color: #2EB4E2; }
      .headline-list li .label-category.label-personnel-recruitment {
        border: 1px solid #1D50A2;
        color: #1D50A2; }
    .headline-list li .headline-dat {
      font-size: 16px;
      font-size: 1.6rem;
      color: #BF1920; }
      @media screen and (max-width: 479px) {
        .headline-list li .headline-dat {
          font-size: 12.3076923077px;
          font-size: 1.2307692308rem; } }
    .headline-list li .headline-title {
      color: #000;
      text-decoration: none;
      font-size: 16px;
      font-size: 1.6rem;
      margin-left: 0; }
      .headline-list li .headline-title:hover, .headline-list li .headline-title:active, .headline-list li .headline-title:focus {
        color: black;
        text-decoration: none; }
      .headline-list li .headline-title:visited {
        color: black; }
      @media screen and (max-width: 479px) {
        .headline-list li .headline-title {
          font-size: 12.3076923077px;
          font-size: 1.2307692308rem; } }
      @media screen and (max-width: 767px) {
        .headline-list li .headline-title {
          display: block; } }
     .headline-list li:hover .headline-dat{
      color: #fff; }
     .headline-list li:hover .label-category{
      border:  1px solid #fff;
      color: #fff; }
     .headline-list li:hover .headline-title{
      color: #fff; }

.news .headline-list li .headline-title {
  display: block; }

.summary-default-item {
  background: #F8F8ED;
  border: 1px solid #DDDFE2;
  margin-bottom: 10px;
  padding: 10px; }
  .summary-default-item .acms-summary-image {
    width: 20%; }
  .summary-default-item .acms-summary-body p {
    margin: 0; }
  .summary-default-item .acms-summary-body .summary-title {
    font-size: 16px;
    font-size: 1.6rem; }
    @media screen and (max-width: 479px) {
      .summary-default-item .acms-summary-body .summary-title {
        font-size: 12.3076923077px;
        font-size: 1.2307692308rem; } }
    .summary-default-item .acms-summary-body .summary-title a {
      color: #A7171D;
      text-decoration: none; }
      .summary-default-item .acms-summary-body .summary-title a:hover, .summary-default-item .acms-summary-body .summary-title a:active, .summary-default-item .acms-summary-body .summary-title a:focus {
        color: #a7171d;
        text-decoration: none; }
      .summary-default-item .acms-summary-body .summary-title a:visited {
        color: #a7171d; }
  .summary-default-item .acms-summary-body .summary-detail {
    color: #6E6E6E;
    font-size: 13px;
    font-size: 1.3rem; }
    @media screen and (max-width: 479px) {
      .summary-default-item .acms-summary-body .summary-detail {
        font-size: 10px;
        font-size: 1rem; } }

#top .entry .summary {
  margin: 3em auto; }
  @media print, screen and (min-width: 768px) {
    #top .entry .summary {
      width: 80%; } }
  #top .entry .summary h2 {
    color: #BF1920;
    font-size: 34px;
    font-size: 3.4rem;
    text-align: center;
    background: none;
    padding: 0; }
    @media screen and (max-width: 479px) {
      #top .entry .summary h2 {
        font-size: 26.1538461538px;
        font-size: 2.6153846154rem; } }
    #top .entry .summary h2 span.sub-copy {
      font-size: 20px;
      font-size: 2rem;
      display: block;
      color: #000;
      line-height: 1; }
      @media screen and (max-width: 479px) {
        #top .entry .summary h2 span.sub-copy {
          font-size: 15.3846153846px;
          font-size: 1.5384615385rem; } }
  #top .entry .summary p {
    margin-top: 1em; }

.module-heading {
  margin-top: 0.4em; }

h2 .en {
  font-family: din-condensed, sans-serif;
  letter-spacing: 2px;
  color: #BF1920;
  font-size: 30px;
  font-size: 3rem; }
  @media screen and (max-width: 479px) {
    h2 .en {
      font-size: 23.0769230769px;
      font-size: 2.3076923077rem; } }

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

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

p, ul, ol, dl, h2, h3, h4, h5, table {
  margin-top: 2em;
  margin-bottom: 0; }

dd {
  margin-left: 0; }

.center {
  text-align: center; }

.left {
  text-align: left; }

.right {
  text-align: right; }

.img-r {
  margin-bottom: 10px; }
  @media screen and (max-width: 767px) {
    .img-r {
      display: block;
      margin-left: auto;
      margin-right: auto; } }
  @media print, screen and (min-width: 768px) {
    .img-r {
      float: right;
      margin-left: 30px;
      margin-bottom: 30px; } }

.img-l {
  margin-bottom: 10px; }
  @media screen and (max-width: 767px) {
    .img-l {
      display: block;
      margin-left: auto;
      margin-right: auto; } }
  @media print, screen and (min-width: 768px) {
    .img-l {
      float: left;
      margin-right: 30px;
      margin-bottom: 30px; } }

.margin--0 {
  margin: 0 !important; }

.large {
  font-size: 110%; }

.x-large {
  font-size: 140%; }
  @media screen and (max-width: 767px) {
    .x-large {
      font-size: 120%; } }

.xx-large {
  font-size: 170%; }
  @media screen and (max-width: 767px) {
    .xx-large {
      font-size: 130%; } }

.small {
  font-size: 84%; }

.x-small {
  font-size: 70%; }

em {
  color: #BF1920;
  font-weight: bold;
  font-style: normal; }

.attention {
  color: #BF1920; }

.fileicon {
  padding-left: 10px;
  padding-right: 10px; }

.fileicon:after {
  font-family: FontAwesome;
  display: inline-block;
  padding-left: 3px; }

.fileicon--docx:after {
  content: "\f1c2"; }

.fileicon--xlsx:after {
  content: "\f1c3"; }

.fileicon--pptx:after {
  content: "\f1c4"; }

.fileicon--pdf:after {
  content: "\f1c1"; }

.fileicon--zip:after {
  content: "\f1c6"; }

.page-title-wrapper {
  background: url("../img/bg_pagetitle.jpg") no-repeat center;
  background-size: cover; }
  .page-title-wrapper .page-title {
    margin: 0;
    padding: 30px 0;
    font-size: 18px;
    text-align: center;
    color: #000;
    font-size: 26px;
    font-size: 2.6rem;
    line-height: 1.3;
    font-weight: bold;
    font-family: din-condensed, sans-serif;
    letter-spacing: 3px; }
    @media screen and (max-width: 479px) {
      .page-title-wrapper .page-title {
        font-size: 20px;
        font-size: 2rem; } }
    @media print, screen and (min-width: 768px) {
      .page-title-wrapper .page-title {
        font-size: 34px;
        font-size: 3.4rem;
        padding: 55px 0; } }
  @media screen and (min-width: 768px) and (max-width: 479px) {
    .page-title-wrapper .page-title {
      font-size: 26.1538461538px;
      font-size: 2.6153846154rem; } }

    .page-title-wrapper .page-title .page-title-red {
      color: #BF1920;
      font-size: 26px;
      font-size: 2.6rem;
      display: block; }
      @media screen and (max-width: 479px) {
        .page-title-wrapper .page-title .page-title-red {
          font-size: 20px;
          font-size: 2rem; } }
      @media print, screen and (min-width: 768px) {
        .page-title-wrapper .page-title .page-title-red {
          font-size: 34px;
          font-size: 3.4rem; } }
  @media screen and (min-width: 768px) and (max-width: 479px) {
    .page-title-wrapper .page-title .page-title-red {
      font-size: 26.1538461538px;
      font-size: 2.6153846154rem; } }

    .page-title-wrapper .page-title .page-title-sub {
      font-size: 18px;
      font-size: 1.8rem;
      color: #000;
      display: block;
      font-weight: normal;
      letter-spacing: normal; }
      @media screen and (max-width: 479px) {
        .page-title-wrapper .page-title .page-title-sub {
          font-size: 13.8461538462px;
          font-size: 1.3846153846rem; } }
  .page-title-wrapper.company-title .page-title {
    line-height: 1.2; }
  .page-title-wrapper.company-title .page-title-red {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 3px;
    font-weight: normal; }
    @media screen and (max-width: 479px) {
      .page-title-wrapper.company-title .page-title-red {
        font-size: 13.8461538462px;
        font-size: 1.3846153846rem; } }
  .page-title-wrapper.company-title .page-title-sub {
    font-size: 26px;
    font-size: 2.6rem;
    font-weight: bold;
    letter-spacing: 3px; }
    @media screen and (max-width: 479px) {
      .page-title-wrapper.company-title .page-title-sub {
        font-size: 20px;
        font-size: 2rem; } }
    @media print, screen and (min-width: 768px) {
      .page-title-wrapper.company-title .page-title-sub {
        font-size: 34px;
        font-size: 3.4rem; } }
  @media screen and (min-width: 768px) and (max-width: 479px) {
    .page-title-wrapper.company-title .page-title-sub {
      font-size: 26.1538461538px;
      font-size: 2.6153846154rem; } }

.list-box-01 {
  margin-top: 2em; }
  .list-box-01 a {
    color: #333;
    text-decoration: none;
    display: block;
    position: relative; }
    .list-box-01 a:hover, .list-box-01 a:active, .list-box-01 a:focus {
      color: #333333;
      text-decoration: none; }
    .list-box-01 a:visited {
      color: #333333; }
    .list-box-01 a .thumb {
      overflow: hidden; }
      .list-box-01 a .thumb img {
        display: block; }
    .list-box-01 a .body {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      background-image: -moz-linear-gradient(90deg, black 0%, rgba(0, 0, 0, 0) 100%);
      background-image: -webkit-linear-gradient(90deg, black 0%, rgba(0, 0, 0, 0) 100%);
      background-image: -ms-linear-gradient(90deg, black 0%, rgba(0, 0, 0, 0) 100%);
      color: #fff;
      text-align: center;
      padding: 30px 10px 10px 10px; }
      .list-box-01 a .body .title {
        margin: 10px 0 0;
        font-size: 14px; }
    .list-box-01 a:hover .thumb img {
      transform: scale(1.1);
      transition-duration: 0.3s; }

ul.list-box-02-list {
  -js-display: flex;
  display: -webkit-flex;
  display: flex;
  padding: 0; }
  ul.list-box-02-list li.list-box-02-item {
    width: 25%;
    list-style: none; }
    ul.list-box-02-list li.list-box-02-item .list-box-02 {
      display: inline-block;
      position: relative; }
      ul.list-box-02-list li.list-box-02-item .list-box-02 .thumb {
        overflow: hidden;
        margin: 0; }
        ul.list-box-02-list li.list-box-02-item .list-box-02 .thumb img {
          display: block;
          transition-duration: 0.3s; }
      ul.list-box-02-list li.list-box-02-item .list-box-02 .body {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        color: #fff;
        text-align: center;
        -js-display: flex;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        align-items: center; }
        ul.list-box-02-list li.list-box-02-item .list-box-02 .body .title {
          margin: 0;
          font-size: 24px; }
      ul.list-box-02-list li.list-box-02-item .list-box-02:hover .thumb img {
        transform: scale(1.1);
        transition-duration: 0.3s; }

.btn-01 {
  font-weight: bold;
  padding: 10px 100px;
  display: inline-block;
  color: #000;
  text-decoration: none;
  border: 2px solid #000;
  transition: all  0.3s ease;
  text-align: center; }
  .btn-01:hover, .btn-01:active, .btn-01:focus {
    color: black;
    text-decoration: none; }
  .btn-01:visited {
    color: black; }
  .btn-01::after {
    font-family: ionicons;
    content: "";
    display: inline-block;
    margin-left: 7px; }
  .btn-01:hover {
    background: #000;
    color: #fff; }
  @media print, screen and (min-width: 768px) {
    .btn-01 + .btn-01 {
      margin-left: 10px; } }

.btn {
  display: block;
  text-align: center;
  line-height: 1;
  padding: 0.7em 1.5em;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold; }
  @media screen and (max-width: 479px) {
    .btn {
      font-size: 12.3076923077px;
      font-size: 1.2307692308rem; } }
  .btn:hover {
    text-decoration: none;
    background: white; }
  @media screen and (max-width: 991px) {
    .btn {
      font-size: 18px;
      font-size: 1.8rem;
      padding: 0.75em 3em; } }
  @media screen and (max-width: 991px) and (max-width: 479px) {
    .btn {
      font-size: 13.8461538462px;
      font-size: 1.3846153846rem; } }

  .btn__white {
    border: 1px solid #BF1920;
    color: #BF1920;
    position: relative;
    /*&:before {
        @include font-awesome('\f105');
        display: inline-block;
        margin-right: 0.5em;
        font-weight: bold;
        font-size: 125%;
    }*/ }
    .btn__white:after {
      content: "";
      display: block;
      width: 8px;
      height: 8px;
      border-right: 1px solid #BF1920;
      border-top: 1px solid #BF1920;
      transform: rotate(45deg);
      position: absolute;
      top: 50%;
      right: 15px;
      margin-top: -4px; }
    .btn__white:hover {
      background: #BF1920;
      color: #fff; }
  .btn__white__red {
    border: 1px solid #BF1920;
    background: #fff;
    color: #BF1920;
    position: relative;
    /*&:before {
        @include font-awesome('\f105');
        display: inline-block;
        margin-right: 0.5em;
        font-weight: bold;
        font-size: 125%;
    }*/ }
    .btn__white__red:after {
      content: "";
      display: block;
      width: 8px;
      height: 8px;
      border-right: 1px solid #BF1920;
      border-top: 1px solid #BF1920;
      transform: rotate(45deg);
      position: absolute;
      top: 50%;
      right: 15px;
      margin-top: -4px; }
    .btn__white__red:hover {
      background: #BF1920;
      color: #fff; }
  .btn__red {
    border: 1px solid #BF1920;
    background: #BF1920;
    color: #fff;
    position: relative; }
    .btn__red:after {
      content: "";
      display: block;
      width: 8px;
      height: 8px;
      border-right: 1px solid #fff;
      border-top: 1px solid #fff;
      transform: rotate(45deg);
      position: absolute;
      top: 50%;
      right: 15px;
      margin-top: -5px; }
    .btn__red:hover {
      background: #fff;
      color: #BF1920; }
  .btn__big {
    border: 3px solid #BF1920;
    color: #BF1920;
    padding: 0.75em 1.5em;
    border-radius: 1.75em; }
    .btn__big:before {
      font-family: FontAwesome;
      content: "";
      display: inline-block;
      margin-right: 0.5em;
      font-weight: bold;
      font-size: 125%; }
  .btn__small {
    display: inline-block;
    margin: 0 auto;
    padding: 0.5em 2.5em 0.6em;
    font-family: din-condensed, sans-serif;
    font-weight: lighter;
    letter-spacing: 3px; }

.section-btn-list {
  text-align: center; }
  .section-btn-list::after {
    content: "";
    display: block;
    clear: both; }
  @media print, screen and (min-width: 768px) {
    .section-btn-list {
      -js-display: flex;
      display: -webkit-flex;
      display: flex; } }
  .section-btn-list .section-btn {
    display: inline-block;
    text-align: center;
    margin: 2em 1em; }
    @media print, screen and (min-width: 768px) {
      .section-btn-list .section-btn {
        width: 33.333%; } }
    @media screen and (max-width: 767px) {
      .section-btn-list .section-btn {
        margin: 2em 1em 0; } }
    .section-btn-list .section-btn .btn {
      display: block;
      text-align: center;
      line-height: 1;
      padding: 0.7em 0;
      position: relative;
      font-weight: normal;
      color: #BF1920;
      border: 1px solid #BF1920;
      letter-spacing: 2px; }
    .section-btn-list .section-btn .btn2 {
      display: block;
      text-align: center;
      line-height: 1;
      padding: 0.7em 0;
      position: relative;
      font-weight: normal;
      color:white;
      background:#BF1920;
      border: 1px solid #BF1920;
      letter-spacing: 2px; }
      .section-btn-list .section-btn .btn:hover {
        text-decoration: none;
        background: white; }
      .section-btn-list .section-btn .btn:after {
        content: "";
        display: block;
        width: 5px;
        height: 5px;
        border-right: 2px solid #BF1920;
        border-top: 2px solid #BF1920;
        transform: rotate(45deg);
        position: absolute;
        top: 50%;
        right: 15px;
        margin-top: -4px; }
      @media screen and (max-width: 767px) {
        .section-btn-list .section-btn .btn {
          padding: 0.7em 2em; } }
          
.section-btn-list2 {
  text-align: center; }
  .section-btn-list2::after {
    content: "";
    display: block;
    clear: both; }
  @media print, screen and (min-width: 768px) {
    .section-btn-list2 {
      -js-display: flex;
      display: -webkit-flex;
      display: flex; } }
  .section-btn-list2 .section-btn {
    display: inline-block;
    text-align: center;
    margin: 2em 1em; }
    @media print, screen and (min-width: 768px) {
      .section-btn-list2 .section-btn {
        width: 70%; } }
    @media screen and (max-width: 767px) {
      .section-btn-list2 .section-btn {
        margin: 2em 1em 0; } }
    .section-btn-list2 .section-btn .btn {
      display: block;
      text-align: center;
      line-height: 1;
      padding: 0.7em 0;
      position: relative;
      font-weight: normal;
      color: #BF1920;
      border: 1px solid #BF1920;
      letter-spacing: 2px; }
    .section-btn-list2 .section-btn .btn2 {
      display: block;
      text-align: center;
      line-height: 1;
      padding: 0.7em 0;
      position: relative;
      font-weight: normal;
      color:white;
      background:#BF1920;
      border: 1px solid #BF1920;
      letter-spacing: 2px; }
      .section-btn-list2 .section-btn .btn:hover {
        text-decoration: none;
        background: white; }
      .section-btn-list2 .section-btn .btn:after {
        content: "";
        display: block;
        width: 5px;
        height: 5px;
        border-right: 2px solid #BF1920;
        border-top: 2px solid #BF1920;
        transform: rotate(45deg);
        position: absolute;
        top: 50%;
        right: 15px;
        margin-top: -4px; }
      @media screen and (max-width: 767px) {
        .section-btn-list2 .section-btn .btn {
          padding: 0.7em 2em; } }
          
.box {
  border: 1px solid #C8C8C8; }
  .box .title {
    background: #BF1920;
    color: #fff;
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    background: none;
    margin: 0 !important;
    padding: 10px 15px; }
    @media screen and (max-width: 479px) {
      .box .title {
        font-size: 18.4615384615px;
        font-size: 1.8461538462rem; } }
  .box .title-small {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    background: none;
    color: #000; }
    @media screen and (max-width: 479px) {
      .box .title-small {
        font-size: 13.8461538462px;
        font-size: 1.3846153846rem; } }
  .box .summary {
    padding: 15px;
    font-size: 14px;
    font-size: 1.4rem; }
    @media screen and (max-width: 479px) {
      .box .summary {
        font-size: 10.7692307692px;
        font-size: 1.0769230769rem; } }

.gray-box {
  background: #F2F3F3;
  padding: 1.6em 1.6em 0.6em;
  text-align: center;
  border: none; }
  .gray-box .title {
    text-align: center;
    font-size: 22px;
    font-size: 2.2rem;
    font-weight: bold;
    text-align: center;
    background: none;
    color: #000;
    margin: 0; }
    @media screen and (max-width: 479px) {
      .gray-box .title {
        font-size: 16.9230769231px;
        font-size: 1.6923076923rem; } }
    .gray-box .title:after {
      content: "";
      display: block;
      background: #BF1920;
      height: 2px;
      width: 50px;
      margin: 10px auto; }
  .gray-box p {
    font-size: 15px;
    font-size: 1.5rem;
    text-align: center;
    margin: 1em 0; }
    @media screen and (max-width: 479px) {
      .gray-box p {
        font-size: 11.5384615385px;
        font-size: 1.1538461538rem; } }

.decoration-box {
  background: #fff;
  padding: 1.6em 2em 2em;
  border: 2px solid #BF1920; }

.decoration-box-red {
  background: #BF1920;
  padding: 1.6em 2em 2em;
  color: #fff; }

article.entry table {
  width: 100%;
  table-layout: fixed;
  word-break: break-all;
  word-wrap: break-all;
  border-collapse: collapse; }
  article.entry table th, article.entry table td {
    border: 1px solid #D6D6D6;
    padding: 1em;
    box-sizing: border-box; }
  article.entry table thead {
    background: #BF1920;
    color: #fff;
    text-align: center; }
    article.entry table thead th {
      color: #fff; }
  article.entry table tbody th {
    background: #fff;
    color: #BF1920;
    text-align: center;
    font-weight: bold; }
  @media print, screen and (min-width: 768px) {
    article.entry table tbody td img.company-name {
      width: 20%; } }
  article.entry table.gray-table {
    margin-top: 1em; }
    article.entry table.gray-table tbody th {
      background: #F2F3F3;
      color: #414B50; }
      @media print, screen and (min-width: 768px) {
        article.entry table.gray-table tbody th {
          width: 20%; } }
  article.entry table.seminar-table {
    margin-top: 0; }
    article.entry table.seminar-table tbody th {
      background: #F2F3F3;
      color: #414B50; }
      @media screen and (max-width: 767px) {
        article.entry table.seminar-table tbody th {
          display: block;
          width: 100%; } }
      @media print, screen and (min-width: 768px) {
        article.entry table.seminar-table tbody th {
          width: 11%;
          table-layout: fixed;
          -moz-text-align-last: justify;
          text-align-last: justify;
          text-align: justify;
          text-justify: inter-ideograph; } }
    @media screen and (max-width: 767px) {
      article.entry table.seminar-table tbody td {
        display: block;
        width: 100%; } }
  article.entry table.red-table {
    margin-top: 0; }
    article.entry table.red-table tbody th {
      background: #BF1920;
      color: #fff; }
      @media print, screen and (min-width: 768px) {
        article.entry table.red-table tbody th {
          width: 20%; } }
  article.entry table.table-noborder {
    border: none; }
    article.entry table.table-noborder th, article.entry table.table-noborder td {
      border: none;
      padding: 0;
      color: #414B50;
      text-align: left;
      vertical-align: top; }

.entry-title {
  font-size: 30px; }

h2.h2-01 {
  text-align: center;
  font-weight: normal;
  font-size: 30px; }

.heading-01 {
  text-align: center; }
  .heading-01 h2 {
    letter-spacing: 0.5em; }
  .heading-01 .lead {
    color: #BF1920;
    font-size: 12px;
    margin-top: 3px; }

.container h2 {
  color: #BF1920;
  text-align: left;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: bold; }
  @media screen and (max-width: 479px) {
    .container h2 {
      font-size: 26.1538461538px;
      font-size: 2.6153846154rem; } }
  .container h2 .red {
    color: #BF1920; }
.container h3 {
  color: #000;
  text-align: left;
  font-size: 30px;
  font-size: 3rem;
  font-weight: bold; }
  @media screen and (max-width: 479px) {
    .container h3 {
      font-size: 23.0769230769px;
      font-size: 2.3076923077rem; } }
.container h4 {
  background: url(../img/bg_titleh4.png) no-repeat bottom left;
  background-size: auto 3px;
  color: #000;
  text-align: left;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  padding-bottom: 0.4em; }
  @media screen and (max-width: 479px) {
    .container h4 {
      font-size: 16.9230769231px;
      font-size: 1.6923076923rem; } }
  .container h4 .red {
    color: #BF1920; }
.container h5 {
  color: #000;
  text-align: left;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold; }
  @media screen and (max-width: 479px) {
    .container h5 {
      font-size: 15.3846153846px;
      font-size: 1.5384615385rem; } }
.container h6 {
  color: #BF1920;
  text-align: left;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 0 !important; }
  @media screen and (max-width: 479px) {
    .container h6 {
      font-size: 13.8461538462px;
      font-size: 1.3846153846rem; } }
.container .center-title {
  text-align: center; }
.container .main-copy {
  font-weight: normal;
  font-size: 22px;
  font-size: 2.2rem;
  text-align: center;
  color: #BF1920;
  width: 80%;
  margin: 2em auto; }
  @media screen and (max-width: 479px) {
    .container .main-copy {
      font-size: 16.9230769231px;
      font-size: 1.6923076923rem; } }
  .container .main-copy__custom {
    margin: 2em 0 0 0;
    width: 100%; }
.container .sub-copy {
  font-size: 20px;
  font-size: 2rem;
  text-align: center;
  color: #000;
  margin: 0; }
  @media screen and (max-width: 479px) {
    .container .sub-copy {
      font-size: 15.3846153846px;
      font-size: 1.5384615385rem; } }

.topicpath {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  margin: 0;
  background: #000;
  color: #BF1920;
  padding: 0.5em 0; }
  @media screen and (max-width: 479px) {
    .topicpath {
      font-size: 10px;
      font-size: 1rem; } }
  @media screen and (max-width: 767px) {
    .topicpath {
      display: none; } }
  .topicpath ol {
    margin: 0;
    padding: 12px; }
    .topicpath ol::after {
      content: "";
      display: block;
      clear: both; }
  .topicpath li {
    list-style: none;
    margin: 0;
    display: inline-block; }
    .topicpath li a {
      color: #fff;
      text-decoration: none; }
      .topicpath li a:hover, .topicpath li a:active, .topicpath li a:focus {
        color: white;
        text-decoration: none; }
      .topicpath li a:visited {
        color: white; }
  .topicpath li:not(:last-child):after {
    content: ' > ';
    color: #fff; }

.list-within {
  padding-left: 0; }
  .list-within li {
    list-style: none;
    display: inline-block;
    margin-left: 10px;
    margin-right: 10px; }
    .list-within li a {
      position: relative;
      display: inline-block;
      text-decoration: none;
      color: #000;
      text-decoration: none; }
      .list-within li a:hover, .list-within li a:active, .list-within li a:focus {
        color: black;
        text-decoration: none; }
      .list-within li a:visited {
        color: black; }
      .list-within li a::before {
        color: #BF1920;
        font-family: FontAwesome;
        content: "";
        display: inline-block;
        margin-right: 5px; }
      .list-within li a::after {
        position: absolute;
        bottom: -4px;
        left: 0;
        content: '';
        width: 100%;
        height: 1px;
        background: #BF1920;
        transform: scale(0, 1);
        transform-origin: left top;
        transition: transform .3s; }
      .list-within li a:hover::after {
        transform: scale(1, 1); }

.list {
  padding-left: 0; }
  .list li {
    list-style: none;
    /*position: relative;*/ }
    .list li:before {
      font-family: FontAwesome;
      content: "";
      display: inline-block;
      padding-right: 1em;
      /*position: absolute;
      top: 8px;
      left: 0;*/
      font-size: 1rem;
      line-height: 1;
      color: #BF1920; }

.list-side {
  padding-left: 0; }
  .list-side li {
    padding-left: 1em;
    list-style: none;
    display: inline-block; }
    .list-side li:before {
      color: #BF1920;
      font-family: FontAwesome;
      content: "";
      display: inline-block;
      margin-right: 5px;
      font-size: 10px;
      font-size: 1rem; }
      @media screen and (max-width: 479px) {
        .list-side li:before {
          font-size: 7.6923076923px;
          font-size: 0.7692307692rem; } }

.list-arrow {
  padding-left: 0; }
  .list-arrow li {
    font-size: 14px;
    font-size: 1.4rem;
    list-style: none;
    /*position: relative;*/ }
    @media screen and (max-width: 479px) {
      .list-arrow li {
        font-size: 10.7692307692px;
        font-size: 1.0769230769rem; } }
    .list-arrow li:before {
      font-family: FontAwesome;
      content: "";
      display: inline-block;
      padding-right: 0.3em;
      /*position: absolute;
      top: 0.9em;
      left: 0;*/
      margin-top: -0.5em;
      font-size: 1.3rem;
      line-height: 1;
      color: #BF1920; }
    .list-arrow li ul {
      margin-top: 0;
      padding-left: 1em; }
      .list-arrow li ul li:before {
        font-size: 1rem; }

.tab-list-large {
  padding: 1em 0 0;
  border-bottom: 1px solid #BF1920; }
  .tab-list-large .tab-item {
    font-size: 16px;
    font-size: 1.6rem;
    color: #fff;
    margin: 0 !important;
    display: inline-block; }
    @media screen and (max-width: 479px) {
      .tab-list-large .tab-item {
        font-size: 12.3076923077px;
        font-size: 1.2307692308rem; } }
    @media screen and (max-width: 767px) {
      .tab-list-large .tab-item {
        margin-bottom: 5px !important; } }
    .tab-list-large .tab-item a {
      color: #BF1920;
      background: #fff;
      padding: 1em;
      border: 1px solid #BF1920;
      display: block; }
      @media print, screen and (min-width: 768px) {
        .tab-list-large .tab-item a {
          border-bottom: none; } }
    .tab-list-large .tab-item .stay a {
      color: #fff;
      background: #BF1920; }
    .tab-list-large .tab-item p {
      margin: 0; }

.tab-list {
  background: #BF1920;
  padding: 1em 0; }
  .tab-list .tab-item {
    font-size: 16px;
    font-size: 1.6rem;
    color: #333;
    margin: 0 1em;
    display: inline-block;
    /*.stay{
    	a{
    		color: #333;
    	}
    }*/ }
    @media screen and (max-width: 479px) {
      .tab-list .tab-item {
        font-size: 12.3076923077px;
        font-size: 1.2307692308rem; } }
    .tab-list .tab-item a {
      color: #fff; }
    .tab-list .tab-item p {
      margin: 0; }

.no-roman {
  counter-reset: ol_li;
  padding-left: 2em; }
  .no-roman li {
    list-style-type: none; }
    .no-roman li:before {
      margin-right: .5em;
      counter-increment: ol_li;
      /* ol_li カウンタの値に1加える */
      content: counter(ol_li,upper-roman) ".";
      /* before擬似要素のcontentで出力 */
      color: #BF1920;
      /* 色を変更 */
      width: 1.5em;
      text-align: center;
      display: inline-block; }

.red-list {
  font-size: 14px;
  font-size: 1.4rem; }
  @media screen and (max-width: 479px) {
    .red-list {
      font-size: 10.7692307692px;
      font-size: 1.0769230769rem; } }
  .red-list dt {
    color: #BF1920;
    font-weight: bold; }
  .red-list dd {
    padding-left: 2em; }

.check {
  padding-left: 0; }
  .check li {
    background: url(../img/icon_check.png) no-repeat 0 3px;
    background-size: 18px auto;
    list-style-type: none;
    padding-left: 1.5em; }

.horizonal dt {
  float: left;
  padding: 8px 8px 8px 0;
  font-weight: bold;
  background: none;
  font-size: 92%; }
  @media screen and (max-width: 767px) {
    .horizonal dt {
      float: none; } }
.horizonal dd {
  padding: 8px 15px 8px 5em; }
  @media screen and (max-width: 767px) {
    .horizonal dd {
      padding-left: 0; } }

[class*=acms-col-] .list-arrow {
  margin-left: 10px;
  margin-right: 10px; }

/* ------------------------------
　　スライダー
------------------------------ */
.slick-slider {
  padding: 0 0 12px 0;
  margin-bottom: 0; }
  .slick-slider img {
    margin: 0 auto; }

.fix-height {
  height: 300px;
  /* はじめのちらつき防止 */
  overflow: hidden;
  /* はじめのちらつき防止 */ }

.slick-slide:hover {
  cursor: pointer; }

.slick-list:focus:focus {
  position: relative; }
  .slick-list:focus:focus:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1; }

.js-slider .slick-list:focus {
  position: relative; }
  .js-slider .slick-list:focus:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1; }

.main-slider-image {
  height: 300px;
  background: no-repeat center #333;
  background-size: cover; }
  .main-slider-image a:hover {
    text-decoration: none; }

.main-slider-text-outer {
  height: 100%; }

.main-slider-text-wrap {
  display: table;
  width: 100%;
  height: 100%; }

.main-slider-text-inner {
  display: table-cell;
  padding: 0 20px;
  text-align: center;
  vertical-align: middle; }

.main-slider-main-copy {
  margin: 0;
  color: #FFF;
  font-weight: bold;
  font-size: 34px;
  font-size: 3.4rem;
  font-family: din-condensed, sans-serif;
  letter-spacing: 8px;
  line-height: 1; }
  @media screen and (max-width: 479px) {
    .main-slider-main-copy {
      font-size: 26.1538461538px;
      font-size: 2.6153846154rem; } }

.main-slider-side-copy {
  margin: 0;
  color: #FFF;
  font-size: 15px;
  font-size: 1.5rem; }
  @media screen and (max-width: 479px) {
    .main-slider-side-copy {
      font-size: 11.5384615385px;
      font-size: 1.1538461538rem; } }

/* ちらつき防止 */
.slick-track,
.slick-list {
  -webkit-transform: translateZ(0);
  -webkit-perspective: 1000; }

/* 矢印ナビゲーション */
.slick-prev,
.slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 19px;
  height: 60px;
  margin-top: -29px;
  padding: 0;
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent; }
  .slick-prev:focus,
  .slick-next:focus {
    border: 1px dotted #FFF; }

.slick-prev {
  left: 10px;
  background: url("../../images/marker/icon_white_arrow_left.png") no-repeat; }

.slick-next {
  right: 10px;
  background: url("../../images/marker/icon_white_arrow_right.png") no-repeat; }

/* ドットのナビゲーション */
.slick-dots {
  /*position: relative;*/
  bottom: 20px;
  clear: both;
  margin: -35px 0 0 0;
  padding: 0;
  list-style: none;
  text-align: center; }

.slick-dots li {
  display: inline-block;
  list-style: none; }

.slick-dots li button {
  content: "";
  position: relative;
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  font-size: 0;
  background: #FFF;
  border-radius: 5px;
  border: 1px solid transparent; }
  .slick-dots li button:before {
    content: none; }

.slick-dots li button:focus {
  outline: 0;
  border: 1px solid #BF1920; }

.slick-dots li:hover button {
  cursor: pointer; }

.slick-dots li.slick-active button {
  background: #BF1920; }

.slick-dots button {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0); }

#autoplay-btn {
  position: absolute;
  right: 10px;
  right: calc(10px + constant(safe-area-inset-right));
  bottom: 10px;
  width: 50px;
  height: 50px;
  color: #FFF;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.7);
  outline: 0;
  z-index: 1; }
  #autoplay-btn:hover {
    background: rgba(0, 0, 0, 0.9); }
  #autoplay-btn:active:before, #autoplay-btn:focus:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: 1px dotted #FFF; }
  #autoplay-btn:after {
    content: "";
    position: absolute;
    top: 15px;
    left: 17px;
    display: block;
    box-sizing: border-box;
    width: 16px;
    height: 20px;
    margin-left: 0;
    border-top: none;
    border-right: 5px solid #FFF;
    border-bottom: none;
    border-left: 5px solid #FFF; }
  #autoplay-btn.active:after {
    left: 15px;
    width: 0;
    height: 0;
    margin-left: 5px;
    border-style: solid;
    border-width: 10px 0 10px 15px;
    border-color: transparent transparent transparent #FFF; }

@media print, screen and (min-width: 768px) {
  .slick-prev {
    left: 50px; }

  .slick-next {
    right: 50px; }

  .fix-height {
    width: 1388px;
    height: 550px;
    /* はじめのちらつき防止 */ }

  .main-slider-image {
    width: 1388px;
    height: 550px;  }

  .main-slider-main-copy {
    font-size: 40px;
    font-size: 4rem; } }
  @media screen and (min-width: 768px) and (max-width: 479px) {
    .main-slider-main-copy {
      font-size: 30.7692307692px;
      font-size: 3.0769230769rem; } }

@media print, screen and (min-width: 768px) {
  .main-slider-side-copy {
    font-size: 16px;
    font-size: 1.6rem; } }
  @media screen and (min-width: 768px) and (max-width: 479px) {
    .main-slider-side-copy {
      font-size: 12.3076923077px;
      font-size: 1.2307692308rem; } }

@media print, screen and (min-width: 768px) {
  .index-list {
    margin-left: -1em;
    margin-right: -1em;
    -js-display: flex;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    justify-content: flex-start; }
    .index-list .index-item {
      width: 100%; } }

.index-list2 {
  margin-left: -1.1em;
  margin-right: -1.1em; }

.index-list3 {
  width: 90%;
  margin: 2em auto; }

.index-item {
  padding: 1em; }
  .index-item .index-item-thumb {
    margin-top: 0; }
  .index-item .index-item-title {
    font-weight: bold;
    font-size: 18px;
    font-size: 1.8rem;
    margin-top: 0.5em; }
    @media screen and (max-width: 479px) {
      .index-item .index-item-title {
        font-size: 13.8461538462px;
        font-size: 1.3846153846rem; } }
  .index-item .index-item-summary {
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 0; }
    @media screen and (max-width: 479px) {
      .index-item .index-item-summary {
        font-size: 12.3076923077px;
        font-size: 1.2307692308rem; } }
  .index-item .index-item-imgr {
    width: 160px;
    float: right;
    margin: 0 0 1em 1em;
    text-align: center; }
    .index-item .index-item-imgr span {
      font-size: 15px;
      font-size: 1.5rem;
      text-align: center; }
      @media screen and (max-width: 479px) {
        .index-item .index-item-imgr span {
          font-size: 11.5384615385px;
          font-size: 1.1538461538rem; } }
      .index-item .index-item-imgr span::before {
        color: #BF1920;
        font-family: FontAwesome;
        content: "";
        display: inline-block;
        margin-right: 5px;
        font-size: 10px;
        font-size: 1rem; }
        @media screen and (max-width: 479px) {
          .index-item .index-item-imgr span::before {
            font-size: 7.6923076923px;
            font-size: 0.7692307692rem; } }
  .index-item .index-box {
    border: 1px solid #C8C8C8;
    height: 100%; }
    @media print, screen and (min-width: 768px) {
      .index-item .index-box {
        width: 100%; } }
    @media print, screen and (min-width: 992px) {
      .index-item .index-box {
        width: 339px; } }
    .index-item .index-box__title {
      background: #BF1920;
      color: #fff;
      margin: 0;
      padding: 5px 1em;
      font-size: 18px;
      font-size: 1.8rem;
      font-weight: bold; }
      @media screen and (max-width: 479px) {
        .index-item .index-box__title {
          font-size: 13.8461538462px;
          font-size: 1.3846153846rem; } }
    .index-item .index-box__summary {
      padding: 0.8em 1em; }
      .index-item .index-box__summary p {
        margin: 0; }
    .index-item .index-box.index-box-green .index-box__title {
      background: #33A97E; }
  .index-item .index-box-noborder {
    height: 100%;
    position: relative; }
    @media print, screen and (min-width: 768px) {
      .index-item .index-box-noborder {
        width: 100%; } }
    @media print, screen and (min-width: 992px) {
      .index-item .index-box-noborder {
        width: 339px; } }
    .index-item .index-box-noborder__title {
      border-bottom: 2px solid #BF1920;
      margin: 0;
      padding: 5px 1em;
      font-size: 18px;
      font-size: 1.8rem;
      font-weight: bold; }
      @media screen and (max-width: 479px) {
        .index-item .index-box-noborder__title {
          font-size: 13.8461538462px;
          font-size: 1.3846153846rem; } }
    .index-item .index-box-noborder__summary {
      padding: 0.8em 0; }
      .index-item .index-box-noborder__summary p {
        margin: 0; }
    .index-item .index-box-noborder__bottom {
      background: #BF1920;
      color: #fff;
      margin: 0;
      padding: 5px 1em;
      font-size: 18px;
      font-size: 1.8rem;
      font-weight: bold;
      width: 100%;
      position: absolute;
      bottom: 0; }
      @media screen and (max-width: 479px) {
        .index-item .index-box-noborder__bottom {
          font-size: 13.8461538462px;
          font-size: 1.3846153846rem; } }

@media print, screen and (min-width: 768px) {
  .index-list2 {
    -js-display: flex;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-start; } }

.index-item2 {
  padding: 0 0.5em 1em 1em; }
  @media print, screen and (min-width: 992px) {
    .index-item2 {
      width: 50%; } }

.index-box-gray {
  border: 1px solid #C8C8C8;
  height: 100%; }
  @media print, screen and (min-width: 768px) {
    .index-box-gray {
      width: 100%; } }
  @media print, screen and (min-width: 992px) {
    .index-box-gray {
      width: 254px; } }
  .index-box-gray__title {
    background: #898989;
    color: #fff;
    margin: 0;
    padding: 5px 1em;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center; }
    @media screen and (max-width: 479px) {
      .index-box-gray__title {
        font-size: 12.3076923077px;
        font-size: 1.2307692308rem; } }
  .index-box-gray__summary {
    padding: 0.8em 1em;
    font-size: 13px;
    font-size: 1.3rem; }
    @media screen and (max-width: 479px) {
      .index-box-gray__summary {
        font-size: 10px;
        font-size: 1rem; } }
    .index-box-gray__summary p {
      margin: 0; }

@media print, screen and (min-width: 992px) {
  [class*=acms-col-] .index-box-gray,
  [class*=acms-col-] .index-box-noborder {
    width: 100%; } }

/* ------------------------------
　　お問い合わせ
------------------------------ */
.contact-box .message {
  margin: 0 0 35px 0;
  font-weight: bold; }
.contact-box .contact-no {
  margin: 0;
  font-size: 30px;
  font-size: 3rem;
  font-weight: bold;
  color: #333; }
  @media screen and (max-width: 479px) {
    .contact-box .contact-no {
      font-size: 23.0769230769px;
      font-size: 2.3076923077rem; } }
  .contact-box .contact-no a {
    color: inherit; }
.contact-box .error-text {
  /* エラー文 */
  margin: 5px 0 0 0;
  color: red; }

.contact-form {
  width: 100%;
  margin: 2em 0 20px 0;
  padding: 0;
  list-style: none;
  background: #E5E5E5; }

.contact-form-group {
  background: #E5E5E5; }

.contact-form-label {
  display: block;
  text-align: left;
  margin: 0;
  padding-left: 2em !important; }

.contact-form-control {
  display: block;
  padding: 10px;
  border-bottom: 1px solid #FFF; }

.contact-form-label {
  font-weight: bold; }

.contact-form-grid {
  margin: 0 -5px; }

.contact-form-col,
.acms-entry .contact-form-col {
  margin: 0 0 10px 0;
  padding: 0 5px; }
  .contact-form-col:last-child,
  .acms-entry .contact-form-col:last-child {
    margin: 0; }

@media print, screen and (min-width: 768px) {
  .contact-form {
    display: table;
    width: 100%; }

  .contact-form-group {
    display: table-row; }

  .contact-form-label,
  .contact-form-control {
    display: table-cell; }

  .contact-form-label {
    width: 33.3333333333%;
    padding: 25px 15px 15px 15px;
    vertical-align: top;
    border-bottom: 1px solid #FFF; }

  .contact-form-control {
    width: 66.6666666667%;
    }

  .contact-form-col {
    margin: 0; } }
/* ステップ
------------------------------ */
.contact-box .mail-step {
  margin: 0 0 35px 0;
  padding: 0 10px;
  /* カウンターの設定 */
  counter-reset: mailStep; }
.contact-box .mail-step-item {
  float: left;
  list-style: none;
  margin: 0 10px;
  padding: 18px 0 14px;
  color: #999;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  border-bottom: 4px solid transparent; }
  @media screen and (max-width: 479px) {
    .contact-box .mail-step-item {
      font-size: 12.3076923077px;
      font-size: 1.2307692308rem; } }
  .contact-box .mail-step-item:before {
    /* カウンターの設定 */
    counter-increment: mailStep;
    content: counter(mailStep) "."; }
.contact-box .mail-step-item-current {
  color: #333;
  border-bottom: 4px solid #ddd; }
@media print, screen and (min-width: 768px) {
  .contact-box .mail-step {
    height: 60px; } }

/* 送信ボタン
------------------------------ */
.form-btn-box {
  margin: 0 10px 50px 10px;
  text-align: center; }
  .form-btn-box .btn {
    display: inline-block; }

.form-btn {
  display: inline-block; }

.form-btn-return {
  float: left; }

.form-btn-send {
  float: right; }

@media print, screen and (min-width: 768px) {
  .form-btn-return {
    float: none; }

  .form-btn-send {
    float: none;
    max-width: 360px;
    width: 100%; } }
/* ラベル
------------------------------ */
.label-required {
  margin: 0 5px;
  padding: 2px 8px;
  color: #FFF;
  font-size: 12px;
  font-size: 1.2rem;
  border-radius: 3px;
  background: red; }
  @media screen and (max-width: 479px) {
    .label-required {
      font-size: 9.2307692308px;
      font-size: 0.9230769231rem; } }

@media print, screen and (min-width: 768px) {
  .label-required {
    float: right; } }
/* フォーム要素
------------------------------ */
.contact-box select[required]:required {
  border: 1px solid #C49511; }
.contact-box select.focused:invalid {
  border: 1px solid #c41134; }
.contact-box select[required]:valid {
  border: 1px solid #A7A7AA; }
.contact-box input[required]:required,
.contact-box textarea[required]:required {
  background: #FFFDEB; }
.contact-box input.focused:invalid,
.contact-box textarea.focused:invalid {
  background: #FFEBEE; }
.contact-box input[required]:valid,
.contact-box textarea[required]:valid {
  background: #FFF; }
.contact-box input[type="text"],
.contact-box input[type="password"],
.contact-box input[type="datetime"],
.contact-box input[type="datetime-local"],
.contact-box input[type="date"],
.contact-box input[type="month"],
.contact-box input[type="time"],
.contact-box input[type="week"],
.contact-box input[type="number"],
.contact-box input[type="email"],
.contact-box input[type="url"],
.contact-box input[type="search"],
.contact-box input[type="tel"] {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 14px 5px 10px 5px; }
  @media screen and (max-width: 479px) {
    .contact-box input[type="text"],
    .contact-box input[type="password"],
    .contact-box input[type="datetime"],
    .contact-box input[type="datetime-local"],
    .contact-box input[type="date"],
    .contact-box input[type="month"],
    .contact-box input[type="time"],
    .contact-box input[type="week"],
    .contact-box input[type="number"],
    .contact-box input[type="email"],
    .contact-box input[type="url"],
    .contact-box input[type="search"],
    .contact-box input[type="tel"] {
      font-size: 12.3076923077px;
      font-size: 1.2307692308rem; } }
.contact-box textarea {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 5px 5px 4px; }
  @media screen and (max-width: 479px) {
    .contact-box textarea {
      font-size: 12.3076923077px;
      font-size: 1.2307692308rem; } }
.contact-box select {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 11px 30px 11px 10px;
  vertical-align: top; }
  @media screen and (max-width: 479px) {
    .contact-box select {
      font-size: 12.3076923077px;
      font-size: 1.2307692308rem; } }

/* バリデーター
------------------------------ */
.valid-mark {
  display: none; }

.valid-mark.valid {
  display: inline;
  color: #5cb85c;
  float: right; }

.invalid {
  background: #ffebee !important; }

.acms-entry [class*=column-eximage-].nocaption, .acms-entry [class*=column-image-].nocaption, .acms-entry [class*=column-media-].nocaption, .acms-entry [class*=column-video-], .acms-entry [class*=column-yolp-], .acms-entry [class*=column-youtube-] {
  margin: 4em 0 0; }

.acms-entry [class*=column-eximage-], .acms-entry [class*=column-image-], .acms-entry [class*=column-media-] {
  margin: 4em 0 0; }

.column-image-right {
  margin: 2em 0 1em 1em; }

.column-image-left {
  margin: 2em 1em 1em 0; }
  .column-image-left.acms-col-sm-4, .column-image-left.acms-col-sm-6 {
    margin: 2em 0 0 0; }

.column-image-center {
  margin-top: 2em;
  margin: 1em auto !important; }

.column-file-auto .caption,
.column-file-left .caption,
.column-file-right .caption,
.column-file-center .caption {
  margin-top: 0 !important;
  font-size: 15px;
  font-size: 1.5rem; }
  @media screen and (max-width: 479px) {
    .column-file-auto .caption,
    .column-file-left .caption,
    .column-file-right .caption,
    .column-file-center .caption {
      font-size: 11.5384615385px;
      font-size: 1.1538461538rem; } }
.column-file-auto .fileicon,
.column-file-left .fileicon,
.column-file-right .fileicon,
.column-file-center .fileicon {
  padding-left: 0; }
  .column-file-auto .fileicon::before,
  .column-file-left .fileicon::before,
  .column-file-right .fileicon::before,
  .column-file-center .fileicon::before {
    color: #BF1920;
    font-family: FontAwesome;
    content: "";
    display: inline-block;
    margin-right: 5px;
    font-size: 10px;
    font-size: 1rem; }
    @media screen and (max-width: 479px) {
      .column-file-auto .fileicon::before,
      .column-file-left .fileicon::before,
      .column-file-right .fileicon::before,
      .column-file-center .fileicon::before {
        font-size: 7.6923076923px;
        font-size: 0.7692307692rem; } }

.column-image-auto .caption,
.column-image-left .caption,
.column-image-right .caption,
.column-image-center .caption {
  margin-top: 0 !important;
  font-size: 13px;
  font-size: 1.3rem;
  color: #333; }
  @media screen and (max-width: 479px) {
    .column-image-auto .caption,
    .column-image-left .caption,
    .column-image-right .caption,
    .column-image-center .caption {
      font-size: 10px;
      font-size: 1rem; } }

a.arrow {
  color: #BF1920;
  font-size: 15px;
  font-size: 1.5rem; }
  @media screen and (max-width: 479px) {
    a.arrow {
      font-size: 11.5384615385px;
      font-size: 1.1538461538rem; } }
  a.arrow::before {
    color: #BF1920;
    font-family: FontAwesome;
    content: "";
    display: inline-block;
    margin-right: 5px;
    font-size: 10px;
    font-size: 1rem; }
    @media screen and (max-width: 479px) {
      a.arrow::before {
        font-size: 7.6923076923px;
        font-size: 0.7692307692rem; } }

a.mappin {
  color: #BF1920;
  font-size: 15px;
  font-size: 1.5rem; }
  @media screen and (max-width: 479px) {
    a.mappin {
      font-size: 11.5384615385px;
      font-size: 1.1538461538rem; } }
  a.mappin::before {
    color: #BF1920;
    font-family: FontAwesome;
    content: "";
    display: inline-block;
    margin-right: 5px;
    font-size: 20px;
    font-size: 2rem; }
    @media screen and (max-width: 479px) {
      a.mappin::before {
        font-size: 15.3846153846px;
        font-size: 1.5384615385rem; } }

.entry-summary {
  padding: 2em 0; }

h3.seminar-guide {
  margin-top: 2em; }

.guide-title {
  margin-top: 1em;
  background: #BF1920;
  width: 100%;
  position: relative;
  padding: 0.5em 1.5em;
  clear: both; }
  .guide-title::after {
    content: "";
    display: block;
    clear: both; }
  .guide-title h4 {
    background: none;
    color: #fff;
    margin: 0;
    padding: 0; }
  .guide-title .dl-btn {
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: bold;
    margin: 0;
    display: inline-block; }
    @media screen and (max-width: 479px) {
      .guide-title .dl-btn {
        font-size: 11.5384615385px;
        font-size: 1.1538461538rem; } }
    @media print, screen and (min-width: 768px) {
      .guide-title .dl-btn {
        position: absolute;
        top: 10px;
        right: 10px; } }
    .guide-title .dl-btn a {
      display: block;
      position: relative;
      padding: 0.2em 1.5em;
      background: #fff;
      color: #BF1920;
      border-radius: 3px; }
      .guide-title .dl-btn a:after {
        content: "";
        display: block;
        width: 4px;
        height: 4px;
        border-right: 2px solid #BF1920;
        border-top: 2px solid #BF1920;
        transform: rotate(45deg);
        position: absolute;
        top: 50%;
        right: 10px;
        margin-top: -4px; }

.page-header {
  border-top: 1px solid #BF1920;
  border-bottom: 1px solid #BF1920;
  padding: 1em 0;
  margin-top: 0 !important; }
  .page-header .entry-title {
    font-size: 24px;
    font-size: 2.4rem;
    color: #BF1920;
    margin: 0.5em !important;
    line-height: 1.2; }
    @media screen and (max-width: 479px) {
      .page-header .entry-title {
        font-size: 18.4615384615px;
        font-size: 1.8461538462rem; } }
  .page-header .entryInfo {
    margin: 0.5em !important; }
    .page-header .entryInfo .label-category {
      border: 1px solid #BF1920;
      background: none;
      border-radius: 0;
      color: #BF1920;
      font-size: 13px;
      font-size: 1.3rem;
      padding: 1px 10px 0;
      margin: 0;
      width: 7.5em;
      display: inline-block;
      text-align: center; }
      @media screen and (max-width: 479px) {
        .page-header .entryInfo .label-category {
          font-size: 10px;
          font-size: 1rem; } }
      .page-header .entryInfo .label-category.label-news-info {
        border: 1px solid #BF1920;
        color: #BF1920; }
      .page-header .entryInfo .label-category.label-exhibition {
        border: 1px solid #FA6E00;
        color: #FA6E00; }
      .page-header .entryInfo .label-category.label-seminar {
        border: 1px solid #00A95F;
        color: #00A95F; }
      .page-header .entryInfo .label-category.label-new-item {
        border: 1px solid #2EB4E2;
        color: #2EB4E2; }
      .page-header .entryInfo .label-category.label-personnel-recruitment {
        border: 1px solid #1D50A2;
        color: #1D50A2; }

.entry-footer {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  margin: 1em 0; }
  .entry-footer dl, .entry-footer p, .entry-footer ul {
    margin: 1em 0; }
  .entry-footer .entry-tag-icon {
    margin-right: 5px; }
    .entry-footer .entry-tag-icon .acms-icon-tag {
      color: #414B50; }
  .entry-footer .entry-tag-item {
    display: inline-block; }
  .entry-footer .share-wrapper {
    float: right; }
  .entry-footer .share-text {
    display: inline-block; }
  .entry-footer .share-list {
    display: inline-block;
    padding: 0; }
    .entry-footer .share-list li {
      list-style: none;
      display: inline-block; }
      .entry-footer .share-list li a {
        color: #fff;
        background: #BF1920;
        padding: 4px 8px;
        line-height: 1;
        border-radius: 20px; }

@media screen and (max-width: 991px) {
  #offcanvas {
    background: #BF1920;
    padding: 10px; } }
#offcanvas a {
  color: #fff;
  text-decoration: none; }
  #offcanvas a:hover, #offcanvas a:active, #offcanvas a:focus {
    color: white;
    text-decoration: none; }
  #offcanvas a:visited {
    color: white; }
#offcanvas .contents-back {
  text-align: center; }
  #offcanvas .contents-back a {
    display: block;
    background: #414B50; }
  @media print, screen and (min-width: 992px) {
    #offcanvas .contents-back {
      display: none; } }
#offcanvas .nav-box {
  background: #05A3A4;
  padding: 1em;
  margin-top: 2em; }
  #offcanvas .nav-box ul {
    margin: 0; }
  #offcanvas .nav-box li {
    margin-bottom: 13px;
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center;
    font-weight: bold; }
    @media screen and (max-width: 479px) {
      #offcanvas .nav-box li {
        font-size: 13.8461538462px;
        font-size: 1.3846153846rem; } }
    #offcanvas .nav-box li:last-child {
      margin-bottom: 0; }
    #offcanvas .nav-box li a {
      background: #fff;
      line-height: 1;
      display: block;
      border-radius: 5px;
      border-bottom: 3px solid #ccc;
      padding: 13px 12px 12px;
      text-align: center;
      width: 100%;
      position: relative;
      color: #000;
      text-decoration: none; }
      #offcanvas .nav-box li a:hover, #offcanvas .nav-box li a:active, #offcanvas .nav-box li a:focus {
        color: black;
        text-decoration: none; }
      #offcanvas .nav-box li a:visited {
        color: black; }
      #offcanvas .nav-box li a:after {
        content: "";
        display: block;
        position: absolute;
        top: 15px;
        right: 10px;
        width: 14px;
        height: 14px;
        border-radius: 7px;
        background: #05A3A4 url(../img/arrow.png) no-repeat 50% 50%;
        background-size: 4.8px auto; }
#offcanvas .footer-banner-nav li {
  margin-bottom: 1em;
  text-align: center; }
#offcanvas .facebook iframe {
  width: 100%; }
#offcanvas .address {
  font-size: 14px;
  font-size: 1.4rem;
  color: #6E6E6E; }
  @media screen and (max-width: 479px) {
    #offcanvas .address {
      font-size: 10.7692307692px;
      font-size: 1.0769230769rem; } }
  #offcanvas .address a {
    color: #BF1920;
    text-decoration: none; }
    #offcanvas .address a:hover, #offcanvas .address a:active, #offcanvas .address a:focus {
      color: #bf1920;
      text-decoration: none; }
    #offcanvas .address a:visited {
      color: #bf1920; }
#offcanvas ul {
  padding: 0; }
#offcanvas li {
  list-style: none; }
#offcanvas nav.offcanvas-nav ul {
  margin: 0;
  padding: 0; }
  #offcanvas nav.offcanvas-nav ul li {
    list-style: none;
    border-bottom: 1px solid #fff; }
    #offcanvas nav.offcanvas-nav ul li a {
      display: block;
      padding: 10px; }
      #offcanvas nav.offcanvas-nav ul li a::before {
        font-family: FontAwesome;
        content: "";
        display: inline-block;
        margin-right: 5px; }
    #offcanvas nav.offcanvas-nav ul li > ul li {
      border: 0; }
      #offcanvas nav.offcanvas-nav ul li > ul li a {
        padding: 5px 20px; }
        #offcanvas nav.offcanvas-nav ul li > ul li a::before {
          display: none; }

@media screen and (max-width: 991px) {
  #offcanvas2 {
    background: #BF1920;
    padding: 10px; } }
#offcanvas2 a {
  color: #fff;
  text-decoration: none; }
  #offcanvas2 a:hover, #offcanvas2 a:active, #offcanvas2 a:focus {
    color: white;
    text-decoration: none; }
  #offcanvas2 a:visited {
    color: white; }
#offcanvas2 .contents-back {
  text-align: center; }
  #offcanvas2 .contents-back a {
    display: block;
    background: #414B50; }
  @media print, screen and (min-width: 992px) {
    #offcanvas2 .contents-back {
      display: none; } }
#offcanvas2 .nav-box {
  background: #05A3A4;
  padding: 1em;
  margin-top: 2em; }
  #offcanvas2 .nav-box ul {
    margin: 0; }
  #offcanvas2 .nav-box li {
    margin-bottom: 13px;
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center;
    font-weight: bold; }
    @media screen and (max-width: 479px) {
      #offcanvas2 .nav-box li {
        font-size: 13.8461538462px;
        font-size: 1.3846153846rem; } }
    #offcanvas2 .nav-box li:last-child {
      margin-bottom: 0; }
    #offcanvas2 .nav-box li a {
      background: #fff;
      line-height: 1;
      display: block;
      border-radius: 5px;
      border-bottom: 3px solid #ccc;
      padding: 13px 12px 12px;
      text-align: center;
      width: 100%;
      position: relative;
      color: #000;
      text-decoration: none; }
      #offcanvas2 .nav-box li a:hover, #offcanvas2 .nav-box li a:active, #offcanvas2 .nav-box li a:focus {
        color: black;
        text-decoration: none; }
      #offcanvas2 .nav-box li a:visited {
        color: black; }
      #offcanvas2 .nav-box li a:after {
        content: "";
        display: block;
        position: absolute;
        top: 15px;
        right: 10px;
        width: 14px;
        height: 14px;
        border-radius: 7px;
        background: #05A3A4 url(../img/arrow.png) no-repeat 50% 50%;
        background-size: 4.8px auto; }
#offcanvas2 .footer-banner-nav li {
  margin-bottom: 1em;
  text-align: center; }
#offcanvas2 .facebook iframe {
  width: 100%; }
#offcanvas2 .address {
  font-size: 14px;
  font-size: 1.4rem;
  color: #6E6E6E; }
  @media screen and (max-width: 479px) {
    #offcanvas2 .address {
      font-size: 10.7692307692px;
      font-size: 1.0769230769rem; } }
  #offcanvas2 .address a {
    color: #BF1920;
    text-decoration: none; }
    #offcanvas2 .address a:hover, #offcanvas2 .address a:active, #offcanvas2 .address a:focus {
      color: #bf1920;
      text-decoration: none; }
    #offcanvas2 .address a:visited {
      color: #bf1920; }
#offcanvas2 ul {
  padding: 0; }
#offcanvas2 li {
  list-style: none; }
#offcanvas2 nav.offcanvas-nav ul {
  margin: 0;
  padding: 0; }
  #offcanvas2 nav.offcanvas-nav ul li {
    list-style: none;
    border-bottom: 1px solid #fff; }
    #offcanvas2 nav.offcanvas-nav ul li a {
      display: block;
      padding: 10px; }
      #offcanvas2 nav.offcanvas-nav ul li a::before {
        font-family: FontAwesome;
        content: "";
        display: inline-block;
        margin-right: 5px; }
    #offcanvas2 nav.offcanvas-nav ul li > ul li {
      border: 0; }
      #offcanvas2 nav.offcanvas-nav ul li > ul li a {
        padding: 5px 20px; }
        #offcanvas2 nav.offcanvas-nav ul li > ul li a::before {
          display: none; }

@media screen and (max-width: 991px) {
  #offcanvas3 {
    background: #BF1920;
    padding: 10px; } }
#offcanvas3 a {
  color: #fff;
  text-decoration: none; }
  #offcanvas3 a:hover, #offcanvas3 a:active, #offcanvas3 a:focus {
    color: white;
    text-decoration: none; }
  #offcanvas3 a:visited {
    color: white; }
#offcanvas3 .contents-back {
  text-align: center; }
  #offcanvas3 .contents-back a {
    display: block;
    background: #414B50; }
  @media print, screen and (min-width: 992px) {
    #offcanvas3 .contents-back {
      display: none; } }
#offcanvas3 .nav-box {
  background: #05A3A4;
  padding: 1em;
  margin-top: 2em; }
  #offcanvas3 .nav-box ul {
    margin: 0; }
  #offcanvas3 .nav-box li {
    margin-bottom: 13px;
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center;
    font-weight: bold; }
    @media screen and (max-width: 479px) {
      #offcanvas3 .nav-box li {
        font-size: 13.8461538462px;
        font-size: 1.3846153846rem; } }
    #offcanvas3 .nav-box li:last-child {
      margin-bottom: 0; }
    #offcanvas3 .nav-box li a {
      background: #fff;
      line-height: 1;
      display: block;
      border-radius: 5px;
      border-bottom: 3px solid #ccc;
      padding: 13px 12px 12px;
      text-align: center;
      width: 100%;
      position: relative;
      color: #000;
      text-decoration: none; }
      #offcanvas3 .nav-box li a:hover, #offcanvas3 .nav-box li a:active, #offcanvas3 .nav-box li a:focus {
        color: black;
        text-decoration: none; }
      #offcanvas3 .nav-box li a:visited {
        color: black; }
      #offcanvas3 .nav-box li a:after {
        content: "";
        display: block;
        position: absolute;
        top: 15px;
        right: 10px;
        width: 14px;
        height: 14px;
        border-radius: 7px;
        background: #05A3A4 url(../img/arrow.png) no-repeat 50% 50%;
        background-size: 4.8px auto; }
#offcanvas3 .footer-banner-nav li {
  margin-bottom: 1em;
  text-align: center; }
#offcanvas3 .facebook iframe {
  width: 100%; }
#offcanvas3 .address {
  font-size: 14px;
  font-size: 1.4rem;
  color: #6E6E6E; }
  @media screen and (max-width: 479px) {
    #offcanvas3 .address {
      font-size: 10.7692307692px;
      font-size: 1.0769230769rem; } }
  #offcanvas3 .address a {
    color: #BF1920;
    text-decoration: none; }
    #offcanvas3 .address a:hover, #offcanvas3 .address a:active, #offcanvas3 .address a:focus {
      color: #bf1920;
      text-decoration: none; }
    #offcanvas3 .address a:visited {
      color: #bf1920; }
#offcanvas3 ul {
  padding: 0; }
#offcanvas3 li {
  list-style: none; }
#offcanvas3 nav.offcanvas-nav ul {
  margin: 0;
  padding: 0; }
  #offcanvas3 nav.offcanvas-nav ul li {
    list-style: none;
    border-bottom: 1px solid #fff; }
    #offcanvas3 nav.offcanvas-nav ul li a {
      display: block;
      padding: 10px; }
      #offcanvas3 nav.offcanvas-nav ul li a::before {
        font-family: FontAwesome;
        content: "";
        display: inline-block;
        margin-right: 5px; }
    #offcanvas3 nav.offcanvas-nav ul li > ul li {
      border: 0; }
      #offcanvas3 nav.offcanvas-nav ul li > ul li a {
        padding: 5px 20px; }
        #offcanvas3 nav.offcanvas-nav ul li > ul li a::before {
          display: none; }
          
@media screen and (max-width: 991px) {
  #offcanvas4 {
    background: #BF1920;
    padding: 10px; } }
#offcanvas4 a {
  color: #fff;
  text-decoration: none; }
  #offcanvas4 a:hover, #offcanvas4 a:active, #offcanvas4 a:focus {
    color: white;
    text-decoration: none; }
  #offcanvas4 a:visited {
    color: white; }
#offcanvas4 .contents-back {
  text-align: center; }
  #offcanvas4 .contents-back a {
    display: block;
    background: #414B50; }
  @media print, screen and (min-width: 992px) {
    #offcanvas4 .contents-back {
      display: none; } }
#offcanvas4 .nav-box {
  background: #05A3A4;
  padding: 1em;
  margin-top: 2em; }
  #offcanvas4 .nav-box ul {
    margin: 0; }
  #offcanvas4 .nav-box li {
    margin-bottom: 13px;
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center;
    font-weight: bold; }
    @media screen and (max-width: 479px) {
      #offcanvas4 .nav-box li {
        font-size: 13.8461538462px;
        font-size: 1.3846153846rem; } }
    #offcanvas4 .nav-box li:last-child {
      margin-bottom: 0; }
    #offcanvas4 .nav-box li a {
      background: #fff;
      line-height: 1;
      display: block;
      border-radius: 5px;
      border-bottom: 3px solid #ccc;
      padding: 13px 12px 12px;
      text-align: center;
      width: 100%;
      position: relative;
      color: #000;
      text-decoration: none; }
      #offcanvas4 .nav-box li a:hover, #offcanvas4 .nav-box li a:active, #offcanvas4 .nav-box li a:focus {
        color: black;
        text-decoration: none; }
      #offcanvas4 .nav-box li a:visited {
        color: black; }
      #offcanvas4 .nav-box li a:after {
        content: "";
        display: block;
        position: absolute;
        top: 15px;
        right: 10px;
        width: 14px;
        height: 14px;
        border-radius: 7px;
        background: #05A3A4 url(../img/arrow.png) no-repeat 50% 50%;
        background-size: 4.8px auto; }
#offcanvas4 .footer-banner-nav li {
  margin-bottom: 1em;
  text-align: center; }
#offcanvas4 .facebook iframe {
  width: 100%; }
#offcanvas4 .address {
  font-size: 14px;
  font-size: 1.4rem;
  color: #6E6E6E; }
  @media screen and (max-width: 479px) {
    #offcanvas4 .address {
      font-size: 10.7692307692px;
      font-size: 1.0769230769rem; } }
  #offcanvas4 .address a {
    color: #BF1920;
    text-decoration: none; }
    #offcanvas4 .address a:hover, #offcanvas4 .address a:active, #offcanvas4 .address a:focus {
      color: #bf1920;
      text-decoration: none; }
    #offcanvas4 .address a:visited {
      color: #bf1920; }
#offcanvas4 ul {
  padding: 0; }
#offcanvas4 li {
  list-style: none; }
#offcanvas4 nav.offcanvas-nav ul {
  margin: 0;
  padding: 0; }
  #offcanvas4 nav.offcanvas-nav ul li {
    list-style: none;
    border-bottom: 1px solid #fff; }
    #offcanvas4 nav.offcanvas-nav ul li a {
      display: block;
      padding: 10px; }
      #offcanvas4 nav.offcanvas-nav ul li a::before {
        font-family: FontAwesome;
        content: "";
        display: inline-block;
        margin-right: 5px; }
    #offcanvas4 nav.offcanvas-nav ul li > ul li {
      border: 0; }
      #offcanvas4 nav.offcanvas-nav ul li > ul li a {
        padding: 5px 20px; }
        #offcanvas4 nav.offcanvas-nav ul li > ul li a::before {
          display: none; }

.sec-01 {
  padding-top: 2em;
  padding-bottom: 2em; }
  .sec-01 .container::after {
    content: "";
    display: block;
    clear: both; }
  @media print, screen and (min-width: 768px) {
    .sec-01 .container {
      -js-display: flex;
      display: -webkit-flex;
      display: flex; } }
  @media print, screen and (min-width: 768px) {
    .sec-01 .container .body {
      flex-basis: 65%; } }
  .sec-01 .container .body h2 {
    margin-top: 5px; }
  @media print, screen and (min-width: 768px) {
    .sec-01 .container .image {
      flex-basis: 35%; } }
  .sec-01 .container .image p {
    margin-top: 0; }
  .sec-01 .container .btn-01 {
    width: 45%;
    padding-left: 0;
    padding-right: 0; }
  .sec-01:nth-child(even) {
    background: #414B50; }
    .sec-01:nth-child(even) .container .image {
      margin-right: 30px; }
      @media screen and (max-width: 767px) {
        .sec-01:nth-child(even) .container .image {
          margin-right: 15px; } }
  .sec-01:nth-child(odd) .container {
    flex-direction: row-reverse; }
    .sec-01:nth-child(odd) .container .image {
      margin-left: 30px; }
      @media screen and (max-width: 767px) {
        .sec-01:nth-child(odd) .container .image {
          margin-left: 15px; } }

.product .page-title .page-title-red {
  letter-spacing: 5px; }
@media print, screen and (min-width: 992px) {
  .product .product-flex {
    -js-display: flex;
    display: -webkit-flex;
    display: flex;
    margin: 1em 0; } }
.product .product-list::after {
  content: "";
  display: block;
  clear: both; }
.product .product-list [class*="acms-col-"] {
  padding: 0; }
@media print, screen and (min-width: 992px) {
  .product .product-list.product-flex {
    -js-display: flex;
    display: -webkit-flex;
    display: flex;
    margin: 1em 0; }
    .product .product-list.product-flex .acms-col-md-4 {
      float: none !important; }
  .product .product-list .product-list-item {
    height: 100%;
    margin-bottom: 1em !important; }
    .product .product-list .product-list-item__text {
      height: 100%;
      /*.text-summary{
      	position: relative!important;
      }*/ }
      .product .product-list .product-list-item__text .list-arrow {
        margin-bottom: 45%; } }
@media screen and (max-width: 991px) {
  .product .product-list .product-list-item {
    height: auto; }
    .product .product-list .product-list-item__text {
      height: auto; }
      .product .product-list .product-list-item__text .list-arrow {
        margin-bottom: 0; } }
.product .product-list .product-list-item {
  border: 1px solid #D9DBDC;
  padding: 0.8em;
  margin: 0 10px; }
  .product .product-list .product-list-item::after {
    content: "";
    display: block;
    clear: both; }
  @media screen and (max-width: 991px) {
    .product .product-list .product-list-item {
      margin-top: 1.5em; } }
  .product .product-list .product-list-item ul, .product .product-list .product-list-item dl, .product .product-list .product-list-item p, .product .product-list .product-list-item h6 {
    margin: 3px 0; }
  .product .product-list .product-list-item__thumb {
    width: 30%;
    float: left; }
    .product .product-list .product-list-item__thumb p {
      margin: 0;
      padding: 0 10px 0 0;
      text-align: center; }
  .product .product-list .product-list-item__text {
    width: 70%;
    float: left;
    position: relative; }
    .product .product-list .product-list-item__text.js-autoheight-mark .list-arrow {
      margin-bottom: 40%; }
    .product .product-list .product-list-item__text.note0 .list-arrow {
      margin-bottom: 0; }
    .product .product-list .product-list-item__text a {
      color: #000;
      text-decoration: none; }
    .product .product-list .product-list-item__text .text-summary {
      position: absolute;
      bottom: 0;
      width: 100%; }
      @media screen and (max-width: 991px) {
        .product .product-list .product-list-item__text .text-summary {
          position: static; } }
    .product .product-list .product-list-item__text .text-icon {
      margin-top: 10px;
      padding-left: 0; }
      .product .product-list .product-list-item__text .text-icon::after {
        content: "";
        display: block;
        clear: both; }
      .product .product-list .product-list-item__text .text-icon li {
        width: 33.333%;
        float: left;
        padding: 1px;
        text-align: center;
        list-style: none;
        color: #fff;
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1; }
        @media screen and (max-width: 479px) {
          .product .product-list .product-list-item__text .text-icon li {
            font-size: 10px;
            font-size: 1rem; } }
        .product .product-list .product-list-item__text .text-icon li.double span {
          padding: 3px 0; }
      .product .product-list .product-list-item__text .text-icon span {
        background: #BF1920;
        display: block;
        width: 100%; }
      .product .product-list .product-list-item__text .text-icon .blue {
        background: #1D50A2;
        padding: 12.5px 0; }
      .product .product-list .product-list-item__text .text-icon .purple {
        background: #A23096;
        padding: 12.5px 0; }
      .product .product-list .product-list-item__text .text-icon .aqua {
        background: #2EB4E2;
        padding: 12.5px 0; }
      .product .product-list .product-list-item__text .text-icon .green {
        background: #00A95F;
        padding: 12.5px 0; }
      .product .product-list .product-list-item__text .text-icon .orange {
        background: #FA6E00;
        padding: 12.5px 0; }
    .product .product-list .product-list-item__text .note dl {
      margin: 10px 0 0; }
    .product .product-list .product-list-item__text .note dt {
      background: #BF1920;
      padding: 5px 10px;
      color: #fff;
      font-size: 12px;
      font-size: 1.2rem; }
      @media screen and (max-width: 479px) {
        .product .product-list .product-list-item__text .note dt {
          font-size: 9.2307692308px;
          font-size: 0.9230769231rem; } }
    .product .product-list .product-list-item__text .note dd {
      font-size: 14px;
      font-size: 1.4rem;
      background: #F2F2F3;
      padding: 5px 10px; }
      @media screen and (max-width: 479px) {
        .product .product-list .product-list-item__text .note dd {
          font-size: 10.7692307692px;
          font-size: 1.0769230769rem; } }
.product .product-list .product-list-item2 {
  height: auto !important; }
  @media print, screen and (min-width: 992px) {
    .product .product-list .product-list-item2 {
      margin-top: 0 !important;
      margin-bottom: 0 !important; } }
  .product .product-list .product-list-item2 .product-list-item__thumb {
    width: 40%;
    text-align: center; }
  .product .product-list .product-list-item2 .product-list-item__text {
    width: 60%; }
  .product .product-list .product-list-item2 h6 {
    color: #000;
    font-size: 14px;
    font-size: 1.4rem; }
    @media screen and (max-width: 479px) {
      .product .product-list .product-list-item2 h6 {
        font-size: 10.7692307692px;
        font-size: 1.0769230769rem; } }
  .product .product-list .product-list-item2 .list-arrow {
    margin-bottom: 0 !important; }
.product .product-list .product-list-item3 {
  border: 1px solid #D9DBDC;
  margin: 10px;
  position: relative;
  padding-bottom: 5%; }
  .product .product-list .product-list-item3::after {
    content: "";
    display: block;
    clear: both; }
  .product .product-list .product-list-item3 ul, .product .product-list .product-list-item3 dl, .product .product-list .product-list-item3 p, .product .product-list .product-list-item3 h6 {
    margin: 3px 0; }
  .product .product-list .product-list-item3__thumb {
    /*padding: 0.5em 1em;*/ }
    .product .product-list .product-list-item3__thumb p {
      margin: 0;
      padding: 0 10px 0 0;
      text-align: center; }
    @media screen and (max-width: 991px) {
      .product .product-list .product-list-item3__thumb {
        padding: 0 1em 2em; } }
  .product .product-list .product-list-item3__text {
    background: #F2F3F3;
    padding: 0.5em 1em;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%; }
    .product .product-list .product-list-item3__text a {
      color: #000;
      text-decoration: none;
      display: block;
      width: 100%;
      position: relative;
      font-weight: bold;
      font-size: 15px;
      font-size: 1.5rem; }
      @media screen and (max-width: 479px) {
        .product .product-list .product-list-item3__text a {
          font-size: 11.5384615385px;
          font-size: 1.1538461538rem; } }
      .product .product-list .product-list-item3__text a:after {
        font-family: FontAwesome;
        content: "";
        display: inline-block;
        font-size: 125%;
        position: absolute;
        line-height: 1;
        top: 2px;
        right: 10px;
        color: #BF1920; }
.product .product-list .product-list-item4 {
  border: 1px solid #D9DBDC;
  margin: 10px;
  position: relative;
  padding-bottom: 5%; }
  .product .product-list .product-list-item4::after {
    content: "";
    display: block;
    clear: both; }
  .product .product-list .product-list-item4 ul, .product .product-list .product-list-item4 dl, .product .product-list .product-list-item4 p, .product .product-list .product-list-item4 h6 {
    margin: 3px 0; }
  .product .product-list .product-list-item4__thumb {
    /*padding: 0.5em 1em;*/ }
    .product .product-list .product-list-item4__thumb p {
      margin: 0;
      padding: 0 10px 0 0;
      text-align: center; }
    @media screen and (max-width: 991px) {
      .product .product-list .product-list-item4__thumb {
        padding: 0 1em 2em; } }
  .product .product-list .product-list-item4__text {
    background: #F2F3F3;
    padding: 0.5em 1em;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%; }        
  .product .product-list .product-list-item4__text a {
      color: #000;
      text-decoration: none;
      display: block;
      width: 100%;
      position: relative;
      font-weight: bold;
      font-size: 15px;
      font-size: 1.3rem; }
      @media screen and (max-width: 479px) {
        .product .product-list .product-list-item4__text a {
          font-size: 11.5384615385px;
          font-size: 1.1538461538rem; } }
      .product .product-list .product-list-item4__text a:after {
        font-family: FontAwesome;
        content: "";
        display: inline-block;
        font-size: 125%;
        position: absolute;
        line-height: 1;
        top: 2px;
        right: 10px;
        color: #BF1920; }  
.product .product-list .product-list-item-recommended {
  border: 1px solid #D9DBDC;
  margin: 10px;
  background: #F2F3F3;
  padding-bottom: 0; }
  .product .product-list .product-list-item-recommended::after {
    content: "";
    display: block;
    clear: both; }
  @media print, screen and (min-width: 992px) {
    .product .product-list .product-list-item-recommended {
      height: 100%; } }
  .product .product-list .product-list-item-recommended ul, .product .product-list .product-list-item-recommended dl, .product .product-list .product-list-item-recommended p, .product .product-list .product-list-item-recommended h6 {
    margin: 3px 0; }
  .product .product-list .product-list-item-recommended__thumb {
    /*padding: 0.5em 1em;*/
    background: #fff;
    padding: 0.5em 1em; }
    @media screen and (max-width: 991px) {
      .product .product-list .product-list-item-recommended__thumb {
        padding: 0 1em 2em; } }
    .product .product-list .product-list-item-recommended__thumb p {
      margin: 0;
      padding: 0;
      text-align: center; }
  .product .product-list .product-list-item-recommended__text {
    background: #F2F3F3;
    padding: 0.5em 1em;
    width: 100%; }
    .product .product-list .product-list-item-recommended__text a {
      color: #000;
      text-decoration: none;
      display: block;
      width: 100%;
      position: relative;
      font-weight: bold;
      font-size: 15px;
      font-size: 1.5rem; }
      @media screen and (max-width: 479px) {
        .product .product-list .product-list-item-recommended__text a {
          font-size: 11.5384615385px;
          font-size: 1.1538461538rem; } }
      .product .product-list .product-list-item-recommended__text a:after {
        font-family: FontAwesome;
        content: "";
        display: inline-block;
        font-size: 125%;
        position: absolute;
        line-height: 1;
        top: 2px;
        right: 10px;
        color: #BF1920; }
    .product .product-list .product-list-item-recommended__text .text-summary {
      font-size: 14px;
      font-size: 1.4rem; }
      @media screen and (max-width: 479px) {
        .product .product-list .product-list-item-recommended__text .text-summary {
          font-size: 10.7692307692px;
          font-size: 1.0769230769rem; } }
.product .product-list .icon-circle {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 44px;
  height: 44px;
  border-radius: 22px;
  color: #fff;
  font-size: 12px;
  font-size: 1.2rem;
  padding: 1em 0;
  text-align: center;
  display: inline-block; }
  @media screen and (max-width: 479px) {
    .product .product-list .icon-circle {
      font-size: 9.2307692308px;
      font-size: 0.9230769231rem; } }
  .product .product-list .icon-circle.icon-circle-red {
    background: #BF1920; }
  .product .product-list .icon-circle.icon-circle-blue {
    background: #35588A; }
  .product .product-list .icon-circle.icon-circle-second {
    position: absolute;
    top: 60px; }
.product .acms-grid h2 {
  background: url(../img/bg_title_product.png) no-repeat bottom center;
  background-size: contain;
  color: #000;
  text-align: left;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  padding-bottom: 0.4em; }
  @media screen and (max-width: 479px) {
    .product .acms-grid h2 {
      font-size: 18.4615384615px;
      font-size: 1.8461538462rem; } }
.product .acms-grid h2.komidashi {
  background: url(../img/bg_title_product_small.png) no-repeat bottom center;
  background-size: contain; }
.product .acms-grid .entry-product {
  margin-bottom: 4em;
  border: 1px solid #D9DBDC; }
.product .cat-title {
  text-align: center;
  color: #BF1920;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: bold; }
  @media screen and (max-width: 479px) {
    .product .cat-title {
      font-size: 26.1538461538px;
      font-size: 2.6153846154rem; } }
.product .product-photo {
  padding: 1em; }
  .product .product-photo__item ul {
    margin: 0;
    padding: 0; }
  .product .product-photo__item .thumb-item li {
    border: 1px solid #D9DBDC; }
    .product .product-photo__item .thumb-item li img {
      padding: 10px; }
  .product .product-photo__item .thumb-item-nav {
    padding: 5px 13px; }
    .product .product-photo__item .thumb-item-nav li {
      margin: 5px;
      border: 1px solid #D9DBDC;
      height: auto;
      position: relative; }
      .product .product-photo__item .thumb-item-nav li::before {
        content: "";
        display: block;
        padding-top: 100%;
        /* ここを100％にすることで正方形になる */ }
      .product .product-photo__item .thumb-item-nav li span {
        /* 正方形にするのに必要な部分 */
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        /* 中央寄せ */
        text-align: center;
        padding: 5px;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box; }
        .product .product-photo__item .thumb-item-nav li span:before {
          content: "";
          height: 100%;
          vertical-align: middle;
          width: 0px;
          display: inline-block; }
        .product .product-photo__item .thumb-item-nav li span img {
          max-width: 100%;
          height: auto;
          max-height: 100%; }
      .product .product-photo__item .thumb-item-nav li span > * {
        vertical-align: middle;
        display: inline-block; }
    .product .product-photo__item .thumb-item-nav .slick-prev {
      left: -5px; }
      .product .product-photo__item .thumb-item-nav .slick-prev:before {
        font-family: FontAwesome;
        content: "";
        color: #BF1920; }
    .product .product-photo__item .thumb-item-nav .slick-next {
      right: -5px; }
      .product .product-photo__item .thumb-item-nav .slick-next:before {
        font-family: FontAwesome;
        content: "";
        color: #BF1920; }
.product .product_navi ul {
  margin: 2em 0;
  padding: 0; }
  @media print, screen and (min-width: 768px) {
    .product .product_navi ul {
      -js-display: flex;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: space-between;
      justify-content: space-between; } }
  .product .product_navi ul li {
    width: 105%;
    margin: 0 1em 0 0;
    text-align: center; }
    .product .product_navi ul li:last-child {
      margin-right: 0; }
    @media screen and (max-width: 767px) {
      .product .product_navi ul li {
        display: block;
        margin-bottom: 10px; }
        .product .product_navi ul li a {
          display: block; } }
.product .product_navi li {
  list-style: none; }
  .product .product_navi li span {
    border: 1px solid #BF1920;
    padding: 10px 0;
    width: 105%;
    position: relative;
    display: block; }
  .product .product_navi li a > span {
    color: #BF1920;
    text-decoration: none; }
    .product .product_navi li a > span:hover, .product .product_navi li a > span:active, .product .product_navi li a > span:focus {
      color: #bf1920;
      text-decoration: none; }
    .product .product_navi li a > span:visited {
      color: #bf1920; }
    .product .product_navi li a > span:after {
      /*content: "";
      display: block;
      width: 8px;
      height: 8px;
      border-right: 1px solid #BF1920;
      border-top: 1px solid #BF1920;
      transform: rotate(45deg);
      position: absolute;
      top: 50%;
      right: 15px;
      margin-top: -5px;*/ }
  .product .product_navi li > span {
    border: 1px solid #BF1920;
    color: #fff;
    background: #BF1920; }
    .product .product_navi li > span:after {
      /*content: "";
      display: block;
      width: 8px;
      height: 8px;
      border-right: 1px solid #fff;
      border-top: 1px solid #fff;
      transform: rotate(45deg);
      position: absolute;
      top: 50%;
      right: 15px;
      margin-top: -5px;*/ }
.product .gas .product_navi .gas span,
.product .oil .product_navi .oil span,
.product .heat .product_navi .heat span,
.product .peripheral .product_navi .peripheral span,
.product .energy-saving .product_navi .energy-saving span,
.product .sterilization .product_navi .sterilization span,
.product .cooling .product_navi .cooling span,
.product .steam .product_navi .steam span,
.product .stirring .product_navi .stirring span,
.product .kiln .product_navi .kiln span,
.product .vacuum .product_navi .vacuum span,
.product .nansui .product_navi .nansui span,
.product .roka .product_navi .roka span,
.product .dakki .product_navi .dakki span,
.product .yakuhin .product_navi .yakuhin span,
.product .bunseki .product_navi .bunseki span,
.product .stay .product_navi .stay span {
  background: #BF1920;
  color: #fff; }
  .product .gas .product_navi .gas span a,
  .product .oil .product_navi .oil span a,
  .product .heat .product_navi .heat span a,
  .product .peripheral .product_navi .peripheral span a,
  .product .energy-saving .product_navi .energy-saving span a,
  .product .sterilization .product_navi .sterilization span a,
  .product .cooling .product_navi .cooling span a,
  .product .steam .product_navi .steam span a,
  .product .stirring .product_navi .stirring span a,
  .product .kiln .product_navi .kiln span a,
  .product .vacuum .product_navi .vacuum span a,
  .product .nansui .product_navi .nansui span a,
  .product .roka .product_navi .roka span a,
  .product .dakki .product_navi .dakki span a,
  .product .yakuhin .product_navi .yakuhin span a,
  .product .bunseki .product_navi .bunseki span a,
  .product .stay .product_navi .stay span a {
    color: #fff;
    text-decoration: none; }
    .product .gas .product_navi .gas span a:hover, .product .gas .product_navi .gas span a:active, .product .gas .product_navi .gas span a:focus,
    .product .oil .product_navi .oil span a:hover,
    .product .oil .product_navi .oil span a:active,
    .product .oil .product_navi .oil span a:focus,
    .product .heat .product_navi .heat span a:hover,
    .product .heat .product_navi .heat span a:active,
    .product .heat .product_navi .heat span a:focus,
    .product .peripheral .product_navi .peripheral span a:hover,
    .product .peripheral .product_navi .peripheral span a:active,
    .product .peripheral .product_navi .peripheral span a:focus,
    .product .energy-saving .product_navi .energy-saving span a:hover,
    .product .energy-saving .product_navi .energy-saving span a:active,
    .product .energy-saving .product_navi .energy-saving span a:focus,
    .product .sterilization .product_navi .sterilization span a:hover,
    .product .sterilization .product_navi .sterilization span a:active,
    .product .sterilization .product_navi .sterilization span a:focus,
    .product .cooling .product_navi .cooling span a:hover,
    .product .cooling .product_navi .cooling span a:active,
    .product .cooling .product_navi .cooling span a:focus,
    .product .steam .product_navi .steam span a:hover,
    .product .steam .product_navi .steam span a:active,
    .product .steam .product_navi .steam span a:focus,
    .product .stirring .product_navi .stirring span a:hover,
    .product .stirring .product_navi .stirring span a:active,
    .product .stirring .product_navi .stirring span a:focus,
    .product .kiln .product_navi .kiln span a:hover,
    .product .kiln .product_navi .kiln span a:active,
    .product .kiln .product_navi .kiln span a:focus,
    .product .vacuum .product_navi .vacuum span a:hover,
    .product .vacuum .product_navi .vacuum span a:active,
    .product .vacuum .product_navi .vacuum span a:focus,
    .product .nansui .product_navi .nansui span a:hover,
    .product .nansui .product_navi .nansui span a:active,
    .product .nansui .product_navi .nansui span a:focus,
    .product .roka .product_navi .roka span a:hover,
    .product .roka .product_navi .roka span a:active,
    .product .roka .product_navi .roka span a:focus,
    .product .dakki .product_navi .dakki span a:hover,
    .product .dakki .product_navi .dakki span a:active,
    .product .dakki .product_navi .dakki span a:focus,
    .product .yakuhin .product_navi .yakuhin span a:hover,
    .product .yakuhin .product_navi .yakuhin span a:active,
    .product .yakuhin .product_navi .yakuhin span a:focus,
    .product .bunseki .product_navi .bunseki span a:hover,
    .product .bunseki .product_navi .bunseki span a:active,
    .product .bunseki .product_navi .bunseki span a:focus,
    .product .stay .product_navi .stay span a:hover,
    .product .stay .product_navi .stay span a:active,
    .product .stay .product_navi .stay span a:focus {
      color: white;
      text-decoration: none; }
    .product .gas .product_navi .gas span a:visited,
    .product .oil .product_navi .oil span a:visited,
    .product .heat .product_navi .heat span a:visited,
    .product .peripheral .product_navi .peripheral span a:visited,
    .product .energy-saving .product_navi .energy-saving span a:visited,
    .product .sterilization .product_navi .sterilization span a:visited,
    .product .cooling .product_navi .cooling span a:visited,
    .product .steam .product_navi .steam span a:visited,
    .product .stirring .product_navi .stirring span a:visited,
    .product .kiln .product_navi .kiln span a:visited,
    .product .vacuum .product_navi .vacuum span a:visited,
    .product .nansui .product_navi .nansui span a:visited,
    .product .roka .product_navi .roka span a:visited,
    .product .dakki .product_navi .dakki span a:visited,
    .product .yakuhin .product_navi .yakuhin span a:visited,
    .product .bunseki .product_navi .bunseki span a:visited,
    .product .stay .product_navi .stay span a:visited {
      color: white; }
  .product .gas .product_navi .gas span:after,
  .product .oil .product_navi .oil span:after,
  .product .heat .product_navi .heat span:after,
  .product .peripheral .product_navi .peripheral span:after,
  .product .energy-saving .product_navi .energy-saving span:after,
  .product .sterilization .product_navi .sterilization span:after,
  .product .cooling .product_navi .cooling span:after,
  .product .steam .product_navi .steam span:after,
  .product .stirring .product_navi .stirring span:after,
  .product .kiln .product_navi .kiln span:after,
  .product .vacuum .product_navi .vacuum span:after,
  .product .nansui .product_navi .nansui span:after,
  .product .roka .product_navi .roka span:after,
  .product .dakki .product_navi .dakki span:after,
  .product .yakuhin .product_navi .yakuhin span:after,
  .product .bunseki .product_navi .bunseki span:after,
  .product .stay .product_navi .stay span:after {
    /*content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -5px; */}
.product .entry-product .entry-product-inner {
  padding: 1.6em; }
.product .entry-product h2 {
  background: #F2F3F3;
  font-weight: bold;
  text-align: center;
  padding: 1em 1em 0.8em;
  line-height: 1.5;
  margin: 0 !important; }
  .product .entry-product h2 .title-small {
    font-size: 20px;
    font-size: 2rem;
    display: block;
    color: #BF1920;
    font-weight: normal; }
    @media screen and (max-width: 479px) {
      .product .entry-product h2 .title-small {
        font-size: 15.3846153846px;
        font-size: 1.5384615385rem; } }
  .product .entry-product h2 .title-large {
    font-size: 36px;
    font-size: 3.6rem;
    color: #000; }
    @media screen and (max-width: 479px) {
      .product .entry-product h2 .title-large {
        font-size: 27.692307692299998px;
        font-size: 2.7692307692rem; } }
.product .product-text p, .product .product-text ul, .product .product-text dl, .product .product-text ol, .product .product-text table {
  margin: 0; }
.product .product-text h3 {
  font-size: 18px;
  font-size: 1.8rem;
  color: #BF1920;
  margin: 1em 0 0; }
  @media screen and (max-width: 479px) {
    .product .product-text h3 {
      font-size: 13.8461538462px;
      font-size: 1.3846153846rem; } }
.product .copy {
  font-size: 22px;
  font-size: 2.2rem;
  text-align: left;
  font-weight: bold;
  color: #BF1920; }
  @media screen and (max-width: 479px) {
    .product .copy {
      font-size: 16.9230769231px;
      font-size: 1.6923076923rem; } }
  @media screen and (max-width: 767px) {
    .product .copy {
      font-size: 14px;
      font-size: 1.4rem; } }
  @media screen and (max-width: 767px) and (max-width: 479px) {
    .product .copy {
      font-size: 10.7692307692px;
      font-size: 1.0769230769rem; } }

.product .spec {
  padding-left: 0;
  margin: 2em 0 !important; }
  .product .spec li {
    list-style: none;
    margin-bottom: 14px;
    line-height: 1; }
  .product .spec .spec-title {
    background: #898989;
    color: #fff;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 1px 12px 0;
    line-height: 1; }
    @media screen and (max-width: 479px) {
      .product .spec .spec-title {
        font-size: 10.7692307692px;
        font-size: 1.0769230769rem; } }
  .product .spec .spec-summary {
    color: #000;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: normal;
    line-height: 1.5;
    display: inline; }
    @media screen and (max-width: 479px) {
      .product .spec .spec-summary {
        font-size: 12.3076923077px;
        font-size: 1.2307692308rem; } }
    .product .spec .spec-summary::after {
      content: "";
      display: block;
      clear: both; }
    @media print, screen and (min-width: 768px) {
      .product .spec .spec-summary {
        padding-left: 10px;
        /*display: inline-block;*/ } }
    .product .spec .spec-summary.spec-summary-type {
      font-size: 20px;
      font-size: 2rem;
      font-weight: bold; }
      @media screen and (max-width: 479px) {
        .product .spec .spec-summary.spec-summary-type {
          font-size: 15.3846153846px;
          font-size: 1.5384615385rem; } }
      .product .spec .spec-summary.spec-summary-type .spec-summary-box {
        font-weight: normal;
        font-size: 17px;
        font-size: 1.7rem;
        color: #000;
        margin-top: 1em; }
        @media screen and (max-width: 479px) {
          .product .spec .spec-summary.spec-summary-type .spec-summary-box {
            font-size: 13.0769230769px;
            font-size: 1.3076923077rem; } }
        .product .spec .spec-summary.spec-summary-type .spec-summary-box table {
          text-align: center; }
        .product .spec .spec-summary.spec-summary-type .spec-summary-box .list {
          margin-top: 1em; }
          .product .spec .spec-summary.spec-summary-type .spec-summary-box .list li {
            margin-bottom: 0;
            line-height: 1.7; }
.product .product-detail p {
  margin-top: 0; }
.product .btn-group {
  margin-top: 2em; }
  .product .btn-group__item {
    /*width: 50%;
    float: left;*/
    padding: 5px !important;
    display: inline-block; }
    .product .btn-group__item a {
      background: #414B50 url(../img/file_icon_pdf.png) no-repeat 15px 50%;
      background-size: 26px auto;
      position: relative;
      color: #fff;
      border-radius: 5px;
      display: block;
      width: 100%;
      padding: 0.8em 4.5em 0.8em 5em;
      text-align: center; }
      @media screen and (max-width: 767px) {
        .product .btn-group__item a {
          background: #414B50 url(../img/file_icon_pdf.png) no-repeat 10px 50%;
          background-size: 15px auto; } }
      .product .btn-group__item a:after {
        font-family: FontAwesome;
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        right: 15px;
        margin-top: -0.5em;
        font-size: 1.3rem;
        line-height: 1;
        color: #fff; }
.product .maintenance-box {
  margin-top: 2em; }
  .product .maintenance-box::after {
    content: "";
    display: block;
    clear: both; }
.product .maintenance-title {
  margin: 4em auto 2em; }
.product .btn__small {
  display: block;
  width: 60%;
  margin: 0 auto;
  font-family: din-condensed, sans-serif; }
.product .productindex {
  margin-bottom: 2em; }
  .product .productindex .product_navi {
    margin-bottom: -1em; }
    .product .productindex .product_navi ul {
      margin: 2em 10px 0; }
    .product .productindex .product_navi li {
      font-size: 15px;
      font-size: 1.5rem; }
      @media screen and (max-width: 479px) {
        .product .productindex .product_navi li {
          font-size: 11.5384615385px;
          font-size: 1.1538461538rem; } }
      .product .productindex .product_navi li a > span:after {
        /*content: "";
        display: block;
        width: 8px;
        height: 8px;
        border-right: 1px solid #BF1920;
        border-top: 1px solid #BF1920;
        transform: rotate(135deg);
        position: absolute;
        top: 50%;
        right: 15px;
        margin-top: -5px; */}
      .product .productindex .product_navi li > span:after {
        /*content: "";
        display: block;
        width: 8px;
        height: 8px;
        border-right: 1px solid #fff;
        border-top: 1px solid #fff;
        transform: rotate(135deg);
        position: absolute;
        top: 50%;
        right: 15px;
        margin-top: -5px; */}
.product .maintenance .maintenance-copy {
  background: url(../img/arrow.png) no-repeat 50% 50%;
  background-size: 5em auto;
  padding: 4em 0 1em;
  font-weight: bold;
  font-size: 22px;
  font-size: 2.2rem;
  text-align: center;
  color: #BF1920;
  margin: 2em auto 0; }
  @media screen and (max-width: 479px) {
    .product .maintenance .maintenance-copy {
      font-size: 16.9230769231px;
      font-size: 1.6923076923rem; } }
.product .maintenance .maintenance-item {
  width: 100%;
  height: auto;
  margin-top: 1em; }
  .product .maintenance .maintenance-item__summary p {
    text-align: left; }
  .product .maintenance .maintenance-item__bottom {
    width: 100%;
    color: #fff;
    margin: 1em 0; }
    .product .maintenance .maintenance-item__bottom p {
      width: 70%;
      margin: 0 auto;
      background: #BF1920;
      padding: 1em; }
    .product .maintenance .maintenance-item__bottom span {
      display: block;
      font-size: 26px;
      font-size: 2.6rem;
      font-weight: bold; }
      @media screen and (max-width: 479px) {
        .product .maintenance .maintenance-item__bottom span {
          font-size: 20px;
          font-size: 2rem; } }
.product .maintenance .decoration-box-red {
  margin: 2em 0; }
.product .maintenance .merit {
  padding-top: 2em; }
  .product .maintenance .merit::after {
    content: "";
    display: block;
    clear: both; }
  .product .maintenance .merit .merit-first {
    font-size: 18px;
    font-size: 1.8rem; }
    @media screen and (max-width: 479px) {
      .product .maintenance .merit .merit-first {
        font-size: 13.8461538462px;
        font-size: 1.3846153846rem; } }
  .product .maintenance .merit .merit-second {
    text-align: center;
    font-size: 45px;
    font-size: 4.5rem; }
    @media screen and (max-width: 479px) {
      .product .maintenance .merit .merit-second {
        font-size: 34.615384615400004px;
        font-size: 3.4615384615rem; } }
  .product .maintenance .merit .merit-third {
    font-size: 34px;
    font-size: 3.4rem;
    font-weight: bold;
    text-align: center; }
    @media screen and (max-width: 479px) {
      .product .maintenance .merit .merit-third {
        font-size: 26.1538461538px;
        font-size: 2.6153846154rem; } }
  @media print, screen and (min-width: 992px) {
    .product .maintenance .merit .merit-first {
      width: 45%;
      float: left; }
    .product .maintenance .merit .merit-second {
      width: 10%;
      float: left; }
    .product .maintenance .merit .merit-third {
      width: 45%;
      float: left; } }
  .product .maintenance .merit p, .product .maintenance .merit ul {
    margin: 0; }
.product .producttop {
  overflow: hidden; }
  .product .producttop .entry-product-inner {
    display: none; }
  .product .producttop .product_top {
    margin-top: 2em; }
    .product .producttop .product_top .product_top_item {
      background: #F2F3F3; }
      .product .producttop .product_top .product_top_item::after {
        content: "";
        display: block;
        clear: both; }
      @media print, screen and (min-width: 992px) {
        .product .producttop .product_top .product_top_item {
          width: 50%;
          margin: 0 10px 10px; } }
      .product .producttop .product_top .product_top_item .product_top_item_title {
        background: #BF1920;
        color: #fff;
        padding: 1em 2em;
        line-height: 1.5; }
        .product .producttop .product_top .product_top_item .product_top_item_title h3 {
          color: #fff;
          font-size: 28px;
          font-size: 2.8rem;
          margin: 0; }
          @media screen and (max-width: 479px) {
            .product .producttop .product_top .product_top_item .product_top_item_title h3 {
              font-size: 21.5384615385px;
              font-size: 2.1538461538rem; } }
          .product .producttop .product_top .product_top_item .product_top_item_title h3 span {
            display: block;
            font-size: 13px;
            font-size: 1.3rem;
            font-weight: normal; }
            @media screen and (max-width: 479px) {
              .product .producttop .product_top .product_top_item .product_top_item_title h3 span {
                font-size: 10px;
                font-size: 1rem; } }
        .product .producttop .product_top .product_top_item .product_top_item_title .category-copy {
          font-size: 22px;
          font-size: 2.2rem;
          font-weight: bold;
          margin: 0 !important; }
          @media screen and (max-width: 479px) {
            .product .producttop .product_top .product_top_item .product_top_item_title .category-copy {
              font-size: 16.9230769231px;
              font-size: 1.6923076923rem; } }
      .product .producttop .product_top .product_top_item__thumb {
        padding: 1em 2em 0;
        width: 55%;
        float: left; }
        .product .producttop .product_top .product_top_item__thumb p {
          margin: 0; }
      .product .producttop .product_top .product_top_item__text {
        padding: 1em 0 1em 1em;
        font-size: 16px;
        font-size: 1.6rem;
        width: 45%;
        float: left; }
        @media screen and (max-width: 479px) {
          .product .producttop .product_top .product_top_item__text {
            font-size: 12.3076923077px;
            font-size: 1.2307692308rem; } }
        .product .producttop .product_top .product_top_item__text ul {
          margin: 0; }
        .product .producttop .product_top .product_top_item__text .index-link {
          font-size: 20px;
          font-size: 2rem;
          font-weight: bold;
          display: block;
          margin-bottom: 5px; }
          @media screen and (max-width: 479px) {
            .product .producttop .product_top .product_top_item__text .index-link {
              font-size: 15.3846153846px;
              font-size: 1.5384615385rem; } }
          .product .producttop .product_top .product_top_item__text .index-link:before {
            padding-left: 0; }
          .product .producttop .product_top .product_top_item__text .index-link a {
            color: #BF1920; }
      .product .producttop .product_top .product_top_item__boiler .product_top_item_title {
        background: #E40012; }
      .product .producttop .product_top .product_top_item__boiler .list-arrow li:before {
        color: #E40012; }
      .product .producttop .product_top .product_top_item__boiler .list-arrow .index-link a {
        color: #E40012; }
      .product .producttop .product_top .product_top_item__food .product_top_item_title {
        background: #FA6E00; }
      .product .producttop .product_top .product_top_item__food .list-arrow li:before {
        color: #FA6E00; }
      .product .producttop .product_top .product_top_item__food .list-arrow .index-link a {
        color: #FA6E00; }
      .product .producttop .product_top .product_top_item__water .product_top_item_title {
        background: #2EB4E2; }
      .product .producttop .product_top .product_top_item__water .list-arrow li:before {
        color: #2EB4E2; }
      .product .producttop .product_top .product_top_item__water .list-arrow .index-link a {
        color: #2EB4E2; }
      .product .producttop .product_top .product_top_item__water .product_top_item__thumb {
        padding: 1em 1.4em 0; }
      .product .producttop .product_top .product_top_item__maintenance .product_top_item_title {
        background: #A23096; }
      .product .producttop .product_top .product_top_item__maintenance .list-arrow li:before {
        color: #A23096; }
      .product .producttop .product_top .product_top_item__maintenance .list-arrow .index-link a {
        color: #A23096; }
      .product .producttop .product_top .product_top_item__maintenance .product_top_item__thumb {
        width: 50%;
        padding: 1.4em; }
      .product .producttop .product_top .product_top_item__maintenance .product_top_item__text {
        width: 50%;
        padding: 1em 0; }

.recruit .page-title-wrapper .page-title .page-title-red {
  color: #BF1920;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 300; }
  @media screen and (max-width: 479px) {
    .recruit .page-title-wrapper .page-title .page-title-red {
      font-size: 10.7692307692px;
      font-size: 1.0769230769rem; } }
  @media print, screen and (min-width: 768px) {
    .recruit .page-title-wrapper .page-title .page-title-red {
      font-size: 18px;
      font-size: 1.8rem; } }
  @media screen and (min-width: 768px) and (max-width: 479px) {
    .recruit .page-title-wrapper .page-title .page-title-red {
      font-size: 13.8461538462px;
      font-size: 1.3846153846rem; } }

.recruit .page-title-wrapper .page-title .page-title-sub {
  font-size: 34px;
  font-size: 3.4rem;
  color: #000;
  display: block;
  letter-spacing: normal;
  font-weight: bold; }
  @media screen and (max-width: 479px) {
    .recruit .page-title-wrapper .page-title .page-title-sub {
      font-size: 26.1538461538px;
      font-size: 2.6153846154rem; } }
.recruit .recruittop {
  margin-top: 2em; }
  .recruit .recruittop .recruittop-item {
    /*background: url(../img/bg_recruittop01.jpg) no-repeat center center;
    background-size: cover;*/
    width: 100%;
    padding-bottom: 60%;
    position: relative;
    overflow: hidden;
    margin-bottom: 1em; }
    .recruit .recruittop .recruittop-item:after {
      position: absolute;
      content: "";
      display: block;
      width: 100%;
      height: 100%;
      top: 0;
      background: url(../img/bg_recruittop01.jpg) no-repeat center center;
      -webkit-background-size: cover;
      -moz-background-size: cover;
      -ms-background-size: cover;
      background-size: cover;
      -webkit-transition: all .3s ease-out;
      -moz-transition: all .3s ease-out;
      -ms-transition: all .3s ease-out;
      transition: all .3s ease-out;
      z-index: 1; }
    .recruit .recruittop .recruittop-item:hover:after {
      opacity: .8;
      -moz-transform: scale(1.2);
      -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
      transform: scale(1.2); }
    .recruit .recruittop .recruittop-item .recruittop-item-title {
      text-align: center;
      /*padding: 6.5em 0 3.5em;*/
      margin: 0;
      text-align: center;
      width: 100%;
      color: #fff;
      position: absolute;
      top: 40%;
      z-index: 10;
      font-size: 21px;
      font-size: 2.1rem;
      font-weight: bold; }
      @media screen and (max-width: 479px) {
        .recruit .recruittop .recruittop-item .recruittop-item-title {
          font-size: 16.1538461538px;
          font-size: 1.6153846154rem; } }
    .recruit .recruittop .recruittop-item .recruittop-item-btn {
      text-align: center;
      font-family: din-condensed, sans-serif;
      letter-spacing: 3px;
      margin: 0;
      padding: 10px;
      text-align: center;
      width: 100%;
      position: absolute;
      bottom: 10px;
      z-index: 11; }
      .recruit .recruittop .recruittop-item .recruittop-item-btn a {
        color: #fff;
        display: flex;
        align-content: center;
        justify-content: center;
        line-height: 11px; }
        .recruit .recruittop .recruittop-item .recruittop-item-btn a .text {
          /*display: table-cell*/ }
        .recruit .recruittop .recruittop-item .recruittop-item-btn a .arrow {
          /*display: table-cell;*/ }
          .recruit .recruittop .recruittop-item .recruittop-item-btn a .arrow:after {
            content: "";
            width: 22px;
            height: 22px;
            border-right: 1px solid #fff;
            border-top: 1px solid #fff;
            transform: rotate(45deg);
            display: inline-block;
            margin-top: -5px; }
  .recruit .recruittop .recruittop-item02:after {
    background: url(../img/bg_recruittop02.jpg) no-repeat center center;
    background-size: cover; }
  .recruit .recruittop .recruittop-item03:after {
    background: url(../img/bg_recruittop03.jpg) no-repeat center center;
    background-size: cover; }
  .recruit .recruittop .recruittop-item04:after {
    background: url(../img/bg_recruittop04.jpg) no-repeat center center;
    background-size: cover; }
  .recruit .recruittop .recruittop-item04 .recruittop-item-title {
    top: 35%;
    line-height: 1.4; }
  .recruit .recruittop .recruittop-item05:after {
    background: url(../img/bg_recruittop05.jpg) no-repeat center center;
    background-size: cover; }
  .recruit .recruittop .recruittop-item06:after {
    background: url(../img/bg_recruittop06.jpg) no-repeat center center;
    background-size: cover; }
  .recruit .recruittop .recruittop-item07:after {
    background: url(https://www.samson.co.jp/media/001/202401/FB_icon.png) no-repeat center center;
    background-size: contain; }
    
.recruit .recruit-list-item {
  padding: 5px; }
  .recruit .recruit-list-item .welfare-library-img {
    width: 40%;
    float: right;
    margin: 0 0 10px 10px; }
@media print, screen and (min-width: 768px) {
  .recruit .recruit-flow table th {
    width: 20%; } }
@media screen and (max-width: 767px) {
  .recruit .recruit-flow table th {
    display: block;
    width: 100%;
    float: none; } }
@media screen and (max-width: 767px) {
  .recruit .recruit-flow table td {
    display: block;
    width: 100%;
    float: none; } }
.recruit .sec-banner {
  margin: 1em 0 2em; }
  .recruit .sec-banner .section-btn-list {
    text-align: center; }
    .recruit .sec-banner .section-btn-list::after {
      content: "";
      display: block;
      clear: both; }
    @media print, screen and (min-width: 768px) {
      .recruit .sec-banner .section-btn-list {
        -js-display: flex;
        display: -webkit-flex;
        display: flex; } }
    .recruit .sec-banner .section-btn-list .section-btn {
      display: inline-block;
      margin: 2em 1em;
      letter-spacing: 2px; }
      @media print, screen and (min-width: 768px) {
        .recruit .sec-banner .section-btn-list .section-btn {
          width: 33.333%; } }
      @media screen and (max-width: 767px) {
        .recruit .sec-banner .section-btn-list .section-btn {
          margin: 2em 1em 0; } }
  .recruit .sec-banner .section-btn {
    text-align: center; }
    .recruit .sec-banner .section-btn .btn {
      display: block;
      text-align: center;
      line-height: 1;
      padding: 1.2em 0;
      font-size: 19px;
      font-size: 1.9rem;
      position: relative;
      font-weight: bold;
      color: #BF1920;
      border: 1px solid #BF1920; }
      @media screen and (max-width: 479px) {
        .recruit .sec-banner .section-btn .btn {
          font-size: 14.6153846154px;
          font-size: 1.4615384615rem; } }
      .recruit .sec-banner .section-btn .btn:hover {
        text-decoration: none;
        background: white; }
      .recruit .sec-banner .section-btn .btn:after {
        content: "";
        display: block;
        width: 5px;
        height: 5px;
        border-right: 2px solid #BF1920;
        border-top: 2px solid #BF1920;
        transform: rotate(45deg);
        position: absolute;
        top: 50%;
        right: 15px;
        margin-top: -4px; }
      @media screen and (max-width: 767px) {
        .recruit .sec-banner .section-btn .btn {
          padding: 0.7em 2em; } }
.recruit .samsolution {
  overflow: hidden;
  margin-bottom: -2em; }
  .recruit .samsolution .summary {
    padding-bottom: 3em; }
  .recruit .samsolution .producttop-category {
    padding: 4em 1em 3em; }
    .recruit .samsolution .producttop-category h3 {
      font-size: 36px;
      font-size: 3.6rem;
      color: #000;
      margin: 0; }
      @media screen and (max-width: 479px) {
        .recruit .samsolution .producttop-category h3 {
          font-size: 27.692307692299998px;
          font-size: 2.7692307692rem; } }
      .recruit .samsolution .producttop-category h3 span {
        font-size: 15px;
        font-size: 1.5rem;
        padding: 0 1.5em;
        color: #BF1920; }
        @media screen and (max-width: 479px) {
          .recruit .samsolution .producttop-category h3 span {
            font-size: 11.5384615385px;
            font-size: 1.1538461538rem; } }
    .recruit .samsolution .producttop-category p {
      font-size: 15px;
      font-size: 1.5rem;
      margin: 1.5em 0 0; }
      @media screen and (max-width: 479px) {
        .recruit .samsolution .producttop-category p {
          font-size: 11.5384615385px;
          font-size: 1.1538461538rem; } }
      @media screen and (max-width: 767px) {
        .recruit .samsolution .producttop-category p img {
          width: 60%;
          display: block;
          margin: 0 auto; } }
    .recruit .samsolution .producttop-category .copy {
      font-size: 22px;
      font-size: 2.2rem;
      margin: 10px 0; }
      @media screen and (max-width: 479px) {
        .recruit .samsolution .producttop-category .copy {
          font-size: 16.9230769231px;
          font-size: 1.6923076923rem; } }
    .recruit .samsolution .producttop-category .link-btn {
      margin-top: 2.4em; }
    .recruit .samsolution .producttop-category .btn {
      padding: 0.75em 2em;
      display: inline-block;
      border: 1px solid #BF1920;
      background: #BF1920;
      color: #fff;
      position: relative; }
      .recruit .samsolution .producttop-category .btn:after {
        content: "";
        display: block;
        width: 8px;
        height: 8px;
        border-right: 1px solid #fff;
        border-top: 1px solid #fff;
        transform: rotate(45deg);
        position: absolute;
        top: 50%;
        right: 10px;
        margin-top: -5px; }
    .recruit .samsolution .producttop-category:hover * {
      color: #fff !important; }
    .recruit .samsolution .producttop-category:hover .btn {
      color: #fff;
      border: 1px solid #fff;
      background: none;
      padding: 0.75em 2em; }
  .recruit .samsolution .producttop-category-boiler {
    background: url(../img/bg_producttop_boiler.jpg) no-repeat 50% 50%;
    background-size: cover; }
    @media print, screen and (min-width: 992px) {
      .recruit .samsolution .producttop-category-boiler {
        padding-bottom: 0; } }
    .recruit .samsolution .producttop-category-boiler:hover {
      background: url(../img/bg_producttop_boiler_on.jpg) no-repeat 50% 50%;
      background-size: cover; }
      @media print, screen and (min-width: 992px) {
        .recruit .samsolution .producttop-category-boiler:hover {
          padding-bottom: 0; } }
    @media print, screen and (min-width: 992px) {
      .recruit .samsolution .producttop-category-boiler .acms-col-md-5 p {
        margin-top: -2em; } }
  .recruit .samsolution .producttop-category-food {
    background: url(../img/bg_producttop_food.jpg) no-repeat 50% 50%;
    background-size: cover; }
    .recruit .samsolution .producttop-category-food:hover {
      background: url(../img/bg_producttop_food_on.jpg) no-repeat 50% 50%;
      background-size: cover; }
    .recruit .samsolution .producttop-category-food .btn {
      border: 1px solid #FA6E00;
      background: #FA6E00; }
    .recruit .samsolution .producttop-category-food h3 span {
      color: #FA6E00; }
    .recruit .samsolution .producttop-category-food .copy {
      color: #FA6E00; }
  .recruit .samsolution .producttop-category-water {
    background: url(../img/bg_producttop_water.jpg) no-repeat 50% 50%;
    background-size: cover; }
    @media print, screen and (min-width: 992px) {
      .recruit .samsolution .producttop-category-water {
        padding-bottom: 0; } }
    .recruit .samsolution .producttop-category-water:hover {
      background: url(../img/bg_producttop_water_on.jpg) no-repeat 50% 50%;
      background-size: cover; }
    .recruit .samsolution .producttop-category-water .btn {
      border: 1px solid #2EB4E2;
      background: #2EB4E2; }
    .recruit .samsolution .producttop-category-water h3 span {
      color: #2EB4E2; }
    .recruit .samsolution .producttop-category-water .copy {
      color: #2EB4E2; }
    @media print, screen and (min-width: 992px) {
      .recruit .samsolution .producttop-category-water .acms-col-md-5 p {
        margin-top: -3.5em; } }
  .recruit .samsolution .producttop-category-maintenance {
    background: url(../img/bg_producttop_maintenance.jpg) no-repeat 50% 50%;
    background-size: cover;
    padding: 0;
    width: 100%; }
    .recruit .samsolution .producttop-category-maintenance::after {
      content: "";
      display: block;
      clear: both; }
    .recruit .samsolution .producttop-category-maintenance * {
      box-sizing: border-box; }
    .recruit .samsolution .producttop-category-maintenance:hover {
      background: url(../img/bg_producttop_maintenance_on.jpg) no-repeat 50% 50%;
      background-size: cover; }
    .recruit .samsolution .producttop-category-maintenance .btn {
      border: 1px solid #A23096;
      background: #A23096; }
    .recruit .samsolution .producttop-category-maintenance h3 span {
      color: #A23096; }
    .recruit .samsolution .producttop-category-maintenance .copy {
      color: #A23096; }
    .recruit .samsolution .producttop-category-maintenance .maintenance-text {
      padding: 2em; }
      @media print, screen and (min-width: 992px) {
        .recruit .samsolution .producttop-category-maintenance .maintenance-text {
          padding: 4em 4em 2em; } }
    .recruit .samsolution .producttop-category-maintenance .maintenance-thumb {
      margin: 0 0 0 -10px; }

.company-title .page-title .page-title-sub {
  letter-spacing: 0; }
@media print, screen and (min-width: 768px) {
  .company-title .page-title {
    padding: 45px 0 60px; } }
@media print, screen and (min-width: 768px) {
  .company-title__top .page-title {
    padding: 55px 0; } }

.company article {
  margin: 0 0 4em 0; }
.company .index-list {
  margin: 2em 0 0; }
.company .history {
  margin-bottom: 2em; }
  .company .history .history-item::after {
    content: "";
    display: block;
    clear: both; }
  @media print, screen and (min-width: 992px) {
    .company .history .history-item {
      background: url(../img/history_bg.png) repeat-y 33px 0; } }
  .company .history .history-item .history-list {
    margin-bottom: 5px; }
    .company .history .history-item .history-list::after {
      content: "";
      display: block;
      clear: both; }
  .company .history .history-item__year {
    text-align: center;
    margin: 5px 0; }
    .company .history .history-item__year::after {
      content: "";
      display: block;
      clear: both; }
    .company .history .history-item__year span {
      background: #BF1920;
      display: block;
      color: #fff;
      padding: 1em; }
    @media print, screen and (min-width: 992px) {
      .company .history .history-item__year {
        width: 72px;
        height: 72px;
        float: left;
        margin: 0 !important; }
        .company .history .history-item__year span {
          padding: 1.4em 0;
          border-radius: 36px;
          background: #BF1920;
          color: #fff;
          display: inline-block;
          width: 72px;
          height: 72px; } }
  .company .history .history-item__summary {
    background: #F2F3F3;
    padding: 1.2em 1em; }
    @media print, screen and (min-width: 992px) {
      .company .history .history-item__summary {
        width: 85%;
        float: left;
        margin: 0 1em; } }
    .company .history .history-item__summary p {
      margin: 5px !important; }
      .company .history .history-item__summary p::after {
        content: "";
        display: block;
        clear: both; }
    .company .history .history-item__summary .nen {
      color: #BF1920;
      display: block; }
      @media print, screen and (min-width: 992px) {
        .company .history .history-item__summary .nen {
          width: 25%;
          float: left; } }
    .company .history .history-item__summary .month {
      display: block; }
      @media print, screen and (min-width: 992px) {
        .company .history .history-item__summary .month {
          width: 10%;
          text-align: right;
          float: left; } }
    .company .history .history-item__summary .naiyo {
      color: #000;
      display: block; }
      @media print, screen and (min-width: 992px) {
        .company .history .history-item__summary .naiyo {
          width: 65%;
          float: left;
          padding-left: 1.5em; } }
  @media print, screen and (min-width: 992px) {
    .company .history .history-item__text {
      width: 73%;
      float: left; } }
  @media print, screen and (min-width: 992px) {
    .company .history .history-item__img {
      width: 27%;
      float: left; } }
  .company .history .history-item__img P {
    margin: 0 !important; }

.solution article {
  margin: 0 0 4em 0; }
.solution h2, .solution h3, .solution p, .solution ul {
  margin-top: 1.4em; }
.solution section {
  margin: 2em 0; }
  .solution section::after {
    content: "";
    display: block;
    clear: both; }
.solution .main-copy {
  text-align: center;
  font-size: 22px;
  font-size: 2.2rem;
  color: #BF1920; }
  @media screen and (max-width: 479px) {
    .solution .main-copy {
      font-size: 16.9230769231px;
      font-size: 1.6923076923rem; } }
  @media screen and (max-width: 767px) {
    .solution .main-copy br {
      display: none; } }
.solution .btn {
  margin-top: 1em;
  font-size: 15px;
  font-size: 1.5rem; }
  @media screen and (max-width: 479px) {
    .solution .btn {
      font-size: 11.5384615385px;
      font-size: 1.1538461538rem; } }
.solution .solution-index a {
  position: relative;
  display: block;
  width: 100%; }
  .solution .solution-index a .index-item-title {
    color: #BF1920; }
  .solution .solution-index a .index-item-summary {
    color: #414B50;
    padding-right: 1em; }
  .solution .solution-index a:after {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-right: 3px solid #BF1920;
    border-top: 3px solid #BF1920;
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -4px; }
  @media screen and (max-width: 767px) {
    .solution .solution-index a {
      padding-right: 1.5em; }
      .solution .solution-index a br {
        display: none; } }
.solution .sec02 {
  margin: 2em 0; }
.solution table {
  margin: 2em 0 2em; }
.solution .tour-sec {
  margin: 4em 0; }
.solution .gmap {
  margin: 4em 0; }
  .solution .gmap iframe {
    width: 100%; }
.solution .taste-title {
  margin: 2em auto 1em;
  text-align: center; }
  .solution .taste-title h2.img {
    width: 60%;
    margin: 0 auto; }
  @media print, screen and (min-width: 768px) {
    .solution .taste-title h2.img {
      width: 35%;
      margin: 0 auto; } }
  .solution .taste-title span {
    font-size: 23px;
    font-size: 2.3rem;
    color: #000; }
    @media screen and (max-width: 479px) {
      .solution .taste-title span {
        font-size: 17.692307692299998px;
        font-size: 1.7692307692rem; } }
.solution .taste-navi {
  padding-left: 0; }
  @media print, screen and (min-width: 768px) {
    .solution .taste-navi {
      width: 50%;
      margin: 0 auto;
      -js-display: flex;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: space-between;
      justify-content: space-between; } }
  .solution .taste-navi li {
    list-style: none;
    border: 1px solid #BF1920;
    padding: 10px 0;
    width: 100%;
    position: relative;
    display: block;
    margin: 0.5em;
    text-align: center; }
    .solution .taste-navi li a {
      color: #BF1920;
      text-decoration: none; }
      .solution .taste-navi li a:hover, .solution .taste-navi li a:active, .solution .taste-navi li a:focus {
        color: #bf1920;
        text-decoration: none; }
      .solution .taste-navi li a:visited {
        color: #bf1920; }
      .solution .taste-navi li a:after {
        content: "";
        display: block;
        width: 8px;
        height: 8px;
        border-right: 1px solid #BF1920;
        border-top: 1px solid #BF1920;
        transform: rotate(135deg);
        position: absolute;
        top: 50%;
        right: 15px;
        margin-top: -5px; }
.solution .enver .gray-box {
  margin-top: 2em; }
