@charset "UTF-8";
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
main, article, aside, canvas, details, figcaption, figure,
footer, header, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font-weight: normal;
  font-style: normal;
  vertical-align: baseline;
  background: transparent;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

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

ul, ol {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

ins {
  text-decoration: none;
}

mark {
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

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

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

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
  margin: 0;
}

input, textarea {
  font-size: 100%;
  margin: 0;
  padding: 0;
}

input[type=button], input[type=submit],
input[type=reset], button {
  outline: none;
  padding: 0;
  margin: 0;
}

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

img {
  vertical-align: top;
}

.u-tl {
  text-align: left !important;
}

.u-tr {
  text-align: right !important;
}

.u-tc {
  text-align: center !important;
}

.u-fl {
  float: left !important;
}

.u-fr {
  float: right !important;
}

.u-fn {
  float: none !important;
}

.u-hidden {
  display: none !important;
}

.u-block {
  display: block !important;
}

.u-inline-block {
  display: inline-block !important;
}

.u-inline {
  display: inline !important;
}

@media only screen and (max-width: 767px) {
  .u-sp-tl {
    text-align: left !important;
  }
  .u-sp-tr {
    text-align: right !important;
  }
  .u-sp-tc {
    text-align: center !important;
  }
  .u-sp-fl {
    float: left !important;
  }
  .u-sp-fr {
    float: right !important;
  }
  .u-sp-fn {
    float: none !important;
  }
  .u-sp-hidden {
    display: none !important;
  }
  .u-sp-block {
    display: block !important;
  }
  .u-sp-inline-block {
    display: inline-block !important;
  }
  .u-sp-inline {
    display: inline !important;
  }
}
@media only screen and (min-width: 768px) {
  .u-pc-tl {
    text-align: left !important;
  }
  .u-pc-tr {
    text-align: right !important;
  }
  .u-pc-tc {
    text-align: center !important;
  }
  .u-pc-fl {
    float: left !important;
  }
  .u-pc-fr {
    float: right !important;
  }
  .u-pc-fn {
    float: none !important;
  }
  .u-pc-hidden {
    display: none !important;
  }
  .u-pc-block {
    display: block !important;
  }
  .u-pc-inline-block {
    display: inline-block !important;
  }
  .u-pc-inline {
    display: inline !important;
  }
}
html,
body {
  color: #333;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}
@media only screen and (min-width: 768px) {
  html,
  body {
    font-size: 16px;
  }
}
@media only screen and (max-width: 767px) {
  html,
  body {
    font-size: 12px;
  }
}

.wrapper {
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .wrapper {
    padding-top: 130px;
  }
}
@media only screen and (max-width: 767px) {
  .wrapper {
    padding-top: 63px;
    overflow: hidden;
  }
}

a {
  color: inherit;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}

.cnt {
  position: relative;
}
@media only screen and (min-width: 768px) {
  .cnt {
    max-width: 1100px;
    margin: 0 auto;
  }
}
@media only screen and (max-width: 1152px) {
  .cnt {
    padding: 0 20px;
  }
}
@media only screen and (max-width: 767px) {
  .cnt {
    padding: 0 10px;
  }
}

.cnt-sub {
  position: relative;
}
@media only screen and (min-width: 768px) {
  .cnt-sub {
    max-width: 1000px;
    margin: 0 auto;
  }
}
@media only screen and (max-width: 1152px) {
  .cnt-sub {
    padding: 0 20px;
  }
}
@media only screen and (max-width: 767px) {
  .cnt-sub {
    padding: 0 10px;
  }
}

.cnt-flex {
  display: flex;
}
.cnt-flex.-vc {
  align-items: center;
}
.cnt-flex.-hc {
  justify-content: center;
}
.cnt-flex.-wrap {
  flex-wrap: wrap;
}

.com-header {
  width: 100%;
  position: fixed;
  left: 0;
  top: 0;
  background: #fff;
  z-index: 100;
  width: 100%;
  box-sizing: border-box;
  border-bottom: 1px solid #ccc;
}
@media only screen and (min-width: 768px) {
  .com-header {
    padding: 20px 70px;
    height: 130px;
  }
}
@media only screen and (max-width: 1152px) {
  .com-header {
    padding: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .com-header {
    padding: 15px;
    height: 63px;
    display: flex;
    align-items: center;
  }
}
.com-header > div {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.com-header > div > ul {
  display: flex;
  align-items: center;
}
.com-header > div > ul li:last-of-type {
  margin-left: 20px;
  padding-left: 20px;
  border-left: 1px #aaaaaa solid;
}
@media only screen and (max-width: 767px) {
  .com-header > div > ul li:last-of-type {
    margin-left: 10px;
    padding-left: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .com-header .site-logo img {
    width: 125px;
    height: auto;
  }
}
.com-header .kobelco-logo img {
  width: 111px;
}
@media only screen and (max-width: 767px) {
  .com-header .kobelco-logo img {
    width: 55px;
  }
}

.gnav {
  margin-top: 20px;
}
@media only screen and (max-width: 767px) {
  .gnav {
    display: none;
  }
}
.gnav .gnav-list {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 1152px) {
  .gnav .gnav-list {
    width: 100%;
  }
}
.gnav .gnav-list .gnav-list__item {
  width: 130px;
  display: table-cell;
  position: relative;
  text-align: center;
}
.gnav .gnav-list .gnav-list__item:hover .gnav-box {
  display: block;
}
.gnav .gnav-list .gnav-list__item a {
  color: #363636;
  display: block;
  position: relative;
}
.gnav .gnav-list .gnav-list__item a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.gnav .gnav-list .gnav-list__item.-has-children > a:after {
  content: "";
  position: absolute;
  display: block;
  background: url("../img/common/icn_arrow_down_01.png") no-repeat center bottom;
  width: 14px;
  height: 7px;
  left: 50%;
  bottom: -17px;
  transform: translate(-50%, 0);
}
.gnav .gnav-list .gnav-list__item.-about .gnav-box__title {
  background: url("../img/common/bg_nav_about.jpg");
}
.gnav .gnav-list .gnav-list__item.-company .gnav-box__title {
  background: url("../img/common/bg_nav_company.jpg");
}
.gnav .gnav-list .gnav-list__item.-product .gnav-box__title {
  background: url("../img/common/bg_nav_product.jpg");
}
.gnav .gnav-list .gnav-list__item.-recruit .gnav-box__title {
  background: url("../img/common/bg_nav_recruit.jpg");
}
.gnav .gnav-box {
  display: none;
  position: absolute;
  top: 1em;
  width: 740px;
  left: -130px;
  padding-top: calc(1em + 20px);
}
.gnav .gnav-box.-right {
  left: auto;
  right: -130px;
}
.gnav .gnav-box .gnav-box__inner {
  background: #000;
  padding: 20px;
  display: flex;
}
.gnav .gnav-box .gnav-box__title {
  color: #fff;
  font-weight: bold;
  width: 293px;
  height: 280px;
  display: flex;
  margin-right: 25px;
  justify-content: center;
  align-items: center;
  font-size: 1.875rem;
}
.gnav .gnav-box .gnav-box-nav-list {
  text-align: left;
}
.gnav .gnav-box .gnav-box-nav-list li {
  margin-top: 10px;
  line-height: 1.5;
}
.gnav .gnav-box .gnav-box-nav-list li:first-child {
  margin-top: 0;
}
.gnav .gnav-box .gnav-box-nav-list li a {
  color: #fff;
}

.snav {
  display: table-cell;
  vertical-align: middle;
  position: relative;
}
@media only screen and (max-width: 1152px) {
  .snav {
    display: block;
  }
}
.snav .header-search {
  position: absolute;
  z-index: 100;
  top: 40px;
  right: 42px;
  letter-spacing: -0.4em;
  width: 240px;
}
@media only screen and (max-width: 1152px) {
  .snav .header-search {
    top: 34px;
  }
}
@media only screen and (max-width: 767px) {
  .snav .header-search {
    top: 14px;
    right: 24px;
    width: 120px;
  }
}
.snav .header-search .header-search__input {
  border: 1px solid #ccc;
  letter-spacing: normal;
  height: 40px;
  line-height: 40px;
  padding: 0 10px;
  box-sizing: border-box;
  vertical-align: middle;
  width: 200px;
  background: #eee;
  outline: none;
}
@media only screen and (max-width: 767px) {
  .snav .header-search .header-search__input {
    height: 20px;
    width: 100px;
    line-height: 20px;
    padding: 0 5px;
  }
}
.snav .header-search .header-search__btn {
  border: 1px solid #000;
  letter-spacing: normal;
  height: 40px;
  width: 40px;
  line-height: 40px;
  vertical-align: middle;
  box-sizing: border-box;
  background: #000 url("../img/common/icn_search_02.png") no-repeat center;
  outline: none;
}
@media only screen and (max-width: 767px) {
  .snav .header-search .header-search__btn {
    width: 20px;
    height: 20px;
    line-height: 20px;
    background-size: 11px auto;
  }
}
.snav .snav-list {
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .snav .snav-list {
    justify-content: flex-end;
  }
}
.snav .snav-list .snav-list__item {
  margin-left: 15px;
  white-space: nowrap;
}
.snav .snav-list .snav-list__item a {
  color: #363636;
  display: block;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .snav .snav-list .snav-list__item a span {
    display: none;
  }
}
.snav .snav-list .snav-list__item a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.snav .snav-list .snav-list__item.-contact a {
  color: #0f63b7;
}
@media only screen and (min-width: 768px) {
  .snav .snav-list .snav-list__item.-contact a {
    padding-left: 26px;
  }
}
@media only screen and (max-width: 767px) {
  .snav .snav-list .snav-list__item.-contact a {
    padding-left: 16px;
  }
}
.snav .snav-list .snav-list__item.-contact a:before {
  content: "";
  background: url("../img/common/icn_mail_01.png") no-repeat left top;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
}
@media only screen and (min-width: 768px) {
  .snav .snav-list .snav-list__item.-contact a:before {
    background-size: 19px auto;
    width: 19px;
    height: 12px;
  }
}
@media only screen and (max-width: 767px) {
  .snav .snav-list .snav-list__item.-contact a:before {
    background-size: 16px auto;
    width: 16px;
    height: 10px;
  }
}
.snav .snav-list .snav-list__item.-lang.-en a:before {
  background-image: url("../img/common/icn_en.png");
}
.snav .snav-list .snav-list__item.-lang.-jpn a:before {
  background-image: url("../img/en/common/icn_jpn.png");
}
@media only screen and (min-width: 768px) {
  .snav .snav-list .snav-list__item.-lang a {
    padding-left: 37px;
  }
}
@media only screen and (max-width: 767px) {
  .snav .snav-list .snav-list__item.-lang a {
    padding-left: 23px;
  }
}
.snav .snav-list .snav-list__item.-lang a:before {
  content: "";
  background: no-repeat left top;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
}
@media only screen and (min-width: 768px) {
  .snav .snav-list .snav-list__item.-lang a:before {
    background-size: 27px auto;
    width: 27px;
    height: 18px;
  }
}
@media only screen and (max-width: 767px) {
  .snav .snav-list .snav-list__item.-lang a:before {
    background-size: 23px auto;
    width: 23px;
    height: 15px;
  }
}
@media only screen and (min-width: 768px) {
  .snav .snav-list .snav-list__item.-search {
    margin-left: 20px;
  }
}
.snav .snav-list .snav-list__item.-search.-on a:before {
  content: "";
  background: url("../img/common/icn_close_02.png") no-repeat left top;
}
@media only screen and (max-width: 767px) {
  .snav .snav-list .snav-list__item.-search.-on a:before {
    width: 17px;
    height: 17px;
    background-size: 17px auto;
  }
}
@media only screen and (min-width: 768px) {
  .snav .snav-list .snav-list__item.-search a {
    padding-left: 21px;
  }
}
@media only screen and (max-width: 767px) {
  .snav .snav-list .snav-list__item.-search a {
    padding-left: 17px;
  }
}
.snav .snav-list .snav-list__item.-search a:before {
  content: "";
  background: url("../img/common/icn_search_01.png") no-repeat left top;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
}
@media only screen and (min-width: 768px) {
  .snav .snav-list .snav-list__item.-search a:before {
    background-size: 21px auto;
    width: 21px;
    height: 22px;
  }
}
@media only screen and (max-width: 767px) {
  .snav .snav-list .snav-list__item.-search a:before {
    background-size: 17px auto;
    width: 17px;
    height: 17px;
  }
}
@media only screen and (min-width: 768px) {
  .snav .snav-list .snav-list__item.-menu {
    margin-left: 25px;
  }
}
@media only screen and (min-width: 768px) {
  .snav .snav-list .snav-list__item.-menu a {
    padding-left: 28px;
  }
}
@media only screen and (max-width: 767px) {
  .snav .snav-list .snav-list__item.-menu a {
    padding-left: 32px;
  }
}
.snav .snav-list .snav-list__item.-menu a:before {
  content: "";
  background: url("../img/common/icn_menu.png") no-repeat left top;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
}
@media only screen and (min-width: 768px) {
  .snav .snav-list .snav-list__item.-menu a:before {
    background-size: 28px auto;
    width: 28px;
    height: 24px;
  }
}
@media only screen and (max-width: 767px) {
  .snav .snav-list .snav-list__item.-menu a:before {
    background-size: 32px auto;
    width: 32px;
    height: 26px;
  }
}

@media only screen and (min-width: 768px) {
  .com-body {
    padding-bottom: 200px;
  }
}
@media only screen and (max-width: 767px) {
  .com-body {
    padding-bottom: 50px;
  }
}

.com-footer {
  background: #282828;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .com-footer .cnt {
    padding: 0;
  }
}
@media only screen and (min-width: 768px) {
  .com-footer {
    padding: 50px 0;
  }
}
@media only screen and (max-width: 767px) {
  .com-footer {
    padding: 0 0 25px;
  }
}

.page-top {
  position: absolute;
  top: -81px;
  right: -70px;
}
@media only screen and (max-width: 767px) {
  .page-top {
    display: none;
  }
}
.page-top a:hover {
  opacity: 0.6;
}

@media only screen and (min-width: 768px) {
  .footer-contact {
    display: none;
  }
}
.footer-contact a {
  background: #0f62b8;
  display: block;
  text-align: center;
  color: #fff;
  padding: 15px 0;
  font-size: 0.9166666667rem;
}
.footer-contact a span {
  display: inline-block;
  position: relative;
  background: url("../img/common/icn_mail_02.png") no-repeat left center;
  background-size: 9px auto;
  padding-left: 15px;
}

@media only screen and (max-width: 767px) {
  .fnav {
    display: none;
  }
}
.fnav .fnav-list {
  padding: 0 40px 60px;
  box-sizing: border-box;
  width: 100%;
  border-bottom: 1px solid #505050;
  display: table;
}
.fnav .fnav-list li {
  display: table-cell;
  min-width: 140px;
  line-height: 1.5;
}
.fnav .fnav-list li a {
  color: #fff;
}
.fnav .fnav-list li li {
  display: block;
  font-size: 0.875rem;
  margin-top: 8px;
}
.fnav .fnav-list li.primary li {
  font-size: 1rem;
  margin-top: 12px;
}

.fsnav {
  border-bottom: 1px solid #505050;
}
@media only screen and (min-width: 768px) {
  .fsnav {
    display: none;
  }
}
.fsnav .fsnav-list {
  display: flex;
  justify-content: center;
  padding: 16px 0 10px;
}
.fsnav .fsnav-list li {
  text-align: center;
  padding: 0 8px;
  line-height: 1.25;
  border-left: 1px solid #838383;
}
.fsnav .fsnav-list li:first-child {
  border-left: 0;
  padding-left: 0;
}
.fsnav .fsnav-list li a {
  color: #fff;
  font-size: 0.75rem;
}

.copyright {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .copyright {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .copyright {
    margin-top: 20px;
  }
}
.copyright ul {
  display: flex;
  justify-content: center;
  align-content: center;
}
.copyright ul li:last-of-type {
  margin-left: 30px;
  padding-left: 30px;
  border-left: 1px #ffffff solid;
}
@media only screen and (max-width: 767px) {
  .copyright ul li:last-of-type {
    margin-left: 20px;
    padding-left: 20px;
  }
}
.copyright ul li:last-of-type div {
  background-color: #ffffff;
  mask-image: url(../img/common/logo_kobelco.svg);
  mask-size: 126px 46px;
  width: 126px;
  height: 46px;
  font-size: 0;
  display: block;
}
@media only screen and (max-width: 767px) {
  .copyright ul li:last-of-type div {
    mask-size: 68px 25px;
    width: 68px;
    height: 25px;
  }
}
@media only screen and (max-width: 767px) {
  .copyright .copyright__logo {
    width: 118px;
    height: auto;
  }
}
.copyright .copyright__text {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  .copyright .copyright__text {
    margin-top: 20px;
    font-size: 0.75rem;
  }
}

.fixed-nav {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 110;
  height: 100%;
  background: rgba(34, 34, 34, 0.95);
}
.fixed-nav > .cnt {
  max-width: 1200px;
  width: auto;
}
@media only screen and (min-width: 768px) {
  .fixed-nav {
    display: flex;
    align-items: center;
  }
}
@media only screen and (max-width: 767px) {
  .fixed-nav {
    padding-top: 30px;
  }
}
.fixed-nav .fixed-nav__title {
  color: #fff;
  text-align: center;
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .fixed-nav .fixed-nav__title {
    font-size: 2.5rem;
    margin-bottom: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .fixed-nav .fixed-nav__title {
    font-size: 1.6666666667rem;
    margin-bottom: 35px;
  }
}
@media only screen and (min-width: 768px) {
  .fixed-nav .fixed-nav-list {
    display: table;
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .fixed-nav .fixed-nav-list {
    display: flex;
    flex-wrap: wrap;
    height: calc(100vh - 85px);
    padding-left: 20px;
    overflow-y: scroll;
  }
}
.fixed-nav .fixed-nav-list li {
  line-height: 1.5;
  padding: 0 8px;
}
@media only screen and (min-width: 768px) {
  .fixed-nav .fixed-nav-list li {
    display: table-cell;
    margin: 0 10px;
    min-width: 140px;
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .fixed-nav .fixed-nav-list li {
    width: 50%;
    box-sizing: border-box;
    padding: 0 20px;
    margin-bottom: 20px;
    font-size: 1.0833333333rem;
  }
}
.fixed-nav .fixed-nav-list li a {
  color: #fff;
}
.fixed-nav .fixed-nav-list li li {
  display: block;
  margin: 0;
  width: 100%;
  padding: 0;
  min-width: 0;
  margin-top: 8px;
}
@media only screen and (min-width: 768px) {
  .fixed-nav .fixed-nav-list li li {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .fixed-nav .fixed-nav-list li li {
    font-size: 0.9166666667rem;
  }
}
.fixed-nav .fixed-nav-list li.primary li {
  margin-top: 12px;
}
@media only screen and (min-width: 768px) {
  .fixed-nav .fixed-nav-list li.primary li {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .fixed-nav .fixed-nav-list li.primary li {
    font-size: 1.0833333333rem;
  }
}
.fixed-nav .fixed-nav-contact {
  margin-top: 100px;
  text-align: center;
}
.fixed-nav .fixed-nav-contact .fixed-nav-contact__btn {
  display: inline-block;
  color: #fff;
  width: 500px;
  box-sizing: border-box;
  padding: 30px;
  font-size: 1.375rem;
  background: #0f62b6 url("../img/common/icn_mail_02.png") no-repeat 30px center;
}
.fixed-nav .fixed-nav-contact .fixed-nav-contact__btn:hover {
  text-decoration: none;
  opacity: 0.6;
}
.fixed-nav .fixed-nav__close {
  position: absolute;
  z-index: 10;
  display: inline-block;
  background: url("../img/common/icn_close.png") no-repeat left center;
}
@media only screen and (min-width: 768px) {
  .fixed-nav .fixed-nav__close {
    width: 23px;
    height: 23px;
    right: 33px;
    top: 35px;
  }
}
@media only screen and (max-width: 767px) {
  .fixed-nav .fixed-nav__close {
    width: 12px;
    height: 12px;
    background-size: 12px auto;
    right: 12px;
    top: 12px;
  }
}

.sec .sec-header {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .sec .sec-title {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 767px) {
  .sec .sec-title {
    font-size: 1.25rem;
  }
}
.sec .sec-title__en {
  font-weight: bold;
  color: #0f63b8;
}
@media only screen and (min-width: 768px) {
  .sec .sec-title__en {
    font-size: 0.9375rem;
    margin-top: 12px;
  }
}
@media only screen and (max-width: 767px) {
  .sec .sec-title__en {
    font-size: 0.75rem;
    margin-top: 8px;
  }
}
@media only screen and (min-width: 768px) {
  .sec .sec-title__link {
    margin-top: 14px;
  }
}
@media only screen and (max-width: 767px) {
  .sec .sec-title__link {
    margin-top: 6px;
  }
}
.sec .sec-title__link a {
  display: inline-block;
  position: relative;
  color: #1e63b8;
}
@media only screen and (min-width: 768px) {
  .sec .sec-title__link a {
    padding-right: 24px;
  }
}
@media only screen and (max-width: 767px) {
  .sec .sec-title__link a {
    font-size: 0.75rem;
    padding-right: 16px;
  }
}
.sec .sec-title__link a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.sec .sec-title__link a:after {
  content: "";
  background: url("../img/common/icn_arrow_right_03.png") no-repeat left top;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  position: absolute;
  display: block;
}
@media only screen and (min-width: 768px) {
  .sec .sec-title__link a:after {
    width: 15px;
    height: 14px;
  }
}
@media only screen and (max-width: 767px) {
  .sec .sec-title__link a:after {
    background-size: 8px auto;
    width: 8px;
    height: 7px;
  }
}

.com-sec .com-sec__title {
  text-align: center;
  position: relative;
  font-weight: bold;
  line-height: 1.25;
}
@media only screen and (min-width: 768px) {
  .com-sec .com-sec__title {
    margin-bottom: 60px;
    font-size: 1.625rem;
  }
}
@media only screen and (max-width: 767px) {
  .com-sec .com-sec__title {
    margin-bottom: 30px;
    font-size: 1.3rem;
  }
}
.com-sec .com-sec__title:after {
  position: absolute;
  height: 1px;
  width: 58px;
  content: "";
  background: #0f62b8;
  left: 50%;
  bottom: -15px;
  transform: translate(-50%, 0);
}

.footer-sub-menu {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid #1560b4;
}
@media only screen and (min-width: 768px) {
  .footer-sub-menu {
    margin-top: 190px;
    padding-bottom: 25px;
  }
}
@media only screen and (max-width: 767px) {
  .footer-sub-menu {
    margin-top: 80px;
    padding-bottom: 15px;
  }
}
@media only screen and (min-width: 768px) {
  .footer-sub-menu + .com-contact {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .footer-sub-menu + .com-contact {
    margin-top: 20px;
  }
}
.footer-sub-menu .footer-sub-menu__item {
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .footer-sub-menu .footer-sub-menu__item {
    width: 280px;
    margin: 0 7px 15px 8px;
  }
}
@media only screen and (max-width: 767px) {
  .footer-sub-menu .footer-sub-menu__item {
    width: 50%;
    padding: 0 5px 10px 5px;
  }
}
.footer-sub-menu .footer-sub-menu__item.-active a {
  background-color: #f5f5f5;
}
.footer-sub-menu .footer-sub-menu__item a {
  display: flex;
  position: relative;
  text-align: center;
  align-items: center;
  justify-content: center;
  border: 1px solid #ccc;
  line-height: 1.333;
}
@media only screen and (min-width: 768px) {
  .footer-sub-menu .footer-sub-menu__item a {
    font-size: 1.125rem;
    color: #0f63b6;
    height: 80px;
  }
}
@media only screen and (max-width: 767px) {
  .footer-sub-menu .footer-sub-menu__item a {
    height: 40px;
    font-size: 0.9rem;
  }
}
.footer-sub-menu .footer-sub-menu__item a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.footer-sub-menu .footer-sub-menu__item a:after {
  content: "";
  background: url("../img/recruit/icn_arrow_right.png") no-repeat left center/12px 19px;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
}
@media only screen and (min-width: 768px) {
  .footer-sub-menu .footer-sub-menu__item a:after {
    width: 12px;
    height: 19px;
    right: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .footer-sub-menu .footer-sub-menu__item a:after {
    background-size: 6px 9px;
    width: 6px;
    height: 9px;
    right: 10px;
  }
}

.page .page__main-img {
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-image: url("../img/contact/img_main.jpg");
}
@media only screen and (min-width: 768px) {
  .page .page__main-img {
    font-size: 1.875rem;
    height: 150px;
  }
}
@media only screen and (max-width: 767px) {
  .page .page__main-img {
    font-size: 1.5rem;
    height: 75px;
  }
}
.page .page__title {
  position: relative;
  text-align: center;
  line-height: 1.25;
}
@media only screen and (min-width: 768px) {
  .page .page__title {
    font-size: 1.875rem;
    margin: 50px 0;
  }
}
@media only screen and (max-width: 767px) {
  .page .page__title {
    font-size: 1.5rem;
    margin: 25px 0;
    padding: 0 10px;
  }
}
.page .page__title span {
  display: inline-block;
  position: relative;
  max-width: 1100px;
  color: #0f63b7;
  font-weight: bold;
}
.page .page__title span:before, .page .page__title span:after {
  height: 3px;
  width: 100vw;
  background: #0f62b8;
  position: absolute;
  content: "";
  top: 50%;
}
.page .page__title span:before {
  left: calc(100% + 15px);
}
.page .page__title span:after {
  right: calc(100% + 15px);
}

.breadcrumb {
  background: #eee;
  display: flex;
}
@media only screen and (min-width: 768px) {
  .breadcrumb {
    font-size: 0.875rem;
    padding: 15px 20px;
  }
}
@media only screen and (max-width: 767px) {
  .breadcrumb {
    font-size: 0.875rem;
    padding: 7px 10px;
  }
}
.breadcrumb .breadcrumb__item:after {
  content: ">";
  padding: 0 3px;
}
.breadcrumb .breadcrumb__item a:hover {
  text-decoration: underline;
}
.breadcrumb .breadcrumb__item:last-child {
  color: #0f63b6;
}
.breadcrumb .breadcrumb__item:last-child:after {
  display: none;
}

.form-error {
  text-align: left;
  border: 2px solid #f00;
  background: #fff;
  box-sizing: border-box;
  line-height: 1.5;
}
@media only screen and (min-width: 768px) {
  .form-error.-contact {
    width: 600px;
  }
}
@media only screen and (min-width: 768px) {
  .form-error {
    font-size: 0.875rem;
    margin: 20px auto 30px;
    padding: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .form-error {
    font-size: 0.7rem;
    margin: 10px auto 15px;
    padding: 10px;
  }
}
.form-error p {
  background: #f00;
  color: #fff !important;
  display: block;
}
@media only screen and (min-width: 768px) {
  .form-error p {
    font-size: 0.875rem;
    margin: 0 0 20px;
    padding: 6px 15px;
  }
}
@media only screen and (max-width: 767px) {
  .form-error p {
    font-size: 0.7rem;
    margin: 0 0 10px;
    padding: 3px 10px;
  }
}
.form-error p:last-child {
  margin-bottom: 0;
}
.form-error ul {
  padding-left: 1.5em;
}
.form-error ul li {
  list-style: disc;
  color: #f00;
}

.action {
  text-align: center;
}
.action .action__btn {
  display: inline-block;
  border: none;
  color: #fff;
  background: #0f62b8;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .action .action__btn {
    height: 80px;
    line-height: 80px;
  }
}
@media only screen and (max-width: 767px) {
  .action .action__btn {
    height: 40px;
    line-height: 40px;
  }
}
.action .action__btn:after {
  content: "";
  background: url("../img/common/icn_btn_arrow_right.png") no-repeat left top;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
}
@media only screen and (min-width: 768px) {
  .action .action__btn:after {
    width: 16px;
    right: 20px;
    height: 26px;
  }
}
@media only screen and (max-width: 767px) {
  .action .action__btn:after {
    width: 8px;
    right: 10px;
    height: 13px;
    background-size: 8px auto;
  }
}
.action .action__btn:hover {
  opacity: 0.6;
}
@media only screen and (min-width: 768px) {
  .action .action__btn {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .action .action__btn {
    font-size: 1.1666666667rem;
  }
}

@media only screen and (min-width: 768px) {
  .com-contact-form {
    width: 600px;
    margin: 0 auto;
  }
}
.com-contact-form .error {
  border-color: #d00;
  background: #fee;
}
@media only screen and (min-width: 768px) {
  .com-contact-form .contact-form__title {
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .com-contact-form .contact-form__title {
    margin-bottom: 8px;
  }
}
.com-contact-form .contact-form__title:before {
  content: "●";
  color: #fc8335;
}
.com-contact-form .contact-form__title.-no-mark:before {
  display: none;
}
@media only screen and (min-width: 768px) {
  .com-contact-form .contact-form__field {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .com-contact-form .contact-form__field {
    margin-bottom: 20px;
  }
}
@media only screen and (min-width: 768px) {
  .com-contact-form .contact-form__field + .contact-form__field {
    margin-top: -10px;
  }
}
@media only screen and (max-width: 767px) {
  .com-contact-form .contact-form__field + .contact-form__field {
    margin-top: -5px;
  }
}

.form-radio {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
@media only screen and (min-width: 768px) {
  .form-radio.-size-50p .form-radio__item {
    min-width: 50%;
  }
}
.form-radio .form-radio__item {
  display: flex;
  align-items: center;
}
.form-radio .form-radio__item > label {
  display: flex;
  align-items: center;
  min-width: 100px;
}
@media only screen and (min-width: 768px) {
  .form-radio .form-radio__item {
    font-size: 1.125rem;
    margin-right: 40px;
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .form-radio .form-radio__item {
    font-size: 1.1666666667rem;
    margin-right: 20px;
    margin-bottom: 15px;
    min-width: 50%;
  }
}
.form-radio .form-radio__item .iradio {
  background: url("../img/common/bg_radio.png") center left/30px auto;
}
@media only screen and (min-width: 768px) {
  .form-radio .form-radio__item .iradio {
    width: 30px;
    height: 30px;
    margin-right: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .form-radio .form-radio__item .iradio {
    width: 15px;
    height: 15px;
    margin-right: 5px;
    background-size: 15px auto;
  }
}
.form-radio .form-radio__item .iradio.checked {
  background-image: url("../img/common/bg_radio_checked.png");
}
.form-radio .form-radio__item .form-text {
  float: right;
}
@media only screen and (min-width: 768px) {
  .form-radio .form-radio__item .form-text {
    width: 450px;
    margin-left: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .form-radio .form-radio__item .form-text {
    width: 200px;
    margin-left: 15px;
  }
}

@media only screen and (min-width: 768px) {
  .form-row {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .form-row {
    margin-bottom: 10px;
  }
}

.form-note {
  display: inline-block;
}
@media only screen and (min-width: 768px) {
  .form-note.-prefix {
    margin-right: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .form-note.-prefix {
    margin-right: 5px;
  }
}
@media only screen and (min-width: 768px) {
  .form-note.-sep {
    margin: 0 10px;
  }
}
@media only screen and (max-width: 767px) {
  .form-note.-sep {
    margin: 0 5px;
  }
}

.form-text {
  border: 1px solid #aaa;
  box-sizing: border-box;
  padding: 0 10px;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .form-text {
    height: 35px;
  }
}
@media only screen and (max-width: 767px) {
  .form-text {
    height: 25px;
  }
}
@media only screen and (min-width: 768px) {
  .form-text.-large {
    height: 45px;
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .form-text.-large {
    height: 30px;
    font-size: 1rem;
  }
}
.form-text:placeholder-shown {
  color: #ccc;
}
.form-text::-webkit-input-placeholder {
  color: #ccc;
}
.form-text::-moz-placeholder {
  color: #ccc;
  opacity: 1;
}
.form-text:-ms-input-placeholder {
  color: #ccc;
}
@media only screen and (min-width: 768px) {
  .form-text.-zip {
    width: 80px;
  }
}
@media only screen and (max-width: 767px) {
  .form-text.-zip {
    width: 50px;
  }
}

.form-select {
  width: 100%;
  box-sizing: border-box;
}
.form-select select {
  width: 100%;
  box-sizing: border-box;
  position: relative;
  z-index: 2;
}
@media only screen and (min-width: 768px) {
  .form-select.-large select {
    height: 45px;
  }
}
@media only screen and (max-width: 767px) {
  .form-select.-large select {
    height: 30px;
  }
}
@media only screen and (min-width: 768px) {
  .form-select.-large .customSelect {
    height: 45px;
    line-height: 44px;
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .form-select.-large .customSelect {
    height: 30px;
    line-height: 29px;
    font-size: 1rem;
  }
}
.form-select .customSelect {
  width: 100%;
  display: block;
  box-sizing: border-box;
  border: 1px solid #0f62b8;
  padding: 0 10px;
  position: relative;
  z-index: 1;
}
@media only screen and (min-width: 768px) {
  .form-select .customSelect {
    height: 35px;
    line-height: 34px;
  }
}
@media only screen and (max-width: 767px) {
  .form-select .customSelect {
    height: 25px;
    line-height: 24px;
  }
}
.form-select .customSelect:after {
  content: "";
  display: block;
  background: url("../img/common/icn_select_arrow_down.png") no-repeat left top/18px 10px;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
}
@media only screen and (min-width: 768px) {
  .form-select .customSelect:after {
    right: 15px;
    width: 18px;
    height: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .form-select .customSelect:after {
    right: 10px;
    width: 9px;
    height: 5px;
    background-size: 9px auto;
  }
}
.form-select.-center .customSelectInner {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .form-select.-pref {
    width: 180px;
  }
}
@media only screen and (max-width: 767px) {
  .form-select.-pref {
    width: 100px;
  }
}

.form-text {
  border: 1px solid #aaa;
  box-sizing: border-box;
  padding: 0 10px;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .form-text {
    height: 35px;
  }
}
@media only screen and (max-width: 767px) {
  .form-text {
    height: 25px;
  }
}
@media only screen and (min-width: 768px) {
  .form-text.-large {
    height: 45px;
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .form-text.-large {
    height: 30px;
    font-size: 1rem;
  }
}
.form-text:placeholder-shown {
  color: #ccc;
}
.form-text::-webkit-input-placeholder {
  color: #ccc;
}
.form-text::-moz-placeholder {
  color: #ccc;
  opacity: 1;
}
.form-text:-ms-input-placeholder {
  color: #ccc;
}
@media only screen and (min-width: 768px) {
  .form-text.-zip {
    width: 80px;
  }
}
@media only screen and (max-width: 767px) {
  .form-text.-zip {
    width: 50px;
  }
}

.form-textarea {
  border: 1px solid #aaa;
  box-sizing: border-box;
  padding: 10px;
  width: 100%;
}

.com-contact {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .com-contact {
    margin-top: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .com-contact {
    margin-top: 35px;
  }
}
.com-contact.-border-top {
  border-top: 1px solid #2865b5;
  padding-top: 35px;
}
.com-contact.-border-bottom {
  border-bottom: 1px solid #2865b5;
  padding-bottom: 40px;
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .com-contact.-border-bottom {
    padding-bottom: 20px;
    margin-bottom: 15px;
  }
}
.com-contact .com-contact__btn {
  display: inline-block;
  color: #fff;
  box-sizing: border-box;
  background: #0f62b6 url("../img/common/icn_mail_02.png") no-repeat 30px center;
}
@media only screen and (min-width: 768px) {
  .com-contact .com-contact__btn {
    width: 500px;
    padding: 30px;
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .com-contact .com-contact__btn {
    width: 100%;
    padding: 20px;
    font-size: 1.1rem;
    background-position: 15px center;
  }
}
.com-contact .com-contact__btn:hover {
  text-decoration: none;
  opacity: 0.6;
}

.com-action {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .com-action {
    margin-top: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .com-action {
    margin-top: 35px;
  }
}
.com-action .com-action__btn {
  display: inline-block;
  color: #fff;
  box-sizing: border-box;
  background: #0f62b6;
  position: relative;
}
.com-action .com-action__btn:after {
  width: 12px;
  position: absolute;
  height: 18px;
  content: "";
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  background: url("../img/common/icn_arrow_right_07.png") no-repeat;
}
@media only screen and (min-width: 768px) {
  .com-action .com-action__btn {
    padding: 30px 50px;
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .com-action .com-action__btn {
    width: 100%;
    padding: 20px;
    font-size: 1.1rem;
    background-position: 15px center;
  }
}
.com-action .com-action__btn:hover {
  text-decoration: none;
  opacity: 0.6;
}
.com-action .com-action__btn.-inversion {
  background: #fff;
  color: #0f62b6;
  border: 1px solid #0f62b6;
}
.com-action .com-action__btn.-inversion:after {
  width: 12px;
  position: absolute;
  height: 18px;
  content: "";
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  background: url("../img/common/icn_arrow_right_08.png") no-repeat;
}

.pager {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 768px) {
  .pager {
    margin-top: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .pager {
    margin-top: 25px;
  }
}
.pager .pager__item {
  margin: 0 2px;
}
.pager .pager__item a {
  display: block;
  background: #cbcbcb;
  color: #fff;
}
@media only screen and (min-width: 768px) {
  .pager .pager__item a {
    padding: 12px 20px;
  }
}
@media only screen and (max-width: 767px) {
  .pager .pager__item a {
    padding: 6px 8px;
  }
}
.pager .pager__item a:hover {
  text-decoration: none;
  background: #0f62b8;
}
.pager .pager__item.-current a {
  background: #0f62b8;
}

.com-faq-title {
  overflow: hidden;
  position: relative;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .com-faq-title {
    font-size: 1.375rem;
    margin-bottom: 35px;
  }
}
@media only screen and (max-width: 767px) {
  .com-faq-title {
    font-size: 1.1rem;
    margin-bottom: 10px;
  }
}
.com-faq-title span {
  display: inline-block;
  position: relative;
  color: #0f63b7;
  font-weight: bold;
}
.com-faq-title span:before, .com-faq-title span:after {
  height: 1px;
  width: 100vw;
  background: #ccc;
  position: absolute;
  content: "";
  top: 50%;
}
.com-faq-title span:before {
  left: calc(100% + 15px);
}
.com-faq-title span:after {
  right: calc(100% + 15px);
}

.com-faq-list {
  counter-reset: faq;
}
@media only screen and (min-width: 768px) {
  .com-faq-list {
    margin-bottom: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .com-faq-list {
    margin-bottom: 30px;
  }
}
.com-faq-list .com-faq-list__item {
  counter-increment: faq;
}
.com-faq-list .com-faq-list__item:nth-child(-n+9) .com-faq-list__question:before {
  content: "Q.0" counter(faq);
}
.com-faq-list .com-faq-list__item:nth-child(-n+9) .com-faq-list__answer:before {
  content: "A.0" counter(faq);
}
.com-faq-list .com-faq-list__item .com-faq-list__question {
  border: 1px solid #ccc;
  position: relative;
  line-height: 1.25;
  color: #1560b4;
}
@media only screen and (min-width: 768px) {
  .com-faq-list .com-faq-list__item .com-faq-list__question {
    padding: 10px 40px 10px 110px;
    margin-bottom: 20px;
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .com-faq-list .com-faq-list__item .com-faq-list__question {
    padding: 5px 20px 5px 50px;
    margin-bottom: 10px;
    font-size: 1.2rem;
  }
}
.com-faq-list .com-faq-list__item .com-faq-list__question:before {
  position: absolute;
  left: 15px;
  content: "Q." counter(faq);
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .com-faq-list .com-faq-list__item .com-faq-list__question:before {
    left: 7px;
  }
}
.com-faq-list .com-faq-list__item .com-faq-list__question:after {
  position: absolute;
  right: 10px;
  top: 50%;
  content: "";
  width: 25px;
  height: 25px;
  transform: translateY(-12px);
  background: url("../img/common/icn_plus.png") no-repeat center/25px auto;
}
@media only screen and (max-width: 767px) {
  .com-faq-list .com-faq-list__item .com-faq-list__question:after {
    right: 5px;
    width: 12px;
    height: 12px;
    transform: translateY(-6px);
    background-size: 12px auto;
  }
}
.com-faq-list .com-faq-list__item .com-faq-list__question.-active:after {
  background: url("../img/common/icn_minus.png") no-repeat center/25px auto;
}
@media only screen and (max-width: 767px) {
  .com-faq-list .com-faq-list__item .com-faq-list__question.-active:after {
    background-size: 12px auto;
  }
}
.com-faq-list .com-faq-list__item .com-faq-list__answer {
  line-height: 1.75;
  position: relative;
  display: none;
}
@media only screen and (min-width: 768px) {
  .com-faq-list .com-faq-list__item .com-faq-list__answer {
    margin-top: 30px;
    padding: 0 10px 40px 110px;
  }
}
@media only screen and (max-width: 767px) {
  .com-faq-list .com-faq-list__item .com-faq-list__answer {
    margin-top: 15px;
    padding: 0 20px 20px 50px;
    font-size: 0.9166666667rem;
  }
}
.com-faq-list .com-faq-list__item .com-faq-list__answer:before {
  position: absolute;
  content: "A." counter(faq);
  color: #1560b4;
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .com-faq-list .com-faq-list__item .com-faq-list__answer:before {
    left: 15px;
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .com-faq-list .com-faq-list__item .com-faq-list__answer:before {
    left: 7px;
    font-size: 1.2rem;
  }
}

.com-pre-text {
  margin-bottom: 25px;
  line-height: 1.75;
}

.com-full-image img {
  width: 100%;
  height: auto;
}
.com-full-image a {
  display: block;
}
.com-full-image a:hover img {
  opacity: 0.7;
}

.com-text {
  line-height: 1.75;
}

.root-page-menu {
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (min-width: 768px) {
  .root-page-menu {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .root-page-menu {
    margin-top: 20px;
  }
}
.root-page-menu .root-page-menu__item {
  width: 50%;
  box-sizing: border-box;
}
.root-page-menu .root-page-menu__item:nth-child(2n-1) {
  margin-right: auto;
}
@media only screen and (min-width: 768px) {
  .root-page-menu .root-page-menu__item:nth-child(2n-1) {
    padding-right: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .root-page-menu .root-page-menu__item:nth-child(2n-1) {
    padding-right: 8px;
  }
}
@media only screen and (min-width: 768px) {
  .root-page-menu .root-page-menu__item:nth-child(2n) {
    padding-left: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .root-page-menu .root-page-menu__item:nth-child(2n) {
    padding-left: 8px;
  }
}
.root-page-menu .root-page-menu__item a {
  display: block;
  position: relative;
  border-bottom: 1px solid #0f62b8;
}
@media only screen and (min-width: 768px) {
  .root-page-menu .root-page-menu__item a {
    padding: 40px 0;
  }
}
@media only screen and (max-width: 767px) {
  .root-page-menu .root-page-menu__item a {
    padding: 15px 15px 15px 0;
  }
}
.root-page-menu .root-page-menu__item a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.root-page-menu .root-page-menu__item a:after {
  content: "";
  background: url("../img/recruit/icn_arrow_right.png") no-repeat left center/12px 19px;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
}
@media only screen and (min-width: 768px) {
  .root-page-menu .root-page-menu__item a:after {
    width: 12px;
    height: 19px;
    right: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .root-page-menu .root-page-menu__item a:after {
    background-size: 6px 9px;
    width: 6px;
    height: 9px;
    right: 0;
  }
}
.root-page-menu .root-page-menu__title {
  color: #0f63b6;
  line-height: 1.33;
}
@media only screen and (min-width: 768px) {
  .root-page-menu .root-page-menu__title {
    font-size: 1.25rem;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .root-page-menu .root-page-menu__title {
    font-size: 1rem;
    margin-bottom: 5px;
  }
}
.root-page-menu .root-page-menu__sub-title {
  line-height: 1.33;
}
@media only screen and (max-width: 767px) {
  .root-page-menu .root-page-menu__sub-title {
    font-size: 0.8rem;
    margin-bottom: 5px;
  }
}

.com-img-list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.com-img-list.-col-3 {
  margin: 0 -8px;
}
@media only screen and (max-width: 767px) {
  .com-img-list.-col-3 {
    margin: 0 -5px;
  }
}
.com-img-list.-col-3 .com-img-list__item {
  box-sizing: border-box;
  width: 33.3333%;
  padding: 0 8px;
}
@media only screen and (max-width: 767px) {
  .com-img-list.-col-3 .com-img-list__item {
    padding: 0 5px;
  }
}
.com-img-list.-col-3 .com-img-list__item img {
  width: 100%;
  height: auto;
}

.com-strong-list .com-strong-list__item {
  color: #0f63b7;
  line-height: 1.8;
}
@media only screen and (min-width: 768px) {
  .com-strong-list .com-strong-list__item {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .com-strong-list .com-strong-list__item {
    font-size: 1rem;
  }
}

.com-def-list .com-def-list__title {
  color: #0f63b7;
  line-height: 1.8;
  margin-bottom: 10px;
}
@media only screen and (min-width: 768px) {
  .com-def-list .com-def-list__title {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .com-def-list .com-def-list__title {
    font-size: 1rem;
  }
}
.com-def-list .com-def-list__desc {
  line-height: 1.8;
  padding-bottom: 20px;
  border-bottom: 1px solid #ccc;
}

@media only screen and (max-width: 767px) {
  .scrollable {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .scrollable.has-scroll {
    position: relative;
    overflow: hidden;
  }
  .scrollable.has-scroll:after {
    position: absolute;
    top: 0;
    left: 100%;
    width: 50px;
    height: 100%;
    border-radius: 10px 0 0 10px/50% 0 0 50%;
    box-shadow: -5px 0 10px rgba(0, 0, 0, 0.25);
    content: "";
  }
  .scrollable.has-scroll > div {
    overflow-x: auto;
  }
  .scrollable th {
    white-space: nowrap;
  }
}

@media only screen and (min-width: 768px) {
  .com-search-div {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .com-search-div {
    margin-top: 20px;
  }
}

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: pointer !important;
}

.modal {
  z-index: 100;
  background: rgba(0, 0, 0, 0.3);
  pointer-events: none;
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.4s ease;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
@media only screen and (max-width: 767px) {
  .modal {
    padding: 0 20px;
    box-sizing: border-box;
  }
}
.modal.is-show {
  opacity: 1;
  pointer-events: auto;
}
.modal-close {
  position: absolute;
  display: block;
  width: 30px;
  height: 30px;
  right: 25px;
  top: 25px;
  transition: opacity ease 0.4s;
}
@media only screen and (max-width: 767px) {
  .modal-close {
    width: 20px;
    height: 20px;
    right: 15px;
    top: 15px;
  }
}
.modal-close::before, .modal-close::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  width: 30px;
  height: 2px;
  background: #707070;
  right: 0;
  transform-origin: center;
}
@media only screen and (max-width: 767px) {
  .modal-close::before, .modal-close::after {
    width: 20px;
    height: 1px;
  }
}
.modal-close::before {
  transform: rotate(45deg);
}
.modal-close::after {
  transform: rotate(-45deg);
}
.modal-close:hover {
  opacity: 0.6;
}
.modal-inner {
  padding: 40px 40px 60px;
  background: #fff;
  width: 868px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .modal-inner {
    width: auto;
    padding: 20px 20px 30px;
  }
}
.modal-title {
  font-size: 20px;
  font-weight: bold;
  color: #0f63b6;
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .modal-title {
    font-size: 18px;
    margin-bottom: 15px;
  }
}
.modal-description {
  font-size: 14px;
  color: #707070;
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .modal-description {
    font-size: 12px;
    margin-bottom: 15px;
    line-height: 1.33;
  }
}
.modal-form {
  display: block;
}
.modal-form-row {
  display: flex;
  align-items: center;
}
.modal-form-row + .modal-form-row {
  margin-top: 30px;
}
@media only screen and (max-width: 767px) {
  .modal-form-row + .modal-form-row {
    margin-top: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .modal-form-row {
    display: block;
  }
}
.modal-form-required {
  position: absolute;
  right: 20px;
  top: calc(50% - 12px);
  display: inline-block;
  background: #0f63b6;
  color: #fff;
  padding: 5px 10px;
  font-size: 12px;
}
.modal-form-required::after {
  content: "必須";
}
@media only screen and (max-width: 767px) {
  .modal-form-required {
    right: 0;
    font-size: 10px;
    padding: 3px 6px;
    top: auto;
    bottom: 0;
  }
}
.modal-form-title {
  position: relative;
  width: 200px;
  flex-shrink: 0;
  line-height: 1.4;
}
@media only screen and (max-width: 767px) {
  .modal-form-title {
    width: auto;
    margin-bottom: 8px;
  }
}
.modal-form-content {
  flex-grow: 1;
  display: flex;
  align-items: stretch;
  margin: 0 -15px;
}
@media only screen and (max-width: 767px) {
  .modal-form-content {
    margin: 0 -8px;
  }
}
.modal-form-field {
  width: 100%;
  border-radius: 0;
  border: 1px solid #707070;
  flex-grow: 1;
  height: 54px;
  padding: 0 15px;
  margin: 0 15px;
}
@media only screen and (max-width: 767px) {
  .modal-form-field {
    height: 30px;
    padding: 0 10px;
    margin: 0 8px;
  }
}
.modal-form-check {
  margin: 0 5px;
  display: flex;
  align-items: center;
}
.modal-form-check label {
  display: flex;
  align-items: center;
  font-size: 16px;
  margin: 0 10px;
}
@media only screen and (max-width: 767px) {
  .modal-form-check label {
    font-size: 12px;
    margin: 0 5px;
  }
}
.modal-form-check label input {
  margin-right: 10px;
}
@media only screen and (max-width: 767px) {
  .modal-form-check label input {
    margin-right: 5px;
  }
}
.modal-form-action {
  margin-top: 30px;
  display: flex;
  align-items: center;
  text-align: center;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  .modal-form-action {
    margin-top: 20px;
  }
}
.modal-form-action-btn {
  width: 430px;
  height: 65px;
  background: #0f63b6;
  color: #fff;
  cursor: pointer;
  font-size: 18px;
  border: none;
  outline: none;
  -webkit-appearance: none;
  border-radius: 0;
  transition: opacity ease 0.4s;
}
@media only screen and (max-width: 767px) {
  .modal-form-action-btn {
    width: 100%;
    height: 30px;
    font-size: 14px;
  }
}
.modal-form-action-btn:hover {
  opacity: 0.7;
}

.com-search-form-wrapper {
  background-color: #ffffff;
}
@media only screen and (min-width: 768px) {
  .com-search-form-wrapper {
    padding: 25px 15px;
  }
}
@media only screen and (max-width: 767px) {
  .com-search-form-wrapper {
    padding: 35px 10px;
  }
}
@media only screen and (min-width: 768px) {
  .com-search-form-wrapper:nth-of-type(n+2) {
    margin-top: 25px;
  }
}
@media only screen and (max-width: 767px) {
  .com-search-form-wrapper:nth-of-type(n+2) {
    margin-top: 20px;
  }
}
@media only screen and (min-width: 768px) {
  .com-search-form-wrapper > div:nth-of-type(n+2) {
    margin-top: 25px;
  }
}
@media only screen and (max-width: 767px) {
  .com-search-form-wrapper > div:nth-of-type(n+2) {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .com-search-form-wrapper:nth-of-type(1) > div .com-search-form__title span {
    padding-left: 30px;
    cursor: pointer;
  }
  .com-search-form-wrapper:nth-of-type(1) > div .com-search-form__title span:before {
    content: "";
    width: 10px;
    height: 10px;
    border-top: 1px #333333 solid;
    border-right: 1px #333333 solid;
    box-sizing: border-box;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    transform: translateX(-50%) rotate(45deg);
  }
  .com-search-form-wrapper:nth-of-type(1) > div .com-search-form__title span.is-open:before {
    transform: translateY(-50%) rotate(135deg);
  }
}
.com-search-form__title {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .com-search-form__title {
    font-size: 20px;
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .com-search-form__title {
    font-size: 18px;
    margin-bottom: 20px;
  }
}
.com-search-form__title span {
  font-weight: 700;
  display: inline-block;
  position: relative;
}
@media screen and (min-width: 1025px) {
  .com-search-form-items {
    display: flex !important;
    align-items: flex-start;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .com-search-form-items {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .com-search-form-items {
    display: none;
  }
}
.com-search-form-items__column {
  font-size: 15px;
}
.com-search-form-items__column:first-of-type {
  height: 50px;
  border: 1px #cccccc solid;
  box-sizing: border-box;
}
@media screen and (min-width: 1025px) {
  .com-search-form-items__column:first-of-type {
    width: 100px;
    margin-top: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
@media screen and (max-width: 1024px) {
  .com-search-form-items__column:first-of-type {
    width: 100%;
    padding: 0 10px;
    display: block;
  }
}
.com-search-form-items__column:first-of-type span {
  font-weight: 700;
  line-height: 50px;
  text-align: left;
  padding-left: 30px;
  position: relative;
  box-sizing: border-box;
  cursor: pointer;
}
.com-search-form-items__column:first-of-type span:before {
  content: "";
  width: 20px;
  height: 20px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  border: 1px #333333 solid;
  box-sizing: border-box;
  border-radius: 3px;
}
.com-search-form-items__column:first-of-type span.is-checked:after {
  content: "";
  width: 6px;
  height: 10px;
  position: absolute;
  top: 50%;
  left: -3px;
  margin: auto;
  border-bottom: 2px #0f62b6 solid;
  border-right: 2px #0f62b6 solid;
  transform: rotate(45deg) translateY(-100%);
}
@media only screen and (min-width: 768px) {
  .com-search-form-items__column:last-of-type {
    width: calc(100% - 100px);
  }
}
@media screen and (max-width: 1024px) {
  .com-search-form-items__column:last-of-type {
    width: 100%;
  }
}
.com-search-form-items__item {
  text-align: left;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
.com-search-form-items__item-cat {
  width: 100%;
  height: 50px;
  padding: 0 5px 0 35px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-sizing: border-box;
  position: relative;
  cursor: pointer;
}
.com-search-form-items__item-cat:before {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 1px #333333 solid;
  border-right: 1px #333333 solid;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 15px;
  margin: auto;
  transform: translateX(-50%) rotate(45deg);
}
.com-search-form-items__item-cat:hover {
  opacity: 0.6;
}
.com-search-form-items__item-cat.is-open:before {
  transform: translateY(-50%) rotate(135deg);
}
.com-search-form-items__item-cat span {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
}
@media only screen and (min-width: 768px) {
  .com-search-form-items__item-cat span.resin-rubber-ceramics-fine-ceramics-glass-mining {
    font-size: 10px;
  }
}
@media screen and (max-width: 1024px) {
  .com-search-form-items__item-cat span.resin-rubber-ceramics-fine-ceramics-glass-mining {
    font-size: 15px;
  }
}
.com-search-form-items__item-cat figure {
  width: 50px;
  height: auto;
  margin-left: 5px;
  flex-shrink: 0;
}
.com-search-form-items__item-cat figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.com-search-form-items__item > li {
  border: 1px #cccccc solid;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .com-search-form-items__item > li {
    width: calc((100% - 60px) / 4);
    margin: 15px 0 0 15px;
  }
}
@media screen and (max-width: 1024px) {
  .com-search-form-items__item > li {
    width: 100%;
    margin: 15px 0 0 0;
  }
}
.com-search-form-items__item > li button {
  display: block;
  position: relative;
}
.com-search-form-items__item > li ul {
  list-style-type: none;
  padding: 10px;
  display: none;
  border-top: 1px #cccccc solid;
}
.com-search-form-items__item > li ul li {
  min-height: 20px;
}
.com-search-form-items__item > li ul li:nth-of-type(n+2) {
  margin-top: 10px;
}
.com-search-form-items__item > li ul li label {
  padding-left: 30px;
  display: flex;
  align-items: center;
  position: relative;
  cursor: pointer;
}
.com-search-form-items__item > li ul li label:before {
  content: "";
  width: 20px;
  height: 20px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  border: 1px #333333 solid;
  box-sizing: border-box;
  border-radius: 3px;
}
.com-search-form-items__item > li ul li label input[type=checkbox] {
  display: none;
}
.com-search-form-items__item > li ul li label input[type=checkbox]:checked + span:before {
  content: "";
  width: 6px;
  height: 10px;
  position: absolute;
  top: 50%;
  left: -3px;
  margin: auto;
  border-bottom: 2px #0f62b6 solid;
  border-right: 2px #0f62b6 solid;
  transform: rotate(45deg) translateY(-100%);
}
.com-search-form-items__item > li ul li label span {
  font-weight: 700;
  line-height: 1.2;
}
.com-search-form__submit {
  color: #ffffff;
  background-color: #0f62b6;
  width: 250px;
  height: 50px;
  font-size: 19px;
  font-weight: 700;
  margin: 35px auto 0 auto;
  display: block;
}
.com-search-form__submit:hover {
  opacity: 0.6;
}
.com-search-form__clear {
  text-align: center;
  margin-top: 20px;
}
.com-search-form__clear span {
  color: #0f62b6;
  font-size: 13px;
  display: inline-block;
  cursor: pointer;
}
.com-search-form__clear span:hover {
  opacity: 0.6;
}
.com-search-form__keyword-submit {
  max-width: 800px;
  margin: 20px auto 0 auto;
  position: relative;
}
.com-search-form__keyword-submit input {
  width: 100%;
  font-size: 15px;
  line-height: 43px;
  padding: 0 calc(102.5px + 1em) 0 1em;
  border: 1px #333333 solid;
  box-sizing: border-box;
  border-radius: 5px;
}
.com-search-form__keyword-submit input::placeholder {
  color: #cccccc;
  opacity: 1;
}
.com-search-form__keyword-submit button {
  color: #ffffff;
  background-color: #0f62b6;
  height: 40px;
  font-size: 19px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-align: center;
  padding-left: 0.125em;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 2.5px;
  margin: auto;
  box-sizing: border-box;
  border-radius: 5px;
}
@media only screen and (min-width: 768px) {
  .com-search-form__keyword-submit button {
    width: 100px;
  }
}
@media only screen and (max-width: 767px) {
  .com-search-form__keyword-submit button {
    width: 70px;
  }
}
.com-search-form__keyword-submit button:hover {
  opacity: 0.6;
}

body.home .com-body {
  padding-bottom: 0;
}
body.home .com-body a:hover {
  opacity: 0.6;
  text-decoration: none;
}
body.home .cnt {
  max-width: 1024px;
}
body.home .footer-contact {
  display: none !important;
}

.top-sec-header {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .top-sec-header {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .top-sec-header {
    margin-bottom: 20px;
  }
}
.top-sec-header > * {
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .top-sec-header > * {
    font-size: 35px;
  }
}
@media only screen and (max-width: 767px) {
  .top-sec-header > * {
    font-size: 25px;
  }
}

@media only screen and (min-width: 768px) {
  .top-productPosts {
    display: flex;
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 767px) {
  .top-productPosts {
    display: block;
  }
}
.top-productPosts__more {
  width: 100%;
  display: none;
}
.top-productPosts__more div {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .top-productPosts__more div {
    display: flex;
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 767px) {
  .top-productPosts__more div {
    display: block;
  }
}
@media only screen and (min-width: 768px) {
  .top-productPosts article {
    width: calc((100% - 60px) / 3);
    margin-bottom: 30px;
  }
  .top-productPosts article:not(:nth-of-type(3n + 1)) {
    margin-left: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .top-productPosts article {
    width: 100%;
    margin-bottom: 10px;
  }
}
.top-productPosts article a {
  width: 100%;
  height: 100%;
  display: flex;
  border: 1px #cccccc solid;
  box-sizing: border-box;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .top-productPosts article a {
    padding: 15px;
    flex-direction: column;
  }
}
@media only screen and (max-width: 767px) {
  .top-productPosts article a {
    padding: 10px;
    flex-direction: row;
    flex-wrap: wrap;
  }
}
.top-productPosts article figure {
  width: auto;
  max-width: 100%;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  .top-productPosts article figure {
    height: 150px;
  }
}
@media only screen and (max-width: 767px) {
  .top-productPosts article figure {
    max-width: 100px;
    height: 100px;
  }
}
.top-productPosts article figure img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media only screen and (min-width: 768px) {
  .top-productPosts article div {
    margin: 15px auto 10px 0;
  }
}
@media only screen and (max-width: 767px) {
  .top-productPosts article div {
    width: calc(100% - 100px - 15px);
  }
}
.top-productPosts article div .new {
  color: #ffffff;
  background-color: #fd8224;
  width: 75px;
  font-size: 13px;
  line-height: 23px;
  text-align: center;
  display: inline-block;
}
@media only screen and (min-width: 768px) {
  .top-productPosts article div .new {
    position: absolute;
    top: 0;
    left: 0;
  }
}
@media only screen and (max-width: 767px) {
  .top-productPosts article div .new {
    margin-bottom: 10px;
  }
}
.top-productPosts article div h3 {
  width: 100%;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
}
.top-productPosts article div p {
  width: 100%;
  line-height: 1.4;
  margin-top: 10px;
}

.top-btn {
  color: #0f62b6;
  background-color: #ffffff;
  font-weight: 700;
  text-align: center;
  margin: 0 auto;
  display: block;
  border: 1px #0f62b6 solid;
  box-sizing: border-box;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .top-btn {
    width: 200px;
    font-size: 15px;
    line-height: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .top-btn {
    width: 150px;
    font-size: 12px;
    line-height: 30px;
  }
}
.top-btn:after {
  content: "";
  border-top: 1px #0f62b6 solid;
  border-right: 1px #0f62b6 solid;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  transform: rotate(45deg);
}
@media only screen and (min-width: 768px) {
  .top-btn:after {
    width: 10px;
    height: 10px;
    right: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .top-btn:after {
    width: 7px;
    height: 7px;
    right: 15px;
  }
}
.top-btn:hover {
  opacity: 0.6;
}
.top-btn--rev {
  color: #ffffff;
  background-color: transparent;
  border-color: #ffffff;
}
.top-btn--rev:after {
  border-top-color: #ffffff;
  border-right-color: #ffffff;
}

.main-img {
  position: relative;
}
.main-img__slide,
.main-img .slick-slide {
  width: 100%;
}
.main-img__slide a,
.main-img .slick-slide a {
  width: 100%;
  height: 100%;
  display: block;
}
.main-img__slide a:hover,
.main-img .slick-slide a:hover {
  opacity: 1 !important;
}
.main-img__slide img,
.main-img .slick-slide img {
  width: 100%;
  height: auto;
}
.main-img__slide {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.main-img__slide.slide-event, .main-img__slide.slide-newProduct, .main-img__slide.slide-recruit, .main-img__slide.slide-news {
  width: 100%;
  max-height: 100%;
  height: 0;
  overflow: hidden;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-event, .main-img__slide.slide-newProduct, .main-img__slide.slide-recruit, .main-img__slide.slide-news {
    padding-top: 33.333333%;
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-event, .main-img__slide.slide-newProduct, .main-img__slide.slide-recruit, .main-img__slide.slide-news {
    padding-top: 53.333333%;
  }
}
.main-img__slide.slide-event a, .main-img__slide.slide-newProduct a, .main-img__slide.slide-recruit a, .main-img__slide.slide-news a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
}
.main-img__slide.slide-event a .slide-contentWrapper, .main-img__slide.slide-newProduct a .slide-contentWrapper, .main-img__slide.slide-recruit a .slide-contentWrapper, .main-img__slide.slide-news a .slide-contentWrapper {
  width: 100%;
  max-width: 1090px;
  height: auto;
  max-height: 100%;
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-event a .slide-contentWrapper, .main-img__slide.slide-newProduct a .slide-contentWrapper, .main-img__slide.slide-recruit a .slide-contentWrapper, .main-img__slide.slide-news a .slide-contentWrapper {
    padding: 0 min(1.333333vw, 20px);
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-event a .slide-contentWrapper, .main-img__slide.slide-newProduct a .slide-contentWrapper, .main-img__slide.slide-recruit a .slide-contentWrapper, .main-img__slide.slide-news a .slide-contentWrapper {
    padding: 0 4vw;
  }
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-event {
    background-image: url(../img/top/slide_event_pc.jpg);
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-event {
    background-image: url(../img/top/slide_event_sp.jpg);
  }
}
.main-img__slide.slide-event a {
  align-items: flex-start;
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-event a {
    padding-top: min(6vw, 90px);
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-event a {
    padding: 5.333333vw 4vw 0 4vw;
  }
}
.main-img__slide.slide-event .slide-contentWrapper {
  color: #fff;
  text-shadow: 0 0 min(0.666666vw, 10px) #1080a4, 0 0 min(0.666666vw, 10px) #1080a4, 0 0 min(0.666666vw, 10px) #1080a4, 0 0 min(0.666666vw, 10px) #1080a4, 0 0 min(0.666666vw, 10px) #1080a4;
}
.main-img__slide.slide-event .slide-contentWrapper p {
  font-weight: 700;
  line-height: 1.2;
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-event .slide-contentWrapper p {
    font-size: min(3.333333vw, 50px);
    margin-bottom: min(3.333333vw, 50px);
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-event .slide-contentWrapper p {
    font-size: 5.333333vw;
    margin-bottom: 4vw;
  }
}
.main-img__slide.slide-event .slide-contentWrapper dl {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-event .slide-contentWrapper dl {
    font-size: min(2vw, 30px);
    margin-top: min(1.333333vw, 20px);
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-event .slide-contentWrapper dl {
    font-size: 3.2vw;
    margin-top: 2vw;
  }
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-event .slide-contentWrapper dl dt {
    width: 6.666666vw;
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-event .slide-contentWrapper dl dt {
    width: 10.666666vw;
  }
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-event .slide-contentWrapper dl dd span {
    font-size: min(2.666666vw, 40px);
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-event .slide-contentWrapper dl dd span {
    font-size: 4.266666vw;
  }
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-newProduct {
    background-image: url(../img/top/slide_newProduct_pc.jpg);
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-newProduct {
    background-image: url(../img/top/slide_newProduct_sp.jpg);
  }
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper {
    min-height: 61.904762%;
    position: relative;
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper div {
    padding-right: 38.095238%;
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper div {
    width: 100%;
    margin-bottom: 4vw;
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper div:nth-of-type(1) {
    display: flex;
    align-items: center;
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper div:nth-of-type(2) {
    width: 60vw;
  }
}
.main-img__slide.slide-newProduct .slide-contentWrapper .new {
  color: #ffffff;
  background-color: #fd8224;
  text-align: center;
  display: inline-block;
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper .new {
    width: 6vw;
    max-width: 90px;
    font-size: min(1.066666vw, 16px);
    line-height: min(2vw, 30px);
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper .new {
    width: 12vw;
    font-size: 2.133333vw;
    line-height: 4vw;
    margin-right: 2vw;
  }
}
.main-img__slide.slide-newProduct .slide-contentWrapper .title {
  font-weight: 700;
  line-height: 1.2;
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper .title {
    font-size: min(2.333333vw, 35px);
    margin-top: min(1.333333vw, 20px);
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper .title {
    font-size: 3.466666vw;
  }
}
.main-img__slide.slide-newProduct .slide-contentWrapper .text {
  line-height: 1.4;
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper .text {
    font-size: min(1.2vw, 18px);
    margin-top: min(1.333333vw, 20px);
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper .text {
    font-size: 2.4vw;
  }
}
.main-img__slide.slide-newProduct .slide-contentWrapper ul {
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper ul {
    margin-top: min(0.666666vw, 10px);
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper ul {
    margin-top: 0.266666vw;
  }
}
.main-img__slide.slide-newProduct .slide-contentWrapper ul li {
  color: #ffffff;
  background-color: #0f62b6;
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper ul li {
    font-size: min(0.866666vw, 13px);
    margin: min(0.666666vw, 10px) min(0.333333vw, 5px) 0 0;
    padding: min(0.333333vw, 5px) min(0.666666vw, 10px);
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper ul li {
    font-size: 1.733333vw;
    margin: 0.666666vw 0.666666vw 0 0;
    padding: 0.666666vw 1.333333vw;
  }
}
.main-img__slide.slide-newProduct .slide-contentWrapper ul li.business {
  background-color: #0e7b00;
}
.main-img__slide.slide-newProduct .slide-contentWrapper figure {
  background-color: #fff;
  text-align: center;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper figure {
    width: min(33.333333%, 350px);
    height: 100%;
    max-height: 350px;
    border-radius: min(0.333333vw, 5px);
    position: absolute;
    top: 0;
    right: min(1.333333vw, 20px);
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper figure {
    width: 28vw;
    height: 0;
    padding-top: 28vw;
    border-radius: 1.333333vw;
    position: relative;
  }
}
.main-img__slide.slide-newProduct .slide-contentWrapper figure img {
  width: auto;
  max-width: 100%;
  height: 100%;
  display: block;
  margin: 0 auto;
  object-fit: contain;
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-newProduct .slide-contentWrapper figure img {
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-recruit {
    background-image: url(../img/top/slide_recruit_pc.jpg);
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-recruit {
    background-image: url(../img/top/slide_recruit_sp.jpg);
  }
}
.main-img__slide.slide-recruit a {
  flex-direction: column;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-recruit a {
    font-size: 3.125vw;
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-recruit a {
    font-size: 5.3333333333vw;
  }
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-news {
    background-image: url(../img/top/slide_news_pc.jpg);
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-news {
    background-image: url(../img/top/slide_news_sp.jpg);
  }
}
.main-img__slide.slide-news a {
  flex-direction: column;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  color: #fff;
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-news a {
    font-size: 2.25vw;
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-news a {
    font-size: 3.7333333333vw;
  }
}
.main-img__slide.slide-news a span {
  font-weight: bold;
  margin-bottom: 0.25em;
}
@media only screen and (min-width: 768px) {
  .main-img__slide.slide-news a span {
    font-size: 3.125vw;
  }
}
@media only screen and (max-width: 767px) {
  .main-img__slide.slide-news a span {
    font-size: 4.8vw;
  }
}
.main-img .slick-dots {
  position: absolute;
  left: 50%;
  display: flex;
  transform: translate(-50%, 0);
}
@media only screen and (min-width: 768px) {
  .main-img .slick-dots {
    bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .main-img .slick-dots {
    bottom: 5px;
  }
}
.main-img .slick-dots li {
  margin: 0 6px;
}
.main-img .slick-dots li button {
  border: 0;
  padding: 0;
  margin: 0;
  background-color: rgba(255, 255, 255, 0.7);
  text-indent: -9999px;
}
@media only screen and (min-width: 768px) {
  .main-img .slick-dots li button {
    width: 75px;
    height: 10px;
    border-radius: 5px;
  }
}
@media only screen and (max-width: 767px) {
  .main-img .slick-dots li button {
    width: 38px;
    height: 5px;
    border-radius: 2.5px;
  }
}
.main-img .slick-dots li.slick-active button {
  background-color: rgb(255, 255, 255);
}

@media only screen and (min-width: 768px) {
  .top-event {
    padding-top: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .top-event {
    padding-top: 20px;
  }
}
.top-event > div {
  background-color: #cccccc;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  max-width: 1024px;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  .top-event > div {
    background-image: url(../img/top/event_pc.jpg);
    padding: 40px 10px 30px 10px;
  }
}
@media only screen and (max-width: 767px) {
  .top-event > div {
    background-image: url(../img/top/event_sp.jpg);
    padding: 15px 0 20px 0;
  }
}
.top-event .top-sec-header {
  color: #ffffff;
}
@media only screen and (min-width: 768px) {
  .top-event__posts {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
}
.top-event__posts article {
  background-color: rgba(255, 255, 255, 0.9);
}
@media only screen and (min-width: 768px) {
  .top-event__posts article {
    width: calc(50% - 20px);
    margin: 0 10px 20px 10px;
  }
}
@media only screen and (max-width: 767px) {
  .top-event__posts article {
    width: calc(100% - 20px);
    margin: 0 10px 10px 10px;
  }
}
.top-event__posts article a {
  width: 100%;
  height: 100%;
  display: block;
  box-sizing: border-box;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .top-event__posts article a {
    padding: 25px 40px 25px 20px;
  }
}
@media only screen and (max-width: 767px) {
  .top-event__posts article a {
    padding: 20px 30px 20px 15px;
  }
}
.top-event__posts article a:after {
  content: "";
  border-top: 1px #0f62b6 solid;
  border-right: 1px #0f62b6 solid;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  transform: rotate(45deg);
}
@media only screen and (min-width: 768px) {
  .top-event__posts article a:after {
    width: 14px;
    height: 14px;
    right: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .top-event__posts article a:after {
    width: 7px;
    height: 7px;
    right: 15px;
  }
}
.top-event__posts article h3 {
  font-weight: 700;
  line-height: 1.2;
}
@media only screen and (min-width: 768px) {
  .top-event__posts article h3 {
    font-size: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .top-event__posts article h3 {
    font-size: 15px;
  }
}
.top-event__posts article dl {
  font-size: 12px;
  display: flex;
  align-items: center;
}
@media only screen and (min-width: 768px) {
  .top-event__posts article dl {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .top-event__posts article dl {
    margin-top: 10px;
  }
}
.top-event__posts article dl dt {
  margin-right: 1em;
}
.top-event__posts article dl dd span {
  font-size: 15px;
  padding-right: 0.25em;
}
@media only screen and (min-width: 768px) {
  .top-event .top-btn {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .top-event .top-btn {
    margin-top: 15px;
  }
}

@media only screen and (min-width: 768px) {
  .top-newProducts {
    padding: 60px 0;
  }
}
@media only screen and (max-width: 767px) {
  .top-newProducts {
    padding: 20px 0 25px 0;
  }
}
@media only screen and (max-width: 767px) {
  .top-newProducts .top-btn {
    margin-top: 15px;
  }
}

.top-search {
  background-color: #eff3fb;
}
@media only screen and (min-width: 768px) {
  .top-search {
    padding: 50px 0 40px 0;
  }
}
@media only screen and (max-width: 767px) {
  .top-search {
    padding: 20px 0 25px 0;
  }
}

.top-pickup .cnt {
  border-top: 1px solid #ccc;
}
@media only screen and (min-width: 768px) {
  .top-pickup .cnt {
    padding: 60px 0;
  }
}
@media only screen and (max-width: 767px) {
  .top-pickup .cnt {
    padding: 20px 0 25px 0;
  }
}
@media only screen and (max-width: 767px) {
  .top-pickup .top-btn {
    margin-top: 15px;
  }
}
.top-pickup .top-btn:after {
  transform: translateY(-25%) rotate(135deg);
}
.top-pickup .top-btn.is-open:after {
  transform: translateY(25%) rotate(-45deg);
}

.top-links {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .top-links {
    padding: 80px 0;
  }
}
@media only screen and (max-width: 767px) {
  .top-links {
    padding: 40px 0 0 0;
  }
}
.top-links > div {
  max-width: 1024px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.top-links .top-sec-header {
  color: #ffffff;
}
.top-links section {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .top-links section {
    padding: 40px 45px;
  }
}
@media screen and (max-width: 1000px) {
  .top-links section {
    padding: 40px 20px;
  }
}
@media only screen and (max-width: 767px) {
  .top-links section {
    padding: 25px 10px;
  }
}
.top-links section ul {
  font-size: 18px;
  line-height: 1.2;
}
.top-links section ul li {
  background-color: rgba(255, 255, 255, 0.9);
}
.top-links section ul li a {
  font-weight: 700;
  display: block;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .top-links section ul li a {
    padding: 20px 0;
  }
}
@media only screen and (max-width: 767px) {
  .top-links section ul li a {
    padding: 15px 0;
  }
}
@media only screen and (min-width: 768px) {
  .top-links section:nth-of-type(1), .top-links section:nth-of-type(2) {
    width: calc((100% - 45px) / 2);
  }
}
@media only screen and (max-width: 767px) {
  .top-links section:nth-of-type(1), .top-links section:nth-of-type(2) {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  .top-links section:nth-of-type(1) li:nth-of-type(n + 2), .top-links section:nth-of-type(2) li:nth-of-type(n + 2) {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .top-links section:nth-of-type(1) li:nth-of-type(n + 2), .top-links section:nth-of-type(2) li:nth-of-type(n + 2) {
    margin-top: 15px;
  }
}
.top-links section:nth-of-type(1) {
  background-color: #004e9c;
}
@media only screen and (min-width: 768px) {
  .top-links section:nth-of-type(1) {
    background-image: url(../img/top/business_pc.jpg);
  }
}
@media only screen and (max-width: 767px) {
  .top-links section:nth-of-type(1) {
    background-image: url(../img/top/business_sp.jpg);
  }
}
.top-links section:nth-of-type(1) ul li a {
  color: #004e9c;
  border: 2px #004e9c solid;
}
.top-links section:nth-of-type(2) {
  background-color: #0e7b00;
}
@media only screen and (min-width: 768px) {
  .top-links section:nth-of-type(2) {
    background-image: url(../img/top/company_pc.jpg);
  }
}
@media only screen and (max-width: 767px) {
  .top-links section:nth-of-type(2) {
    background-image: url(../img/top/company_sp.jpg);
  }
}
.top-links section:nth-of-type(2) ul li a {
  color: #0e7b00;
  border: 2px #0e7b00 solid;
}
.top-links section:nth-of-type(3) {
  background-color: #5e1f00;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .top-links section:nth-of-type(3) {
    background-image: url(../img/top/recruit_pc.jpg);
    margin-top: 45px;
  }
}
@media only screen and (max-width: 767px) {
  .top-links section:nth-of-type(3) {
    background-image: url(../img/top/recruit_sp.jpg);
  }
}
.top-links section:nth-of-type(3) ul {
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (min-width: 768px) {
  .top-links section:nth-of-type(3) ul {
    gap: 15px 30px;
  }
}
@media only screen and (max-width: 767px) {
  .top-links section:nth-of-type(3) ul {
    gap: 15px;
  }
}
.top-links section:nth-of-type(3) ul:first-of-type {
  font-size: 25px;
}
@media only screen and (min-width: 768px) {
  .top-links section:nth-of-type(3) ul:first-of-type li {
    width: calc((100% - 30px) / 2);
  }
}
@media only screen and (max-width: 767px) {
  .top-links section:nth-of-type(3) ul:first-of-type li {
    width: 100%;
  }
}
.top-links section:nth-of-type(3) ul:first-of-type li a {
  color: #5e1f00;
}
@media only screen and (min-width: 768px) {
  .top-links section:nth-of-type(3) ul:first-of-type li a {
    padding: 25px 20px;
  }
}
@media only screen and (max-width: 767px) {
  .top-links section:nth-of-type(3) ul:first-of-type li a {
    padding: 30px 15px;
  }
}
@media only screen and (min-width: 768px) {
  .top-links section:nth-of-type(3) ul:last-of-type {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .top-links section:nth-of-type(3) ul:last-of-type {
    margin-top: 15px;
  }
}
@media only screen and (min-width: 768px) {
  .top-links section:nth-of-type(3) ul:last-of-type li {
    width: calc((100% - 90px) / 4);
  }
}
@media only screen and (max-width: 767px) {
  .top-links section:nth-of-type(3) ul:last-of-type li {
    width: calc((100% - 15px) / 2);
  }
}
.top-links section:nth-of-type(3) ul li a {
  border: 2px #5e1f00 solid;
}

.top-news {
  background-color: #eef4f8;
}
@media only screen and (min-width: 768px) {
  .top-news {
    padding: 60px 0;
  }
}
@media only screen and (max-width: 767px) {
  .top-news {
    padding: 30px 0;
  }
}
.top-news .cnt {
  max-width: 900px !important;
}
.top-news__posts article {
  font-size: 15px;
}
@media only screen and (min-width: 768px) {
  .top-news__posts article:nth-of-type(n + 2) {
    margin-top: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .top-news__posts article:nth-of-type(n + 2) {
    margin-top: 20px;
  }
}
@media only screen and (min-width: 768px) {
  .top-news__posts article > a,
  .top-news__posts article div {
    display: flex;
    justify-content: space-between;
  }
}
@media only screen and (max-width: 767px) {
  .top-news__posts article > a,
  .top-news__posts article div {
    display: block;
  }
}
.top-news__posts article dl {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media only screen and (min-width: 768px) {
  .top-news__posts article dl {
    width: 170px;
  }
}
@media only screen and (max-width: 767px) {
  .top-news__posts article dl {
    width: 100%;
  }
}
.top-news__posts article dl dt {
  width: auto;
}
.top-news__posts article dl dd {
  color: #ffffff;
  width: 80px;
  font-size: 13px;
  line-height: 23px;
  text-align: center;
}
.top-news__posts article h3 {
  font-weight: 700;
  line-height: 1.5;
}
@media only screen and (min-width: 768px) {
  .top-news__posts article h3 {
    width: calc(100% - 170px - 25px);
  }
}
@media only screen and (max-width: 767px) {
  .top-news__posts article h3 {
    width: 100%;
    margin-top: 10px;
  }
}
@media only screen and (min-width: 768px) {
  .top-news .top-btn {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .top-news .top-btn {
    margin-top: 20px;
  }
}

.top-contact {
  color: #ffffff;
  background-color: #0f62b6;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media only screen and (min-width: 768px) {
  .top-contact {
    background-image: url(../img/top/contact_pc.jpg);
    text-align: center;
    padding: 60px 0;
  }
}
@media only screen and (max-width: 767px) {
  .top-contact {
    background-image: url(../img/top/contact_sp.jpg);
    padding: 25px 0 40px 0;
  }
}
.top-contact p {
  font-size: 15px;
  line-height: 1.2;
}
.top-contact p + p {
  margin-top: 1.5em;
}
@media only screen and (max-width: 767px) {
  .top-contact p br {
    display: none;
  }
}
.top-contact .top-btn {
  width: 250px;
  line-height: 50px;
}
@media only screen and (min-width: 768px) {
  .top-contact .top-btn {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .top-contact .top-btn {
    font-size: 19px;
    margin-top: 30px;
  }
}

.page-contact .contact-desc {
  line-height: 1.5;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .page-contact .contact-desc {
    margin-top: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .page-contact .contact-desc {
    margin-top: 25px;
  }
}
.page-contact .contact-desc:before {
  content: "●";
  color: #fd8124;
}
.page-contact .contact-link {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
@media only screen and (min-width: 768px) {
  .page-contact .contact-link {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .page-contact .contact-link {
    margin-top: 20px;
  }
}
.page-contact .contact-link .selected {
  color: #fff;
  background-color: #0f63b6;
}
.page-contact .contact-link__item {
  margin: 0 10px 10px;
  min-width: 340px;
  display: flex;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  color: #0f63b6;
  border: 1px solid #0f63b6;
  padding: 0 40px;
}
@media only screen and (min-width: 768px) {
  .page-contact .contact-link__item {
    width: calc(20% - 10px);
    height: 65px;
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .page-contact .contact-link__item {
    width: 45%;
    height: 35px;
    font-size: 0.9rem;
  }
}
.page-contact .contact-link__item:hover {
  text-decoration: none;
  opacity: 0.6;
}
.page-contact .contact-flow {
  width: 100%;
  max-width: 800px;
  font-size: 14px;
  text-align: center;
  list-style-type: none;
  margin: 20px auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .page-contact .contact-flow {
    font-size: 18px;
    margin: 60px auto;
  }
}
.page-contact .contact-flow:before {
  content: "";
  background: #aaa;
  width: calc(100% - 8px);
  height: 4px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.page-contact .contact-flow li {
  background-color: #fff;
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
  border: 4px #aaa solid;
  border-radius: 50%;
}
@media only screen and (min-width: 768px) {
  .page-contact .contact-flow li {
    width: 80px;
    height: 80px;
  }
}
.page-contact .contact-flow.flow1:before {
  background: linear-gradient(90deg, #0f63b6 28%, #aaa 28%);
}
.page-contact .contact-flow.flow1 li:nth-of-type(1) {
  color: #0f63b6;
  border-color: #0f63b6;
}
.page-contact .contact-flow.flow2:before {
  background: linear-gradient(90deg, #0f63b6 50%, #aaa 50%);
}
.page-contact .contact-flow.flow2 li:nth-of-type(1),
.page-contact .contact-flow.flow2 li:nth-of-type(2) {
  color: #0f63b6;
  border-color: #0f63b6;
}
.page-contact .contact-flow.flow3:before {
  background: #0f63b6;
}
.page-contact .contact-flow.flow3 li {
  color: #0f63b6;
  border-color: #0f63b6;
}
@media only screen and (min-width: 768px) {
  .page-contact .contact-sec {
    margin-top: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .page-contact .contact-sec {
    margin-top: 25px;
  }
}
.page-contact .contact-sec .contact-sec__header {
  position: relative;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .page-contact .contact-sec .contact-sec__header {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .page-contact .contact-sec .contact-sec__header {
    margin-bottom: 20px;
  }
}
.page-contact .contact-sec .contact-sec__header:before {
  width: 100%;
  height: 2px;
  content: "";
  display: block;
  position: absolute;
  z-index: 5;
  top: 50%;
  background: #aaa;
}
.page-contact .contact-sec .contact-sec__title {
  display: inline-block;
  background: #fff;
  padding: 0 10px;
  color: #0f63b6;
  position: relative;
  z-index: 10;
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .page-contact .contact-sec .contact-sec__title {
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .page-contact .contact-sec .contact-sec__title {
    font-size: 1.375rem;
  }
}
@media only screen and (min-width: 768px) {
  .page-contact .action__btn {
    width: 480px;
  }
}
@media only screen and (max-width: 767px) {
  .page-contact .action__btn {
    width: 100%;
  }
}

.contact-form-desc {
  text-align: center;
  color: #0f62b8;
  line-height: 1.35;
}
@media only screen and (min-width: 768px) {
  .contact-form-desc {
    margin-top: 60px;
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .contact-form-desc {
    margin-top: 30px;
    margin-bottom: 15px;
  }
}

@media only screen and (min-width: 768px) {
  .page-news .news-row {
    display: flex;
    flex-wrap: wrap;
  }
}
@media only screen and (min-width: 768px) {
  .page-news .news-row.-single {
    display: block;
  }
}
@media only screen and (min-width: 768px) {
  .page-news .news-row.-single .news-content {
    width: auto;
  }
}
@media only screen and (min-width: 768px) {
  .page-news .news-content {
    width: 800px;
    margin-right: auto;
  }
}
@media only screen and (min-width: 768px) {
  .page-news .news-side {
    width: 220px;
  }
}

.news-detail {
  line-height: 1.8;
}
@media only screen and (min-width: 768px) {
  .news-detail {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .news-detail {
    font-size: 1rem;
  }
}
.news-detail p {
  margin-top: 1.5em;
}
.news-detail p:first-child {
  margin-top: 0;
}
.news-detail .alignnone {
  margin: 0 20px 20px 0;
}
.news-detail .aligncenter {
  display: block;
  margin: 0 auto;
}
.news-detail div.aligncenter {
  display: block;
  margin: 0 auto 0 auto;
}
.news-detail .alignright {
  float: right;
  margin: 0 0 20px 20px;
}
.news-detail .alignleft {
  float: left;
  margin: 0 20px 20px 0;
}
.news-detail a img.alignright {
  float: right;
  margin: 0 0 20px 20px;
}
.news-detail a img.alignnone {
  margin: 0 20px 20px 0;
}
.news-detail a img.alignleft {
  float: left;
  margin: 0 20px 20px 0;
}
.news-detail a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.news-detail .wp-caption {
  background: #fff;
  border: 1px solid #f0f0f0;
  max-width: 96%;
  padding: 0 3px 10px;
  text-align: center;
}
.news-detail .wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 98.5%;
  padding: 0;
  width: auto;
}
.news-detail .wp-caption p.wp-caption-text {
  font-size: 11px;
  line-height: 17px;
  margin: 0;
  padding: 0 4px 5px;
}
.news-detail .wp-caption.alignnone {
  margin: 0 20px 20px 0;
}
.news-detail .wp-caption.alignleft {
  margin: 0 20px 20px 0;
}
.news-detail .wp-caption.alignright {
  margin: 0 0 20px 20px;
}
.news-detail .event-archive {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #cbcbcb;
}
@media only screen and (max-width: 767px) {
  .news-detail .event-archive {
    display: block;
    border: none;
  }
}
@media only screen and (max-width: 767px) {
  .news-detail .event-archive tbody {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .news-detail .event-archive tr {
    display: block;
  }
}
.news-detail .event-archive th,
.news-detail .event-archive td {
  padding: 10px 15px;
  border: 1px solid #cbcbcb;
}
@media only screen and (max-width: 767px) {
  .news-detail .event-archive th,
  .news-detail .event-archive td {
    display: block;
    border: none;
    padding: 0;
  }
}
.news-detail .event-archive th {
  text-align: left;
  background: #d6edce;
  width: 150px;
}
@media only screen and (max-width: 767px) {
  .news-detail .event-archive th {
    width: auto;
    background: none;
    font-weight: bold;
    color: #39733f;
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .news-detail .event-archive td {
    margin-bottom: 1em;
  }
}

.news-list .news-list__item {
  border-bottom: 1px dotted #154083;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .news-list .news-list__item {
    padding: 15px 40px 15px 0;
  }
}
@media only screen and (max-width: 767px) {
  .news-list .news-list__item {
    padding: 8px 20px 8px 0;
  }
}
.news-list .news-list__item.-link:after {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  background: url("../img/news/icn_arrow_right_01.png") no-repeat;
  content: "";
}
@media only screen and (min-width: 768px) {
  .news-list .news-list__item.-link:after {
    right: 15px;
    width: 10px;
    height: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .news-list .news-list__item.-link:after {
    right: 8px;
    width: 5px;
    height: 8px;
    background-size: 5px auto;
  }
}
.news-list .news-list__meta {
  display: flex;
  align-items: center;
}
@media only screen and (min-width: 768px) {
  .news-list .news-list__meta {
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .news-list .news-list__meta {
    margin-bottom: 5px;
  }
}
.news-list .news-list__cat {
  color: #fff;
  background: #333;
  display: inline-block;
}
.news-list .news-list__cat:hover {
  text-decoration: none;
  opacity: 0.6;
}
@media only screen and (min-width: 768px) {
  .news-list .news-list__cat {
    font-size: 0.875rem;
    padding: 4px 20px;
    margin-right: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .news-list .news-list__cat {
    font-size: 0.875rem;
    padding: 3px 10px;
    margin-right: 5px;
  }
}
.news-list .news-list__time {
  display: inline-block;
  color: #0f63b8;
}
.news-list .news-list__title {
  line-height: 1.5;
}
.news-list .news-list__title a:hover {
  text-decoration: none;
  opacity: 0.6;
}

.event-term {
  color: #0f63b8;
}
.event-term span {
  color: #333;
  margin-right: 1em;
  display: inline-block;
}
.event-term time {
  display: inline-block;
}

@media only screen and (max-width: 767px) {
  .news-side {
    display: flex;
    flex-wrap: wrap;
    margin-top: 30px;
  }
}
@media only screen and (min-width: 768px) {
  .news-side .news-side-sec {
    margin-top: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .news-side .news-side-sec {
    margin-top: 0;
    width: 50%;
  }
}
.news-side .news-side-sec:first-child {
  margin-top: 0;
}
.news-side .news-side-sec .news-side-sec__title {
  font-weight: bold;
  color: #0f63b8;
}
@media only screen and (min-width: 768px) {
  .news-side .news-side-sec .news-side-sec__title {
    font-size: 1.125rem;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .news-side .news-side-sec .news-side-sec__title {
    font-size: 1.125rem;
    margin-bottom: 10px;
  }
}
.news-side .news-side-list li {
  line-height: 1.5;
}
@media only screen and (min-width: 768px) {
  .news-side .news-side-list li {
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .news-side .news-side-list li {
    margin-bottom: 5px;
  }
}
.news-side .news-side-list li a {
  display: block;
  background: url("../img/news/icn_arrow_right_02.png") no-repeat left center;
}
@media only screen and (min-width: 768px) {
  .news-side .news-side-list li a {
    padding-left: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .news-side .news-side-list li a {
    padding-left: 10px;
  }
}
.news-side .news-side-list li a:hover {
  text-decoration: none;
  opacity: 0.6;
}

@media only screen and (min-width: 768px) {
  .product-search {
    margin-top: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .product-search {
    margin-top: 25px;
  }
}
.product-search .product-search__tab {
  display: flex;
  justify-content: center;
  border-bottom: 1px solid #0f62b8;
}
.product-search .product-search__tab a {
  display: block;
  outline: 0;
}
@media only screen and (max-width: 767px) {
  .product-search .product-search__tab {
    padding: 0 10px;
  }
}
.product-search .product-search__tab li {
  margin-left: -1px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .product-search .product-search__tab li {
    width: 50%;
  }
}
.product-search .product-search__tab li.ui-state-active a {
  color: #fff;
  background: #0f62b6;
}
.product-search .product-search__tab li.ui-state-active:after {
  display: inline-block;
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  left: 50%;
  transform: translate(-50%, 0);
  border-style: solid;
  border-width: 12px 13px 0 13px;
  border-color: #0f62b6 transparent transparent transparent;
}
.product-search .product-search__tab li:first-child {
  margin-left: 0;
}
.product-search .product-search__tab li a {
  display: block;
  color: #0f62b6;
  background: #fff;
  border: 1px solid #0f62b6;
  border-bottom: none;
  text-align: center;
}
.product-search .product-search__tab li a:hover {
  text-decoration: none;
  opacity: 0.6;
}
@media only screen and (min-width: 768px) {
  .product-search .product-search__tab li a {
    font-size: 1.375rem;
    padding: 30px 0;
    width: 355px;
  }
}
@media only screen and (max-width: 767px) {
  .product-search .product-search__tab li a {
    font-size: 1.1rem;
    padding: 15px 0;
    width: 100%;
  }
}
.product-search .product-search__desc {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .product-search .product-search__desc {
    font-size: 1rem;
    margin: 40px 0;
  }
}
@media only screen and (max-width: 767px) {
  .product-search .product-search__desc {
    font-size: 0.8rem;
    margin: 20px 0;
  }
}
.product-search .product-search__result {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .product-search .product-search__result {
    font-size: 1.625rem;
    margin: 70px 0 60px;
  }
}
@media only screen and (max-width: 767px) {
  .product-search .product-search__result {
    font-size: 1.3rem;
    margin: 35px 0 30px;
  }
}

@media only screen and (min-width: 768px) {
  .product-list {
    width: 91%;
    margin: 60px auto;
  }
}
@media only screen and (max-width: 767px) {
  .product-list {
    width: 100%;
    margin: 30px auto;
  }
}
.product-list .product-list__item {
  border-bottom: 1px solid #ddd;
}
@media only screen and (min-width: 768px) {
  .product-list .product-list__item {
    padding: 40px 0;
  }
}
@media only screen and (max-width: 767px) {
  .product-list .product-list__item {
    padding: 20px 0;
  }
}
.product-list .product-list__item a {
  display: block;
  position: relative;
}
.product-list .product-list__item a:after {
  content: "";
  background: url("../img/product/icn_arrow_right.png") no-repeat;
  width: 16px;
  height: 26px;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translate(0, -50%);
}
@media only screen and (max-width: 767px) {
  .product-list .product-list__item a:after {
    display: none;
  }
}
.product-list .product-list__item a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.product-list .product-list__item:first-child {
  padding-top: 0;
}
.product-list .product-list__item:after {
  width: 16px;
  height: 26px;
  content: "";
  right: 15px;
  top: 50%;
  transform: translate(0, -50%);
  background: url("../img/product/icn_arrow_right.png") no-repeat;
}
.product-list .product-list__item .product-list__title {
  color: #0f63b8;
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .product-list .product-list__item .product-list__title {
    font-size: 1.625rem;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-list .product-list__item .product-list__title {
    font-size: 1.3rem;
    margin-bottom: 10px;
  }
}
@media only screen and (min-width: 768px) {
  .product-list .product-list__item .product-list__data {
    display: flex;
  }
}
@media only screen and (min-width: 768px) {
  .product-list .product-list__item .product-list__img {
    width: 36%;
    margin-right: auto;
  }
}
@media only screen and (max-width: 767px) {
  .product-list .product-list__item .product-list__img {
    margin-bottom: 15px;
  }
}
.product-list .product-list__item .product-list__img img {
  border: 1px solid #ccc;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  aspect-ratio: 3/2;
  object-fit: contain;
}
.product-list .product-list__item .product-list__text {
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .product-list .product-list__item .product-list__text {
    width: 61%;
    padding-right: 60px;
    line-height: 1.75;
  }
}
@media only screen and (max-width: 767px) {
  .product-list .product-list__item .product-list__text {
    line-height: 1.5;
  }
}
@media only screen and (min-width: 768px) {
  .product-list .product-list__item .product-list__text p {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-list .product-list__item .product-list__text p {
    margin-bottom: 10px;
  }
}
.product-list .product-list__tag {
  display: flex;
  flex-wrap: wrap;
  margin: 15px -3px 0;
}
@media only screen and (min-width: 768px) {
  .product-list .product-list__tag li {
    min-width: 180px;
    margin: 0 3px 6px;
    font-size: 0.875rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-list .product-list__tag li {
    min-width: 20px;
    margin: 0 3px 6px;
    font-size: 0.7rem;
  }
}
.product-list .product-list__tag li span {
  display: block;
  background: #1063b8;
  color: #fff;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .product-list .product-list__tag li span {
    padding: 8px 10px;
  }
}
@media only screen and (max-width: 767px) {
  .product-list .product-list__tag li span {
    padding: 4px 8px;
  }
}
.product-list .product-list__tag li.business span {
  background-color: #0e7b00;
}

.product-search-cond {
  display: flex;
  justify-content: center;
}
.product-search-cond .product-search-cond__item {
  text-align: center;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .product-search-cond .product-search-cond__item {
    width: 300px;
    margin: 0 25px;
  }
}
@media only screen and (max-width: 767px) {
  .product-search-cond .product-search-cond__item {
    width: 50%;
    margin: 0 10px;
  }
}
.product-search-cond .product-search-cond__item .form-select {
  width: 100%;
}
.product-search-cond .product-search-cond__item .form-select .customSelect {
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .product-search-cond .product-search-cond__item .form-select .customSelect {
    font-size: 1.1875rem;
    height: 45px;
    line-height: 44px;
  }
}
@media only screen and (max-width: 767px) {
  .product-search-cond .product-search-cond__item .form-select .customSelect {
    font-size: 0.95rem;
    height: 35px;
    line-height: 34px;
  }
}
.product-search-cond .product-search-cond__title {
  color: #0f63b6;
}
@media only screen and (min-width: 768px) {
  .product-search-cond .product-search-cond__title {
    font-size: 1.375rem;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .product-search-cond .product-search-cond__title {
    font-size: 1.1rem;
    margin-bottom: 8px;
  }
}

.product-search-keyword {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 768px) {
  .product-search-keyword {
    margin: 40px auto 0;
  }
}
@media only screen and (max-width: 767px) {
  .product-search-keyword {
    margin: 20px 30px 0;
  }
}
.product-search-keyword .product-search-keyword__input {
  text-align: left;
  box-sizing: border-box;
  border: 1px solid #ccc;
  outline: none;
}
@media only screen and (min-width: 768px) {
  .product-search-keyword .product-search-keyword__input {
    width: 460px;
    height: 50px;
    padding: 0 10px;
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-search-keyword .product-search-keyword__input {
    width: calc(100% - 30px);
    height: 30px;
    padding: 0 10px;
    font-size: 0.8333333333rem;
  }
}
.product-search-keyword .product-search-keyword__btn {
  background: #0f62b6;
  border: 0;
  border-radius: 0;
  text-align: center;
  box-sizing: border-box;
  outline: none;
}
@media only screen and (min-width: 768px) {
  .product-search-keyword .product-search-keyword__btn {
    width: 50px;
    height: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .product-search-keyword .product-search-keyword__btn {
    width: 30px;
    height: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .product-search-keyword .product-search-keyword__btn img {
    width: 11px;
    height: auto;
  }
}
.product-search-keyword .product-search-keyword__btn:hover {
  opacity: 0.6;
}

@media only screen and (min-width: 768px) {
  .page-product-detail .page__title {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .page-product-detail .page__title {
    margin-bottom: 10px;
  }
}

.product-cat {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .product-cat {
    font-size: 1.625rem;
    margin-top: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .product-cat {
    font-size: 1.3rem;
    margin-top: 25px;
  }
}

.product-tag {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .product-tag {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-tag {
    margin-top: 10px;
  }
}
.product-tag li {
  margin: 0 2px 4px;
  background: #ededed;
}
@media only screen and (min-width: 768px) {
  .product-tag li {
    width: 170px;
    padding: 8px 0;
    font-size: 0.875rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-tag li {
    padding: 8px 15px;
    font-size: 0.7rem;
  }
}
.product-tag li a {
  display: block;
}
.product-tag li a:hover {
  text-decoration: none;
  opacity: 0.6;
}

.product-new {
  text-align: center;
}
.product-new span {
  display: inline-block;
  background: #fd8224;
  color: #fff;
}
@media only screen and (min-width: 768px) {
  .product-new span {
    width: 170px;
    padding: 5px 10px;
  }
}
@media only screen and (max-width: 767px) {
  .product-new span {
    padding: 4px 8px;
  }
}

@media only screen and (min-width: 768px) {
  .product-data {
    margin-top: 40px;
    display: flex;
    align-items: flex-start;
  }
}
@media only screen and (max-width: 767px) {
  .product-data {
    margin-top: 20px;
  }
}
.product-data .product-img {
  margin-right: auto;
  text-align: center;
  border: 1px solid #bababa;
}
@media only screen and (min-width: 768px) {
  .product-data .product-img {
    width: 54.2%;
  }
}
.product-data .product-img img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 380px;
}
.product-data .product-text {
  line-height: 1.75;
}
@media only screen and (min-width: 768px) {
  .product-data .product-text {
    width: 42.27%;
  }
}
@media only screen and (max-width: 767px) {
  .product-data .product-text {
    margin-top: 10px;
  }
}
.product-data .product-text .product-text__top {
  font-weight: bold;
  margin-bottom: 1em;
}
@media only screen and (min-width: 768px) {
  .product-data .product-text .product-text__top {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-data .product-text .product-text__top {
    font-size: 0.9rem;
  }
}

.product-link {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
@media only screen and (min-width: 768px) {
  .product-link {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .product-link {
    margin-top: 20px;
  }
}
.product-link .produce-link__item {
  margin: 0 5px 10px;
  display: flex;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  color: #fff;
  position: relative;
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .product-link .produce-link__item {
    width: calc(20% - 10px);
    height: 65px;
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-link .produce-link__item {
    width: 45%;
    height: 35px;
    font-size: 0.9rem;
  }
}
.product-link .produce-link__item:after {
  position: absolute;
  content: "";
  background: no-repeat left top;
}
.product-link .produce-link__item:hover {
  text-decoration: none;
  opacity: 0.6;
}
.product-link .produce-link__item.-maker {
  background: #444;
}
.product-link .produce-link__item.-maker:after {
  background-image: url("../img/product/icn_maker.png");
  right: 10px;
  top: 5px;
}
@media only screen and (min-width: 768px) {
  .product-link .produce-link__item.-maker:after {
    width: 23px;
    height: 22px;
  }
}
@media only screen and (max-width: 767px) {
  .product-link .produce-link__item.-maker:after {
    width: 12px;
    height: 11px;
    background-size: 12px auto;
  }
}
.product-link .produce-link__item.-pdf {
  background: #b10e12;
}
@media only screen and (min-width: 768px) {
  .product-link .produce-link__item.-pdf {
    padding-right: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-link .produce-link__item.-pdf {
    padding-right: 10px;
  }
}
.product-link .produce-link__item.-pdf:after {
  background-image: url("../img/product/icn_pdf.png");
  right: 10px;
  top: 50%;
  transform: translate(0, -50%);
}
@media only screen and (min-width: 768px) {
  .product-link .produce-link__item.-pdf:after {
    width: 34px;
    height: 44px;
  }
}
@media only screen and (max-width: 767px) {
  .product-link .produce-link__item.-pdf:after {
    width: 17px;
    height: 22px;
    background-size: 17px auto;
  }
}

.product-slider:after {
  content: "";
  display: table;
  clear: both;
}
@media only screen and (min-width: 768px) {
  .product-slider {
    margin: 50px -5px;
  }
}
@media only screen and (max-width: 767px) {
  .product-slider {
    margin: 25px -5px;
    padding: 0 30px;
  }
}
.product-slider a {
  outline: 0;
  display: block;
}
.product-slider a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.product-slider img {
  width: 100%;
  height: auto;
}
.product-slider.-border img {
  border: 1px solid #ccc;
}
.product-slider .product-slide__desc {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .product-slider .product-slide__desc {
    margin-top: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .product-slider .product-slide__desc {
    margin-top: 8px;
  }
}
.product-slider .slick-slide {
  margin: 0 5px;
}
.product-slider .slick-arrow {
  position: absolute;
  transform: 0, -50%;
  text-indent: -9999px;
  border: 0;
}
@media only screen and (min-width: 768px) {
  .product-slider .slick-arrow {
    top: 110px;
  }
}
@media only screen and (max-width: 767px) {
  .product-slider .slick-arrow {
    top: calc(50% - 25px);
  }
}
.product-slider .slick-arrow:hover {
  opacity: 0.6;
  cursor: pointer;
}
.product-slider .slick-arrow.slick-prev {
  background: transparent url("../img/top/btn_slide_right.png") no-repeat left center;
}
@media only screen and (min-width: 768px) {
  .product-slider .slick-arrow.slick-prev {
    left: -40px;
    width: 17px;
    height: 26px;
  }
}
@media only screen and (max-width: 767px) {
  .product-slider .slick-arrow.slick-prev {
    left: 10px;
    width: 8px;
    height: 13px;
    background-size: 8px auto;
  }
}
.product-slider .slick-arrow.slick-next {
  background: transparent url("../img/top/btn_slide_left.png") no-repeat left center;
  width: 17px;
  height: 26px;
}
@media only screen and (min-width: 768px) {
  .product-slider .slick-arrow.slick-next {
    right: -40px;
    width: 17px;
    height: 26px;
  }
}
@media only screen and (max-width: 767px) {
  .product-slider .slick-arrow.slick-next {
    right: 10px;
    width: 8px;
    height: 13px;
    background-size: 8px auto;
  }
}

@media only screen and (min-width: 768px) {
  .product-main {
    margin: 0 0 50px;
  }
}
@media only screen and (max-width: 767px) {
  .product-main {
    margin: 0 0 25px;
  }
}

.product-movie {
  background: #eee;
}
@media only screen and (min-width: 768px) {
  .product-movie {
    padding: 50px 0 70px;
  }
}
@media only screen and (max-width: 767px) {
  .product-movie {
    padding: 25px 0 35px;
  }
}
@media only screen and (min-width: 768px) {
  .product-movie .product-movie__wrapper.-count-2, .product-movie .product-movie__wrapper.-count-3 {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }
  .product-movie .product-movie__wrapper.-count-2 .product-movie__cnt:nth-child(1), .product-movie .product-movie__wrapper.-count-2 .product-movie__cnt:nth-child(2), .product-movie .product-movie__wrapper.-count-3 .product-movie__cnt:nth-child(1), .product-movie .product-movie__wrapper.-count-3 .product-movie__cnt:nth-child(2) {
    width: 50%;
  }
  .product-movie .product-movie__wrapper.-count-2 .product-movie__cnt:nth-child(3), .product-movie .product-movie__wrapper.-count-3 .product-movie__cnt:nth-child(3) {
    width: 100%;
    margin-top: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-movie .product-movie__wrapper iframe {
    width: 100%;
  }
}
.product-movie .product-movie__cnt {
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .product-movie .product-movie__cnt + .product-movie__cnt {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-movie .product-movie__cnt iframe {
    width: 100%;
  }
}

@media only screen and (min-width: 768px) {
  .product-feature {
    margin: 70px 0;
  }
}
@media only screen and (max-width: 767px) {
  .product-feature {
    margin: 35px 0;
  }
}
.product-feature .product-feature-list .product-feature-list__item {
  display: flex;
}
@media only screen and (min-width: 768px) {
  .product-feature .product-feature-list .product-feature-list__item {
    margin-bottom: 45px;
  }
}
@media only screen and (max-width: 767px) {
  .product-feature .product-feature-list .product-feature-list__item {
    margin-bottom: 22px;
  }
}
.product-feature .product-feature-list .product-feature-list__title {
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .product-feature .product-feature-list .product-feature-list__img {
    margin-right: auto;
    width: 32.72%;
  }
}
@media only screen and (max-width: 767px) {
  .product-feature .product-feature-list .product-feature-list__img {
    margin-right: 10px;
    flex: 1;
  }
}
.product-feature .product-feature-list .product-feature-list__img img {
  border: 1px solid #bbb;
  width: 100%;
  height: auto;
}
.product-feature .product-feature-list .product-feature-list__img.-no-border img {
  border: 0;
}
.product-feature .product-feature-list .product-feature-list__text {
  line-height: 1.75;
}
@media only screen and (min-width: 768px) {
  .product-feature .product-feature-list .product-feature-list__text:first-child {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  .product-feature .product-feature-list .product-feature-list__text {
    width: 64.54%;
  }
}
@media only screen and (max-width: 767px) {
  .product-feature .product-feature-list .product-feature-list__text {
    flex: 2;
  }
}

.product-example {
  background: #ededed;
}
@media only screen and (min-width: 768px) {
  .product-example {
    padding: 70px 0;
  }
}
@media only screen and (max-width: 767px) {
  .product-example {
    padding: 35px 0;
  }
}
@media only screen and (min-width: 768px) {
  .product-example .cnt {
    max-width: 750px;
  }
}
.product-example .product-example-text {
  line-height: 2;
}

@media only screen and (min-width: 768px) {
  .product-spec {
    padding: 100px 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .product-spec {
    padding: 50px 0 0;
  }
}
.product-spec img {
  max-width: 100%;
  height: auto;
}
.product-spec .product-spec__title {
  text-align: center;
  line-height: 1.25;
}
@media only screen and (min-width: 768px) {
  .product-spec .product-spec__title {
    font-size: 1.625rem;
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .product-spec .product-spec__title {
    font-size: 1.3rem;
    margin-bottom: 20px;
  }
}
.product-spec .product-spec__text {
  line-height: 1.75;
}

@media only screen and (min-width: 768px) {
  .product-spec-sec {
    margin-top: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .product-spec-sec {
    margin-top: 25px;
  }
}
.product-spec-sec:first-child {
  margin-top: 0;
}
.product-spec-sec table {
  margin: 0 auto;
  border-collapse: collapse;
  border: 1px solid #333;
}
@media only screen and (max-width: 767px) {
  .product-spec-sec table {
    width: 100% !important;
  }
}
@media only screen and (min-width: 768px) {
  .product-spec-sec table.slim th,
  .product-spec-sec table.slim td {
    font-size: 0.875rem;
    padding: 5px 10px;
  }
}
@media only screen and (max-width: 767px) {
  .product-spec-sec table.slim th,
  .product-spec-sec table.slim td {
    font-size: 0.8333333333rem;
    padding: 5px;
  }
}
.product-spec-sec table th,
.product-spec-sec table td {
  line-height: 1.33;
  border: 1px solid #333;
  text-align: center;
  vertical-align: middle;
}
@media only screen and (min-width: 768px) {
  .product-spec-sec table th,
  .product-spec-sec table td {
    font-size: 1.25rem;
    padding: 5px 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-spec-sec table th,
  .product-spec-sec table td {
    font-size: 1rem;
    padding: 5px 10px;
  }
}
.product-spec-sec table th p,
.product-spec-sec table td p {
  text-align: left;
  margin: 0;
  line-height: inherit;
}
.product-spec-sec table th {
  background: #d0edf7;
}
.product-spec-sec p {
  text-align: center;
  margin-top: 1.5em;
  line-height: 1.5;
}
@media only screen and (min-width: 768px) {
  .product-spec-sec p.slim {
    font-size: 0.875rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-spec-sec p.slim {
    font-size: 0.8333333333rem;
  }
}
.product-spec-sec .product-spec-sec__title {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .product-spec-sec .product-spec-sec__title {
    font-size: 1.375rem;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .product-spec-sec .product-spec-sec__title {
    font-size: 1.1rem;
    margin-bottom: 8px;
  }
}

.product-free-layout {
  line-height: 1.8;
}
.product-free-layout img {
  max-width: 100%;
  height: auto;
}
.product-free-layout h3 {
  text-align: center;
  font-weight: bold;
  position: relative;
  line-height: 1.25;
}
@media only screen and (min-width: 768px) {
  .product-free-layout h3 {
    margin-bottom: 60px;
    font-size: 1.625rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-free-layout h3 {
    margin-bottom: 30px;
    font-size: 1.3rem;
  }
}
.product-free-layout h3:after {
  position: absolute;
  height: 1px;
  width: 58px;
  content: "";
  background: #0f62b8;
  left: 50%;
  bottom: -15px;
  transform: translate(-50%, 0);
}
.product-free-layout dl, .product-free-layout ul, .product-free-layout p {
  margin-top: 1.5em;
}
.product-free-layout dl:first-child, .product-free-layout ul:first-child, .product-free-layout p:first-child {
  margin-top: 0;
}
.product-free-layout ul {
  list-style: disc;
  padding-left: 1.5em;
}
.product-free-layout dl {
  list-style: decimal;
  padding-left: 1.5em;
}
.product-free-layout .alignnone {
  margin: 0 20px 20px 0;
}
.product-free-layout .aligncenter {
  display: block;
  margin: 0 auto 0 auto;
}
.product-free-layout div.aligncenter {
  display: block;
  margin: 0 auto 0 auto;
}
.product-free-layout .alignright {
  float: right;
  margin: 0 0 20px 20px;
}
.product-free-layout .alignleft {
  float: left;
  margin: 0 20px 20px 0;
}
.product-free-layout a img.alignright {
  float: right;
  margin: 0 0 20px 20px;
}
.product-free-layout a img.alignnone {
  margin: 0 20px 20px 0;
}
.product-free-layout a img.alignleft {
  float: left;
  margin: 0 20px 20px 0;
}
.product-free-layout a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.product-free-layout .wp-caption {
  background: #fff;
  border: 1px solid #f0f0f0;
  max-width: 96%;
  padding: 0 3px 10px;
  text-align: center;
}
.product-free-layout .wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 98.5%;
  padding: 0;
  width: auto;
}
.product-free-layout .wp-caption p.wp-caption-text {
  font-size: 11px;
  line-height: 17px;
  margin: 0;
  padding: 0 4px 0;
}
.product-free-layout .wp-caption.alignnone {
  margin: 0 20px 20px 0;
}
.product-free-layout .wp-caption.alignleft {
  margin: 0 20px 20px 0;
}
.product-free-layout .wp-caption.alignright {
  margin: 0 0 20px 20px;
}

.product-contact {
  text-align: center;
  color: #0f63b8;
  line-height: 1.5;
}
@media only screen and (min-width: 768px) {
  .product-contact {
    font-size: 1.25rem;
    margin-top: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .product-contact {
    font-size: 1rem;
    margin-top: 30px;
  }
}
.product-contact .product-contact__title {
  font-weight: bold;
  margin-bottom: 0.75em;
}
@media only screen and (min-width: 768px) {
  .product-contact .product-contact__title {
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-contact .product-contact__title {
    font-size: 1.1rem;
  }
}
.product-contact .product-contact-link {
  display: flex;
  align-items: center;
  justify-content: center;
}
.product-contact .product-contact-link .product-contact-link__item {
  margin: 0 8px;
  display: block;
  border: 1px solid #1063b8;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .product-contact .product-contact-link .product-contact-link__item {
    width: 360px;
    padding: 25px;
  }
}
@media only screen and (max-width: 767px) {
  .product-contact .product-contact-link .product-contact-link__item {
    width: auto;
    padding: 10px 30px 10px 20px;
  }
}
.product-contact .product-contact-link .product-contact-link__item:hover {
  text-decoration: none;
  opacity: 0.6;
}
.product-contact .product-contact-link .product-contact-link__item:after {
  position: absolute;
  content: "";
  top: 50%;
  transform: translate(0, -50%);
  background: url("../img/news/icn_arrow_right_01.png");
}
@media only screen and (min-width: 768px) {
  .product-contact .product-contact-link .product-contact-link__item:after {
    right: 25px;
    width: 10px;
    height: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .product-contact .product-contact-link .product-contact-link__item:after {
    right: 10px;
    width: 5px;
    height: 8px;
    background-size: 5px auto;
  }
}

.product-assoc {
  background: #eee;
}
@media only screen and (min-width: 768px) {
  .product-assoc {
    margin-top: 80px;
    padding: 40px 145px 60px;
  }
}
@media only screen and (max-width: 767px) {
  .product-assoc {
    margin-top: 40px;
    padding: 20px 40px 20px;
  }
}
.product-assoc .product-sec__title {
  margin-bottom: 35px;
}
.product-assoc .product-assoc-slider {
  margin: 0 -5px;
}
.product-assoc .product-assoc-slider a {
  display: block;
}
.product-assoc .product-assoc-slider a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.product-assoc .product-assoc-slider .product-assoc-slide__img img {
  max-width: 100%;
  height: auto;
  border: 1px solid #bbb;
}
.product-assoc .product-assoc-slider .product-assoc-slide__text {
  margin-top: 15px;
  line-height: 1.5;
  text-align: center;
}
.product-assoc .product-assoc-slider .slick-slide {
  margin: 0 5px;
}
.product-assoc .product-assoc-slider .slick-arrow {
  position: absolute;
  transform: 0, -50%;
  text-indent: -9999px;
  border: 0;
}
@media only screen and (min-width: 768px) {
  .product-assoc .product-assoc-slider .slick-arrow {
    top: 75px;
  }
}
@media only screen and (max-width: 767px) {
  .product-assoc .product-assoc-slider .slick-arrow {
    top: calc(50% - 30px);
  }
}
.product-assoc .product-assoc-slider .slick-arrow:hover {
  opacity: 0.6;
  cursor: pointer;
}
.product-assoc .product-assoc-slider .slick-arrow.slick-prev {
  background: transparent url("../img/top/btn_slide_right.png") no-repeat left center;
}
@media only screen and (min-width: 768px) {
  .product-assoc .product-assoc-slider .slick-arrow.slick-prev {
    left: -65px;
    width: 17px;
    height: 26px;
  }
}
@media only screen and (max-width: 767px) {
  .product-assoc .product-assoc-slider .slick-arrow.slick-prev {
    left: -15px;
    width: 8px;
    height: 13px;
    background-size: 8px auto;
  }
}
.product-assoc .product-assoc-slider .slick-arrow.slick-next {
  background: transparent url("../img/top/btn_slide_left.png") no-repeat left center;
  width: 17px;
  height: 26px;
}
@media only screen and (min-width: 768px) {
  .product-assoc .product-assoc-slider .slick-arrow.slick-next {
    right: -65px;
    width: 17px;
    height: 26px;
  }
}
@media only screen and (max-width: 767px) {
  .product-assoc .product-assoc-slider .slick-arrow.slick-next {
    right: -15px;
    width: 8px;
    height: 13px;
    background-size: 8px auto;
  }
}

.product-fixed-contact {
  position: fixed;
  right: 0;
  text-align: center;
  width: 300px;
  padding: 15px;
  box-sizing: border-box;
  background: #fff;
  line-height: 1.571428571;
  border: 1px solid #ccc;
  border-right: 0;
  z-index: 50;
  transform: translateY(-1px);
  font-size: 0.875rem;
}
@media only screen and (max-width: 767px) {
  .product-fixed-contact {
    display: none;
  }
}
.product-fixed-contact .product-fixed-contact__title {
  font-weight: bold;
  margin-bottom: 3px;
}
.product-fixed-contact .product-fixed-contact__text {
  font-weight: bold;
  color: #0f63b7;
  margin-bottom: 8px;
}
.product-fixed-contact .product-fixed-contact__action a {
  display: block;
  background: #0f62b7;
  color: #fff;
  box-sizing: border-box;
  height: 41px;
  line-height: 41px;
  padding-left: 25px;
  position: relative;
}
.product-fixed-contact .product-fixed-contact__action a:before {
  position: absolute;
  display: block;
  background: url("../img/common/icn_mail_02.png");
  width: 19px;
  height: 12px;
  content: "";
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
}
.product-fixed-contact .product-fixed-contact__action a:hover {
  text-decoration: none;
  opacity: 0.6;
}

@media only screen and (min-width: 768px) {
  .page-product-pickup .page__title {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .page-product-pickup .page__title {
    margin-bottom: 10px;
  }
}
.page-product-pickup .com-contact {
  border-bottom: 1px solid #1560b4;
}
@media only screen and (min-width: 768px) {
  .page-product-pickup .com-contact {
    padding-bottom: 40px;
    margin-bottom: -30px;
  }
}
@media only screen and (max-width: 767px) {
  .page-product-pickup .com-contact {
    padding-bottom: 20px;
    margin-bottom: -15px;
  }
}
@media only screen and (min-width: 768px) {
  .page-product-pickup .product-spec {
    padding: 90px 0 20px;
  }
}
@media only screen and (max-width: 767px) {
  .page-product-pickup .product-spec {
    padding: 40px 0 10px;
  }
}
@media only screen and (min-width: 768px) {
  .page-product-pickup .product-spec .product-sec__title {
    font-size: 1.625rem;
    margin-bottom: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .page-product-pickup .product-spec .product-sec__title {
    font-size: 1.3rem;
    margin-bottom: 30px;
  }
}
.page-product-pickup .product-spec .product-sec__title:after {
  display: none;
}

.product-pickup {
  margin-top: 60px;
}
.product-pickup .product-pickup__tab {
  display: flex;
  justify-content: center;
  border-bottom: 1px solid #0f62b8;
}
.product-pickup .product-pickup__tab a {
  display: block;
  outline: 0;
}
@media only screen and (max-width: 1099px) {
  .product-pickup .product-pickup__tab {
    padding: 0 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup .product-pickup__tab {
    padding: 0 10px;
  }
}
.product-pickup .product-pickup__tab li {
  margin-left: -1px;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .product-pickup .product-pickup__tab li {
    width: 275px;
  }
}
@media only screen and (max-width: 1099px) {
  .product-pickup .product-pickup__tab li {
    width: 25%;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup .product-pickup__tab li {
    width: 50%;
  }
}
.product-pickup .product-pickup__tab li.ui-state-active a {
  color: #fff;
  background: #0f62b6;
}
.product-pickup .product-pickup__tab li.ui-state-active:after {
  display: inline-block;
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  left: 50%;
  transform: translate(-50%, 0);
  border-style: solid;
  border-width: 12px 13px 0 13px;
  border-color: #0f62b6 transparent transparent transparent;
}
.product-pickup .product-pickup__tab li:first-child {
  margin-left: 0;
}
.product-pickup .product-pickup__tab li a {
  display: flex;
  align-items: center;
  text-align: center;
  justify-content: center;
  color: #0f62b6;
  background: #fff;
  line-height: 1.25;
  border: 1px solid #0f62b6;
  border-bottom: none;
}
.product-pickup .product-pickup__tab li a:hover {
  text-decoration: none;
  opacity: 0.6;
}
@media only screen and (min-width: 768px) {
  .product-pickup .product-pickup__tab li a {
    font-size: 1.125rem;
    padding: 0 10px;
    height: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup .product-pickup__tab li a {
    font-size: 0.9rem;
    padding: 0 5px;
    height: 30px;
  }
}
@media only screen and (min-width: 768px) {
  .product-pickup .product-pickup__tab li a small {
    font-size: 0.875rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup .product-pickup__tab li a small {
    display: none;
  }
}
.product-pickup__item {
  line-height: 1.75;
}
@media only screen and (min-width: 768px) {
  .product-pickup__item {
    margin-bottom: 100px;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__item {
    margin-bottom: 60px;
  }
}
.product-pickup__bh {
  font-weight: bold;
  color: #fff;
  background: #0268b7;
}
@media only screen and (min-width: 768px) {
  .product-pickup__bh {
    font-size: 1.5rem;
    padding: 24px 30px;
    margin: 100px 0 40px;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__bh {
    font-size: 1.2rem;
    padding: 15px 20px;
    margin: 60px 0 30px;
  }
}
.product-pickup__mh {
  display: flex;
  justify-content: flex-start;
  font-weight: bold;
  color: #0268b7;
}
@media only screen and (min-width: 768px) {
  .product-pickup__mh {
    font-size: 1.5rem;
    margin: 60px 0 30px;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__mh {
    font-size: 1.2rem;
    margin: 40px 0 20px;
  }
}
.product-pickup__mh::before {
  content: "";
  flex: none;
  display: inline-block;
  background: #0268b7;
}
@media only screen and (min-width: 768px) {
  .product-pickup__mh::before {
    width: 3px;
    margin: 4px 15px 8px 0;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__mh::before {
    width: 2px;
    margin: 4px 10px 8px 0;
  }
}
.product-pickup__point {
  font-weight: bold;
  background: #f8f8f8;
}
@media only screen and (min-width: 768px) {
  .product-pickup__point {
    padding: 33px 50px;
    margin: 30px 0;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__point {
    padding: 20px 30px;
    margin: 20px 0;
  }
}
.product-pickup__point ul li {
  font-weight: bold;
}
.product-pickup__point--v2 {
  background: #f2f7fc;
}
.product-pickup__list {
  margin: 10px 0;
}
@media only screen and (min-width: 768px) {
  .product-pickup__list li {
    text-indent: -1.6em;
    padding-left: 1.6em;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__list li {
    text-indent: -1.8em;
    padding-left: 1.8em;
  }
}
.product-pickup__list li::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  vertical-align: 0.2em;
  border-radius: 50%;
  background: #0268b7;
}
@media only screen and (min-width: 768px) {
  .product-pickup__list li::before {
    margin-right: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__list li::before {
    margin-right: 15px;
  }
}
.product-pickup__list li:not(:first-child) {
  margin-top: 10px;
}
@media only screen and (min-width: 768px) {
  .product-pickup__list-method {
    margin: 20px 0;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__list-method {
    margin: 15px 0;
  }
}
.product-pickup__list-method li {
  display: flex;
  align-items: flex-start;
}
.product-pickup__list-method li span {
  flex: none;
  width: 8em;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  color: #0268b7;
  border: 1px solid #0268b7;
  padding: 5px;
}
@media only screen and (min-width: 768px) {
  .product-pickup__list-method li span {
    margin-right: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__list-method li span {
    margin-right: 15px;
  }
}
.product-pickup__list-method li:not(:first-child) {
  margin-top: 10px;
}
.product-pickup__overview {
  background: #f2f7fc;
  border: 1px solid #0268b7;
}
@media only screen and (min-width: 768px) {
  .product-pickup__overview {
    padding: 23px 50px;
    margin: 30px 0;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__overview {
    padding: 20px 30px;
    margin: 20px 0;
  }
}
.product-pickup__overview p {
  font-weight: bold;
  color: #0268b7;
}
.product-pickup__nature {
  border: 1px solid #0268b7;
  margin: 20px 0;
}
@media only screen and (min-width: 768px) {
  .product-pickup__nature {
    padding: 31px 50px;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__nature {
    padding: 20px 30px;
  }
}
.product-pickup__nature dt {
  font-weight: bold;
  color: #0268b7;
  border-bottom: 1px solid #0268b7;
  padding-bottom: 10px;
  margin-bottom: 15px;
}
@media only screen and (min-width: 768px) {
  .product-pickup__nature dt {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__nature dt {
    font-size: 1rem;
  }
}
.product-pickup__nature__lead {
  color: #0268b7;
}
@media only screen and (min-width: 768px) {
  .product-pickup__nature__ex {
    font-size: 0.875rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__nature__ex {
    font-size: 0.8333333333rem;
  }
}
@media only screen and (min-width: 768px) {
  .product-pickup__method {
    margin: 40px 0;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__method {
    margin: 30px 0;
  }
}
.product-pickup__method dt {
  font-weight: bold;
  color: #0268b7;
  background: #f2f7fc;
}
@media only screen and (min-width: 768px) {
  .product-pickup__method dt {
    font-size: 1.25rem;
    padding: 7px 30px;
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__method dt {
    font-size: 1rem;
    padding: 5px 20px;
    margin-bottom: 20px;
  }
}
.product-pickup__faq {
  border-bottom: 1px solid #0268b7;
}
.product-pickup__faq dt {
  display: flex;
  font-weight: bold;
  color: #0268b7;
  background: #f2f7fc;
}
@media only screen and (min-width: 768px) {
  .product-pickup__faq dt {
    padding: 31px 30px;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__faq dt {
    padding: 20px;
  }
}
.product-pickup__faq dt::before {
  content: "Q.";
  flex: none;
}
@media only screen and (min-width: 768px) {
  .product-pickup__faq dt::before {
    margin-right: 25px;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__faq dt::before {
    margin-right: 15px;
  }
}
.product-pickup__faq dd {
  display: flex;
}
@media only screen and (min-width: 768px) {
  .product-pickup__faq dd {
    padding: 31px 30px;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__faq dd {
    padding: 20px;
  }
}
.product-pickup__faq dd::before {
  content: "A.";
  flex: none;
  font-weight: bold;
  color: #0268b7;
}
@media only screen and (min-width: 768px) {
  .product-pickup__faq dd::before {
    margin-right: 25px;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__faq dd::before {
    margin-right: 15px;
  }
}
.product-pickup__summary {
  background: #f2f7fc;
  border: 1px solid #0268b7;
}
@media only screen and (min-width: 768px) {
  .product-pickup__summary {
    padding: 41px 50px;
    margin: 80px 0;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__summary {
    padding: 30px;
    margin: 60px 0;
  }
}
.product-pickup__summary h3 {
  display: flex;
  justify-content: flex-start;
  font-weight: bold;
  color: #0268b7;
}
@media only screen and (min-width: 768px) {
  .product-pickup__summary h3 {
    font-size: 1.25rem;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__summary h3 {
    font-size: 1rem;
    margin-bottom: 15px;
  }
}
.product-pickup__summary h3::before {
  content: "";
  flex: none;
  display: inline-block;
  background: #0268b7;
}
@media only screen and (min-width: 768px) {
  .product-pickup__summary h3::before {
    width: 3px;
    margin: 4px 15px 8px 0;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__summary h3::before {
    width: 2px;
    margin: 4px 10px 8px 0;
  }
}
.product-pickup__summary__lead {
  font-weight: bold;
  color: #0268b7;
}
@media only screen and (min-width: 768px) {
  .product-pickup__summary__lead {
    font-size: 1.125rem;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-pickup__summary__lead {
    font-size: 0.9rem;
    margin-bottom: 15px;
  }
}

.product-case-example {
  background: #eee;
}
@media only screen and (min-width: 768px) {
  .product-case-example {
    padding: 50px 0 70px;
  }
}
@media only screen and (max-width: 767px) {
  .product-case-example {
    padding: 25px 0 30px;
  }
}
.product-case-example .product-case-example__text {
  line-height: 1.75;
}

@media only screen and (min-width: 768px) {
  .product-simple-spec {
    padding: 50px 0 70px;
  }
}
@media only screen and (max-width: 767px) {
  .product-simple-spec {
    padding: 25px 0 30px;
  }
}
.product-simple-spec .product-simple-spec__text {
  line-height: 1.75;
}
.product-simple-spec .product-simple-spec__table {
  line-height: 1.75;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .product-simple-spec .product-simple-spec__table {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .product-simple-spec .product-simple-spec__table tbody {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .product-simple-spec .product-simple-spec__table tr {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .product-simple-spec .product-simple-spec__table th,
  .product-simple-spec .product-simple-spec__table td {
    display: block;
  }
}
.product-simple-spec .product-simple-spec__table th {
  text-align: left;
  width: 140px;
  padding-right: 10px;
}
@media only screen and (max-width: 767px) {
  .product-simple-spec .product-simple-spec__table th {
    width: auto;
    font-weight: bold;
  }
}

@media only screen and (min-width: 768px) {
  .product-ba {
    padding: 90px 0 50px;
  }
}
@media only screen and (max-width: 767px) {
  .product-ba {
    padding: 40px 0 25px;
  }
}

.product-ba-img {
  text-align: center;
  margin-top: 40px;
}
.product-ba-img img {
  max-width: 100%;
  height: auto;
}

.product-ba-sec {
  position: relative;
  margin-top: 40px;
}
.product-ba-sec + .com-sec__title {
  margin-top: 150px;
}
@media only screen and (max-width: 767px) {
  .product-ba-sec + .com-sec__title {
    margin-top: 75px;
  }
}
.product-ba-sec:first-child {
  margin-top: 0;
}
.product-ba-sec.-before {
  padding-bottom: 60px;
}
.product-ba-sec.-before:after {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  content: "";
  width: 41px;
  height: 21px;
  background: url("../img/product/icn_triangle_down.png") no-repeat left top;
}
.product-ba-sec .product-ba-sec__title {
  position: relative;
  text-align: center;
  line-height: 1.25;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .product-ba-sec .product-ba-sec__title {
    font-size: 1.875rem;
    margin: 20px 0;
  }
}
@media only screen and (max-width: 767px) {
  .product-ba-sec .product-ba-sec__title {
    font-size: 1.5rem;
    margin: 10px 0;
    padding: 0 10px;
  }
}
.product-ba-sec .product-ba-sec__title span {
  display: inline-block;
  position: relative;
  color: #0f63b7;
  font-weight: bold;
}
.product-ba-sec .product-ba-sec__title span:before, .product-ba-sec .product-ba-sec__title span:after {
  height: 3px;
  width: 100vw;
  background: #0f62b8;
  position: absolute;
  content: "";
  top: 50%;
}
.product-ba-sec .product-ba-sec__title span:before {
  left: calc(100% + 15px);
}
.product-ba-sec .product-ba-sec__title span:after {
  right: calc(100% + 15px);
}

.product-ba-note {
  line-height: 1.75;
}
@media only screen and (min-width: 768px) {
  .product-ba-note {
    font-size: 1rem;
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .product-ba-note {
    font-size: 0.8rem;
    margin-bottom: 20px;
  }
}

.product-ba-note02 {
  line-height: 1.75;
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .product-ba-note02 {
    font-size: 1.25rem;
    margin-bottom: 25px;
  }
}
@media only screen and (max-width: 767px) {
  .product-ba-note02 {
    font-size: 1rem;
    margin-bottom: 12px;
  }
}

.product-ba-note03 {
  line-height: 1.75;
  font-weight: bold;
  color: #0664b9;
}
@media only screen and (min-width: 768px) {
  .product-ba-note03 {
    font-size: 1rem;
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .product-ba-note03 {
    font-size: 0.8rem;
    margin-bottom: 20px;
  }
}

.product-ba-desc .product-ba-desc__title {
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .product-ba-desc .product-ba-desc__title {
    font-size: 1.5rem;
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .product-ba-desc .product-ba-desc__title {
    font-size: 1.2rem;
    margin-bottom: 5px;
  }
}
.product-ba-desc .product-ba-desc__text {
  line-height: 1.5;
  border-bottom: 1px solid #ccc;
}
@media only screen and (min-width: 768px) {
  .product-ba-desc .product-ba-desc__text {
    font-size: 1.25rem;
    padding: 16px 0;
  }
}
@media only screen and (max-width: 767px) {
  .product-ba-desc .product-ba-desc__text {
    font-size: 1rem;
    padding: 8px 0;
  }
}

.product-ba-desc02 .product-ba-desc02__title {
  font-weight: bold;
  color: #0664b9;
}
@media only screen and (min-width: 768px) {
  .product-ba-desc02 .product-ba-desc02__title {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-ba-desc02 .product-ba-desc02__title {
    font-size: 1rem;
  }
}
.product-ba-desc02 .product-ba-desc02__text {
  line-height: 1.5;
  border-bottom: 1px solid #ccc;
}
@media only screen and (min-width: 768px) {
  .product-ba-desc02 .product-ba-desc02__text {
    font-size: 1rem;
    padding: 16px 0;
    margin-bottom: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .product-ba-desc02 .product-ba-desc02__text {
    font-size: 0.8rem;
    padding: 8px 0;
    margin-bottom: 8px;
  }
}

@media only screen and (min-width: 768px) {
  .product-case {
    padding: 90px 0 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-case {
    padding: 40px 0 10px;
  }
}
@media only screen and (min-width: 768px) {
  .product-case .product-sec__title {
    font-size: 1.625rem;
    margin-bottom: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .product-case .product-sec__title {
    font-size: 1.3rem;
    margin-bottom: 35px;
  }
}
.product-case .product-sec__title:after {
  display: none;
}
@media only screen and (min-width: 768px) {
  .product-case .product-case__item {
    display: flex;
    margin-bottom: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .product-case .product-case__item {
    margin-bottom: 30px;
  }
}
@media only screen and (min-width: 768px) {
  .product-case .product-case__img {
    width: 300px;
    margin-right: auto;
  }
}
.product-case .product-case__img img {
  width: 100%;
  height: auto;
}
@media only screen and (min-width: 768px) {
  .product-case .product-case__data {
    width: 760px;
  }
}
@media only screen and (max-width: 767px) {
  .product-case .product-case__data {
    margin-top: 15px;
  }
}
.product-case .product-case__title {
  color: #0f63b8;
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .product-case .product-case__title {
    font-size: 1.5rem;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-case .product-case__title {
    font-size: 1.2rem;
    margin-bottom: 10px;
  }
}
.product-case .product-case__text {
  padding-bottom: 0.1em;
  background-color: #fff;
  background-image: linear-gradient(to bottom, #ccc 1.1px, transparent 1px);
}
@media only screen and (min-width: 768px) {
  .product-case .product-case__text {
    font-size: 1.25rem;
    background-size: 1px 2.6em;
    line-height: 2.6;
  }
}
@media only screen and (max-width: 767px) {
  .product-case .product-case__text {
    font-size: 1rem;
    background-size: 2px 2.6em;
    line-height: 2.6;
  }
}

@media only screen and (min-width: 768px) {
  .product-faq {
    padding: 90px 0 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-faq {
    padding: 40px 0 10px;
  }
}
@media only screen and (min-width: 768px) {
  .product-faq .product-sec__title {
    font-size: 1.625rem;
    margin-bottom: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .product-faq .product-sec__title {
    font-size: 1.3rem;
    margin-bottom: 30px;
  }
}
.product-faq .product-sec__title:after {
  display: none;
}
.product-faq .product-spec-sec {
  margin: 0;
}
.product-faq .product-spec-sec table {
  margin: 0;
}
.product-faq img {
  max-width: 100%;
  height: auto;
}
.product-faq dl dt {
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .product-faq dl dt {
    font-size: 1.25rem;
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .product-faq dl dt {
    font-size: 1rem;
    margin-bottom: 5px;
  }
}
.product-faq dl dd {
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .product-faq dl dd {
    margin-bottom: 15px;
  }
}

@media only screen and (min-width: 768px) {
  .product-about {
    padding: 90px 0 20px;
  }
}
@media only screen and (max-width: 767px) {
  .product-about {
    padding: 40px 0 10px;
  }
}
@media only screen and (min-width: 768px) {
  .product-about .product-about__title {
    font-size: 1.625rem;
    margin-bottom: 70px;
  }
}
@media only screen and (max-width: 767px) {
  .product-about .product-about__title {
    font-size: 1.3rem;
    margin-bottom: 30px;
  }
}
.product-about .product-about__title:after {
  display: none;
}

.com-body.layout-recruit {
  padding-bottom: 0 !important;
}
.com-body.layout-recruit .footer-sub-menu {
  border-bottom: none;
}
@media only screen and (min-width: 768px) {
  .com-body.layout-recruit .footer-sub-menu .footer-sub-menu__item {
    width: 260px;
  }
}
@media only screen and (max-width: 767px) {
  .com-body.layout-recruit + .com-footer .footer-contact {
    display: none !important;
  }
}

.page-recruit .com-pre-text {
  text-align: center;
}

.recruit-top-mv {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 0;
  text-align: center;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .recruit-top-mv {
    background-image: url(../img/recruit/top_mv_pc.jpg);
    padding-top: 36%;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-top-mv {
    background-image: url(../img/recruit/top_mv_sp.jpg);
    padding-top: 125%;
  }
}
.recruit-top-mv .cnt {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.recruit-top-mv .cnt h1 {
  display: none;
}
.recruit-top-mv .cnt dl {
  color: #ffffff;
}
@media only screen and (min-width: 768px) {
  .recruit-top-mv .cnt dl {
    text-shadow: 0 10px 24px rgba(4, 0, 0, 0.2);
  }
}
@media only screen and (max-width: 767px) {
  .recruit-top-mv .cnt dl {
    text-shadow: 0 5px 12px rgba(4, 0, 0, 0.2);
  }
}
.recruit-top-mv .cnt dl dt {
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .recruit-top-mv .cnt dl dt {
    font-size: 84px;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-top-mv .cnt dl dt {
    font-size: 62px;
    margin-bottom: 15px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-top-mv .cnt dl dt br {
    display: none;
  }
}
.recruit-top-mv .cnt dl dd {
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .recruit-top-mv .cnt dl dd {
    font-size: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-top-mv .cnt dl dd {
    font-size: 16px;
  }
}

.recruit-entry {
  color: #ffffff;
  background-color: #0f62b8;
}
@media only screen and (min-width: 768px) {
  .recruit-entry {
    margin-top: 100px;
    padding: 120px 0;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-entry {
    margin-top: 40px;
    padding: 50px 0;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-entry__wrapper {
    display: flex;
    align-items: baseline;
  }
}
.recruit-entry__wrapper h2 {
  font-weight: 700;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .recruit-entry__wrapper h2 {
    font-size: 80px;
    margin-right: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-entry__wrapper h2 {
    font-size: 50px;
    margin: 0 auto 30px auto;
  }
}
.recruit-entry__wrapper h2 span {
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .recruit-entry__wrapper h2 span {
    font-size: 20px;
    position: absolute;
    bottom: -40px;
    left: 0;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-entry__wrapper h2 span {
    font-size: 14px;
    margin-top: 15px;
    display: block;
  }
}
.recruit-entry__wrapper p {
  font-weight: 700;
  line-height: 1.4;
}
@media only screen and (min-width: 768px) {
  .recruit-entry__wrapper p {
    font-size: 24px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-entry__wrapper p {
    font-size: 14px;
  }
}
.recruit-entry a {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  border: 1px #ffffff solid;
}
@media only screen and (min-width: 768px) {
  .recruit-entry a {
    max-width: 700px;
    height: 70px;
    font-size: 20px;
    margin: 90px auto 0 auto;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-entry a {
    height: 50px;
    font-size: 14px;
    margin: 30px auto 0 auto;
  }
}
.recruit-entry a:after {
  content: "";
  border-top: 1px #ffffff solid;
  border-right: 1px #ffffff solid;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  transform: rotate(45deg);
}
@media only screen and (min-width: 768px) {
  .recruit-entry a:after {
    width: 11px;
    height: 11px;
    right: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-entry a:after {
    width: 6px;
    height: 6px;
    right: 40px;
  }
}
.recruit-entry a:hover {
  text-decoration: none;
}
.recruit-entry a span {
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .recruit-message .cnt-flex {
    display: block;
  }
}

.recruit-message__caption {
  margin-top: 1em;
}

@media only screen and (min-width: 768px) {
  .recruit-message__image {
    width: 32%;
    margin-right: auto;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-message__image {
    margin-bottom: 1.5em;
  }
}
.recruit-message__image img {
  width: 100%;
  height: auto;
}

.recruit-message__text {
  line-height: 1.75;
}
@media only screen and (min-width: 768px) {
  .recruit-message__text {
    width: 62%;
    margin-right: auto;
    font-size: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-message__text {
    font-size: 1.1666666667rem;
  }
}
.recruit-message__text p {
  margin-bottom: 1em;
}

.recruit-require {
  margin-top: 100px;
}

.recruit-require-list {
  list-style: decimal;
  padding-left: 1.25em;
}
.recruit-require-list .recruit-require-list__item {
  color: #0f63b9;
  line-height: 1.5;
}
@media only screen and (min-width: 768px) {
  .recruit-require-list .recruit-require-list__item {
    font-size: 1.375rem;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-require-list .recruit-require-list__item {
    font-size: 1.1rem;
    margin-bottom: 10px;
  }
}

.product-simple-spec-sec {
  margin-top: 50px;
}
@media only screen and (max-width: 767px) {
  .product-simple-spec-sec {
    margin-top: 25px;
  }
}
.product-simple-spec-sec:first-child {
  margin-top: 0;
}
.product-simple-spec-sec .product-simple-spec-sec__title {
  color: #0f63b9;
  font-weight: bold;
  line-height: 1.5;
}
@media only screen and (min-width: 768px) {
  .product-simple-spec-sec .product-simple-spec-sec__title {
    font-size: 1.25rem;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .product-simple-spec-sec .product-simple-spec-sec__title {
    font-size: 1rem;
    margin-bottom: 10px;
  }
}
.product-simple-spec-sec .product-simple-spec-sec__body {
  line-height: 1.75;
}

.page-recruit-faq .com-faq-list .com-faq-list__item .com-faq-list__question {
  color: #333;
}
@media only screen and (min-width: 768px) {
  .page-recruit-faq .com-faq-list .com-faq-list__item .com-faq-list__question {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .page-recruit-faq .com-faq-list .com-faq-list__item .com-faq-list__question {
    font-size: 1rem;
  }
}
.page-recruit-faq .com-faq-list .com-faq-list__item .com-faq-list__question:before {
  color: #1560b4;
}
@media only screen and (min-width: 768px) {
  .page-recruit-faq .com-faq-list .com-faq-list__item .com-faq-list__question:before {
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .page-recruit-faq .com-faq-list .com-faq-list__item .com-faq-list__question:before {
    font-size: 1.1rem;
  }
}

.recruit-training .bg-gray {
  background: #f4f4f4;
}
@media only screen and (min-width: 768px) {
  .recruit-training .bg-gray {
    padding: 45px 0 115px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-training .bg-gray {
    padding: 20px 0 40px;
  }
}
.recruit-training .com-full-image {
  margin-bottom: 80px;
}
@media only screen and (max-width: 767px) {
  .recruit-training .com-full-image {
    margin-bottom: 40px;
  }
}

.recruit-training-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #bbb;
  background-color: #fff;
}
.recruit-training-table .recruit-training-table__col-1 {
  width: 10%;
}
.recruit-training-table .recruit-training-table__col-2 {
  width: 20%;
}
.recruit-training-table .recruit-training-table__col-3 {
  width: 40%;
}
.recruit-training-table .recruit-training-table__col-4 {
  width: 30%;
}
.recruit-training-table th,
.recruit-training-table td {
  vertical-align: middle;
  border: 1px solid #bbb;
}
@media only screen and (min-width: 768px) {
  .recruit-training-table th,
  .recruit-training-table td {
    line-height: 1.75;
    padding: 10px 25px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-training-table th,
  .recruit-training-table td {
    line-height: 1.5;
    padding: 5px 12px;
  }
}
.recruit-training-table th.text-center,
.recruit-training-table td.text-center {
  text-align: center;
}
.recruit-training-table th {
  text-align: center;
  color: #0f63b7;
  font-weight: bold;
}
.recruit-training-table tr.color-1 td {
  background-color: #eee;
}
.recruit-training-table tr.color-2 td {
  background-color: #e8e5f6;
}
.recruit-training-table tr.color-3 td {
  background-color: #e2f6eb;
}
.recruit-training-table tr.color-4 td {
  background-color: #fbeace;
}
.recruit-training-table tr td.bg-white {
  background-color: #fff;
}

.recruit-training-point {
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .recruit-training-point {
    margin-top: 100px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-training-point {
    margin-top: 30px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-training-point:first-child {
    margin-top: 60px;
  }
}
.recruit-training-point .recruit-training-point__title {
  position: relative;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .recruit-training-point .recruit-training-point__title {
    font-size: 1.375rem;
    margin-bottom: 35px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-training-point .recruit-training-point__title {
    font-size: 1.1rem;
    margin-bottom: 10px;
  }
}
.recruit-training-point .recruit-training-point__title span {
  display: inline-block;
  position: relative;
  color: #0f63b7;
  font-weight: bold;
}
.recruit-training-point .recruit-training-point__title span:before, .recruit-training-point .recruit-training-point__title span:after {
  height: 1px;
  width: 100vw;
  background: #ccc;
  position: absolute;
  content: "";
  top: 50%;
}
.recruit-training-point .recruit-training-point__title span:before {
  left: calc(100% + 15px);
}
.recruit-training-point .recruit-training-point__title span:after {
  right: calc(100% + 15px);
}
@media only screen and (min-width: 768px) {
  .recruit-training-point .recruit-training-point__image {
    float: right;
    margin-left: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-training-point .recruit-training-point__image {
    margin-bottom: 20px;
  }
}
.recruit-training-point .recruit-training-point__image img {
  width: 100%;
  height: auto;
}
.recruit-training-point .recruit-training-point__text {
  line-height: 1.75;
}

.recruit-interview-archive article {
  color: #ffffff;
  background-color: #cfcfcf;
  width: 100%;
  position: relative;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-archive article {
    height: 380px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-archive article {
    height: 47.5vw;
    min-height: 190px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-interview-archive article:nth-of-type(n + 2) {
    margin-top: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-archive article:nth-of-type(n + 2) {
    margin-top: 30px;
  }
}
.recruit-interview-archive article a {
  width: 100%;
  height: 100%;
  display: block;
  position: relative;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-archive article a {
    padding: 50px 30px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-archive article a {
    padding: 20px 0;
  }
}
.recruit-interview-archive article a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.recruit-interview-archive article picture {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.recruit-interview-archive article picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.recruit-interview-archive article div {
  background-color: rgba(0, 56, 143, 0.8);
  width: auto;
  display: flex;
  flex-direction: column;
  position: absolute;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-archive article div {
    max-width: 480px;
    height: calc(100% - 100px);
    padding: 40px 30px;
    top: 50px;
    left: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-archive article div {
    min-width: 275px;
    height: calc(100% - 40px);
    padding: 20px 15px;
    top: 20px;
    left: 0;
  }
}
.recruit-interview-archive article div h3 {
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-archive article div h3 {
    font-size: 28px;
    line-height: 1.7;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-archive article div h3 {
    font-size: 17px;
    line-height: 1.4;
    margin-bottom: 10px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-interview-archive article div p {
    line-height: 1.75;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-archive article div p {
    line-height: 1.6;
  }
}
.recruit-interview-archive article i {
  align-items: center;
  position: absolute;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-archive article i {
    top: 20px;
    left: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-archive article i {
    top: 10px;
    left: 5px;
  }
}
.recruit-interview-archive article i:before {
  content: "";
  position: absolute;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-archive article i:before {
    width: 176px;
    height: 90px;
    border-top: 90px #c92026 solid;
    border-right: 176px transparent solid;
    top: -20px;
    left: -10px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-archive article i:before {
    width: 88px;
    height: 45px;
    border-top: 45px #c92026 solid;
    border-right: 88px transparent solid;
    top: -10px;
    left: -5px;
  }
}
.recruit-interview-archive article i span {
  font-weight: 700;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-archive article i span {
    font-size: 24px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-archive article i span {
    font-size: 12px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__header {
    width: 100%;
    max-width: 1280px;
    height: 680px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    position: relative;
  }
}
@media screen and (max-width: 1280px) {
  .recruit-interview-single__header {
    height: auto;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__header {
    padding: 0 10px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__header div {
    width: 50%;
    padding-right: 40px;
  }
}
@media screen and (max-width: 1280px) {
  .recruit-interview-single__header div {
    padding-left: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__header div {
    padding: 0;
  }
}
.recruit-interview-single__header div dl {
  color: #333333;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__header div dl {
    margin-bottom: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__header div dl {
    margin-bottom: 30px;
  }
}
.recruit-interview-single__header div dl dt {
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__header div dl dt {
    font-size: 80px;
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__header div dl dt {
    font-size: 60px;
    margin-bottom: 15px;
  }
}
.recruit-interview-single__header div dl dd {
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__header div dl dd {
    font-size: 22px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__header div dl dd {
    font-size: 14px;
  }
}
.recruit-interview-single__header div dl dd span {
  color: #aaaaaa;
  font-weight: 700;
}
.recruit-interview-single__header div h3 {
  color: #0f63b6;
  font-weight: 700;
  line-height: 1.4;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__header div h3 {
    font-size: 38px;
    margin-bottom: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__header div h3 {
    font-size: 23px;
    margin-bottom: 30px;
  }
}
.recruit-interview-single__header div p {
  line-height: 1.75;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__header div p {
    font-size: 18px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__header div p {
    font-size: 14px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__header figure {
    width: 100%;
    max-width: 800px;
    position: absolute;
    top: 0;
    left: 50%;
  }
}
@media screen and (max-width: 1280px) {
  .recruit-interview-single__header figure {
    width: 50%;
    position: static;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__header figure {
    width: 100%;
    max-width: 400px;
    margin: 30px auto 0 auto;
  }
}
.recruit-interview-single__header figure img {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__content {
    margin-top: 100px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__content {
    margin-top: 50px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__content .cnt {
    max-width: 1300px;
    padding: 0 20px;
  }
}
.recruit-interview-single__content .block-post {
  line-height: 1.75;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__content .block-post {
    font-size: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__content .block-post {
    font-size: 14px;
  }
}
.recruit-interview-single__content .block-post h2,
.recruit-interview-single__content .block-post h3 {
  color: #0f63b6;
  font-weight: 700;
  line-height: 1.4;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__content .block-post h2,
  .recruit-interview-single__content .block-post h3 {
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__content .block-post h2,
  .recruit-interview-single__content .block-post h3 {
    margin-bottom: 15px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__content .block-post h2 {
    font-size: 24px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__content .block-post h2 {
    font-size: 16px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__content .block-post h3 {
    font-size: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__content .block-post h3 {
    font-size: 14px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__content .block-post * + h2,
  .recruit-interview-single__content .block-post *:not(h2) + h3 {
    margin-top: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__content .block-post * + h2,
  .recruit-interview-single__content .block-post *:not(h2) + h3 {
    margin-top: 40px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__content .block-post p {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__content .block-post p {
    margin-top: 20px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__content .block-post ul,
  .recruit-interview-single__content .block-post ol {
    margin: 30px auto 0 1.5em;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__content .block-post ul,
  .recruit-interview-single__content .block-post ol {
    margin: 15px auto 0 1.5em;
  }
}
.recruit-interview-single__content .block-post ul ul,
.recruit-interview-single__content .block-post ul ol,
.recruit-interview-single__content .block-post ol ul,
.recruit-interview-single__content .block-post ol ol {
  margin-top: 0;
}
.recruit-interview-single__content .block-post ul {
  list-style-type: disc;
}
.recruit-interview-single__content .block-post ol {
  list-style-type: decimal;
}
.recruit-interview-single__content .block-post p a,
.recruit-interview-single__content .block-post ul a,
.recruit-interview-single__content .block-post ol a,
.recruit-interview-single__content .block-post dl a,
.recruit-interview-single__content .block-post table a {
  color: #0f63b6;
  text-decoration: underline;
}
.recruit-interview-single__content .block-post img {
  max-width: 100%;
  height: auto;
}
.recruit-interview-single__content .block-post strong,
.recruit-interview-single__content .block-post b {
  font-weight: 700;
}
.recruit-interview-single__content .block-post .wp-block-columns {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__content .block-post .wp-block-columns {
    margin-top: 80px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__content .block-post .wp-block-columns {
    margin-top: 15px;
    display: block;
  }
}
.recruit-interview-single__content .block-post .wp-block-columns .wp-block-column {
  flex: 1;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__content .block-post .wp-block-columns .wp-block-column:nth-of-type(n + 2) {
    margin-left: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__content .block-post .wp-block-columns .wp-block-column:nth-of-type(n + 2) {
    margin: 15px auto 0 auto;
  }
}
.recruit-interview-single__content .block-post .wp-block-columns .wp-block-column > *:first-child {
  margin-top: 0 !important;
}
.recruit-interview-single__content .block-post .wp-block-columns.bgWrap {
  background-color: #eff3fb;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__content .block-post .wp-block-columns.bgWrap {
    padding: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__content .block-post .wp-block-columns.bgWrap {
    padding: 25px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__content .block-post .wp-block-image, .recruit-interview-single__content .block-post .wp-block-gallery, .recruit-interview-single__content .block-post .wp-block-table {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__content .block-post .wp-block-image, .recruit-interview-single__content .block-post .wp-block-gallery, .recruit-interview-single__content .block-post .wp-block-table {
    margin-top: 15px;
  }
}
.recruit-interview-single__content .block-post .wp-block-image figcaption, .recruit-interview-single__content .block-post .wp-block-gallery figcaption, .recruit-interview-single__content .block-post .wp-block-table figcaption {
  line-height: 1.5;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__content .block-post .wp-block-image figcaption, .recruit-interview-single__content .block-post .wp-block-gallery figcaption, .recruit-interview-single__content .block-post .wp-block-table figcaption {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__content .block-post .wp-block-image figcaption, .recruit-interview-single__content .block-post .wp-block-gallery figcaption, .recruit-interview-single__content .block-post .wp-block-table figcaption {
    margin-top: 10px;
  }
}
.recruit-interview-single__content .block-post .wp-block-image img {
  width: 100%;
}
.recruit-interview-single__content .block-post .wp-block-image .alignleft img,
.recruit-interview-single__content .block-post .wp-block-image .aligncenter img,
.recruit-interview-single__content .block-post .wp-block-image .alignright img {
  display: block;
}
.recruit-interview-single__content .block-post .wp-block-image .alignleft img {
  margin: 0 auto 0 0;
}
.recruit-interview-single__content .block-post .wp-block-image .aligncenter img {
  margin: 0 auto;
}
.recruit-interview-single__content .block-post .wp-block-image .alignright img {
  margin: 0 0 0 auto;
}
.recruit-interview-single__content .block-post .wp-block-gallery .wp-block-image {
  margin-top: 0 !important;
}
.recruit-interview-single__content .block-post .wp-block-table table {
  width: 100%;
}
.recruit-interview-single__content .block-post .wp-block-table table tr > *:first-child {
  width: 4em;
}
.recruit-interview-single__content .block-post h2 + .wp-block-columns, .recruit-interview-single__content .block-post h2 + .wp-block-image, .recruit-interview-single__content .block-post h2 + .wp-block-gallery, .recruit-interview-single__content .block-post h2 + .wp-block-table {
  margin-top: 0;
}
.recruit-interview-single__content .block-post .has-text-align-left {
  text-align: left;
}
.recruit-interview-single__content .block-post .has-text-align-center {
  text-align: center;
}
.recruit-interview-single__content .block-post .has-text-align-right {
  text-align: right;
}
.recruit-interview-single__return {
  color: #0f63b8;
  text-align: center;
  line-height: 1.5;
  display: block;
  border: 1px solid #1063b8;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__return {
    width: 360px;
    font-size: 20px;
    padding: 25px;
    margin: 100px auto 0 auto;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__return {
    width: auto;
    font-size: 12px;
    margin: 50px auto 0 auto;
    padding: 10px 30px 10px 20px;
  }
}
.recruit-interview-single__return:hover {
  text-decoration: none;
  opacity: 0.6;
}
.recruit-interview-single__return:after {
  position: absolute;
  content: "";
  top: 50%;
  transform: translate(0, -50%);
  background: url("../img/news/icn_arrow_right_01.png");
}
@media only screen and (min-width: 768px) {
  .recruit-interview-single__return:after {
    right: 25px;
    width: 10px;
    height: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-interview-single__return:after {
    right: 10px;
    width: 5px;
    height: 8px;
    background-size: 5px auto;
  }
}

.recruit-environment__area {
  color: #ffffff;
  text-align: center;
  display: flex;
}
@media only screen and (min-width: 768px) {
  .recruit-environment__area {
    margin-top: 150px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment__area {
    margin-top: 70px;
    flex-direction: column;
  }
}
.recruit-environment__area li {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  transition: 0.2s;
}
.recruit-environment__area li:hover {
  opacity: 0.8;
  transition: 0.2s;
}
@media only screen and (min-width: 768px) {
  .recruit-environment__area li {
    width: 25%;
    height: 640px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment__area li {
    width: 100%;
    height: 150px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-environment__area li:nth-of-type(1) {
    background-image: url(../img/recruit/environment/tokyo_pc.jpg);
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment__area li:nth-of-type(1) {
    background-image: url(../img/recruit/environment/tokyo_sp.jpg);
  }
}
@media only screen and (min-width: 768px) {
  .recruit-environment__area li:nth-of-type(2) {
    background-image: url(../img/recruit/environment/osaka_pc.jpg);
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment__area li:nth-of-type(2) {
    background-image: url(../img/recruit/environment/osaka_sp.jpg);
  }
}
@media only screen and (min-width: 768px) {
  .recruit-environment__area li:nth-of-type(3) {
    background-image: url(../img/recruit/environment/nagoya_pc.jpg);
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment__area li:nth-of-type(3) {
    background-image: url(../img/recruit/environment/nagoya_sp.jpg);
  }
}
@media only screen and (min-width: 768px) {
  .recruit-environment__area li:nth-of-type(4) {
    background-image: url(../img/recruit/environment/europe_pc.jpg);
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment__area li:nth-of-type(4) {
    background-image: url(../img/recruit/environment/europe_sp.jpg);
  }
}
.recruit-environment__area li a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.recruit-environment__area li a.disable {
  background-color: rgba(0, 0, 0, 0.7);
  pointer-events: none;
}
.recruit-environment__area li a:hover {
  text-decoration: none;
}
.recruit-environment__area li a dl {
  line-height: 1.5;
}
.recruit-environment__area li a dl dt {
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .recruit-environment__area li a dl dt {
    font-size: 28px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment__area li a dl dt {
    font-size: 19px;
  }
}
.recruit-environment__area li a dl dd {
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .recruit-environment__area li a dl dd {
    font-size: 14px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment__area li a dl dd {
    font-size: 13px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment__area--small {
    flex-direction: row;
    flex-wrap: wrap;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-environment__area--small li {
    width: 25%;
    height: 240px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment__area--small li {
    width: 50%;
    height: 120px;
  }
}
.recruit-environment__area--small li:nth-of-type(1) {
  background-image: url(../img/recruit/environment/tokyo_s.jpg);
}
.recruit-environment__area--small li:nth-of-type(2) {
  background-image: url(../img/recruit/environment/osaka_s.jpg);
}
.recruit-environment__area--small li:nth-of-type(3) {
  background-image: url(../img/recruit/environment/nagoya_s.jpg);
}
.recruit-environment__area--small li:nth-of-type(4) {
  background-image: url(../img/recruit/environment/europe_s.jpg);
}
@media only screen and (min-width: 768px) {
  .recruit-environment-office-content .cnt {
    max-width: 1300px;
    padding: 0 20px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-environment-office-content__header {
    display: flex;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-environment-office-content__header dl {
    width: 100%;
    max-width: 700px;
    margin-right: 40px;
  }
}
.recruit-environment-office-content__header dl dt {
  color: #0f62b8;
  font-weight: 700;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .recruit-environment-office-content__header dl dt {
    font-size: 22px;
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment-office-content__header dl dt {
    font-size: 14px;
    margin-bottom: 30px;
  }
}
.recruit-environment-office-content__header dl dt span {
  font-weight: 700;
  margin-bottom: 0.35em;
  display: block;
}
@media only screen and (min-width: 768px) {
  .recruit-environment-office-content__header dl dt span {
    font-size: 34px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment-office-content__header dl dt span {
    font-size: 26px;
  }
}
.recruit-environment-office-content__header dl dd {
  line-height: 1.75;
}
@media only screen and (min-width: 768px) {
  .recruit-environment-office-content__header div {
    width: 410px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment-office-content__header div {
    width: 100%;
    max-width: 300px;
    margin: 30px auto 0 auto;
  }
}
.recruit-environment-office-content__header div picture {
  display: block;
}
.recruit-environment-office-content__header div picture img {
  width: 100%;
}
.recruit-environment-office-content__header div p {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .recruit-environment-office-content__header div p {
    font-size: 14px;
    margin-top: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment-office-content__header div p {
    font-size: 10px;
    margin-top: 10px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-environment-office-content article {
    margin-top: 100px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment-office-content article {
    margin-top: 60px;
  }
}
.recruit-environment-office-content article h3 {
  color: #0f62b8;
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .recruit-environment-office-content article h3 {
    font-size: 20px;
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment-office-content article h3 {
    font-size: 14px;
    margin-bottom: 20px;
  }
}
.recruit-environment-office-content article h3 span {
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .recruit-environment-office-content article h3 span {
    font-size: 30px;
    margin-right: 0.5em;
    display: inline-block;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment-office-content article h3 span {
    font-size: 26px;
    margin-bottom: 0.35em;
    display: block;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-environment-office-content article div {
    margin-bottom: 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment-office-content article div {
    margin-bottom: 30px;
  }
}
@media only screen and (min-width: 768px) {
  .recruit-environment-office-content article div figure {
    width: 50%;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment-office-content article div figure {
    width: 100%;
  }
}
.recruit-environment-office-content article div figure img {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .recruit-environment-office-content article div figure:nth-of-type(n + 2) {
    margin-top: 20px;
  }
}
.recruit-environment-office-content article div figure figcaption {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .recruit-environment-office-content article div figure figcaption {
    font-size: 14px;
    margin-top: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-environment-office-content article div figure figcaption {
    font-size: 10px;
    margin-top: 10px;
  }
}
.recruit-environment-office-content article p {
  line-height: 1.75;
}
.recruit-environment-office-content__link {
  text-decoration: underline;
  color: #0f62b8;
}
@media (hover: hover) {
  .recruit-environment-office-content__link:hover {
    text-decoration: none;
  }
}

@media only screen and (min-width: 768px) {
  .policy {
    margin-top: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .policy {
    margin-top: 30px;
  }
}
.policy .policy-text {
  line-height: 1.75;
}
.policy .policy-list {
  list-style: disc;
  line-height: 1.75;
  padding-left: 1.5em;
}
@media only screen and (min-width: 768px) {
  .policy .policy-list {
    margin-top: 10px;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .policy .policy-list {
    margin-top: 5px;
    margin-bottom: 10px;
  }
}
.policy .policy-list:first-child {
  margin-top: 0;
}
.policy .policy-list .policy-list__item {
  color: #0f63b9;
}

.privacy-list {
  color: #0f63b9;
  list-style: decimal;
  line-height: 1.75;
  padding-left: 1.5em;
}
@media only screen and (min-width: 768px) {
  .privacy-list {
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .privacy-list {
    font-size: 1.1rem;
  }
}
.privacy-list:first-child {
  margin-top: 0;
}
@media only screen and (min-width: 768px) {
  .privacy-list > li {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .privacy-list > li {
    margin-top: 15px;
  }
}
.privacy-list > li a {
  color: #0f63b9;
  text-decoration: underline;
}
.privacy-list > li a:hover {
  opacity: 0.6;
}
.privacy-list > li p,
.privacy-list > li ol {
  color: #333;
}
@media only screen and (min-width: 768px) {
  .privacy-list > li p,
  .privacy-list > li ol {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .privacy-list > li p,
  .privacy-list > li ol {
    font-size: 0.8rem;
  }
}
.privacy-list > li p {
  margin-top: 1em;
}
.privacy-list .sub {
  margin-top: 15px;
  padding-left: 2em;
  text-indent: -1.75em;
}
.privacy-list .sub li {
  list-style-type: none;
  list-style-position: outside;
  counter-increment: cnt;
}
.privacy-list .sub li:before {
  display: marker;
  content: "[" counter(cnt) "] ";
}

.privacy-date {
  text-align: right;
}
@media only screen and (min-width: 768px) {
  .privacy-date {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .privacy-date {
    margin-top: 15px;
  }
}

.page-company-message .footer-sub-menu {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  .page-company-message .footer-sub-menu {
    margin-top: 30px;
  }
}

@media only screen and (min-width: 768px) {
  .company-message .company-message__image {
    width: 32%;
    margin-right: 20px;
    margin-bottom: 30px;
    float: left;
  }
}
@media only screen and (max-width: 767px) {
  .company-message .company-message__image {
    margin-bottom: 1.5em;
  }
}
.company-message .company-message__image img {
  width: 100%;
  height: auto;
}
.company-message .company-message__text {
  line-height: 1.75;
}
.company-message .company-message__text p {
  margin-bottom: 1em;
}
@media only screen and (min-width: 768px) {
  .company-message .company-message__text p {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .company-message .company-message__text p {
    font-size: 0.8rem;
  }
}

.page-company-history .com-full-image {
  margin-bottom: 30px;
}
.page-company-history .com-text {
  margin-bottom: 30px;
}

.company-history-table {
  width: 100%;
}
.company-history-table th,
.company-history-table td {
  padding: 15px 0;
  line-height: 1.75;
  border-bottom: 1px dotted #cbcbcb;
}
@media only screen and (max-width: 767px) {
  .company-history-table th,
  .company-history-table td {
    padding: 8px 0;
  }
}
.company-history-table th {
  width: 150px;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .company-history-table th {
    width: 80px;
  }
}

.company-about .com-full-image {
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  .company-about .com-full-image {
    margin-bottom: 25px;
  }
}
.company-about .com-full-image img {
  width: 100%;
  max-width: 240px;
  display: block;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  .company-about .com-full-image img {
    max-width: 400px;
  }
}

.company-about-table {
  width: 100%;
}
.company-about-table th,
.company-about-table td {
  padding: 15px 0;
  line-height: 1.75;
}
@media only screen and (max-width: 767px) {
  .company-about-table th,
  .company-about-table td {
    padding: 8px 0;
  }
}
.company-about-table th {
  width: 150px;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .company-about-table th {
    width: 80px;
  }
}

.page-company-policy .com-sec {
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  .page-company-policy .com-sec {
    margin-top: 40px;
  }
}

.company-policy-image img {
  max-width: 100%;
  height: auto;
}

.company-policy-list .company-policy-list__item {
  line-height: 1.75;
  margin-top: 10px;
  color: #0f63b8;
}
@media only screen and (min-width: 768px) {
  .company-policy-list .company-policy-list__item {
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .company-policy-list .company-policy-list__item {
    font-size: 1.1rem;
  }
}
.company-policy-list .company-policy-list__item:first-child {
  margin-top: 0;
}

.page-company-access .com-sec {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  .page-company-access .com-sec {
    margin-top: 30px;
  }
}

.company-access-world {
  background: url("../img/company/access/bg_world_branch.png") no-repeat center;
}
.company-access-world:after {
  content: "";
  display: table;
  clear: both;
}
@media only screen and (max-width: 767px) {
  .company-access-world {
    background-size: contain;
  }
}
.company-access-world .company-access-world__title {
  line-height: 1.75;
  margin-bottom: 5px;
}
@media only screen and (min-width: 768px) {
  .company-access-world .company-access-world__title {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .company-access-world .company-access-world__title {
    font-size: 1rem;
  }
}
.company-access-world .company-access-world__desc {
  line-height: 1.75;
}
@media only screen and (min-width: 768px) {
  .company-access-world .company-access-world__desc {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .company-access-world .company-access-world__desc {
    font-size: 0.9rem;
  }
}
.company-access-world .company-access-world__item {
  box-sizing: border-box;
  margin-top: 30px;
}
.company-access-world .company-access-world__item:first-child {
  margin-top: 0;
}
@media only screen and (min-width: 768px) {
  .company-access-world .company-access-world__item {
    float: left;
    margin-left: 50px;
    margin-right: -50px;
    width: 50%;
    padding-right: 10px;
    background: no-repeat center bottom/contain;
  }
}
@media only screen and (max-width: 767px) {
  .company-access-world .company-access-world__item {
    background: no-repeat center top/contain;
  }
}
.company-access-world .company-access-world__item .company-access-world__image {
  text-align: center;
}
.company-access-world .company-access-world__item .company-access-world__image img {
  max-width: 70%;
  height: auto;
}
@media only screen and (min-width: 768px) {
  .company-access-world .company-access-world__item.-japan {
    background-image: url("../img/company/access/img_map_japan.png");
    margin-bottom: 30px;
    height: 318px;
  }
}
@media only screen and (max-width: 767px) {
  .company-access-world .company-access-world__item.-japan .company-access-world__desc {
    position: absolute;
    left: 1em;
    top: 3em;
  }
}
@media only screen and (min-width: 768px) {
  .company-access-world .company-access-world__item.-euro {
    background-image: url("../img/company/access/img_map_euro.png");
    float: right;
    padding-right: 0;
    padding-left: 10px;
    height: 496px;
  }
}
@media only screen and (min-width: 768px) {
  .company-access-world .company-access-world__item.-indonesia {
    height: 222px;
    background-image: url("../img/company/access/img_map_indonesia.png");
    background-position: left bottom;
  }
}

.company-access .company-access__item {
  line-height: 1.75;
  border-bottom: 1px solid #ccc;
  padding: 20px 0;
  margin-top: 15px;
}
@media only screen and (max-width: 767px) {
  .company-access .company-access__item {
    padding: 10px 0;
    margin-top: 10px;
  }
}
.company-access .company-access__item:first-child {
  margin-top: 0;
  padding-top: 0;
}
.company-access .company-access__item .company-access__head {
  display: flex;
  align-items: center;
}
@media only screen and (min-width: 768px) {
  .company-access .company-access__item .company-access__head {
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .company-access .company-access__item .company-access__head {
    margin-bottom: 5px;
  }
}
.company-access .company-access__item .company-access__head a {
  text-decoration: underline;
  color: #0f63b8;
  margin-left: 20px;
}
@media (hover: hover) {
  .company-access .company-access__item .company-access__head a:hover {
    text-decoration: none;
  }
}
.company-access .company-access__item .company-access__title {
  color: #0f63b8;
}
@media only screen and (min-width: 768px) {
  .company-access .company-access__item .company-access__title {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .company-access .company-access__item .company-access__title {
    font-size: 1rem;
  }
}
.company-access .company-access__item .company-access__desc {
  margin-bottom: 10px;
}
.company-access .company-access__item .company-access__gmap {
  margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  .company-access .company-access__item .company-access__gmap {
    margin-bottom: 6px;
  }
}
.company-access .company-access__item .company-access__gmap iframe {
  width: 100%;
  height: 400px;
}
@media only screen and (max-width: 767px) {
  .company-access .company-access__item .company-access__gmap iframe {
    height: 250px;
  }
}

.page-business .com-sec {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  .page-business .com-sec {
    margin-top: 30px;
  }
}
.page-business .com-sec:first-child {
  margin-top: 0;
}
.page-business .bg-gray {
  margin-top: 40px;
  padding: 45px 0;
  background: #f4f4f4;
}
@media only screen and (max-width: 767px) {
  .page-business .bg-gray {
    margin-top: 20px;
    padding: 20px 0;
  }
}

.business-main .com-sec__title {
  line-height: 1.45;
}
.business-main .business-main__image {
  position: relative;
  text-align: center;
  padding: 30px 0;
  margin-bottom: 30px;
  background: url("../img/business/bg_main.jpg") no-repeat center/cover;
}
@media only screen and (max-width: 767px) {
  .business-main .business-main__image {
    padding: 20px 10px;
    margin-bottom: 20px;
  }
}
.business-main .business-main__image img {
  max-width: 100%;
  height: auto;
}

.business-excerpt {
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  .business-excerpt {
    margin-top: 40px;
  }
}
.business-excerpt .business-excerpt__item {
  padding: 30px 0;
  border-bottom: 1px solid #0f62b6;
}
@media only screen and (max-width: 767px) {
  .business-excerpt .business-excerpt__item {
    padding: 15px 0;
  }
}
.business-excerpt .business-excerpt__item:first-child {
  padding-top: 0;
}
.business-excerpt .business-excerpt__item a {
  text-decoration: none;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .business-excerpt .business-excerpt__item a {
    display: flex;
    justify-content: center;
  }
}
.business-excerpt .business-excerpt__item a:after {
  position: absolute;
  display: block;
  content: "";
  width: 18px;
  height: 30px;
  background: url("../img/business/icn_arrow.png") no-repeat center;
  right: 20px;
  top: 50%;
  transform: translate(0, -50%);
}
.business-excerpt .business-excerpt__item a:hover {
  opacity: 0.6;
}
.business-excerpt .business-excerpt__title {
  position: absolute;
  text-align: center;
  line-height: 1.25;
  left: 0;
  top: 0;
  background: #0f63b6;
  color: #fff;
  width: 100%;
  padding: 18px 0;
}
@media only screen and (min-width: 768px) {
  .business-excerpt .business-excerpt__title {
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .business-excerpt .business-excerpt__title {
    font-size: 1.1rem;
  }
}
.business-excerpt .business-excerpt__image {
  width: 32.5%;
  position: relative;
  margin-right: auto;
}
@media only screen and (max-width: 767px) {
  .business-excerpt .business-excerpt__image {
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 10px;
  }
}
.business-excerpt .business-excerpt__image img {
  width: 100%;
  height: auto;
}
.business-excerpt .business-excerpt__text {
  width: 65.5%;
  line-height: 1.75;
  box-sizing: border-box;
  padding-right: 100px;
}
@media only screen and (max-width: 767px) {
  .business-excerpt .business-excerpt__text {
    width: 100%;
    box-sizing: border-box;
    padding-right: 0;
  }
}

.page-business-detail .bg-gray {
  background: #f4f4f4;
  padding: 50px 0;
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  .page-business-detail .bg-gray {
    padding: 25px 0;
    margin-top: 40px;
  }
}

.sec-business-detail-outline .com-full-image {
  margin-bottom: 25px;
}
@media only screen and (max-width: 767px) {
  .sec-business-detail-outline .com-full-image {
    margin-bottom: 15px;
  }
}
.sec-business-detail-outline .com-text {
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  .sec-business-detail-outline .com-text {
    margin-bottom: 20px;
  }
}

.business-product-row {
  margin-bottom: 55px;
}
@media only screen and (max-width: 767px) {
  .business-product-row {
    margin-bottom: 30px;
  }
}
.business-product-row:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .business-product-row.-col-3 {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
  }
}
@media only screen and (min-width: 768px) {
  .business-product-row.-col-3 .business-product-cell {
    width: 33.3333%;
    box-sizing: border-box;
    padding: 0 10px;
  }
}
@media only screen and (max-width: 767px) {
  .business-product-row.-col-3 .business-product-cell {
    margin-bottom: 15px;
  }
}

.business-product-cell .business-product-cell__image {
  margin-bottom: 10px;
}
.business-product-cell .business-product-cell__image img {
  width: 100%;
  height: auto;
}
.business-product-cell .business-product-cell__name {
  text-align: center;
  line-height: 1.25;
}
@media only screen and (min-width: 768px) {
  .business-product-cell .business-product-cell__name {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .business-product-cell .business-product-cell__name {
    font-size: 0.9rem;
  }
}

.business-product-feature .business-product-feature__title {
  color: #0f63b6;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #ccc;
}
@media only screen and (min-width: 768px) {
  .business-product-feature .business-product-feature__title {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .business-product-feature .business-product-feature__title {
    margin-bottom: 10px;
    padding-bottom: 10px;
    font-size: 1rem;
  }
}
.business-product-feature .business-product-feature__desc {
  line-height: 1.75;
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  .business-product-feature .business-product-feature__desc {
    margin-bottom: 20px;
  }
}

.sec-business-detail-field .com-text {
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  .sec-business-detail-field .com-text {
    margin-bottom: 20px;
  }
}

@media only screen and (min-width: 768px) {
  .business-detail-field {
    display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
  }
}
.business-detail-field .business-detail-field__item {
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .business-detail-field .business-detail-field__item {
    padding: 0 15px;
    width: 50%;
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .business-detail-field .business-detail-field__item {
    margin-bottom: 20px;
  }
}
.business-detail-field .business-detail-field__title {
  margin-bottom: 10px;
  color: #0f63b6;
}
@media only screen and (min-width: 768px) {
  .business-detail-field .business-detail-field__title {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .business-detail-field .business-detail-field__title {
    font-size: 1rem;
  }
}
.business-detail-field .business-detail-field__image {
  margin-bottom: 10px;
}
@media only screen and (min-width: 768px) {
  .business-detail-field .business-detail-field__image img {
    max-height: 100%;
    max-width: 100%;
    height: auto;
  }
}
@media only screen and (max-width: 767px) {
  .business-detail-field .business-detail-field__image img {
    width: 100%;
    height: auto;
  }
}
.business-detail-field .business-detail-field__desc {
  line-height: 1.5;
}

.business-contact {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  .business-contact {
    margin-top: 20px;
  }
}
.business-contact.-border-blue .business-contact__item {
  border-bottom: 1px solid #0f63b6;
}
.business-contact .business-contact__item {
  color: #0f63b6;
  border-bottom: 1px solid #ccc;
  box-sizing: border-box;
  padding: 20px 10px;
}
.business-contact .business-contact__item:after {
  content: "";
  display: table;
  clear: both;
}
@media only screen and (max-width: 767px) {
  .business-contact .business-contact__item {
    padding: 10px 10px;
  }
}
.business-contact .business-contact__title {
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .business-contact .business-contact__title {
    font-size: 1.25rem;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .business-contact .business-contact__title {
    font-size: 1rem;
    margin-bottom: 10px;
  }
}
.business-contact .business-contact__addr {
  line-height: 1.25;
}
@media only screen and (min-width: 768px) {
  .business-contact .business-contact__addr {
    float: left;
  }
}
@media only screen and (max-width: 767px) {
  .business-contact .business-contact__addr {
    margin-bottom: 5px;
  }
}
.business-contact .business-contact__numbers {
  line-height: 1.25;
}
@media only screen and (min-width: 768px) {
  .business-contact .business-contact__numbers {
    float: right;
  }
}

.page-business-strength .com-action__btn {
  width: 360px;
}
@media only screen and (max-width: 767px) {
  .page-business-strength .com-action__btn {
    width: 100%;
  }
}

.page-business-feature .bg-blue {
  background: #0f62b8;
  margin-top: 60px;
  padding: 60px 0;
}
@media only screen and (max-width: 767px) {
  .page-business-feature .bg-blue {
    margin-top: 30px;
    padding: 30px 0;
  }
}
.page-business-feature .bg-blue .cnt-sub {
  background: url("../img/business/feature/bg_euro.png") no-repeat center bottom/contain;
}
@media only screen and (max-width: 767px) {
  .page-business-feature .bg-blue .cnt-sub {
    background-position: center;
  }
}

.business-feature .business-feature__title {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .business-feature .business-feature__title {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 767px) {
  .business-feature .business-feature__title {
    font-size: 1.3333333333rem;
  }
}
.business-feature .business-feature__number-1 {
  color: #b1861b;
  text-align: center;
  position: relative;
  margin-top: 10px;
  font-weight: bold;
}
.business-feature .business-feature__number-1:before {
  display: inline-block;
  vertical-align: middle;
  content: "";
  width: 93px;
  height: 119px;
  margin-right: 10px;
  position: relative;
  top: -5px;
  background: url("../img/business/feature/img_medal.png") no-repeat center/93px 119px;
}
@media only screen and (max-width: 767px) {
  .business-feature .business-feature__number-1:before {
    width: 46px;
    height: 59px;
    background-size: 46px auto;
  }
}
@media only screen and (min-width: 768px) {
  .business-feature .business-feature__number-1 {
    font-size: 3.75rem;
  }
}
@media only screen and (max-width: 767px) {
  .business-feature .business-feature__number-1 {
    font-size: 1.6666666667rem;
  }
}
.business-feature .business-feature__img {
  text-align: center;
  margin-top: -20px;
  min-height: 520px;
  box-sizing: border-box;
  padding-bottom: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: url("../img/business/feature/bg_feature.png") no-repeat center;
}
.business-feature .business-feature__img img {
  max-width: 100%;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .business-feature .business-feature__img {
    min-height: 0;
    margin-top: 10px;
    padding: 0 30px 30px;
    background-size: contain;
  }
}
.business-feature .com-action {
  margin-top: -20px;
}
@media only screen and (max-width: 767px) {
  .business-feature .com-action {
    margin-top: 0;
  }
}
.business-feature .com-action .com-action__btn {
  width: 360px;
}
@media only screen and (max-width: 767px) {
  .business-feature .com-action .com-action__btn {
    width: 100%;
  }
}

.euro-company .euro-company__title {
  color: #fff;
  font-weight: bold;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .euro-company .euro-company__title {
    margin-bottom: 80px;
    font-size: 3.75rem;
  }
}
@media only screen and (max-width: 767px) {
  .euro-company .euro-company__title {
    margin-bottom: 30px;
    font-size: 1.6666666667rem;
  }
}
.euro-company .euro-company__title span {
  color: #fd8225;
  font-weight: bold;
}

.euro-company-country {
  text-align: center;
  letter-spacing: -0.4em;
}
.euro-company-country .euro-company-country__item {
  color: #fff;
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  margin: 0 15px 50px;
}
@media only screen and (max-width: 767px) {
  .euro-company-country .euro-company-country__item {
    margin: 0 10px 30px;
  }
}
.euro-company-country .euro-company-country__item:nth-child(1) {
  width: 210px;
  margin-right: 20px;
}
@media only screen and (max-width: 767px) {
  .euro-company-country .euro-company-country__item:nth-child(1) {
    width: auto;
    margin-right: 10px;
  }
}
.euro-company-country .euro-company-country__item:nth-child(n+2):nth-child(-n+5) {
  margin: 0 20px 50px;
}
@media only screen and (max-width: 767px) {
  .euro-company-country .euro-company-country__item:nth-child(n+2):nth-child(-n+5) {
    margin: 0 10px 30px;
  }
}
.euro-company-country .euro-company-country__item:nth-child(n+2):nth-child(-n+5) .euro-company-country__name {
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .euro-company-country .euro-company-country__item:nth-child(n+2):nth-child(-n+5) .euro-company-country__name {
    margin-bottom: 8px;
  }
}
.euro-company-country .euro-company-country__number {
  font-weight: bold;
  margin-bottom: 8px;
}
@media only screen and (min-width: 768px) {
  .euro-company-country .euro-company-country__number {
    font-size: 2.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .euro-company-country .euro-company-country__number {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .euro-company-country .euro-company-country__number span {
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .euro-company-country .euro-company-country__number span {
    font-size: 1.1rem;
  }
}
.euro-company-country .euro-company-country__name {
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .euro-company-country .euro-company-country__name {
    margin-bottom: 15px;
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .euro-company-country .euro-company-country__name {
    margin-bottom: 8px;
    font-size: 1rem;
  }
}

.euro-company-country-ship {
  letter-spacing: -0.4em;
}
.euro-company-country-ship .euro-company-country-ship__item {
  letter-spacing: normal;
  display: inline-block;
  width: 12px;
  height: 10px;
  margin: 0 3px;
  background: url("../img/business/feature/icn_ship.png") no-repeat left top/12px auto;
}
@media only screen and (max-width: 767px) {
  .euro-company-country-ship .euro-company-country-ship__item {
    width: 6px;
    height: 5px;
    margin: 0 2px;
    background-size: 6px auto;
  }
}
.euro-company-country-ship .euro-company-country-ship__item.-l1 {
  width: 28px;
  height: 22px;
  margin: 0 3px;
  background-size: 28px auto;
}
@media only screen and (max-width: 767px) {
  .euro-company-country-ship .euro-company-country-ship__item.-l1 {
    width: 14px;
    height: 11px;
    margin: 0 2px;
    background-size: 14px auto;
  }
}
.euro-company-country-ship .euro-company-country-ship__item.-l2 {
  width: 63px;
  height: 50px;
  margin: 0 4px 5px;
  background-size: 63px auto;
}
@media only screen and (max-width: 767px) {
  .euro-company-country-ship .euro-company-country-ship__item.-l2 {
    width: 31px;
    height: 25px;
    margin: 0 2px 3px;
    background-size: 31px auto;
  }
}
.euro-company-country-ship .euro-company-country-ship__item.-l3 {
  width: 103px;
  height: 81px;
  margin: 0 5px 10px;
  background-size: 103px auto;
}
@media only screen and (max-width: 767px) {
  .euro-company-country-ship .euro-company-country-ship__item.-l3 {
    width: 51px;
    height: 40px;
    margin: 0 3px 5px;
    background-size: 51px auto;
  }
}

.page-product-support .com-sec {
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  .page-product-support .com-sec {
    margin-bottom: 25px;
  }
}
.page-product-support .com-full-image {
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  .page-product-support .com-full-image {
    margin-bottom: 10px;
  }
}
.page-product-support .bg-gray {
  background: #f5f5f5;
  padding: 50px 0;
  margin: 50px 0;
}
@media only screen and (max-width: 767px) {
  .page-product-support .bg-gray {
    padding: 25px 0;
    margin: 25px 0;
  }
}
.page-product-support .bg-gray .com-sec {
  margin-bottom: 0;
}

.sec-product-support-1 .com-text {
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  .sec-product-support-1 .com-text {
    margin-bottom: 25px;
  }
}

.sec-product-support-2 .com-text {
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  .sec-product-support-2 .com-text {
    margin-bottom: 25px;
  }
}

.sec-product-support-3 .com-text {
  margin-bottom: 15px;
}
.sec-product-support-3 .com-strong-list {
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  .sec-product-support-3 .com-strong-list {
    margin-bottom: 10px;
  }
}

.sec-product-support-4 .com-action {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  .sec-product-support-4 .com-action {
    margin-top: 20px;
  }
}
.sec-product-support-4 .com-action .com-action__btn {
  width: 500px;
}
@media only screen and (max-width: 767px) {
  .sec-product-support-4 .com-action .com-action__btn {
    width: 100%;
  }
}

.recruit-requirements {
  margin-top: 100px;
}
@media only screen and (max-width: 767px) {
  .recruit-requirements {
    margin-top: 50px;
  }
}

.recruit-requirements-table {
  width: 100%;
}
.recruit-requirements-table th,
.recruit-requirements-table td {
  padding: 15px 0;
  line-height: 1.75;
  border-bottom: 1px solid #cbcbcb;
}
@media only screen and (max-width: 767px) {
  .recruit-requirements-table th,
  .recruit-requirements-table td {
    padding: 8px 0;
  }
}
.recruit-requirements-table th {
  width: 150px;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .recruit-requirements-table th {
    width: 80px;
  }
}

.recruit-process {
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  .recruit-process {
    margin-top: 40px;
  }
}
.recruit-process .recruit-process__sub-title {
  color: #05458a;
  text-align: center;
  margin-bottom: 30px;
}
@media only screen and (min-width: 768px) {
  .recruit-process .recruit-process__sub-title {
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-process .recruit-process__sub-title {
    margin-bottom: 15px;
    font-size: 1.1rem;
  }
}
.recruit-process .recruit-process__link {
  margin-top: 50px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .recruit-process .recruit-process__link {
    margin-top: 25px;
  }
}

.recruit-process-flow {
  width: 700px;
  margin: 0 auto;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  .recruit-process-flow {
    width: auto;
  }
}
.recruit-process-flow .recruit-process-flow__title {
  color: #fff;
  margin-bottom: 10px;
  text-align: center;
  font-weight: bold;
  background: #05458a;
  padding: 5px 0;
}
@media only screen and (min-width: 768px) {
  .recruit-process-flow .recruit-process-flow__title {
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-process-flow .recruit-process-flow__title {
    margin-bottom: 5px;
    font-size: 1.1rem;
  }
}
.recruit-process-flow .recruit-process-flow__desc {
  padding-bottom: 38px;
  text-align: center;
  margin-bottom: 10px;
  background: url("../img/recruit/new_graduate/icn_arrow_down.png") no-repeat center bottom;
}
@media only screen and (max-width: 767px) {
  .recruit-process-flow .recruit-process-flow__desc {
    margin-bottom: 10px;
    padding-bottom: 19px;
    background-size: 23px auto;
  }
}
.recruit-process-flow .recruit-process-flow__desc:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  background: none;
}

.free-word-list .free-word-list__item {
  border-bottom: 1px solid #dedede;
}
@media only screen and (min-width: 768px) {
  .free-word-list .free-word-list__item {
    padding: 30px 0;
  }
}
@media only screen and (max-width: 767px) {
  .free-word-list .free-word-list__item {
    padding: 15px 0;
  }
}
.free-word-list .free-word-list__item a:hover {
  text-decoration: none;
}
.free-word-list .free-word-list__item:first-child {
  padding-top: 0;
}
.free-word-list .free-word-list__item .free-word-list__title {
  color: #0f62b8;
}
@media only screen and (min-width: 768px) {
  .free-word-list .free-word-list__item .free-word-list__title {
    font-size: 1.625rem;
    font-weight: bold;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .free-word-list .free-word-list__item .free-word-list__title {
    font-size: 1.3rem;
    margin-bottom: 10px;
  }
}
@media only screen and (min-width: 768px) {
  .free-word-list .free-word-list__item .free-word-list__date {
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .free-word-list .free-word-list__item .free-word-list__date {
    margin-bottom: 7px;
  }
}
.free-word-list .free-word-list__item .free-word-list__data {
  line-height: 1.5;
}

@media only screen and (min-width: 768px) {
  .recruit-career-sec {
    margin-bottom: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-career-sec {
    margin-bottom: 30px;
  }
}
.recruit-career-sec .com-sec__title {
  line-height: 1.5;
}

@media only screen and (min-width: 768px) {
  .recruit-career-list {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
  }
}
.recruit-career-list .recruit-career-list__item {
  border: 1px solid #bbb;
}
@media only screen and (min-width: 768px) {
  .recruit-career-list .recruit-career-list__item {
    min-width: 220px;
    margin-left: -1px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-career-list .recruit-career-list__item {
    margin-top: -1px;
  }
}
.recruit-career-list .recruit-career-list__item a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #0663ba;
}
@media only screen and (min-width: 768px) {
  .recruit-career-list .recruit-career-list__item a {
    font-size: 1.125rem;
    min-height: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-career-list .recruit-career-list__item a {
    font-size: 0.9rem;
    padding: 10px;
  }
}
.recruit-career-list .recruit-career-list__item a:after {
  display: block;
  width: 12px;
  height: 19px;
  content: "";
  background: url("../img/common/icn_arrow_right_08.png") no-repeat left top;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
  .recruit-career-list .recruit-career-list__item a:after {
    right: 5px;
    width: 6px;
    height: 9px;
    background-size: 6px auto;
  }
}
.recruit-career-list .recruit-career-list__item a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.recruit-career-list .recruit-career-list__item a.active {
  background: #0663ba;
  color: #fff;
}
.recruit-career-list .recruit-career-list__item a.active:after {
  display: none;
}
.recruit-career-list .recruit-career-list__item a.disabled {
  color: #bbb;
  pointer-events: none;
}
.recruit-career-list .recruit-career-list__item a.disabled:after {
  display: none;
}

@media only screen and (min-width: 768px) {
  .recruit-career-cnt {
    display: flex;
  }
}

@media only screen and (min-width: 768px) {
  .recruit-career-map {
    width: 520px;
    margin-right: auto;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-career-map {
    margin-bottom: 20px;
  }
}
.recruit-career-map img {
  max-width: 100%;
  height: auto;
}

@media only screen and (min-width: 768px) {
  .recruit-career-sub-list {
    width: 520px;
  }
}
.recruit-career-sub-list .recruit-career-sub-list__item {
  border-bottom: 1px solid #0663ba;
}
@media only screen and (min-width: 768px) {
  .recruit-career-sub-list .recruit-career-sub-list__item {
    padding: 20px 0;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-career-sub-list .recruit-career-sub-list__item {
    padding: 10px 0;
  }
}
.recruit-career-sub-list .recruit-career-sub-list__item:first-child {
  padding-top: 0;
}
.recruit-career-sub-list .recruit-career-sub-list__item a {
  position: relative;
  display: block;
}
.recruit-career-sub-list .recruit-career-sub-list__item a:after {
  display: block;
  width: 12px;
  height: 19px;
  content: "";
  background: url("../img/common/icn_arrow_right_08.png") no-repeat left top;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
  .recruit-career-sub-list .recruit-career-sub-list__item a:after {
    right: 10px;
    width: 6px;
    height: 9px;
    background-size: 6px auto;
  }
}
.recruit-career-sub-list .recruit-career-sub-list__item a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.recruit-career-sub-list .recruit-career-sub-list__item a.disabled {
  pointer-events: none;
}
.recruit-career-sub-list .recruit-career-sub-list__item a.disabled:after {
  display: none;
}
.recruit-career-sub-list .recruit-career-sub-list__item a.disabled .recruit-career-sub-list__title {
  color: #bbb;
}
.recruit-career-sub-list .recruit-career-sub-list__title {
  line-height: 1.25;
  color: #0663ba;
}
@media only screen and (min-width: 768px) {
  .recruit-career-sub-list .recruit-career-sub-list__title {
    font-size: 1.25rem;
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-career-sub-list .recruit-career-sub-list__title {
    font-size: 1rem;
    margin-bottom: 5px;
  }
}
.recruit-career-sub-list .recruit-career-sub-list__desc {
  line-height: 1.5;
}

.recruit-career-table {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .recruit-career-table {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-career-table tbody {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-career-table tr {
    display: block;
  }
}
.recruit-career-table td,
.recruit-career-table th {
  line-height: 1.6;
}
@media only screen and (min-width: 768px) {
  .recruit-career-table td,
  .recruit-career-table th {
    padding: 12px 0;
    border-bottom: 1px solid #ccc;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-career-table td,
  .recruit-career-table th {
    display: block;
  }
}
.recruit-career-table th {
  color: #0664ba;
  text-align: left;
}
@media only screen and (min-width: 768px) {
  .recruit-career-table th {
    width: 185px;
  }
}
@media only screen and (max-width: 767px) {
  .recruit-career-table td {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid #ccc;
  }
}

@media only screen and (min-width: 768px) {
  .site-map__row {
    display: flex;
    align-items: flex-start;
  }
}
@media only screen and (min-width: 768px) {
  .site-map__row .site-map__col {
    width: calc(50% - 23px);
  }
}
@media only screen and (min-width: 768px) {
  .site-map__row .site-map__col:first-child {
    margin-right: auto;
  }
}

.site-map-list .site-map-list__item {
  padding-bottom: 25px;
  margin-bottom: 25px;
  border-bottom: 1px solid #ccc;
}
@media only screen and (max-width: 767px) {
  .site-map-list .site-map-list__item {
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
}
.site-map-list .site-map-list__title {
  line-height: 1.5;
  color: #0664b8;
}
@media only screen and (min-width: 768px) {
  .site-map-list .site-map-list__title {
    font-size: 1.625rem;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .site-map-list .site-map-list__title {
    font-size: 1.3rem;
    margin-bottom: 5px;
  }
}

.site-map-link-list li {
  line-height: 1.5;
}
@media only screen and (min-width: 768px) {
  .site-map-link-list li {
    font-size: 1.25rem;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .site-map-link-list li {
    font-size: 1rem;
    margin-bottom: 5px;
  }
}

.sec-product-order-1 .com-text {
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  .sec-product-order-1 .com-text {
    margin-bottom: 20px;
  }
}

.sec-product-order-2 .com-text {
  margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  .sec-product-order-2 .com-text {
    margin-bottom: 20px;
  }
}

@media only screen and (min-width: 768px) {
  .order-list .order-list__item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .order-list .order-list__item {
    margin-bottom: 20px;
  }
}
@media only screen and (min-width: 768px) {
  .order-list .order-list__img {
    width: calc(50% - 15px);
    margin-right: auto;
  }
}
@media only screen and (max-width: 767px) {
  .order-list .order-list__img {
    margin-bottom: 10px;
  }
}
.order-list .order-list__img img {
  max-width: 100%;
  height: auto;
}
.order-list .order-list__data {
  line-height: 1.5;
}
@media only screen and (min-width: 768px) {
  .order-list .order-list__data {
    width: calc(50% - 15px);
  }
}
.order-list .order-list__title {
  color: #0664b9;
}
@media only screen and (min-width: 768px) {
  .order-list .order-list__title {
    font-size: 1.25rem;
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .order-list .order-list__title {
    font-size: 1rem;
    margin-bottom: 5px;
  }
}
.order-list .order-list__sub-title {
  border-bottom: 1px solid #ccc;
}
@media only screen and (min-width: 768px) {
  .order-list .order-list__sub-title {
    font-size: 1.125rem;
    margin-bottom: 8px;
    padding-bottom: 8px;
  }
}
@media only screen and (max-width: 767px) {
  .order-list .order-list__sub-title {
    font-size: 0.9rem;
    margin-bottom: 4px;
    padding-bottom: 4px;
  }
}
@media only screen and (min-width: 768px) {
  .order-list .order-list__desc {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .order-list .order-list__desc {
    margin-bottom: 10px;
  }
}

@media only screen and (max-width: 767px) {
  .productLayout1 {
    font-size: 14px;
  }
}
.productLayout1 .product-main {
  padding-bottom: 20px;
}
.productLayout1 .com-sec__title {
  margin-bottom: 105px;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .com-sec__title {
    margin-bottom: 70px;
  }
}
.productLayout1 .com-sec__title:after {
  width: 153px;
  bottom: -25px;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .com-sec__title:after {
    bottom: -15px;
  }
}
.productLayout1__lead {
  color: #0f63b8;
  font-size: 1.875rem;
  font-weight: bold;
  line-height: 1.25;
  margin: 110px auto 60px auto;
}
@media only screen and (max-width: 767px) {
  .productLayout1__lead {
    font-size: 1.428571em;
    margin: 50px auto 30px auto;
  }
}
.productLayout1__mainWrap {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .productLayout1__mainWrap {
    flex-wrap: wrap;
  }
}
.productLayout1__merit {
  width: 494px;
  padding: 50px 30px;
  border: 1px #323232 solid;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .productLayout1__merit {
    width: 100%;
    padding: 25px 10px;
    order: 2;
  }
}
.productLayout1__merit h2 {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  .productLayout1__merit h2 {
    font-size: 1.285714rem;
    margin-bottom: 15px;
  }
}
.productLayout1__merit ul li {
  line-height: 1.2;
  padding-left: 28px;
  position: relative;
}
.productLayout1__merit ul li:before {
  content: "";
  background-image: url(../img/product/icon_check.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 18px;
  height: 16px;
  position: absolute;
  top: 1px;
  left: 0;
}
.productLayout1__merit ul li + li {
  margin-top: 15px;
}
@media only screen and (max-width: 767px) {
  .productLayout1__merit ul li + li {
    margin-top: 10px;
  }
}
.productLayout1__img {
  width: 563px;
  margin-left: 43px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .productLayout1__img {
    width: 80%;
    margin: 0 auto;
    order: 1;
  }
}
.productLayout1__img figure {
  border: 1px #bbbbbb solid;
}
.productLayout1__img figure img {
  width: auto;
  max-width: 100%;
}
.productLayout1 .product-link {
  margin: 15px 0 0 auto;
  justify-content: flex-end;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-link {
    justify-content: center;
    flex-wrap: wrap;
  }
}
.productLayout1 .product-link .produce-link__item {
  min-width: 225px;
  height: 52px;
  font-size: 0.906875rem;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-link .produce-link__item {
    width: calc(20% - 10px);
  }
}
.productLayout1 .product-spec {
  padding: 100px 0;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-spec {
    padding: 50px 0;
  }
}
.productLayout1 .product-spec h4 {
  line-height: 1.6;
  text-align: left;
  margin-bottom: 10px;
}
.productLayout1 .product-spec dl {
  width: 100%;
  line-height: 1.6;
  padding: 20px 50px;
  display: flex;
  align-items: center;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-spec dl {
    padding: 10px 15px;
    display: block;
  }
}
.productLayout1 .product-spec dl:nth-of-type(odd) {
  background-color: #e0e0e0;
}
.productLayout1 .product-spec dl dt {
  width: 260px;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-spec dl dt {
    width: 100%;
  }
}
.productLayout1 .product-spec dl dd {
  width: calc(100% - 260px);
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-spec dl dd {
    width: 100%;
    margin-top: 5px;
  }
}
.productLayout1 .product-spec dl dd > * {
  font-weight: bold;
}
.productLayout1 .product-spec table {
  width: 100%;
  line-height: 1.6;
}
.productLayout1 .product-spec table tr:first-of-type th,
.productLayout1 .product-spec table tr:first-of-type td {
  border-top: 1px #333333 solid;
  border-bottom: 1px #333333 solid;
}
.productLayout1 .product-spec table tr:nth-of-type(even) th,
.productLayout1 .product-spec table tr:nth-of-type(even) td {
  background-color: #e0e0e0;
}
.productLayout1 .product-spec table th {
  width: 260px;
  font-weight: bold;
  vertical-align: middle;
  padding: 20px 50px;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-spec table th {
    width: auto;
    padding: 10px 15px;
  }
}
.productLayout1 .product-spec table td {
  width: auto;
  font-weight: bold;
  vertical-align: middle;
  padding: 20px 50px 20px 0;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-spec table td {
    padding: 10px 15px 10px 0;
  }
}
.productLayout1 .product-spec table td > * {
  font-weight: bold;
}
.productLayout1 .product-spec * + h4 {
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-spec * + h4 {
    margin-top: 30px;
  }
}
.productLayout1 .product-spec__text {
  line-height: 1.75;
  margin-top: 30px;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-spec__text {
    margin-top: 10px;
  }
}
.productLayout1__inpageNav {
  width: 100%;
  margin-top: 50px;
}
@media only screen and (max-width: 767px) {
  .productLayout1__inpageNav {
    margin-top: 20px;
  }
}
.productLayout1__inpageNav ul {
  display: flex;
  flex-wrap: wrap;
}
.productLayout1__inpageNav ul li {
  width: 33.3333333333%;
  height: 85px;
  border: 1px #bbbbbb solid;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .productLayout1__inpageNav ul li {
    width: 50%;
    height: 45px;
  }
}
.productLayout1__inpageNav ul li:not(:nth-of-type(3n + 1)) {
  border-left: none;
}
@media only screen and (max-width: 767px) {
  .productLayout1__inpageNav ul li:not(:nth-of-type(3n + 1)) {
    border-left: 1px #bbbbbb solid;
  }
}
.productLayout1__inpageNav ul li:nth-of-type(n + 4) {
  border-top: none;
}
@media only screen and (max-width: 767px) {
  .productLayout1__inpageNav ul li:nth-of-type(even) {
    border-left: none;
  }
}
@media only screen and (max-width: 767px) {
  .productLayout1__inpageNav ul li:nth-of-type(n + 3) {
    border-top: none;
  }
}
.productLayout1__inpageNav ul li a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.productLayout1__inpageNav ul li a:before {
  content: "";
  width: 12px;
  height: 12px;
  box-sizing: border-box;
  position: absolute;
  border-right: 1px #0f63b8 solid;
  border-bottom: 1px #0f63b8 solid;
  top: 0;
  bottom: 0;
  left: 15px;
  margin: auto;
  transform: rotate(45deg);
}
@media only screen and (max-width: 767px) {
  .productLayout1__inpageNav ul li a:before {
    width: 8px;
    height: 8px;
    left: 10px;
  }
}
.productLayout1__inpageNav ul li a:hover {
  opacity: 0.6;
  text-decoration: none;
}
.productLayout1__inpageNav ul li a span {
  color: #0f63b8;
  font-size: 1.125rem;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .productLayout1__inpageNav ul li a span {
    font-size: 1em;
  }
}
.productLayout1 .product-movie {
  padding: 100px 0 80px 0;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-movie {
    padding: 50px 0;
  }
}
.productLayout1 .product-example {
  padding: 100px 0 80px 0;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-example {
    padding: 50px 0;
  }
}
.productLayout1 .product-example .cnt {
  max-width: 1100px;
}
.productLayout1 .product-example-content {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-example-content {
    display: block;
  }
}
.productLayout1 .product-example-content__text {
  width: auto;
}
.productLayout1 .product-example-content__text dl {
  line-height: 1.8;
}
.productLayout1 .product-example-content__text dl + dl {
  margin-top: 3em;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-example-content__text dl + dl {
    margin-top: 1em;
  }
}
.productLayout1 .product-example-content__text dl dt {
  color: #0f63b8;
  font-size: 1.125rem;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-example-content__text dl dt {
    font-size: 1em;
  }
}
.productLayout1 .product-example-content__img {
  width: 276px;
  text-align: center;
  margin-left: 130px;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-example-content__img {
    width: auto;
    margin-left: auto;
  }
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-example-content__img figure {
    margin: 20px auto 0 auto;
  }
}
.productLayout1 .product-example-content__img figure + figure {
  margin-top: 48px;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-example-content__img figure + figure {
    margin-top: 20px;
  }
}
.productLayout1 .product-consideration {
  padding: 100px 0;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-consideration {
    padding: 50px 0;
  }
}
.productLayout1 .product-consideration-text {
  line-height: 1.75;
  text-align: left;
}
.productLayout1 .product-consideration strong {
  font-weight: bold;
}
.productLayout1 .product-result {
  margin: 0 auto;
  padding: 100px 0;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-result {
    padding: 50px 0;
  }
}
.productLayout1 .product-result__list {
  margin-bottom: 90px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-result__list {
    margin-bottom: 30px;
  }
}
.productLayout1 .product-result__list li {
  width: 288px;
  height: 68px;
  margin: 0 10px 25px 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px #0f63b8 solid;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-result__list li {
    height: 45px;
    margin: 0 5px 10px 5px;
  }
}
.productLayout1 .product-result__list li i {
  display: inline-block;
  margin-right: 10px;
}
.productLayout1 .product-qa {
  margin: 0 auto;
  padding: 100px 0 80px 0;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-qa {
    padding: 50px 0;
  }
}
.productLayout1 .product-qa dl {
  width: 100%;
  line-height: 1.8;
  padding: 25px 40px;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-qa dl {
    padding: 10px 15px;
  }
}
.productLayout1 .product-qa dl:nth-of-type(odd) {
  background-color: #f1f1f1;
}
.productLayout1 .product-qa dl dt {
  font-weight: bold;
}
.productLayout1 .product-qa dl dt:before {
  content: "Q.";
  color: #0f63b8;
  float: left;
  padding-right: 0.25em;
}
.productLayout1 .product-qa dl dd:before {
  content: "A.";
  color: #0f63b8;
  font-weight: bold;
  float: left;
  padding-right: 0.25em;
}
.productLayout1 .product-qa dl dd iframe {
  max-width: 100%;
}
.productLayout1 .product-flow .cnt {
  margin: 0 auto;
  padding: 100px 0 120px 0;
  border-bottom: 1px #0f63b8 solid;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-flow .cnt {
    padding: 50px 10px;
  }
}
.productLayout1 .product-flow ul {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-flow ul {
    padding: 0 10px;
    display: block;
  }
}
.productLayout1 .product-flow ul li {
  background-color: #f1f1f1;
  width: calc((100% - 75px) / 4);
  padding: 60px 30px;
  box-sizing: border-box;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-flow ul li {
    width: 100%;
    padding: 20px 10px;
  }
}
.productLayout1 .product-flow ul li + li {
  margin-left: 25px;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-flow ul li + li {
    margin: 25px auto 0 auto;
  }
}
.productLayout1 .product-flow ul li + li:before {
  content: "";
  width: 12px;
  height: 19px;
  box-sizing: border-box;
  border-top: 9.5px transparent solid;
  border-bottom: 9.5px transparent solid;
  border-left: 12px #0f63b8 solid;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -18px;
  margin: auto;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-flow ul li + li:before {
    width: 19px;
    height: 12px;
    box-sizing: border-box;
    border-top: 12px #0f63b8 solid;
    border-bottom: none;
    border-left: 9.5px transparent solid;
    border-right: 9.5px transparent solid;
    top: -18px;
    bottom: auto;
    left: 0;
    right: 0;
  }
}
.productLayout1 .product-flow ul li h4 {
  color: #0f63b8;
  font-size: 1.25rem;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-flow ul li h4 {
    font-size: 1.142857em;
  }
}
.productLayout1 .product-flow ul li i {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 105px;
  height: 82px;
  display: block;
  margin: 20px auto 30px auto;
}
.productLayout1 .product-flow ul li p {
  line-height: 1.5;
}
.productLayout1 .product-flow__text {
  line-height: 1.75;
  margin-top: 50px;
}
@media only screen and (max-width: 767px) {
  .productLayout1 .product-flow__text {
    margin-top: 20px;
  }
}
.productLayout1 .product-flow__flow1 i {
  background-image: url(../img/product/icon_flow01.png);
}
.productLayout1 .product-flow__flow2 i {
  background-image: url(../img/product/icon_flow02.png);
}
.productLayout1 .product-flow__flow3 i {
  background-image: url(../img/product/icon_flow03.png);
}
.productLayout1 .product-flow__flow4 i {
  background-image: url(../img/product/icon_flow04.png);
}

/* 20200329 */
.pickup-section {
  margin-top: 140px;
}
@media only screen and (max-width: 767px) {
  .pickup-section {
    margin-top: 60px;
  }
}

.pickup-links {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  .pickup-links {
    margin-top: 40px;
  }
}
.pickup-links__item {
  text-align: center;
}
.pickup-links__item:nth-of-type(n + 2) {
  margin-top: 20px;
}
.pickup-links__item p {
  line-height: 1;
  margin-bottom: 10px;
}
.pickup-links__item a {
  color: #ffffff;
  background-color: #0f85b6;
  width: 100%;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
}
.pickup-links__item a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.pickup-links__item a span {
  font-size: 1.125rem;
  font-weight: 700;
  position: relative;
}
.pickup-links__item.-pdf a {
  background-color: #b10e12;
}
.pickup-links__item.-pdf a span {
  padding-left: 30px;
}
.pickup-links__item.-pdf a span:before {
  content: "";
  background-image: url(../img/product/icon_pdf2.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 20px;
  height: 21px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.pickup-links--pageBottom {
  max-width: 920px;
  margin: 60px auto 140px auto;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  .pickup-links--pageBottom {
    display: block;
    margin: 40px auto 80px auto;
  }
}
.pickup-links--pageBottom .pickup-links__item {
  width: 100%;
  max-width: 440px;
}
@media only screen and (max-width: 767px) {
  .pickup-links--pageBottom .pickup-links__item {
    max-width: none;
    margin: 0 auto;
  }
}
.pickup-links--pageBottom .pickup-links__item:nth-of-type(n + 2) {
  margin: 0 auto 0 20px;
}
@media only screen and (max-width: 767px) {
  .pickup-links--pageBottom .pickup-links__item:nth-of-type(n + 2) {
    margin: 20px auto 0 auto;
  }
}

.pickup-features {
  background-color: #e6edf4;
  padding: 50px 70px;
}
@media only screen and (max-width: 767px) {
  .pickup-features {
    padding: 20px 10px;
  }
}
.pickup-features li {
  line-height: 1.6;
  padding-left: 28px;
  position: relative;
}
.pickup-features li:before {
  content: "";
  background-image: url(../img/product/icon_check.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 18px;
  height: 16px;
  position: absolute;
  top: 4px;
  left: 0;
}
.pickup-features li + li {
  margin-top: 30px;
}
@media only screen and (max-width: 767px) {
  .pickup-features li + li {
    margin-top: 10px;
  }
}
.pickup-features li strong {
  color: #0054a1;
  font-weight: 700;
}

.pickup-contactAngle__text {
  line-height: 1.75;
}
.pickup-contactAngle__subhead {
  background-color: #ffffff;
  font-size: 1.125rem;
  font-weight: 700;
  margin: 80px auto -0.5em 40px;
  padding: 0 20px;
  display: inline-block;
}
@media only screen and (max-width: 767px) {
  .pickup-contactAngle__subhead {
    margin: 30px auto -0.5em 10px;
    padding: 0 5px;
  }
}
.pickup-contactAngle__links {
  display: flex;
  justify-content: space-around;
  margin: -10px auto 80px auto;
  padding: 40px;
  border: 1px #0f61b6 solid;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .pickup-contactAngle__links {
    margin: -10px auto 30px auto;
    padding: 20px 10px;
  }
}
.pickup-contactAngle__links li {
  width: 100%;
  margin: 0 40px;
}
@media only screen and (max-width: 767px) {
  .pickup-contactAngle__links li {
    margin: 0 5px;
  }
}
.pickup-contactAngle__links .pickup__btn {
  margin-top: 0;
}

.pickup-case {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .pickup-case {
    display: block;
  }
}
.pickup-case__item {
  width: calc((100% - 20px) / 3);
  position: relative;
  padding: 50px 20px 30px 20px;
  display: flex;
  flex-direction: column;
  border: 1px #0f61b6 solid;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .pickup-case__item {
    width: 100%;
    margin: 20px auto 0 auto;
    padding: 20px 10px;
  }
}
.pickup-case__item p {
  background-color: #e8edf2;
  font-weight: bold;
  line-height: 1.5;
  padding: 30px 10px;
  flex-grow: 1;
}
@media only screen and (max-width: 767px) {
  .pickup-case__item p {
    padding: 10px;
  }
}
.pickup-case__title {
  background-color: #ffffff;
  font-size: 1.25rem;
  font-weight: 700;
  padding: 0 10px;
  display: inline-block;
  position: absolute;
  top: -0.5em;
  left: 30px;
}

.pickup-qa {
  line-height: 1.5;
  margin-bottom: 70px;
}
@media only screen and (max-width: 767px) {
  .pickup-qa {
    margin-bottom: 30px;
  }
}
.pickup-qa dt {
  font-weight: bold;
  padding-left: 30px;
  position: relative;
}
.pickup-qa dt:before {
  content: "Q.";
  color: #0f61b6;
  font-size: 1.25rem;
  font-weight: bold;
  position: absolute;
  top: -0.2em;
  left: 0;
}
.pickup-qa dd {
  margin-top: 30px;
  padding-left: 30px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .pickup-qa dd {
    margin-top: 10px;
  }
}
.pickup-qa dd:before {
  content: "A.";
  color: #b10d11;
  font-size: 1.25rem;
  font-weight: bold;
  position: absolute;
  top: -0.2em;
  left: 0;
}
.pickup-qa dd a {
  color: #0f61b6;
  text-decoration: underline;
}

.pickup-contactAngle__table,
.pickup-example__table,
.pickup-spec__table {
  width: 100%;
}

.pickup-contactAngle__table,
.pickup-example__table {
  table-layout: fixed;
}

.pickup-contactAngle__table thead th:nth-of-type(1) {
  width: 20%;
}

.pickup-contactAngle__table thead th img {
  width: auto;
  max-width: 100%;
  display: block;
  margin: 0 auto 20px auto;
}
@media only screen and (max-width: 767px) {
  .pickup-contactAngle__table thead th img {
    margin: 0 auto 10px auto;
  }
}

.pickup-contactAngle__table thead tr > *,
.pickup-example__table thead tr > * {
  font-size: 1.25rem;
  font-weight: bold;
  text-align: center;
  padding: 20px 0;
}
@media only screen and (max-width: 767px) {
  .pickup-contactAngle__table thead tr > *,
  .pickup-example__table thead tr > * {
    padding: 10px 0;
  }
}

.pickup-contactAngle__table tbody tr:nth-of-type(odd),
.pickup-example__table tbody tr:nth-of-type(odd),
.pickup-spec__table tbody tr:nth-of-type(odd) {
  background-color: #dfe5ec;
}

.pickup-contactAngle__table tbody tr > *,
.pickup-example__table tbody tr > *,
.pickup-spec__table tbody tr > * {
  line-height: 1.5;
  text-align: left;
  padding: 30px 50px;
}
@media only screen and (max-width: 767px) {
  .pickup-contactAngle__table tbody tr > *,
  .pickup-example__table tbody tr > *,
  .pickup-spec__table tbody tr > * {
    padding: 10px 15px;
  }
}

.pickup-about__lead {
  line-height: 1.75;
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  .pickup-about__lead {
    margin-bottom: 20px;
  }
}
.pickup-about__nav {
  font-size: 1.125rem;
  line-height: 2;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  .pickup-about__nav {
    margin-bottom: 20px;
  }
}
.pickup-about__nav li {
  margin: 0 20px;
  list-style: disc;
}
.pickup-about__nav li a {
  font-weight: 700;
  position: relative;
}
.pickup-about__nav li a:after {
  content: "";
  background-color: #0054a1;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
}
.pickup-about__nav li a:hover {
  text-decoration: none;
  opacity: 0.7;
}
.pickup-about__article {
  padding: 60px 30px;
}
@media only screen and (max-width: 767px) {
  .pickup-about__article {
    padding: 20px 15px;
  }
}
.pickup-about__article:nth-of-type(odd) {
  background-color: #dfe5ec;
}
.pickup-about__title {
  color: #0054a1;
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  .pickup-about__title {
    margin-bottom: 10px;
  }
}
.pickup-about__subhead {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.2;
  margin: 30px auto 15px 0;
}
@media only screen and (max-width: 767px) {
  .pickup-about__subhead {
    margin: 20px auto 10px 0;
  }
}
.pickup-about__text {
  line-height: 1.75;
}

.pickup-contact__form {
  width: 100%;
  margin: 0 auto;
}
.pickup-contact__form dl {
  margin-top: 20px;
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .pickup-contact__form dl {
    display: block;
  }
}
.pickup-contact__form dl dt {
  width: 160px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .pickup-contact__form dl dt {
    width: 100%;
  }
}
.pickup-contact__form dl dt span {
  color: #ffffff;
  background-color: #0f61b6;
  height: 1.125rem;
  font-size: 0.75rem;
  line-height: 1.125rem;
  margin: auto;
  padding: 0 10px;
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
}
@media only screen and (max-width: 767px) {
  .pickup-contact__form dl dt span {
    position: static;
    margin-left: 10px;
  }
}
.pickup-contact__form dl dd {
  width: calc(100% - 180px);
  margin-left: 20px;
}
@media only screen and (max-width: 767px) {
  .pickup-contact__form dl dd {
    width: 100%;
    margin: 10px auto 0 auto;
  }
}
.pickup-contact__form dl dd:after {
  content: "";
  display: block;
  clear: both;
}
.pickup-contact__form dl dd .mwform-radio-field {
  width: 50%;
  font-size: 1.125rem;
  line-height: 1.5;
  display: block;
  float: left;
}
.pickup-contact__form .mwform-radio-field input[type=radio] {
  transform: scale(1.4);
}

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

.pickup-form__complete {
  line-height: 1.5;
  text-align: center;
}

.pickup__btn {
  color: #ffffff;
  background-color: #0f61b6;
  width: 100%;
  max-width: 440px;
  font-size: 1rem;
  line-height: 60px;
  text-align: center;
  margin: 40px auto 0 auto;
  display: block;
  position: relative;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
}
.pickup__btn:hover {
  text-decoration: none;
  opacity: 0.6;
}
.pickup__btn.-arrow:after {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px #ffffff solid;
  border-right: 2px #ffffff solid;
  box-sizing: border-box;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
}
@media only screen and (max-width: 767px) {
  .pickup__btn.-arrow:after {
    right: 10px;
  }
}
.pickup__btn.-back {
  background-color: #333333;
}

@media only screen and (min-width: 768px) {
  .top-support.-en .sec-header {
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .top-support.-en .sec-header {
    margin-bottom: 15px;
  }
}

@media only screen and (min-width: 768px) {
  .top-about .top-about-list.-en .top-about-list__title {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .top-about .top-about-list.-en .top-about-list__title {
    font-size: 1rem;
  }
}

.search-div {
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  .search-div {
    margin-top: 40px;
  }
}

.product-div {
  margin-top: 50px;
}
@media only screen and (max-width: 767px) {
  .product-div {
    margin-top: 25px;
  }
}
.product-div:first-child {
  margin-top: 0;
}
.product-div .product-div__title {
  color: #0f63b6;
  border-bottom: 1px solid #cbcbcb;
  padding-bottom: 15px;
  margin-bottom: 20px;
}
@media only screen and (min-width: 768px) {
  .product-div .product-div__title {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-div .product-div__title {
    font-size: 1.1666666667rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-div .product-div__title {
    padding-bottom: 10px;
    margin-bottom: 15px;
  }
}
.product-div .product-div__sub-title {
  font-weight: bold;
  line-height: 1.5;
  margin-top: 2em;
  margin-bottom: 0.5em;
}
.product-div .product-div__sub-title:first-child {
  margin-top: 0;
}
@media only screen and (min-width: 768px) {
  .product-div .product-div__sub-title {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-div .product-div__sub-title {
    font-size: 1rem;
  }
}
.product-div .product-div__meta {
  margin-bottom: 30px;
}
.product-div .product-div__meta:after {
  content: "";
  display: table;
  clear: both;
}
@media only screen and (max-width: 767px) {
  .product-div .product-div__meta {
    margin-bottom: 15px;
  }
}
.product-div .product-div__image {
  float: left;
  margin: 0 30px 15px 0;
}
@media only screen and (max-width: 767px) {
  .product-div .product-div__image {
    margin: 0 15px 10px 0;
  }
}
.product-div .product-div__desc {
  line-height: 1.75;
  margin-top: 1em;
}
@media only screen and (min-width: 768px) {
  .product-div .product-div__desc {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-div .product-div__desc {
    font-size: 0.8333333333rem;
  }
}
.product-div .product-div__desc:first-child {
  margin-top: 0;
}

.product-div-image-list {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 -5px;
}
.product-div-image-list .product-div-image-list__item {
  padding: 0 5px;
}
.product-div-image-list .product-div-image-list__item img {
  width: 100%;
  height: auto;
}

.product-div-top {
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  .product-div-top {
    margin-top: 40px;
  }
}
.product-div-top .product-div-top__title {
  font-weight: bold;
  margin-bottom: 50px;
}
@media only screen and (min-width: 768px) {
  .product-div-top .product-div-top__title {
    font-size: 1.625rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-div-top .product-div-top__title {
    font-size: 1.3333333333rem;
    margin-bottom: 25px;
  }
}
.product-div-top .product-div-top__meta {
  display: flex;
}
.product-div-top .product-div-top__image {
  margin: 0 25px 30px 0;
}

.product-div-top-desc {
  line-height: 1.75;
  width: 100%;
}
.product-div-top-desc .product-div-top-desc__title {
  border-bottom: 1px solid #cbcbcb;
  padding-bottom: 10px;
  margin-bottom: 15px;
}
.product-div-top-desc .product-div-top-desc__btn {
  display: block;
  margin-top: 20px;
  padding: 20px;
  text-align: center;
  box-sizing: border-box;
  color: #fff;
  background: #0f63b7;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .product-div-top-desc .product-div-top-desc__btn {
    width: 280px;
  }
}
@media only screen and (max-width: 767px) {
  .product-div-top-desc .product-div-top-desc__btn {
    margin-top: 15px;
    padding: 10px;
  }
}
.product-div-top-desc .product-div-top-desc__btn.-external {
  background: #434343;
}
.product-div-top-desc .product-div-top-desc__btn.-external:after {
  background: url("../img/en/common/icn_external.png") no-repeat left top;
  width: 22px;
  height: 22px;
  right: 8px;
  top: 8px;
  transform: translateY(0);
}
@media only screen and (max-width: 767px) {
  .product-div-top-desc .product-div-top-desc__btn.-external:after {
    background-size: 11px 11px;
    width: 11px;
    height: 11px;
    right: 4px;
    top: 4px;
  }
}
.product-div-top-desc .product-div-top-desc__btn:after {
  content: "";
  background: url("../img/en/common/icn_arrow_01.png") no-repeat left top;
  width: 11px;
  height: 18px;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
  .product-div-top-desc .product-div-top-desc__btn:after {
    right: 10px;
    background-size: 5px 9px;
    width: 5px;
    height: 9px;
  }
}
.product-div-top-desc .product-div-top-desc__btn:hover {
  text-decoration: none;
  opacity: 0.7;
}

.product-div-link .product-div-link__item {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #cbcbcb;
}
@media only screen and (min-width: 768px) {
  .product-div-link .product-div-link__item {
    display: flex;
    align-items: flex-start;
  }
}
@media only screen and (max-width: 767px) {
  .product-div-link .product-div-link__item {
    margin-bottom: 15px;
    padding-bottom: 15px;
  }
}
.product-div-link .product-div-link__title {
  line-height: 1.75;
  margin-right: auto;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .product-div-link .product-div-link__title {
    max-width: calc(100% - 280px);
    padding-right: 30px;
  }
}
.product-div-link .product-div-link__btn {
  display: block;
  padding: 20px;
  text-align: center;
  box-sizing: border-box;
  color: #fff;
  background: #0f63b7;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .product-div-link .product-div-link__btn {
    width: 280px;
  }
}
@media only screen and (max-width: 767px) {
  .product-div-link .product-div-link__btn {
    margin-top: 15px;
    padding: 10px;
  }
}
.product-div-link .product-div-link__btn.-external {
  background: #434343;
}
.product-div-link .product-div-link__btn.-external:after {
  background: url("../img/en/common/icn_external.png") no-repeat left top;
  width: 22px;
  height: 22px;
  right: 8px;
  top: 8px;
  transform: translateY(0);
}
@media only screen and (max-width: 767px) {
  .product-div-link .product-div-link__btn.-external:after {
    background-size: 11px 11px;
    width: 11px;
    height: 11px;
    right: 4px;
    top: 4px;
  }
}
.product-div-link .product-div-link__btn:after {
  content: "";
  background: url("../img/en/common/icn_arrow_01.png") no-repeat left top;
  width: 11px;
  height: 18px;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
  .product-div-link .product-div-link__btn:after {
    right: 10px;
    background-size: 5px 9px;
    width: 5px;
    height: 9px;
  }
}
.product-div-link .product-div-link__btn:hover {
  text-decoration: none;
  opacity: 0.7;
}

.product-name {
  margin: 0 -5px;
  display: flex;
  flex-wrap: wrap;
}
.product-name .product-name__item {
  padding: 0 5px;
  margin: 0 0 10px;
  min-width: 300px;
}
@media only screen and (max-width: 767px) {
  .product-name .product-name__item {
    width: 50%;
    min-width: 0;
    box-sizing: border-box;
  }
}
.product-name .product-name__item a {
  display: block;
  padding: 20px 50px 20px 20px;
  line-height: 1.5;
  text-align: center;
  background: #0f63b7;
  color: #fff;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .product-name .product-name__item a {
    padding: 10px;
  }
}
.product-name .product-name__item a:after {
  content: "";
  background: url("../img/en/common/icn_arrow_01.png") no-repeat left top;
  width: 11px;
  height: 18px;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
  .product-name .product-name__item a:after {
    right: 10px;
    background-size: 5px 9px;
    width: 5px;
    height: 9px;
  }
}
.product-name .product-name__item a:hover {
  text-decoration: none;
  opacity: 0.7;
}

.page-en-product-detail .business-contact {
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  .page-en-product-detail .business-contact {
    margin-top: 40px;
  }
}

.company-about-table.-en th, .company-about-table.-en td {
  border-bottom: 1px dotted #ccc;
}
.company-about-table.-en th {
  width: 200px;
}
@media only screen and (max-width: 767px) {
  .company-about-table.-en th {
    width: 100px;
  }
}

.service-div-top .service-div-top__image {
  float: left;
  margin: 0 25px 20px 0;
}
.service-div-top .service-div-top__desc {
  line-height: 1.75;
}
.service-div-top .service-div-top__desc p {
  margin-top: 1.5em;
}
.service-div-top .service-div-top__desc p:first-child {
  margin-top: 0;
}

.service-div {
  margin-top: 50px;
}
.service-div img {
  max-width: 100%;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .service-div {
    margin-top: 25px;
  }
}
.service-div:first-child {
  margin-top: 0;
}
.service-div .service-div__title {
  color: #0f63b6;
  border-bottom: 1px solid #cbcbcb;
  padding-bottom: 15px;
  margin-bottom: 20px;
}
@media only screen and (min-width: 768px) {
  .service-div .service-div__title {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .service-div .service-div__title {
    font-size: 1.1666666667rem;
  }
}
@media only screen and (max-width: 767px) {
  .service-div .service-div__title {
    padding-bottom: 10px;
    margin-bottom: 15px;
  }
}
.service-div .service-div__desc {
  line-height: 1.75;
}
@media only screen and (min-width: 768px) {
  .service-div .service-div__desc {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .service-div .service-div__desc {
    font-size: 0.8333333333rem;
  }
}
.service-div .com-action__btn {
  padding: 15px;
  width: 300px;
}

.about-service .about-service__title {
  line-height: 1.5;
}
@media only screen and (min-width: 768px) {
  .about-service .about-service__title {
    font-size: 1.625rem;
  }
}
@media only screen and (max-width: 767px) {
  .about-service .about-service__title {
    font-size: 1.3333333333rem;
  }
}
.about-service .about-service__desc {
  margin-top: 40px;
  line-height: 1.75;
}
.about-service .about-service__image {
  margin-top: 50px;
  text-align: center;
}

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