@charset 'UTF-8';
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700');

/* reset - general settings */
html {
  overflow-y: scroll;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}
* {
  margin: 0;
  padding: 0;
}
*,
::before,
::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}
::before,
::after {
  text-decoration: inherit;
  vertical-align: inherit;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}
audio,
canvas,
progress,
video {
  display: inline-block;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: bottom;
}
img {
  border-style: none;
}
svg {
  fill: currentColor;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
button,
input,
optgroup,
select,
textarea {
  font: inherit;
}
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
  border-radius: 0;
  color: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
}
input,
textarea {
  border-radius: 0;
}
button {
  overflow: visible;
  text-transform: none;
}
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  text-transform: none;
}
select::-ms-expand {
  display: none;
}
select::-ms-value {
  color: currentColor;
}
html {
  font-size: 62.5%;
}
body {
  background: #fff;
  color: #222;
  font-family: 'Noto Sans JP', " q   M m p S Pro W3", "Hiragino Kaku Gothic Pro", Meiryo,    C   I, Helvetica, Arial, sans-serif;
  font-size: 1.4rem;
  line-height: 1.6;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
}
a {
  color: #1b365d;
  text-decoration: underline;
}
a:hover {
  text-decoration: none;
}
::-moz-selection {
  background: #1b365d;
  color: #fff;
}
::selection {
  background: #1b365d;
  color: #fff;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
input,
textarea,
select,
option,
button {
  font-size: 1.6rem;
}
a[href],
label[for],
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
input[type="image"],
select,
input[type="radio"],
input[type="checkbox"] {
  cursor: pointer;
}
::-webkit-input-placeholder {
  position: relative;
  top: -1px;
  color: #a3a3a3;
  font-size: 1.2rem;
  opacity: 1;
}
_::-webkit-full-page-media, _:future, :root ::-webkit-input-placeholder {
  position: relative;
  top: 4px;
}
::-moz-placeholder {
  position: relative;
  top: -1px;
  color: #a3a3a3;
  font-size: 1.2rem;
  opacity: 1;
}
:-ms-input-placeholder {
  position: relative;
  top: -1px;
  color: #a3a3a3;
  font-size: 1.2rem;
  opacity: 1;
}
@media screen and (min-width: 768px), print {
  body {
    font-size: 1.6rem;
  }
  
  a img:not(.no-opacity) {
    transition: opacity .2s ease-in-out;
  }
  a:hover img:not(.no-opacity) {
    opacity: .5;
  }
  ::-webkit-input-placeholder {
    font-size: 1.6rem;
  }
  ::-moz-placeholder {
    top: 0;
    font-size: 1.6rem;
  }
  :-ms-input-placeholder {
    top: 0;
    font-size: 1.6rem;
  }
	
/* 会社概要　グループ概要　ページ　株式会社ヒートアンドクール用 */	
 #page-company-group-table-hc
 {background: #DCDCDC;}
		
	
}



/* utility */
.mt-none   { margin-top: 0; }
.mt-xsmall { margin-top: 10px; }
.mt-small  { margin-top: 20px; }
.mt-medium { margin-top: 30px; }
.mt-large  { margin-top: 40px; }
.mt-xlarge { margin-top: 50px; }
.mb-none   { margin-bottom: 0; }
.mb-xsmall { margin-bottom: 10px; }
.mb-small  { margin-bottom: 20px; }
.mb-medium { margin-bottom: 30px; }
.mb-large  { margin-bottom: 40px; }
.mb-xlarge { margin-bottom: 50px; }
.pt-none   { padding-top: 0; }
.pt-xsmall { padding-top: 10px; }
.pt-small  { padding-top: 20px; }
.pt-medium { padding-top: 30px; }
.pt-large  { padding-top: 40px; }
.pt-xlarge { padding-top: 50px; }
.pb-none   { padding-bottom: 0; }
.pb-xsmall { padding-bottom: 10px; }
.pb-small  { padding-bottom: 20px; }
.pb-medium { padding-bottom: 30px; }
.pb-large  { padding-bottom: 40px; }
.pb-xlarge { padding-bottom: 50px; }

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

.sm-hide {
  display: none;
}
.full-image {
  width: 100%;
  max-width: inherit;
}




@media screen and (min-width: 768px), print {
  .sm-hide {
    display: inline;
  }
  .md-hide {
    display: none;
  }
}
@media screen and (min-width: 1024px), print {
  .sm-hide,
  .md-hide {
    display: inline;
  }
  .lg-hide {
    display: none;
  }
}



/* layout */
.container,
.inner {
  padding: 0 15px;
}
.column-layout {
  padding: 15px;
}
.column-layout-side {
  margin: 40px -15px 0;
}
@media screen and (min-width: 768px), print {
  .container,
  .inner {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px;
  }

  .column-layout {
    max-width: 1040px;
    margin: 0 auto;
    padding: 50px 20px 30px;
  }
  .column-layout-side {
    margin: 50px -20px 0;
  }

	
}
@media screen and (min-width: 1024px), print {
  .column-layout {
    display: flex;
    flex-wrap: nowrap;
  }
  .column-layout-main {
    flex: 1;
    order: 2;
  }
	  .inner-movie {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 20px;
  }

  .column-layout-side {
    order: 1;
    width: 255px;
    margin: 0;
    padding-right: 20px;
  }
}



/* header */
.global-header {
  position: relative;
  z-index: 100;
  background: #fff;
  border-bottom: 2px solid #1b365d;
}
.global-header-inner {
  position: relative;
  padding: 15px 12px;
}
.logo {
  width: 150px;
  font-size: 0;
}
@media screen and (min-width: 768px), print {
  .global-header {
    border-bottom-width: 1px;
  }
  .global-header-inner {
    max-width: 1040px;
    margin: 0 auto;
    padding: 35px 20px;
  }
  .logo {
    width: 190px;
    margin: 0 auto;
  }
}



/* nav */
.global-nav-trigger {
  position: absolute;
  top: 0;
  right: 0;
  width: 65px;
  height: 100%;
  background: transparent;
  border: none;
}
.global-nav-trigger span {
  display: inline-block;
  position: absolute;
  left: 13px;
  width: 40px;
  height: 3px;
  background: #1b365d;
  border-radius: 1px;
}
.global-nav-trigger span:nth-child(1) {
  display: none;
}
.global-nav-trigger span:nth-child(2) {
  top: 12px;
}
.global-nav-trigger span:nth-child(3) {
  top: 23px;
}
.global-nav-trigger span:nth-child(4) {
  top: 34px;
}
.global-nav {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  background: rgba(27, 54, 93, .9);
  opacity: 0;
  visibility: hidden;
}
.gnav-init .global-nav {
  transition: opacity .25s ease-in-out, visibility .25s ease-in-out;
}
.global-nav.is-open {
  opacity: 1;
  visibility: visible;
}
.global-nav-inner {
  height: 100%;
}
.global-nav-head {
  padding: 15px 12px;
}
.global-nav-logo {
  width: 150px;
  font-size: 0;
}
.global-nav-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 65px;
  height: 50px;
  background: transparent;
  border: none;
}
.global-nav-close span {
  display: none;
}
.global-nav-close::before,
.global-nav-close::after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 23px;
  left: 13px;
  width: 40px;
  height: 3px;
  background: #fff;
  border-radius: 1px;
}
.global-nav-close::before {
  transform: rotate(45deg);
}
.global-nav-close::after {
  transform: rotate(-45deg);
}
.global-nav-contents {
  height: calc(100vh - 50px);
}
.global-nav-contents-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 50px 15px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
.global-nav-list {
  text-align: center;
  list-style: none;
}
.global-nav-list li:not(:first-child) {
  margin-top: 23px;
}
.global-nav-list li a {
  position: relative;
  display: inline-block;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 500;
  text-decoration: none;
}
.global-nav-list a::after {
  content: '';
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #fff;
  opacity: 0;
  visibility: hidden;
}
.global-nav-list .is-current::after {
  opacity: 1;
  visibility: visible;
}
.global-nav-list .link-global {
  display: inline-block;
  padding-left: 25px;
}
.global-nav-list .link-global::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 19px;
  height: 15px;
  background: url(../images/common/icon_global-white_01.png) 0 0 no-repeat;
  background-size: 19px 15px;
  transform: translateY(-50%);
}
@media screen and (min-width: 768px), print {
  .global-nav-trigger {
    top: 23px;
    right: 10px;
    width: 65px;
    height: 50px;
  }
  .global-nav-head {
    padding: 35px 20px;
  }
  .global-nav-logo {
    width: 190px;
    margin: 0 auto;
  }
  .global-nav-close {
    top: 23px;
    right: 10px;
  }
  .global-nav-contents {
    height: calc(100vh - 94px);
  }
  .global-nav-list li:not(:first-child) {
    margin-top: 30px;
  }
  .global-nav-list li a {
    font-size: 2.4rem;
  }
  .global-nav-list li a::after {
    transition: .2s ease-in-out;
    opacity: 0;
    visibility: hidden;
  }
  .global-nav-list li a:hover::after {
    opacity: 1;
    visibility: visible;
  }
  .global-nav-list li .link-global {
    padding-left: 34px;
  }
  .global-nav-list li .link-global::before {
    width: 24px;
    height: 19px;
    background-size: 24px 19px;
  }
}
@media screen and (min-width: 1024px), print {
  .global-nav-trigger,
  .global-nav-head {
    display: none;
  }
  .global-nav {
    position: static;
    width: auto;
    height: auto;
    background: transparent;
    opacity: 1;
    visibility: visible;
  }
  .global-nav-inner {
    /* width: 830px; */
    width: 1000px;
    height: auto;
    margin: 0 auto;
  }
  .global-nav-contents {
    height: auto;
  }
  .global-nav-contents-inner {
    display: block;
    height: auto;
    padding: 0 0 30px;
    overflow: hidden;
  }
  .global-nav-list {
    display: flex;
    justify-content: space-between;
  }
  .global-nav-list li:not(:first-child) {
    margin: 0;
  }
  .global-nav-list li a {
    color: #222;
    font-size: 1.6rem;
    font-weight: 400;
  }
  .global-nav-list li a::after {
    bottom: -4px;
    background: #1b365d;
  }
  .global-nav-list li .link-global {
    padding-left: 25px;
  }
  .global-nav-list li .link-global::before {
    width: 19px;
    height: 15px;
    background-image: url(../images/common/icon_global-black_01.png);
    background-size: 19px 15px;
  }
}


/* sub */
.global-nav-sub {
  position: absolute;
  top: 16%;
  width: auto;
  list-style: none;
}
.global-nav-sub .business-site a {
  display: inline-block;
  color: #1b365d;
  text-decoration: none;
  background: #fff;
  border-radius: 6px;
  padding: 0.6em 1.2em 0.7em;
  transition: .3s;
}

.global-nav-list {
  position: absolute;
  top: 30%;
}

@media screen and (min-width: 768px), print {

  .global-nav-sub li a:hover {
    opacity: .5;
  }

}

@media screen and (min-width: 1024px), print {

  .global-nav-sub {
    position: absolute;
    top: 0;
    width: 1000px;
    margin: 0 auto;
    display: flex;
    justify-content: end;
  }
  .global-nav-sub li {
    font-size: 13px;
    line-height: 1;
    letter-spacing: .04em;
  }
  .global-nav-sub .business-site a {
    display: inline-block;
    color: #fff;
    text-decoration: none;
    background: #1b365d;
    border-radius: 0 0 6px 6px;
    padding: 0.45em 1em 0.74em;
    box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.26);
    transition: .3s;
  }

  .global-nav-list {
    position: relative;
  }

}


/* footer */
.global-footer {
  background: #fff;
}
.global-footer-nav {
  border-top: 1px solid #1b365d;
}
.global-footer-nav a {
  position: relative;
  display: block;
  padding: 15px 40px 15px 15px;
  line-height: 1.4;
  text-decoration: none;
}
.global-footer-nav a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 17px;
  width: 6px;
  height: 12px;
  background: url(../images/common/icon_arrow-right-blue_01.png) 0 0 no-repeat;
  background-size: 6px 12px;
  transform: translateY(-50%);
}
.global-footer-nav p {
  border-bottom: 1px solid #1b365d;
}
.global-footer-nav p a {
  display: flex;
  align-items: center;
  height: 100%;
  font-weight: 700;
}
.global-footer-nav .js-fnav-accordion::after {
  right: 15px;
  width: 12px;
  height: 6px;
  background-image: url(../images/common/icon_arrow-bottom-black_01.png);
  background-size: 12px 6px;
}
.global-footer-nav .js-fnav-accordion.is-open::after {
  transform: translateY(-50%) rotate(180deg);
}
.global-footer-nav ul {
  list-style: none;
}
.global-footer-nav ul li {
  background: #f4f4f4;
  border-bottom: 1px solid #1b365d;
}
.global-footer-nav-col:nth-child(5) {
  display: flex;
  flex-wrap: wrap;
}
.global-footer-nav-col:nth-child(5) p {
  width: 50%;
}
.global-footer-nav-col:nth-child(5) p:last-child {
  width: 100%;
}
.global-footer-nav-col:nth-child(5) p:nth-child(odd) {
  border-left: 1px solid #1b365d;
}
.global-footer-nav-col:nth-child(5) p:nth-child(1),
.global-footer-nav-col:nth-child(5){
  width: 100%;
  border-left: none;
}
.global-footer-nav-col:nth-child(5) p:nth-child(3) a {
  padding: 15px 30px 15px 15px;
  letter-spacing: -.025em;
}
.global-footer-nav-col:nth-child(5) p.no-borderLeft {
  border-left: none;
}
.copyright {
  display: block;
  padding: 20px;
  background: #1b365d;
  color: #fff;
  font-size: 1.3rem;
  text-align: center;
}
@media screen and (min-width: 768px), print {
  .global-footer {
    border-top: 2px solid #f4f4f4;
  }
  .c-footer-contents01 + .global-footer {
    border-top: none;
  }
  .global-footer-inner {
    max-width: 1040px;
    margin: 0 auto;
    padding: 30px 10px;
  }
  .global-footer-nav {
    display: flex;
    flex-wrap: wrap;
    border-top: none;
  }
  .global-footer-nav a {
    display: inline;
    height: auto;
    padding: 0;
  }
  .global-footer-nav a:hover {
    text-decoration: underline;
  }
  .global-footer-nav a::after,
  .global-footer-nav .js-fnav-accordion::after,
  .global-footer-nav .js-fnav-accordion.is-open::after {
    position: static;
    display: inline-block;
    width: 6px;
    height: 12px;
    margin-left: 7px;
    background-image: url(../images/common/icon_arrow-right-blue_01.png);
    background-size: 6px 12px;
    transform: none;
  }
  .global-footer-nav p {
    border-bottom: none;
  }
  .global-footer-nav p:not(:first-child) {
    margin-top: 15px;
  }
  .global-footer-nav p a {
    display: inline;
  }
  .global-footer-nav ul {
    display: block !important;
    margin: 7px 0 0 10px;
    font-size: 1.4rem;
  }
  .global-footer-nav ul li {
    position: relative;
    margin-top: 2px;
    padding-left: 12px;
    background: transparent;
    border-bottom: none;
  }
  .global-footer-nav ul li::before {
    content: '';
    position: absolute;
    top: 5px;
    left: 0;
    width: 8px;
    height: 8px;
    border-left: 1px solid #222;
    border-bottom: 1px solid #222;
  }
  .global-footer-nav ul .multiline {
    margin-top: 3px;
    line-height: 1.2;
  }
  .global-footer-nav ul .multiline a {
    line-height: 1.2;
  }
  .global-footer-nav ul .multiline::before {
    top: 3px;
  }
  .global-footer-nav-col {
    width: 33.33334%;
    padding-right: 20px;
  }
  .global-footer-nav-col:nth-child(3),
  .global-footer-nav-col:nth-child(5) {
    padding-right: 0;
  }
  .global-footer-nav-col:nth-child(4),
  .global-footer-nav-col:nth-child(5) {
    margin-top: 30px;
  }
  .global-footer-nav-col:nth-child(5) {
    display: block;
    width: 200px;
  }
  .global-footer-nav-col:nth-child(5) p:nth-child(n) {
    width: auto;
    border: none;
  }
  .global-footer-nav-col:nth-child(5) p:nth-child(3) a {
    padding: 0;
    letter-spacing: 0;
  }
  .copyright {
    padding: 18px 20px;
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 1024px), print {
  .global-footer-nav-col {
    width: 200px;
  }
  .global-footer-nav-col:nth-child(3) {
    padding-right: 20px;
  }
  .global-footer-nav-col:nth-child(5) {
    flex: 1;
    padding-left: 20px;
  }
  .global-footer-nav-col:nth-child(4),
  .global-footer-nav-col:nth-child(5) {
    margin-top: 0;
  }
}


/*  footer SNS  */
.global-footer-nav-col:nth-child(5) p.login { /* 代行店様向けログイン 幅調整 */
  width: 100%;
}

.global-footer-nav-col .footer_sns {
  display: flex;
  justify-content: flex-start;
  margin: 0;
  padding: 16px 15px 18px 15px;
}
.global-footer-nav-col .footer_sns p {
  width: 50% !important;
  font-size: 13px;
  color: #1b365d;
  font-weight: 700;
  padding-top: 10px;
  border-bottom: none;
}
.global-footer-nav-col .footer_sns ul {
  display: flex !important;
  padding-left: 20px;
}
.global-footer-nav-col .footer_sns li {
  width: 38px;
  margin: 0 12px 0 0;
  padding: 0;
  background: transparent;
  border-bottom: none;
}
.global-footer-nav-col .footer_sns li a {
  padding: 0;
}
.global-footer-nav-col .footer_sns li img {
  width: 100%;
  height: auto;
}
.global-footer-nav-col .footer_sns li::before,
.global-footer-nav-col .footer_sns li a::after {
  display: none;
}

@media screen and (min-width: 768px), print {
  .global-footer-nav-col .footer_sns {
    display: block;
    margin: 15px 0 0 0;
    padding: 0;
  }
  .global-footer-nav-col .footer_sns p {
    width: auto !important;
    border-bottom: none;
    padding: 0;
  }
  .global-footer-nav-col .footer_sns li {
     width: 32px;
  }
}




/* side */
.side-list,
.side-list ul {
  list-style: none;
}
.side-list > li + li {
  margin-top: 2px;
}
.side-list > li > a {
  position: relative;
  display: block;
  padding: 12px 30px 12px 13px;
  background: #f4f4f4;
  color: #222;
  font-size: 1.4rem;
  font-weight: 700;
  text-decoration: none;
}
.side-list > li > a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 18px;
  width: 6px;
  height: 12px;
  background: url(../images/common/icon_arrow-right-black_01.png) 0 0 no-repeat;
  background-size: 6px 12px;
  transform: translateY(-50%);
}
.side-list ul {
  margin-bottom: -3px;
}
.side-list ul li {
  border-bottom: 1px solid #dfdfdf;
}
.side-list ul li a {
  position: relative;
  display: block;
  padding: 12px 30px 12px 15px;
  color: #222;
  font-size: 1.3rem;
  text-decoration: none;
}
.side-list ul.sub-side-label-link-list li a {
  position: relative;
  display: block;
  padding: 12px 30px 12px 13px;
  color: #222;
  font-size: 1.3rem;
  text-decoration: none;
}
.side-list ul li a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 18px;
  width: 6px;
  height: 12px;
  background: url(../images/common/icon_arrow-right-black_01.png) 0 0 no-repeat;
  background-size: 6px 12px;
  transform: translateY(-50%);
}
.side-label {
  position: relative;
  padding: 12px 30px 12px 13px;
  background: #f4f4f4;
  font-size: 1.4rem;
  font-weight: 700;
}
.side-ac-head {
  position: relative;
  padding: 12px 30px 12px 13px;
  background: #f4f4f4;
  font-size: 1.4rem;
  font-weight: 700;
  cursor: pointer;
}
.side-ac-head::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 15px;
  width: 12px;
  height: 6px;
  background: url(../images/common/icon_arrow-bottom-black_01.png) 0 0 no-repeat;
  background-size: 12px 6px;
  transform: translateY(-50%);
}
.side-ac-head.is-open::after {
  transform: translateY(-50%) rotate(180deg);
}
.side-ac-contents {
  display: none;
}
.side-archive {
  padding: 16px 13px 16px 13px;
  background: #f4f4f4;
  font-size: 1.4rem;
  font-weight: 700;
}
.side-archive .select-outer {
  position: relative;
  margin-top: 5px;
}
.side-archive .select-outer::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 10px;
  border-top: 9px solid #1b365d;
  border-right: 6px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 6px solid transparent;
  transform: translateY(-25%);
  pointer-events: none;
}
.side-archive select {
  width: 100%;
  min-height: 40px;
  padding: 3px 25px 4px 10px;
  background: #fff;
  border: 1px solid #888;
  border-radius: 0;
  font-size: 1.6rem;
  font-weight: 400;
  -webkit-appearance: none;
}
.sub-side-label {
  position: relative;
  padding: 12px 30px 12px 13px;
  border-bottom: 1px solid #dfdfdf;
  font-size: 1.3rem;
  font-weight: 700;
}
.sub-side-label-link {
  position: relative;
  display: block;
  padding: 12px 30px 12px 13px;
  color: #222;
  font-size: 1.3rem;
  font-weight: bold;
  text-decoration: none;
}
.sub-side-label-link::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 18px;
  width: 6px;
  height: 12px;
  background: url(../images/common/icon_arrow-right-black_01.png) 0 0 no-repeat;
  background-size: 6px 12px;
  transform: translateY(-50%);
}
.sub-side-label-link-list li:last-child {
  border: none;
}
@media screen and (min-width: 768px), print {
  .side-list ul li a {
    padding: 12px 30px 12px 25px;
  }
  .side-list a,
  .side-ac-head {
    transition: opacity .2s ease-in-out;
  }
  .side-list a:hover,
  .side-ac-head:hover {
    opacity: .5;
  }
  .sub-side-label,
  .side-list ul.sub-side-label-link-list li a {
    padding: 12px 30px 12px 25px;
  }
  .side-tech-list ul li a {
    padding: 12px 30px 12px 35px;
  }
  .side-tech-list ul .sub-side-label-link {
    padding: 12px 30px 12px 25px;
  }
}



/* component */
.c-grid-row {
  display: flex;
  flex-wrap: wrap;
  margin: -20px -8px 0;
}
.c-grid-col {
  width: 100%;
  margin: 20px 8px 0;
  position: relative;
}
.c-grid-col-sm2 {
  width: calc(50% - 16px);
}
@media screen and (min-width: 768px), print {
  .c-grid-row {
    margin: -20px -10px 0;
  }
  .c-grid-col {
    margin: 20px 10px 0;
  }
  .c-grid-col-md2 {
    width: calc(50% - 20px);
  }
  .c-grid-col-md3 {
    width: calc(33.33334% - 20px);
  }
  .c-grid-col-md4 {
    width: calc(25% - 20px);
  }
}
@media screen and (min-width: 1024px), print {
  .c-grid-col-lg2 {
    width: calc(50% - 20px);
  }
  .c-grid-col-lg3 {
    width: calc(33.33334% - 20px);
  }
  .c-grid-col-lg4 {
    width: calc(25% - 20px);
  }
}

.c-product-header {
  position: relative;
  z-index: 99;
  background: #1b365d;
}
.c-product-header-inner {
  position: relative;
  text-align: right;
  font-size: 0;
}
.c-product-header-logo {
  color: #fff;
  font-size: 1.7rem;
  font-weight: 500;
}
.c-product-nav {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  background: #fff;
}
.c-product-nav-trigger {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 45px;
  background: transparent;
  border: none;
}
.c-product-nav-trigger span {
  display: none;
}
.c-product-nav-trigger::before,
.c-product-nav-trigger::after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 15px;
  width: 20px;
  height: 1px;
  background: #fff;
  transform: translateY(-50%);
}
.c-product-nav-trigger::after {
  transform: translateY(-50%) rotate(90deg);
}
.c-product-nav-trigger.is-open::after {
  opacity: 0;
  visibility: hidden;
}
.c-product-nav-list {
  list-style: none;
}
.c-product-nav-list li:nth-child(even) {
  background: #f4f4f4;
}
.c-product-nav-list li a {
  display: block;
  padding: 12px 15px;
  font-size: 1.5rem;
  font-weight: 500;
  text-decoration: none;
  text-align: center;
}
.c-product-nav-mask {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 98;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, .6);
  transition: .25s linear;
  opacity: 0;
  visibility: hidden;
}
.bnav-init .c-product-nav-mask {
  transition: opacity .25s ease-in-out, visibility .25s ease-in-out;
}
.c-product-nav-mask.is-open {
  opacity: 1;
  visibility: visible;
}
@media screen and (min-width: 768px), print {
  .c-product-header-inner {
    max-width: 1040px;
    margin: 0 auto;
    padding: 19px 20px 24px;
  }
  .c-product-header-logo {
    font-size: 1.8rem;
  }
  .c-product-nav {
    display: block !important;
    position: static;
    width: auto;
    background: transparent;
  }
  .c-product-nav-list {
    display: flex;
    justify-content: center;
    margin: 0 -20px;
  }
  .c-product-nav-list li {
    margin: 0 20px;
  }
  .c-product-nav-list li:nth-child(even) {
    background: transparent;
  }
  .c-product-nav-list li a {
    position: relative;
    color: #fff;
    padding: 0;
    font-size: 1.6rem;
    font-weight: 400;
  }
  .c-product-nav-list li a::after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 100%;
    height: 2px;
    background: #fff;
    transition: .2s ease-in-out;
    opacity: 0;
    visibility: hidden;
  }
  .c-product-nav-list li a:hover::after,
  .c-product-nav-list li .is-current::after {
    opacity: 1;
    visibility: visible;
  }
  .c-product-nav-trigger,
  .c-product-nav-mask {
    display: none;
  }
}

.c-breadcrumbs {
  padding-top: 10px;
  font-size: 0;
}
.c-breadcrumbs > span {
  display: inline-block;
  font-size: 1.0rem;
}
.c-breadcrumbs > span + span::before{
  content: '>';
  display: inline-block;
  margin: 0 4px 0 8px;
}
@media screen and (min-width: 768px), print {
  .c-breadcrumbs > span {
    font-size: 1.2rem;
  }
}

.c-footer-contents01 {
  padding: 20px 0;
  background: #1b365d;
}
.c-footer-contents01-title {
  color: #fff;
  font-size: 2.0rem;
  font-weight: 400;
  text-align: center;
  margin-bottom: 10px;
  padding-top: 10px;
}
.c-footer-contents01 ul {
  max-width: 340px;
  margin: 0 auto;
  list-style: none;
}
.c-footer-contents01 ul li {
  margin-bottom: 20px;
}
.c-footer-contents01 .c-pagetop {
/*
  margin-bottom: -25px;
  padding-bottom: 0;
*/
}
.c-pagetop + .c-footer-contents01 .c-pagetop {
  display: none;
}
@media screen and (max-width: 767px), print {
  .c-footer-contents01 ul li.sp_no {
    display: none;
  }
}
@media screen and (min-width: 768px), print {
  .c-footer-contents01 {
    padding: 40px 0 10px;
  }
  .c-footer-contents01-title {
    font-size: 2.8rem;
    margin-bottom: 20px;
    padding-top: 0;
  }
  .c-footer-contents01 ul {
    display: flex;
    flex-wrap: wrap;
    max-width: inherit;
    justify-content: space-between;
    margin: 5px 0 15px;
  }
  .c-footer-contents01 ul.mb_0 {
    margin-bottom: 0;auto
  }
  .c-footer-contents01 ul li {
    width: 300px;
    margin: 0 0 35px;
  }
  .c-footer-contents01 ul.list_shop li {
    margin-right: auto;
    margin-left: auto;
  }
  .c-footer-contents01 .c-pagetop {
  /*    margin-bottom: -30px;*/
  }
}

.c-pagetop {
  position: fixed;
  right: 20px;
  bottom: 20px;
  display: none;
  z-index: 10;
/*
  padding: 15px;
  text-align: right;
*/
}
.c-pagetop-button {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 50px;
  background: #f4f4f4;
  font-size: 0;
  vertical-align: top;
  opacity: 0.8;
  box-shadow: 0 0 5px #999;
}
.c-pagetop-button::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 24px;
  height: 11px;
  background: url(../images/common/icon_pagetop.png) 0 0 no-repeat;
  background-size: 24px 11px;
  transform: translate(-50%, -50%);
}
@media screen and (min-width: 768px), print {
  .c-pagetop {
    bottom: 4px;
/*
    max-width: 1040px;
    margin: 0 auto;
    padding: 20px 20px 10px;
*/
  }
  .c-pagetop-button {
    transition: opacity .2s ease-in-out;
  }
  .c-pagetop-button:hover {
    opacity: .5;
  }
}

.c-info-block {
  padding: 25px 0 40px;
}
.c-info-block-col {
  position: relative;
}
.c-info-block-col:first-child {
  margin-bottom: 35px;
}
.c-info-block-title {
  padding: 12px 85px 7px 0;
  border-bottom: 2px solid #1b365d;
  color: #1b365d;
  font-size: 1.6rem;
}
.c-info-block-more {
  position: absolute;
  top: 0;
  right: 0;
}
.c-info-block-more a {
  padding: 5px 25px;
  font-size: 1.3rem;
  font-weight: 500;
}
.c-info-block-more a::before,
.c-info-block-more a::after {
  right: 5px;
}
.c-info-block-list {
  list-style: none;
}
.c-info-block-list li {
  margin-top: 15px;
  font-size: 1.2rem;
}
.c-info-block-item-date,
.c-info-block-item-category {
  display: inline-block;
  vertical-align: middle;
}
.c-info-block-item-date {
  margin-right: 10px;
  padding-top: 1px;
  color: #1b365d;
  font-weight: 500;
}
.c-info-block-item-category span {
  display: inline-block;
  padding: 2px 6px 4px;
  color: #fff;
  font-size: 1.1rem;
  line-height: 1.2;
}
_:-ms-fullscreen, :root .c-info-block-item-category span {
  padding: 3px 6px 3px;
}
.c-info-block-item-category .label01 {
  background: #aa9f71;
}
.c-info-block-item-category .label02 {
  background: #5c8385;
}
.c-info-block-item-category .label03 {
  background: #1b365d;
}
.c-info-block-item-title {
  margin-top: 7px;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
@media screen and (min-width: 768px), print {
  .c-info-block {
    padding: 40px 0;
  }
  .c-info-block-column {
    display: flex;
    margin: 0 -10px;
  }
  .c-info-block-col {
    width: calc(50% - 20px);
    margin: 0 10px;
  }
  .c-info-block-col:first-child {
    margin-bottom: 0;
  }
  .c-info-block-title {
    padding: 0 85px 3px 0;
    border-bottom: 3px solid #1b365d;
    font-size: 2.0rem;
  }
  .c-info-block-more {
    top: 2px;
  }
  .c-info-block-more a {
    padding: 2px 20px;
    font-size: 1.2rem;
  }
  _:-ms-fullscreen, :root .c-info-block-more a {
    padding: 3px 20px 1px;
  }
  .c-info-block-more a::before,
  .c-info-block-more a::after {
    width: 4px;
    height: 8px;
    background-size: 4px 8px;
  }
  .c-info-block-list li {
    margin-top: 20px;
    font-size: 1.4rem;
  }
  .c-info-block-item-category span {
    font-size: 1.2rem;
  }
  .c-info-block-item-title {
    margin-top: 3px;
  }
}
@media screen and (min-width: 1024px), print {
  .c-info-block-list {
    margin: 0 10px;
  }
}

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}
.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}
.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track::before,
.slick-track::after {
  display: table;
  content: '';
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}
.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}
[dir='rtl'] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
  display: none;
}
.c-visual-carousel {
  position: relative;
  font-size: 0;
}
.c-visual-carousel-item img {
  width: 100%;
  max-width: inherit;
}
.c-visual-carousel-item .lg-image {
  display: none;
}
.c-visual-carousel .slick-dots-outer {
  position: absolute;
  left: 0;
  bottom: 35px;
  z-index: 2;
  width: 100%;
}
.product-visual  {
  position: relative;
}
/*
.product-visual .c-visual-carousel .slick-dots-outer {
  bottom: 20px;
}
*/
.c-visual-carousel .slick-dots {
  display: flex;
  justify-content: center;
  list-style: none;
}
.c-visual-carousel .slick-dots li {
  margin: 0 5px;
  box-shadow: 0 0 4px 1px rgba(4,0,0,0.35);
}
.c-visual-carousel .slick-dots li button {
  width: 40px;
  height: 6px;
  background: #fff;
  border: none;
  font-size: 0;
  transition: .2s ease-in-out;
  outline: none;
}
.c-visual-carousel .slick-dots .slick-active button {
  background: #aa9f71;
}
@media screen and (min-width: 768px), print {
  .c-visual-carousel-item .lg-image {
    display: block;
  }
  .c-visual-carousel-item .sm-image {
    display: none;
  }
  .c-visual-carousel .slick-dots-outer,
  .product-visual .c-visual-carousel .slick-dots-outer {
    bottom: 20px;
  }
  .c-visual-carousel .slick-dots {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px;
    justify-content: flex-start;
  }
  .c-visual-carousel .slick-dots li button {
    height: 3px;
  }
  .c-visual-carousel .slick-dots li button:hover {
    background: #aa9f71;
  }
}

.c-section-header01 {
  margin-bottom: 25px;
  color: #1b365d;
  text-align: center;
}
.c-section-header01-title {
  font-size: 2.4rem;
  font-weight: 400;
}
.c-section-header01-text {
  font-size: 1.2rem;
}
@media screen and (min-width: 768px), print {
  .c-section-header01-title {
    font-size: 3.6rem;
  }
  .c-section-header01-text {
    font-size: 1.6rem;
  }
}

.c-section-header01-title .pc_nobr {
  display: none;
}

@media screen and (max-width: 768px), print {
  .c-section-header01-title .pc_nobr {
    display: block;
  }
}

.c-heading01 {
  margin-bottom: 10px;
  padding-left: 10px;
  border-left: 5px solid #1b365d;
  font-size: 2.4rem;
}

/*2021-----*/
.c-heading015 {
  margin-bottom: 20px;
  font-size: 2.4rem;
}
.c-heading02 {
  margin-bottom: 20px;
  padding-bottom: 5px;
  border-bottom: 2px solid #1b365d;
  font-size: 1.8rem;
  font-weight: 400;
}

.page-company-access-section05 .page-company-text,
.page-company-access-section06 .page-company-text,
.page-company-access-section07 .page-company-text,
.page-company-access-section08 .page-company-text{
	margin: -15px 0 0;
}

.c-heading03 {
  margin-bottom: 15px;
  font-size: 1.8rem;
  font-weight: 400;
}
@media screen and (min-width: 768px), print {
  .c-heading01 {
    font-size: 2.6rem;
  }
	
/*2021-----*/
  .c-heading015 {
  font-size: 2.6rem;
}
  .c-heading02 {
    margin-bottom: 30px;
    padding-bottom: 2px;
    font-size: 2.0rem;
  }
  .c-heading03 {
    margin-bottom: 20px;
    font-size: 2.4rem;
  }
}

[class^="c-button"] {
  position: relative;
  display: inline-block;
  padding: 10px 20px;
  text-align: center;
  text-decoration: none;
}
.c-button-full {
  display: block;
  width: 100%;
}
[class*="c-button-arrow"]::before,
[class*="c-button-arrow"]::after {
  content: '';
  position: absolute;
  top: 50%;
  width: 6px;
  height: 12px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 6px 12px;
  transform: translateY(-50%);
}
[class*="c-button-arrow"]::after {
  opacity: 0;
  visibility: hidden;
}
.c-button-arrow-right::before,
.c-button-arrow-right::after {
  right: 10px;
}
.c-button-arrow-left::before,
.c-button-arrow-left::after {
  left: 10px;
}
.c-button-white {
  color: #fff;
  border: 1px solid #fff;
}
.c-button-white.c-button-arrow-right::before {
  background-image: url(../images/common/icon_arrow-right-white_01.png);
}
.c-button-white.c-button-arrow-right::after {
  background-image: url(../images/common/icon_arrow-right-blue_01.png);
}
.c-button-white.c-button-arrow-left::before {
  background-image: url(../images/common/icon_arrow-left-white_01.png);
}
.c-button-white.c-button-arrow-left::after {
  background-image: url(../images/common/icon_arrow-left-blue_01.png);
}
.c-button-white-fill {
  color: #1b365d;
  background: #fff;
  border: 1px solid #fff;
}
.c-button-white-fill.c-button-arrow-right::before {
  background-image: url(../images/common/icon_arrow-right-blue_01.png);
}
.c-button-white-fill.c-button-arrow-right::after {
  background-image: url(../images/common/icon_arrow-right-white_01.png);
}
.c-button-white-fill.c-button-arrow-left::before {
  background-image: url(../images/common/icon_arrow-left-blue_01.png);
}
.c-button-white-fill.c-button-arrow-left::after {
  background-image: url(../images/common/icon_arrow-left-white_01.png);
}
.c-button-blue {
  color: #1b365d;
  border: 1px solid #1b365d;
}
.c-button-blue.c-button-arrow-right::before {
  background-image: url(../images/common/icon_arrow-right-blue_01.png);
}
.c-button-blue.c-button-arrow-right::after {
  background-image: url(../images/common/icon_arrow-right-white_01.png);
}
.c-button-blue.c-button-arrow-left::before {
  background-image: url(../images/common/icon_arrow-left-blue_01.png);
}
.c-button-blue.c-button-arrow-left::after {
  background-image: url(../images/common/icon_arrow-left-white_01.png);
}
.c-button-blue-fill {
  color: #fff;
  background: #1b365d;
  border: 1px solid #1b365d;
}
.c-button-blue-fill.c-button-arrow-right::before {
  background-image: url(../images/common/icon_arrow-right-white_01.png);
}
.c-button-blue-fill.c-button-arrow-right::after {
  background-image: url(../images/common/icon_arrow-right-blue_01.png);
}
.c-button-blue-fill.c-button-arrow-left::before {
  background-image: url(../images/common/icon_arrow-left-white_01.png);
}
.c-button-blue-fill.c-button-arrow-left::after {
  background-image: url(../images/common/icon_arrow-left-blue_01.png);
}
@media screen and (min-width: 768px), print {
  [class^="c-button"] {
    padding: 15px 20px;
    transition: background .2s ease-in-out, border .2s ease-in-out, color .2s ease-in-out;
  }
  [class*="c-button-arrow"]::before,
  [class*="c-button-arrow"]::after {
    width: 8px;
    height: 15px;
    background-size: 8px 15px;
    transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
  }
  [class*="c-button-arrow"]:hover::before {
    opacity: 0;
    visibility: hidden;
  }
  [class*="c-button-arrow"]:hover::after {
    opacity: 1;
    visibility: visible;
  }
  .c-button-white:hover {
    background: #fff;
    color: #1b365d;
  }
  .c-button-white-fill:hover {
    background: #1b365d;
    color: #fff;
  }
  .c-button-blue:hover {
    background: #1b365d;
    color: #fff;
  }
  .c-button-blue-fill:hover {
    background: #fff;
    color: #1b365d;
  }
}

.c-pager {
  position: relative;
  margin: 50px -15px 0;
  padding: 10px;
  background: #f4f4f4;
  font-size: 0;
  text-align: center;
}
.c-pager a,
.c-pager .current {
  display: inline-block;
  min-width: 30px;
  height: 30px;
  margin: 0 3px;
  padding-top: 8px;
  font-size: 1.2rem;
  line-height: 1;
  text-decoration: none;
}
.c-pager .current {
  background: #656565;
  color: #fff;
  font-weight: 700;
}
.c-pager .first,
.c-pager .last {
  position: absolute;
  top: 10px;
  margin: 0;
}
.c-pager .first {
  left: 5px;
}
.c-pager .last {
  right: 5px;
}
@media screen and (min-width: 375px), print {
  .c-pager .first {
    left: 10px;
  }
  .c-pager .last {
    right: 10px;
  }
}
@media screen and (min-width: 768px), print {
  .c-pager {
    margin: 50px -20px 0;
  }
  .c-pager a,
  .c-pager .current {
    padding-top: 7px;
    font-size: 1.4rem;
    transition: background .2s ease-in-out, color .2s ease-in-out;
  }
  .c-pager a:hover {
    background: #656565;
    color: #fff;
  }
  .c-pager .first,
  .c-pager .last {
    position: static;
    margin: 0 8px;
    padding: 7px 10px 0;
  }
}
@media screen and (min-width: 1024px), print {
  .c-pager {
    margin: 50px 0 0;
  }
}

.c-detail-nav {
  display: flex;
  flex-wrap: wrap;
  margin: 40px -7px 0;
  list-style: none;
}
.c-detail-nav li {
  width: calc(50% - 14px);
  margin: 0 7px;
}
.c-detail-nav .c-detail-nav-back {
  width: calc(100% - 14px);
  margin: 14px auto;
  text-align: center;
}
.c-detail-nav .c-detail-nav-back a {
  position: relative;
  display: inline-block;
  padding: 0 13px;
}
.c-detail-nav .c-detail-nav-back a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0px;
  width: 6px;
  height: 12px;
  transform: translateY(-50%);
  margin-top: 1px;
  background: url(../images/common/icon_arrow-right-blue_01.png) 0 0 no-repeat;
  background-size: 6px 12px;
}
@media screen and (min-width: 768px), print {
  .c-detail-nav {
    position: relative;
    display: block;
    margin: 40px 0 0;
    padding-top: 11px;
  }
  .c-detail-nav li {
    width: 150px;
    margin: 0;
  }
  .c-detail-nav .c-detail-nav-back {
    width: 150px;
    margin: 0 auto;
  }
  .c-detail-nav .c-detail-nav-prev,
  .c-detail-nav .c-detail-nav-next {
    position: absolute;
    top: 0;
  }
  .c-detail-nav .c-detail-nav-prev {
    left: 0;
  }
  .c-detail-nav .c-detail-nav-next {
    right: 0;
  }
  .c-detail-nav li a {
    padding: 11px 20px;
    font-size: 1.4rem;
  }
  .c-detail-nav li a::before,
  .c-detail-nav li a::after {
    margin-top: 1px;
    width: 7px;
    height: 14px;
    background-size: 7px 14px;
  }
}


/* index */
.index .global-header {
  border-bottom: none;
}
.index-visual {
  position: relative;
}
.index-visual-scroll {
  position: absolute;
  left: 50%;
  bottom: 5px;
  z-index: 2;
  display: block;
  width: 35px;
  height: 20px;
  transform: translateX(-50%);
}
.index-visual-scroll span {
  position: absolute;
  left: 50%;
  bottom: 0;
  display: inline-block;
  width: 35px;
  height: 20px;
  background: url(../images/index/icon_visual-scroll_01.png) 0 0 no-repeat;
  background-size: 35px 20px;
  transform: translateX(-50%);
}
.index-section01 {
  background: #1b365d;
  color: #fff;
}
.index-section01-inner {
  padding: 40px 15px;
}
.index-section01-title {
  margin-bottom: 25px;
  font-size: 2.3rem;
  font-weight: 500;
}
.index-section01-more {
  max-width: 340px;
  margin: 30px auto 0;
}
.index-section01-more a {
  padding: 15px 20px;
  font-size: 1.6rem;
}
.index-section01-image {
  margin-top: 30px;
  text-align: center;
}
.index-contents-nav {
  background: #fff;
}
.index-contents-nav ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
}
.index-contents-nav ul li {
  position: relative;
  width: 50%;
  height: 125px;
  overflow: hidden;
}
.index-contents-nav ul li::after {
  content: '';
  position: absolute;
  top: 51%;
  left: 51%;
  width: 102%;
  height: 102%;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  transform: translate(-51%, -51%);
}
.index-contents-nav ul li:nth-child(1)::after {
  background-image: url(../images/index/img_contents-nav_01.jpg);
}
.index-contents-nav ul li:nth-child(2)::after {
  background-image: url(../images/index/img_contents-nav_02.jpg);
}
.index-contents-nav ul li:nth-child(3)::after {
  background-image: url(../images/index/img_contents-nav_03.jpg);
}
.index-contents-nav ul li:nth-child(4)::after {
  background-image: url(../images/index/img_contents-nav_04.jpg);
}
.index-contents-nav ul li a {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 0 20px;
  color: #1b365d;
  line-height: 1.4;
  text-decoration: none;
}
.index-contents-nav ul li a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 10px;
  width: 6px;
  height: 12px;
  background: url(../images/common/icon_arrow-right-blue_01.png) 0 0 no-repeat;
  background-size: 6px 12px;
  transform: translateY(-50%);
}
@media screen and (min-width: 375px), print {
  .index-contents-nav ul li:nth-child(4) a br {
    display: none;
  }
}
@media screen and (min-width: 768px), print {
  .index-visual-scroll {
    bottom: 15px;
    width: 40px;
    height: 24px;
    transition: .2s ease-in-out;
  }
  .index-visual-scroll:hover {
    opacity: .5;
  }
  .index-visual-scroll span {
    bottom: -5px;
    width: 46px;
    height: 24px;
    background-size: 46px 24px;
  }
  .index-section01 {
    background: #1b365d;
    color: #fff;
  }
  .index-section01-inner {
    max-width: 980px;
    margin: 0 auto;
    padding: 50px 20px;
  }
  .index-section01-title {
    margin-bottom: 20px;
    font-size: 2.4rem;
    line-height: 1.4;
  }
  .index-section01-text p {
    letter-spacing: .075em;
  }
  .index-section01-more {
    max-width: 240px;
    margin: 25px 0 0 0;
  }
  .index-section01-more a {
    font-size: 1.8rem;
  }
  .index-section01-image {
    margin-top: 40px;
  }
  .index-contents-nav ul li {
    height: 200px;
  }
  .index-contents-nav ul li::after {
    transition: .3s ease-in-out;
  }
  .index-contents-nav ul li:hover::after {
    transform: translate(-50%, -50%) scale(1.15);
  }
  .index-contents-nav ul li a {
    padding: 0 30px;
    font-size: 1.8rem;
  }
  .index-contents-nav ul li a::after {
    width: 8px;
    height: 15px;
    background-size: 8px 15px;
  }
}
@media screen and (min-width: 1024px), print {
  .index-section01-inner {
    display: flex;
  }
  .index-section01-text {
    padding-right: 25px;
    flex: 1;
  }
  .index-section01-image {
    width: 405px;
    margin: 0;
  }
  .index-contents-nav ul li {
    width: 25%;
  }
}

/* product index */
.product-section {
  padding: 40px 0 60px;
}
@media screen and (max-width: 767px), print {
  .product-section {
    padding: 40px 0;
  }
}
.product-section01 {
  background: #f4f4f4;
}
.product-section03,
.product-section05 {
  background: #1b365d;
}
.product-section05 {
/*  padding-bottom: 0;*/
}
.product-section03 .c-section-header01,
.product-section05 .c-section-header01 {
  color: #fff;
}
.product-section05 .c-section-header01-text {
  margin: 0 -5px;
}
.product-section01-search {
  padding: 30px 15px;
  background: #fff;
}
.product-section01-search .c-heading03 {
  color: #1b365d;
  text-align: center;
}
.product-section01-search01 form {
  display: flex;
  flex-wrap: wrap;
}
.product-section01-search01 form div:nth-child(1) {
  flex: 1;
}
.product-section01-search01 form div:nth-child(2) {
  width: 112px;
  padding-left: 15px;
}
.product-section01-search01 form div:nth-child(3) {
  width: 100%;
}
.product-section01-search01 input[type="text"] {
  width: 100%;
  min-height: 38px;
  padding: 4px 10px;
  border: 1px solid #888;
}
.product-section01-search01 button {
  display: block;
  width: 100%;
  min-height: 35px;
  background: #1b365d;
  border: 1px solid #1b365d;
  box-shadow: 0 3px 0 #0a1628;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
  text-align: center;
}
.product-section01-search01 button span {
  position: relative;
  display: inline-block;
  padding: 4px 14px 2px 0;
}
.product-section01-search01 button span::before,
.product-section01-search01 button span::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  width: 9px;
  height: 12px;
  margin-top: 1px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 9px 12px;
  transform: translateY(-50%);
}
.product-section01-search01 button span::before {
  background-image: url(../images/common/icon_search-white_01.png);
}
.product-section01-search01 button span::after {
  background-image: url(../images/common/icon_search-blue_01.png);
  opacity: 0;
  visibility: hidden;
}
.product-section01-search01 a {
  display: block;
  width: 165px;
  margin: 15px auto 0;
  font-size: 1.2rem;
  font-weight: 500;
}
.product-section01-search02 {
  margin-top: 40px;
}
.product-section01-search02 ul {
  display: flex;
  flex-wrap: wrap;
  margin: -16px -8px 0;
  list-style: none;
}
.product-section01-search02 ul li {
  width: calc(50% - 16px);
  margin: 16px 8px 0;
}
.product-section01-search02 ul li a {
  display: block;
  height: 100%;
  text-decoration: none;
}
.product-section01-search02 ul li div {
  border: 1px solid #dfdfdf;
  overflow: hidden;
}
.product-section01-search02 ul li div img {
  display: inline-block;
  margin: 0 auto;
  pointer-events: none;
}
.product-section01-search02 ul li p {
  position: relative;
  margin-top: 3px;
  padding-right: 10px;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.4;
}
.product-section01-search02 ul li p::after {
  content: '';
  position: absolute;
  top: 3px;
  right: 0;
  width: 6px;
  height: 12px;
  background: url(../images/common/icon_arrow-right-blue_01.png) 0 0 no-repeat;
  background-size: 6px 12px;
}
.product-section01-banner {
  max-width: 340px;
  margin: 20px auto 0;
}
.product-section01-banner ul {
  list-style: none;
}
.product-section01-banner ul li {
  margin-top: 15px;
}
.product-section02-pickup-item a {
  display: block;
  text-decoration: none;
}
.product-section02-pickup-item div img {
  display: block;
  margin: 0 auto;
  pointer-events: none;
}
.product-section02-pickup-item-text {
  position: relative;
  margin-top: 5px;
  padding-right: 20px;
  line-height: 1.4;
}
.product-section02-pickup-item-text-title {
  font-size: 1.6rem;
  font-weight: 700;
}
.product-section02-pickup-item-text p {
  margin-top: 5px;
  font-size: 1.2rem;
}
.product-section02-pickup-item-text::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  width: 6px;
  height: 12px;
  background: url(../images/common/icon_arrow-right-blue_01.png) 0 0 no-repeat;
  background-size: 6px 12px;
  transform: translateY(-50%);
}
.product-section03 ul {
  list-style: none;
}
.product-section03 ul li a {
  padding: 15px 20px;
}
.product-section05 ul {
  list-style: none;
}
.product-section05 ul li {
  min-height: 54px;
  margin-top: 16px;
}
.product-section05 ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 7px 10px;
  font-size: 1.4rem;
  line-height: 1.2;
}
.product-section05 ul li a span {
  position: relative;
}
.product-section05 ul li a span::before {
  content: '';
  position: absolute;
  top: 2px;
  right: -16px;
  width: 12px;
  height: 9px;
  background: url(../images/common/icon_window-white_01.png) 0 0 no-repeat;
  background-size: 12px 9px;
}
.product-section05 ul li a span::after {
  content: '';
  position: absolute;
  top: 2px;
  right: -16px;
  width: 12px;
  height: 9px;
  background-image: url(../images/common/icon_window-blue_01.png);
  background-size: 12px 9px;
  opacity: 0;
  visibility: hidden;
}

/*  button_label  */
.product-section05 ul li a div.button_label {
  position: absolute;
  top: 3px;
  left: 3px;
  font-size: 15px;
  line-height: 1;
  font-weight: 700;
  color: #1b365d;
  background: #fff;
  padding: 2px 4px;
}


@media screen and (min-width: 375px), print {
  .product-section05 ul li a {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 768px), print {

  .product-section01-search {
    padding: 40px;
  }
  .product-section01-search .c-heading03 {
    text-align: left;
  }
  .product-section01-search01 form div:nth-child(2),
  .product-section01-search01 form div:nth-child(3) {
    width: 155px;
    padding-left: 10px;
  }
  .product-section01-search01 input[type="text"] {
    min-height: 40px;
    padding: 5px 10px;
  }
  .product-section01-search01 button {
    min-height: 37px;
    font-size: 1.4rem;
    transition: background .2s ease-in-out, color .2s ease-in-out;
  }
  .product-section01-search01 button span {
    padding: 3px 16px 3px 0;
  }
  _:-ms-fullscreen, :root .product-section01-search01 button span {
    padding: 5px 16px 2px 0;
  }
  .product-section01-search01 button span::before,
  .product-section01-search01 button span::after {
    width: 10px;
    height: 13px;
    background-size: 10px 13px;
    transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
  }
  .product-section01-search01 button:hover {
    background: #fff;
    color: #1b365d;
  }
  .product-section01-search01 button:hover span::before {
    opacity: 0;
    visibility: hidden;
  }
  .product-section01-search01 button:hover span::after {
    opacity: 1;
    visibility: visible;
  }
  .product-section01-search01 a {
    width: auto;
    min-height: 40px;
    margin: 0;
    padding: 7px 20px;
    font-size: 1.4rem;
  }
  _:-ms-fullscreen, :root .product-section01-search01 a {
    padding: 8px 20px 7px;
  }
  .product-section01-search01 a::before,
  .product-section01-search01 a::after {
    right: 8px;
    width: 6px;
    height: 12px;
    background-size: 6px 12px;
  }
  .product-section01-search02 ul {
    margin: -20px -6px 0;
  }
  .product-section01-search02 ul li {
    width: calc(25% - 12px);
    margin: 20px 6px 0;
  }
  .product-section01-search02 ul li:nth-child(-n+3),
  .product-section01-search02 ul li:nth-child(n+8){
    width: calc(33.33334% - 12px);
  }
  .product-section01-search02 ul li p {
    margin-top: 8px;
    font-size: 1.4rem;
  }
  .product-section01-search02 ul li p::after {
    top: 5px;
  }
  .product-section01-banner {
    max-width: inherit;
    margin: 40px auto 0;
  }
  .product-section02-pickup-item-text {
    margin-top: 8px;
    padding-right: 30px;
  }
  .product-section02-pickup-item-text-title {
    font-size: 1.8rem;
  }
  .product-section02-pickup-item p {
    margin-top: 8px;
    font-size: 1.4rem;
  }
  .product-section03 ul li a {
    padding: 22px 20px;
    font-size: 2.2rem;
  }
  .product-section05 ul li {
    min-height: 60px;
    margin-top: 20px;
  }
  .product-section05 ul li a {
    /* padding: 27px 20px;
    font-size: 2.0rem; */
    padding: 27px 30px;
    font-size: 1.6rem;
  }
  .product-section05 ul li a span::before,
  .product-section05 ul li a span::after {
    right: -16px;
    width: 12px;
    height: 9px;
    background-size: 12px 9px;
    transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
  }
  .product-section05 ul li a:hover span::before {
    opacity: 0;
    visibility: hidden;
  }
  .product-section05 ul li a:hover span::after {
    opacity: 1;
    visibility: visible;
  }

  .product-section05 ul li a:hover div.button_label {
    color: #fff;
    background: #1b365d;
  }
}
@media screen and (min-width: 1024px), print {
  .product-section02-pickup-item-text-title {
    font-size: 2.0rem;
  }
  .product-section02-pickup-item p {
    font-size: 1.6rem;
  }
  .product-section05 ul li a span::before {
    right: -25px;
    width: 20px;
    height: 14px;
    background-size: 20px 14px;
  }
  .product-section05 ul li a span::after {
    right: -25px;
    width: 20px;
    height: 14px;
    background-size: 20px 14px;
  }
  .product-section05 ul li a:hover span::after {
    right: -25px;
    width: 20px;
    height: 14px;
    background-size: 20px 14px;
  }
}

/* product list */
.product-search {
  margin: 0 -15px;
}
.product-search-nav {
  display: flex;
  list-style: none;
}
.product-search-nav li {
  width: 50%;
}
.product-search-nav li a {
  display: block;
  padding: 15px 5px;
  background: #d8d8d8;
  color: #656565;
  font-size: 1.4rem;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
}
.product-search-nav li.is-active a {
  background: #f4f4f4;
  color: #222;
}
.product-search-contents-inner {
  padding: 20px 15px;
  background: #f4f4f4;
  overflow: hidden;
}
.product-search-form-row {
  margin-top: 20px;
  font-size: 1.2rem;
}
.product-search-form-row01 {
  margin-top: 0;
}
.product-search-form-label {
  margin-bottom: 5px;
}
.product-search-form-field input[type="text"] {
  width: 100%;
  min-height: 40px;
  padding: 3px 10px 5px;
  background: #fff;
  border: 1px solid #888;
}
.product-search-form-field .select-outer {
  position: relative;
}
.product-search-form-field .select-outer::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 10px;
  border-top: 8px solid #1b365d;
  border-right: 5px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 5px solid transparent;
  transform: translateY(-25%);
  pointer-events: none;
}
.product-search-form-field select {
  width: 100%;
  min-height: 40px;
  padding: 6px 25px 5px 10px;
  background: #fff;
  border: 1px solid #888;
  border-radius: 0;
  -webkit-appearance: none;
}
.product-search-form-field-note {
  margin: 5px 0 0 1em;
  text-indent: -1em;
}
.product-search-form-checkbox-list,
.product-search-form-radio-list {
  margin: -15px -25px 0 0;
  list-style: none;
}
.product-search-form-checkbox-list li,
.product-search-form-radio-list li {
  display: inline-block;
  margin: 20px 25px 0 0;
}
.product-search-form-checkbox-list input[type="checkbox"],
.product-search-form-radio-list input[type="radio"] {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.product-search-form-checkbox-list label {
  position: relative;
  padding: 3px 0 0 30px;
}
.product-search-form-checkbox-list label::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 25px;
  height: 25px;
  margin-right: 5px;
  background: #fff;
  border: 1px solid #888;
  border-radius: 2px;
  vertical-align: middle;
}
.product-search-form-checkbox-list input[type="checkbox"]:checked + label::before {
  background: #888 url(../images/common/icon_checked-gray_01.png) 50% 50% no-repeat;
  background-size: 23px 23px;
}
.product-search-form-radio-list label {
  position: relative;
  padding: 1px 0 0 25px;
}
.product-search-form-radio-list label::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  background: #fff;
  border: 1px solid #888;
  border-radius: 50%;
  vertical-align: middle;
}
.product-search-form-radio-list label::after {
  content: '';
  position: absolute;
  top: 4px;
  left: 4px;
  width: 12px;
  height: 12px;
  background: #888;
  border-radius: 50%;
  opacity: 0;
}
.product-search-form-radio-list input[type="radio"]:checked + label::after {
  opacity: 1;
}
.product-search-form-more-button {
  margin: 20px -15px -20px;
}
.product-search-form-more-button a {
  display: block;
  padding: 13px;
  background: #d8d8d8;
  color: #222;
  text-align: center;
  text-decoration: none;
}
.product-search-form-more-button span {
  position: relative;
  display: inline-block;
  padding-right: 20px;
}
.product-search-form-more-button span::before {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  width: 12px;
  height: 6px;
  background: url(../images/common/icon_arrow-bottom-black_01.png) 0 0 no-repeat;
  background-size: 12px 6px;
  transform: translateY(-50%);
}
.product-search-form-more-button .is-open span::before {
  transform: translateY(-50%) rotate(180deg);
}
.product-search-contents-button {
  margin: 20px 15px 0;
}
.product-search-submit {
  display: block;
  width: 100%;
  max-width: 350px;
  margin: 0 auto;
  padding: 18px;
  background: #1b365d;
  border: 1px solid #1b365d;
  box-shadow: 0 3px 0 #0a1628;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 500;
  text-align: center;
}
.product-search-submit span {
  position: relative;
  display: inline-block;
  padding-right: 20px;
}
.product-search-submit span::before,
.product-search-submit span::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  width: 12px;
  height: 16px;
  margin-top: 1px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 12px 16px;
  transform: translateY(-50%);
}
.product-search-submit span::before {
  background-image: url(../images/common/icon_search-white_01.png);
}
.product-search-submit span::after {
  background-image: url(../images/common/icon_search-blue_01.png);
  opacity: 0;
  visibility: hidden;
}
.product-search-result-num {
  margin-top: 10px;
  color: #1b365d;
  font-size: 1.2rem;
  font-weight: 500;
  text-align: center;
}
.product-search-section {
  margin-top: 40px;
}
.product-search-section-title {
  padding-bottom: 10px;
  border-bottom: 2px solid #1b365d;
}
.product-search-section-title a {
  display: flex;
  align-items: center;
}
.product-search-section-title-image {
  width: 80px;
  text-align: center;
}
.product-search-section-title-text {
  flex: 1;
  line-height: 1.4;
	margin-left: 10px;
}
.product-search-section-title-text .name {
  font-size: 1.2rem;
  font-weight: 700;
}
.product-search-section-title-text .discontinued-label {
  display: inline-block;
  margin-right: 10px;
  padding: 3px 4px 4px;
  background: #656565;
  color: #fff;
  font-size: 1.0rem;
  font-weight: 700;
  line-height: 1;
}
.product-search-list {
  margin: 0 15px;
  list-style: none;
}
.product-search-item {
  margin-top: 15px;
}
.product-search-item a {
  display: flex;
  align-items: center;
}
.product-search-item-color {
  width: 36px;
}
.product-search-item-color div {
  width: 36px;
  height: 36px;
}
.product-search-item-color .color-black {
  background: #000;
  border: 1px solid #000;
}
.product-search-item-color .color-white {
  background: #fff;
  border: 1px solid #d8d8d8;
}
.product-search-item-color .color-silver {
  background: linear-gradient(45deg, #ebedee, #fdfbfb);
  border: 1px solid #d8d8d8;
}
.product-search-item-name {
  flex: 1;
  padding: 0 0 3px 10px;
  padding-left: 10px;
  line-height: 1.4;
}
.product-search-item-name .name {
  font-size: 1.2rem;
}
.product-search-section-title-text .name::after,
.product-search-item-name .name::after {
  content: '';
  display: inline-block;
  width: 5px;
  height: 10px;
  margin-left: 7px;
  background-image: url(../images/common/icon_arrow-right-blue_01.png);
  background-size: 5px 10px;
}
.product-detail-col p,
.product-detail-col >div{
text-align: left;
}

@media screen and (min-width: 768px), print {
  .product-section05 ul li a {
    padding: 27px 40px;
  }
}

@media screen and (min-width: 768px), print {
  .product-search {
    margin: 0 -20px;
  }
  .product-search-nav li a {
    padding: 18px 5px;
    transition: .2s ease-in-out;
  }
  .product-search-nav li:not(.is-active) a:hover {
    opacity: .5;
  }
  .product-search-contents-inner {
    padding: 40px 20px;
  }
  .product-search-form-row {
    display: flex;
    margin-top: 25px;
  }
  .product-search-form-row01 {
    margin-top: 0;
  }
  .product-search-form-row02 {
    margin-top: 15px;
  }
  .product-search-form-label {
    width: 90px;
    margin: 0;
    padding-top: 5px;
  }
  .product-search-form-row01 .product-search-form-label,
  .product-search-form-row02 .product-search-form-label {
    padding-top: 12px;
  }
  .product-search-form-field {
    flex: 1;
    padding-left: 15px;
  }
  .product-search-form-field .select-outer::after {
    right: 12px;
    border-top: 9px solid #1b365d;
    border-right: 5px solid transparent;
    border-bottom: 9px solid transparent;
    border-left: 5px solid transparent;
  }
  .product-search-form-checkbox-list {
    margin: -5px -25px 0 0;
  }
  .product-search-form-checkbox-list li {
    margin: 10px 25px 0 0;
  }
  .product-search-form-radio-list {
    margin: -5px -50px 0 0;
  }
  .product-search-form-radio-list li {
    margin: 10px 50px 0 0;
  }
  .product-search-form-checkbox-list label {
    padding: 0 0 0 22px;
  }
  .product-search-form-checkbox-list label::before {
    top: 2px;
    width: 16px;
    height: 16px;
  }
  .product-search-form-checkbox-list input[type="checkbox"]:checked + label::before {
    background-size: 15px 15px;
  }
  .product-search-form-radio-list label {
    padding: 0 0 0 22px;
  }
  .product-search-form-radio-list label::before {
    top: 2px;
    width: 16px;
    height: 16px;
  }
  .product-search-form-radio-list label::after {
    top: 5px;
    left: 3px;
    width: 10px;
    height: 10px;
  }
  .product-search-form-more-contents {
    padding-top: 20px;
  }
  .product-search-form-more-button {
    margin: 40px -20px -40px;
  }
  .product-search-form-more-button a {
    padding: 11px;
    font-size: 1.4rem;
    transition: .2s ease-in-out;
  }
  .product-search-form-more-button a:hover {
    opacity: .5;
  }
  .product-search-submit {
    max-width: 235px;
    padding: 12px;
    font-size: 1.4rem;
    transition: background .2s ease-in-out, color .2s ease-in-out;
  }
  .product-search-submit span {
    padding-right: 18px;
  }
  _:-ms-fullscreen, :root .product-search-submit span {
    padding-top: 2px;
  }
  .product-search-submit span::before,
  .product-search-submit span::after {
    width: 10px;
    height: 13px;
    background-size: 10px 13px;
    transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
  }
  .product-search-submit:hover {
    background: #fff;
    color: #1b365d;
  }
  .product-search-submit:hover span::before {
    opacity: 0;
    visibility: hidden;
  }
  .product-search-submit:hover span::after {
    opacity: 1;
    visibility: visible;
  }
  .product-search-result-num {
    margin-top: 15px;
  }
  .product-search-section-title {
    padding: 0 5px 15px;
  }
  .product-search-section-title-image {
    width: 80px;
  }
  .product-search-section-title-text .name {
    font-size: 1.4rem;
  }
  .product-search-section-title-text .discontinued-label {
    padding: 5px 7px 6px;
    font-size: 1.4rem;
  }
  .product-search-list {
    display: flex;
    flex-wrap: wrap;
    margin: 10px 20px 0;
  }
  .product-search-item {
    width: calc(50% - 5px);
    margin-top: 10px;
  }
  .product-search-item:nth-child(odd) {
    margin-right: 10px;
  }
  .product-search-item-name {
    padding: 0 0 5px 12px;
  }
  .product-search-item-name .name {
    font-size: 1.4rem;
  }
  .product-search-section-title-text .name::after,
  .product-search-item-name .name::after {
    width: 6px;
    height: 12px;
    background-size: 6px 12px;
  }

  .product-section05 ul li a {
    padding: 27px 38px;
  }
}
@media screen and (min-width: 1024px), print {
  .product-search {
    margin: 0;
  }
}

/* product detail */
.product-detail-date {
  display: inline-block;
  padding: 1px 6px 2px;
  background: #f4f4f4;
  color: #656565;
  font-size: 1.1rem;
  font-weight: 700;
}
.product-detail-col {
  margin-top: 20px;
}
.product-detail-image {
  margin: 0 40px;
  text-align: center;
}
.product-detail-print-button {
  display: none;
}
.product-detail-bnr {
  margin-top: 20px;
  text-align: center;
}
.product-detail-table01 {
  width: 100%;
  table-layout: fixed;
  border-bottom: 1px solid #d8d8d8;
}
.product-detail-table01 th,
.product-detail-table01 td {
  border-top: 1px solid #d8d8d8;
  text-align: left;
  vertical-align: top;
}
.product-detail-table01 th {
  width: 120px;
  padding: 15px;
  background: #f4f4f4;
  color: #656565;
  font-size: 1.2rem;
  font-weight: 700;
}
.product-detail-table01 td {
  padding: 13px 15px;
  font-size: 1.4rem;
}
.product-detail-section {
  margin-top: 40px;
}
.product-detail-table02 {
  width: 100%;
  table-layout: fixed;
  border-bottom: 1px solid #d8d8d8;
}
.product-detail-table02 th,
.product-detail-table02 td {
  border-top: 1px solid #d8d8d8;
  text-align: left;
  vertical-align: top;
}
.product-detail-table02 thead th {
  padding: 12px;
  background: #f4f4f4;
  color: #656565;
  font-size: 1.2rem;
  font-weight: 700;
  text-align: center;
}
.product-detail-table02 thead th:nth-of-type(1) {
  width: 125px;
}
.product-detail-table02 tbody th {
  width: 125px;
  padding: 15px 10px;
  background: #f4f4f4;
  color: #656565;
  font-size: 1.2rem;
  font-weight: 700;
}
.product-detail-table02 tbody td {
  padding: 13px 10px;
  font-size: 1.4rem;
}
.product-detail-table02 tbody td:nth-of-type(1) {
  border-right: 1px solid #d8d8d8;
}
.product-detail-function-list {
  margin-top: 20px;
  list-style: none;
}
.product-detail-function-list li {
  margin-top: 10px;
}
.product-detail-function-list li a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 7px 30px;
  background: #222;
  border: 1px solid #222;
  color: #fff;
  font-size: 1.6rem;
  line-height: 1.2;
  text-decoration: none;
  text-align: center;
}
_:-ms-fullscreen, :root .product-detail-function-list li a {
  padding: 8px 30px 7px;
}
.product-detail-function-list li a::before,
.product-detail-function-list li a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 10px;
  width: 12px;
  height: 1px;
  background: #fff;
  transform: translateY(-50%);
}
.product-detail-function-list li a::after {
  transform: translateY(-50%) rotate(90deg);
}
.product-detail-function-list li .button-purple {
  background: #62607f;
  border: 1px solid #62607f;
}
.product-detail-function-list li .button-blue {
  background: #6195b9;
  border: 1px solid #6195b9;
}
.product-detail-function-list li .button-green {
  background: #7CBB86;
  border: 1px solid #7CBB86;
}
.product-detail-tab {
  margin-top: 20px;
}
.product-detail-tab-nav {
  display: none;
}
.product-detail-tab-contents {
  margin-top: 10px;
}
.product-detail-accordion-trigger {
  position: relative;
  display: block;
  padding: 15px;
  background: #d8d8d8;
  color: #656565;
  font-size: 1.6rem;
  font-weight: 700;
  text-decoration: none;
  text-align: center;
}
.product-detail-accordion-trigger::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 7px;
  width: 12px;
  height: 6px;
  background: url(../images/common/icon_arrow-bottom-gray_01.gif) 0 0 no-repeat;
  background-size: 12px 6px;
  transform: translateY(-50%);
}
.product-detail-accordion-trigger.is-open::after {
  transform: translateY(-50%) rotate(180deg);
}
.product-detail-tab-contents-inner {
  padding: 15px;
  border: 2px solid #f4f4f4;
  border-top: none;
  font-size: 1.2rem;
}
.product-detail-tab-contents-inner p + p {
  margin-top: 1em;
}
.product-detail-tab-contents02 .image {
  max-width: 420px;
  margin:  0 auto;
  text-align: center;
}
.product-detail-tab-contents03 .adobe-attention-image {
  width: 160px;
  margin: 10px auto 0;
}
.product-detail-tab-contents03 .dl-file {
  margin-top: 20px;
}
.product-detail-tab-contents03 .dl-file-row + .dl-file-row {
  margin-top: 0;
}
.product-detail-tab-contents03 .dl-file-col-head {
  padding: 8px;
  background: #f4f4f4;
  border-top: 1px solid #d8d8d8;
  border-bottom: 1px solid #d8d8d8;
  color: #656565;
  font-weight: 700;
  text-align: center;
}
.product-detail-tab-contents03 .dl-file-col-contents {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 516px;
  margin: 10px auto 0;
  text-align: center;
}
.product-detail-tab-contents03 .dl-file-col-contents a {
  display: inline-block;
  width: 48px;
  margin: 0 auto;
}
.product-detail-tab-contents04 .optional-item-list dt {
  position: relative;
  margin-bottom: 5px;
  padding-left: 15px;
  color: #1b365d;
  font-weight: 700;
}
.product-detail-tab-contents04 .optional-item-list dt:not(:first-child) {
  margin-top: 20px;
}
.product-detail-tab-contents04 .optional-item-list dt::before {
  content: '';
  position: absolute;
  top: 4px;
  left: 0;
  width: 11px;
  height: 11px;
  background: #1b365d;
  border-radius: 50%;
}
.product-detail-tab-contents04 table {
  width: 100%;
  table-layout: fixed;
  border-bottom: 1px solid #d8d8d8;
}
.product-detail-tab-contents04 table th,
.product-detail-tab-contents04 table td {
  border-top: 1px solid #d8d8d8;
  text-align: left;
  vertical-align: top;
}
.product-detail-tab-contents04 table th {
  width: 125px;
  padding: 15px 10px;
  background: #f4f4f4;
  color: #656565;
  font-size: 1.2rem;
  font-weight: 700;
}
.product-detail-tab-contents04 table th a::after {
  content: '';
  display: inline-block;
  width: 5px;
  height: 10px;
  margin-left: 7px;
  background-image: url(../images/common/icon_arrow-right-blue_01.png);
  background-size: 5px 10px;
}
.product-detail-tab-contents04 table td {
  padding: 13px 10px;
  font-size: 1.4rem;
}
.product-detail-tab-contents04 table td span {
  font-size: 1.2rem;
}
.product-detail-tab-contents04 .bnr {
  margin-top: 20px;
  text-align: center;
}
@media screen and (min-width: 768px), print {
  .product-detail-date {
    padding: 1px 8px 2px;
    font-size: 1.4rem;
  }
  .product-detail-row {
    display: flex;
    margin-top: 30px;
  }
  .product-detail-col:nth-child(1) {
    width: 260px;
    margin: 0;
  }
  .product-detail-col:nth-child(2) {
    flex: 1;
    margin: 0;
    padding-left: 25px;
  }
  .product-detail-image {
    margin: 0;
  }
  .product-detail-print-button {
    display: block;
    margin-top: 15px;
  }
  .product-detail-print-button a {
    font-size: 1.4rem;
  }
  .product-detail-print-button a::before,
  .product-detail-print-button a::after {
    width: 6px;
    height: 12px;
    background-size: 6px 12px;
  }
  .product-detail-bnr {
    margin-top: 15px;
  }
  .product-detail-table01 th {
    padding: 15px 10px;
  }
  .product-detail-table01 td {
    padding: 13px 15px;
  }
  .product-detail-table02 thead th:nth-of-type(1) {
    width: 150px;
  }
  .product-detail-table02 tbody th {
    width: 150px;
    padding: 15px 10px;
  }
  .product-detail-table02 tbody td {
    padding: 13px 25px;
  }
  .product-detail-function-list {
    display: flex;
    flex-wrap: wrap;
    margin: -20px -10px 0;
  }
  .product-detail-function-list li {
    width: calc(33.33334% - 20px);
    min-height: 60px;
    margin: 20px 10px 0;
  }
  .product-detail-function-list li a {
    height: 100%;
    font-size: 1.4rem;
    transition: background .2s ease-in-out, color .2s ease-in-out;
  }
  .product-detail-function-list li a::before,
  .product-detail-function-list li a::after {
    width: 14px;
    transition: background .2s ease-in-out;
  }
  .product-detail-function-list li a:hover {
    background: #fff;
    color: #222;
  }
  .product-detail-function-list li a:hover::before,
  .product-detail-function-list li a:hover::after {
    background: #222;
  }
  .product-detail-function-list li .button-purple:hover {
    color: #62607f;
  }
  .product-detail-function-list li .button-purple:hover::before,
  .product-detail-function-list li .button-purple:hover::after {
    background: #62607f;
  }
  .product-detail-function-list li .button-blue:hover {
    color: #6195b9;
  }
  .product-detail-function-list li .button-blue:hover::before,
  .product-detail-function-list li .button-blue:hover::after {
    background: #6195b9;
  }
  .product-detail-function-list li .button-green:hover {
    color: #7CBB86;
  }
  .product-detail-function-list li .button-green:hover::before,
  .product-detail-function-list li .button-green:hover::after {
    background: #7CBB86;
  }
  .product-detail-tab {
    margin-top: 40px;
  }
  .product-detail-tab-nav {
    display: flex;
    list-style: none;
  }
  .product-detail-tab-nav li:not(:first-child) {
    width: calc(25% - 1px);
    margin-left: 1px;
  }
  .product-detail-tab-nav li:first-child {
    width: 25%;
  }
  .product-detail-tab-nav li a {
    position: relative;
    display: block;
    padding: 15px;
    background: #d8d8d8;
    color: #656565;
    font-size: 1.4rem;
    font-weight: 700;
    text-decoration: none;
    text-align: center;
    transition: .2s ease-in-out;
  }
  .product-detail-tab-nav li a::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 10px;
    width: 15px;
    height: 8px;
    background: url(../images/common/icon_arrow-bottom-gray_01.gif) 0 0 no-repeat;
    background-size: 15px 8px;
    transform: translateY(-50%);
  }
  .product-detail-tab-nav .is-active a {
    background: #f4f4f4;
    color: #222;
  }
  .product-detail-tab-nav li:not(.is-active) a:hover {
    opacity: .5;
  }
  .product-detail-tab-contents {
    margin: 0;
  }
  .product-detail-accordion-trigger {
    display: none;
  }
  .product-detail-tab-contents-inner {
    padding: 30px;
    font-size: 1.4rem;
  }
  .product-detail-tab-contents03 .adobe-attention {
    display: flex;
    align-items: center;
    margin: 0 -10px;
  }
  .product-detail-tab-contents03 .adobe-attention-text {
    flex: 1;
    padding-right: 40px;
    font-size: 1.2rem;
  }
  .product-detail-tab-contents03 .adobe-attention-image {
    margin: 0;
  }
  .product-detail-tab-contents03 .dl-file-row + .dl-file-row {
    margin-top: 10px;
  }
  .product-detail-tab-contents03 .dl-file-col-head {
    padding: 12px;
    font-size: 1.2rem;
  }
  .product-detail-tab-contents04 .optional-item-list dt {
    margin-bottom: 10px;
    padding-left: 18px;
    font-size: 1.4rem;
  }
  .product-detail-tab-contents04 .optional-item-list dt:not(:first-child) {
    margin-top: 30px;
  }
  .product-detail-tab-contents04 .optional-item-list dt::before {
    top: 5px;
    width: 13px;
    height: 13px;
  }
  .product-detail-tab-contents04 .optional-item-list table th {
    width: 150px;
    padding: 15px;
  }
  .product-detail-tab-contents04 .optional-item-list table td {
    text-align: center;
  }
  .product-detail-tab-contents04 .bnr {
    margin: 20px 30px 0;
  }
}

/* product detail function detail & modal */
.function-detail {
  overflow-y: auto;
}
.function-detail-contents {
  height: 400px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 15px;
}
.function-detail-title {
  margin-bottom: 20px;
  padding-bottom: 5px;
  border-bottom: 2px solid #1b365d;
  font-size: 1.8rem;
  font-weight: 400;
}
.function-detail-text p + p {
  margin-top: 1em;
}
.function-detail-image {
  margin: 20px 25px 0;
  text-align: center;
}
.function-detail-image-inner {
  display: inline-block;
  max-width: 260px;
}
.function-detail-image img {
  display: block;
  border: 1px solid #cbcbcb;
  margin: 0 auto;
}
@media screen and (min-width: 480px), print {
  .function-detail-contents {
    height: auto;
  }
  .function-detail-contents {
    padding: 20px;
  }
  .function-detail-title {
    margin-bottom: 15px;
    padding-bottom: 2px;
    font-size: 2.0rem;
  }
  .function-detail-image img {
    border-width: 2px;
  }
}

 #function-modal-overlay {
  display: none;
  position: fixed;
  top: -9999px;
  bottom: -9999px;
  left: 0;
  z-index: 2000;
  width: 100%;
  min-height: 100%;
  background: #000;
  opacity: .5 !important;
}
#function-modal-case {
  display: none;
  position: fixed;
  z-index: 2002;
  top: 50%;
  left: 50%;
}
#function-modal-case,
.function-modal-contentInner {
  width: calc(100vw - 30px);
  max-width: 500px;
}
.function-modal-contentInner {
  position: relative;
}
#function-modal-case iframe {
  width: 100% !important;
  max-width: 100% !important;
}
.function-modal-open body {
  overflow: hidden;
}
.function-modal-isMobileDevice .function-modal-open body {
  max-width: 100%;
  max-height: 100%;
}
.function-modal-icon-close,
.function-modal-icon-prev,
.function-modal-icon-next,
.custom-function-modal-icon-prev.is-disabled,
.custom-function-modal-icon-next.is-disabled {
  display: none !important;
}
.custom-function-modal-icon-close,
.custom-function-modal-icon-prev,
.custom-function-modal-icon-next {
  display: block !important;
  position: absolute;
  font-size: 0;
}
.custom-function-modal-icon-close {
  top: -25px;
  right: 0;
  width: 25px;
  height: 25px;
}
.custom-function-modal-icon-close::before,
.custom-function-modal-icon-close::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 15px;
  height: 2px;
  background: #fff;
}
.custom-function-modal-icon-close::before {
  transform: translateY(7px) rotate(45deg);
}
.custom-function-modal-icon-close::after {
  transform: translateY(7px) rotate(-45deg);
}
.custom-function-modal-icon-prev,
.custom-function-modal-icon-next {
  display: block !important;
  position: absolute;
  bottom: -50px;
  width: 40px;
  height: 40px;
  background: #fff;
  border: 1px solid #1b365d;
}
.custom-function-modal-icon-prev {
  left: 0;
}
.custom-function-modal-icon-next {
  right: 0;
}
.custom-function-modal-icon-prev::before,
.custom-function-modal-icon-prev::after,
.custom-function-modal-icon-next::before,
.custom-function-modal-icon-next::after {
  content: '';
  position: absolute;
  top: 12px;
  width: 7px;
  height: 14px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 7px 14px;
}
.custom-function-modal-icon-prev::after,
.custom-function-modal-icon-next::after {
  opacity: 0;
  visibility: hidden;
}
.custom-function-modal-icon-prev::before {
  left: 15px;
  background-image: url(../images/common/icon_arrow-left-blue_01.png);
}
.custom-function-modal-icon-prev::after {
  left: 15px;
  background-image: url(../images/common/icon_arrow-left-white_01.png);
}
.custom-function-modal-icon-next::before {
  left: 16px;
  background-image: url(../images/common/icon_arrow-right-blue_01.png);
}
.custom-function-modal-icon-next::after {
  left: 16px;
  background-image: url(../images/common/icon_arrow-right-white_01.png);
}
@media screen and (min-width: 480px) and (min-height: 480px), print {
  #function-modal-case {
    min-width: 540px;
  }
  .function-modal-contentInner {
    width: 100%;
    min-width: inherit;
  }
  #function-modal-content {
    padding: 0 20px;
  }
  .custom-function-modal-icon-close {
    top: -30px;
    width: 30px;
    height: 30px;
    transition: opacity .2s ease-in-out;
  }
  .custom-function-modal-icon-close::before,
  .custom-function-modal-icon-close::after {
    top: 5px;
    width: 18px;
  }
  .custom-function-modal-icon-close:hover {
    opacity: .5;
  }
  .custom-function-modal-icon-prev,
  .custom-function-modal-icon-next {
    bottom: 50%;
    transform: translateY(50%);
    transition: background .2s ease-in-out;
  }
  .custom-function-modal-icon-prev {
    left: -50px;
  }
  .custom-function-modal-icon-next {
    right: -50px;
  }
  .custom-function-modal-icon-prev::before,
  .custom-function-modal-icon-prev::after,
  .custom-function-modal-icon-next::before,
  .custom-function-modal-icon-next::after {
    transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
  }
  .custom-function-modal-icon-prev:hover,
  .custom-function-modal-icon-next:hover {
    background: #1b365d;
  }
  .custom-function-modal-icon-prev:hover::before,
  .custom-function-modal-icon-next:hover::before {
    opacity: 0;
    visibility: hidden;
  }
  .custom-function-modal-icon-prev:hover::after,
  .custom-function-modal-icon-next:hover::after {
    opacity: 1;
    visibility: visible;
  }
}
@media screen and (max-width: 768px), print {
  html.function-modal-isMobileDevice[data-lc-type=iframe] #function-modal-content .function-modal-contentInner iframe {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
}

 #compare-modal-overlay {
  display: none;
  position: fixed;
  top: -9999px;
  bottom: -9999px;
  left: 0;
  z-index: 2000;
  width: 100%;
  min-height: 100%;
  background: #000;
  opacity: .5 !important;
}
#compare-modal-case {
  display: none;
  position: fixed;
  z-index: 2002;
  top: 50%;
  left: 50%;
}
#compare-modal-case,
.compare-modal-contentInner {
  width: calc(100vw - 30px);
  max-width: 800px;
}
.compare-modal-contentInner {
  position: relative;
}
#compare-modal-case iframe {
  width: 100% !important;
  max-width: 100% !important;
}
.compare-modal-open body {
  overflow: hidden;
}
.compare-modal-isMobileDevice .compare-modal-open body {
  max-width: 100%;
  max-height: 100%;
}
.compare-modal-icon-close,
.compare-modal-icon-prev,
.compare-modal-icon-next,
.custom-compare-modal-icon-prev.is-disabled,
.custom-compare-modal-icon-next.is-disabled {
  display: none !important;
}
.custom-compare-modal-icon-close,
.custom-compare-modal-icon-prev,
.custom-compare-modal-icon-next {
  display: block !important;
  position: absolute;
  font-size: 0;
}
.custom-compare-modal-icon-close {
  top: -25px;
  right: 0;
  width: 25px;
  height: 25px;
}
.custom-compare-modal-icon-close::before,
.custom-compare-modal-icon-close::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 15px;
  height: 2px;
  background: #fff;
}
.custom-compare-modal-icon-close::before {
  transform: translateY(7px) rotate(45deg);
}
.custom-compare-modal-icon-close::after {
  transform: translateY(7px) rotate(-45deg);
}
.custom-compare-modal-icon-prev,
.custom-compare-modal-icon-next {
  display: block !important;
  position: absolute;
  bottom: -50px;
  width: 40px;
  height: 40px;
  background: #fff;
  border: 1px solid #1b365d;
}
.custom-compare-modal-icon-prev {
  left: 0;
}
.custom-compare-modal-icon-next {
  right: 0;
}
.custom-compare-modal-icon-prev::before,
.custom-compare-modal-icon-prev::after,
.custom-compare-modal-icon-next::before,
.custom-compare-modal-icon-next::after {
  content: '';
  position: absolute;
  top: 12px;
  width: 7px;
  height: 14px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 7px 14px;
}
.custom-compare-modal-icon-prev::after,
.custom-compare-modal-icon-next::after {
  opacity: 0;
  visibility: hidden;
}
.custom-compare-modal-icon-prev::before {
  left: 15px;
  background-image: url(../images/common/icon_arrow-left-blue_01.png);
}
.custom-compare-modal-icon-prev::after {
  left: 15px;
  background-image: url(../images/common/icon_arrow-left-white_01.png);
}
.custom-compare-modal-icon-next::before {
  left: 16px;
  background-image: url(../images/common/icon_arrow-right-blue_01.png);
}
.custom-compare-modal-icon-next::after {
  left: 16px;
  background-image: url(../images/common/icon_arrow-right-white_01.png);
}
@media screen and (min-width: 480px) and (min-height: 480px), print {
  #compare-modal-case {
    min-width: 540px;
  }
  .compare-modal-contentInner {
    width: 100%;
    min-width: inherit;
  }
  #compare-modal-content {
    padding: 0 20px;
  }
  .custom-compare-modal-icon-close {
    top: -30px;
    width: 30px;
    height: 30px;
    transition: opacity .2s ease-in-out;
  }
  .custom-compare-modal-icon-close::before,
  .custom-compare-modal-icon-close::after {
    top: 5px;
    width: 18px;
  }
  .custom-compare-modal-icon-close:hover {
    opacity: .5;
  }
  .custom-compare-modal-icon-prev,
  .custom-compare-modal-icon-next {
    bottom: 50%;
    transform: translateY(50%);
    transition: background .2s ease-in-out;
  }
  .custom-compare-modal-icon-prev {
    left: -50px;
  }
  .custom-compare-modal-icon-next {
    right: -50px;
  }
  .custom-compare-modal-icon-prev::before,
  .custom-compare-modal-icon-prev::after,
  .custom-compare-modal-icon-next::before,
  .custom-compare-modal-icon-next::after {
    transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
  }
  .custom-compare-modal-icon-prev:hover,
  .custom-compare-modal-icon-next:hover {
    background: #1b365d;
  }
  .custom-compare-modal-icon-prev:hover::before,
  .custom-compare-modal-icon-next:hover::before {
    opacity: 0;
    visibility: hidden;
  }
  .custom-compare-modal-icon-prev:hover::after,
  .custom-compare-modal-icon-next:hover::after {
    opacity: 1;
    visibility: visible;
  }
}
@media screen and (max-width: 768px), print {
  html.compare-modal-isMobileDevice[data-lc-type=iframe] #compare-modal-content .compare-modal-contentInner iframe {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
}

/* news_release index */
.news-release-list {
  margin-top: 20px;
  list-style: none;
}
.news-release-item {
  padding-bottom: 25px;
  border-bottom: 1px solid #d8d8d8;
}
.news-release-item:not(:first-child) {
  padding-top: 20px;
}
.news-release-item p {
  margin-top: 10px;
  font-size: 1.2rem;
}
.news-release-item-time {
  display: inline-block;
  margin-right: 10px;
  font-size: 1.2rem;
  color: #1b365d;
}
.news-release-item-category {
  display: inline-block;
}
.news-release-item-category span {
  display: inline-block;
  padding: 1px 4px;
  font-size: 1.1rem;
  color: #fff;
}
.news-release-item-category .label01 {
  background: #aa9f71;
}
.news-release-item-category .label02 {
  background: #5c8385;
}
.news-release-item-category .label03 {
  background: #1b365d;
}
.news-release-item-title {
  margin-top: 8px;
  font-size: 1.6rem;
  font-weight: bold;
}
.news-release-item-title a {
  position: relative;
  display: inline-block;
  padding-right: 12px;
}
.news-release-item-title a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0px;
  width: 7px;
  height: 14px;
  transform: translateY(-50%);
  background: url(../images/common/icon_arrow-right-blue_02.png) 0 0 no-repeat;
  background-size: 7px 14px;
}
.news-release-item-more {
  margin-top: 12px;
}
.news-release-item-more a {
  position: relative;
  display: inline-block;
  padding-right: 10px;
}
.news-release-item-more a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0px;
  width: 6px;
  height: 12px;
  transform: translateY(-50%);
  margin-top: 1px;
  background: url(../images/common/icon_arrow-right-blue_01.png) 0 0 no-repeat;
  background-size: 6px 12px;
}
@media screen and (min-width: 768px), print {
  .news-release-list {
    margin-top: 30px;
  }
  .news-release-item {
    padding-bottom: 30px;
  }
  .news-release-item:not(:first-child) {
    padding-top: 30px;
  }
  .news-release-item p {
    margin-top: 15px;
    font-size: 1.6rem;
  }
  .news-release-item-time {
    font-size: 1.4rem;
  }
  .news-release-item-category span {
    padding: 1px 5px;
    font-size: 1.2rem;
  }
  .news-release-item-title {
    margin-top: 10px;
    font-size: 2.0rem;
  }
  .news-release-item-title a {
    padding-right: 15px;
  }
  .news-release-item-title a::after {
    width: 8px;
    height: 17px;
    margin-top: 1px;
    background-size: 8px 17px;
  }
  .news-release-item-more {
    margin-top: 15px;
  }
  .news-release-item-more a {
    padding-right: 14px;
  }
}

/* news_release detail */
.news-release-detail-inner {
  padding-bottom: 40px;
  border-bottom: 1px solid #d8d8d8;
}
.news-release-detail-title {
  line-height: 1.2;
}
.news-release-detail-time {
  display: inline-block;
  margin-right: 10px;
  font-size: 1.2rem;
  color: #1b365d;
}
.news-release-detail-category {
  display: inline-block;
}
.news-release-detail-category span {
  display: inline-block;
  padding: 1px 4px;
  font-size: 1.1rem;
  color: #fff;
}
.news-release-detail-category .label01 {
  background: #aa9f71;
}
.news-release-detail-category .label02 {
  background: #5c8385;
}
.news-release-detail-category .label03 {
  background: #1b365d;
}
.news-release-detail-contents {
  margin-top: 15px;
  font-size: 1.2rem;
}
.news-release-detail-contents p {
  margin-top: 15px;
}
.news-release-detail-contents ul {
  margin-top: 10px;
  list-style: none;
}
.news-release-detail-contents ul li {
  position: relative;
  padding-left: 1em;
}
.news-release-detail-contents ul li::before {
  content: '・';
  position: absolute;
  left: 0;
  display: block;
}
.news-release-detail-contents img {
  display: block;
  max-width: 520px;
  margin: 15px auto 0;
}
@media screen and (min-width: 768px), print {
  .news-release-detail-title {
    line-height: 1.6;
  }
  .news-release-detail-time {
    font-size: 1.4rem;
  }
  .news-release-detail-category span {
    padding: 1px 5px;
    font-size: 1.2rem;
  }
  .news-release-detail-contents {
    font-size: 1.6rem;
  }
  .news-release-detail-contents ul {
    margin-top: 15px;
  }
  .news-release-detail-contents img {
    margin-top: 25px;
  }
}

/* support faq */
.faq-section {
  margin-top: 20px;
}
.faq-section-title {
  font-size: 1.6rem;
  font-weight: 700;
}
.faq-section p + p {
  margin-top: 1em;
}
.faq-section dt {
  position: relative;
  margin-top: 10px;
  padding: 12px 50px 12px 15px;
  background: #f4f4f4;
  font-size: 1.2rem;
  font-weight: 700;
  cursor: pointer;
}
.faq-section dt::before,
.faq-section dt::after {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: #000000;
}
.faq-section dt::before {
  right: 10px;
  width: 12px;
  height: 1px;
}
.faq-section dt::after {
  right: 15px;
  width: 1px;
  height: 12px;
}
.faq-section dt.is-open::after {
  display: none;
}
.faq-section dd {
  display: none;
  padding: 15px 15px 0 12px;
  font-size: 1.2rem;
}
@media screen and (min-width: 768px), print {
  .faq-section {
    margin-top: 25px;
  }
  .faq-section-title {
    font-size: 2.0rem;
  }
  .faq-section dl {
    margin-top: 15px;
  }
  .faq-section dt {
    margin-top: 15px;
    padding: 15px 50px 15px 15px;
    font-size: 1.6rem;
  }
  .faq-section dt::before {
    right: 15px;
    width: 14px;
    height: 1px;
  }
  .faq-section dt::after {
    right: 21px;
    width: 1px;
    height: 14px;
  }
  .faq-section dd {
    padding: 15px 20px 5px 20px;
    font-size: 1.6rem;
  }
}

/* support */
.page-support-index {
  padding-top: 20px;
  padding-bottom: 40px;
}
.support-index-note-more {
  margin-top: 20px;
}
.support-index-note-more a {
  font-size: 1.6rem;
}
.support-index-note-more a span {
  display: block;
  font-size: 1.2rem;
}
.support-index-section01 {
  margin-top: 25px;
}
.support-index-section01 .support-index-section01-sub-heading {
  font-weight: 700;
}
.support-index-search-form-row {
  display: flex;
  margin-top: 5px;
}
.support-index-search-form-field {
  flex: 1;
  margin-right: 15px;
}
.support-index-search-form-row input[type="text"] {
  width: 100%;
  min-height: 35px;
  padding: 3px 10px 5px;
  background: #fff;
  border: 1px solid #888;
  font-size: 1.0rem;
  border-radius: 0;
  -webkit-appearance: none;
}
.support-index-search-form-row input::placeholder {
  font-size: 1.0rem;
}
.support-index-search-button {
  width: 100px;
}
.support-index-search-submit {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  background: #1b365d;
  border: 1px solid #1b365d;
  box-shadow: 0 -3px 0 #0a1628 inset;
  color: #fff;
  font-size: 1.2rem;
  text-align: center;
  transition: background .2s ease-in-out, color .2s ease-in-out;
}
.support-index-search-submit span {
  position: relative;
  display: inline-block;
  padding-right: 14px;
}
.support-index-search-submit span::before,
.support-index-search-submit span::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  width: 9px;
  height: 12px;
  margin-top: 1px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 9px 12px;
  transform: translateY(-50%);
  transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
}
.support-index-search-submit span::before {
  background-image: url(../images/common/icon_search-white_01.png);
}
.support-index-search-submit span::after {
  background-image: url(../images/common/icon_search-blue_01.png);
  opacity: 0;
  visibility: hidden;
}
.support-index-section01 .support-index-list {
  display: block;
  margin: 20px 0 0;
  list-style: none;
}
.support-index-section01 .support-index-list .support-index-item {
  width: 100%;
  margin: 15px 0 0;
}
.support-index-section01 .support-index-list .support-index-item a {
  font-size: 1.2rem;
}
.support-index-section02 {
  margin-top: 40px;
}
.support-index-section02 .support-index-section02-sub-heading {
  font-size: 1.4rem;
  font-weight: 700;
}
.support-index-section02 .support-index-section02-sub-heading {
  margin-top: 20px;
}
.support-index-section02 p {
  font-size: 1.2rem;
}
.support-index-section02-note {
  margin-top: 20px;
  padding-left: 1em;
  text-indent: -1.0em;
}
.support-index-section02-button {
  max-width: 440px;
  margin: 20px auto 0;
}
.support-index-section03 {
  padding-top: 35px;
}
.support-index-section03-sub-heading {
  margin: 30px 0 0;
  font-size: 1.5rem;
  font-weight: 700;
}
.support-index-section03-tel p {
  font-size: 1.2rem;
}
.support-index-section03-private {
  margin-top: 20px;
}
.support-index-section03-synthesis {
  margin-top: 20px;
}
.support-index-section03-synthesis-tel span {
  font-size: 1.8rem;
}
.support-index-section03-synthesis .support-index-section03-synthesis-name,
.support-index-section03-company .support-index-section03-company-name,
.support-index-section03-private .support-index-section03-private-name {
  font-size: 1.4rem;
  font-weight: 700;
}
.support-index-section03-synthesis .support-index-section03-synthesis-tel,
.support-index-section03-company .support-index-section03-company-tel,
.support-index-section03-private .support-index-section03-private-tel {
  position: relative;
  margin-bottom: 5px;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
}
.support-index-section03-synthesis .support-index-section03-synthesis-tel,
.support-index-section03-company .support-index-section03-company-tel {
  padding-left: 23px;
}
.support-index-section03-private .support-index-section03-private-tel {
  padding-left: 35px;
}
.support-index-section03-synthesis-tel::before,
.support-index-section03-company-tel::before,
.support-index-section03-private-tel::before {
  content: '';
  position: absolute;
  left: 0;
}
.support-index-section03-synthesis-tel::before,
.support-index-section03-company-tel::before {
  top: 2px;
  width: 18px;
  height: 22px;
  background: url(../images/support/icon_05.png) 0 0 no-repeat;
  background-size: 18px 22px;
}
.support-index-section03-private-tel::before {
  top: 0;
  width: 29px;
  height: 23px;
  background: url(../images/support/icon_06.png) 0 0 no-repeat;
  background-size: 29px 23px;
}
.support-index-section03-note {
  margin-top: 15px;
  font-size: 1.2rem;
}
.support-index-section03-info {
  margin-top: 20px;
}
.support-index-section03-item {
  display: flex;
  align-items: center;
  margin-top: 10px;
  padding: 8px 10px;
  background: #f4f4f4;
  counter-increment: step;
}
.support-index-section03-item-image {
  width: 60px;
  margin-right: 10px;
}
.support-index-section03-item-text {
  flex: 1;
}
.support-index-section03-item p::before {
  content: "Step?E?Ecounter(step);
  display: block;
  font-size: 1.4rem;
  font-weight: 700;
  color: #1b365d;
}
.support-index-section03-button {
  max-width: 440px;
  margin: 20px auto 0;
}
.support-index-section04 {
  margin-top: 40px;
}
@media screen and (min-width: 375px), print {
  .support-index-section01 .support-index-list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -7px;
  }
  .support-index-section01 .support-index-list .support-index-item {
    width: calc(50% - 14px);
    margin: 15px 7px 0;
  }
  .support-index-section01 .support-index-list .support-index-item a {
    padding: 8px 10px 8px 8px;
  }
  .support-index-search-form-row input[type="text"] {
    font-size: 1.2rem;
  }
  .support-index-search-form-row input::placeholder {
    font-size: 1.2rem;
  }
}
@media screen and (min-width: 768px), print {
  .page-support-index {
    padding-top: 50px;
    padding-bottom: 100px;
  }
  .support-index-note-more {
    margin-top: 30px;
  }
  .support-index-note-more a {
    font-size: 1.8rem;
  }
  .support-index-note-more a span {
    font-size: 1.4rem;
  }
  .support-index-section01 {
    margin-top: 50px;
  }
  .support-index-search-form-row {
    margin-top: 10px;
  }
  .support-index-search-form-row input[type="text"] {
    min-height: 40px;
    margin-right: 15px;
    font-size: 1.6rem;
  }
  .support-index-search-form-row input::placeholder {
    font-size: 1.6rem;
  }
  .support-index-search-button {
    width: 145px;
  }
  .support-index-search-submit {
    font-size: 1.4rem;
  }
  .support-index-search-submit span {
    padding-right: 17px;
  }
  .support-index-search-submit span::before,
  .support-index-search-submit span::after {
    width: 11px;
    height: 14px;
    background-size: 11px 14px;
  }
  .support-index-search-submit:hover {
    background: #fff;
    color: #1b365d;
  }
  .support-index-search-submit:hover span::before {
    opacity: 0;
    visibility: hidden;
  }
  .support-index-search-submit:hover span::after {
    opacity: 1;
    visibility: visible;
  }
  .support-index-section01 .support-index-list {
    margin: 10px -10px 0;
  }
  .support-index-section01 .support-index-list .support-index-item {
    width: calc(50% - 20px);
    margin: 20px 10px 0;
  }
  .support-index-section01 .support-index-list .support-index-item a {
    padding: 20px;
    font-size: 1.4rem;
  }
  .support-index-section02 .support-index-section02-sub-heading {
    margin-top: 30px;
    font-size: 1.6rem;
  }
  .support-index-section02 p {
    font-size: 1.6rem;
  }
  .support-index-section02-note {
    margin-top: 30px;
  }
  .support-index-section03-list {
    display: flex;
    margin: 10px -5px 0;
  }
  .support-index-section03-item {
    width: calc(50% - 10px);
    margin: 10px 5px 0;
    padding: 14px 5px;
  }
  .support-index-section03-item-image {
    width: 75px;
  }
  .support-index-section03-item p {
    font-size: 1.4rem;
  }
  .support-index-section03-item p::before {
    font-size: 1.6rem;
  }
  .support-index-section03 {
    padding-top: 40px;
  }
  .support-index-section03-sub-heading {
    font-size: 1.8rem;
  }
  .support-index-section03-tel {
    display: flex;
  }
  .support-index-section03-tel p {
    font-size: 1.6rem;
  }
  .support-index-section03-company,
  .support-index-section03-private {
    width: 50%;
  }
  .support-index-section03-private {
    position: relative;
    margin: 0 0 0 60px;
  }
  .support-index-section03-private::before {
    content: '';
    position: absolute;
    top: 0;
    left: -30px;
    width: 1px;
    height: 100%;
    background: #d8d8d8;
  }
  .support-index-section03-synthesis-tel span {
    font-size: 2.2rem;
  }
  .support-index-section03-synthesis .support-index-section03-synthesis-name,
  .support-index-section03-company .support-index-section03-company-name,
  .support-index-section03-private .support-index-section03-private-name {
    font-size: 1.6rem;
  }
  .support-index-section03-synthesis .support-index-section03-synthesis-tel,
  .support-index-section03-company .support-index-section03-company-tel,
  .support-index-section03-private .support-index-section03-private-tel {
    font-size: 3.0rem;
  }
  .support-index-section03-synthesis .support-index-section03-synthesis-tel,
  .support-index-section03-company .support-index-section03-company-tel {
    padding-left: 26px;
  }
  .support-index-section03-private .support-index-section03-private-tel {
    padding-left: 46px;
  }
  .support-index-section03-synthesis-tel::before,
  .support-index-section03-company-tel::before {
    top: 3px;
    width: 21px;
    height: 24px;
    background-size: 21px 24px;
  }
  .support-index-section03-private-tel::before {
    width: 39px;
    height: 30px;
    background-size: 39px 30px;
  }
  .support-index-section03-note {
    margin-top: 35px;
    font-size: 1.6rem;
  }
  .support-index-section03-info {
    padding-left: 1em;
    text-indent: -1em;
  }
}
@media screen and (min-width: 1024px), print {
  .support-index-section01 .support-index-list .support-index-item {
    width: calc(25% - 20px);
    margin: 20px 10px 0;
  }
  .support-index-section01 .support-index-list .support-index-item:first-child a {
    padding: 20px 20px 20px 10px;
  }
  .support-index-section03-item-image {
    width: 75px;
    margin: 0 5px 0 20px;
  }
  .support-index-section02-item p {
    font-size: 1.6rem;
  }
  .support-index-section02-item p::before {
    font-size: 1.8rem;
  }
}

/* inquiry */
.page-inquiry {
  padding-top: 20px;
  padding-bottom: 30px;
}
.inquiry-contact-flow {
  display: flex;
  margin: 20px 0;
  list-style: none;
}
.inquiry-contact-flow li {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 33.3333%;
  padding: 10px 12px;
  border-left: none;
  background: #f4f4f4;
  font-size: 1.2rem;
  text-align: center;
}
.page-inquiry-index .inquiry-contact-flow li:nth-child(1) {
  position: relative;
  background: #d8d8d8;
}
.page-inquiry-index .inquiry-contact-flow li:nth-child(2) {
  position: relative;
}
.page-inquiry-index .inquiry-contact-flow li:nth-child(2)::after {
  content: '';
  position: absolute;
  top: 0;
  left: -1px;
  z-index: 2;
  width: 0;
  height: 100%;
  padding-right: 50%;
  background: url(../images/inquiry/bg_flow_01_sm.png) 0 0 no-repeat;
  background-size: auto 100%
}
.page-inquiry-index .inquiry-contact-flow li:nth-child(3) {
  position: relative;
}
.page-inquiry-index .inquiry-contact-flow li:nth-child(3)::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 0;
  height: 100%;
  padding-right: 50%;
  background: url(../images/inquiry/bg_flow_02_sm.png) 0 0 no-repeat;
  background-size: auto 100%
}
.inquiry-contact-form-row {
  margin-top: 15px;
}
.inquiry-contact-form-label {
  padding-bottom: 5px;
  font-size: 1.4rem;
  font-weight: 700;
}
.inquiry-contact-form-label .required {
  margin-left: 10px;
  padding: 1px 10px 2px;
  background: #b2474c;
  font-size: 1.1rem;
  font-weight: 400;
  color: #fff;
}
.inquiry-contact-form-select {
  position: relative;
}
.inquiry-contact-form-select::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 15px;
  border-top: 8px solid #1b365d;
  border-right: 5px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 5px solid transparent;
  transform: translateY(-25%);
  pointer-events: none;
}
.inquiry-contact-form-row select {
  width: 100%;
  min-height: 35px;
  padding: 5px 10px;
  border: 1px solid #888;
  border-radius: 0;
  -webkit-appearance: none;
}
.inquiry-contact-form-row select option {
  font-size: 1.2rem;
}
.inquiry-contact-form-row textarea {
  width: 100%;
  height: 100px;
  padding: 5px 10px;
  border: 1px solid #888;
  border-radius: 0;
  -webkit-appearance: none;
}
.inquiry-contact-form-row input {
  width: 100%;
  min-height: 35px;
  padding: 5px 10px;
  border: 1px solid #888;
  border-radius: 0;
  -webkit-appearance: none;
}
.inquiry-contact-form-row ul {
  list-style: none;
  display: flex;
  margin: 0 -10px;
}
.inquiry-contact-form-row ul li {
  position: relative;
  width: 33.3333%;
  padding: 0 10px;
}
.inquiry-contact-form-row ul li:nth-child(1)::after,
.inquiry-contact-form-row ul li:nth-child(2)::after {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -5px;
  width: 10px;
  height: 1px;
  background: #888;
}
.inquiry-contact-form-radio-list {
  margin-top: -10px;
}
.inquiry-contact-form-radio-item {
  display: none;
}
.inquiry-contact-form-radio-item + label {
  display: inline-block;
  padding-left: 25px;
  position: relative;
  margin: 15px 20px 0 0;
  font-size: 1.2rem;
  white-space: nowrap;
}
.inquiry-contact-form-radio-item + label::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border: 1px solid #999;
  border-radius: 50%;
}
.inquiry-contact-form-radio-item:checked + label::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 3px;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  background: #888;
  border-radius: 50%;
}
.inquiry-contact-button {
  max-width: 320px;
  margin: 20px auto 0;
}
.inquiry-section02 {
  padding-top: 35px;
}
.inquiry-section02-sub-heading {
  font-weight: 700;
}
.inquiry-section02-tel p {
  font-size: 1.2rem;
}
.inquiry-section02-private {
  margin-top: 20px;
}
.inquiry-section02-tel .inquiry-section02-company-name,
.inquiry-section02-tel .inquiry-section02-private-name {
  font-size: 1.4rem;
  font-weight: 700;
}
.inquiry-section02-tel .inquiry-section02-company-tel,
.inquiry-section02-tel .inquiry-section02-private-tel {
  position: relative;
  margin-bottom: 5px;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
}
.inquiry-section02-tel .inquiry-section02-company-tel {
  padding-left: 23px;
}
.inquiry-section02-tel .inquiry-section02-private-tel {
  padding-left: 35px;
}
.inquiry-section02-company-tel::before,
.inquiry-section02-private-tel::before {
  content: '';
  position: absolute;
  left: 0;
}
.inquiry-section02-company-tel::before {
  top: 2px;
  width: 18px;
  height: 22px;
  background: url(../images/inquiry/icon_company_tel.png) 0 0 no-repeat;
  background-size: 18px 22px;
}
.inquiry-section02-private-tel::before {
  top: 0;
  width: 29px;
  height: 23px;
  background: url(../images/inquiry/icon_private_tel.png) 0 0 no-repeat;
  background-size: 29px 23px;
}
.inquiry-section02-note {
  margin-top: 15px;
  font-size: 1.2rem;
}
.inquiry-section02-info {
  margin-top: 30px;
}
.inquiry-contact-form-row input[type="file"] {
  border: none;
  padding-left: 0;
}
.inquiry-contact-form-row input[type="file"] + p {
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (min-width: 768px), print {
  .page-inquiry {
    padding-top: 50px;
    padding-bottom: 100px
  }
  .inquiry-contact-flow {
    margin: 30px 0;
  }
  .inquiry-contact-flow li {
    padding: 12px 35px;
    font-size: 1.6rem;
  }
  .page-inquiry-index .inquiry-contact-flow li:nth-child(2)::after {
    background: url(../images/inquiry/bg_flow_01_lg.png) 0 0 no-repeat;
    background-size: auto 100%
  }
  .page-inquiry-index .inquiry-contact-flow li:nth-child(3)::after {
    background: url(../images/inquiry/bg_flow_02_lg.png) 0 0 no-repeat;
    background-size: auto 100%
  }
  .inquiry-contact-form-row {
    display: flex;
    font-size: 1.4rem;
  }
  .inquiry-contact-form-label {
    width: 250px;
    margin-top: 5px;
    padding-bottom: 0;
    font-size: 1.6rem;
  }
  .inquiry-contact-form-label .required {
    font-size: 1.2rem;
  }
  .inquiry-contact-form-select {
    flex: 1;
    max-width: 245px;
  }
  .inquiry-contact-form-input {
    flex: 1;
  }
  .inquiry-contact-form-input .small {
    max-width: 245px;
  }
  .inquiry-contact-form-input input.small  {
    max-width: 245px;
  }
  .inquiry-contact-form-input input.medium {
    max-width: 520px;
  }
  .inquiry-contact-form-input .medium {
    max-width: 550px;
  }
  .inquiry-contact-form-row select {
    min-height: 40px;
  }
  .inquiry-contact-form-row select option {
    font-size: 1.6rem;
  }
  .inquiry-contact-form-row textarea {
    height: 120px;
  }
  .inquiry-contact-form-row input {
    font-size: 1.6rem;
    min-height: 40px;
  }
  .inquiry-contact-form-row ul {
    margin: 0 -15px;
  }
  .inquiry-contact-form-row ul li {
    padding: 0 15px;
  }
  .inquiry-contact-form-row ul li:nth-child(1)::after,
  .inquiry-contact-form-row ul li:nth-child(2)::after {
    right: -7px;
    width: 14px;
  }
  .inquiry-contact-form-radio-list {
    margin-top: -15px;
  }
  .inquiry-contact-form-radio-item + label {
    font-size: 1.6rem;
  }
  .inquiry-contact-form-radio-item + label::before {
    width: 16px;
    height: 16px;
  }
  .inquiry-contact-form-radio-item:checked + label::after {
    left: 2px;
    width: 12px;
    height: 12px;
  }
  .inquiry-contact-button {
    margin: 40px auto 0;
  }
  .inquiry-section02 {
    padding-top: 40px;
  }
  .inquiry-section02-tel {
    display: flex;
  }
  .inquiry-section02-tel p {
    font-size: 1.6rem;
  }
  .inquiry-section02-company,
  .inquiry-section02-private {
    width: 50%;
  }
  .inquiry-section02-private {
    position: relative;
    margin: 0 0 0 60px;
  }
  .inquiry-section02-private::before {
    content: '';
    position: absolute;
    top: 0;
    left: -30px;
    width: 1px;
    height: 100%;
    background: #d8d8d8;
  }
  .inquiry-section02-tel .inquiry-section02-company-name,
  .inquiry-section02-tel .inquiry-section02-private-name {
    font-size: 1.6rem;
  }
  .inquiry-section02-tel .inquiry-section02-company-tel,
  .inquiry-section02-tel .inquiry-section02-private-tel {
    font-size: 3.0rem;
  }
  .inquiry-section02-tel .inquiry-section02-company-tel {
    padding-left: 26px;
  }
  .inquiry-section02-tel .inquiry-section02-private-tel {
    padding-left: 46px;
  }
  .inquiry-section02-company-tel::before {
    top: 3px;
    width: 21px;
    height: 24px;
    background-size: 21px 24px;
  }
  .inquiry-section02-private-tel::before {
    width: 39px;
    height: 30px;
    background-size: 39px 30px;
  }
  .inquiry-section02-note {
    margin-top: 35px;
    font-size: 1.6rem;
  }
  .inquiry-section02-info {
    padding-left: 1em;
    text-indent: -1em;
  }
}

/* confirm */
.page-inquiry-confirm .inquiry-contact-flow li:nth-child(2) {
  position: relative;
  background: #d8d8d8;
}
.page-inquiry-confirm .inquiry-contact-flow li:nth-child(2)::after {
  content: '';
  position: absolute;
  top: 0;
  left: -1px;
  z-index: 2;
  width: 0;
  height: 100%;
  padding-right: 50%;
  background: url(../images/inquiry/bg_flow_03_sm.png) 0 0 no-repeat;
  background-size: auto 100%
}
.page-inquiry-confirm .inquiry-contact-flow li:nth-child(3) {
  position: relative;
}
.page-inquiry-confirm .inquiry-contact-flow li:nth-child(3)::after {
  content: '';
  position: absolute;
  top: 0;
  left: -1px;
  z-index: 2;
  width: 0;
  height: 100%;
  padding-right: 50%;
  background: url(../images/inquiry/bg_flow_01_sm.png) 0 0 no-repeat;
  background-size: auto 100%
}
.page-inquiry-confirm .inquiry-contact-button button {
  margin-top: 10px;
}
@media screen and (min-width: 768px), print {
  .page-inquiry-confirm .inquiry-contact-flow li:nth-child(2)::after {
    background: url(../images/inquiry/bg_flow_03_lg.png) 0 0 no-repeat;
    background-size: auto 100%
  }
  .page-inquiry-confirm .inquiry-contact-flow li:nth-child(3)::after {
    background: url(../images/inquiry/bg_flow_01_lg.png) 0 0 no-repeat;
    background-size: auto 100%
  }
  .page-inquiry-confirm .inquiry-contact-form-row {
    align-items: center;
    margin-top: 35px;
  }
  .page-inquiry-confirm .inquiry-contact-form-label {
    margin-top: 0px;
  }
  .page-inquiry-confirm .inquiry-contact-button {
    max-width: inherit;
    margin-left: 80px;
  }
  .page-inquiry-confirm .inquiry-contact-button .inquiry-contact-confirm-button {
    display: flex;
    max-width: 575px;
    margin: 0 -10px;
  }
  .page-inquiry-confirm .inquiry-contact-confirm-button button {
    margin: 0 10px 0;
  }
  .page-inquiry-confirm .inquiry-contact-confirm-button button:nth-child(1) {
    flex: 1;
    order: 2;
  }
  .page-inquiry-confirm .inquiry-contact-confirm-button button:nth-child(2) {
    width: 235px;
    order: 1;
  }
}

/* thanks */
.page-inquiry-thanks .inquiry-contact-flow li:nth-child(2) {
  position: relative;
}
.page-inquiry-thanks .inquiry-contact-flow li:nth-child(2)::after {
  content: '';
  position: absolute;
  top: 0;
  left: -1px;
  z-index: 2;
  width: 0;
  height: 100%;
  padding-right: 50%;
  background: url(../images/inquiry/bg_flow_02_sm.png) 0 0 no-repeat;
  background-size: auto 100%
}
.page-inquiry-thanks .inquiry-contact-flow li:nth-child(3) {
  position: relative;
  background: #d8d8d8;
}
.page-inquiry-thanks .inquiry-contact-flow li:nth-child(3)::after {
  content: '';
  position: absolute;
  top: 0;
  left: -1px;
  z-index: 2;
  width: 0;
  height: 100%;
  padding-right: 50%;
  background: url(../images/inquiry/bg_flow_03_sm.png) 0 0 no-repeat;
  background-size: auto 100%
}
.inquiry-section01-thanks {
  margin-top: 55px;
  font-size: 1.8rem;
  text-align: center;
}
.inquiry-section01-thanks-home {
  margin: 60px auto 0;
}
@media screen and (min-width: 768px), print {
  .page-inquiry-thanks .inquiry-contact-flow li:nth-child(2)::after {
    background: url(../images/inquiry/bg_flow_02_lg.png) 0 0 no-repeat;
    background-size: auto 100%
  }
  .page-inquiry-thanks .inquiry-contact-flow li:nth-child(3)::after {
    background: url(../images/inquiry/bg_flow_03_lg.png) 0 0 no-repeat;
    background-size: auto 100%
  }
  .inquiry-section01-thanks {
    margin-top: 75px;
    font-size: 2.6rem;
  }
  .inquiry-section01-thanks-home {
    max-width: 235px;
    margin: 65px auto 0;
  }
}

/* calculation */
.page-calculation {
  padding-top: 20px;
  padding-bottom: 30px;
}
.calculation-box {
  padding: 15px 15px 20px;
  background: #f4f4f4;
}
.calculation-box01 {
  margin-top: 20px;
}
.calculation-box-heading {
  font-size: 1.4rem;
}
.calculation-box .prologue {
  margin-top: 5px;
  font-size: 1.2rem;
}
.calculation-box .prologue span {
  color: #db0000;
}
.calculation-box01-block01-col02,
.calculation-box02-block01-col02 {
  display: flex;
  margin: 15px -8px 0;
  padding-bottom: 3px;
}
.calculation-box-button01,
.calculation-box-button02 {
  width: calc(50% - 16px);
  margin: 0 8px;
}
.calculation-box .button-calculation,
.calculation-box .button-clear {
  display: block;
  width: 100%;
  min-height: 35px;
  padding-top: 2px;
  font-size: 1.2rem;
  font-weight: 500;
  text-align: center;
}
.calculation-box .button-calculation {
  background: #1b365d;
  border: 1px solid #1b365d;
  box-shadow: 0 3px 0 #0a1628;
  color: #fff;
}
.calculation-box .button-clear {
  background: #fff;
  border: 1px solid #f4f4f4;
  box-shadow: 0 3px 0 #cecece;
  color: #1b365d;
}
.calculation-box input[type="text"] {
  width: 100%;
  min-height: 38px;
  padding: 3px 10px 5px;
  border: 1px solid #888;
  background: #fff;
}
.calculation-box input[type="text"].result-field {
  background: #fff6d0;
  color: #1b365d;
}
.calculation-box01-block01 {
  margin-top: 10px;
}
.calculation-box01-block01-col01 {
  display: flex;
}
.calculation-box01-block01-input01 {
  flex: 1;
}
.calculation-box01-block01-input02 {
  position: relative;
  width: 33%;
  padding-left: 15px;
}
.calculation-box01-block01-input02::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 10px;
  border-top: 8px solid #1b365d;
  border-right: 5px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 5px solid transparent;
  transform: translateY(-25%);
  pointer-events: none;
}
.calculation-box01-block01-input02 select {
  width: 100%;
  min-height: 38px;
  padding: 6px 25px 5px 7px;
  background: #fff;
  border: 1px solid #888;
  border-radius: 0;
  -webkit-appearance: none;
  font-size: 1.2rem;
}
.calculation-box01-block02 {
  position: relative;
  margin-top: 45px;
  text-align: center;
}
.calculation-box01-block02::before {
  content: '';
  position: absolute;
  top: -27px;
  left: 50%;
  border-top: 12px solid #1b365d;
  border-right: 13px solid transparent;
  border-bottom: 12px solid transparent;
  border-left: 13px solid transparent;
  transform: translateX(-50%);
}
.calculation-box01-block02 span {
  display: inline-block;
  color: #1b365d;
  vertical-align: middle;
}
.calculation-box01-block02 input[type="text"] {
  width: 105px;
  margin: 0 10px;
  padding: 7px 10px;
  vertical-align: middle;
  text-align: center;
}
.calculation-box02 {
  margin-top: 20px;
}
.calculation-box02-block01-col01 {
  display: flex;
  margin: 5px -8px 0;
}
.calculation-box02-block01-input {
  width: calc(30% - 16px);
  margin: 0 8px;
}
.calculation-box02-block01-input03 {
  width: calc(40% - 16px);
}
.calculation-box02-block01-input span {
  display: block;
  color: #1b365d;
  font-size: 1.2rem;
  font-weight: 500;
}
.calculation-box02-block01-input span:nth-of-type(1) br {
  display: none;
}
.calculation-box02-block01-input input[type="text"] {
  margin: 2px 0;
}
.calculation-box02-block01-input span:nth-of-type(2) {
  text-align: right;
}
.calculation-box02-block02 {
  position: relative;
  margin-top: 45px;
}
.calculation-box02-block02::before {
  content: '';
  position: absolute;
  top: -27px;
  left: 50%;
  border-top: 12px solid #1b365d;
  border-right: 13px solid transparent;
  border-bottom: 12px solid transparent;
  border-left: 13px solid transparent;
  transform: translateX(-50%);
}
.calculation-box02-block02-inner {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -8px;
}
.calculation-box02-block02-input {
  position: relative;
  width: calc(50% - 16px);
  margin: 0 8px;
  padding-right: 1.5em;
}
.calculation-box02-block02-input03,
.calculation-box02-block02-input04 {
  margin-top: 15px;
}
.calculation-box02-block02-input span {
  color: #1b365d;
  font-size: 1.2rem;
  font-weight: 500;
}
.calculation-box02-block02-input span:nth-of-type(1) {
  display: block;
}
.calculation-box02-block02-input span:nth-of-type(1) br {
  display: none;
}
.calculation-box02-block02-input input[type="text"] {
  margin-top: 3px;
}
.calculation-box02-block02-input span:nth-of-type(2) {
  position: absolute;
  right: 0;
  bottom: 0;
}
.calculation-note {
  margin-top: 15px;
  font-size: 1.2rem;
}
.calculation-note p {
  padding-left: 1em;
  text-indent: -1em;
}
.calculation-section01 {
  margin-top: 40px;
}
.calculation-section01 .c-heading02 + p {
  font-size: 1.2rem;
}
.calculation-section01-title {
  font-size: 1.8rem;
  font-weight: 700;
  color: #1b365d;
}
.calculation-section01-example-text {
  margin-top: 20px;
}
.calculation-section01-example-text-image {
  max-width: 445px;
  margin-top: 15px;
}
.calculation-section01-list {
  list-style: none;
}
.calculation-section01-item {
  position: relative;
  margin-top: 30px;
  counter-increment: number;
}
.calculation-section01-item p {
  margin-top: 5px;
  font-size: 1.2rem;
}
.calculation-section01-item .calculation-section01-title {
  padding-left: 35px;
}
.calculation-section01-item .calculation-section01-title::before {
  content: counter(number);
  position: absolute;
  left: 0;
  top: 0;
  padding: 0 8px;
  background: #1b365d;
  font-weight: 400;
  color: #fff;
}
.calculation-section01-item01 p span {
  font-size: 1.8rem;
  font-weight: 700;
  color: #1b365d;
}
.calculation-section01-item02 ol {
  list-style: none;
}
.calculation-section01-item02 ol li {
  position: relative;
  margin-top: 25px;
  counter-increment: subNumber;
}
.calculation-section01-item02 .calculation-section01-item-subheading {
  padding-left: 1.2em;
  font-size: 1.4rem;
  font-weight: 700
}
.calculation-section01-item .calculation-section01-item-subheading::before {
  content: counter(subNumber)".";
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1.4rem;
}
.calculation-section01-table-box {
  padding-bottom: 10px;
  overflow: auto;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}
.calculation-section01-item02-table01 {
  width: auto;
  table-layout: fixed;
  margin-top: 5px;
  border: 1px solid #000;
  font-size: 1.0rem;
  font-weight: 700;
}
.calculation-section01-item02-table01 caption {
  margin-bottom: 5px;
  font-weight: 400;
  text-align: left;
}
.calculation-section01-item02-table01 tr th {
  padding: 3px 25px;
  border: 1px solid #000;
  text-align: center;
}
.calculation-section01-item02-table01 tr:nth-child(2) {
  background: #f4f4f4;
}
.calculation-section01-item02-table01 tbody th {
  width: 22%;
}
.calculation-section01-item02-table01 tr td {
  padding: 5px 20px;
  border-right: 1px solid #c8c8c8;
  border-bottom: 1px solid #000;
  text-align: center;
}
.calculation-section01-item02-table01 td:last-child {
  border-right: none;
}
.calculation-section01-item .calculation-section01-item-formula {
  font-size: 1.4rem;
  font-weight: 700;
}
.calculation-section01-item-formula-description01 {
  margin-top: 5px;
}
.calculation-section01-item .calculation-section01-item-straight {
  font-size: 1.4rem;
  font-weight: 700;
}
.calculation-section01-item02-table02 {
  width: 100%;
  min-width: 600px;
  table-layout: fixed;
  border: 1px solid #000;
}
.calculation-section01-item02-table02 caption {
  margin-bottom: 5px;
}
.calculation-section01-item02-table01 caption .caption-inner,
.calculation-section01-item02-table02 caption .caption-inner {
  display: flex;
  justify-content: space-between;
}
.calculation-section01-item02-table02 th {
  padding: 3px;
  border-right: 1px solid #000;
  background: #f4f4f4;
  font-size: 1.0rem;
  text-align: center;
}
.calculation-section01-item02-table02 thead th:nth-child(1) {
  width: 5%;
}
.calculation-section01-item02-table02 thead th:nth-child(2) {
  width: 19%;
}
.calculation-section01-item02-table02 thead th:nth-child(3) {
  width: 19%;
}
.calculation-section01-item02-table02 thead th:nth-child(4) {
  width: 22%;
}
.calculation-section01-item02-table02 thead th:nth-child(5) {
  width: 18%;
}
.calculation-section01-item02-table02 thead th:nth-child(6) {
  width: 17%;
}
.calculation-section01-item02-table02 tbody th:first-child {
  padding: 5px;
  font-size: 1.2rem;
}
.calculation-section01-item02-table02 tr {
  border-bottom: 1px solid #000;
}
.calculation-section01-item02-table02 tr td {
  padding: 5px 15px;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  text-align: center;
  vertical-align: middle;
  font-size: 1.0rem;
}
.calculation-section01-item02-table02 tr .figure {
  padding: 10px 15px;
}
.calculation-section01-item02-table02 tr .figure img {
  max-width: 80px;
}
.calculation-section01-item02-table02 tr .terms {
  text-align: left;
}
.calculation-section01-item02-table02 tr .terms01 {
  white-space: normal;
}
.calculation-section01-item02-table02 tr .terms02 {
  padding-left: 15px;
}
.calculation-section01-item02-table02 tr .col {
  padding: 4px 5px;
  width: 10.8%;
}
.calculation-section01-item02-table02 tr td div {
  display: inline-block;
  text-align: left;
}
.calculation-section01-item02-table02 tr .table-space {
  padding-top: 39px;
}
.calculation-section01-item04 ol {
  margin-top: 5px;
  padding-left: 1em;
  font-size: 1.2rem;
}
.calculation-section01-item04 ol li span {
  font-weight: 700;
  color: #1b365d;
}
.calculation-section01-item04 .calculation-section01-item-image {
  margin-top: 15px;
}
.page-company-compliance .page-company-compliance01 ul li {
	padding-left: 3em;
	text-indent: -3em;
	list-style-position: inside;
}
.page-company-compliance .page-company-compliance01 ul li + li {
	margin-top: 20px;
}
.page-company-compliance .page-company-compliance02 ul>li + li {
	margin-top: 20px;
}

.page-company-compliance .page-company-compliance02 ul>li {
	padding-left: 3em;
	text-indent: -3em;
	list-style-position: inside;
}

/*★20211223追加----------------------*/
.page-company-compliance .page-company-compliance02 ul li ul li ul li {
	padding-left:0em;
	text-indent:0em;
	list-style-position: inside;
	margin-top: 0;
	margin-left: -3em;
	font-weight: normal;
}

/*★20211223追加----------------------*/
.page-company-compliance02 .page-company-text ul li ul li ul .guidelines {
	padding-left:1em;
	text-indent:-1em;
}

.page-company-compliance .page-company-compliance02 ol li {
	list-style: decimal;
	padding-left: 1em;
	text-indent: -1em;
	list-style-position: inside;
	margin-top: 0;
}
.page-company-compliance .page-company-compliance02 table {
	width: 90%;
	margin-top: 5px;
	margin-bottom: 20px;
	margin-left: 3em;
	border: 1px solid #dddddd;
}
.page-company-compliance .page-company-compliance02 .page-company-text-ml {
	margin-left: 3em;
}
.page-company-compliance .page-company-compliance02 table th {
display: block;
padding: 10px;
background: #f8fcfe;
border-bottom: 1px solid #dddddd;
font-size: 1.2rem;
}
.page-company-compliance .page-company-compliance02 table tr td:first-of-type {
    background: #f1f1f1;
}
.page-company-compliance .page-company-compliance02 table td:not(:last-child) {
    border-bottom: 1px solid #dddddd;
}
				.page-company-compliance .page-company-compliance02 table td {
    display: block;
    padding: 10px;
}
.page-company-compliance .page-company-compliance02 table tr:not(:first-child) th {
    border-top: 1px solid 
    #dddddd;
}


@media screen and (min-width: 768px), print {
.page-company-compliance .page-company-compliance02 table {
    font-size: 1.4rem;
}
	.page-company-compliance .page-company-compliance02 table th {
    display: table-cell;
    width: 50px;
    padding: 10px;
    border-right: 1px solid #dddddd;
}
			.page-company-compliance .page-company-compliance02 table tr td:not(:last-child) {
    border-right: 1px solid #dddddd;
    border-bottom: none;
}
			.page-company-compliance .page-company-compliance02 table tr:not(:last-child) td {
    border-bottom: 1px solid #dddddd;
}

				.page-company-compliance .page-company-compliance02 table td {
    display: table-cell;
    padding: 15px;
}

}

@media screen and (min-width: 375px), print {
  .calculation-box01-block02 {
    padding-right: 50px;
  }
  .calculation-section01-item-formula-description {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -5px;
  }
  .calculation-section01-item-formula-description p {
    width: calc(50% - 10px);
    margin: 5px 5px 0;
  }
}
@media screen and (min-width: 768px), print {
  .page-calculation {
    padding-top: 50px;
    padding-bottom: 100px;
  }
  .calculation-box {
    padding: 35px 35px 40px 40px;
  }
  .calculation-box01 {
    margin-top: 30px;
  }
  .calculation-box-heading {
    font-size: 2.0rem;
  }
  .calculation-box .prologue {
    margin-top: 10px;
    font-size: 1.6rem;
  }
  .calculation-box01-block01-col02,
  .calculation-box02-block01-col02 {
    margin: 10px -5px 0;
  }
  .calculation-box-button01,
  .calculation-box-button02 {
    width: calc(50% - 10px);
    margin: 0 5px;
  }
  .calculation-box .button-calculation,
  .calculation-box .button-clear {
    min-height: 37px;
    padding-bottom: 3px;
    font-size: 1.4rem;
    transition: background .2s ease-in-out, color .2s ease-in-out;
  }
  .calculation-box .button-clear {
    border: 1px solid #fff;
    transition: background .2s ease-in-out, border .2s ease-in-out, color .2s ease-in-out;
  }
  _:-ms-fullscreen, :root .calculation-box .button-calculation,
  _:-ms-fullscreen, :root .calculation-box .button-clear {
    padding: 3px 0 1px;
  }
  .calculation-box .button-calculation:hover
   {
    background: #fff;
    color: #1b365d;
  }
  .calculation-box .button-clear:hover {
    background: transparent;
    border-color: #cecece;
  }
  .calculation-box input[type="text"] {
    min-height: 40px;
    padding: 5px 10px 4px;
  }
  .calculation-box01-block01 {
    margin-top: 20px;
  }
  .calculation-box01-block01-input02 {
    padding-left: 10px;
  }
  .calculation-box01-block01-input02 select {
    min-height: 40px;
    padding: 6px 25px 5px 10px;
  }
  .calculation-box01-block02 {
    margin-top: 50px;
  }
  .calculation-box01-block02::before {
    top: -30px;
  }
  .calculation-box01-block02 span {
    font-size: 1.4rem;
  }
  .calculation-box01-block02 input[type="text"] {
    width: 145px;
    padding: 4px 10px;
    font-size: 2.0rem;
  }
  .calculation-box02-block01-col01 {
    margin: 0 -5px;
  }
  .calculation-box02-block01-input,
  .calculation-box02-block01-input03 {
    width: calc(33.33334% - 10px);
    margin: 20px 5px 0;
  }
  .calculation-box02-block01-input span {
    font-size: 1.4rem;
  }
  .calculation-box02-block02 {
    max-width: 700px;
    margin: 50px auto 0;
  }
  .calculation-box02-block02::before {
    top: -30px;
  }
  .calculation-box02-block02-inner {
    flex-wrap: nowrap;
    justify-content: space-between;
    margin: 0;
  }
  .calculation-box02-block02-input {
    width: calc(25% - 10px);
    margin: 0;
    padding: 0;
  }
  .calculation-box02-block02-input span {
    font-size: 1.4rem;
  }
  .calculation-box02-block02-input span:nth-of-type(1) {
    display: inline-block;
    vertical-align: middle;
    line-height: 1.2;
  }
  .calculation-box02-block02-input span:nth-of-type(1) br {
    display: inline;
  }
  .calculation-box02-block02-input input[type="text"] {
    display: inline-block;
    width: 75px;
    margin: 0 8px;
    vertical-align: middle;
  }
  .calculation-box02-block02-input span:nth-of-type(2) {
    position: relative;
    display: inline-block;
    vertical-align: middle;
  }
  .calculation-note {
    font-size: 1.4rem;
  }
  .calculation-section01 {
    margin-top: 40px;
  }
  .calculation-section01 .c-heading02 + p {
    font-size: 1.6rem;
  }
  .calculation-section01-title {
    font-size: 2.0rem;
  }
  .calculation-section01-example {
    display: flex;
    margin-top: 25px;
  }
  .calculation-section01-example-text {
    margin: 0 60px 0 0;
    width: 49%;
  }
  .calculation-section01-example-text-image {
    flex: 1;
    margin-top: 0;
  }
  .calculation-section01-item {
    margin-top: 35px;
  }
  .calculation-section01-item p {
    font-size: 1.6rem;
  }
  .calculation-section01-item .calculation-section01-title {
    padding-left: 40px;
  }
  .calculation-section01-item .calculation-section01-title::before {
    padding: 0 10px;
  }
  .calculation-section01-item01 p span {
    font-size: 2.0rem;
  }
  .calculation-section01-item02 ol {
    margin-top: 25px;
  }
  .calculation-section01-item02 .calculation-section01-item-subheading {
    font-size: 1.6rem;
  }
  .calculation-section01-item .calculation-section01-item-subheading::before {
    font-size: 1.6rem;
  }
  .calculation-section01-item .calculation-section01-item-formula {
    padding-left: 1em;
    font-size: 2.0rem;
  }
  .calculation-section01-item .calculation-section01-item-formula02 {
    padding-left: 0;
  }
  .calculation-section01-item-formula-description {
    display: flex;
    flex-wrap: wrap;
    max-width: 700px;
    padding-left: 1.6em;
  }
  .calculation-section01-item-formula-description p {
    width: 33.33334%;
    margin: 0;
    white-space: nowrap;
  }
  .calculation-section01-item-formula-description02 {
    padding-left: 0.3em;
  }
  .calculation-section01-item-formula-description02 p {
    width: 50%;
    margin: 0;
  }
  .calculation-section01-item02-table01 {
    font-size: 1.6rem;
  }
  .calculation-section01-item02-table01 thead th:first-child {
    width: 21.5%;
  }
  .calculation-section01-item02-table01 tr th {
    padding: 5px 35px;
  }
  .calculation-section01-item02-table01 tr td {
    width: 8.6666%;
  }
  .calculation-section01-item02-table02 {
    min-width: 1000px;
  }
  .calculation-section01-item02-table02 th {
    padding: 3px 0;
    font-size: 1.6rem;
  }
  .calculation-section01-item02-table02 th {
    padding: 5px 0;
  }
  .calculation-section01-item02-table02 tbody th:first-child {
    padding: 5px;
    font-size: 2.0rem;
  }
  .calculation-section01-item02-table02 tr td {
    width: 8.73%;
    padding: 8px 10px;
    font-size: 1.4rem;
  }
  .calculation-section01-item02-table02 tr .figure {
    padding: 15px 25px;
  }
  .calculation-section01-item02-table02 tr .figure img {
    max-width: 135px;
  }
  .calculation-section01-item02-table02 tr .terms02 {
    padding-left: 25px;
  }
  .calculation-section01-item02 ol li .calculation-section01-item-loss {
    display: flex;
  }
  .calculation-section01-item02 ol li .calculation-section01-item-loss p {
    margin-top: 0;
  }
  .calculation-section01-item04 .calculation-section01-item04-inner {
    display: flex;
    margin-top: 20px;
  }
  .calculation-section01-item04 ol {
    width: 50%;
    margin: 0 20px 0 0;
    font-size: 1.6rem;
  }
  .calculation-section01-item04 .calculation-section01-item-image {
    width: 50%;
    margin-top: 0;
  }
}
@media screen and (min-width: 1024px), print {
  .calculation-box01-block01-col02,
  .calculation-box02-block01-col02 {
    width: 310px;
    margin: 0;
  }
  .calculation-box-button01,
  .calculation-box-button02 {
    margin: 0 0 0 10px;
  }
  .calculation-box01-block01 {
    display: flex;
  }
  .calculation-box01-block01-col01 {
    flex: 1;
  }
  .calculation-box01-block01-input02 {
    width: 235px;
  }
  .calculation-box01-block02 {
    padding-right: 60px;
  }
  .calculation-box02-block01 {
    display: flex;
    margin-top: 20px;
  }
  .calculation-box02-block01-col01 {
    flex: 1;
    margin: 0
  }
  .calculation-box02-block01-input01 {
    width: 165px;
    margin: 0;
  }
  .calculation-box02-block01-input02 {
    width: 200px;
    margin: 0 0 0 10px;
  }
  .calculation-box02-block01-input03 {
    width: 230px;
    margin: 0 0 0 10px;
  }
  .calculation-box02-block01-input span {
    display: inline-block;
    vertical-align: middle;
    line-height: 1.2;
  }
  .calculation-box02-block01-input span:nth-of-type(1) br {
    display: inline;
  }
  .calculation-box02-block01-input input[type="text"] {
    display: inline-block;
    width: 90px;
    margin: 0 10px;
    vertical-align: middle;
  }
  .calculation-section01-item02-table02 tbody th:first-child {
    font-size: 2.0rem;
  }
}

/* catalog */
.page-catalog {
  padding: 20px 15px 30px;
}
.catalog-section01 {
  margin-top: 15px;
}
.catalog-section01-list {
  list-style: none;
}
.catalog-section01-item {
  margin-bottom: 35px;
}
.catalog-section01-item-title {
  font-size: 1.4rem;
}
.catalog-section01-item-image {
  min-height: 0%;
  width: 141px;
  margin: 15px auto 0;
}
.catalog-section01-item p {
  margin-top: 15px;
  font-size: 1.2rem;
}
.catalog-section01-button {
  margin-top: 15px;
}
.catalog-section01-button a {
  font-size: 1.6rem;
}
.catalog-section02 {
  margin-top: 45px;
}
.catalog-contact-note01 {
  margin: 15px 0 30px;
  font-size: 1.2rem;
  list-style: none;
}
.catalog-contact-note01 li {
  position: relative;
  padding-left: 1em;
}
.catalog-contact-note01 li::before {
  content: '※';
  position: absolute;
  top: 0;
  left: 0;
}
.catalog-contact-form-row-document {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  margin: -30px -10px 30px;
}
.catalog-contact-form-document-item {
  width: 50%;
  margin-top: 30px;
  padding: 0 20px;
}
.catalog-contact-form-document-item:nth-child(5) p {
  margin: 15px 0 0 -15px;
  font-size: 1.2rem;
}
.catalog-contact-form-document-item-image {
  max-width: 141px;
  margin: 0 auto 25px;
}
.catalog-contact-form-checkbox-input {
  display: none;
}
.checkbox-field-parts {
  position: relative;
  display: inline-block;
  margin-top: auto;
  padding-left: 20px;
  font-size: 1.2rem;
  font-weight: 700;
}
.checkbox-field-parts::before{
  content: '';
  display: block;
  position: absolute;
  top: 3px;
  left: -13px;
  width: 25px;
  height: 25px;
  border: 1px solid #888;
}
.catalog-contact-form-checkbox-input:checked + .checkbox-field-parts::after{
  content: '';
  display: block;
  position: absolute;
  top: 3px;
  left: -13px;
  width: 25px;
  height: 25px;
  background: #827f7f url(../images/product/catalog/icon_check_01.png) 50% 50% no-repeat;
  background-size: 17px 13px;
  transition: .2s ease-in-out;
}
.catalog-contact-form-row:not(:first-child) {
  margin: 15px 0 25px;
}
.catalog-contact-form-label {
  padding-bottom: 5px;
  font-size: 1.4rem;
  font-weight: 700;
}
.catalog-contact-form-label .required {
  margin-left: 10px;
  padding: 1px 10px 2px;
  background: #b2474c;
  font-size: 1.1rem;
  font-weight: 400;
  color: #fff;
}
.catalog-contact-form-row input[type="text"],
.catalog-contact-form-row input[type="tel"],
.catalog-contact-form-row input[type="zip"],
.catalog-contact-form-row input[type="email"], 
.catalog-contact-form-row select {
  width: 100%;
  min-height: 35px;
  padding: 4px 10px 3px;
  border: 1px solid #888;
  border-radius: 0;
  -webkit-appearance: none;
}
.catalog-contact-form-zip-list {
  display: flex;
  margin: 0 -10px;
  list-style: none;
}
.catalog-contact-form-zip-list li {
  position: relative;
  width: 50%;
  padding: 0 10px;
}
.catalog-contact-form-zip-list li:nth-child(1)::after {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -5px;
  width: 10px;
  height: 1px;
  background: #888;
}
.catalog-contact-form-number-list {
  display: flex;
  margin: 0 -10px;
  list-style: none;
}
.catalog-contact-form-number-list li {
  position: relative;
  width: 33.3333%;
  padding: 0 10px;
}
.catalog-contact-form-number-list li:nth-child(1)::after,
.catalog-contact-form-number-list li:nth-child(2)::after {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -5px;
  width: 10px;
  height: 1px;
  background: #888;
}
.catalog-contact-form-radio-list {
  margin-top: -10px;
}
.catalog-contact-form-radio-item {
  display: none;
}
.catalog-contact-form-radio-item + label {
  display: inline-block;
  padding-left: 25px;
  position: relative;
  margin: 15px 20px 0 0;
  font-size: 1.2rem;
  white-space: nowrap
}
.catalog-contact-form-radio-item + label::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border: 1px solid #999;
  border-radius: 50%;
}
.catalog-contact-form-radio-item:checked + label::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 3px;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  background: #888;
  border-radius: 50%;
}
.catalog-contact-button {
  max-width: 320px;
  margin: 20px auto 0;
}
.catalog-contact-note02 {
  margin: 30px 0;
  font-size: 1.2rem;
}
.catalog-contact-note02 p {
  margin-top: 10px;
}
.catalog-contact-tel {
  margin-top: -10px;
}
.catalog-contact-tel p {
  font-size: 1.2rem;
}
.catalog-contact-tel .catalog-contact-company-name {
  font-size: 1.4rem;
  font-weight: 700;
}
.catalog-contact-tel .catalog-contact-company-tel {
  position: relative;
  margin: 5px 0;
  padding-left: 23px;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
}
.catalog-contact-tel .catalog-contact-company-tel::before {
  content: '';
  position: absolute;
  top: 2px;
  left: 0;
  width: 18px;
  height: 22px;
  background: url(../images/inquiry/icon_company_tel.png) 0 0 no-repeat;
  background-size: 18px 22px;
}
@media screen and (min-width: 768px), print {
  .page-catalog {
    padding: 50px 20px 100px;
  }
  .catalog-section01 {
    margin-top: 25px;
  }
  .catalog-section01-item-title {
    font-size: 1.2rem;
  }
  .catalog-section01-item p {
    margin-top: 20px;
    font-size: 1.6rem;
  }
  .catalog-section01-list {
    display: flex;
    align-items: stretch;
    margin: -10px;
  }
  .catalog-section01-item {
    display: flex;
    flex-direction: column;
    width: 33.3333%;
    padding: 0 10px;
  }
  .catalog-section01-item p {
    margin-bottom: 15px;
  }
  .catalog-section01-button {
    margin-top: auto;
  }
  .catalog-section02 {
    margin-top: 20px;
  }
  .catalog-contact-note01 {
    margin: 15px 0 40px;
    font-size: 1.4rem;
  }
  .catalog-contact-form-row-document {
    margin: -30px 0 50px;
  }
  .catalog-contact-form-document-item {
    width: 25%;
    padding: 0 30px;
  }
  .catalog-contact-form-document-item:nth-child(5) p {
    margin: 5px -5px 0 -20px;
    font-size: 1.4rem;
  }
  .checkbox-field-parts {
    padding-left: 0;
    font-size: 1.6rem;
  }
  .checkbox-field-parts::before{
    top: 5px;
    left: -20px;
    transform: translateY(0);
    width: 16px;
    height: 16px;
  }
  .catalog-contact-form-checkbox-input:checked + .checkbox-field-parts::after{
    top: 5px;
    left: -20px;
    transform: translateY(0);
    width: 16px;
    height: 16px;
    background-size: 12px 10px;
  }
  .catalog-contact-form-row {
    display: flex;
  }
  .catalog-contact-form-label {
    width: 250px;
  }
  .catalog-contact-form-input {
    flex: 1;
  }
  .catalog-contact-form-row input[type="text"],
  .catalog-contact-form-row input[type="tel"],
  .catalog-contact-form-row input[type="zip"],
  .catalog-contact-form-row input[type="email"],
  .catalog-contact-form-row select {
    padding: 7px 10px 6px;
  }
  .catalog-contact-form-input input {
    max-width: 520px;
  }
  .catalog-contact-form-input ul {
    max-width: 550px;
  }
  .catalog-contact-form-input .small {
    max-width: 245px;
  }
  .catalog-contact-form-zip-list,
  .catalog-contact-form-number-list {
    margin: 0 -15px;
  }
  .catalog-contact-form-zip-list li,
  .catalog-contact-form-number-list li {
    padding: 0 15px;
  }
  .catalog-contact-form-zip-list li:nth-child(1)::after,
  .catalog-contact-form-number-list li:nth-child(1)::after,
  .catalog-contact-form-number-list li:nth-child(2)::after {
    right: -7px;
    width: 14px;
  }
  .catalog-contact-form-radio-list {
    margin-top: -15px;
  }
  .catalog-contact-form-radio-item + label {
    font-size: 1.6rem;
  }
  .catalog-contact-form-radio-item + label::before {
    width: 16px;
    height: 16px;
  }
  .catalog-contact-form-radio-item:checked + label::after {
    left: 2px;
    width: 12px;
    height: 12px;
  }
  .catalog-contact-button {
    margin: 40px auto 0;
  }
  .catalog-contact-note02 {
    margin-top: 60px;
    font-size: 1.4rem;
  }
  .catalog-contact-tel p,
  .catalog-contact-tel .catalog-contact-company-name {
    font-size: 1.6rem;
  }
  .catalog-contact-tel .catalog-contact-company-tel {
    padding-left: 26px;
    font-size: 3.0rem;
  }
  .catalog-contact-tel .catalog-contact-company-tel::before {
    top: 3px;
    width: 21px;
    height: 24px;
    background-size: 21px 24px;
  }
}
@media screen and (min-width: 1024px), print {
  .catalog-section01-item-title {
    font-size: 1.6rem;
  }
  .checkbox-field-parts {
    padding-left: 20px;
/*    white-space: nowrap;*/
  }
  .checkbox-field-parts::before,
  .catalog-contact-form-checkbox-input:checked + .checkbox-field-parts::after {
    left: 0;
  }
}

/* about */
.about .global-header {
  border-bottom: none;
}
.about-section01 {
 padding-bottom: 50px;
}
.about-visual .lg-image {
  display: none;
}
.about-section01-title {
  margin-top: 40px;
  font-size: 2.0rem;
  color: #1b365d;
  font-weight: 500;
  text-align: center;
}
.about-section02 {
  padding: 35px 0 100px;
  background: url(../images/about/img_section02_01_sm.jpg) no-repeat bottom left/100% auto, linear-gradient(to right, rgba(71,113,139,1) 0%,rgba(50,97,127,1) 44%,rgba(50,97,127,1) 44%,rgba(39,86,117,1) 100%);
}
.about-section02-inner {
  padding: 0 15px;
}
.about-section02-title {
  font-size: 1.8rem;
  font-weight: 500;
  color: #fff;
  text-align: center;
}
.about-section02-title-en {
  display: block;
  margin: 0 auto;
  width: 130px;
  font-size: 0;
}
.about-section02-title-jp {
  display: block;
  margin-top: 5px;
}
.about-section02-text {
  margin-top: 25px;
  font-size: 1.1rem;
  color: #fff;
}
.about-section02-text p + p {
  margin-top: 15px;
}
.about-section02-image {
  max-width: 500px;
  margin: 10px auto 0;
}
.about-section02-image .lg-image {
  display: none;
}
.about-contents-block {
  margin-bottom: 40px;
}
.about-contents-list {
  margin: 30px 0 0;
}
.about-contents-item {
  margin-top: 25px;
  padding-bottom: 20px;
  border: 2px solid #1b365d;
}
.about-contents-item-title {
  padding: 10px;
  background: #1b365d;
  text-align: center;
}
.about-contents-item-title-en {
  display: block;
  margin: 0 auto;
  font-size: 0;
}
.about-contents-item-title-en01 {
  width: 100px;
}
.about-contents-item-title-en02 {
  width: 135px;
}
.about-contents-item-title-en03 {
  width: 120px;
}
.about-contents-item-title-en04 {
  width: 120px;
}
.about-contents-item-title-jp {
  display: inline-block;
  font-size: 1.3rem;
  font-weight: 500;
  color: #fff;
  text-align: left;
}
.about-contents-item-image {
  margin: 20px 20px 0
}
.about-contents-socialgood {
	position: relative;
}
.about-contents-socialgood ul {
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
	font-size: 0;
}
.about-contents-socialgood ul li {
	list-style: none;
	width: 50%;
	display: inline-block;
	vertical-align: top;
	margin: 0;
	padding: 0;
}
.about-contents-item-text {
  margin: 20px 20px 0;
  font-size: 1.0rem;
  color: #1b365d;
}
.about-contents-item-more {
  margin: 0 20px;
  padding-top: 20px;
  font-size: 1.0rem;
}
.about-contenta-item-bnr {
  margin: 40px auto 0;
}
.about-contenta-item-bnr a {
  display: block;
  margin: 0 auto;
  width: 600px;
}
@media screen and (max-width: 640px), print {
  .about-contenta-item-bnr a {
    display: block;
    margin: 0 auto;
    width: 100%;
  }
} 
@media screen and (min-width: 768px), print {
  .about-section01 {
    position: relative;
    padding-bottom: 60px;
  }
  .about-visual .lg-image {
    display: block;
    width: 100%;
  }
  .about-visual .sm-image {
    display: none;
  }
  .about-section01-title {
    position: absolute;
    top: 35px;
    right: 30px;
    margin-top: 0;
    font-size: 2.2rem;
    letter-spacing: 0.1rem;
    line-height: 1.5;
  }
	.about-section01-lead {
		width: 100%;
		float: none;
	}
	.about-section01-movie {
		float: none;
	}
  .about-section02 {
    padding-bottom: 200px;
  }
  .about-section02-inner {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 20px;
  }
  .about-section02-title {
    font-size: 2.2rem;
  }
  .about-section02-title-en {
    width: 155px;
  }
  .about-section02-title-jp {
    display: block;
    margin-top: 10px;
  }
  .about-section02-text {
    font-size: 1.2rem;
    width: 500px;
    margin: 25px auto 0;
    text-align: left;
  }
  .about-section02-text p + p {
    margin-top: 25px;
  }
  .about-section02-image {
    margin: 20px auto 0;
  }
  .about-contents-block {
    margin-bottom: 50px;
  }
  .about-contents-list {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    margin: 30px -10px 0;
  }
  .about-contents-item {
    display: flex;
    flex-direction: column;
    width: calc(50% - 20px);
    margin: 20px 10px 0;
    padding-bottom: 30px;
  }
  .about-contents-item-title {
    padding: 15px 15px 10px;
  }
  .about-contents-item-title-en01 {
    width: 141px;
  }
  .about-contents-item-title-en02 {
    width: 194px;
  }
  .about-contents-item-title-en03 {
    width: 171px;
  }
  .about-contents-item-title-en04 {
    width: 177px;
  }
  .about-contents-item-title-jp {
    margin-top: 0;
    font-size: 1.6rem;
  }
  .about-contents-item-image {
    min-height: 0%;
    margin-top: 30px;
    text-align: center;
  }
  .about-contents-item-text {
    margin-top: 30px;
    font-size: 1.2rem;
  }
  .about-contents-item-more {
    margin-top: auto;
    padding-top: 30px;
    font-size: 1.2rem;
  }
  .about-contents-item-more a {
    max-width: 330px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 1024px), print {
  .about .global-header {
    border-bottom: 1px solid #1b365d;
  }
  .about-section01-title {
    top: 70px;
    right: 60px;
    font-size: 3.0rem;
  }
	
  .about-section02 {
    padding: 40px 0 140px;
    background: url(../images/about/img_section02_01_lg.jpg) no-repeat bottom left/cover;
  }
  .about-section02-inner {
    position: relative;
  }
  .about-section02-title {
    text-align: left;
  }
  .about-section02-title-en {
    margin-left: 0;
  }
  .about-section02-title-jp {
    margin: 2% 0 0 -10px;
  }
  .about-section02-text {
    margin-left: 0;
  }
  .about-section02-text p + p {
    margin-top: 30px;
  }
  .about-section02-image {
    position: absolute;
    max-width: 1140px;
    top: -24px;
    left: 0;
    margin: 0;
    padding: 0 20px;
  }
  .about-section02-image .sm-image {
    display: none;
  }
  .about-section02-image .lg-image {
    display: block;
  }
  .about-contents-item-title-jp {
    font-size: 1.8rem;
  }
}

/* psf */
.psf-header {
  position: relative;
  border-bottom: none;
}
.psf-visual img {
  width: 100%;
}
.psf-visual .lg-image {
  display: none;
}
.psf-logo {
  position: absolute;
  top: 10px;
  left: 10px;
  width: 90px;
  font-size: 0;
}
.psf-nav-trigger {
  position: absolute;
  top: 0;
  right: 0;
  width: 50px;
  height: 40px;
  background: transparent;
  border: none;
}
.psf-nav-trigger span {
  display: inline-block;
  position: absolute;
  left: 10px;
  width: 30px;
  height: 3px;
  background: #1b365d;
  border-radius: 1px;
}
.psf-nav-trigger span:nth-child(1) {
  display: none;
}
.psf-nav-trigger span:nth-child(2) {
  top: 10px;
}
.psf-nav-trigger span:nth-child(3) {
  top: 18px;
}
.psf-nav-trigger span:nth-child(4) {
  top: 26px;
}
.psf-nav {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 200;
  width: 100%;
  height: 100%;
  background: rgba(27, 54, 93, .9);
  opacity: 0;
  visibility: hidden;
}
.psfnav-init .psf-nav {
  transition: opacity .25s ease-in-out, visibility .25s ease-in-out;
}
.psf-nav.is-open {
  opacity: 1;
  visibility: visible;
}
.psf-nav-inner {
  height: 100%;
}
.psf-nav-logo {
  position: relative;
  width: 90px;
  top: 10px;
  left: 10px;
  font-size: 0;
}
.psf-nav-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 50px;
  height: 40px;
  background: transparent;
  border: none;
}
.psf-nav-close span {
  display: none;
}
.psf-nav-close::before,
.psf-nav-close::after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 18px;
  left: 10px;
  width: 30px;
  height: 3px;
  background: #fff;
  border-radius: 1px;
}
.psf-nav-close::before {
  transform: rotate(45deg);
}
.psf-nav-close::after {
  transform: rotate(-45deg);
}
.psf-nav-contents {
  height: calc(100vh - 50px);
}
.psf-nav-contents-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 50px 15px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
.psf-nav-list {
  text-align: center;
  list-style: none;
}
.psf-nav-list li:not(:first-child) {
  margin-top: 23px;
}
.psf-nav-list li a {
  position: relative;
  display: inline-block;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 500;
  text-decoration: none;
}
.psf-nav-list li a span {
  position: relative;
  font-size: 1.4rem;
}
.psf-nav-list li a span::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.psf-nav-list-concept {
  padding-left: 23px;
}
.psf-nav-list-concept::before {
  width: 18px;
  height: 30px;
  background: url(../images/psf/icon_concept-white_01.png) 0 0 no-repeat;
  background-size: 18px 30px;
}
.psf-nav-list-attachment {
  padding-left: 21px;
}
.psf-nav-list-attachment::before {
  width: 17px;
  height: 24px;
  background: url(../images/psf/icon_attachment-white_01.png) 0 0 no-repeat;
  background-size: 17px 24px;
}
.psf-nav-list-lineup {
  padding-left: 36px;
}
.psf-nav-list-lineup::before {
  width: 32px;
  height: 21px;
  background: url(../images/psf/icon_lineup-white_01.png) 0 0 no-repeat;
  background-size: 32px 21px;
}
.psf-nav-list-support {
  padding-left: 30px;
}
.psf-nav-list-support::before {
  width: 26px;
  height: 26px;
  background: url(../images/psf/icon_support-white_01.png) 0 0 no-repeat;
  background-size: 26px 26px;
}
.psf-nav-list a::after {
  content: '';
  position: absolute;
  bottom: -8px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #fff;
  opacity: 0;
  visibility: hidden;
  transition: .2s ease-in-out;
}
.psf-header-title {
  position: absolute;
  top: 45px;
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.psf-header-title-description {
  font-size: 2.6rem;
}
.psf-header-title-description span {
  letter-spacing: 0.3rem;
}
.psf-header-subtitle {
  font-size: 2.3rem;
  font-weight: 400;
  text-align: center;
}
.psf-header-subtitle span {
  position: relative;

  margin-right: 15px;
}
.psf-header-subtitle span::before,
.psf-header-subtitle span::after {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  height: 1px;
  width: 35px;
  background-color: #000;
}
.psf-header-subtitle span::before {
  left: -40px;
}
.psf-header-subtitle span::after {
  right: -40px;
}
.psf-section01 {
  padding: 30px 0 50px;
}
.psf-section01 p {
  font-size: 1.0rem;
}
.psf-section01-inner01 p + p {
  margin-top: 15px;
}
.psf-section01-title {
  position: relative;
  padding-top: 25px;
  font-size: 2.0rem;
  text-align: center;
}
.psf-section01-title::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 15px;
  height: 25px;
  transform: translateX(-50%);
  background: url(../images/psf/icon_concept-black_01.png) 0 0 no-repeat;
  background-size: 15px 25px;
}
.psf-section01-subtitle {
  font-size: 1.1rem;
  text-align: center;
}
.psf-section01-subtitle span {
  position: relative;
}
.psf-section01-subtitle span::before,
.psf-section01-subtitle span::after {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  height: 1px;
  width: 20px;
  background-color: #000;
}
.psf-section01-subtitle span::before {
  left: -30px;
}
.psf-section01-subtitle span::after {
  right: -30px;
}
.psf-section01-inner01 {
  margin-top: 20px;
}
p.psf-section01-catch {
  margin: 0 0 20px;
  font-size: 1.3rem;
  font-weight: 300;
}
.psf-section01-image img {
  margin-top: 15px;
}
.psf-section01-inner02 {
  margin-top: 20px;
  padding: 15px 10px;
  background-color: #f9f9f9;
}
.psf-section01-inner02 p {
  margin-top: 5px;
  font-size: 1.0rem;
}
.psf-section01-inner02-image02 {
  position: relative;
  padding-top: 35px;
}
.psf-section01-inner02-image02::before {
  content: '';
  position: absolute;
  top: 15px;
  left: 50%;
  transform: translateX(-50%);
  width: 20px;
  height: 9px;
  background: url(../images/psf/icon_arrow-bottom-pink_01.png) 0 0 no-repeat;
  background-size: 20px 9px;
}
.psf-section02 {
  padding: 30px 0 40px;
  background: #f9f9f9;
}
.psf-section02-title {
  position: relative;
  padding-top: 20px;
  font-size: 2.0rem;
  text-align: center;
}
.psf-section02-title::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 12px;
  height: 20px;
  transform: translateX(-50%);
  background: url(../images/psf/icon_attachment-black_01.png) 0 0 no-repeat;
  background-size: 12px 20px;
}
.psf-section02-modal {
  margin-top: 20px;
  padding: 2px;
  background: #e38e7d;
  text-align: center;
}
	.psf-section02-acc {
		margin: 20px auto 0;
		display: none;
		text-align: center;
	}

.psf-section02-modal-text {
  position: relative;
  display: block;
  padding: 4px;
  border: 1px solid #fff;
}
.psf-section02-modal-text p {
  position: relative;
  display: inline-block;
  font-size: 1.1rem;
  text-align: left;
  color: #000;
}
.psf-section02-modal-text p::before {
  content: '';
  position: absolute;
  top: 50%;
  left: -20px;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background: url(../images/psf/icon_exclamation-pink_01.png) 0 0 no-repeat;
  background-size: 16px 16px;
}
.psf-section02-modal-text p span {
  font-size: 1.0rem;
}
.psf-section02-modal-text::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 5px;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  background: url(../images/psf/icon_cross-white_01.png) 0 0 no-repeat;
  background-size: 14px 14px;
}
.psf-section02-modal-text.acc-is-open::after {
  background: url(../images/psf/icon_cross-white_02.png) 0 0 no-repeat;
  background-size: 14px 14px;
}
.psf-section02-column-wrap {
  padding-bottom: 20px;
}
.psf-section02-column {
  margin: 35px 0 0;
  max-width: 1000px;
}
.psf-section02-col {
  width: 100%;
}
.psf-section02-col01 {
  position: relative;
  z-index: 2;
  background-color: #f5f8e2;
}
.psf-section02-col01-title,
.psf-section02-col02-title {
  border-bottom: 5px solid #f9f9f9;
  padding: 20px;
  font-size: 1.6rem;
  font-weight: 300;
  text-align: center;
}
.psf-section02-col01-title {
  background-color: #e7eeb9;
}
.psf-section02-col02-title {
  background-color: #f9eab5;
}
.psf-section02-col01-title span,
.psf-section02-col02-title span {
    position: relative;
}
.psf-section02-col01-title span::before,
.psf-section02-col02-title span::before {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.psf-section02-col01-title span::before {
  left: -45px;
  width: 42px;
  height: 43px;
  background: url(../images/psf/icon_house_01.png) 0 0 no-repeat;
  background-size: 42px 43px;
}
.psf-section02-col02-title span::before {
  left: -45px;
  width: 35px;
  height: 44px;
  background: url(../images/psf/icon_person_01.png) 0 0 no-repeat;
  background-size: 35px 44px;
}
.psf-section02-col01-inner,
.psf-section02-col02-inner {
  padding: 10px 20px 25px;
}
.psf-section02-col-text-box {
  padding: 15px;
  background: #fff;
  font-size: 1.6rem;
  text-align: center;
	position: relative;
	z-index: 3;
}
.psf-section02-col-text-box + .psf-section02-col-text-box {
  margin-top: 25px;
}
.psf-section02-col01-inner .psf-section02-col-text-box {
	width:	100%;
	max-width: 450px;
  position: relative;
  border: 1px solid #e7eeb9;
	margin: 24px auto 0;
}
.psf-section02-col02-inner .psf-section02-col-text-box {
  position: relative;
  border: 1px solid #f9eab5;
}
.psf-section02-col-text-box + .psf-section02-col-text-box::before {
  content: '';
  position: absolute;
  top: -25px;
  left: 10px;
  width: 5px;
  height: 25px;
  background: url(../images/psf/img_arrow-bottom-black_01.png) 0 0 no-repeat;
  background-size: 5px 25px;
}
.psf-section02-col-note {
	padding-left: 3em;
	text-indent: -1.2em;
	font-size: 1.1rem;
	width: 100%;
	max-width: 450px;
	margin: 0 auto;
}
.psf-section02-col .psf-section02-col-text-info {
	padding-left: 3em;
	font-size: 1.1rem;
	width: 100%;
	max-width: 450px;
	margin: 0 auto;
}
.psf-section02-col .psf-section02-col-text-info ul {
  list-style: none;
}
.psf-section02-col .psf-section02-col-text-info-title {
  position: relative;
  padding-left: 8px;
  font-size: 1.4rem;
  color: #e38e7d;
}
.psf-section02-col .psf-section02-col-text-info-title::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 4px;
  height: 15px;
  background-color: #e38e7d;
}
.psf-section02-col ul + p {
  margin-top: 15px;
}
.psf-section02-col01-inner .psf-section02-col-note + .psf-section02-col-text-box {
  margin-top: 25px;
}
.psf-section02-col01-inner .psf-section02-col-note + .psf-section02-col-text-box::before {
  content: '';
  position: absolute;
  top: -79px;
  left: 10px;
  width: 5px;
  height: 78px;
  background: url(../images/psf/img_arrow-bottom-black_02.png) 0 0 no-repeat;
  background-size: 5px 78px;
}
.psf-section02-col01-inner .psf-section02-col-text-info {
  padding-left: 20px;
}
.psf-section02-col01-inner .psf-section02-col-text-info-note {
  margin-top: 15px;
  color: #e38e7d;
}
.psf-section02-col01-inner .psf-section02-col-text-info ul {
  margin-top: 10px;
}
.psf-section02-col01-inner .psf-section02-col-text-info li {
  display: inline-block;
}
.psf-section02-col02-inner .psf-section02-col-text-info-note {
  margin-bottom: 15px;
  padding-left: 1em;
  text-indent: -1.3em;
  font-size: 1.1rem;
}
.psf-section02-col02-inner .psf-section02-col-text-info-contact {
  color: #e38e7d;
}
.psf-section02-modal-image01 {
  position: relative;
  display: block;
  margin: 20px 0 0 0;
  padding-left: 20px;
  cursor: pointer;
}
.psf-section02-modal-image02,
.psf-section02-modal-image03,
.psf-section02-modal-image04 {
  position: relative;
  display: block;
}
.psf-section02-modal-image01::after,
.psf-section02-modal-image02::after,
.psf-section02-modal-image04::after {
  content: '';
  position: absolute;
  top: 15px;
  right: 5px;
  transform: translateY(-50%);
  width: 15px;
  height: 15px;
  background: url(../images/psf/icon_cross-gray_01.png) 0 0 no-repeat;
  background-size: 15px 15px;
}
.psf-section02-modal-image-note {
  position: relative;
  margin: 5px 0 30px 0;
  padding-left: 35px;
  font-size: 1.1rem;
}
.psf-section02-modal-image-note p {
  padding-left: 1em;
  text-indent: -2.5em;
}
.psf-section02-col-text-info-inner01 {
	width: 100%;
	max-width: 450px;
	margin: 10px auto 0;
}
.psf-section02-col-text-info-inner01 + .psf-section02-col-text-box {
  position: relative;
}
.psf-section02-col-text-info-inner01 + .psf-section02-col-text-box::before {
  content: '';
  position: absolute;
  top: -622px;
  left: 10px;
  width: 5px;
  height: 621px;
  background: url(../images/psf/img_arrow-bottom-black_03.png) 0 0 no-repeat;
  background-size: 5px 621px;

}
.psf-section02-col-text-info-inner03 {
	margin-top: 40px;
	position: relative;
}
.psf-section02-col-text-info-inner03::before {
  content: '';
  position: absolute;
  top: -10px;
  left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
  width: 104%;
	max-width: 480px;
  height: 290%;/*330px;*/
	border: dashed 2px #e1907b;
}

.psf-section02-col-text-info-inner03 .psf-section02-col-text-info {
	padding-left: 	20px;
}
.psf-section02-col-text-info-inner03 .psf-section02-col-text-info-note {
	margin-top: 0;
	margin-bottom: 13px;
	color: #222;
}
.psf-section02-col-text-info-inner03 + .psf-section02-col-text-box::before {
  content: '';
  position: absolute;
  top: -189px;
  left: 10px;
  width: 5px;
  height: 188px;
  background: url(../images/psf/img_arrow-bottom-black_05.png) 0 0 no-repeat;
  background-size: 5px 188px;

}

.psf-section02-col01-inner-list {
	width: 200px;
  position: relative;
	left: 50%;
	margin-top: 20px;
	margin-left: -45%;
}
.psf-section02-col01-inner-list02 {
	width: 100%;
	max-width: 405px;
	margin-top: 10px;
	padding-left: 20px;
  position: relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:justify;
  -ms-flex-pack:justify;
  justify-content:space-between;
}
.psf-section02-col01-inner-list02 .psf-section02-col01-inner-list-image {
	width: 48%;
}
.psf-section02-modal-image03 {
  margin-bottom: 15px;
}
.psf-section02-modal-image04 {
	width: 160px;
	margin-left: -45%;
	margin-bottom: 20px;
	position: relative;
	left: 50%;
	top: 10px;
}
.psf-section02-col-text-info-inner02 {
	width: 100%;
	max-width: 450px;
	margin: 10px auto;
}
.psf-section02-col-text-info-inner02 + .psf-section02-col-text-box::before {
  content: '';
  position: absolute;
  top: -614px;
  left: 10px;
  width: 5px;
  height: 613px;
  background: url(../images/psf/img_arrow-bottom-black_03.png) 0 0 no-repeat;
  background-size: 5px 613px;
}
.psf-section02-modal-image04 + .psf-section02-col-text-box::before {
  content: '';
  position: absolute;
  top: -302px;
  left: 10px;
  width: 5px;
  height: 302px;
  background: url(../images/psf/img_arrow-bottom-black_04.png) 0 0 no-repeat;
  background-size: 5px 302px;
}
.psf-section03 {
  padding: 30px 0 40px;
}
.psf-section03-title {
  position: relative;
  padding-top: 16px;
  font-size: 2.0rem;
  text-align: center;
}
.psf-section03-title::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 23px;
  height: 16px;
  transform: translateX(-50%);
  background: url(../images/psf/icon_lineup-black_01.png) 0 0 no-repeat;
  background-size: 23px 16px;
}
.psf-section03 ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -5px 0;
  list-style: none;
  justify-content: center;
}
.psf-section03 ul li {
  width: calc(50% - 10px);
  margin: 20px 5px 0;
}
.psf-section03-image img {
  width: 100%;
}
.psf-section03-text {
  padding: 3px;
  background: #666;
  font-size: 1.0rem;
  color: #fff;
  text-align: center;
}
.psf-section03-more {
  margin-top: 5px;
}
.psf-section03-more a {
  font-size: 1.0rem;
  padding: 10px;
}
.psf-section04 {
  padding: 30px 0 35px;
  background: #f9f9f9;
}
.psf-section04-title {
  position: relative;
  padding-top: 15px;
  font-size: 2.0rem;
  text-align: center;
}
.psf-section04-title::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 15px;
  height: 15px;
  transform: translateX(-50%);
  background: url(../images/psf/icon_support-black_01.png) 0 0 no-repeat;
  background-size: 15px 15px;
}
.psf-section04-inner {
  margin-top: 20px;
}
.psf-section04-more {
  margin-top: 10px;
}
.psf-footer {
  padding: 15px 0 20px;
  font-size: 1.0rem;
  color: #1b365d;
  text-align: center;
}
.psf-modal-area {
  display: none;
  position: fixed;
  top: -10px;
  left: 0;
  right: 0;
  bottom: -10px;
  z-index: 11;
  background-color: rgba(0, 0, 0, .8);
  overflow: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.psf-modal-area-container {
  display: table;
  padding: 10px 0;
  width: 100%;
  height: 100%;
}
.psf-modal-area-inner {
  display: table-cell;
  padding: 2.7em 2em;
  vertical-align: middle;
}
.psf-modal-image {
  text-align: center;
}
.psf-modal-image span {
  position: relative;
  display: inline-block;
}
.psf-modal-close {
  position: absolute;
  top: -20px;
  right: -3px;
  width: 20px;
  height: 20px;
  cursor: pointer;
}
.psf-modal-close::before,
.psf-modal-close::after {
  content: '';
  display: inline-block;
  position: absolute;
  left: 0;
  width: 20px;
  height: 3px;
  background: #fff;
  border-radius: 1px;
}
.psf-modal-close::before {
  transform: rotate(45deg);
}
.psf-modal-close::after {
  transform: rotate(-45deg);
}

@media screen and (min-width: 350px), print {
.psf-section02-col-text-info-inner03::before {
  height: 325%;/*330px;*/
}
.psf-section02-col-text-info-inner03 + .psf-section02-col-text-box::before {
  top: -171px;
  height: 170px;
  background-size: 5px 170px;
}
.psf-section02-col-text-info-inner01 + .psf-section02-col-text-box::before {
  top: -512px;
  height: 512px;
  background-size: 6px 512px;
}
.psf-section02-col-text-info-inner02 + .psf-section02-col-text-box::before {
  top: -373px;
  height: 373px;
  background-size: 5px 373px;
}
}
@media screen and (min-width: 420px), print {
.psf-section02-col-text-info-inner03::before {
  height: 310%;/*330px;*/
}
.psf-section02-col01-inner .psf-section02-col-note + .psf-section02-col-text-box::before {
  top: -62px;
  height: 61px;
  background-size: 5px 61px;
}
.psf-section02-col-text-info-inner02 + .psf-section02-col-text-box::before {
  top: -374px;
  height: 374px;
  background-size: 5px 374px;
}
}
@media screen and (min-width: 530px), print {
.psf-section02-col-text-info-inner01 + .psf-section02-col-text-box::before {
  top: -533px;
  height: 533px;
  background-size: 5px 533px;
}
	.psf-section02-col01-inner-list{
		margin-left: -200px;
	}
	.psf-section02-modal-image04 {
		margin-left: -200px;
	}
}


@media screen and (min-width: 768px), print {
  .psf-visual .lg-image {
    display: block;
  }
  .psf-visual .sm-image {
    display: none;
  }
  .psf-logo {
    top: 20px;
    left: 30px;
    width: 140px;
  }
  .psf-nav-trigger {
    display: none;
  }
  .psf-header-title {
    top: 25%;
    left: 13.3333%;
    transform: none;
  }
  .psf-header-title-description {
    font-size: 2.8rem;
  }
  .psf-header-subtitle {
    font-size: 2.4rem;
  }
  .psf-header-subtitle span {
    margin-right: 20px;
  }
  .psf-nav-trigger,
  .psf-nav-head {
    display: none;
  }
  .psf-nav {
    position: static;
    width: auto;
    height: auto;
    background: #1b365d;
    opacity: 1;
    visibility: visible;
  }
  .psf-nav-inner {
    max-width: 880px;
    height: auto;
    margin: 0 auto;
    padding: 0 20px;
  }
  .psf-nav-head {
    display: none;
  }
  .psf-nav-contents {
    height: auto;
  }
  .psf-nav-contents-inner {
    display: block;
    height: auto;
    padding: 20px 0;
    overflow: hidden;
  }
  .psf-nav-logo {
    display: none;
  }
  .psf-nav-list {
    display: flex;
    justify-content: space-between;
  }
  .psf-nav-list li:not(:first-child) {
    margin: 0;
  }
  .psf-nav-list li a {
    color: #fff;
    font-size: 1.6rem;
    font-weight: 400;
  }
  .psf-nav-list li a:hover::after {
    opacity: 1;
    visibility: visible;
  }
  .psf-section01 {
    padding: 52px 0 60px;
  }
  .psf-section01-inner01 p {
    font-size: 1.3rem;
  }
  .psf-section01-inner01 p + p {
    margin-top: 20px;
  }
  .psf-section01-title {
    padding-top: 60px;
    font-size: 3.0rem;
  }
  .psf-section01-title::before {
    width: 30px;
    height: 51px;
    background-size: 30px 51px;
  }
  .psf-section01-subtitle {
    font-size: 1.8rem;
  }
  .psf-section01-inner01 {
    display: flex;
    margin-top: 60px;
  }
  .psf-section01-text {
    order: 2;
    flex: 1;
  }
  .psf-section01-image {
    order: 1;
    width: 45%;
    margin-right: 50px;
  }
  p.psf-section01-catch {
    margin: 0 0 45px;
    font-size: 1.6rem;
  }
  .psf-section01-image img {
    margin-top: 40px;
  }
  .psf-section01-image img:first-child {
    margin-top: 0;
  }
  .psf-section01-inner02 {
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
    padding: 30px 15px 20px;
  }
  .psf-section01-inner02-image {
    width: 45.8%;
  }
  .psf-section01-inner02-image p {
    text-align: center;
  }
  .psf-section01-inner02-image02 {
    padding: 0;
  }
  .psf-section01-inner02-image02::before {
    top: 50%;
    left: -10%;
    width: 12px;
    height: 27px;
    transform: translateY(-50%);
    background: url(../images/psf/icon_arrow-right-pink_01.png) 0 0 no-repeat;
    background-size: 12px 27px;
  }
  .psf-section02 {
    padding: 45px 0 40px;
  }
  .psf-section02-title {
    padding-top: 55px;
    font-size: 3.0rem
  }
  .psf-section02-title::before {
    width: 29px;
    height: 40px;
    background-size: 29px 40px;
  }
  .psf-section02-modal {
    margin-top: 30px;
  }
  .psf-section02-modal-text {
    padding: 15px;
    transition: opacity .2s ease-in-out;
    cursor: pointer;
  }
  .psf-section02-modal-text:hover {
    opacity: .5;
  }
  .psf-section02-modal-text p {
    font-size: 1.6rem;
  }
  .psf-section02-modal-text p::before {
    left: -40px;
    width: 31px;
    height: 31px;
    background-size: 31px 31px;
  }
  .psf-section02-modal-text p span {
    font-size: 1.2rem;
  }
  .psf-section02-modal-text::after {
    right: 12px;
    width: 26px;
    height: 26px;
    background-size: 26px 26px;
  }
  .psf-section02-modal-text.acc-is-open::after {
    background-size: 26px 26px;
  }
  .psf-section02-modal-image01 {
    margin-top: 20px;
    cursor: pointer;
  }
  .psf-section02-modal-image01::after,
  .psf-section02-modal-image02::after,
  .psf-section02-modal-image04::after {
    top: 20px;
    right: 8px;
    width: 26px;
    height: 26px;
    background-size: 26px 26px;
  }
  .psf-section02-modal-image02,
  .psf-section02-modal-image03,
  .psf-section02-modal-image04 {
    cursor: pointer;
  }
  .psf-section02-modal-image01::after,
  .psf-section02-modal-image02::after,
  .psf-section02-modal-image03::after,
  .psf-section02-modal-image04::after {
    transition: opacity .2s ease-in-out;
  }
  .psf-section02-modal-image01:hover::after,
  .psf-section02-modal-image02:hover::after,
  .psf-section02-modal-image03:hover::after,
  .psf-section02-modal-image04:hover::after {
    opacity: 0.5;
  }
  .psf-section03 {
    padding: 50px 0;
  }
  .psf-section03-title {
    position: relative;
    padding-top: 40px;
    font-size: 3.0rem;
  }
  .psf-section03-title::before {
    width: 45px;
    height: 30px;
    background-size: 45px 30px;
  }
  .psf-section03 ul {
    margin: 0 -8px 0;
    justify-content: center;
  }
  .psf-section03 ul li {
    width: calc(25% - 16px);
    margin: 35px 8px 0;
  }
  .psf-section03-text {
    padding: 8px;
    font-size: 1.5rem;
  }
  .psf-section03-more {
    margin-top: 10px;
  }
  .psf-section03-more a {
    padding: 15px;
    font-size: 1.4rem;
  }
  .psf-section04-title {
    padding-top: 40px;
    font-size: 3.0rem;
  }
  .psf-section04-title::before {
    width: 30px;
    height: 30px;
    background-size: 30px 30px;
  }
  .psf-section04-inner {
    display: flex;
    margin: 35px -8px 0;
    justify-content: center;
  }
  .psf-section04-more {
    margin-top: 0;
    width: calc(33.3333% - 16px);
    margin: 0 8px;
  }
  .psf-footer {
    padding: 20px 0 40px;
  }
  .psf-modal-box {
    width: auto;
  }
}
@media screen and (min-width: 1024px), print {
  .psf-header-title {
    top: 30%;
    left: 22%;
  }
  .psf-header-title-description {
    font-size: 3.2rem;
  }
  .psf-header-subtitle {
    font-size: 2.8rem;
  }
  .psf-section01-inner01 p {
    line-height: 1.7;
  }
  .psf-section01-inner01 p:last-of-type {
    margin-top: 40px;
  }
  p.psf-section01-catch {
    font-size: 2.0rem;
  }
  .psf-section01-inner02-image p {
    font-size: 1.3rem;
  }
  .psf-section02-column {
    width: 100%;
  }
}

/* product option list */
.product-option-search-section {
  margin-top: 40px;
}
.product-option-search-section table {
  width: 100%;
  font-size: 1.2rem;
}
.product-option-search-section thead {
  display: none;
}
.product-option-search-section tr {
  display: block;
  border-top: 1px solid #d8d8d8;
  border-right: 1px solid #d8d8d8;
  border-left: 1px solid #d8d8d8;
}
.product-option-search-section tr + tr {
  margin-top: 20px;
}
.product-option-search-section td {
  display: block;
  border-bottom: 1px solid #d8d8d8;
}
.product-option-search-section td div,
.product-option-search-section td ul {
  display: block;
  padding: 15px;
}
.product-option-search-section td ul {
  list-style: none;
}
.product-option-search-section td a {
  display: block;
}
.product-option-search-section td a span,
.product-option-search-section td li a span {
  position: relative;
}
.product-option-search-section td a span::after,
.product-option-search-section td li a span::after {
  content: '';
  display: inline-block;
  width: 5px;
  height: 10px;
  margin-left: 7px;
  background-image: url(../images/common/icon_arrow-right-blue_01.png);
  background-size: 5px 10px;
}
.product-option-search-section td:nth-child(1)::before,
.product-option-search-section td:nth-child(2)::before,
.product-option-search-section td:nth-child(3)::before,
.product-option-search-section td:nth-child(4)::before {
  content: attr(data-label);
  display: block;
  width: 100%;
  padding: 12px 15px;
  border-bottom: 1px solid #d8d8d8;
  background: #f4f4f4;
  font-weight: 700;
  color: #656565;
}
@media screen and (min-width: 768px), print {
  .product-option-search-section {
    font-size: 1.2rem;
  }
  .product-option-search-section thead {
    display: table-header-group;
  }
  .product-option-search-section thead th {
    display: table-cell;
    padding: 12px 15px 15px;
    background: #f4f4f4;
    color: #656565;
  }
  .product-option-search-section tr {
    display: table-row;
    border-right: none;
    border-left: none;
  }
  .product-option-search-section tr td {
    display: table-cell;
    border-right: 1px solid #d8d8d8;
    padding: 10px 5px 10px 10px;
  }
  .product-option-search-section td div,
  .product-option-search-section td ul {
    padding: 0;
  }
  .product-option-search-section td ul li {
    margin-top: 10px;
  }
  .product-option-search-section td:nth-child(1) {
    width: 16%;
    background: #f4f4f4;
    border-right: none;
  }
  .product-option-search-section td:nth-child(2) {
    width: 19%;
  }
  .product-option-search-section td:nth-child(3) {
    width: 47%
  }
  .product-option-search-section td:nth-child(4) {
    width: 18%;
    border-right: none;
  }
  .product-option-search-section td:nth-child(1)::before,
  .product-option-search-section td:nth-child(2)::before,
  .product-option-search-section td:nth-child(3)::before,
  .product-option-search-section td:nth-child(4)::before {
    content: none;
  }
}

/* product option_detail list */
.product-option-detail-section {
  margin-top: 40px;
  font-size: 1.2rem;
}
.product-option-detail-list,
.product-option-detail-feature-list {
  list-style: none;
}
.product-option-detail-list .product-option-detail-item {
  position: relative;
  margin-top: 10px;
}
.product-option-detail-list .product-option-detail-item span::after {
  content: '';
  display: inline-block;
  width: 5px;
  height: 10px;
  margin-left: 7px;
  background-image: url(../images/common/icon_arrow-right-blue_01.png);
  background-size: 5px 10px;
}
.product-option-detail-feature-item {
  margin-top: 10px;
  padding-left: 1em;
  text-indent: -0.5em;
}
.product-option-detail-feature-item:nth-child(1)::before,
.product-option-detail-feature-item:nth-child(2)::before {
  content: '・';
  display: inline-block;
}
.product-option-detail-feature-item:nth-child(3)::before {
  content: '※';
  display: inline-block;
}
.product-option-detail-section .adobe-attention-image {
  width: 160px;
  margin: 10px auto 0;
}
.product-option-detail-section .dl-file {
  margin-top: 20px;
}
.product-option-detail-section .dl-file-col-head {
  padding: 8px;
  background: #f4f4f4;
  border-top: 1px solid #d8d8d8;
  border-bottom: 1px solid #d8d8d8;
  color: #656565;
  font-weight: 700;
  text-align: center;
}
.product-option-detail-section .dl-file-col-contents {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 575px;
  margin: 10px auto 0;
  text-align: center;
}
.product-option-detail-section .dl-file-col-contents a {
  display: inline-block;
  width: 48px;
  margin: 0 auto;
}
.product-option-detail-section .dl-file-row + .dl-file-row {
    margin-top: 0;
}
@media screen and (min-width: 768px), print {
  .product-option-detail-list {
    display: flex;
    align-content: flex-start;
  }
  .product-option-detail-list .product-option-detail-item {
    margin-right: 40px;
  }
  .product-option-detail-list .product-option-detail-item span::after {
    width: 6px;
    height: 12px;
    background-size: 6px 12px;
  }
  .product-option-detail-section {
    font-size: 1.4rem;
  }
  .product-option-detail-feature-item {
    margin-top: 15px;
  }
  .product-option-detail-section .adobe-attention {
    display: flex;
    align-items: center;
  }
  .product-option-detail-section .adobe-attention-text {
    flex: 1;
    padding-right: 40px;
    font-size: 1.2rem;
  }
  .product-option-detail-section .adobe-attention-image {
    margin: 0;
  }
  .product-option-detail-section .dl-file-row + .dl-file-row {
    margin-top: 10px;
  }
  .product-option-detail-section .dl-file-col-head {
    padding: 12px;
    font-size: 1.2rem;
  }
}

/* tech */
.page-tech p {
  font-size: 1.2rem;
}
.page-tech ul,
.page-tech ol {
  font-size: 1.2rem;
  list-style: none;
}
.page-tech h4 {
  margin: 15px 0 5px;
  font-size: 1.2rem;
}
.page-tech-index-list {
  margin: 15px 0 15px 15px;
  list-style: none;
}
.page-tech-index-list li {
  margin-top: 5px;
}
.page-tech-law-text {
  margin-top: 15px;
  padding-left: 1em;
  text-indent: -1em;
  color: #aa9f71;
  font-weight: 700;
}
.page-tech-formula {
  margin: 15px 0;
  color: #1b365d;
  font-weight: 700;
}
.page-tech-image {
  margin-top: 20px;
}
.page-tech-table-wrapper {
  margin-top: 15px;
}
.page-tech-table-wrapper table {
  width: 100%;
  margin: 5px 0 15px;
  font-size: 1.2rem;
}
.page-tech-table01 th {
  width: 50%;
  padding: 10px;
  background: #f4f4f4;
  border-bottom: 1px solid #d8d8d8;
  font-weight: 400;
}
.page-tech-table01 th:not(:last-child),
.page-tech-table02 th:not(:last-child),
.page-tech-table03 th:not(:last-child) {
  border-right: 1px solid #d8d8d8;
}
.page-tech-table01 td,
.page-tech-table02 td,
.page-tech-table03 td{
  padding: 10px;
  border-bottom: 1px solid #d8d8d8;
  text-align: center;
  vertical-align: middle;
}
.page-tech-table01 td:not(:last-child),
.page-tech-table01 td:first-child,
.page-tech-table02 td:not(:last-child),
.page-tech-table03 td{
  border-right: 1px solid #d8d8d8;
}
.page-tech-table03 td.tech-td-last {
  border-right: 0;
}
.tech-carbon-icon-pdf {
	width: 14px;
}
.page-tech-table02 {
  width: 100%;
  margin-top: 10px;
  font-size: 1.2rem;
}
.page-tech-table02 th {
  width: 33.3333%;
  padding: 10px;
  background: #f4f4f4;
  border-bottom: 1px solid #d8d8d8;
  font-weight: 400;
}
.page-tech-table03 {
  width: 100%;
  margin-top: 10px;
  font-size: 1.1rem;
}
.page-tech-table03 th {
  padding: 10px;
  background: #f4f4f4;
  border-bottom: 1px solid #d8d8d8;
  font-weight: 400;
}
.page-tech-carbon-text {
	margin: 40px 0 20px;
}
@media screen and (max-width: 767px) {
	.page-tech-table03-scroll {
		width: 100%;
		overflow: scroll;
	}
	.page-tech-table03 {
		min-width: 740px;
	}
}
.page-tech-sub-heading {
  margin: 10px 0;
  font-weight: 700;
  color: #1b365d;
}
.page-tech-list01 li ul {
  margin-bottom: 10px;
}
.page-tech-list01 li ul li {
  padding-left: 2em;
  text-indent: -1em;
}
.page-tech-list02 {
  margin: 20px 0;
  list-style: none;
}
.page-tech-list02 .page-tech-list02-item {
  counter-increment: number01;
  padding-left: 1em;
  text-indent: -1.2em;
}
.page-tech-law-1-3 .page-tech-list02 .page-tech-list02-item {
  font-weight: 700;
}
.page-tech-list02 .page-tech-list02-item::before {
  content:"("counter(number01)")";
}
.page-tech-list02-item-list {
  margin: 10px 0;
  padding-left: 1em;
  font-weight: 400;
}
.page-tech-list03 {
  padding-left: 1.5em;
}
.page-tech-list03 .page-tech-list03-item {
  position: relative;
  counter-increment: number02;
  padding-left: 1.5em;
}
.page-tech-list03 .page-tech-list03-item::before {
  position: absolute;
  content:counter(number02);
  left: 0;
  top: 0;
}
.page-tech-law-5 .page-tech-list04 {
  padding-left: 3.5em;
}
.page-tech-list04 .page-tech-list04-item {
  margin-top: 10px;
}
.page-tech-law-text-note {
  margin-top: 10px;
}
.page-tech-law-1-4 .page-tech-list02-item + .page-tech-list02-item {
  margin-top: 10px;
}
.page-tech-law-3-note {
  margin-top: 20px;
}
.page-tech-law-3 .page-tech-list02-item + .page-tech-list02-item {
  margin-top: 15px;
}
.page-tech-law-4 .page-tech-law-text + p {
  margin-top: 20px;
}
.page-tech-law-5 .page-tech-law-box {
  margin-top: 10px;
}
.page-tech-law-5 .page-tech-list03 + p {
  margin-top: 10px;
}
.page-tech-law-5 .c-heading02 + p + p {
  margin-top: 10px;
}
.page-tech-law-5 .page-tech-law-box-outline {
  margin-top: 10px;
  padding-left: 3.5em;
  text-indent: -2em;
}
.page-tech-law-6-outline {
  margin-top: 10px;
}
.page-tech-law-6-outline + div {
  margin-top: 5px;
}
.page-tech-red {
  color: #cc0000;
}
@media screen and (min-width: 768px), print {
  .page-tech {
    padding-bottom: 100px;
  }
  .page-tech p {
    font-size: 1.4rem;
  }
  .page-tech ul,
  .page-tech ol {
    font-size: 1.4rem;
    list-style: none;
  }
  .page-tech h4 {
    margin: 30px 0 15px;
    font-size: 1.4rem;
  }
  .page-tech-index-list {
    margin: 25px 0 25px 25px;
  }
  .page-tech-formula {
    margin: 20px 0;
  }
  .page-tech-table-wrapper {
    margin-top: 20px;
  }
  .page-tech-table-inner {
    display: flex;
    margin: 0 -10px;
  }
  .page-tech-table-wrapper table {
    width: calc(50% - 20px);
    margin: 5px 10px 0;
  }
  .page-tech-table02 {
    margin-top: 15px;
  }
  .page-tech-table01 td,
  .page-tech-table02 td {
    font-size: 1.4rem;
  }
  .page-tech-sub-heading {
    margin: 20px 0;
  }
  .page-tech-list02 {
    margin: 25px 0;
  }
  .page-tech-list02-item-list {
    margin: 15px 0;
  }
  .page-tech-law-text-note {
    margin-top: 15px;
  }
  .page-tech-law-1-4 .page-tech-list02-item + .page-tech-list02-item {
    margin-top: 20px;
  }
  .page-tech-law-3 .page-tech-list02-item + .page-tech-list02-item {
    margin-top: 20px;
  }
  .page-tech-law-4 .page-tech-law-text + p {
    margin-top: 25px;
  }
  .page-tech-law-5 .page-tech-law-box {
    margin-top: 15px;
  }
  .page-tech-law-5 .page-tech-list03 + p {
    margin-top: 15px;
  }
  .page-tech-law-5 .page-tech-law-box-outline {
    margin-top: 25px;
    padding-left: 3em;
  }
  .page-tech-law-5 .page-tech-list04 {
    padding-left: 3em;
  }
  .page-tech-law-5 .page-tech-list04 .page-tech-list04-item {
    margin-top: 20px;
  }
  .page-tech-law-6-outline {
    margin-top: 15px;
  }
  .page-tech-law-6-outline + div {
    margin-top: 10px;
  }
}

/* socialgood */
.page-socialgood p {
  font-size: 1.2rem;
}
.page-socialgood ol {
  font-size: 1.2rem;
}
.page-socialgood-index-list {
  list-style: none;
}
.page-socialgood-index-item {
  position: relative;
  margin-top: 10px;
  border: 3px solid #1b365d;
}
.page-socialgood-index-item a {
  display: block;
}
.page-socialgood-index-item h3 {
  padding: 5px;
  font-size: 1.2rem;
}
.page-socialgood-index-item-image {
  padding: 5px;
  text-align: right;
}
.page-socialgood-index-item-image img {
  width: 100%;
}
.page-socialgood-list {
  font-size: 1.2rem;
  list-style: none;
}
.page-socialgood-list p {
  font-weight: 700;
}
.page-socialgood-list p span {
  color: #1b365d;
}
.page-socialgood-item {
  margin-top: 10px;
}
.page-socialgood-column {
  margin-top: 10px;
}
.page-socialgood-column div {
  margin-top: 10px;
  text-align: center;
}
.page-socialgood-column div img {
  width: 100%;
}
.page-socialgood .page-socialgood-column p {
  margin-top: 5px;
  font-size: 1.2rem;
  text-align: center;
}
.page-socialgood-section02 {
  margin-top: 20px;
}
.page-socialgood-sub-heading {
  margin-top: 10px;
  font-weight: 700;
  color: #1b365d;
}
.page-socialgood-list01 {
  list-style: none;
}
.page-socialgood-list01 .page-socialgood-list01-item {
  counter-increment: number03;
  padding-left: 1em;
  text-indent: -1.2em;
}
.page-socialgood-list01 .page-socialgood-list01-item::before {
  content:"("counter(number03)")";
}
.page-socialgood-section02 table {
  width: 100%;
  margin-top: 5px;
  border: 1px solid #dddddd;
}
.page-socialgood-section02 table th {
  display: block;
  padding: 10px;
  background: #f8fcfe;
  border-bottom: 1px solid #dddddd;
  font-size: 1.2rem;
}
.page-socialgood-section02 table tr:not(:first-child) th {
  border-top: 1px solid #dddddd;
}
.page-socialgood-section02 table td {
  display: block;
  padding: 10px;
}
.page-socialgood-section02 table td:not(:last-child) {
  border-bottom: 1px solid #dddddd;
}
.page-socialgood-section02 table tr td:first-of-type {
  background: #f1f1f1;
}
.page-socialgood-image {
  margin-top: 15px;
}
.page-socialgood-image img {
  width: 100%;
}
@media screen and (min-width: 768px), print {
  .page-socialgood {
    padding-bottom: 100px;
  }
  .page-socialgood p {
    font-size: 1.6rem;
  }
  .page-socialgood ol {
    font-size: 1.6rem;
  }
  .page-socialgood-index-item a div {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .page-socialgood-index-item h3 {
    padding: 10px 5px 10px 30px;
    font-size: 1.6rem;
  }
  .page-socialgood-index-item-image {
    padding: 10px;
  }
  .page-socialgood-list {
    font-size: 1.6rem;
  }
  .page-socialgood-item {
    margin-top: 15px;
  }
  .page-socialgood-column {
    display: flex;
    justify-content: space-between;
    margin: 20px -5px 0;
  }
  .page-socialgood-column div {
    width: calc(50% - 10px);
    margin: 0 5px;
  }
  .page-socialgood-sub-heading {
    margin-top: 20px;
  }
  .page-socialgood-section02 table {
    font-size: 1.4rem;
  }
  .page-socialgood-section02 table th {
    display: table-cell;
    width: 50px;
    padding: 10px;
    border-right: 1px solid #dddddd;
  }
  .page-socialgood-section02 table td {
    display: table-cell;
    padding: 15px;
  }
  .page-socialgood-section02 table tr td:not(:last-child) {
    border-right: 1px solid #dddddd;
    border-bottom: none;
  }
  .page-socialgood-section02 table tr:not(:last-child) td {
    border-bottom: 1px solid #dddddd;
  }
  .page-socialgood-image {
    margin-top: 30px;
  }
}

/* rule */
.page-rule-index {
  padding-top: 20px;
  padding-bottom: 40px;
  font-size: 1.2rem;
}
.rule-index-section01 {
  margin-top: 20px;
}
.rule-index-section02 {
  margin-top: 40px;
}
.rule-index-section03 {
  margin-top: 40px;
}
.rule-index-section03 ul li {
  padding-left: 1em;
  text-indent: -1em;
  list-style: none;
}
.rule-index-section04 {
  margin-top: 40px;
}
.rule-index-section05 {
  margin-top: 40px;
}
.rule-index-section06 {
  margin-top: 40px;
}
.rule-index-section07 {
  margin-top: 40px;
}
.rule-index-section07 p + p {
  margin-top: 20px;
}
@media screen and (min-width: 768px), print {
  .page-rule-index {
    padding-top: 50px;
    padding-bottom: 100px;
    font-size: 1.6rem;
  }
  .rule-index-section01 {
    margin-top: 30px;
  }
  .rule-index-section07 p + p {
    margin-top: 35px;
  }
}

/* plivacy */
.page-plivacy-index {
  padding-top: 20px;
  padding-bottom: 40px;
  font-size: 1.2rem;
}
.page-plivacy-index h3,
.page-plivacy-index h4 {
  font-weight: normal;
  font-size: 1.2rem;
}
.page-plivacy-index h4 {
  margin-top: 20px;
}
.page-plivacy-index ol.list_parentheses li {
  list-style:none;
  margin-left: 1.5em;
  counter-increment: cnt;
}
.page-plivacy-index ol.list_parentheses li:before{
  display: inline-block;
  text-align: left;
  width: 1.5em;
  content: "(" counter(cnt) ") ";
  margin-left:-1.7em;
}


.plivacy-index-data {
  margin-top: 20px;
}
.plivacy-index-section01 {
  margin-top: 40px;
}
.plivacy-index-section02 {
  margin-top: 40px;
}
.plivacy-index-section03 {
  margin-top: 40px;
}
.plivacy-index-section04 {
  margin-top: 40px;
}
.plivacy-index-section05 {
  margin-top: 40px;
}
.plivacy-index-section06 {
  margin-top: 40px;
}
.plivacy-index-section07 {
  margin-top: 40px;
}
.plivacy-index-section07 ul li {
  padding-left: 1em;
  text-indent: -1em;
  list-style: none;
}
.plivacy-index-section08 {
  margin-top: 40px;
}
.plivacy-index-section09 {
  margin-top: 40px;
}
.plivacy-index-section10 {
  margin-top: 40px;
}
.plivacy-index-section11 {
  margin-top: 40px;
}
.plivacy-index-section12 {
  margin-top: 40px;
}
.plivacy-index-info {
  margin-top: 40px;
}
@media screen and (min-width: 768px), print {
  .page-plivacy-index {
    padding-top: 50px;
    padding-bottom: 100px;
    font-size: 1.6rem;
  }
  .page-plivacy-index h3,
  .page-plivacy-index h4 {
      font-size: 1.6rem;
  }
  .plivacy-index-data {
    margin-top: 30px;
  }
  .plivacy-index-section07 p + p {
    margin-top: 35px;
  }
}

/* sitemap */
.page-sitemap-index {
  padding-top: 20px;
  padding-bottom: 40px;
  font-size: 1.2rem;
}
.sitemap-index-inner {
  margin-top: 20px;
}
.page-sitemap-index ul li {
  list-style: none;
  letter-spacing: -0.06rem;
}
.sitemap-index-link-list {
  margin-top: -10px;
}
.sitemap-index-link-item {
  margin-top: 10px;
}
.sitemap-index-link-item-bold {
  font-weight: 700;
}
.sitemap-index-section01 {
  margin-top: 0;
}
.sitemap-index-section02 {
  margin-top: 40px;
}
.sitemap-index-section03 {
  margin-top: 40px;
}
.sitemap-index-section04 {
  margin-top: 40px;
}
.sitemap-index-section05 {
  margin-top: 40px;
}
@media screen and (min-width: 768px), print {
  .page-sitemap-index {
    padding-top: 50px;
    padding-bottom: 100px;
    font-size: 1.6rem;
  }
  .sitemap-index-inner {
    margin-top: 30px;
  }
  .sitemap-index-section02 {
    margin-top: 0;
  }
  .sitemap-index-section03 br {
   display: none;
  }
  .sitemap-index-link-item {
    width: 100%;
  }
}
@media screen and (min-width: 1024px), print {
  .sitemap-index-section03 {
    margin-top: 0;
  }
}

/* company */
.page-company {
  padding-top: 20px;
  padding-bottom: 40px;
  font-size: 1.2rem;
}
.page-company ul li {
  list-style: none;
}
.page-company .page-company-overview-list,
.page-company .page-company-overview-item {
  margin-top: 0;
}
.page-company .page-company-overview-item {
  margin-left: 0;
  margin-right: 0;
  padding-top: 20px;
  border-top: 1px solid #d8d8d8;
}
.page-company .page-company-overview-item:not(:first-child) {
  margin-top: 20px;
}
.page-company .page-company-overview-item:last-child {
  padding-bottom: 20px;
  border-bottom: 1px solid #d8d8d8;
}
.page-company-overview-item-contents {
  margin: 0;
}
.page-company .page-company-overview-item .page-company-overview-item-contents-title {
  margin-bottom: 5px;
  font-size: 1.2rem;
  color: #1b365d;
}
.page-company-image-caption {
  margin-top: 5px;
  font-size: 1.2rem;
}


/*2021-------------*/
.page-company-text a {
  display: inline-block;
  margin-top: 5px;
}

.page-company-text ul li {
  list-style: none;
}
.page-company-text-contents {
  margin-top: 20px;
}

.page-company-access-section05 .page-company-text .page-company-text-contents

.page-company-text-contents h4 span {
  color: #1b365d;
}
.page-company-text-red {
  color: #cc0000;
  font-weight: 700;
}
.page-company-text-bold {
  font-weight: 700;
}


@media screen and (min-width: 768px), print {
  .page-company {
    padding-top: 50px;
    padding-bottom: 100px;
    font-size: 1.6rem;
  }
  .page-company .page-company-overview-list {
    margin-top: 30px;
  }
  .page-company .page-company-overview-item {
    padding-top: 25px;
    justify-content: center;
  }
  .page-company .page-company-overview-item:not(:first-child) {
    margin-top: 25px;
  }
  .page-company .page-company-overview-item:last-child {
    padding-bottom: 25px;
  }
  .page-company .page-company-overview-item .page-company-overview-item-contents-title {
    font-size: 1.6rem;
  }
  .page-company-text-contents {
    margin-top: 30px;
  }
}
@media screen and (min-width: 1024px), print {
  .page-company .page-company-overview-item:first-child {
    padding-top: 0;
    border-top: none;
  }
  .page-company .page-company-overview-item:last-child {
    padding-bottom: 0;
    border-bottom: none;
  }
  .page-company .page-company-overview-item .page-company-overview-item-contents-title {
    width: 17%;
  }
  .page-company .page-company-overview-item .page-company-overview-item-contents-title + .page-company-overview-item-contents {
    flex: 1;
  }
}

/* greeting */
.page-company-greeting .page-company-image {
  width: 50%;
  margin: 20px auto 0;
  text-align: center;
}
.page-company-greeting .page-company-text-text {
  margin-top: 0;
}
.page-company-greeting .page-company-text-contents-catch {
  font-size: 1.3rem;
  font-weight: bold;
}
@media screen and (min-width: 768px), print {
  .page-company-greeting .page-company-image {
    margin: 20px 0 0 auto;
    width: 20%;
  }
  .page-company-greeting .page-company-text-contents-catch {
    font-size: 1.8rem;
  }
}

/* policy */
.page-company-policy ol li {
  padding-left: 1em;
  text-indent: -1em;
  list-style-position: inside;
}
.page-company-policy ol li + li {
  margin-top: 20px;
}
.page-company-policy .page-company-policy-section02 {
  margin-top: 40px;
}

/*★追加--------------*/
.page-company-policy .page-company-policy-section03 {
margin-top: 40px;
}


/* history */
.page-company-history-title-inner {
  display: flex;
  margin: 0 -5px;
}
.page-company-history-title {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50%;
  margin: 0 5px;
  background: #0095a2;
  font-size: 1.6rem;
  font-weight: 400;
  color: #fff;
  text-align: center;
}
.page-company-history-title:nth-child(2) {
  background: #1b365d;
}
.page-company-history-list {
  margin-top: 10px;
}
.page-company-history-list a {
  text-decoration: none;
}
.page-company-history-item {
  position: relative;
  display: flex;
  align-items: center;
  padding-top: 5px;
}
.page-company-history-item::before {
  content: '';
  position: absolute;
  top: 5px;
  left: 50%;
  transform: translateX(-50%);
  height: 100%;
  width: 2px;
  background: #f4f4f4;
  z-index: -1
}
.page-company-history-item-year {
  display: flex;
  justify-content: center;
  order: 2;
  width: 12%;
  font-size: 1.2rem;
  font-weight: 700;
  color: #1b365d;
}
.page-company-history-item-products,
.page-company-history-item-various {
  width: 44%;
}
.page-company-history-item-products {
  order: 1;
}
.page-company-history-item-products p {
  padding: 5px;
  background: #e6f3f4;
  color: #0095a2;
}
.page-company-history-item-products a {
  display: block;
}
.page-company-history-item-products a:hover {
  opacity: 0.5;
}
.page-company-history-item-products a p {
  position: relative;
  display: block;
  padding-bottom: 30px;
}
.page-company-history-item-products a p::after {
  content: '';
  position: absolute;
  bottom: 5px;
  left: 50%;
  transform: translate(-50%, 0);
  width: 22px;
  height: 22px;
  background: url(../images/company/history/icon_cross-green_01.png) 0 0 no-repeat;
  background-size: 22px 22px;
}
.page-company-history-item-various {
  order: 3;
}
.page-company-history-item-various p {
  padding: 5px;
  background: #e6e5eb;
  color: #1b365d;
}
.history-detail-image {
  text-align: center;
  max-width: 500px;
}
.history-detail-image-inner {
  display: inline-block;
}
.history-detail-image img {
  display: block;
  margin: 0 auto;
  width: 100%;
}
.history-detail-contents {
  display: none;
}
.history-modal-contentInner .history-detail-contents {
  display: block;
}
#history-modal-overlay {
  display: none;
  position: fixed;
  top: -9999px;
  bottom: -9999px;
  left: 0;
  z-index: 2000;
  width: 100%;
  min-height: 100%;
  background: #000;
  opacity: .5 !important;
}
#history-modal-case {
  display: none;
  position: fixed;
  z-index: 2002;
  top: 50%;
  left: 50%;
}
#history-modal-case,
.history-modal-contentInner {
  width: calc(100vw - 30px);
  max-width: 500px;
}
.history-modal-contentInner {
  position: relative;
}
#history-modal-case iframe {
  width: 100% !important;
  max-width: 100% !important;
}
.history-modal-open body {
  overflow: hidden;
}
.history-modal-isMobileDevice .history-modal-open body {
  max-width: 100%;
  max-height: 100%;
}
.history-modal-icon-close,
.history-modal-icon-prev,
.history-modal-icon-next,
.custom-history-modal-icon-prev.is-disabled,
.custom-history-modal-icon-next.is-disabled {
  display: none !important;
}
.custom-history-modal-icon-close,
.custom-history-modal-icon-prev,
.custom-history-modal-icon-next {
  display: block !important;
  position: absolute;
  font-size: 0;
}
.custom-history-modal-icon-close {
  top: -25px;
  right: 0;
  width: 25px;
  height: 25px;
}
.custom-history-modal-icon-close::before,
.custom-history-modal-icon-close::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 15px;
  height: 2px;
  background: #fff;
}
.custom-history-modal-icon-close::before {
  transform: translateY(7px) rotate(45deg);
}
.custom-history-modal-icon-close::after {
  transform: translateY(7px) rotate(-45deg);
}
.custom-history-modal-icon-prev,
.custom-history-modal-icon-next {
  display: block !important;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 11px;
  height: 18px;
}
.custom-history-modal-icon-prev {
  left: -20px;
}
.custom-history-modal-icon-next {
  right: -20px;
}
.custom-history-modal-icon-prev::before,
.custom-history-modal-icon-next::before {
  content: '';
  position: absolute;
  top: 0;
  width: 20px;
  height: 20px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 11px 18px;
}
.custom-history-modal-icon-prev::before {
  left: 0;
  background-image: url(../images/common/icon_arrow-left-white_02.png);
}
.custom-history-modal-icon-next::before {
  left: 0;
  background-image: url(../images/common/icon_arrow-right-white_02.png);
}
@media screen and (min-width: 768px), print {
  .page-company-history-title {
    padding: 5px 0;
  }
  .page-company-history-item-year {
    width: 8%;
    font-size: 1.6rem;
  }
  .page-company-history-item-products,
  .page-company-history-item-various {
    width: 46%;
    font-size: 1.4rem;
  }
  .page-company-history-item-products p,
  .page-company-history-item-various p {
    padding: 5px 8px;
  }
  .page-company-history-item-products a p {
    padding: 5px 5px 5px 35px;
  }
  .page-company-history-item-products a p::after {
    bottom: 50%;
    left: 10px;
    transform: translate(0, 50%);
  }
}
/* group */
.page-company-group table {
  width: 100%;
  border: 1px solid #d8d8d8;
}
.page-company-group table tr:not(:first-child) {
  border-top: 1px solid #d8d8d8;
}
.page-company-group table th,
.page-company-group table td {
  display: block;
  padding: 10px;
}
.page-company-group table th {
  background: #f4f4f4;
  color: #656565;
  font-size: 1.2rem;
  text-align: left;
}
.page-company-group table .page-company-group-table-inside-style th {
  background: #e6e6e6;
}
.page-company-group .page-company-group-section01 table {
  margin-top: 20px;
}
.page-company-group .page-company-group-section01 table tr:nth-child(4) td span {
  display: block;
}
.page-company-group .page-company-group-section02,
.page-company-group .page-company-group-section03 {
  margin-top: 40px;
}
.page-company-group .page-company-group-section02 table th {
  border-bottom: 1px solid #d8d8d8;
}
@media screen and (min-width: 768px), print {
  .page-company-group table {
    border: none;
  }
  .page-company-group table tr {
    display: flex;
  }
  .page-company-group table th,
  .page-company-group table td {
    padding: 15px;
  }
  .page-company-group table th {
    display: flex;
    align-items: center;
    width: 29%;
  }
  .page-company-group table td {
    flex: 1;
    font-size: 1.4rem;
  }
  .page-company-group table .page-company-group-table-inside-style th {
    padding: 0;
    border-left: 10px solid #f4f4f4;
  }
  .page-company-group table .page-company-group-table-inside-style th span {
    display: flex;
    align-items: center;
    padding-left: 10px;
    width: 100%;
    height: 100%;
    border-top: 1px solid #d8d8d8;
  }
  .page-company-group table .page-company-group-table-inside-style td {
    border-top: 1px solid #d8d8d8;
  }
  .page-company-group .page-company-group-table01 {
    border-top: 1px solid #d8d8d8;
    border-bottom: 1px solid #d8d8d8;
  }
  .page-company-group .page-company-group-table02 {
    border-top: 1px solid #d8d8d8;
    border-bottom: 1px solid #d8d8d8;
  }
  .page-company-group .page-company-group-section01 table tr:not(:first-child) {
    border-top: none;
  }
  .page-company-group .page-company-group-section01 h3 + p {
    font-size: 1.6rem;
  }
  .page-company-group .page-company-group-section01 .page-company-group-table02 {
    margin-top: 0;
  }
  .page-company-group .page-company-group-section02 table th {
    border-bottom: none;
  }
}

/* access */
/*2021-------
.page-company-access .page-company-access-section02,
.page-company-access .page-company-access-section03,*/
.page-company-access .page-company-access-section04,
.page-company-access .page-company-access-section05,
.page-company-access .page-company-access-section06,
.page-company-access .page-company-access-section07,
.page-company-access .page-company-access-section08 {
  margin-top: 40px;
}

/*2021--------------------*/
.page-company-access table {
  width: 100%;
  border: 1px solid #d8d8d8;
}
.page-company-access table tr:not(:first-child) {
  border-top: 1px solid #d8d8d8;
}
.page-company-access table th,
.page-company-access table td {
  display: block;
  padding: 10px;
}
.page-company-access table th {
  background: #f4f4f4;
  color: #656565;
  /*2021---font-size: 1.2rem;*/
  /*2021---*/font-weight: normal;
  text-align: left;
}
.page-company-access table .page-company-access-table-inside-style th {
  background: #e6e6e6;
}
.page-company-access .page-company-access-section01 table {
  margin-top: 20px;
}
/*2021---
.page-company-access .page-company-access-section01 table tr:nth-child(4) td span {
  display: block;
}*/
.page-company-access .page-company-access-section02,
.page-company-access .page-company-access-section03 {
  margin-top: 40px;
}


/*2021-----
.page-company-access .page-company-access-section02 table th {
  border-bottom: 1px solid #d8d8d8;
}*/
@media screen and (min-width: 768px), print {
  .page-company-access table {
    border: none;
  }
  .page-company-access table tr {
    display: flex;
  }
  .page-company-access table th,
  .page-company-access table td {
    padding: 15px;
  }
  .page-company-access table th {
    display: flex;
    align-items: center;
    width: 29%;
  }
  .page-company-access table td {
    flex: 1;
/*    2021----font-size: 1.4rem;*/
  }
  .page-company-access table .page-company-access-table-inside-style th {
    padding: 0;
    border-left: 10px solid #f4f4f4;
  }
  .page-company-access table .page-company-access-table-inside-style th span {
    display: flex;
    align-items: center;
    padding-left: 10px;
    width: 100%;
    height: 100%;
    border-top: 1px solid #d8d8d8;
  }
  .page-company-access table .page-company-access-table-inside-style td {
    border-top: 1px solid #d8d8d8;
  }
  .page-company-access .page-company-access-table01 {
    border-top: 1px solid #d8d8d8;
    border-bottom: 1px solid #d8d8d8;
  }
  .page-company-access .page-company-access-table02 {
    border-top: 1px solid #d8d8d8;
    border-bottom: 1px solid #d8d8d8;
  }
/*  2021----
	.page-company-access .page-company-access-section01 table tr:not(:first-child) {
    border-top: none;
  }
  .page-company-access .page-company-access-section01 h3 + p {
    font-size: 1.6rem;
  }*/
  .page-company-access .page-company-access-section01 .page-company-access-table02 {
    margin-top: 0;
  }
  .page-company-access .page-company-access-section02 table th {
    border-bottom: none;
  }
}





/* recruit-index */
.recruit-index-visual {
  position: relative;
}
.recruit-index-visual-scroll {
  position: absolute;
  left: 50%;
  bottom: 5px;
  z-index: 2;
  display: block;
  width: 35px;
  height: 20px;
  transform: translateX(-50%);
}
.recruit-index-visual-scroll span {
  position: absolute;
  left: 50%;
  bottom: 0;
  display: inline-block;
  width: 35px;
  height: 20px;
  background: url(../images/index/icon_visual-scroll_01.png) 0 0 no-repeat;
  background-size: 35px 20px;
  transform: translateX(-50%);
}
.recruit-index-contents {
  margin-bottom: 40px;
  padding-top: 30px;
}
.recruit-index-contents-item:not(:first-child) {
  margin-top: 15px;
}
.recruit-index-contents-item a {
  display: block;
  height: 100%;
  background-color: #f4f4f4;
  text-decoration: none;
}
.recruit-index-contents-item img {
  width: 100%;
}
.recruit-index-contents-item-text {
  position: relative;
  padding: 10px 35px 10px 10px;
}
.recruit-index-contents-item-text::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 10px;
  width: 8px;
  height: 17px;
  background: url(../images/common/icon_arrow-right-blue_01.png) 0 0 no-repeat;
  background-size: 6px 12px;
  transform: translateY(-50%);
}
.recruit-index-contents-item-text-title {
  font-size: 1.5rem;
  color: #1b365d;
}
.recruit-index-contents-item-text p {
  font-size: 1.2rem;
  color: #1b365d;
}
.recruit-index-contents-item-entry {
  background-color: #f4f4f4;
}
.recruit-index-contents-item-entry .recruit-index-contents-item-text {
  padding: 10px;
}
.recruit-index-contents-item-entry .recruit-index-contents-item-text::after {
  content: none;
}
.recruit-index-contents-item-text-button {
  margin-top: 10px;
}
.recruit-index-contents-item-text-button a {
  background-color: #fff;
}
.recruit-index-contents-entry {
  margin:  40px 0 0;
  text-align: center;
}
.recruit-index-contents-entry-title {
  font-size: 1.4rem;
  color: #1b365d;
}
.recruit-index-contents-entry-image {
  margin-top: 10px;
}
@media screen and (min-width: 768px), print {
  .recruit-index-visual-scroll {
    bottom: 15px;
    width: 40px;
    height: 24px;
    transition: .2s ease-in-out;
  }
  .recruit-index-visual-scroll:hover {
    opacity: .5;
  }
  .recruit-index-visual-scroll span {
    bottom: -5px;
    width: 46px;
    height: 24px;
    background-size: 46px 24px;
  }
  .recruit-index-contents {
    margin-bottom: 60px;
    padding-top: 50px;
  }
  .recruit-index-contents-list {
    display: flex;
    flex-wrap: wrap;
    margin: -15px -10px 0;
  }
  .recruit-index-contents-item {
    width: calc(33.3333% - 20px);
    margin: 15px 10px 0;
  }
  .recruit-index-contents-item-entry .recruit-index-contents-item-text {
    padding-bottom: 15px;
  }
  .recruit-index-contents-item-text {
    line-height: 1.8;
    transition: opacity .2s ease-in-out;
  }
  .recruit-index-contents-item a:hover .recruit-index-contents-item-text {
    opacity: 0.5;
  }
  .recruit-index-contents-item-text::after {
    top: 58px;
  }
  .recruit-index-contents-item-text-title {
    font-size: 1.4rem;
  }
  .recruit-index-contents-item-text-button a {
    padding: 11px 20px;
    font-size: 1.2rem;
  }
  .recruit-index-contents-entry {
    display: flex;
    align-items: center;
    margin: 15px 10px;
  }
  .recruit-index-contents-entry-title {
    margin-right: 20px;
  }
  .recruit-index-contents-entry-image {
    margin-top: 0;
  }
}

/* teamfuji1 */
.recruit-teamfuji1-section01 .c-heading02 {
  margin-top: 15px;
}
.recruit-teamfuji1-section01-image {
  text-align: center;
}
.recruit-teamfuji1-section01-image .lg-image {
  display: none;
}
.recruit-teamfuji1-section01-list {
  margin-top: 20px;
}
.recruit-teamfuji1-section01-item {
  margin-top: 10px;
  padding: 15px;
  background-color: #f4f4f4;
}
.recruit-teamfuji1-section01-item-title {
  margin-bottom: 15px;
  font-size: 1.6rem;
  font-weight: 700;
}
.recruit-teamfuji1-section01-item-subtitle {
  margin-top: 10px;
  font-size: 1.4rem;
  font-weight: 700;
}
.recruit-teamfuji1-section01-item p {
  font-size: 1.2rem;
}
@media screen and (min-width: 768px), print {
  .page-recruit-teamfuji1 {
    padding-bottom: 100px;
  }
  .recruit-teamfuji1-section01 .c-heading02 {
    margin-top: 25px;
  }
  .recruit-teamfuji1-section01-image .lg-image {
    display: block;
  }
  .recruit-teamfuji1-section01-image .sm-image {
    display: none;
  }
  .recruit-teamfuji1-section01-list {
    margin-top: 40px;
  }
  .recruit-teamfuji1-section01-item {
    margin-top: 20px;
    padding: 10px 15px;
  }
  .recruit-teamfuji1-section01-item p {
    font-size: 1.4rem;
  }
}

/* teamfuji2 */
.recruit-teamfuji2-section01 .c-heading02 {
  margin-top: 15px;
}
.recruit-teamfuji2-section01-nav ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  margin: 0 -1px;
}
.recruit-teamfuji2-section01-nav li {
  width: calc(25% - 2px);
  margin: 0 1px;
}
.recruit-teamfuji2-section01-nav li:nth-child(n + 5) {
  margin-top: 11px;
}
.recruit-teamfuji2-section01-nav li a {
  display: block;
  line-height: 1;
}
.recruit-teamfuji2-section01-nav li span {
  position: relative;
  display: block;
  padding: 3px 0;
  background: #1b365d;
  text-align: center;
  font-size: 1.1rem;
  color: #fff;
}
.recruit-teamfuji2-section01-member {
  max-width: 690px;
  margin: 40px auto 0;
}
.recruit-teamfuji2-section01-member-visual {
  text-align: center;
}
.recruit-teamfuji2-section01-member-visual .lg-image {
  display: none;
}
.recruit-teamfuji2-section01-member-qa {
  margin-top: 20px;
}
.recruit-teamfuji2-section01-member-qa-box {
  margin-top: 15px;
}
.recruit-teamfuji2-section01-member-qa-question {
  margin-bottom: 5px;
}
.recruit-teamfuji2-section01-member-qa-question span.txt-pink {
	font-size: 16px;
	color: #fff;
	background: #af272f;
	padding: 3px 10px;
}
.recruit-teamfuji2-section01-member-qa-question span.txt-blue {
	font-size: 16px;
	color: #fff;
	background: #007096;
	padding: 3px 10px;
}
.recruit-teamfuji2-section01-member-qa-box p {
  font-size: 1.2rem;
}
.recruit-teamfuji2-section01-member-qa-box-image {
  max-width: 90%;
  margin: 20px auto 0;
  text-align: center;
}
@media screen and (min-width: 375px), print {
  .recruit-teamfuji2-section01-nav li span::after {
    content: '';
    position: absolute;
    right: 4px;
    top: calc(50% - 2px);
    width: 9px;
    height: 4px;
    background: url(../images/common/icon_arrow-bottom-white_02.png) no-repeat;
    background-size: contain;
  }
}
@media screen and (min-width: 768px), print {
  .page-recruit-teamfuji2 {
    padding-bottom: 100px;
  }
  .recruit-teamfuji2-section01 .c-heading02 {
    margin-top: 25px;
  }
  .recruit-teamfuji2-section01-nav li:nth-child(n + 5) {
    margin-top: 2px;
  }
  .recruit-teamfuji2-section01-nav li span {
    padding: 6px 0;
    font-size: 1.4rem;
  }
  .recruit-teamfuji2-section01-nav li span::after {
     right: 10px;
     top: calc(50% - 3px);
     width: 15px;
     height: 7px;
   }
  .recruit-teamfuji2-section01-member-visual .lg-image {
    display: inline;
  }
  .recruit-teamfuji2-section01-member-visual .sm-image {
    display: none;
  }
  .recruit-teamfuji2-section01-member-qa-box p {
    font-size: 1.4rem;
  }
  .recruit-teamfuji2-section01-member-qa-box.column {
    display: flex;
  }
  .recruit-teamfuji2-section01-member-qa-box-text {
    flex: 1;
  }
  .recruit-teamfuji2-section01-member-qa-box-image {
    width: 45.65%;
    max-width: 315px;
    margin: 0 0 0 30px;
  }
}


/* teamfuji3 */
.recruit-teamfuji3-section01 .c-heading02 {
  margin-top: 15px;
}
.recruit-teamfuji3-section01-nav {
  margin-top: 30px;
}
.recruit-teamfuji3-section01-nav ul {
  list-style: none;
  display: flex;
  margin: 0 -1px;
}
.recruit-teamfuji3-section01-nav li {
  width: calc(33.3333% - 2px);
  margin: 0 1px;
  line-height: 1.2;
  font-weight: 700;
  font-size: 1.1rem;
}
.recruit-teamfuji3-section01-nav li a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 7px 0;
  background-color: #d8d8d8;
  text-decoration: none;
  text-align: center;
  color: #656565;
  transition: all .2s ease-in-out;
}
.recruit-teamfuji3-section01-nav li a:hover,
.recruit-teamfuji3-section01-nav li a.is-active {
  background-color: #f4f4f4;
  color: #000;
}
.recruit-teamfuji3-section01-content:not(#tab-01) {
  display: none;
}
.recruit-teamfuji3-section01-content {
  margin-top: 15px;
}
.recruit-teamfuji3-section01-content-title {
  font-size: 1.2rem;
}
.recruit-teamfuji3-section01-content-balloon-item {
  display: flex;
  margin-top: 10px;
}
.recruit-teamfuji3-section01-content-balloon-item-image {
  width: 33.623%;
  max-width: 58px;
}
.recruit-teamfuji3-section01-content-balloon-item:nth-child(odd) .recruit-teamfuji3-section01-content-balloon-item-image {
  margin-right: 8px;
}
.recruit-teamfuji3-section01-content-balloon-item:nth-child(even) .recruit-teamfuji3-section01-content-balloon-item-image {
  order: 2;
  margin-left: 8px;
}
.recruit-teamfuji3-section01-content-balloon-item-text {
  flex: 1;
  position: relative;
  padding: 10px 12px;
  border: 1px solid #41a5d4;
  border-radius: 6px;
}
.recruit-teamfuji3-section01-content-balloon-item-text::before,
.recruit-teamfuji3-section01-content-balloon-item-text::after {
  content: '';
  position: absolute;
  top: 32px;
  width: 0;
  height: 0;
  border-style: solid;
}
.recruit-teamfuji3-section01-content-balloon-item:nth-child(odd) .recruit-teamfuji3-section01-content-balloon-item-text::before {
  left: -6px;
  border-width: 3px 6px 3px 0;
  border-color: transparent #41a5d4 transparent transparent;
}
.recruit-teamfuji3-section01-content-balloon-item:nth-child(odd) .recruit-teamfuji3-section01-content-balloon-item-text::after {
  left: -4px;
  border-width: 3px 6px 3px 0;
  border-color: transparent #fff transparent transparent;
}
.recruit-teamfuji3-section01-content-balloon-item:nth-child(even) .recruit-teamfuji3-section01-content-balloon-item-text::before {
  right: -6px;
  border-width: 3px 0 3px 6px;
  border-color: transparent transparent transparent #41a5d4;
}
.recruit-teamfuji3-section01-content-balloon-item:nth-child(even) .recruit-teamfuji3-section01-content-balloon-item-text::after {
  right: -4px;
  border-width: 3px 0 3px 6px;
  border-color: transparent transparent transparent #fff;
}
.recruit-teamfuji3-section01-content-balloon-item:nth-child(even) .recruit-teamfuji3-section01-content-balloon-item-text {
  order: 1;
}
.recruit-teamfuji3-section01-content-balloon-item-text dt,
.recruit-teamfuji3-section01-content-balloon-item-text dd {
  font-size: 1.2rem;
  color: #1b365d;
}
.recruit-teamfuji3-section01-content-balloon-item-text dt {
  font-weight: 700;
}
.recruit-teamfuji3-section01-content-balloon-item-text dd {
  margin-top: 2px;
}
.recruit-teamfuji3-section01-content-conclusion {
  max-width: 690px;
  margin: 20px auto 0;
}
.recruit-teamfuji3-section01-content-conclusion br {
  display: none;
}
.recruit-teamfuji3-section01-content-conclusion p {
  font-weight: 700;
}
@media screen and (min-width: 375px), print {
  .recruit-teamfuji3-section01-nav li a::before,
  .recruit-teamfuji3-section01-nav li a::after {
    content: '';
    position: absolute;
    right: 4px;
    top: calc(50% - 2px);
    width: 9px;
    height: 4px;
    background-repeat: no-repeat;
    background-size: contain;
    transition: opacity .2s ease-in-out;
  }
  .recruit-teamfuji3-section01-nav li a::before {
    opacity: 1;
    background-image: url(../images/common/icon_arrow-bottom-gray_02.png);
  }
  .recruit-teamfuji3-section01-nav li a::after {
    opacity: 0;
    background-image: url(../images/common/icon_arrow-bottom-black_02.png);
  }
  .recruit-teamfuji3-section01-nav li a:hover::before,
  .recruit-teamfuji3-section01-nav li a.is-active::before {
    opacity: 0;
  }
  .recruit-teamfuji3-section01-nav li a:hover::after,
  .recruit-teamfuji3-section01-nav li a.is-active::after {
    opacity: 1;
  }
}
@media screen and (min-width: 768px), print {
  .page-recruit-teamfuji3 {
    padding-bottom: 100px;
  }
  .recruit-teamfuji3-section01 .c-heading02 {
    margin-top: 25px;
  }
  .recruit-teamfuji3-section01-visual {
    width: 71.82%;
    max-width: 535px;
    margin: -10px auto 0;
  }
  .recruit-teamfuji3-section01-nav {
    margin-top: 40px;
  }
  .recruit-teamfuji3-section01-nav li {
    font-size: 1.4rem;
  }
  .recruit-teamfuji3-section01-nav li a {
    padding: 9px 0;
  }
  .recruit-teamfuji3-section01-nav li a::before,
  .recruit-teamfuji3-section01-nav li a::after {
    right: 10px;
    top: calc(50% - 3px);
    width: 15px;
    height: 7px;
  }
  .recruit-teamfuji3-section01-nav li:not(:nth-child(2)) br {
    display: none;
  }
  .recruit-teamfuji3-section01-content {
    margin-top: 20px;
  }
  .recruit-teamfuji3-section01-content-title {
    font-size: 1.6rem;
  }
  .recruit-teamfuji3-section01-content-balloon-item {
    max-width: 690px;
    margin: 20px auto 0;
  }
  .recruit-teamfuji3-section01-content-balloon-item-image {
    width: 16.812%;
    max-width: 116px;
  }
  .recruit-teamfuji3-section01-content-balloon-item:nth-child(odd) .recruit-teamfuji3-section01-content-balloon-item-image {
    margin-right: 26px;
  }
  .recruit-teamfuji3-section01-content-balloon-item:nth-child(even) .recruit-teamfuji3-section01-content-balloon-item-image {
    margin-left: 26px;
  }
  .recruit-teamfuji3-section01-content-balloon-item-text {
    padding: 15px;
    border-width: 2px;
    border-radius: 12px;
  }
  .recruit-teamfuji3-section01-content-balloon-item-text::before,
  .recruit-teamfuji3-section01-content-balloon-item-text::after {
    top: 65px;
  }
  .recruit-teamfuji3-section01-content-balloon-item:nth-child(odd) .recruit-teamfuji3-section01-content-balloon-item-text::before {
    left: -12px;
    border-width: 6px 12px 6px 0;
  }
  .recruit-teamfuji3-section01-content-balloon-item:nth-child(odd) .recruit-teamfuji3-section01-content-balloon-item-text::after {
    left: -8px;
    border-width: 6px 12px 6px 0;
  }
  .recruit-teamfuji3-section01-content-balloon-item:nth-child(even) .recruit-teamfuji3-section01-content-balloon-item-text::before {
    right: -12px;
    border-width: 6px 0 6px 12px;
  }
  .recruit-teamfuji3-section01-content-balloon-item:nth-child(even) .recruit-teamfuji3-section01-content-balloon-item-text::after {
    right: -8px;
    border-width: 6px 0 6px 12px;
  }
  .recruit-teamfuji3-section01-content-balloon-item-text dt {
    font-size: 1.6rem;
  }
  .recruit-teamfuji3-section01-content-balloon-item-text dd {
    margin-top: 5px;
    font-size: 1.4rem;
  }
  .recruit-teamfuji3-section01-content-conclusion {
    margin-top: 30px;
  }
  .recruit-teamfuji3-section01-content-conclusion br {
    display: inline;
  }
}

/* range */
.recruit-range-section01 {
  margin-top: 15px;
}
.recruit-range-section01 p,
.recruit-range-section02 p {
  font-size: 1.2rem;
}
.recruit-range-section01 p.recruit-range-section01-note {
  margin-top: 10px;
  font-size: 1.0rem;
}
.recruit-range-section01-image {
  margin: 15px auto 0;
  max-width: 450px;
}
.recruit-range-section02 {
  margin-top: 40px;
}
.recruit-range-section02-image {
  margin: 15px auto 0;
  max-width: 580px;
}
@media screen and (min-width: 768px), print {
  .page-recruit-range {
    padding-bottom: 100px;
  }
  .recruit-range-section01 {
    margin-top: 25px;
  }
  .recruit-range-section01 p,
  .recruit-range-section02 p {
    font-size: 1.4rem;
  }
  .recruit-range-section01 p.recruit-range-section01-note {
    margin-top: 20px;
    font-size: 1.2rem;
  }
}

/* slogan */
.recruit-slogan-section01 .c-heading02 {
  margin-top: 15px;
}
.recruit-slogan-section01-image {
	text-align: center;
}
.recruit-slogan-section01-image:not(:first-of-type) {
  margin-top: 20px;
}
.recruit-slogan-section01-image img {
	margin: 0 auto;
}
.recruit-slogan-section01-button {
  max-width: 490px;
  margin: 35px auto 0;
}
@media screen and (min-width: 768px), print {
  .page-recruit-slogan {
    padding-bottom: 100px;
  }
  .recruit-slogan-section01 .c-heading02 {
    margin-top: 25px;
  }
  .recruit-slogan-section01-image {
    margin-top: 20px;
  }
  .recruit-slogan-section01-button {
    margin-top: 45px;
  }
}

/* program */
.recruit-program-section {
  margin-top: 15px;
}
.recruit-program-section + .recruit-program-section {
  margin-top: 30px;
}
.recruit-program-section2-image {
	margin-top: 20px;
	overflow: scroll;
}
.recruit-program-section2-image img {
	max-width: 800px;
	width: 800px ;
}
.recruit-program-popup {
	width: 280px;
	border: 1px solid #1B365D;
	margin: 20px auto 0;
}
.recruit-program-popup a {
	text-decoration: none;
	background: #fff;
	text-align: center;
	font-size: 1.2rem;
	padding: 14px 0;
	width:100%;
	height: 100%;
	display: block;
	position: relative;
}
.recruit-program-popup a::after {
	width: 1em;
	height: 1em;
	position: absolute;
	content: '+';
	font-size: 20px;
	right: 10px;
	top: 50%;
	margin-top: -0.8em;
}
.recruit-program-popup a:hover {
	opacity: 0.7;
}
.recruit-program-section-image .lg-image {
  display: none;
}
.recruit-program-section-aside {
	margin-top: 20px;
	padding:15px;
	background: #f4f4f4;
}
	.recruit-program-section-aside .recruit-program-section-aside-image {
	float: none;
	width: 100%;
}
.recruit-program-section-aside .recruit-program-section-aside-txt {
	width: 100%;
	float: none;
}
.recruit-program-section-aside::after {
content: "";
  display: block;
	clear:both;
}
@media screen and (min-width: 768px), print {
	.recruit-program-popup.sm-hide {
		display: block;
	}
  .page-recruit-program {
    padding-bottom: 100px;
  }
  .recruit-program-section {
    margin-top: 25px;
  }
  .recruit-program-section + .recruit-program-section {
    margin-top: 40px;
  }
  .recruit-program-section-image .lg-image {
    display: inline;
  }
  .recruit-program-section-image .sm-image {
    display: none;
  }
	.recruit-program-section-aside .recruit-program-section-aside-image {
	float: left;
	width: 30%;
}
.recruit-program-section-aside .recruit-program-section-aside-txt {
	width: 68%;
	float: right;
}
.recruit-program-section2-image img {
	max-width: 100%;
	width: 100%;
}


}

/* fresh */
.recruit-fresh-guideline {
  margin-top: 15px;
}
.recruit-fresh-table01 {
  width: 100%;
  table-layout: fixed;
  border-bottom: 1px solid #d8d8d8;
  background: linear-gradient(90deg, #f4f4f4 0%, #f4f4f4 35%, #fff 35%, #fff 100%);
  text-align: left;
}
.recruit-fresh-table01 th {
  display: block;
  width: 35%;
  padding: 15px 10px;
  background: #f4f4f4;
  border-top: 1px solid #d8d8d8;
  color: #656565;
  font-size: 1.2rem;
  font-weight: 700;
  float: left;
  clear: left;
  vertical-align: top;
}
.recruit-fresh-table01 td {
  display: block;
  width: 65%;
  padding: 13px 10px;
  border-top: 1px solid #d8d8d8;
  font-size: 1.4rem;
  float: left;
  vertical-align: top;
}
.recruit-fresh-section {
  margin-top: 20px;
}
.recruit-fresh-table02-wrapper {
  padding-bottom: 10px;
  overflow: auto;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}
.recruit-fresh-table02 {
  width: 100%;
  min-width: 745px;
  table-layout: fixed;
  border-bottom: 1px solid #d8d8d8;
  text-align: left;
}
.recruit-fresh-table02 thead th {
  padding: 15px 10px;
  background: #f4f4f4;
  border-top: 1px solid #d8d8d8;
  color: #656565;
  font-size: 1.2rem;
  font-weight: 700;
  text-align: center;
}
.recruit-fresh-table02 thead th:nth-child(1) {
  width: 22%;
}
.recruit-fresh-table02 thead th:nth-child(2) {
  width: 41%;
}
.recruit-fresh-table02 thead th:nth-child(3) {
  width: 37%;
}
.recruit-fresh-table02 tbody th {
  padding: 15px 10px;
  background: #f4f4f4;
  border-top: 1px solid #d8d8d8;
  color: #656565;
  font-size: 1.2rem;
  font-weight: 700;
  white-space: normal;
}
.recruit-fresh-table02 tbody .graduate {
  border-left: 1px solid #d8d8d8;
}
.recruit-fresh-table02 tbody td {
  padding: 13px 10px;
  border-top: 1px solid #d8d8d8;
  font-size: 1.4rem;
  white-space: normal;
}
.recruit-fresh-table02 tbody td:nth-of-type(2) {
  border-left: 1px solid #d8d8d8;
}
.recruit-fresh-section03 p {
  font-size: 1.2rem;
}
.recruit-fresh-section03-image {
  margin-top: 10px;
}
.recruit-fresh-section03-image .lg-image {
  display: none;
}
.recruit-fresh-section03 h4 {
  margin-top: 20px;
  font-size: 1.4rem;
  font-weight: 700;
}
.recruit-fresh-table03-wrapper {
  margin-top: 10px;
}
.recruit-fresh-table03 {
  width: 100%;
  table-layout: fixed;
  border-bottom: 1px solid #d8d8d8;
  text-align: left;
}
.recruit-fresh-table03:nth-child(1) {
  border-bottom: none;
}
.recruit-fresh-table03 th {
  width: 35%;
  padding: 15px 10px;
  background: #f4f4f4;
  border-top: 1px solid #d8d8d8;
  color: #656565;
  font-size: 1.2rem;
  font-weight: 700;
  vertical-align: top;
}
.recruit-fresh-table03 td {
  padding: 13px 10px;
  border-top: 1px solid #d8d8d8;
  font-size: 1.4rem;
  vertical-align: top;
}
.recruit-fresh-section03-entry {
  margin-top: 30px;
  padding: 25px 25px 30px;
  background-color: #f4f4f4;
  text-align: center;
}
.recruit-fresh-section03-entry h4 {
  margin: 0;
}
.recruit-fresh-section03-entry-image {
  max-width: 195px;
  margin: 10px auto 0;
}

@media screen and (min-width: 768px), print {
  .page-recruit-fresh {
    padding-bottom: 100px;
  }
  .recruit-fresh-guideline .c-heading02 {
    margin-top: 25px;
  }
  .recruit-fresh-table01 {
    background: transparent;
  }
  .recruit-fresh-table01 tbody th {
    display: table-cell;
    width: 150px;
    float: none;
  }
  .recruit-fresh-table01 tbody td {
    display: table-cell;
    padding: 13px 25px;
    float: none;
  }
  .recruit-fresh-table02 {
    min-width: initial;
  }
  .recruit-fresh-table02 tbody .graduate {
    padding-right: 5px;
  }
  .recruit-fresh-table02 tbody td {
    padding: 13px 25px;
  }
  .recruit-fresh-section {
    margin-top: 25px;
  }
  .recruit-fresh-section03 p {
    font-size: 1.4rem;
  }
  .recruit-fresh-section03-image .lg-image {
    display: block;
  }
  .recruit-fresh-section03-image .sm-image {
    display: none;
  }
  .recruit-fresh-section03 h4 {
    margin-top: 25px;
    font-size: 1.6rem;
  }
  .recruit-fresh-table03-wrapper {
    display: flex;
  }
  .recruit-fresh-table03 {
    width: 50%;
  }
  .recruit-fresh-table03:nth-child(1) {
    border-bottom: 1px solid #d8d8d8;
  }
  .recruit-fresh-table03 tbody th {
    width: 150px;
  }
  .recruit-fresh-table03 tbody td {
    padding: 13px 25px;
  }
  .recruit-fresh-section03-entry {
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin-top: 40px;
    padding: 30px 108px 30px 134px;
  }
  .recruit-fresh-section03-entry h4 {
    margin: 0;
  }
  .recruit-fresh-section03-entry-image {
    margin: 0;
  }
}

/* carrier */
.recruit-carrier-section01 .c-heading02 {
  margin-top: 15px;
}
.recruit-carrier-section01-table {
  width: 100%;
  border-bottom: 1px solid #d8d8d8;
}
.recruit-carrier-section01-table tbody th {
  width: 125px;
  padding: 15px 10px;
  background: #f4f4f4;
  border-top: 1px solid #d8d8d8;
  color: #656565;
  font-size: 1.2rem;
  font-weight: 700;
}
.recruit-carrier-section01-table tbody td {
  padding: 13px 10px;
  border-top: 1px solid #d8d8d8;
  font-size: 1.4rem;
  vertical-align: middle;
}
@media screen and (min-width: 768px), print {
  .recruit-carrier-section01 .c-heading02 {
    margin-top: 25px;
  }
  .recruit-carrier-section01-table tbody th {
    width: 150px;
    padding: 15px 10px;
  }
  .recruit-carrier-section01-table tbody td {
    padding: 13px 25px;
  }
}

/* faq */
.recruit-faq-section01-title {
  font-size: 1.6rem;
  font-weight: 700;
}
.recruit-faq-section01 p + p {
  margin-top: 1em;
}
.recruit-faq-section01 dl {
  margin-top: 15px;
}
.recruit-faq-section01 dt {
  position: relative;
  margin-top: 20px;
  padding: 12px 50px 12px 15px;
  background: #f4f4f4;
  font-size: 1.2rem;
  font-weight: 700;
}
.recruit-faq-section01 dd {
  padding: 15px 15px 0 12px;
  font-size: 1.2rem;
}
.recruit-faq-section01-column-image {
  width: 84.66%;
  margin: 12px auto 0;
}
@media screen and (min-width: 768px), print {
  .page-recruit-faq {
    padding-bottom: 100px;
  }
  .recruit-faq-section01-title {
    font-size: 2.0rem;
  }
  .recruit-faq-section01 dl {
    margin-top: 25px;
  }
  .recruit-faq-section01 dt {
    margin-top: 20px;
    padding: 15px 50px 15px 15px;
    font-size: 1.6rem;
  }
  .recruit-faq-section01 dd {
    padding: 15px 20px 5px 20px;
    font-size: 1.6rem;
  }
  .recruit-faq-section01-column {
    display: flex;
  }
  .recruit-faq-section01-column-text {
    flex: 1;
  }
  .recruit-faq-section01-column-image {
    width: 49.93%;
    max-width: 352px;
    margin: 0 -20px 0 35px;
  }
}

.about-section01-text {
    max-width: 640px;
    margin: 30px auto 0;
	padding: 0 20px;
		margin-top: 30px;
    font-size: 1.2rem;
    color: #1b365d;
    line-height: 1.9;
}
.about-section01-text::after {
	content: "";
  display: block;
	clear:both;
}
.about-section01-movie {
	max-width: 640px;
	position: relative;
	padding-bottom: 56.666%;
	margin: 0 auto 15px;
}
.about-section01-movie iframe {
	width: 100%;
	height: 100%;
	position: absolute;
}

@media screen and (min-width: 1024px), print {
.about-section01-text {
    max-width: 1140px;
}
	.about-section01-lead {
		width: 58%;
		float: left;
	}
.about-section01-movie {
	width: 40%;
	padding-bottom: 22.666%;
	margin: 0 auto;
	float: right;
}
.about-section01-movie iframe {
	width: 100%;
	height: 100%;
}
}

/* chrome　画像ボケ対策 */	


img {
    image-rendering: -webkit-optimize-contrast;
}
}




