@charset "UTF-8";
/* CSS Document */
/*---------------------------------------------
	General Settings
  ---------------------------------------------*/
img {
  max-width: 100%;
  height: auto;
  width: auto\9;
  /* ie8 */
  vertical-align: bottom;
}

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

body {
  background: #eeeeee;
  text-align: center;
  font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 16px;
  /* base font-size */
  font-size: 1.6rem;
  line-height: 1.6;
  color: #1b1b1b;
}
@media print {
  body {
    width: 1024px;
  }
}

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

/*---------------------------------------------
  News Icon Color
  ---------------------------------------------*/
.home-news-list .icon-001,
.news-list .icon-001,
.post-category .icon-001 {
  background: #009e96;
}
.home-news-list .icon-002,
.news-list .icon-002,
.post-category .icon-002 {
  background: #eb6100;
}
.home-news-list .icon-003,
.news-list .icon-003,
.post-category .icon-003 {
  background: #009944;
}
.home-news-list .icon-004,
.news-list .icon-004,
.post-category .icon-004 {
  background: #eb6877;
}
.home-news-list .icon-005,
.news-list .icon-005,
.post-category .icon-005 {
  background: #7d7d7d;
}

/*---------------------------------------------
	Header
  ---------------------------------------------*/
header {
  background: white;
}

@media (min-width: 480px) {
  .header-top {
    background: #e5e5e5;
    padding: 0 1em;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .header-top::after {
    display: block;
    clear: both;
    content: '';
  }
}

.header-description {
  display: none;
}
@media (min-width: 768px) {
  .header-description {
    display: block;
    float: left;
    margin: 0;
    padding-top: 8px;
    text-align: left;
    font-weight: normal;
    font-size: .75em;
  }
}

.toggle-list {
  position: absolute;
  top: .25em;
  right: 10px;
  padding: 0;
  list-style: none;
  letter-spacing: -.5em;
}
@media (min-width: 480px) {
  .toggle-list {
    display: none;
  }
}
.toggle-list > li {
  display: inline-block;
  letter-spacing: normal;
}
.toggle-list > li:not(:last-of-type) {
  margin-right: 10px;
}
.toggle-list .lang-select-toggle {
  position: relative;
  z-index: 2;
  border: none;
  background: none;
  color: #0068b7;
  font-size: .8125em;
  cursor: pointer;
}
.toggle-list .lang-select-toggle.close::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
}
.toggle-list .lang-select-toggle.open::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
}
.toggle-list .global-nav-toggle {
  border: none;
  background: none;
}
.toggle-list .global-nav-toggle.close::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: 1em;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0;
}
.toggle-list .global-nav-toggle.open::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: 1em;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0;
}

.header-lang-nav {
  position: absolute;
  top: 0;
  left: -50%;
  z-index: 1;
  width: 50%;
  background: rgba(27, 27, 27, 0.95);
}
@media (min-width: 480px) {
  .header-lang-nav {
    position: static;
    width: auto;
    background: none;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .header-lang-nav {
    float: right;
  }
}

.header-lang-nav .lang-list {
  margin: 3.5em 0;
  border-top: 1px solid #535353;
  padding: 0;
  list-style: none;
}
@media (min-width: 480px) {
  .header-lang-nav .lang-list {
    margin: 0;
    border-top: none;
    padding: 5px 0;
    text-align: right;
  }
}
.header-lang-nav .lang-list > li {
  border-bottom: 1px solid #535353;
}
@media (min-width: 480px) {
  .header-lang-nav .lang-list > li {
    display: inline-block;
    border-bottom: none;
  }
  .header-lang-nav .lang-list > li:not(:last-of-type) {
    margin-right: 20px;
  }
}
.header-lang-nav .lang-list > li > a {
  display: block;
  padding: 1em 0;
  text-decoration: none;
  color: white;
  font-size: .8125em;
}
@media (min-width: 480px) {
  .header-lang-nav .lang-list > li > a {
    display: inline;
    padding: 0;
    color: #0068b7;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .header-lang-nav .lang-list > li > a {
    transition: all .25s ease;
  }
  .header-lang-nav .lang-list > li > a:hover {
    color: #68b3d4;
  }
}

.header-lang-nav .lang-list > li > a::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
}

.header-inner {
  padding: 1em 10px;
}
@media (min-width: 480px) {
  .header-inner {
    padding: 0 10px;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .header-inner {
    margin: 14px 0;
  }
}
@media (min-width: 480px) {
  .header-inner::after {
    display: block;
    clear: both;
    content: '';
  }
}
.header-inner .site-logo {
  margin: 0;
  text-align: left;
}
@media (min-width: 480px) {
  .header-inner .site-logo {
    display: block;
    width: 124px;
    float: left;
    margin: 1em 0;
  }
}
.header-inner .site-logo img {
  width: 82px;
}
@media (min-width: 480px) {
  .header-inner .site-logo img {
    width: auto;
  }
}

.header-right {
  letter-spacing: -.5em;
}
@media (min-width: 480px) {
  .header-right {
    width: calc(100% - 144px);
    float: right;
  }
}

.header-search,
.header-inquiry-btn {
  display: inline-block;
  letter-spacing: normal;
}

.header-search {
  width: 80%;
  text-align: left;
  font-size: .75em;
}
@media (min-width: 480px) {
  .header-search {
    text-align: right;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .header-search {
    width: calc(100% - 210px);
  }
}

.header-search .header-search-input {
  display: inline-block;
  width: 85%;
  box-sizing: border-box;
  background: whitesmoke;
}
@media (min-width: 480px) {
  .header-search .header-search-input {
    width: 230px;
  }
}
.header-search .header-search-submit {
  display: inline-block;
  border: none;
  background: #0075a9;
  padding: 5px 6px;
  color: white;
}
@media (min-width: 768px) {
  .header-search .header-search-submit {
    border: 1px solid #0075a9;
    padding: 4px 10px;
    cursor: pointer;
    transition: all .25s ease;
  }
  .header-search .header-search-submit:hover {
    border: 1px solid #68b3d4;
    background: #187fad;
  }
}
.header-search .header-search-submit::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: 1em;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0;
}
@media (min-width: 768px) {
  .header-search .header-search-submit::before {
    margin-right: .25em;
  }
}

.header-inquiry-btn {
  width: 15%;
  margin-left: 5%;
}
@media (min-width: 768px) {
  .header-inquiry-btn {
    width: 190px;
    margin-left: 20px;
  }
}
.header-inquiry-btn a {
  display: block;
  background: #eb6100;
  padding: 1px 10px 2px;
  text-decoration: none;
  color: white;
  font-weight: bold;
  font-size: .875em;
}
@media (min-width: 768px) {
  .header-inquiry-btn a {
    border: 1px solid #eb6100;
    padding: 9px 10px;
    transition: all .25s ease;
  }
  .header-inquiry-btn a:hover {
    background: white;
    color: #eb6100;
  }
}
.header-inquiry-btn a::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: 1em;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0;
}
@media (min-width: 768px) {
  .header-inquiry-btn a::before {
    margin-right: .25em;
  }
}

.global-nav {
  display: none;
}
@media (min-width: 480px) {
  .global-nav {
    display: block;
    background: #0075a9;
  }
}
@media (min-width: 768px) {
  .global-nav {
    position: relative;
    z-index: 99999;
  }
}
.global-nav .global-nav-list {
  background: rgba(27, 27, 27, 0.95);
  padding: 0;
  list-style: none;
  font-size: .8125em;
}
@media (min-width: 480px) {
  .global-nav .global-nav-list {
    margin: 0;
    background: none;
    letter-spacing: -.4em;
    font-size: 1em;
  }
}
.global-nav .global-nav-list > li {
  border-bottom: 1px solid #535353;
}
@media (min-width: 480px) {
  .global-nav .global-nav-list > li {
    display: inline-block;
    width: 25%;
    box-sizing: border-box;
    border-bottom: none;
    letter-spacing: normal;
  }
  .global-nav .global-nav-list > li:nth-of-type(4n) {
    border-right: 1px solid #54a4e1;
  }
}
.global-nav .global-nav-list > li > a {
  display: block;
  padding: 1em 0;
  text-decoration: none;
  color: white;
}
@media (min-width: 480px) {
  .global-nav .global-nav-list > li > a {
    border-left: 1px solid #54a4e1;
    padding: 5px 0;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .global-nav .global-nav-list > li > a {
    position: relative;
    padding: 10px 0;
    transition: all .25s ease;
  }
  .global-nav .global-nav-list > li > a::before {
    position: absolute;
    left: 0;
    bottom: 0;
    width: calc(100% - 1px);
    height: 0;
    background: #f39800;
    content: '';
    transition: all .25s ease;
  }
  .global-nav .global-nav-list > li > a:hover {
    background: #187fad;
  }
  .global-nav .global-nav-list > li > a:hover::before {
    height: 5px;
  }
}

.global-nav .global-nav-list .jp-name {
  display: block;
  color: #959595;
  font-size: .6923em;
}
@media (min-width: 480px) {
  .global-nav .global-nav-list .jp-name {
    line-height: normal;
    color: #fff100;
    font-size: .625em;
  }
}

@media (min-width: 768px) {
  .dropdown .dropdown-inner {
    display: none;
    position: absolute;
    left: 0;
    width: 100%;
    box-sizing: border-box;
    padding: 30px 2em;
    background: rgba(13, 76, 104, 0.95);
    text-align: left;
  }
}
.dropdown .dropdown-nav-title {
  display: none;
}
@media (min-width: 768px) {
  .dropdown .dropdown-nav-title {
    display: block;
    color: white;
  }
  .dropdown .dropdown-nav-title::before {
    content: "";
    font-family: 'FontAwesome';
    font-size: inherit;
    font-weight: normal;
    margin-left: 0;
    margin-right: 0.25em;
  }
}
.dropdown .dropdown-nav {
  padding: 0;
  list-style: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-top: 1px solid #1b1b1b;
}
@media (min-width: 480px) {
  .dropdown .dropdown-nav {
    display: none;
  }
}
@media (min-width: 768px) {
  .dropdown .dropdown-nav {
    display: flex;
    display: block\9;
    border: none;
    font-size: .875em;
    letter-spacing: -.4em\9;
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none) {
  .dropdown .dropdown-nav:not(:target) {
    display: -ms-flexbox;
  }
}

.dropdown .dropdown-nav > li {
  width: 50%;
}
@media (min-width: 768px) {
  .dropdown .dropdown-nav > li {
    display: inline-block\9;
    vertical-align: top\9;
    width: 49%;
    margin-bottom: 1em;
    background: rgba(255, 255, 255, 0.15);
    letter-spacing: normal\9;
  }
  .dropdown .dropdown-nav > li:not(:nth-of-type(even)) {
    margin-right: 2%;
  }
}
@media (min-width: 768px) and (min-width: 1024px) {
  .dropdown .dropdown-nav > li:not(:nth-of-type(even)) {
    margin-right: 0;
  }
}

@media (min-width: 1024px) {
  .dropdown .dropdown-nav > li {
    width: 32%;
  }
  .dropdown .dropdown-nav > li:not(:nth-of-type(3n)) {
    margin-right: 2%;
  }
}
@media (min-width: 1024px) and (min-width: 1400px) {
  .dropdown .dropdown-nav > li:not(:nth-of-type(3n)) {
    margin-right: 0;
  }
}

@media (min-width: 1400px) {
  .dropdown .dropdown-nav > li {
    width: 23.5%;
  }
  .dropdown .dropdown-nav > li:not(:nth-of-type(4n)) {
    margin-right: 2%;
  }
}
.dropdown .dropdown-nav > li > a {
  display: block;
  border-right: 1px solid #1b1b1b;
  border-bottom: 1px solid #1b1b1b;
  background: #313131;
  padding: 5px 10px;
  text-decoration: none;
  color: white;
}
@media (min-width: 768px) {
  .dropdown .dropdown-nav > li > a {
    border: none;
    background: none;
    font-weight: bold;
    position: relative;
    transition: all .25s ease;
  }
  .dropdown .dropdown-nav > li > a::after {
    position: absolute;
    right: 1em;
    content: "";
    font-family: 'FontAwesome';
    font-size: 1em;
    font-weight: normal;
    margin-left: 0;
    margin-right: 0;
  }
  .dropdown .dropdown-nav > li > a:hover {
    background: #c8e4f0;
    color: #0d4c68;
  }
}

/*---------------------------------------------
  Main Visual
  ---------------------------------------------*/
.home-slide {
  margin: 0;
  padding: 0;
  list-style: none;
}
.home-slide .slide-img {
  position: relative;
  width: 100%;
}
@media print {
  .home-slide .slide-img {
    width: 1024px;
  }
}
.home-slide .slide-parts {
  position: absolute;
  top: 16%;
  padding: 0 10px;
  text-align: left;
  color: #1b1b1b;
}
@media (min-width: 480px) {
  .home-slide .slide-parts {
    width: 100vw;
    text-align: center;
  }
}
@media print {
  .home-slide .slide-parts {
    width: 1024px;
  }
}
.home-slide .slide-catch-copy {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
  font-size: 1.125em;
}
@media (min-width: 480px) {
  .home-slide .slide-catch-copy {
    font-size: 1.5em;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .home-slide .slide-catch-copy {
    line-height: 1.25em;
    letter-spacing: .1em;
    font-size: 2.5em;
  }
}

@media (min-width: 480px) and (min-width: 768px) and (min-width: 1024px) {
  .home-slide .slide-catch-copy {
    margin-bottom: 4%;
  }
}

@media screen and (min-width: 480px) and (min-width: 768px) and (min-width: 1024px) and (min-width: 1400px) {
  .home-slide .slide-catch-copy {
    font-size: 4em;
  }
}

.home-slide .slide-comment,
.home-slide .slide-link-btn {
  display: none;
}
@media (min-width: 480px) {
  .home-slide .slide-link-btn {
    display: inline;
    font-weight: bold;
    font-size: .875em;
  }
  .home-slide .slide-link-btn > a {
    display: block;
    position: relative;
    width: 190px;
    margin: 0 auto;
    box-sizing: border-box;
    background: #0068b7;
    padding: 10px 10px;
    text-decoration: none;
    color: white;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .home-slide .slide-link-btn > a {
    border: 1px solid #0068b7;
    transition: all .25s ease;
  }
  .home-slide .slide-link-btn > a:hover {
    background: white;
    color: #0068b7;
  }
  .home-slide .slide-link-btn > a:hover::after {
    right: 5px;
  }
}
@media (min-width: 480px) {
  .home-slide .slide-link-btn > a::after {
    position: absolute;
    right: 10px;
    content: "";
    font-family: 'FontAwesome';
    font-size: 1em;
    font-weight: normal;
    margin-left: 0;
    margin-right: 0;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .home-slide .slide-link-btn > a::after {
    transition: all .25s ease;
  }
}

@media (min-width: 768px) {
  .home-slide .slick-dots {
    bottom: 20px;
  }
  .home-slide .slick-dots > li > button {
    cursor: pointer;
  }
}
@media (min-width: 1024px) {
  .home-slide .slide-comment {
    display: block;
    margin-bottom: 6.5%;
  }
}
@media screen and (min-width: 1024px) and (min-width: 1400px) {
  .home-slide .slide-comment {
    font-size: 1.25em;
  }
}

/*---------------------------------------------
  Home Message Area
  ---------------------------------------------*/
.home-message {
  background: #eeeeee;
  padding: 30px 10px;
}
.home-message .home-message-box {
  box-sizing: border-box;
  border: 1px solid gainsboro;
  background: white;
  padding: 10px 10px;
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
}
@media (min-width: 480px) {
  .home-message .home-message-box {
    max-width: 610px;
    margin: 0 auto;
  }
}

/*---------------------------------------------
  Home Product Pickup
  ---------------------------------------------*/
.home-product-pickup {
  margin-bottom: 50px;
  background: white;
  padding: 1em 10px;
}
.home-product-pickup > h1 {
  margin: 34px 0;
  font-size: 1.5em;
}
.home-product-pickup > h1 .en-name {
  display: block;
  color: #f74d00;
  line-height: .75em;
  font-size: .5em;
}

.home-product-pickup-list {
  padding: 0;
  list-style: none;
  text-align: left;
  font-size: .875em;
}
@media (min-width: 480px) {
  .home-product-pickup-list {
    letter-spacing: -.5em;
  }
}
.home-product-pickup-list > li {
  margin-bottom: 2em;
}
@media (min-width: 480px) {
  .home-product-pickup-list > li {
    display: inline-block;
    vertical-align: top;
    width: 48%;
    letter-spacing: normal;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .home-product-pickup-list > li {
    width: 23.79032258064516%;
  }
}
@media (min-width: 480px) {
  .home-product-pickup-list > li:not(:nth-of-type(even)) {
    margin-right: 4%;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .home-product-pickup-list > li:not(:nth-of-type(even)) {
    margin-right: 0;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .home-product-pickup-list > li:not(:nth-of-type(4n)) {
    margin-right: 1.612903225806452%;
  }
}

.home-product-pickup-list > li > a {
  text-decoration: none;
}
@media (min-width: 768px) {
  .home-product-pickup-list > li > a:hover figure {
    border: 1px solid #0068b7;
    opacity: .75;
  }
  .home-product-pickup-list > li > a:hover cite {
    text-decoration: underline;
  }
}
.home-product-pickup-list > li > a figure {
  margin: 0;
  margin-bottom: .5em;
  border: 1px solid #c9c9c9;
  padding: 0;
  text-align: center;
}
@media (min-width: 768px) {
  .home-product-pickup-list > li > a figure {
    transition: all .25s ease;
  }
}
.home-product-pickup-list > li > a > cite {
  font-style: normal;
}

.product-all-view-btn {
  font-weight: bold;
  font-size: .875em;
}
.product-all-view-btn > a {
  display: block;
  position: relative;
  background: #0068b7;
  padding: 10px 10px;
  text-decoration: none;
  color: white;
}
@media (min-width: 480px) {
  .product-all-view-btn > a {
    max-width: 190px;
    margin: 0 auto;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .product-all-view-btn > a {
    border: 1px solid #0068b7;
    transition: all .25s ease;
  }
  .product-all-view-btn > a:hover {
    background: white;
    color: #0068b7;
  }
  .product-all-view-btn > a:hover::after {
    right: 5px;
  }
}

.product-all-view-btn > a::after {
  position: absolute;
  right: 10px;
  content: "";
  font-family: 'FontAwesome';
  font-size: 1em;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0;
}
@media (min-width: 768px) {
  .product-all-view-btn > a::after {
    transition: all .25s ease;
  }
}

/*---------------------------------------------
  Home Sub Contents
  ---------------------------------------------*/
.home-sub-contents {
  color: white;
}
@media (min-width: 480px) {
  .home-sub-contents {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    letter-spacing: -.5em;
  }
}
.home-sub-contents > section {
  margin-bottom: 2em;
  background-size: cover;
  padding: 0 1em;
  padding-top: calc(14% - .67em);
  padding-bottom: 10%;
}
@media (min-width: 480px) {
  .home-sub-contents > section {
    display: inline-block;
    width: 50%;
    margin-bottom: 0;
    box-sizing: border-box;
    letter-spacing: normal;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .home-sub-contents > section {
    position: relative;
    z-index: 1;
  }
  .home-sub-contents > section::before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.25);
    content: '';
  }
}

.home-sub-contents > section > h1 {
  border: 3px solid white;
  padding: 10px;
  font-size: 1.5em;
}
@media (min-width: 768px) {
  .home-sub-contents > section > h1 {
    max-width: 400px;
    margin: 1em auto 30px;
  }
}
.home-sub-contents .content-link {
  margin-top: 30px;
  font-size: .8125em;
}
.home-sub-contents .content-link > a {
  display: block;
  position: relative;
  background: #0068b7;
  padding: 5px 10px;
  text-decoration: none;
  color: white;
}
@media (min-width: 768px) {
  .home-sub-contents .content-link > a {
    width: 190px;
    margin: 0 auto;
    border: 1px solid #0068b7;
    transition: all .25s ease;
  }
  .home-sub-contents .content-link > a:hover {
    background: white;
    color: #0068b7;
  }
  .home-sub-contents .content-link > a:hover::after {
    right: 5px;
  }
}
.home-sub-contents .content-link > a::after {
  position: absolute;
  right: 10px;
  content: "";
  font-family: 'FontAwesome';
  font-size: 1em;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0;
}
@media (min-width: 768px) {
  .home-sub-contents .content-link > a::after {
    transition: all .25s ease;
  }
}

.home-maintenance {
  background: url(../img/home-maintenance-bg.jpg) no-repeat top center;
}

.home-event {
  background: url(../img/home-seminar-bg.jpg) no-repeat top center;
}

/*---------------------------------------------
  Home Inquiry
  ---------------------------------------------*/
.home-inquiry {
  background: white;
  padding: 1em 1em;
}
@media (min-width: 1024px) {
  .home-inquiry {
    padding: 50px 1em;
  }
  .home-inquiry::after {
    display: block;
    clear: both;
    content: '';
  }
}
.home-inquiry > h1 {
  margin: 34px 0;
  font-size: 1.5em;
}
@media (min-width: 1024px) {
  .home-inquiry > h1 {
    width: 190px;
    float: left;
    margin: 1em 0;
    text-align: left;
  }
}
.home-inquiry > h1 .en-name {
  display: block;
  color: #f74d00;
  line-height: .75em;
  font-size: .5em;
}

@media (min-width: 480px) {
  .home-inquiry-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: flex-start;
    letter-spacing: -.5em;
  }
}
@media (min-width: 480px) and (min-width: 1024px) {
  .home-inquiry-list {
    width: calc(100% - 210px);
    float: right;
  }
}

.home-inquiry-list > dl {
  border: 3px solid #1b1b1b;
  padding: 30px 10px;
}
@media (min-width: 480px) {
  .home-inquiry-list > dl {
    display: inline-block;
    vertical-align: top;
    width: 48%;
    box-sizing: border-box;
    letter-spacing: normal;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .home-inquiry-list > dl {
    margin-bottom: 50px;
  }
}
@media (min-width: 480px) and (min-width: 768px) and (min-width: 1024px) {
  .home-inquiry-list > dl {
    margin-bottom: 1em;
  }
}

@media (min-width: 480px) {
  .home-inquiry-list > dl:not(:nth-of-type(even)) {
    margin-right: 4%;
  }
}
.home-inquiry-list > dl dt {
  margin-bottom: 10px;
  font-weight: bold;
}
.home-inquiry-list > dl dd {
  margin: 0;
}
.home-inquiry-list > dl .tel-list {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: .875em;
}
.home-inquiry-list > dl .tel-list > li:not(:last-of-type) {
  margin-bottom: 10px;
}
@media (min-width: 768px) {
  .home-inquiry-list > dl .tel-list > li:not(:last-of-type) {
    margin-bottom: 5px;
  }
}
@media (min-width: 1024px) {
  .home-inquiry-list > dl .tel-list > li {
    font-size: 1em;
  }
}
.home-inquiry-list > dl .tel-num {
  display: block;
  letter-spacing: .1em;
  font-family: Arial;
  font-style: normal;
  font-size: 1.5em;
}
.home-inquiry-list > dl .tel-num::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: 0.58em;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
  vertical-align: middle;
}
@media (min-width: 768px) {
  .home-inquiry-list > dl .tel-num {
    display: inline-block;
    vertical-align: middle;
    margin-left: .5em;
  }
}
.home-inquiry-list > dl .tel-subinfo {
  display: block;
  font-size: .75em;
}
.home-inquiry-list > dl .inquiry-btn {
  display: block;
  position: relative;
  background: #eb6100;
  padding: 10px 10px;
  text-decoration: none;
  color: white;
  font-weight: bold;
  font-size: .875em;
}
@media (min-width: 480px) {
  .home-inquiry-list > dl .inquiry-btn {
    margin-top: 1em;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .home-inquiry-list > dl .inquiry-btn {
    max-width: 295px;
    margin: 1em auto 0;
    border: 1px solid #eb6100;
    transition: all .25s ease;
  }
  .home-inquiry-list > dl .inquiry-btn:hover {
    background: white;
    color: #eb6100;
  }
  .home-inquiry-list > dl .inquiry-btn:hover::after {
    right: 5px;
  }
}

.home-inquiry-list > dl .inquiry-btn::after {
  position: absolute;
  right: 10px;
  content: "";
  font-family: 'FontAwesome';
  font-size: 1em;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0;
}
@media (min-width: 768px) {
  .home-inquiry-list > dl .inquiry-btn::after {
    transition: all .25s ease;
  }
}

/*---------------------------------------------
  Home News
  ---------------------------------------------*/
.home-news {
  background: #eeeeee;
  padding: 50px 1em;
}

@media (min-width: 768px) {
  .home-news-inner::after {
    display: block;
    clear: both;
    content: '';
  }
}
@media (min-width: 1024px) {
  .home-news-left {
    width: 190px;
    float: left;
    text-align: left;
  }
}
.home-news-left > h1 {
  margin: 50px 0;
  font-size: 1.5em;
}
@media (min-width: 768px) {
  .home-news-left > h1 {
    margin: 1em 0 50px;
  }
}
@media (min-width: 768px) and (min-width: 1024px) {
  .home-news-left > h1 {
    margin: 1em 0;
  }
}

.home-news-left > h1 .en-name {
  display: block;
  color: #f74d00;
  line-height: .75em;
  font-size: .5em;
}
.home-news-left .news-all-view-btn {
  display: none;
}
@media (min-width: 1024px) {
  .home-news-left .news-all-view-btn {
    display: block;
    font-size: .8125em;
  }
  .home-news-left .news-all-view-btn > a {
    display: block;
    position: relative;
    width: 140px;
    box-sizing: border-box;
    border: 1px solid #0068b7;
    background: #0068b7;
    padding: 5px 10px;
    text-decoration: none;
    color: white;
    transition: all .25s ease;
  }
  .home-news-left .news-all-view-btn > a::after {
    position: absolute;
    right: 10px;
    content: "";
    font-family: 'FontAwesome';
    font-size: 1em;
    font-weight: normal;
    margin-left: 0;
    margin-right: 0;
    transition: all .25s ease;
  }
  .home-news-left .news-all-view-btn > a:hover {
    background: white;
    color: #0068b7;
  }
  .home-news-left .news-all-view-btn > a:hover::after {
    right: 5px;
  }
}

@media (min-width: 768px) {
  .home-news-center {
    width: 69.41747572815534%;
    float: left;
  }
}
@media (min-width: 768px) and (min-width: 1024px) {
  .home-news-center {
    width: calc(74.59677419354839% - 210px);
  }
}

@media (min-width: 768px) {
  .home-news-right {
    width: 28.64077669902913%;
    float: right;
  }
}
@media (min-width: 768px) and (min-width: 1024px) {
  .home-news-right {
    width: 23.79032258064516%;
  }
}

.home-news-list {
  padding: 0;
  list-style: none;
  text-align: left;
  font-size: .875em;
}
.home-news-list > li {
  margin-bottom: 20px;
}
@media (min-width: 768px) {
  .home-news-list > li {
    letter-spacing: -.5em;
  }
  .home-news-list > li time,
  .home-news-list > li i,
  .home-news-list > li cite {
    letter-spacing: normal;
  }
}
.home-news-list > li time {
  display: inline-block;
  width: 90px;
  vertical-align: middle;
  color: #535353;
  font-family: Arial;
}
.home-news-list > li i,
.home-news-list > li cite {
  font-style: normal;
}
.home-news-list > li i {
  display: inline-block;
  width: 85px;
  text-align: center;
  color: white;
  font-weight: bold;
  font-size: .7857em;
}
.home-news-list > li cite {
  display: block;
}
@media (min-width: 1024px) {
  .home-news-list > li cite {
    display: inline-block;
    vertical-align: top;
    width: calc(100% - 195px);
    margin-left: 20px;
  }
}
.home-news-list > li a {
  text-decoration: none;
}
@media (min-width: 768px) {
  .home-news-list > li a:hover {
    text-decoration: underline;
  }
}
.home-news-list > li a:link {
  color: #1b1b1b;
}
.home-news-list > li a:visited {
  color: #535353;
}

.home-recruit-bnr > a {
  display: block;
  text-decoration: none;
  color: white;
}
@media (min-width: 768px) {
  .home-recruit-bnr > a img,
  .home-recruit-bnr > a cite,
  .home-recruit-bnr > a cite::after {
    transition: all .25s ease;
  }
  .home-recruit-bnr > a:hover img {
    opacity: .75;
  }
  .home-recruit-bnr > a:hover cite {
    background: white;
    color: #22ac38;
  }
  .home-recruit-bnr > a:hover cite::after {
    right: 5px;
  }
}
.home-recruit-bnr > a img {
  width: 100%;
}
.home-recruit-bnr > a cite {
  display: block;
  position: relative;
  background: #22ac38;
  padding: 1em 10px;
  font-weight: bold;
  font-style: normal;
}
@media (min-width: 768px) {
  .home-recruit-bnr > a cite {
    border: 1px solid #22ac38;
  }
}
.home-recruit-bnr > a cite::after {
  position: absolute;
  right: 10px;
  content: "";
  font-family: 'FontAwesome';
  font-size: 1em;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0;
}
.home-recruit-bnr .home-recruit-bnr-comment {
  display: block;
  background: #d2d2d2;
  padding: 20px 20px;
  text-align: left;
  font-size: .8125em;
}

/*---------------------------------------------
  Sub Visual
  ---------------------------------------------*/
.sub-visual {
  border-bottom: 1px solid gainsboro;
  background: white;
  padding: 20px 10px;
}
.sub-visual > h1 {
  margin: 0;
  padding: 0.67em 0;
}
.sub-visual .jp-title {
  display: block;
  font-size: .5em;
  line-height: 1em;
}

/*---------------------------------------------
  Breadcrumb
  ---------------------------------------------*/
.breadcrumb {
  padding: 0 1em;
}
.breadcrumb > ol {
  padding: 0;
  list-style: none;
  text-align: left;
  font-size: .875em;
}
.breadcrumb > ol > li {
  display: inline-block;
}
.breadcrumb > ol > li > a {
  text-decoration: none;
  color: #1b1b1b;
}
.breadcrumb > ol > li:first-of-type a::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
}
.breadcrumb > ol > li:not(:first-of-type)::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0.25em;
  margin-right: 0.5em;
  color: #959595;
}

/*---------------------------------------------
  Archive Cover
  ---------------------------------------------*/
.archive-cover {
  margin: 0;
}
@media (min-width: 1024px) {
  .archive-cover {
    max-width: 1280px;
    margin: 0 auto;
  }
}

/*---------------------------------------------
  2nd Contents Inner
  ---------------------------------------------*/
.contents-inner {
  margin: 0 0 50px;
  background: white;
  padding: 1em 20px 34px;
}
@media (min-width: 1024px) {
  .contents-inner {
    max-width: 1280px;
    margin: 0 auto 50px;
    box-sizing: border-box;
  }
}

.contents-title {
  margin-bottom: 50px;
  text-align: center;
  font-size: 1.5em;
}
@media (min-width: 768px) {
  .contents-title {
    margin: 34px 0 50px;
  }
}
.contents-title .en-name {
  display: block;
  line-height: 1em;
  color: #f74d00;
  font-size: .5em;
}

.archive-message {
  margin: 30px 0;
  text-align: left;
  font-size: 87.5%;
}
@media (min-width: 768px) {
  .archive-message {
    max-width: 820px;
    margin: 30px auto 50px;
  }
}

/*---------------------------------------------
  Pager
  ---------------------------------------------*/
.pager {
  letter-spacing: -.4em;
  font-size: .8125em;
}
.pager .page-numbers {
  display: inline-block;
  vertical-align: top;
  margin-bottom: 10px;
  border: 1px solid #0068b7;
  padding: 4px 10px;
  letter-spacing: normal;
}
.pager .page-numbers.current {
  background: #0068b7;
  color: white;
}
.pager .page-numbers:not(:last-child) {
  margin-right: 10px;
}
.pager a.page-numbers {
  text-decoration: none;
  color: #0068b7;
}
@media (min-width: 768px) {
  .pager a.page-numbers {
    transition: all .25s ease;
  }
  .pager a.page-numbers:hover {
    background: #0068b7;
    color: white;
  }
}

/*---------------------------------------------
  Back Button
  ---------------------------------------------*/
.back-btn {
  font-size: .8125em;
}
.back-btn a {
  display: block;
  position: relative;
  box-sizing: border-box;
  border: 1px solid #0068b7;
  background: #0068b7;
  padding: 4px 10px;
  text-decoration: none;
  color: white;
}
.back-btn a::after {
  position: absolute;
  right: 10px;
  content: "";
  font-family: 'FontAwesome';
  font-size: 1em;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0;
}
@media (min-width: 480px) {
  .back-btn a {
    width: 190px;
    margin: 0 auto;
  }
}
@media (min-width: 768px) {
  .back-btn a {
    transition: all  .25s ease;
  }
  .back-btn a::after {
    transition: all  .25s ease;
  }
  .back-btn a:hover {
    background: white;
    color: #0068b7;
  }
  .back-btn a:hover::after {
    right: 5px;
  }
}

/*---------------------------------------------
  Page Contents
  ---------------------------------------------*/
.page-contents {
  text-align: left;
  font-size: 87.5%;
}
@media (min-width: 768px) {
  .page-contents {
    max-width: 820px;
    margin: 50px auto;
  }
}

/*---------------------------------------------
  News Contents
  ---------------------------------------------*/
.news-cat-tab-btn {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 50px;
  padding: 0;
  list-style: none;
  letter-spacing: -.4em;
}
@media (min-width: 768px) {
  .news-cat-tab-btn {
    max-width: 820px;
    margin: 1em auto 100px;
  }
}
.news-cat-tab-btn > li {
  display: inline-block;
  width: 32%;
  margin-bottom: 5px;
  letter-spacing: normal;
  font-size: .8125em;
}
@media (min-width: 480px) {
  .news-cat-tab-btn > li {
    width: 23.5%;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .news-cat-tab-btn > li {
    width: 19%;
  }
}

@media (min-width: 480px) and (min-width: 768px) and (min-width: 1024px) {
  .news-cat-tab-btn > li {
    width: 15.85365853658537%;
  }
}

.news-cat-tab-btn > li:not(:nth-of-type(3n)) {
  margin-right: 2%;
}
@media (min-width: 480px) {
  .news-cat-tab-btn > li:not(:nth-of-type(3n)) {
    margin-right: 0;
  }
}
@media (min-width: 480px) {
  .news-cat-tab-btn > li:not(:nth-of-type(4n)) {
    margin-right: 2%;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .news-cat-tab-btn > li:not(:nth-of-type(4n)) {
    margin-right: 0;
  }
}

@media (min-width: 768px) {
  .news-cat-tab-btn > li:not(:nth-of-type(5n)) {
    margin-right: 1.25%;
  }
}
@media (min-width: 768px) and (min-width: 1024px) {
  .news-cat-tab-btn > li:not(:nth-of-type(5n)) {
    margin-right: 0;
  }
}

@media (min-width: 1024px) {
  .news-cat-tab-btn > li:not(:nth-of-type(6n)) {
    margin-right: .9756%;
  }
}
.news-cat-tab-btn > li > a {
  display: block;
  border: 1px solid #0068b7;
  padding: 4px 10px;
  text-decoration: none;
  color: #0068b7;
}
@media (min-width: 480px) {
  .news-cat-tab-btn > li > a {
    position: relative;
  }
  .news-cat-tab-btn > li > a::before {
    position: absolute;
    left: 10px;
    content: "";
    font-family: 'FontAwesome';
    font-size: 1em;
    font-weight: normal;
    margin-left: 0;
    margin-right: 0;
  }
}
@media (min-width: 768px) {
  .news-cat-tab-btn > li > a {
    transition: all .25s ease;
  }
  .news-cat-tab-btn > li > a::before {
    transition: all .25s ease;
  }
  .news-cat-tab-btn > li > a:hover {
    background: #0068b7;
    color: white;
  }
  .news-cat-tab-btn > li > a:hover::before {
    left: 15px;
  }
}
.news-cat-tab-btn > li.current > a {
  background: #0068b7;
  color: white;
}

.news-list {
  margin: 50px 0;
  padding: 0;
  list-style: none;
  text-align: left;
  font-size: .875em;
}
@media (min-width: 768px) {
  .news-list {
    max-width: 820px;
    margin: 50px auto;
  }
}
.news-list > li {
  margin-bottom: 20px;
}
@media (min-width: 768px) {
  .news-list > li {
    letter-spacing: -.5em;
  }
  .news-list > li time,
  .news-list > li i,
  .news-list > li cite {
    letter-spacing: normal;
  }
}
.news-list > li time {
  display: inline-block;
  width: 90px;
  vertical-align: middle;
  color: #535353;
  font-family: Arial;
}
.news-list > li i,
.news-list > li cite {
  font-style: normal;
}
.news-list > li i {
  display: inline-block;
  width: 85px;
  text-align: center;
  color: white;
  font-weight: bold;
  font-size: .7857em;
}
.news-list > li cite {
  display: block;
}
@media (min-width: 1024px) {
  .news-list > li cite {
    display: inline-block;
    vertical-align: top;
    width: calc(100% - 195px);
    margin-left: 20px;
  }
}
.news-list > li a {
  text-decoration: none;
}
@media (min-width: 768px) {
  .news-list > li a:hover {
    text-decoration: underline;
  }
}
.news-list > li a:link {
  color: #1b1b1b;
}
.news-list > li a:visited {
  color: #535353;
}

.post-header {
  margin-bottom: 50px;
  padding: 0;
  list-style: none;
  font-size: .875em;
}
.post-header > li {
  display: inline-block;
}
.post-header > li:not(:last-of-type) {
  margin-right: 1em;
}
.post-header .post-date time {
  color: #535353;
}
.post-header .post-category a {
  display: block;
  text-decoration: none;
}
@media (min-width: 768px) {
  .post-header .post-category a:hover i {
    opacity: .75;
  }
}
.post-header .post-category i {
  display: block;
  width: 85px;
  padding: 2px 0 1px;
  text-align: center;
  color: white;
  font-style: normal;
  font-weight: bold;
  font-size: .7857em;
}

.news-contents {
  margin-bottom: 50px;
  text-align: left;
  font-size: 87.5%;
}
@media (min-width: 768px) {
  .news-contents {
    max-width: 820px;
    margin: 0 auto 50px;
  }
}

/*---------------------------------------------
  Company Contents
  ---------------------------------------------*/
.company-contents-list {
  padding: 0;
  list-style: none;
}
@media (min-width: 480px) {
  .company-contents-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    letter-spacing: -.4em;
  }
}
@media (min-width: 768px) {
  .company-contents-list {
    max-width: 820px;
    margin: 1em auto;
  }
}
@media (min-width: 1024px) {
  .company-contents-list {
    margin: 50px auto;
    font-size: 1.125em;
  }
}
.company-contents-list > li {
  margin-bottom: 1em;
}
@media (min-width: 480px) {
  .company-contents-list > li {
    display: inline-block;
    width: calc(50% - 10px);
    letter-spacing: normal;
  }
}
.company-contents-list > li > a {
  display: block;
  position: relative;
  border: 1px solid #0075a9;
  padding: 10px 10px;
  text-decoration: none;
  color: #0075a9;
}
.company-contents-list > li > a::after {
  position: absolute;
  right: 20px;
  content: "";
  font-family: 'FontAwesome';
  font-size: 1em;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0;
}
@media (min-width: 768px) {
  .company-contents-list > li > a {
    transition: all .25s ease;
  }
  .company-contents-list > li > a::after {
    transition: all .25s ease;
  }
  .company-contents-list > li > a:hover {
    background: #0075a9;
    color: white;
  }
  .company-contents-list > li > a:hover::after {
    right: 10px;
  }
}
@media (min-width: 1024px) {
  .company-contents-list > li > a {
    padding: 30px 10px;
  }
}
@media (min-width: 480px) {
  .company-contents-list > li:not(:nth-of-type(even)) {
    margin-right: 20px;
  }
}
@media (min-width: 1024px) {
  .company-contents-list > li {
    margin-bottom: 30px;
  }
}

.company-contents {
  margin-bottom: 50px;
  text-align: left;
  font-size: 87.5%;
}
@media (min-width: 768px) {
  .company-contents {
    max-width: 820px;
    margin: 0 auto 100px;
  }
}
.company-contents > h1 {
  font-size: 1.5em;
}
@media (min-width: 768px) {
  .company-contents > h1 {
    margin: 40px 0;
  }
}

@media (min-width: 768px) {
  .greeting-inner {
    max-width: 1030px;
    margin: 0 auto;
  }
  .greeting-inner::after {
    display: block;
    clear: both;
    content: '';
  }
}
.greeting-main {
  margin-bottom: 30px;
}
@media (min-width: 768px) {
  .greeting-main {
    width: 59.223300970874%;
    float: left;
    margin-bottom: 0;
  }
}

@media (min-width: 768px) {
  .ceo-area {
    width: 38.834951456311%;
    float: right;
    margin-top: 1em;
  }
}
.ceo-photo {
  margin: 0;
}

.ceo-name {
  text-align: right;
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
  font-weight: bold;
}
.ceo-name strong {
  margin-left: 1em;
}
.ceo-name strong > img {
  width: 110px;
}

.management-policy-list {
  padding-left: 2em;
}

.behavioral-guidelines-list {
  counter-reset: glcount;
}
.behavioral-guidelines-list > dt {
  font-weight: bold;
}
.behavioral-guidelines-list > dt::before {
  margin-right: .5em;
  counter-increment: glcount;
  content: counter(glcount) ".";
}
.behavioral-guidelines-list > dd {
  margin: 0 0 1em 1.4em;
}

.company-table > dl,
.company-access-table > dl {
  border: 1px solid #e5e5e5;
}
@media (min-width: 768px) {
  .company-table > dl,
  .company-access-table > dl {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border: none;
    border-bottom: 1px solid #e5e5e5;
    letter-spacing: -.4em;
  }
}
.company-table > dl > dt,
.company-table > dl > dd,
.company-access-table > dl > dt,
.company-access-table > dl > dd {
  padding: 10px 10px;
}
@media (min-width: 768px) {
  .company-table > dl > dt,
  .company-table > dl > dd,
  .company-access-table > dl > dt,
  .company-access-table > dl > dd {
    display: inline-block;
    vertical-align: top;
    padding: 10px 0;
    letter-spacing: normal;
  }
  .company-table > dl > dt:not(:first-of-type),
  .company-table > dl > dd:not(:first-of-type),
  .company-access-table > dl > dt:not(:first-of-type),
  .company-access-table > dl > dd:not(:first-of-type) {
    border-top: 1px solid #e5e5e5;
  }
}
.company-table > dl > dt,
.company-access-table > dl > dt {
  background: #eeeeee;
}
@media (min-width: 768px) {
  .company-table > dl > dt,
  .company-access-table > dl > dt {
    background: none;
  }
}
.company-table > dl > dd,
.company-access-table > dl > dd {
  margin: 0;
}

@media (min-width: 768px) {
  .company-table > dl > dt {
    width: 210px;
  }
  .company-table > dl > dd {
    width: calc(100% - 210px);
  }

  .company-access-table > dl > dt {
    width: 315px;
  }
  .company-access-table > dl > dd {
    width: calc(100% - 315px);
  }
  .company-access-table > dl > dd.with-photo {
    display: -ms-flexbox;
    display: flex;
  }

  .access-photo {
    width: 160px;
    margin-left: 1em;
  }
}
.access-list > dt {
  font-weight: bold;
}
.access-list > dt:not(:first-of-type) {
  margin-top: 1em;
}
.access-list > dd {
  margin: 0;
}

.nest-list > dt {
  font-weight: bold;
}
.nest-list > dt:not(:first-of-type) {
  margin-top: 1em;
}
.nest-list > dd {
  margin: 0;
}

.access-list .gmap-link,
.company-access-table .gmap-link {
  display: inline-block;
  vertical-align: middle;
  margin-left: 1em;
  font-family: 'Arial';
  font-weight: bold;
  font-size: .714em;
}
.access-list .gmap-link a,
.company-access-table .gmap-link a {
  display: block;
  width: 90px;
  background: #0068b7;
  color: white;
  text-decoration: none;
  text-align: center;
  transition: all .25s ease;
}
.access-list .gmap-link a:hover,
.company-access-table .gmap-link a:hover {
  opacity: .75;
}

/*---------------------------------------------
  Products Contents
  ---------------------------------------------*/
.products-category-list {
  margin: 50px 0;
  padding: 0;
  list-style: none;
  font-weight: bold;
}
@media (min-width: 480px) {
  .products-category-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    text-align: left;
    letter-spacing: -.4em;
  }
}
.products-category-list > li {
  margin-bottom: 1em;
}
@media (min-width: 480px) {
  .products-category-list > li {
    display: inline-block;
    width: 49%;
    text-align: center;
    letter-spacing: normal;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .products-category-list > li {
    width: 32.258064516129%;
  }
}
@media (min-width: 480px) {
  .products-category-list > li:not(:nth-of-type(even)) {
    margin-right: 2%;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .products-category-list > li:not(:nth-of-type(even)) {
    margin-right: 0;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .products-category-list > li:not(:nth-of-type(3n)) {
    margin-right: 1.6129032258065%;
  }
}

.products-category-list > li > a {
  display: block;
  position: relative;
  border: 1px solid #0075a9;
  padding: 10px 10px;
  text-decoration: none;
  color: #0075a9;
}
.products-category-list > li > a::after {
  position: absolute;
  right: 20px;
  content: "";
  font-family: 'FontAwesome';
  font-size: 1em;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0;
}
@media (min-width: 768px) {
  .products-category-list > li > a {
    transition: all .25s ease;
  }
  .products-category-list > li > a::after {
    transition: all .25s ease;
  }
  .products-category-list > li > a:hover {
    background: #0075a9;
    color: white;
  }
  .products-category-list > li > a:hover::after {
    right: 10px;
  }
}

.product-tax-list {
  margin: 50px 0;
  padding: 0;
  list-style: none;
  font-weight: bold;
}
@media (min-width: 480px) {
  .product-tax-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    text-align: left;
    letter-spacing: -.4em;
  }
}
.product-tax-list > li {
  margin-bottom: 1em;
}
@media (min-width: 480px) {
  .product-tax-list > li {
    display: inline-block;
    width: 49%;
    text-align: center;
    letter-spacing: normal;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .product-tax-list > li {
    width: 32.258064516129%;
  }
}
@media (min-width: 480px) {
  .product-tax-list > li:not(:nth-of-type(even)) {
    margin-right: 2%;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .product-tax-list > li:not(:nth-of-type(even)) {
    margin-right: 0;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .product-tax-list > li:not(:nth-of-type(3n)) {
    margin-right: 1.6129032258065%;
  }
}

.product-tax-list > li > a {
  display: block;
  position: relative;
  border: 1px solid #0075a9;
  padding: 10px 10px;
  text-decoration: none;
  color: #0075a9;
}
.product-tax-list > li > a::after {
  position: absolute;
  right: 20px;
  content: "";
  font-family: 'FontAwesome';
  font-size: 1em;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0;
}
@media (min-width: 768px) {
  .product-tax-list > li > a {
    transition: all .25s ease;
  }
  .product-tax-list > li > a::after {
    transition: all .25s ease;
  }
  .product-tax-list > li > a:hover {
    background: #0075a9;
    color: white;
  }
  .product-tax-list > li > a:hover::after {
    right: 10px;
  }
}

.product-tax-tab {
  padding: 0;
  list-style: none;
  font-size: .8125em;
}
@media (min-width: 768px) {
  .product-tax-tab {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    text-align: left;
    letter-spacing: -.4em;
  }
}
.product-tax-tab > li > a {
  display: block;
  border: 1px solid #0075a9;
  padding: 5px 10px;
  text-decoration: none;
  color: #0075a9;
}
@media (min-width: 768px) {
  .product-tax-tab > li > a {
    position: relative;
    padding: 5px 20px;
    transition: all .25s ease;
  }
  .product-tax-tab > li > a::before {
    position: absolute;
    left: 10px;
    content: "";
    font-family: 'FontAwesome';
    font-size: 1em;
    font-weight: normal;
    margin-left: 0;
    margin-right: 0;
    transition: all .25s ease;
  }
  .product-tax-tab > li > a:hover {
    background: #0075a9;
    color: white;
  }
  .product-tax-tab > li > a:hover::before {
    left: 15px;
  }
}
.product-tax-tab > li:not(.current) {
  display: none;
}
@media (min-width: 768px) {
  .product-tax-tab > li:not(.current) {
    display: inline-block;
  }
}
.product-tax-tab > li.current a {
  background: #0075a9;
  color: white;
}
@media (min-width: 768px) {
  .product-tax-tab > li {
    display: inline-block;
    width: 32%;
    margin-bottom: 10px;
    text-align: center;
    letter-spacing: normal;
  }
  .product-tax-tab > li:not(:nth-of-type(3n)) {
    margin-right: 2%;
  }
}
@media (min-width: 768px) and (min-width: 1024px) {
  .product-tax-tab > li:not(:nth-of-type(3n)) {
    margin-right: 0;
  }
}

@media (min-width: 1024px) {
  .product-tax-tab > li {
    width: 23.790322580645%;
  }
  .product-tax-tab > li:not(:nth-of-type(4n)) {
    margin-right: 1.61290322580667%;
  }
}

.products-item {
  margin: 50px 0;
  padding: 0;
  list-style: none;
  text-align: left;
  font-size: .875em;
}
@media (min-width: 480px) {
  .products-item {
    letter-spacing: -.5em;
  }
}
.products-item > li {
  margin-bottom: 2em;
}
@media (min-width: 480px) {
  .products-item > li {
    display: inline-block;
    vertical-align: top;
    width: 48%;
    letter-spacing: normal;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .products-item > li {
    width: 23.79032258064516%;
  }
}
@media (min-width: 480px) {
  .products-item > li:not(:nth-of-type(even)) {
    margin-right: 4%;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .products-item > li:not(:nth-of-type(even)) {
    margin-right: 0;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .products-item > li:not(:nth-of-type(4n)) {
    margin-right: 1.612903225806452%;
  }
}

.products-item > li > a {
  text-decoration: none;
}
@media (min-width: 768px) {
  .products-item > li > a:hover figure {
    border: 1px solid #0068b7;
    opacity: .75;
  }
  .products-item > li > a:hover cite {
    text-decoration: underline;
  }
}
.products-item > li > a figure {
  margin: 0;
  margin-bottom: .5em;
  border: 1px solid #c9c9c9;
  padding: 0;
  text-align: center;
}
@media (min-width: 768px) {
  .products-item > li > a figure {
    transition: all .25s ease;
  }
}
.products-item > li > a > cite {
  font-style: normal;
}

.product-detail {
  margin-bottom: 50px;
}
@media (min-width: 1024px) {
  .product-detail {
    max-width: 1030px;
    margin: 0 auto 100px;
  }
  .product-detail::after {
    display: block;
    clear: both;
    content: '';
  }
}

@media (min-width: 1024px) {
  .product-images {
    width: calc(100% - 630px);
    float: left;
  }
}
.product-images-slide {
  padding: 0;
  list-style: none;
}
@media (min-width: 480px) {
  .product-images-slide {
    width: 45%;
    margin: 1em auto;
  }
}
@media (min-width: 1024px) {
  .product-images-slide {
    width: auto;
    margin-bottom: 50px;
  }
}
.product-images-slide figure {
  position: relative;
  margin: 0;
  border: 1px solid #d2d2d2;
}
.product-images-slide figure img {
  width: 100%;
}
.product-images-slide cite {
  font-style: normal;
  font-size: .8125em;
}
@media (min-width: 1024px) {
  .product-images-slide > li {
    text-align: left;
  }
}
.product-images-slide > li.hide {
  display: none;
}

.product-images-slide-nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 50px;
  padding: 0;
  list-style: none;
  letter-spacing: -.4em;
}
@media (min-width: 480px) {
  .product-images-slide-nav {
    -ms-flex-pack: center;
    justify-content: center;
  }
}
@media (min-width: 1024px) {
  .product-images-slide-nav {
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: left;
  }
}
.product-images-slide-nav > li {
  display: inline-block;
  width: 21.25%;
  margin-bottom: 1em;
  box-sizing: border-box;
  border: 1px solid #d2d2d2;
  letter-spacing: normal;
  cursor: pointer;
}
@media (min-width: 480px) {
  .product-images-slide-nav > li {
    width: 15%;
  }
}
@media (min-width: 768px) {
  .product-images-slide-nav > li img {
    transition: all .25s ease;
  }
  .product-images-slide-nav > li:hover img {
    opacity: .75;
  }
}
@media (min-width: 1024px) {
  .product-images-slide-nav > li {
    width: 21.25%;
  }
}
.product-images-slide-nav > li.current {
  border: 1px solid #f74d00;
}
.product-images-slide-nav > li:not(:nth-of-type(4n)) {
  margin-right: 5%;
}
@media (min-width: 480px) {
  .product-images-slide-nav > li:not(:nth-of-type(4n)) {
    margin-right: 0;
  }
}
@media (min-width: 480px) {
  .product-images-slide-nav > li:not(:nth-of-type(6n)) {
    margin-right: 2%;
  }
}
@media (min-width: 480px) and (min-width: 1024px) {
  .product-images-slide-nav > li:not(:nth-of-type(6n)) {
    margin-right: 0;
  }
}

@media (min-width: 1024px) {
  .product-images-slide-nav > li:not(:nth-of-type(4n)) {
    margin-right: 5%;
  }
}

.product-spec {
  text-align: left;
  font-size: 87.5%;
}
@media (min-width: 1024px) {
  .product-spec {
    width: 610px;
    float: right;
  }
}
.product-spec > h2 {
  border-top: 1px solid #d2d2d2;
  padding: 5px 0;
  font-size: 1.286em;
}
.product-spec > h2:not(:first-of-type) {
  margin-top: 50px;
}
.product-spec table {
  max-width: 610px;
  border-collapse: collapse;
  border-right: 1px solid #d2d2d2;
  border-bottom: 1px solid #d2d2d2;
}
.product-spec table th,
.product-spec table td {
  padding: 10px 10px;
  border-top: 1px solid #d2d2d2;
  border-left: 1px solid #d2d2d2;
}
.product-spec table th {
  background: whitesmoke;
}

.product-movie {
  position: relative;
  margin-bottom: 50px;
  padding-bottom: 56.25%;
}
.product-movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.product-subnav {
  margin-bottom: 50px;
  padding: 0;
  list-style: none;
  font-size: .875em;
}
@media (min-width: 480px) {
  .product-subnav {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
.product-subnav > li {
  margin-bottom: 1em;
}
@media (min-width: 480px) {
  .product-subnav > li {
    display: inline-block;
    width: 49%;
  }
}
@media (min-width: 768px) {
  .product-subnav > li {
    width: 190px;
  }
}
.product-subnav > li > a {
  display: block;
  border: 1px solid #0068b7;
  padding: 10px 10px;
  text-decoration: none;
  color: #0068b7;
  font-weight: bold;
}
@media (min-width: 768px) {
  .product-subnav > li > a {
    transition: all .25s ease;
  }
  .product-subnav > li > a:hover {
    background: #0068b7;
    color: white;
  }
}
@media (min-width: 480px) {
  .product-subnav > li:not(:nth-of-type(even)) {
    margin-right: 2%;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .product-subnav > li:not(:nth-of-type(even)) {
    margin-right: 0;
  }
}

@media (min-width: 768px) {
  .product-subnav > li:not(:nth-of-type(3n)) {
    margin-right: 20px;
  }
}
.product-subnav .product-subnav-dl a::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
}
.product-subnav .product-subnav-iq a::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
}

.related-products {
  padding: 0 20px;
}
@media (min-width: 1024px) {
  .related-products {
    max-width: 1240px;
    margin: 0 auto;
  }
}

/*---------------------------------------------
  Event Contents
  ---------------------------------------------*/
.event-cat-icon01,
.event-cat-icon02 {
  display: block;
  width: 85px;
  text-align: center;
  color: white;
  font-weight: bold;
  font-style: normal;
  font-size: .6875em;
}

.event-cat-icon01 {
  background: #eb6877;
}

.event-cat-icon02 {
  background: #eb6100;
}

.event-list {
  margin-bottom: 50px;
  padding: 0;
  list-style: none;
}
@media (min-width: 768px) {
  .event-list {
    max-width: 820px;
    margin: 0 auto 50px;
  }
}
.event-list > li {
  margin-bottom: 20px;
  border-bottom: 1px solid #d2d2d2;
}
.event-list > li::after {
  display: block;
  clear: both;
  content: '';
}
@media (min-width: 480px) {
  .event-list > li {
    position: relative;
    padding-bottom: 1em;
    text-align: left;
  }
}
.event-list > li .event-cat-icon01,
.event-list > li .event-cat-icon02 {
  margin-bottom: 1em;
}
@media (min-width: 480px) {
  .event-list > li .event-cat-icon01,
  .event-list > li .event-cat-icon02 {
    position: absolute;
    top: 0;
    left: 0;
    margin-bottom: 0;
  }
}
.event-list .event-thumbnail {
  width: 23.17073170731707%;
  float: left;
  margin: 0;
  border: 1px solid #d2d2d2;
}

.event-list-data {
  width: 74.39024390243902%;
  float: right;
}

.event-status-before,
.event-status-session,
.event-status-entry,
.event-status-end,
.event-status-entryend {
  display: inline-block;
  width: 65px;
  box-sizing: border-box;
  text-align: center;
  font-weight: bold;
  font-style: normal;
  font-size: .6875em;
}

.event-status-before {
  border: 1px solid #c9c9c9;
}

.event-status-session {
  background: #e5004f;
  color: white;
}

.event-status-entry {
  background: #009944;
  color: white;
}

.event-status-end {
  background: #1b1b1b;
  color: white;
}

.event-status-entryend {
  background: #920783;
  color: white;
}

.event-schedule {
  display: inline-block;
  width: calc(100% - 75px);
  margin-bottom: 5px;
  text-align: left;
  color: #535353;
  font-size: .75em;
}
@media (min-width: 480px) {
  .event-schedule {
    width: calc(100% - 200px);
    margin-bottom: 0;
  }
}
@media (min-width: 768px) {
  .event-schedule {
    margin-left: .25em;
    font-size: .875em;
  }
}

.event-post-publish {
  display: block;
  text-align: left;
  color: #959595;
  font-size: .75em;
}
@media (min-width: 480px) {
  .event-post-publish {
    display: inline-block;
    width: 120px;
    text-align: right;
  }
}

.event-overview {
  text-align: left;
}
.event-overview > dt {
  margin-bottom: 10px;
  font-weight: bold;
}
.event-overview > dd {
  margin: 0;
  font-size: .875em;
}
.event-overview > dd:not(:last-of-type) {
  margin-bottom: 10px;
}

.event-overview-text {
  color: #959595;
}

.event-access {
  color: #535353;
}
.event-access::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
}

.event-cover {
  margin: 0;
  margin-bottom: 30px;
}

.event-contents {
  text-align: left;
  font-size: 87.5%;
}
@media (min-width: 768px) {
  .event-contents {
    max-width: 820px;
    margin: 0 auto;
  }
}
.event-contents > h2 {
  margin: 30px 0;
  border-top: 1px solid #d2d2d2;
  font-size: 1.2857em;
}

.event-detail-table {
  margin-bottom: 30px;
  border-bottom: 1px solid #d2d2d2;
  border-right: 1px solid #d2d2d2;
}
@media (min-width: 768px) {
  .event-detail-table {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.event-detail-table > dt,
.event-detail-table > dd {
  border-top: 1px solid #d2d2d2;
  border-left: 1px solid #d2d2d2;
  padding: 10px 10px;
}
@media (min-width: 768px) {
  .event-detail-table > dt,
  .event-detail-table > dd {
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
  }
}
.event-detail-table > dt {
  background: whitesmoke;
}
@media (min-width: 768px) {
  .event-detail-table > dt {
    width: 23.17073170731707%;
  }
}
.event-detail-table > dd {
  margin: 0;
}
.event-detail-table > dd > i[class*='event-status'] {
  margin-left: .5em;
}
@media (min-width: 768px) {
  .event-detail-table > dd {
    width: 76.82926829268293%;
  }
}
.event-detail-table .gmap-link {
  display: inline-block;
  vertical-align: middle;
  margin-left: 1em;
  font-family: 'Arial';
  font-weight: bold;
  font-size: .714em;
}
.event-detail-table .gmap-link a {
  display: block;
  width: 90px;
  background: #0068b7;
  color: white;
  text-decoration: none;
  text-align: center;
  transition: all .25s ease;
}
.event-detail-table .gmap-link a:hover {
  opacity: .75;
}

.official-site {
  border: none;
  background: #e5004f;
  padding: 5px 10px;
  color: white;
  cursor: pointer;
}
.official-site::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
}
@media (min-width: 768px) {
  .official-site {
    transition: all .25s ease;
  }
  .official-site:hover {
    opacity: .75;
  }
}

.event-timetable {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 30px;
  border-bottom: 1px solid #d2d2d2;
  border-right: 1px solid #d2d2d2;
}
.event-timetable .event-timetable-header {
  background: whitesmoke;
}
.event-timetable > dt,
.event-timetable > dd {
  display: inline-block;
  box-sizing: border-box;
  border-top: 1px solid #d2d2d2;
  border-left: 1px solid #d2d2d2;
  padding: 10px 10px;
}
.event-timetable > dt {
  width: 23.17073170731707%;
}
.event-timetable > dd {
  width: 76.82926829268293%;
  margin: 0;
}

/*---------------------------------------------
  Recruit Contents
  ---------------------------------------------*/
.recruit-contents {
  margin-bottom: 50px;
  text-align: left;
  font-size: 87.5%;
}
@media (min-width: 768px) {
  .recruit-contents {
    max-width: 820px;
    margin: 0 auto 50px;
  }
}

.recruit-guide {
  margin-bottom: 50px;
  border-bottom: 1px solid #e5e5e5;
}
@media (min-width: 768px) {
  .recruit-guide {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    letter-spacing: -.4em\9;
  }
}
.recruit-guide > dt,
.recruit-guide > dd {
  border-top: 1px solid #e5e5e5;
  padding: 10px;
}
@media (min-width: 768px) {
  .recruit-guide > dt,
  .recruit-guide > dd {
    display: inline-block\9;
    vertical-align: top\9;
    padding: 10px 0;
    letter-spacing: normal\9;
  }
}
.recruit-guide > dt {
  background: #eeeeee;
}
.recruit-guide > dt:first-of-type {
  border-top: none;
}
@media (min-width: 768px) {
  .recruit-guide > dt {
    width: 210px;
    background: none;
  }
}
.recruit-guide > dd {
  margin: 0;
}
@media (min-width: 768px) {
  .recruit-guide > dd {
    width: calc(100% - 210px);
  }
  .recruit-guide > dd:first-of-type {
    border-top: none;
  }
}

.entry-link {
  display: block;
  width: 100%;
  border: 1px solid #0068b7;
  background: none;
  padding: 10px;
  color: #0068b7;
  font-weight: bold;
  cursor: pointer;
}
@media (min-width: 480px) {
  .entry-link {
    max-width: 400px;
    margin: 0 auto;
  }
}
.entry-link::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
}
@media (min-width: 768px) {
  .entry-link {
    margin-bottom: 50px;
    transition: all .25s ease;
  }
  .entry-link:hover {
    background: #0068b7;
    color: white;
  }
}

/*---------------------------------------------
  Inquiry Contents
  ---------------------------------------------*/
.inquiry-contents {
  text-align: left;
  font-size: 87.5%;
}
@media (min-width: 768px) {
  .inquiry-contents {
    max-width: 820px;
    margin: 0 auto;
  }
}

.inquiry-form {
  margin-bottom: 50px;
  border-bottom: 1px solid #e5e5e5;
}
@media (min-width: 480px) {
  .inquiry-form {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    letter-spacing: -.4em\9;
  }
}
.inquiry-form > dt,
.inquiry-form > dd {
  padding: 10px;
}
@media (min-width: 480px) {
  .inquiry-form > dt,
  .inquiry-form > dd {
    display: inline-block\9;
    vertical-align: top\9;
    padding: 10px 0;
    letter-spacing: normal\9;
  }
  .inquiry-form > dt:not(:first-of-type),
  .inquiry-form > dd:not(:first-of-type) {
    border-top: 1px solid #e5e5e5;
  }
}
.inquiry-form > dt {
  background: #eeeeee;
}
@media (min-width: 480px) {
  .inquiry-form > dt {
    width: 190px;
    background: none;
  }
}
@media (min-width: 1024px) {
  .inquiry-form > dt {
    width: calc(100% - 61.585365853659%);
  }
}
.inquiry-form > dd {
  margin: 0;
}
@media (min-width: 480px) {
  .inquiry-form > dd {
    width: calc(100% - 190px);
  }
}
@media (min-width: 1024px) {
  .inquiry-form > dd {
    width: 61.585365853659%;
  }
}
@media (min-width: 1024px) {
  .inquiry-form .required {
    position: relative;
  }
}
.inquiry-form .required::after {
  display: inline-block;
  width: 40px;
  margin-left: .5em;
  background: #e60012;
  text-align: center;
  color: white;
  font-weight: bold;
  font-size: .857em;
  content: '必須';
}
@media (min-width: 480px) {
  .inquiry-form .required::after {
    display: block;
    margin-left: 0;
  }
}
@media (min-width: 1024px) {
  .inquiry-form .required::after {
    position: absolute;
    top: 12px;
    right: 20px;
  }
}
.inquiry-form .input-ex {
  display: block;
  color: #959595;
}
@media (min-width: 768px) {
  .inquiry-form .input-ex {
    display: inline-block;
    margin-left: .25em;
  }
}
.inquiry-form .input-normal,
.inquiry-form .input-long,
.inquiry-form .input-short,
.inquiry-form .textarea-normal,
.inquiry-form .input-file {
  width: 100%;
  box-sizing: border-box;
}
.inquiry-form .textarea-normal {
  height: 100px;
}
@media (min-width: 768px) {
  .inquiry-form .input-normal {
    width: 295px;
  }
  .inquiry-form .input-long {
    width: 400px;
  }
  .inquiry-form .input-short {
    width: 190px;
  }
}

.privacy-agree {
  margin-bottom: 50px;
  border: 1px solid #d2d2d2;
  background: #eeeeee;
  padding: 10px 1em;
}
@media (min-width: 768px) {
  .privacy-agree {
    text-align: center;
  }
}
.privacy-agree a {
  text-decoration: none;
  color: #0068b7;
  font-weight: bold;
}
@media (min-width: 768px) {
  .privacy-agree .agree-btn {
    margin: 30px 0;
  }
}
.privacy-agree .agree-btn label {
  cursor: pointer;
}
.privacy-agree .agree-btn input[type="checkbox"] {
  margin-right: .5em;
}

.comfirm-btn {
  width: 100%;
  border: 1px solid #0068b7;
  background: none;
  padding: 10px;
  color: #0068b7;
  cursor: pointer;
}
@media (min-width: 480px) {
  .comfirm-btn {
    display: block;
    max-width: 400px;
    margin: 0 auto;
  }
}

/*---------------------------------------------
  Search Result
  ---------------------------------------------*/
.result-keyword {
  margin-bottom: 50px;
}
.result-keyword .header-search {
  width: auto;
}

.search-result-list {
  margin-bottom: 50px;
  padding: 0;
  list-style: none;
  text-align: left;
  font-size: .875em;
}
@media (min-width: 768px) {
  .search-result-list {
    margin: 0 auto 50px;
    max-width: 820px;
    font-size: 1em;
  }
}
.search-result-list > li {
  margin-bottom: 1em;
  border-bottom: 1px solid #d2d2d2;
  padding: 1em 0;
}
.search-result-list .search-thumbnail-wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.search-thumbnail {
  width: 23.170731707317%;
  margin: 0;
  margin-right: 2.439024390244%;
}
.search-thumbnail a {
  display: block;
  border: 1px solid #d2d2d2;
}
@media (min-width: 768px) {
  .search-thumbnail a {
    transition: all .25s ease;
  }
  .search-thumbnail a:hover {
    opacity: .75;
  }
}
.search-thumbnail + .search-result-inner {
  width: 74.390243902439%;
}

.search-result-inner cite {
  font-style: normal;
}
.search-result-inner cite a {
  text-decoration: none;
  color: #0068b7;
}
@media (min-width: 768px) {
  .search-result-inner cite a:hover {
    text-decoration: underline;
  }
}
@media (min-width: 768px) {
  .search-result-inner cite {
    display: block;
    margin-bottom: 1em;
  }
}
.search-result-inner .post-type,
.search-result-inner .post-cat,
.search-result-inner .post-publish {
  font-size: .93em;
}
@media (min-width: 768px) {
  .search-result-inner .post-type,
  .search-result-inner .post-cat,
  .search-result-inner .post-publish {
    font-size: .8125em;
  }
}
.search-result-inner .post-type a {
  text-decoration: none;
  color: #959595;
}
.search-result-inner .post-type a::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
}
.search-result-inner .post-cat {
  padding: 0;
  list-style: none;
  color: #959595;
}
.search-result-inner .post-cat > li {
  display: inline-block;
}
.search-result-inner .post-cat > li a {
  text-decoration: none;
  color: #959595;
}
.search-result-inner .post-cat > li:first-of-type a::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
}
.search-result-inner .post-cat > li:not(:first-of-type)::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
}
.search-result-inner .post-publish {
  color: #959595;
}
.search-result-inner .post-publish::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
}
@media (min-width: 768px) {
  .search-result-inner .post-type,
  .search-result-inner .post-cat,
  .search-result-inner .post-publish {
    display: inline-block;
    margin-right: 1em;
  }
}

/*---------------------------------------------
  Footer
  ---------------------------------------------*/
footer {
  border-top: 1px solid gainsboro;
  background: white;
}

.footer-inner {
  padding: 50px 10px 0;
}
@media (min-width: 768px) {
  .footer-inner::after {
    display: block;
    clear: both;
    content: '';
  }
}

@media (min-width: 768px) {
  .footer-nav::after {
    display: block;
    clear: both;
    content: '';
  }
}

@media (min-width: 768px) {
  .footer-top-nav {
    width: 20%;
    float: left;
  }
}
@media (min-width: 768px) and (min-width: 1024px) {
  .footer-top-nav {
    width: 15.32258064516129%;
  }
}

.footer-top-nav > ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 50px;
  padding: 0;
  list-style: none;
  letter-spacing: -.5em;
  font-size: .875em;
}
@media (min-width: 768px) {
  .footer-top-nav > ul {
    display: block;
    margin-bottom: 1em;
    font-size: .8125em;
    text-align: left;
  }
}
.footer-top-nav > ul > li {
  display: inline-block;
  width: 49%;
  letter-spacing: normal;
}
@media (min-width: 768px) {
  .footer-top-nav > ul > li {
    display: block;
    width: auto;
  }
  .footer-top-nav > ul > li:not(:last-of-type) {
    margin-bottom: 5px;
  }
}
.footer-top-nav > ul > li:not(:nth-of-type(even)) {
  margin-right: 2%;
}
@media (min-width: 768px) {
  .footer-top-nav > ul > li:not(:nth-of-type(even)) {
    margin-right: 0;
  }
}
.footer-top-nav > ul > li > a {
  display: block;
  border: 1px solid #c9c9c9;
  padding: 5px 10px;
  text-decoration: none;
  color: #535353;
}
@media (min-width: 768px) {
  .footer-top-nav > ul > li > a {
    display: inline;
    border: none;
    padding: auto;
    transition: all .25s ease;
  }
  .footer-top-nav > ul > li > a:hover {
    color: #959595;
  }
}
.footer-top-nav > ul > li.home a::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
}
.footer-top-nav > ul > li.news a::before {
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.25em;
}

@media (min-width: 768px) {
  .footer-contents-nav {
    width: calc(80% - 20px);
    float: right;
  }
}
@media (min-width: 768px) and (min-width: 1024px) {
  .footer-contents-nav {
    width: 83.06451612903226%;
  }
}

.footer-contents-nav > ul {
  margin-bottom: 50px;
  padding: 0;
  list-style: none;
  text-align: left;
  font-size: .875em;
}
@media (min-width: 480px) {
  .footer-contents-nav > ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    letter-spacing: -.5em;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .footer-contents-nav > ul {
    border-left: 1px solid #c9c9c9;
    padding-left: 20px;
  }
}

.footer-contents-nav > ul > li {
  margin-bottom: 30px;
}
@media (min-width: 480px) {
  .footer-contents-nav > ul > li {
    display: inline-block;
    vertical-align: top;
    width: 48%;
    letter-spacing: normal;
  }
}
@media (min-width: 480px) and (min-width: 1024px) {
  .footer-contents-nav > ul > li {
    width: 18.44660194174757%;
  }
}
@media (min-width: 480px) {
  .footer-contents-nav > ul > li:not(:nth-of-type(even)) {
    margin-right: 4%;
  }
}
@media (min-width: 480px) and (min-width: 1024px) {
  .footer-contents-nav > ul > li:not(:nth-of-type(even)) {
    margin-right: 0;
  }
}
@media (min-width: 480px) and (min-width: 1024px) {
  .footer-contents-nav > ul > li:not(:nth-of-type(5n)) {
    margin-right: 1.941747572815534%;
  }
}

.footer-contents-nav > ul > li > a {
  display: block;
  border-bottom: 1px solid black;
  text-decoration: none;
  color: #535353;
  font-weight: bold;
}
.footer-contents-nav > ul > li > ul {
  margin-top: 10px;
}
@media (min-width: 768px) {
  .footer-contents-nav > ul > li > ul {
    padding: 0;
    list-style: none;
    font-size: .9286em;
  }
}
@media (min-width: 768px) {
  .footer-contents-nav > ul > li > ul > li {
    margin: 5px 0;
  }
}
.footer-contents-nav > ul > li > ul > li > a {
  text-decoration: none;
  color: #535353;
}
@media (min-width: 768px) {
  .footer-contents-nav > ul > li > ul > li > a {
    transition: all .25s ease;
  }
  .footer-contents-nav > ul > li > ul > li > a:hover {
    text-decoration: underline;
    color: #959595;
  }
}

@media (min-width: 768px) {
  .footer-more-nav {
    clear: both;
  }
}
.footer-more-nav > ul {
  display: -ms-flexbox;
  display: flex;
  /*-ms-flex-wrap: wrap;
  flex-wrap: wrap;*/
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 50px;
  padding: 0;
  list-style: none;
  letter-spacing: -.5em;
}
.footer-more-nav > ul > li {
  display: inline-block;
  vertical-align: middle;
  width: 49%;
  margin-bottom: 1em;
  box-sizing: border-box;
  letter-spacing: normal;
  font-size: .875em;
}
@media (min-width: 480px) {
  .footer-more-nav > ul > li {
    width: 32%;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .footer-more-nav > ul > li {
    width: 23.17073170731707%;
    max-width: 190px;
  }
}

.footer-more-nav > ul > li:not(:nth-child(even)) {
  margin-right: 2%;
}
@media (min-width: 480px) {
  .footer-more-nav > ul > li:not(:nth-child(even)) {
    margin-right: 0;
  }
}
@media (min-width: 480px) {
  .footer-more-nav > ul > li:not(:nth-child(3n)) {
    margin-right: 2%;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .footer-more-nav > ul > li:not(:nth-child(3n)) {
    margin-right: 0;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .footer-more-nav > ul > li {
    margin: 0 15px 1em;
    /*&:not(:nth-child(4n)) {
      margin-right: 2.439024390243902%;
    }*/
  }
}

.footer-more-nav > ul > li:not(.img) {
  background: #0068b7;
}
.footer-more-nav > ul > li:not(.img) > a {
  display: block;
  padding: 5px 10px;
  text-decoration: none;
  color: white;
  font-weight: bold;
}
@media (min-width: 480px) {
  .footer-more-nav > ul > li:not(.img) > a {
    position: relative;
    padding: 8px 10px;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .footer-more-nav > ul > li:not(.img) > a {
    border: 1px solid #0068b7;
    transition: all .25s ease;
  }
  .footer-more-nav > ul > li:not(.img) > a:hover {
    background: white;
    color: #0068b7;
  }
  .footer-more-nav > ul > li:not(.img) > a:hover::after {
    right: 5px;
  }
}
@media (min-width: 480px) {
  .footer-more-nav > ul > li:not(.img) > a::after {
    position: absolute;
    right: 10px;
    content: "";
    font-family: 'FontAwesome';
    font-size: 1em;
    font-weight: normal;
    margin-left: 0;
    margin-right: 0;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .footer-more-nav > ul > li:not(.img) > a::after {
    transition: all .25s ease;
  }
}

.footer-more-nav > ul > li.img {
  border: 1px solid #c9c9c9;
}

.footer-bnr > ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-around;
  text-align: justify;
  /*--- IE9 Support ---*/
  text-justify: distribute-all-lines;
  /*--- IE9 Support ---*/
  padding: 0;
  list-style: none;
  letter-spacing: -.5em;
}
@media (min-width: 480px) {
  .footer-bnr > ul {
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    /*--- IE9 Support ---*/
    text-justify: auto;
    /*--- IE9 Support ---*/
  }
}
.footer-bnr > ul > li {
  display: inline-block;
  vertical-align: top;
  width: 49%;
  max-width: 130px;
  margin-bottom: 1.5em;
  letter-spacing: normal;
  text-align: center;
}
.footer-bnr > ul > li img {
  max-width: 150px;
}
@media (min-width: 480px) {
  .footer-bnr > ul > li {
    width: auto;
  }
  .footer-bnr > ul > li:not(:last-of-type) {
    margin-right: 30px;
  }
}
@media (min-width: 480px) and (min-width: 768px) {
  .footer-bnr > ul > li > a {
    transition: all .25s ease;
  }
  .footer-bnr > ul > li > a:hover {
    opacity: .75;
  }
}

.footer-bnr > ul > li > a {
  text-decoration: none;
}
.footer-bnr > ul .bnr-text {
  display: block;
  margin-top: 5px;
  font-size: .6875em;
}

.copyright {
  margin: 0;
  padding: 1em 10px;
  background: black;
  color: #898989;
  font-size: .625em;
}
.copyright small {
  font-size: 1em;
}

/*---------------------------------------------
  Animation Common
  ---------------------------------------------*/
/*---------------------------------------------
  Pagetop Button Style
  ---------------------------------------------*/
.page-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
}
.page-top a {
  display: block;
  box-sizing: border-box;
  border: 1px solid #0068b7;
  background: #0068b7;
  padding: 6px 10px;
  text-decoration: none;
  font-family: Arial;
  font-size: .75em;
  color: white;
  transition: background .5s ease;
}
.page-top a::before {
  position: relative;
  content: "";
  font-family: 'FontAwesome';
  font-size: inherit;
  font-weight: normal;
  margin-left: 0;
  margin-right: 0.5em;
  transition: bottom .5s ease;
}
.page-top a:hover {
  border: 1px solid #0068b7;
  background: white;
  color: #0068b7;
}
.page-top a:hover::before {
  bottom: 3px;
}
article section img.alignright {
	float: right;
}


/*---------------------------------------------
	Style End
  ---------------------------------------------*/
