@charset "UTF-8";
/*----------------------------------------------------------------------------------------------------------
writing-mode mixin
    Usage:
        $orientation    v (vertical)
                        h (horizontal)
		$direction      rl (right to left)
						lr (left to right)
----------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------
writing-mode mixin
    Usage:
        $orientation    v (vertical)
                        h (horizontal)
		$direction      rl (right to left)
						lr (left to right)
----------------------------------------------------------------------------------------------------------*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
 margin: 0;
 padding: 0;
 border: 0;
 font-size: 100%;
 vertical-align: baseline;
}

html {
 line-height: 1;
}

ol,
ul {
 list-style: none;
}

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

caption,
th,
td {
 text-align: left;
 font-weight: normal;
 vertical-align: middle;
}

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

a img {
 border: none;
}

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

.mt0 {
 margin-top: 0px !important;
}

.mr0 {
 margin-right: 0px !important;
}

.mb0 {
 margin-bottom: 0px !important;
}

.mr0 {
 margin-left: 0px !important;
}

.pt0 {
 padding-top: 0px !important;
}

.pr0 {
 padding-right: 0px !important;
}

.pb0 {
 padding-bottom: 0px !important;
}

.pl0 {
 padding-left: 0px !important;
}

.mt5 {
 margin-top: 5px !important;
}

.mr5 {
 margin-right: 5px !important;
}

.mb5 {
 margin-bottom: 5px !important;
}

.mr5 {
 margin-left: 5px !important;
}

.pt5 {
 padding-top: 5px !important;
}

.pr5 {
 padding-right: 5px !important;
}

.pb5 {
 padding-bottom: 5px !important;
}

.pl5 {
 padding-left: 5px !important;
}

.mt10 {
 margin-top: 10px !important;
}

.mr10 {
 margin-right: 10px !important;
}

.mb10 {
 margin-bottom: 10px !important;
}

.mr10 {
 margin-left: 10px !important;
}

.pt10 {
 padding-top: 10px !important;
}

.pr10 {
 padding-right: 10px !important;
}

.pb10 {
 padding-bottom: 10px !important;
}

.pl10 {
 padding-left: 10px !important;
}

.mt15 {
 margin-top: 15px !important;
}

.mr15 {
 margin-right: 15px !important;
}

.mb15 {
 margin-bottom: 15px !important;
}

.mr15 {
 margin-left: 15px !important;
}

.pt15 {
 padding-top: 15px !important;
}

.pr15 {
 padding-right: 15px !important;
}

.pb15 {
 padding-bottom: 15px !important;
}

.pl15 {
 padding-left: 15px !important;
}

.mt20 {
 margin-top: 20px !important;
}

.mr20 {
 margin-right: 20px !important;
}

.mb20 {
 margin-bottom: 20px !important;
}

.mr20 {
 margin-left: 20px !important;
}

.pt20 {
 padding-top: 20px !important;
}

.pr20 {
 padding-right: 20px !important;
}

.pb20 {
 padding-bottom: 20px !important;
}

.pl20 {
 padding-left: 20px !important;
}

.mt25 {
 margin-top: 25px !important;
}

.mr25 {
 margin-right: 25px !important;
}

.mb25 {
 margin-bottom: 25px !important;
}

.mr25 {
 margin-left: 25px !important;
}

.pt25 {
 padding-top: 25px !important;
}

.pr25 {
 padding-right: 25px !important;
}

.pb25 {
 padding-bottom: 25px !important;
}

.pl25 {
 padding-left: 25px !important;
}

.mt30 {
 margin-top: 30px !important;
}

.mr30 {
 margin-right: 30px !important;
}

.mb30 {
 margin-bottom: 30px !important;
}

.mr30 {
 margin-left: 30px !important;
}

.pt30 {
 padding-top: 30px !important;
}

.pr30 {
 padding-right: 30px !important;
}

.pb30 {
 padding-bottom: 30px !important;
}

.pl30 {
 padding-left: 30px !important;
}

.mt35 {
 margin-top: 35px !important;
}

.mr35 {
 margin-right: 35px !important;
}

.mb35 {
 margin-bottom: 35px !important;
}

.mr35 {
 margin-left: 35px !important;
}

.pt35 {
 padding-top: 35px !important;
}

.pr35 {
 padding-right: 35px !important;
}

.pb35 {
 padding-bottom: 35px !important;
}

.pl35 {
 padding-left: 35px !important;
}

.mt40 {
 margin-top: 40px !important;
}

.mr40 {
 margin-right: 40px !important;
}

.mb40 {
 margin-bottom: 40px !important;
}

.mr40 {
 margin-left: 40px !important;
}

.pt40 {
 padding-top: 40px !important;
}

.pr40 {
 padding-right: 40px !important;
}

.pb40 {
 padding-bottom: 40px !important;
}

.pl40 {
 padding-left: 40px !important;
}

.mt45 {
 margin-top: 45px !important;
}

.mr45 {
 margin-right: 45px !important;
}

.mb45 {
 margin-bottom: 45px !important;
}

.mr45 {
 margin-left: 45px !important;
}

.pt45 {
 padding-top: 45px !important;
}

.pr45 {
 padding-right: 45px !important;
}

.pb45 {
 padding-bottom: 45px !important;
}

.pl45 {
 padding-left: 45px !important;
}

.mt50 {
 margin-top: 50px !important;
}

.mr50 {
 margin-right: 50px !important;
}

.mb50 {
 margin-bottom: 50px !important;
}

.mr50 {
 margin-left: 50px !important;
}

.pt50 {
 padding-top: 50px !important;
}

.pr50 {
 padding-right: 50px !important;
}

.pb50 {
 padding-bottom: 50px !important;
}

.pl50 {
 padding-left: 50px !important;
}

.mt55 {
 margin-top: 55px !important;
}

.mr55 {
 margin-right: 55px !important;
}

.mb55 {
 margin-bottom: 55px !important;
}

.mr55 {
 margin-left: 55px !important;
}

.pt55 {
 padding-top: 55px !important;
}

.pr55 {
 padding-right: 55px !important;
}

.pb55 {
 padding-bottom: 55px !important;
}

.pl55 {
 padding-left: 55px !important;
}

.mt60 {
 margin-top: 60px !important;
}

.mr60 {
 margin-right: 60px !important;
}

.mb60 {
 margin-bottom: 60px !important;
}

.mr60 {
 margin-left: 60px !important;
}

.pt60 {
 padding-top: 60px !important;
}

.pr60 {
 padding-right: 60px !important;
}

.pb60 {
 padding-bottom: 60px !important;
}

.pl60 {
 padding-left: 60px !important;
}

.mt65 {
 margin-top: 65px !important;
}

.mr65 {
 margin-right: 65px !important;
}

.mb65 {
 margin-bottom: 65px !important;
}

.mr65 {
 margin-left: 65px !important;
}

.pt65 {
 padding-top: 65px !important;
}

.pr65 {
 padding-right: 65px !important;
}

.pb65 {
 padding-bottom: 65px !important;
}

.pl65 {
 padding-left: 65px !important;
}

.mt70 {
 margin-top: 70px !important;
}

.mr70 {
 margin-right: 70px !important;
}

.mb70 {
 margin-bottom: 70px !important;
}

.mr70 {
 margin-left: 70px !important;
}

.pt70 {
 padding-top: 70px !important;
}

.pr70 {
 padding-right: 70px !important;
}

.pb70 {
 padding-bottom: 70px !important;
}

.pl70 {
 padding-left: 70px !important;
}

.mt75 {
 margin-top: 75px !important;
}

.mr75 {
 margin-right: 75px !important;
}

.mb75 {
 margin-bottom: 75px !important;
}

.mr75 {
 margin-left: 75px !important;
}

.pt75 {
 padding-top: 75px !important;
}

.pr75 {
 padding-right: 75px !important;
}

.pb75 {
 padding-bottom: 75px !important;
}

.pl75 {
 padding-left: 75px !important;
}

.mt80 {
 margin-top: 80px !important;
}

.mr80 {
 margin-right: 80px !important;
}

.mb80 {
 margin-bottom: 80px !important;
}

.mr80 {
 margin-left: 80px !important;
}

.pt80 {
 padding-top: 80px !important;
}

.pr80 {
 padding-right: 80px !important;
}

.pb80 {
 padding-bottom: 80px !important;
}

.pl80 {
 padding-left: 80px !important;
}

.mt85 {
 margin-top: 85px !important;
}

.mr85 {
 margin-right: 85px !important;
}

.mb85 {
 margin-bottom: 85px !important;
}

.mr85 {
 margin-left: 85px !important;
}

.pt85 {
 padding-top: 85px !important;
}

.pr85 {
 padding-right: 85px !important;
}

.pb85 {
 padding-bottom: 85px !important;
}

.pl85 {
 padding-left: 85px !important;
}

.mt90 {
 margin-top: 90px !important;
}

.mr90 {
 margin-right: 90px !important;
}

.mb90 {
 margin-bottom: 90px !important;
}

.mr90 {
 margin-left: 90px !important;
}

.pt90 {
 padding-top: 90px !important;
}

.pr90 {
 padding-right: 90px !important;
}

.pb90 {
 padding-bottom: 90px !important;
}

.pl90 {
 padding-left: 90px !important;
}

.mt95 {
 margin-top: 95px !important;
}

.mr95 {
 margin-right: 95px !important;
}

.mb95 {
 margin-bottom: 95px !important;
}

.mr95 {
 margin-left: 95px !important;
}

.pt95 {
 padding-top: 95px !important;
}

.pr95 {
 padding-right: 95px !important;
}

.pb95 {
 padding-bottom: 95px !important;
}

.pl95 {
 padding-left: 95px !important;
}

.mt100 {
 margin-top: 100px !important;
}

.mr100 {
 margin-right: 100px !important;
}

.mb100 {
 margin-bottom: 100px !important;
}

.mr100 {
 margin-left: 100px !important;
}

.pt100 {
 padding-top: 100px !important;
}

.pr100 {
 padding-right: 100px !important;
}

.pb100 {
 padding-bottom: 100px !important;
}

.pl100 {
 padding-left: 100px !important;
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
 padding: 15px 15px;
 display: inline-block;
 cursor: pointer;
 transition-property: opacity, filter;
 transition-duration: 0.15s;
 transition-timing-function: linear;
 font: inherit;
 color: inherit;
 text-transform: none;
 background-color: transparent;
 border: 0;
 margin: 0;
 overflow: visible;
}
.hamburger:hover {
 opacity: 0.7;
}

.hamburger-box {
 width: 40px;
 height: 24px;
 display: inline-block;
 position: relative;
}

.hamburger-inner {
 display: block;
 top: 50%;
 margin-top: -2px;
}
.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
 width: 40px;
 height: 4px;
 background-color: #000;
 border-radius: 4px;
 position: absolute;
 transition-property: transform;
 transition-duration: 0.15s;
 transition-timing-function: ease;
}
.hamburger-inner::before,
.hamburger-inner::after {
 content: "";
 display: block;
}
.hamburger-inner::before {
 top: -10px;
}
.hamburger-inner::after {
 bottom: -10px;
}

/*
   * 3DX
   */
.hamburger--3dx .hamburger-box {
 perspective: 80px;
}

.hamburger--3dx .hamburger-inner {
 transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1),
  background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx .hamburger-inner::before,
.hamburger--3dx .hamburger-inner::after {
 transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx.is-active .hamburger-inner {
 background-color: transparent;
 transform: rotateY(180deg);
}
.hamburger--3dx.is-active .hamburger-inner::before {
 transform: translate3d(0, 10px, 0) rotate(45deg);
}
.hamburger--3dx.is-active .hamburger-inner::after {
 transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DX Reverse
   */
.hamburger--3dx-r .hamburger-box {
 perspective: 80px;
}

.hamburger--3dx-r .hamburger-inner {
 transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1),
  background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx-r .hamburger-inner::before,
.hamburger--3dx-r .hamburger-inner::after {
 transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx-r.is-active .hamburger-inner {
 background-color: transparent;
 transform: rotateY(-180deg);
}
.hamburger--3dx-r.is-active .hamburger-inner::before {
 transform: translate3d(0, 10px, 0) rotate(45deg);
}
.hamburger--3dx-r.is-active .hamburger-inner::after {
 transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DY
   */
.hamburger--3dy .hamburger-box {
 perspective: 80px;
}

.hamburger--3dy .hamburger-inner {
 transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1),
  background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy .hamburger-inner::before,
.hamburger--3dy .hamburger-inner::after {
 transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy.is-active .hamburger-inner {
 background-color: transparent;
 transform: rotateX(-180deg);
}
.hamburger--3dy.is-active .hamburger-inner::before {
 transform: translate3d(0, 10px, 0) rotate(45deg);
}
.hamburger--3dy.is-active .hamburger-inner::after {
 transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DY Reverse
   */
.hamburger--3dy-r .hamburger-box {
 perspective: 80px;
}

.hamburger--3dy-r .hamburger-inner {
 transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1),
  background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy-r .hamburger-inner::before,
.hamburger--3dy-r .hamburger-inner::after {
 transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy-r.is-active .hamburger-inner {
 background-color: transparent;
 transform: rotateX(180deg);
}
.hamburger--3dy-r.is-active .hamburger-inner::before {
 transform: translate3d(0, 10px, 0) rotate(45deg);
}
.hamburger--3dy-r.is-active .hamburger-inner::after {
 transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * Arrow
   */
.hamburger--arrow.is-active .hamburger-inner::before {
 transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

.hamburger--arrow.is-active .hamburger-inner::after {
 transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

/*
   * Arrow Right
   */
.hamburger--arrow-r.is-active .hamburger-inner::before {
 transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

.hamburger--arrow-r.is-active .hamburger-inner::after {
 transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

/*
   * Arrow Alt
   */
.hamburger--arrowalt .hamburger-inner::before {
 transition: top 0.1s 0.1s ease,
  transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt .hamburger-inner::after {
 transition: bottom 0.1s 0.1s ease,
  transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt.is-active .hamburger-inner::before {
 top: 0;
 transform: translate3d(-8px, -10px, 0) rotate(-45deg) scale(0.7, 1);
 transition: top 0.1s ease,
  transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

.hamburger--arrowalt.is-active .hamburger-inner::after {
 bottom: 0;
 transform: translate3d(-8px, 10px, 0) rotate(45deg) scale(0.7, 1);
 transition: bottom 0.1s ease,
  transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

/*
   * Arrow Alt Right
   */
.hamburger--arrowalt-r .hamburger-inner::before {
 transition: top 0.1s 0.1s ease,
  transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt-r .hamburger-inner::after {
 transition: bottom 0.1s 0.1s ease,
  transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt-r.is-active .hamburger-inner::before {
 top: 0;
 transform: translate3d(8px, -10px, 0) rotate(45deg) scale(0.7, 1);
 transition: top 0.1s ease,
  transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

.hamburger--arrowalt-r.is-active .hamburger-inner::after {
 bottom: 0;
 transform: translate3d(8px, 10px, 0) rotate(-45deg) scale(0.7, 1);
 transition: bottom 0.1s ease,
  transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

/*
   * Boring
   */
.hamburger--boring .hamburger-inner,
.hamburger--boring .hamburger-inner::before,
.hamburger--boring .hamburger-inner::after {
 transition-property: none;
}

.hamburger--boring.is-active .hamburger-inner {
 transform: rotate(45deg);
}
.hamburger--boring.is-active .hamburger-inner::before {
 top: 0;
 opacity: 0;
}
.hamburger--boring.is-active .hamburger-inner::after {
 bottom: 0;
 transform: rotate(-90deg);
}

/*
   * Collapse
   */
.hamburger--collapse .hamburger-inner {
 top: auto;
 bottom: 0;
 transition-duration: 0.13s;
 transition-delay: 0.13s;
 transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse .hamburger-inner::after {
 top: -20px;
 transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
  opacity 0.1s linear;
}
.hamburger--collapse .hamburger-inner::before {
 transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
  transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse.is-active .hamburger-inner {
 transform: translate3d(0, -10px, 0) rotate(-45deg);
 transition-delay: 0.22s;
 transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--collapse.is-active .hamburger-inner::after {
 top: 0;
 opacity: 0;
 transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
  opacity 0.1s 0.22s linear;
}
.hamburger--collapse.is-active .hamburger-inner::before {
 top: 0;
 transform: rotate(-90deg);
 transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
  transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Collapse Reverse
   */
.hamburger--collapse-r .hamburger-inner {
 top: auto;
 bottom: 0;
 transition-duration: 0.13s;
 transition-delay: 0.13s;
 transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse-r .hamburger-inner::after {
 top: -20px;
 transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
  opacity 0.1s linear;
}
.hamburger--collapse-r .hamburger-inner::before {
 transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
  transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse-r.is-active .hamburger-inner {
 transform: translate3d(0, -10px, 0) rotate(45deg);
 transition-delay: 0.22s;
 transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--collapse-r.is-active .hamburger-inner::after {
 top: 0;
 opacity: 0;
 transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
  opacity 0.1s 0.22s linear;
}
.hamburger--collapse-r.is-active .hamburger-inner::before {
 top: 0;
 transform: rotate(90deg);
 transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
  transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Elastic
   */
.hamburger--elastic .hamburger-inner {
 top: 2px;
 transition-duration: 0.275s;
 transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic .hamburger-inner::before {
 top: 10px;
 transition: opacity 0.125s 0.275s ease;
}
.hamburger--elastic .hamburger-inner::after {
 top: 20px;
 transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic.is-active .hamburger-inner {
 transform: translate3d(0, 10px, 0) rotate(135deg);
 transition-delay: 0.075s;
}
.hamburger--elastic.is-active .hamburger-inner::before {
 transition-delay: 0s;
 opacity: 0;
}
.hamburger--elastic.is-active .hamburger-inner::after {
 transform: translate3d(0, -20px, 0) rotate(-270deg);
 transition-delay: 0.075s;
}

/*
   * Elastic Reverse
   */
.hamburger--elastic-r .hamburger-inner {
 top: 2px;
 transition-duration: 0.275s;
 transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic-r .hamburger-inner::before {
 top: 10px;
 transition: opacity 0.125s 0.275s ease;
}
.hamburger--elastic-r .hamburger-inner::after {
 top: 20px;
 transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic-r.is-active .hamburger-inner {
 transform: translate3d(0, 10px, 0) rotate(-135deg);
 transition-delay: 0.075s;
}
.hamburger--elastic-r.is-active .hamburger-inner::before {
 transition-delay: 0s;
 opacity: 0;
}
.hamburger--elastic-r.is-active .hamburger-inner::after {
 transform: translate3d(0, -20px, 0) rotate(270deg);
 transition-delay: 0.075s;
}

/*
   * Emphatic
   */
.hamburger--emphatic {
 overflow: hidden;
}
.hamburger--emphatic .hamburger-inner {
 transition: background-color 0.125s 0.175s ease-in;
}
.hamburger--emphatic .hamburger-inner::before {
 left: 0;
 transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335),
  top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
}
.hamburger--emphatic .hamburger-inner::after {
 top: 10px;
 right: 0;
 transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335),
  top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
}
.hamburger--emphatic.is-active .hamburger-inner {
 transition-delay: 0s;
 transition-timing-function: ease-out;
 background-color: transparent;
}
.hamburger--emphatic.is-active .hamburger-inner::before {
 left: -80px;
 top: -80px;
 transform: translate3d(80px, 80px, 0) rotate(45deg);
 transition: left 0.125s ease-out, top 0.05s 0.125s linear,
  transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.hamburger--emphatic.is-active .hamburger-inner::after {
 right: -80px;
 top: -80px;
 transform: translate3d(-80px, 80px, 0) rotate(-45deg);
 transition: right 0.125s ease-out, top 0.05s 0.125s linear,
  transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/*
   * Emphatic Reverse
   */
.hamburger--emphatic-r {
 overflow: hidden;
}
.hamburger--emphatic-r .hamburger-inner {
 transition: background-color 0.125s 0.175s ease-in;
}
.hamburger--emphatic-r .hamburger-inner::before {
 left: 0;
 transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335),
  top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
}
.hamburger--emphatic-r .hamburger-inner::after {
 top: 10px;
 right: 0;
 transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335),
  top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
}
.hamburger--emphatic-r.is-active .hamburger-inner {
 transition-delay: 0s;
 transition-timing-function: ease-out;
 background-color: transparent;
}
.hamburger--emphatic-r.is-active .hamburger-inner::before {
 left: -80px;
 top: 80px;
 transform: translate3d(80px, -80px, 0) rotate(-45deg);
 transition: left 0.125s ease-out, top 0.05s 0.125s linear,
  transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.hamburger--emphatic-r.is-active .hamburger-inner::after {
 right: -80px;
 top: 80px;
 transform: translate3d(-80px, -80px, 0) rotate(45deg);
 transition: right 0.125s ease-out, top 0.05s 0.125s linear,
  transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/*
   * Slider
   */
.hamburger--slider .hamburger-inner {
 top: 2px;
}
.hamburger--slider .hamburger-inner::before {
 top: 10px;
 transition-property: transform, opacity;
 transition-timing-function: ease;
 transition-duration: 0.15s;
}
.hamburger--slider .hamburger-inner::after {
 top: 20px;
}

.hamburger--slider.is-active .hamburger-inner {
 transform: translate3d(0, 10px, 0) rotate(45deg);
}
.hamburger--slider.is-active .hamburger-inner::before {
 transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0);
 opacity: 0;
}
.hamburger--slider.is-active .hamburger-inner::after {
 transform: translate3d(0, -20px, 0) rotate(-90deg);
}

/*
   * Slider Reverse
   */
.hamburger--slider-r .hamburger-inner {
 top: 2px;
}
.hamburger--slider-r .hamburger-inner::before {
 top: 10px;
 transition-property: transform, opacity;
 transition-timing-function: ease;
 transition-duration: 0.15s;
}
.hamburger--slider-r .hamburger-inner::after {
 top: 20px;
}

.hamburger--slider-r.is-active .hamburger-inner {
 transform: translate3d(0, 10px, 0) rotate(-45deg);
}
.hamburger--slider-r.is-active .hamburger-inner::before {
 transform: rotate(45deg) translate3d(5.71429px, -6px, 0);
 opacity: 0;
}
.hamburger--slider-r.is-active .hamburger-inner::after {
 transform: translate3d(0, -20px, 0) rotate(90deg);
}

/*
   * Spring
   */
.hamburger--spring .hamburger-inner {
 top: 2px;
 transition: background-color 0s 0.13s linear;
}
.hamburger--spring .hamburger-inner::before {
 top: 10px;
 transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
  transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring .hamburger-inner::after {
 top: 20px;
 transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
  transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring.is-active .hamburger-inner {
 transition-delay: 0.22s;
 background-color: transparent;
}
.hamburger--spring.is-active .hamburger-inner::before {
 top: 0;
 transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
  transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
 transform: translate3d(0, 10px, 0) rotate(45deg);
}
.hamburger--spring.is-active .hamburger-inner::after {
 top: 0;
 transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
  transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
 transform: translate3d(0, 10px, 0) rotate(-45deg);
}

/*
   * Spring Reverse
   */
.hamburger--spring-r .hamburger-inner {
 top: auto;
 bottom: 0;
 transition-duration: 0.13s;
 transition-delay: 0s;
 transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring-r .hamburger-inner::after {
 top: -20px;
 transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
  opacity 0s linear;
}
.hamburger--spring-r .hamburger-inner::before {
 transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
  transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring-r.is-active .hamburger-inner {
 transform: translate3d(0, -10px, 0) rotate(-45deg);
 transition-delay: 0.22s;
 transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spring-r.is-active .hamburger-inner::after {
 top: 0;
 opacity: 0;
 transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
  opacity 0s 0.22s linear;
}
.hamburger--spring-r.is-active .hamburger-inner::before {
 top: 0;
 transform: rotate(90deg);
 transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
  transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Stand
   */
.hamburger--stand .hamburger-inner {
 transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19),
  background-color 0s 0.075s linear;
}
.hamburger--stand .hamburger-inner::before {
 transition: top 0.075s 0.075s ease-in,
  transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand .hamburger-inner::after {
 transition: bottom 0.075s 0.075s ease-in,
  transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand.is-active .hamburger-inner {
 transform: rotate(90deg);
 background-color: transparent;
 transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1),
  background-color 0s 0.15s linear;
}
.hamburger--stand.is-active .hamburger-inner::before {
 top: 0;
 transform: rotate(-45deg);
 transition: top 0.075s 0.1s ease-out,
  transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--stand.is-active .hamburger-inner::after {
 bottom: 0;
 transform: rotate(45deg);
 transition: bottom 0.075s 0.1s ease-out,
  transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Stand Reverse
   */
.hamburger--stand-r .hamburger-inner {
 transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19),
  background-color 0s 0.075s linear;
}
.hamburger--stand-r .hamburger-inner::before {
 transition: top 0.075s 0.075s ease-in,
  transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand-r .hamburger-inner::after {
 transition: bottom 0.075s 0.075s ease-in,
  transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand-r.is-active .hamburger-inner {
 transform: rotate(-90deg);
 background-color: transparent;
 transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1),
  background-color 0s 0.15s linear;
}
.hamburger--stand-r.is-active .hamburger-inner::before {
 top: 0;
 transform: rotate(-45deg);
 transition: top 0.075s 0.1s ease-out,
  transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--stand-r.is-active .hamburger-inner::after {
 bottom: 0;
 transform: rotate(45deg);
 transition: bottom 0.075s 0.1s ease-out,
  transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Spin
   */
.hamburger--spin .hamburger-inner {
 transition-duration: 0.22s;
 transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin .hamburger-inner::before {
 transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}
.hamburger--spin .hamburger-inner::after {
 transition: bottom 0.1s 0.25s ease-in,
  transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin.is-active .hamburger-inner {
 transform: rotate(225deg);
 transition-delay: 0.12s;
 transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spin.is-active .hamburger-inner::before {
 top: 0;
 opacity: 0;
 transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}
.hamburger--spin.is-active .hamburger-inner::after {
 bottom: 0;
 transform: rotate(-90deg);
 transition: bottom 0.1s ease-out,
  transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Spin Reverse
   */
.hamburger--spin-r .hamburger-inner {
 transition-duration: 0.22s;
 transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin-r .hamburger-inner::before {
 transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}
.hamburger--spin-r .hamburger-inner::after {
 transition: bottom 0.1s 0.25s ease-in,
  transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin-r.is-active .hamburger-inner {
 transform: rotate(-225deg);
 transition-delay: 0.12s;
 transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spin-r.is-active .hamburger-inner::before {
 top: 0;
 opacity: 0;
 transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}
.hamburger--spin-r.is-active .hamburger-inner::after {
 bottom: 0;
 transform: rotate(90deg);
 transition: bottom 0.1s ease-out,
  transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Squeeze
   */
.hamburger--squeeze .hamburger-inner {
 transition-duration: 0.075s;
 transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--squeeze .hamburger-inner::before {
 transition: top 0.075s 0.12s ease, opacity 0.075s ease;
}
.hamburger--squeeze .hamburger-inner::after {
 transition: bottom 0.075s 0.12s ease,
  transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--squeeze.is-active .hamburger-inner {
 transform: rotate(45deg);
 transition-delay: 0.12s;
 transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--squeeze.is-active .hamburger-inner::before {
 top: 0;
 opacity: 0;
 transition: top 0.075s ease, opacity 0.075s 0.12s ease;
}
.hamburger--squeeze.is-active .hamburger-inner::after {
 bottom: 0;
 transform: rotate(-90deg);
 transition: bottom 0.075s ease,
  transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Vortex
   */
.hamburger--vortex .hamburger-inner {
 transition-duration: 0.2s;
 transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex .hamburger-inner::before,
.hamburger--vortex .hamburger-inner::after {
 transition-duration: 0s;
 transition-delay: 0.1s;
 transition-timing-function: linear;
}
.hamburger--vortex .hamburger-inner::before {
 transition-property: top, opacity;
}
.hamburger--vortex .hamburger-inner::after {
 transition-property: bottom, transform;
}

.hamburger--vortex.is-active .hamburger-inner {
 transform: rotate(765deg);
 transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex.is-active .hamburger-inner::before,
.hamburger--vortex.is-active .hamburger-inner::after {
 transition-delay: 0s;
}
.hamburger--vortex.is-active .hamburger-inner::before {
 top: 0;
 opacity: 0;
}
.hamburger--vortex.is-active .hamburger-inner::after {
 bottom: 0;
 transform: rotate(90deg);
}

/*
   * Vortex Reverse
   */
.hamburger--vortex-r .hamburger-inner {
 transition-duration: 0.2s;
 transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex-r .hamburger-inner::before,
.hamburger--vortex-r .hamburger-inner::after {
 transition-duration: 0s;
 transition-delay: 0.1s;
 transition-timing-function: linear;
}
.hamburger--vortex-r .hamburger-inner::before {
 transition-property: top, opacity;
}
.hamburger--vortex-r .hamburger-inner::after {
 transition-property: bottom, transform;
}

.hamburger--vortex-r.is-active .hamburger-inner {
 transform: rotate(-765deg);
 transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex-r.is-active .hamburger-inner::before,
.hamburger--vortex-r.is-active .hamburger-inner::after {
 transition-delay: 0s;
}
.hamburger--vortex-r.is-active .hamburger-inner::before {
 top: 0;
 opacity: 0;
}
.hamburger--vortex-r.is-active .hamburger-inner::after {
 bottom: 0;
 transform: rotate(-90deg);
}

figure.snip1382 {
 font-family: "Source Sans Pro", Arial, sans-serif;
 position: relative;
 float: left;
 overflow: hidden;
 margin: 10px 1%;
 min-width: 230px;
 max-width: 315px;
 max-height: 220px;
 width: 100%;
 color: #ffffff;
 text-align: center;
 font-size: 16px;
}

figure.snip1382 * {
 -webkit-box-sizing: border-box;
 box-sizing: border-box;
 -webkit-transition: all 0.35s ease;
 transition: all 0.35s ease;
}

figure.snip1382 img {
 max-width: 100%;
}

figure.snip1382:after,
figure.snip1382:before,
figure.snip1382 figcaption:after,
figure.snip1382 figcaption:before {
 background: #0a0a0a;
 height: 25%;
 position: absolute;
 content: "";
 opacity: 0;
 -webkit-transition: all 0.35s steps(4);
 transition: all 0.35s steps(4);
 z-index: 1;
 left: 50%;
 right: 50%;
}

figure.snip1382:before {
 top: 0;
 -webkit-transition-delay: 0;
 transition-delay: 0;
}

figure.snip1382:after {
 top: 25%;
 -webkit-transition-delay: 0.1s;
 transition-delay: 0.1s;
}

figure.snip1382 figcaption:before {
 top: 50%;
 -webkit-transition-delay: 0.2s;
 transition-delay: 0.2s;
 z-index: -1;
}

figure.snip1382 figcaption:after {
 top: 75%;
 -webkit-transition-delay: 0.3s;
 transition-delay: 0.3s;
 z-index: -1;
}

figure.snip1382 figcaption {
 position: absolute;
 top: 0;
 bottom: 0;
 left: 0;
 right: 0;
 z-index: 2;
 padding: 30px;
}

figure.snip1382 h2,
figure.snip1382 p,
figure.snip1382 .icons {
 margin: 0;
 width: 100%;
 opacity: 0;
}

figure.snip1382 h2 {
 font-weight: 900;
 text-transform: uppercase;
}

figure.snip1382 p {
 font-weight: 300;
}

figure.snip1382 .icons {
 position: absolute;
 bottom: 30px;
 left: 0;
 width: 100%;
}

figure.snip1382 i {
 padding: 0px 10px;
 display: inline-block;
 font-size: 24px;
 color: #ffffff;
 text-align: center;
 opacity: 0.8;
 text-decoration: none;
}

figure.snip1382 i:hover {
 opacity: 1;
}

figure.snip1382:hover:after,
figure.snip1382.hover:after,
figure.snip1382:hover:before,
figure.snip1382.hover:before,
figure.snip1382:hover figcaption:after,
figure.snip1382.hover figcaption:after,
figure.snip1382:hover figcaption:before,
figure.snip1382.hover figcaption:before {
 left: 0;
 right: 0;
 opacity: 0.8;
}

figure.snip1382:hover figcaption h2,
figure.snip1382.hover figcaption h2,
figure.snip1382:hover figcaption p,
figure.snip1382.hover figcaption p,
figure.snip1382:hover figcaption .icons,
figure.snip1382.hover figcaption .icons {
 -webkit-transition-delay: 0.25s;
 transition-delay: 0.25s;
}

figure.snip1382:hover figcaption h2,
figure.snip1382.hover figcaption h2,
figure.snip1382:hover figcaption .icons,
figure.snip1382.hover figcaption .icons {
 opacity: 1;
}

figure.snip1382:hover figcaption p,
figure.snip1382.hover figcaption p {
 opacity: 0.7;
}

/* argument */
/* site style */
/* [ opacity ]
-------------------------------------------------*/
/* [ display style ]
-------------------------------------------------*/
/* [ background-image ]
-------------------------------------------------*/
/* [ writing-mode ]
-------------------------------------------------*/
/* [ illustrator & photoshop letter spacing ]
-------------------------------------------------*/
/* [ easy breakpoint ]
-------------------------------------------------*/
/* [ easy transform ]
-------------------------------------------------*/
/* [ writing-mode ]
-------------------------------------------------*/
@media only screen and (max-width: 767px) {
 .pc {
  display: none !important;
 }
}

@media only screen and (min-width: 768px) {
 .sp {
  display: none !important;
 }
}

#myvideo video {
 width: 100% !important;
 height: 100% !important;
}

html {
 font-size: 62.5%;
 font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
  "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
 color: #4d4d4d;
 height: 100%;
}

* {
 font-size: 14px;
 font-size: 1.4rem;
 box-sizing: border-box;
}

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

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

.inner {
 max-width: 1040px;
 width: 100%;
 margin: 0 auto;
 padding: 0 20px;
}
.inner2 {
 max-width: 1280px;
 width: 100%;
 margin: 0 auto;
 padding: 0;
}

.redarrow,
body.index section.newmodels .product .content .button:after,
body.index section.newmodels .item .content .btn:after {
 content: "";
 display: inline-block;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 4px 0 4px 10px;
 border-color: transparent transparent transparent #e60012;
}

.subpage .wrap {
 padding: 140px 0 0;
}
@media only screen and (min-width: 768px) {
 .subpage .wrap {
  overflow: hidden;
 }
}
@media only screen and (max-width: 767px) {
 .subpage .wrap {
  padding: 88px 0 0;
 }
}

.subpage.nosubmenu .wrap {
 padding: 100px 0 0;
}
@media only screen and (max-width: 767px) {
 .subpage.nosubmenu .wrap {
  padding: 49px 0 0;
 }
}

.inview {
 transition: opacity 0.7s 0.4s;
 opacity: 0;
}
.inview.fadein {
 opacity: 1;
}
.inview.showStep {
 opacity: 1;
}
.inview.showStep li {
 opacity: 0;
}
.inview.showStep li:nth-child(1) {
 transition: opacity 0.4s 0.4s;
}
.inview.showStep li:nth-child(2) {
 transition: opacity 0.4s 0.8s;
}
.inview.showStep li:nth-child(3) {
 transition: opacity 0.4s 1.2s;
}
.inview.showStep li:nth-child(4) {
 transition: opacity 0.4s 1.6s;
}
.inview.showStep li:nth-child(5) {
 transition: opacity 0.4s 2s;
}
.inview.showStep li:nth-child(6) {
 transition: opacity 0.4s 2.4s;
}
.inview.showStep.visible li {
 opacity: 1;
}

.isFixed {
 height: 100%;
 overflow: hidden;
}

.scroller {
 -ms-overflow-y: hidden !important;
}

.banner {
 background: #f0f0f0;
 padding: 0 0 130px 0;
}
@media only screen and (max-width: 767px) {
 .banner {
  padding: 0 20px 60px 20px;
 }
}
.banner.banner-bg-white {
 background: #fff;
 padding: 0 0 100px 0;
}
@media only screen and (max-width: 767px) {
 .banner.banner-bg-white {
  padding: 70px 20px 60px 20px;
 }
}
@media only screen and (max-width: 767px) {
 .banner.banner-bg-white-sp {
  background: #fff;
 }
}
.banner__item {
 height: 370px;
}
@media only screen and (max-width: 767px) {
 .banner__item {
  height: 335px;
 }
}
@media only screen and (max-width: 320px) {
 .banner__item {
  height: 300px;
 }
}
.banner__item:nth-child(n + 2) {
 margin-top: 30px;
}
.banner__item .inner {
 height: 100%;
 width: 100%;
}
.banner__item .inner a {
 display: inline-block;
 position: relative;
 top: 70px;
}
@media only screen and (min-width: 768px) {
 .banner__item .inner a {
  transition: opacity 0.3s;
 }
 .banner__item .inner a:hover {
  opacity: 0.6;
 }
}
@media only screen and (max-width: 767px) {
 .banner__item .inner a {
  left: 50%;
  top: 20px;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  text-align: center;
 }
}
.banner__item .inner a span {
 display: block;
}
.banner__item .inner a .en {
 font-size: 58px;
 font-size: 5.8rem;
 font-family: "Open Sans", sans-serif;
 font-weight: 300;
}
@media only screen and (max-width: 767px) {
 .banner__item .inner a .en {
  font-size: 38px;
  font-size: 3.8rem;
 }
}
@media only screen and (max-width: 350px) {
 .banner__item .inner a .en {
  font-size: 33px;
  font-size: 3.3rem;
 }
}
.banner__item .inner a .en--grey {
 color: #4d4d4d;
}
.banner__item .inner a .ja {
 font-size: 26px;
 font-size: 2.6rem;
 font-weight: bold;
 padding: 14px 0 0;
}
@media only screen and (max-width: 767px) {
 .banner__item .inner a .ja {
  font-size: 25px;
  font-size: 2.5rem;
 }
}
.banner__item .inner a .more {
 font-size: 16px;
 font-size: 1.6rem;
 margin: 114px 0 0;
 display: inline-block;
}
@media only screen and (max-width: 767px) {
 .banner__item .inner a .more {
  text-align: center;
  font-size: 19px;
  font-size: 1.9rem;
  margin: 20px 0 0;
 }
}
.banner__item--01 {
 background: #fff url(../images/common/bg-banner01.png) center right 15% / auto
  100% no-repeat;
}
@media only screen and (max-width: 800px) {
 .banner__item--01 {
  background-position: right -20px center;
 }
}
@media only screen and (max-width: 767px) {
 .banner__item--01 {
  background: #fff url(../images/common/bg-banner01-sp.png) center bottom/50%
   auto no-repeat;
 }
}
@media only screen and (max-width: 410px) {
 .banner__item--01 {
  background-size: 88% auto;
 }
}
.banner__item--02 {
 background: url(../images/common/bg-banner02.png) center/cover no-repeat;
}
@media only screen and (max-width: 767px) {
 .banner__item--02 {
  background: url(../images/common/bg-banner02-sp.png) center bottom/cover
   no-repeat;
 }
}
@media only screen and (max-width: 767px) {
 .banner__item--02 .inner a {
  text-align: left;
  left: 0;
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0);
 }
}
.banner__item--02 .inner a .en,
.banner__item--02 .inner a .ja {
 color: #fff;
}
.banner__item--02 .inner a .more {
 margin: 50px 0 0;
}
@media only screen and (max-width: 767px) {
 .banner__item--02 .inner a .more {
  margin: 20px 0 0;
 }
}
.banner__item--03 {
 max-width: 1280px;
 margin: 0 auto;
 background: #fff url(../images/common/bg-banner03.png) center/cover no-repeat;
}
@media only screen and (max-width: 1016px) {
 .banner__item--03 {
  background-position: right 64% center;
 }
}
@media (min-width: 410px) and (max-width: 768px) {
 .banner__item--03 {
  position: relative;
  height: auto;
  padding-top: 90%;
 }
 .banner__item--03 .inner a {
  position: absolute;
  width: 100%;
  top: 5%;
  left: 50%;
  transform: translateX(-50%);
 }
}
@media (min-width: 510px) and (max-width: 768px) {
 .banner__item--03 {
  padding-top: 83%;
 }
}
@media only screen and (max-width: 767px) {
 .banner__item--03 {
  background: #fff url(../images/common/bg-banner03-sp.png) center bottom/100%
   auto no-repeat;
 }
}
.banner__item--04 {
 max-width: 1280px;
 margin: 0 auto;
 background: #fff url(../images/common/bg-banner04b.png) center/cover no-repeat;
}
@media only screen and (max-width: 1016px) {
 .banner__item--04 {
  background-position: right 64% center;
 }
}
@media (min-width: 410px) and (max-width: 768px) {
 .banner__item--04 {
  position: relative;
  height: auto;
  padding-top: 90%;
 }
 .banner__item--04 .inner a {
  position: absolute;
  width: 100%;
  top: 5%;
  left: 50%;
  transform: translateX(-50%);
 }
}
@media (min-width: 510px) and (max-width: 768px) {
 .banner__item--04 {
  padding-top: 83%;
 }
}
@media only screen and (max-width: 767px) {
 .banner__item--04 {
  background: #fff url(../images/common/bg-banner04-spb.png) center bottom/100%
   auto no-repeat;
 }
}
.banner__item--05 {
 margin: 0 auto;
 background: #fff url(../images/common/bg-banner05.png) center/1280px auto
  no-repeat;
}
@media (min-width: 410px) and (max-width: 768px) {
 .banner__item--05 {
  position: relative;
  height: auto;
  padding-top: 90%;
 }
 .banner__item--05 .inner a {
  position: absolute;
  width: 100%;
  top: 5%;
  left: 50%;
  transform: translateX(-50%);
 }
}
@media (min-width: 510px) and (max-width: 768px) {
 .banner__item--05 {
  padding-top: 83%;
 }
}
@media only screen and (max-width: 767px) {
 .banner__item--05 {
  background: #fff url(../images/common/bg-banner05-sp.png) center bottom/100%
   auto no-repeat;
 }
}
.banner__item--06 {
 margin: 0 auto;
 background: #fff url(../images/common/bg-banner06.png) center/1280px auto
  no-repeat;
}
@media (min-width: 410px) and (max-width: 768px) {
 .banner__item--06 {
  position: relative;
  height: auto;
  padding-top: 90%;
 }
 .banner__item--06 .inner a {
  position: absolute;
  width: 100%;
  top: 5%;
  left: 50%;
  transform: translateX(-50%);
 }
}
@media (min-width: 510px) and (max-width: 768px) {
 .banner__item--06 {
  padding-top: 83%;
 }
}
@media only screen and (max-width: 767px) {
 .banner__item--06 {
  background: #fff url(../images/common/bg-banner06-sp.png) center bottom/100%
   auto no-repeat;
 }
}

@media only screen and (max-width: 767px) {
 .pc {
  display: none !important;
 }
}

@media only screen and (min-width: 768px) {
 .sp {
  display: none !important;
 }
}

#myvideo video {
 width: 100% !important;
 height: 100% !important;
}

html {
 font-size: 62.5%;
 font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
  "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
 color: #4d4d4d;
 height: 100%;
}

* {
 font-size: 14px;
 font-size: 1.4rem;
 box-sizing: border-box;
}

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

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

.inner {
 max-width: 1040px;
 width: 100%;
 margin: 0 auto;
 padding: 0 20px;
}
.inner2 {
 max-width: 1280px;
 width: 100%;
 margin: 0 auto;
 padding: 0;
}

.redarrow,
body.index section.newmodels .product .content .button:after,
body.index section.newmodels .item .content .btn:after {
 content: "";
 display: inline-block;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 4px 0 4px 10px;
 border-color: transparent transparent transparent #e60012;
}

.subpage .wrap {
 padding: 140px 0 0;
}
@media only screen and (min-width: 768px) {
 .subpage .wrap {
  overflow: hidden;
 }
}
@media only screen and (max-width: 767px) {
 .subpage .wrap {
  padding: 88px 0 0;
 }
}

.subpage.nosubmenu .wrap {
 padding: 100px 0 0;
}
@media only screen and (max-width: 767px) {
 .subpage.nosubmenu .wrap {
  padding: 49px 0 0;
 }
}

.inview {
 transition: opacity 0.7s 0.4s;
 opacity: 0;
}
.inview.fadein {
 opacity: 1;
}
.inview.showStep {
 opacity: 1;
}
.inview.showStep li {
 opacity: 0;
}
.inview.showStep li:nth-child(1) {
 transition: opacity 0.4s 0.4s;
}
.inview.showStep li:nth-child(2) {
 transition: opacity 0.4s 0.8s;
}
.inview.showStep li:nth-child(3) {
 transition: opacity 0.4s 1.2s;
}
.inview.showStep li:nth-child(4) {
 transition: opacity 0.4s 1.6s;
}
.inview.showStep li:nth-child(5) {
 transition: opacity 0.4s 2s;
}
.inview.showStep li:nth-child(6) {
 transition: opacity 0.4s 2.4s;
}
.inview.showStep.visible li {
 opacity: 1;
}

.isFixed {
 height: 100%;
 overflow: hidden;
}

.scroller {
 -ms-overflow-y: hidden !important;
}

.common-new-item {
 background: #f0f0f0;
 padding: 64px 0 70px 0;
}
@media only screen and (max-width: 767px) {
 .common-new-item {
  padding: 24px 0 84px 0;
 }
}
.common-new-item .inner .title {
 font-size: 53px;
 font-size: 5.3rem;
 color: #e60012;
 font-family: "Open Sans", sans-serif;
 font-weight: 300;
}
@media only screen and (max-width: 767px) {
 .common-new-item .inner .title {
  font-size: 38px;
  font-size: 3.8rem;
  text-align: center;
 }
}
.common-new-item .inner .list__item {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
 margin: 30px 0 0;
}
@media only screen and (max-width: 767px) {
 .common-new-item .inner .list__item {
  margin: 34px 0 0;
 }
}
.common-new-item .inner .list__item:first-child {
 margin: 40px 0 0;
}
@media only screen and (max-width: 767px) {
 .common-new-item .inner .list__item:first-child {
  margin: 30px 0 0;
 }
}
.common-new-item .inner .list__item__image {
 width: 21%;
 height: auto;
}
@media only screen and (max-width: 767px) {
 .common-new-item .inner .list__item__image {
  width: 100%;
 }
}
.common-new-item .inner .list__item__image img {
 display: block;
 border: 2px solid #e1e1e1;
}
@media only screen and (max-width: 767px) {
 .common-new-item .inner .list__item__image img {
  border-width: 1px;
  width: 100%;
 }
}
.common-new-item .inner .list__item__detail {
 width: 75%;
}
@media only screen and (max-width: 767px) {
 .common-new-item .inner .list__item__detail {
  width: 100%;
 }
}
.common-new-item .inner .list__item__detail--title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 line-height: 1.5;
}
@media only screen and (max-width: 767px) {
 .common-new-item .inner .list__item__detail--title {
  text-align: center;
  padding: 20px 0 0;
 }
}
.common-new-item .inner .list__item__detail--text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 padding: 12px 0 0;
}
.common-new-item .inner .list__item__detail--text _:lang(x)::-ms-backdrop,
.common-new-item .inner .list__item__detail--text {
 padding: 15px 0 9px;
}
.common-new-item .inner .list__item__detail .grBtn {
 text-align: right;
 margin-top: 25px;
}
@media only screen and (max-width: 767px) {
 .common-new-item .inner .list__item__detail .grBtn {
  text-align: center;
 }
}
.common-new-item .inner .list__item__detail .grBtn .btn {
 display: inline-block;
 vertical-align: top;
 height: 30px;
 margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
 .common-new-item .inner .list__item__detail .grBtn .btn {
  margin-top: 0;
 }
 .common-new-item .inner .list__item__detail .grBtn .btn:not(:last-child) {
  margin-bottom: 35px;
 }
}
.common-new-item .inner .list__item__detail .grBtn .btn--02 {
 background: transparent;
 border: 1px solid #e60012;
 color: #e60012;
 margin-left: 20px;
 padding: 7px 5px;
}
@media only screen and (max-width: 767px) {
 .common-new-item .inner .list__item__detail .grBtn .btn--02 {
  margin-left: 0;
 }
}
.common-new-item .inner .list__item__detail .grBtn .btn--02:hover {
 background: #e60012;
 color: #fff;
}
@media only screen and (max-width: 767px) {
 .common-new-item .inner .list__item__detail .btn {
  margin: 20px auto 0;
 }
}
.common-new-item.modify {
 padding-bottom: 0;
 display: inline-block;
 width: 100%;
}
.common-new-item.modify .inner .title {
 margin-bottom: 37px;
}
@media only screen and (max-width: 767px) {
 .common-new-item.modify .inner .title {
  font-size: 40px;
  font-size: 4rem;
  text-align: center;
 }
}
.common-new-item.modify .modify__ttl {
 line-height: 1.75;
 font-size: 26px;
 font-size: 2.6rem;
 font-weight: bold;
 margin-top: 37px;
}
@media only screen and (max-width: 767px) {
 .common-new-item.modify .modify__ttl {
  font-size: 25px;
  font-size: 2.5rem;
  text-align: center;
 }
}
.common-new-item.modify .list {
 font-size: 0;
 letter-spacing: 0;
 display: flex;
 flex: none;
 flex-wrap: wrap;
 justify-content: flex-start;
 margin-top: 19px;
}
.common-new-item.modify .list:not(:last-child) {
 margin-bottom: 9px;
}
@media only screen and (max-width: 767px) {
 .common-new-item.modify .list:last-child {
  margin-bottom: 40px;
 }
}
.common-new-item.modify .list__item {
 width: calc(33.33% - 13.33px);
}
@media only screen and (min-width: 768px) {
 .common-new-item.modify .list__item {
  margin: 0 0 65px 0;
 }
}
@media only screen and (max-width: 767px) {
 .common-new-item.modify .list__item {
  width: calc(50% - 7.5px);
  display: block;
 }
 .common-new-item.modify .list__item:nth-child(2n + 1) {
  margin: 0 15px 40px 0;
 }
 .common-new-item.modify .list__item:not(:nth-child(2n + 1)) {
  margin: 0 0 40px 0;
 }
}
@media only screen and (min-width: 768px) {
 .common-new-item.modify .list__item:first-child {
  margin: 0 0 65px 0;
 }
}
@media only screen and (min-width: 768px) {
 .common-new-item.modify .list__item:not(:nth-child(3n)) {
  margin-right: 20px;
 }
}
.common-new-item.modify .list__item__image {
 width: 39%;
 overflow: hidden;
 position: relative;
}
@media only screen and (max-width: 767px) {
 .common-new-item.modify .list__item__image {
  width: 100%;
 }
}
.common-new-item.modify .list__item__image .img {
 position: relative;
 background-color: #cecece;
}
.common-new-item.modify .list__item__image .img:before {
 display: block;
 content: " ";
 width: 100%;
 padding-top: 140.8%;
}
.common-new-item.modify .list__item__image .img > .content {
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
}
.common-new-item.modify .list__item__image img {
 border: none;
 width: 100%;
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
}
.common-new-item.modify .list__item__detail {
 width: 61%;
 padding-left: 14px;
}
@media only screen and (max-width: 767px) {
 .common-new-item.modify .list__item__detail {
  width: 100%;
  padding-left: 0;
 }
}
.common-new-item.modify .list__item__detail .grBtn {
 margin-top: 26px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
 .common-new-item.modify .list__item__detail .grBtn {
  margin-top: 15px;
 }
}
@media only screen and (max-width: 767px) {
 .common-new-item.modify .list__item__detail .grBtn {
  margin-top: 17px;
 }
}
.common-new-item.modify .list__item__detail .grBtn .btn--02 {
 margin-left: 0;
 margin-top: 22px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
 .common-new-item.modify .list__item__detail .grBtn .btn--02 {
  margin-top: 10px;
 }
}
@media only screen and (max-width: 767px) {
 .common-new-item.modify .list__item__detail .grBtn .btn--02 {
  margin-top: 17px;
 }
}
.common-new-item.modify .list__item__detail .grBtn .btn {
 width: 100%;
}
@media only screen and (max-width: 370px) {
 .common-new-item.modify .list__item__detail .grBtn .btn {
  font-size: 11px;
 }
}
@media only screen and (max-width: 767px) {
 .common-new-item.modify .list__item__detail .grBtn .btn:not(:last-child) {
  margin-bottom: 0;
 }
}
.common-new-item.modify .list__item__detail--title {
 font-size: 19px;
 font-size: 1.9rem;
 line-height: 1.75;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
 .common-new-item.modify .list__item__detail--title {
  font-size: 16px;
  font-size: 1.6rem;
 }
}
@media only screen and (max-width: 767px) {
 .common-new-item.modify .list__item__detail--title {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.375;
  padding-top: 9px;
 }
 .common-new-item.modify .list__item__detail--title br {
  display: none;
 }
}
.common-new-item.modify .list__item__des {
 width: 100%;
 font-size: 14px;
 font-size: 1.4rem;
 line-height: 1.75;
 padding-top: 15px;
}

body.company h1.title__subpage {
 margin-bottom: 70px;
}
@media only screen and (max-width: 767px) {
 body.company h1.title__subpage {
  margin-bottom: 35px;
 }
}

body.company main {
 padding-bottom: 120px;
}
@media only screen and (max-width: 767px) {
 body.company main {
  padding-bottom: 50px;
 }
}

body.company.history .table-history {
 table-layout: fixed;
 width: 100%;
 border-collapse: collapse;
}
@media only screen and (max-width: 767px) {
 body.company.history .table-history {
  min-width: 570px;
 }
}
body.company.history .table-history th,
body.company.history .table-history td {
 font-size: 16px;
 font-size: 1.6rem;
 border: 1px solid #b8b7b7;
}
@media only screen and (max-width: 767px) {
 body.company.history .table-history th,
 body.company.history .table-history td {
  font-size: 10.5px;
  font-size: 1.05rem;
 }
}
body.company.history .table-history thead th {
 font-weight: 600;
 text-align: center;
 min-height: 46px;
 padding: 15px 0;
 background-color: #706f70;
 color: #fff;
}
@media only screen and (max-width: 767px) {
 body.company.history .table-history thead th {
  padding: 5px 0;
 }
}
body.company.history .table-history thead th _:lang(x)::-ms-backdrop,
body.company.history .table-history thead th {
 padding: 18px 0 12px;
}
body.company.history .table-history thead th.sub {
 background-color: #9b9a9b;
}
body.company.history .table-history thead th:first-child {
 width: 112px;
}
@media only screen and (max-width: 767px) {
 body.company.history .table-history thead th:first-child {
  width: 50px;
 }
}
@media only screen and (max-width: 320px) {
 body.company.history .table-history thead th:first-child {
  width: 42px;
 }
}
body.company.history .table-history tbody tr:nth-child(even) td {
 background-color: #f0f0f0;
}
body.company.history .table-history tbody td {
 line-height: 1.5625;
 vertical-align: top;
 padding: 8px 15px;
}
@media only screen and (max-width: 767px) {
 body.company.history .table-history tbody td {
  padding: 4px 5px;
 }
}
body.company.history .table-history tbody td:first-child {
 text-align: center;
}

body.company.history .footnote {
 display: block;
 text-align: right;
 font-size: 16px;
 font-size: 1.6rem;
 margin-top: 15px;
 line-height: 1.5;
}
@media only screen and (max-width: 767px) {
 body.company.history .footnote {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 2.307692308;
  text-align: left;
  font-feature-settings: "palt" 1;
 }
}

body.company.history .gallery {
 padding-top: 80px;
}
@media only screen and (max-width: 767px) {
 body.company.history .gallery {
  padding-top: 85px;
 }
}

body.company.history .gallery__history {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 margin-bottom: -30px;
}
@media only screen and (max-width: 767px) {
 body.company.history .gallery__history {
  margin-bottom: -20px;
 }
}
body.company.history .gallery__history li {
 width: calc((100% - 120px) / 3);
 margin-right: 60px;
 margin-bottom: 30px;
}
@media only screen and (min-width: 768px) {
 body.company.history .gallery__history li:nth-child(3n + 3) {
  margin-right: 0;
 }
}
@media only screen and (max-width: 767px) {
 body.company.history .gallery__history li {
  width: calc((100% - 34px) / 2);
  margin-right: 34px;
  margin-bottom: 20px;
 }
 body.company.history .gallery__history li:nth-child(2n + 2) {
  margin-right: 0;
 }
}
body.company.history .gallery__history li figure img {
 margin-bottom: 15px;
}
body.company.history .gallery__history li figure figcaption {
 text-align: center;
 line-height: 1.5625;
 font-size: 16px;
 font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
 body.company.history .gallery__history li figure figcaption {
  text-align: left;
 }
}

.footer {
 background: #404040;
 overflow: hidden;
 position: relative;
}
.footer .top {
 border-bottom: 1px solid #fff;
}
@media only screen and (max-width: 767px) {
 .footer .top {
  border-bottom: none;
 }
}
.footer .top .inner {
 position: relative;
 padding: 20px;
}
@media only screen and (max-width: 767px) {
 .footer .top .inner {
  text-align: center;
 }
}
.footer .top .logo {
 max-width: 200px;
 display: inline-block;
}
.footer .top .logo img {
 display: block;
 width: 100%;
}
@media only screen and (max-width: 767px) {
 .footer .top .logo {
  max-width: 120px;
 }
}
.footer .top .pagetop {
 display: block;
 position: absolute;
 bottom: 0;
 right: 20px;
 color: #fff;
 font-size: 12px;
 font-size: 1.2rem;
 padding-right: 12px;
 padding-bottom: 10px;
 transition: opacity 0.3s;
}
@media only screen and (max-width: 767px) {
 .footer .top .pagetop {
  display: none;
 }
}
.footer .top .pagetop:hover {
 opacity: 0.6;
}
.footer .top .pagetop:before,
.footer .top .pagetop:after {
 content: "";
 position: absolute;
}
.footer .top .pagetop:before {
 width: 1px;
 height: 20px;
 background: #fff;
 right: 5px;
 bottom: 0;
}
.footer .top .pagetop:after {
 width: 1px;
 height: 8px;
 background: #fff;
 bottom: 12px;
 right: 5px;
 transform-origin: 0 0;
 transform: rotateZ(-45deg);
}
.footer .mid {
 position: relative;
 z-index: 2;
}
@media only screen and (max-width: 767px) {
 .footer .mid {
  display: none;
 }
}
.footer .mid:after {
 content: "";
 width: 100%;
 max-width: 1000px;
 height: 1px;
 background-color: #fff;
 position: absolute;
 bottom: 0;
 left: 50%;
 transform: translateX(-50%);
}
.footer .mid .fnav {
 display: -webkit-flex;
 display: flex;
 padding: 12px 0;
}
.footer .mid .fnav ul {
 width: 100%;
 padding-right: 20px;
}
.footer .mid .fnav ul li {
 line-height: 3;
}
.footer .mid .fnav ul li a {
 font-size: 12px;
 font-size: 1.2rem;
 color: #fff;
}
@media only screen and (min-width: 768px) {
 .footer .mid .fnav ul li a {
  transition: opacity 0.3s;
 }
 .footer .mid .fnav ul li a:hover {
  opacity: 0.6;
 }
 .footer .mid .inner {
  position: relative;
 }
}
.footer .mid .fnav ul li span {
 font-size: 12px;
 font-size: 1.2rem;
 color: #fff;
 font-weight: 600;
}
.footer .mid .fnav ul li.bold a {
 font-weight: 600;
}
.footer .mid .fnav01 {
 max-width: 282px;
}
.footer .mid .fnav02 {
 max-width: 184px;
}
.footer .mid .fnav03 {
 max-width: 150px;
}
@media only screen and (min-width: 768px) {
 .footer .snsbtns {
  text-align: right;
  position: absolute;
  top: 25px;
  right: 0;
 }
}
@media only screen and (max-width: 767px) {
 .footer .snsbtns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: 50px;
  width: calc(100% - 20px);
  margin-top: 32px;
  margin-bottom: 40px;
 }
}
.footer .snsbtns a {
 display: inline-block;
}
.footer .snsbtns a img {
 width: 50px;
}
@media only screen and (min-width: 768px) {
 .footer .snsbtns a + a {
  margin-left: 20px;
 }
}
.footer .snsbtns a:hover {
 opacity: 0.6;
}
.footer .btm {
 color: #fff;
 padding: 20px 0;
}
@media only screen and (max-width: 767px) {
 .footer .btm {
  padding: 0 45px 20px;
 }
}
@media only screen and (max-width: 320px) {
 .footer .btm {
  padding: 0 20px 20px;
 }
}
.footer .btm .line--top {
 text-align: right;
 margin-bottom: 30px;
 color: #8c8c8c;
}
@media only screen and (max-width: 767px) {
 .footer .btm .line--top {
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  padding: 20px 0;
 }
}
.footer .btm .line--top a {
 display: inline-block;
 font-size: 12px;
 font-size: 1.2rem;
}
@media only screen and (min-width: 768px) {
 .footer .btm .line--top a {
  transition: opacity 0.3s;
 }
 .footer .btm .line--top a:hover {
  opacity: 0.6;
 }
}
@media only screen and (max-width: 767px) {
 .footer .btm .line--top a {
  font-size: 12.5px;
  font-size: 1.25rem;
 }
}
.footer .btm .line--top a.current {
 color: #fff;
}
.footer .btm .line--top span.separator {
 display: inline-block;
 margin: 0 6px;
}
@media only screen and (max-width: 767px) {
 .footer .btm .line--top span.separator {
  margin: 0 30px;
 }
}
@media only screen and (max-width: 767px) {
 .footer .btm .line--top {
  text-align: center;
 }
}
.footer .btm .line--btm {
 display: -webkit-flex;
 display: flex;
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
@media only screen and (max-width: 767px) {
 .footer .btm .line--btm {
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  justify-content: center;
 }
}
.footer .btm .line--btm nav ul {
 display: -webkit-flex;
 display: flex;
}
@media only screen and (max-width: 767px) {
 .footer .btm .line--btm nav ul {
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: 30px;
 }
}
.footer .btm .line--btm nav ul li {
 margin: 0 20px 0 0;
}
@media only screen and (max-width: 767px) {
 .footer .btm .line--btm nav ul li {
  margin: 0 0 20px;
 }
}
.footer .btm .line--btm nav ul li a {
 font-size: 12px;
 font-size: 1.2rem;
}
@media only screen and (min-width: 768px) {
 .footer .btm .line--btm nav ul li a {
  transition: opacity 0.3s;
 }
 .footer .btm .line--btm nav ul li a:hover {
  opacity: 0.6;
 }
}
@media only screen and (max-width: 767px) {
 .footer .btm .line--btm nav ul li a {
  font-size: 13px;
  font-size: 1.3rem;
 }
}
.footer .btm .line--btm .copyright {
 font-size: 10px;
 font-size: 1rem;
}
@media only screen and (max-width: 767px) {
 .footer .btm .line--btm .copyright {
  text-align: center;
  margin: 0 -10px;
 }
}

.btnfix {
 position: fixed;
 background: #e60012;
 color: #ffffff;
 font-weight: bold;
 font-size: 16px;
 font-size: 1.6rem;
 height: 50px;
 width: 200px;
 z-index: 9999;
 white-space: nowrap;
}
@media only screen and (min-width: 768px) {
 .btnfix {
  top: calc(50% - 75px);
  left: 100%;
  -webkit-transform: translateY(-50%) rotate(90deg);
  -moz-transform: translateY(-50%) rotate(90deg);
  -ms-transform: translateY(-50%) rotate(90deg);
  -o-transform: translateY(-50%) rotate(90deg);
  transform: translateY(-50%) rotate(90deg);
  transform-origin: left top 0;
 }
}
.btnfix span {
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
}
.btnfix:hover {
 opacity: 0.5;
 cursor: pointer;
}
@media only screen and (max-width: 767px) {
 .btnfix {
  font-size: 15px;
  font-size: 1.5rem;
  bottom: 0;
  right: 0;
  height: 50px;
  width: 150px;
  letter-spacing: -1px;
 }
}

.popupwrap {
 position: fixed;
 width: 100%;
 height: calc(100% - 100px);
 background: rgba(0, 0, 0, 0.7);
 z-index: 9999;
 display: none;
 top: calc(50% + 50px);
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 overflow-y: scroll;
}
@media only screen and (max-width: 767px) {
 .popupwrap {
  height: calc(100% - 47px);
  top: calc(50% + 23.5px);
 }
}
.popupwrap .popup {
 top: 50%;
 left: 50%;
 position: absolute;
 padding-top: 40px;
}
@media only screen and (min-width: 768px) {
 .popupwrap .popup {
  width: 100%;
  max-width: 980px;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
 }
}
@media only screen and (max-width: 767px) {
 .popupwrap .popup {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  padding-top: 33px;
 }
}
.popupwrap .popup .btnclose {
 width: 44px;
 height: 70px;
 position: absolute;
 top: 0;
 right: 0;
}
@media only screen and (max-width: 767px) {
 .popupwrap .popup .btnclose {
  width: 32px;
  right: -32px;
 }
}
.popupwrap .popup .btnclose:hover {
 cursor: pointer;
 opacity: 0.5;
}
.popupwrap .popup__ttl {
 font-size: 20px;
 font-weight: bold;
 color: #fff;
 text-align: center;
 margin-bottom: 28px;
}
@media only screen and (max-width: 767px) {
 .popupwrap .popup__ttl {
  font-size: 16px;
  margin-bottom: 15px;
  letter-spacing: -1px;
 }
}
@media only screen and (min-width: 768px) {
 .popupwrap .popup__list {
  width: 100vw;
  max-width: 960px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: center;
 }
}
@media only screen and (max-width: 767px) {
 .popupwrap .popup__list {
  margin-bottom: 50px;
 }
}
.popupwrap .popup__list li {
 background: #fff;
 padding: 38px 88px 50px;
}
@media only screen and (min-width: 768px) {
 .popupwrap .popup__list li {
  width: 60%;
 }
}
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
 .popupwrap .popup__list li {
  width: calc(50% - 10px);
  padding: 38px 20px 50px;
 }
}
@media only screen and (max-width: 767px) {
 .popupwrap .popup__list li {
  width: 290px;
  padding: 20px 20px 25px 20px;
 }
 .popupwrap .popup__list li + li {
  margin-top: 20px;
 }
}
.popupwrap .popup__list li .ppttl {
 color: #ff0703;
 font-size: 20px;
 font-weight: bold;
 text-align: center;
 line-height: 1.3;
 margin-bottom: 13px;
 white-space: nowrap;
}
@media only screen and (min-width: 768px) {
 .popupwrap .popup__list li .ppttl {
  min-height: 78px;
 }
}
@media only screen and (max-width: 767px) {
 .popupwrap .popup__list li .ppttl {
  font-size: 16px;
 }
}
.popupwrap .popup__list li .ppsubttl {
 font-size: 16px;
 font-weight: bold;
 text-align: center;
 margin: 22px auto 30px;
}
@media only screen and (max-width: 767px) {
 .popupwrap .popup__list li .ppsubttl {
  font-size: 13px;
  margin: 14px auto 21px;
 }
}
.popupwrap .popup__list li .img {
 text-align: center;
 height: 170px;
 position: relative;
}
@media only screen and (max-width: 767px) {
 .popupwrap .popup__list li .img {
  height: 70px;
 }
}
.popupwrap .popup__list li .img img {
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
}
.popupwrap .popup__list li:first-child .img img {
 width: 96px;
 height: auto;
}
@media only screen and (max-width: 767px) {
 .popupwrap .popup__list li:first-child .img img {
  width: 60px;
 }
}
.popupwrap .popup__list li:last-child .img img {
 width: 330px;
 height: auto;
}
@media only screen and (max-width: 767px) {
 .popupwrap .popup__list li:last-child .img img {
  width: 140px;
 }
}
.popupwrap .popup__list li table {
 font-size: 16px;
 line-height: 1.4125;
 margin-bottom: 17px;
}
@media only screen and (max-width: 767px) {
 .popupwrap .popup__list li table {
  font-size: 13px;
 }
}
.popupwrap .popup__list li table th {
 font-weight: bold;
 vertical-align: top;
 padding-right: 30px;
}
@media only screen and (max-width: 767px) {
 .popupwrap .popup__list li table th {
  padding-right: 15px;
 }
}
.popupwrap .popup__list li table td {
 padding-bottom: 10px;
}
@media only screen and (max-width: 767px) {
 .popupwrap .popup__list li table td {
  padding-bottom: 7px;
 }
}
.popupwrap .popup__list li .ppbtn {
 width: 100%;
 height: 46px;
 background: #e60012;
 position: relative;
 display: block;
}
.popupwrap .popup__list li .ppbtn:hover {
 opacity: 0.5;
}
@media only screen and (max-width: 767px) {
 .popupwrap .popup__list li .ppbtn {
  height: 35px;
 }
}
.popupwrap .popup__list li .ppbtn span {
 color: #fff;
 font-size: 16px;
 font-weight: bold;
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
}
@media only screen and (max-width: 767px) {
 .popupwrap .popup__list li .ppbtn span {
  font-size: 13px;
 }
}

.shopopup {
 overflow: hidden;
}
.shopopup .popupwrap {
 display: block;
}
.shopopup .btnfix {
 display: none;
}

.header {
 position: fixed;
 top: 0;
 left: 0;
 width: 100%;
 z-index: 900;
 background: rgba(255, 255, 255, 0.8);
}
@media only screen and (max-width: 767px) {
 .header.open > .inner {
  background: #fff;
 }
}
@media only screen and (max-width: 767px) {
 .header {
  background: none;
 }
}
.header > .inner {
 display: -webkit-flex;
 display: flex;
 -webkit-justify-content: space-between;
 justify-content: space-between;
 height: 100px;
 -webkit-transition: background-color 0.3s;
 -moz-transition: background-color 0.3s;
 -o-transition: background-color 0.3s;
 transition: background-color 0.3s;
 position: relative;
}
@media only screen and (min-width: 768px) {
 .header > .inner {
  padding-top: 38px;
 }
 .header > .inner .lang {
  position: absolute;
  top: 12px;
  right: 27px;
  font-size: 14px;
  line-height: 1;
 }
 .header > .inner .lang a {
  display: inline-block;
 }
 .header > .inner .lang .cur {
  color: #e60012;
 }
 .header > .inner .lang .nom {
  padding-left: 11px;
  margin-left: 10px;
  position: relative;
 }
 .header > .inner .lang .nom:before {
  position: absolute;
  content: "";
  width: 1px;
  height: 10px;
  background: #4d4d4d;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
 }
 .header > .inner .gnav .langsp {
  display: none;
 }
}
@media only screen and (max-width: 950px) {
 .header > .inner {
  padding-right: 0;
 }
}
@media only screen and (max-width: 767px) {
 .header > .inner {
  height: 47px;
  padding-right: 20px;
  -webkit-align-items: center;
  align-items: center;
  background: rgba(255, 255, 255, 0.8);
 }
 .header > .inner .lang {
  display: none;
 }
 .header .gnav .langsp {
  text-align: center;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  padding: 20px 0;
  margin: 0 auto 30px;
  color: #8c8c8c;
  max-width: 300px;
 }
 .header .gnav .langsp a {
  font-size: 12.5px;
  font-size: 1.25rem;
  display: inline-block;
 }
 .header .gnav .langsp a.current {
  color: #fff;
 }
 .header .gnav .langsp span.separator {
  display: inline-block;
  margin: 0 30px;
 }
}
.header .logo {
 padding: 8px 0;
 display: block;
 height: 100%;
 width: 220px;
}
.header .logo img {
 display: block;
 width: auto;
 height: 100%;
}
@media only screen and (max-width: 950px) {
 .header .logo {
  width: 170px;
  padding-top: 14px;
 }
 .header .logo img {
  width: 100%;
  height: auto;
 }
}
@media only screen and (max-width: 767px) {
 .header .logo {
  padding: 8px 0;
 }
 .header .logo img {
  display: block;
  width: auto;
  height: 100%;
 }
}
@media only screen and (min-width: 768px) {
 .header a.logo {
  transition: opacity 0.3s;
 }
 .header a.logo:hover {
  opacity: 0.6;
 }
}
.header .gnav {
 height: 100%;
 display: -webkit-flex;
 display: flex;
}
@media only screen and (max-width: 767px) {
 .header .gnav {
  top: -100vh;
  min-height: 100vh;
  height: 100vh;
  position: absolute;
  overflow: scroll;
  left: 0;
  right: 0;
  width: 100%;
  background: #404040;
  -webkit-transition: top 0.4s;
  -moz-transition: top 0.4s;
  -o-transition: top 0.4s;
  transition: top 0.4s;
  padding-top: 47px;
  z-index: -1;
  display: block;
 }
 .header .gnav.open {
  top: 0;
 }
}
.header .gnav ul {
 display: -webkit-flex;
 display: flex;
}
@media only screen and (max-width: 767px) {
 .header .gnav ul {
  -webkit-flex-direction: column;
  flex-direction: column;
  padding: 0 25px;
  width: 100%;
  padding-bottom: 64px;
  overflow: auto;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li {
  border-bottom: 1px solid #fff;
 }
 .header .gnav ul li:last-child {
  border-bottom: none;
 }
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.current a:not(.ex):not(.contact-link) {
  color: #e60012;
 }
}
.header .gnav ul li a:not(.ex) {
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
 -webkit-flex-direction: column;
 flex-direction: column;
 height: 100%;
 width: 100%;
 color: #4d4d4d;
 -webkit-transition: all 0.3s;
 -moz-transition: all 0.3s;
 -o-transition: all 0.3s;
 transition: all 0.3s;
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li a:not(.ex) {
  height: auto;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  padding: 16px 0;
  position: relative;
 }
 .header .gnav ul li a:not(.ex):after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 10px;
  border-color: transparent transparent transparent #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 11px;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li a:not(.ex) span {
  color: #fff;
 }
}
.header .gnav ul li a:not(.ex) span.en {
 margin-bottom: 7px;
 font-size: 17px;
 font-size: 1.7rem;
 font-weight: 600;
}
@media only screen and (max-width: 950px) {
 .header .gnav ul li a:not(.ex) span.en {
  font-size: 15px;
  font-size: 1.5rem;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li a:not(.ex) span.en {
  margin-bottom: 0;
  font-size: 18px;
  font-size: 1.8rem;
  margin-right: 14px;
 }
}
.header .gnav ul li a:not(.ex) span.ja {
 font-size: 12px;
 font-size: 1.2rem;
 font-weight: 400;
 letter-spacing: -0.04em;
}
@media only screen and (max-width: 950px) {
 .header .gnav ul li a:not(.ex) span.ja {
  font-style: 11px;
 }
}
.header .gnav ul li a:not(.ex):hover {
 color: #e60012;
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li:last-child {
  margin-left: 12px;
 }
 .header .gnav ul li:last-child a {
  background-color: rgba(77, 77, 77, 0.7);
  color: #fff;
 }
 .header .gnav ul li:last-child a:hover {
  background-color: #e60012;
  color: #fff;
 }
}
.header .gnav ul li.mm .mm--container {
 display: none;
 position: absolute;
 left: 50%;
 transform: translateX(-50%);
 right: 0;
 width: 100vw;
 background: #404040;
 height: 422px;
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm .mm--container {
  display: none;
  height: auto;
  position: relative;
  left: 50%;
  width: 100%;
  right: auto;
 }
}
.header .gnav ul li.mm .mm--container .inner {
 display: block;
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm .mm--container .inner {
  padding: 44px 20px 0;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm .mm--container .inner {
  padding: 0;
 }
}
.header .gnav ul li.mm .mm--container .inner .mm--title {
 color: #fff;
 font-size: 26px;
 font-size: 2.6rem;
 margin-bottom: 35px;
 padding-bottom: 15px;
 border-bottom: 2px solid #fff;
}
.header .gnav ul li.mm .mm--container .inner .mm--title span {
 display: inline-block;
}
.header .gnav ul li.mm .mm--container .inner .mm--title span.en {
 font-family: "Open Sans", sans-serif;
 font-size: 24px;
 font-size: 2.4rem;
 font-weight: 600;
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm .mm--container .inner .mm--title span.en:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 10px;
  border-color: transparent transparent transparent #ffffff;
  display: inline-block;
  position: relative;
  top: -4px;
  margin-left: 15px;
 }
}
.header .gnav ul li.mm .mm--container .inner .mm--title span.ja {
 font-weight: 600;
 margin-right: 8px;
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm .mm--container .inner .mm--title {
  display: none;
 }
}
.header .gnav ul li.mm .mm--container .inner .mm--submenu {
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm .mm--container .inner .mm--submenu {
  border-top: 1px solid #fff;
  padding: 0 0 0 20px;
 }
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li {
  margin: 0 0 35px;
 }
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li a {
  text-align: left;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li {
  width: 100%;
 }
}
.header .gnav ul li.mm .mm--container .inner .mm--submenu li a {
 display: -webkit-inline-flex;
 display: inline-flex;
 -webkit-flex-direction: row;
 flex-direction: row;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: flex-start;
 justify-content: flex-start;
 color: #fff;
 font-size: 16px;
 font-size: 1.6rem;
 letter-spacing: -0.04em;
 line-height: 1.5;
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li a {
  font-size: 14px;
  font-size: 1.4rem;
 }
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li a {
  transition: opacity 0.3s;
 }
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li a:hover {
  opacity: 0.6;
 }
}
.header .gnav ul li.mm .mm--container .inner .mm--submenu li a br {
 display: none;
}
@media (min-width: 768px) and (max-width: 980px) {
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li a br {
  display: block;
 }
}
@media only screen and (max-width: 380px) {
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li a br {
  display: block;
 }
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li a br.pc {
  display: block;
 }
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li a .icon {
  width: 80px;
 }
 .header
  .gnav
  ul
  li.mm
  .mm--container
  .inner
  .mm--submenu
  li
  a
  .icon
  _:lang(x)::-ms-backdrop,
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li a .icon {
  width: 84px;
 }
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li a .icon img {
  height: 100%;
  width: auto;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li a .icon img {
  width: 100%;
  height: auto;
 }
}
.header .gnav ul li.mm .mm--container .inner .mm--submenu li a span {
 margin-right: -40px;
 display: inline-block;
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li a:after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 10px;
  border-color: transparent transparent transparent #fff;
  background: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 11px;
 }
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li a:before {
  display: none;
 }
}
.header .gnav ul li.mm .mm--container .inner .mm--submenu li:last-child {
 margin: 0 0 35px;
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm .mm--container .inner .mm--submenu li:last-child {
  margin: 0;
 }
}
.header .gnav ul li.mm .mm--container .inner .mm--submenu li:last-child a {
 background: none;
}
.header .gnav ul li.mm--product .mm--title span.en:after {
 display: none !important;
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm--product .mm--submenu li a {
  height: 66px;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm--product .mm--submenu li a {
  padding: 0;
  height: 64px;
 }
}
@media all and (-ms-high-contrast: none) {
 .header .gnav ul li.mm--product .mm--submenu li a span {
  padding-top: 4px;
 }
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(1) a .icon {
  height: 66px;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(1) a {
  padding-left: 5px;
 }
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(1) a .icon {
  margin-right: 18px;
  width: 46px;
 }
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(2) a .icon {
  height: 56px;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(2) a {
  padding-left: 2px;
 }
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(2) a .icon {
  margin-right: 17px;
  width: 46px;
 }
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(3) a .icon {
  height: 59px;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(3) a {
  padding-left: 7px;
 }
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(3) a .icon {
  margin-right: 21px;
  width: 36px;
 }
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(4) a .icon {
  height: 65px;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(4) a {
  padding-left: 2px;
 }
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(4) a .icon {
  margin-right: 13px;
  width: 43px;
 }
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(5) a .icon {
  height: 65px;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(5) a {
  padding-left: 5px;
 }
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(5) a .icon {
  margin-right: 20px;
  width: 39px;
 }
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(6) a .icon {
  height: 61px;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(6) a {
  padding-left: 0px;
 }
 .header .gnav ul li.mm--product .mm--submenu li:nth-child(6) a .icon {
  margin-right: 14px;
  width: 50px;
 }
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm--company .mm--submenu li a {
  display: inline-block !important;
  padding: 0;
 }
 .header .gnav ul li.mm--company .mm--submenu li a span {
  display: block;
  margin-right: 0 !important;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm--company .mm--submenu li a {
  height: 45px;
  padding: 0 0 0 8px;
 }
}
.header .gnav ul li.mm--company .mm--submenu {
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
.header .gnav ul li.mm--company .mm--submenu div.break {
 flex-basis: 500%;
 height: 0;
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm--company .mm--submenu div.break {
  display: none;
 }
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm--company .mm--submenu li:nth-child(1),
 .header .gnav ul li.mm--company .mm--submenu li:nth-child(6) {
  width: 23%;
 }
 .header .gnav ul li.mm--company .mm--submenu li:nth-child(2),
 .header .gnav ul li.mm--company .mm--submenu li:nth-child(7) {
  width: 30%;
 }
 .header .gnav ul li.mm--company .mm--submenu li:nth-child(3),
 .header .gnav ul li.mm--company .mm--submenu li:nth-child(8) {
  width: 27%;
 }
 .header .gnav ul li.mm--company .mm--submenu li:nth-child(4),
 .header .gnav ul li.mm--company .mm--submenu li:nth-child(9) {
  width: 20%;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav ul li.mm a:before,
 .header .gnav ul li.mm a:after {
  content: "";
  width: 20px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  right: 7px;
  top: 50%;
  border: none;
 }
 .header .gnav ul li.mm a:before {
  transform: rotate(90deg) translateX(1px);
  -webkit-transition: -webkit-transform 0.3s;
  -moz-transition: -moz-transform 0.3s;
  -o-transition: -o-transform 0.3s;
  transition: transform 0.3s;
 }
 .header .gnav ul li.mm a:after {
  transform: translateY(1px);
 }
}
.header .gnav ul li.mm.is-open a:before {
 transform: rotate(0deg);
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm:hover .mm--container {
  display: block;
 }
}
@media only screen and (min-width: 768px) {
 .header .gnav ul li.mm.mm--product li {
  width: 33.33333% !important;
 }
}
.header .gnav > ul > li > a {
 padding: 0 12px;
}
@media only screen and (max-width: 950px) {
 .header .gnav > ul > li > a {
  padding: 0 8px;
 }
}
@media only screen and (max-width: 767px) {
 .header .gnav > ul > li > a {
  height: 60px;
  padding-left: 10px;
 }
}
.header button.nav-toggle {
 width: 20px;
 height: 15px;
 position: relative;
 background: none;
 border: none;
 outline: none;
}
.header button.nav-toggle span {
 position: absolute;
 height: 2px;
 width: 100%;
 background: #4d4d4d;
 left: 0;
}
.header button.nav-toggle span:nth-child(1) {
 top: 0;
 -webkit-transition: -webkit-transform 0.3s, top 0.3s;
 -webkit-transition-delay: 0s, 0.3s;
 -moz-transition: -moz-transform 0.3s, top 0.3s 0.3s;
 -o-transition: -o-transform 0.3s, top 0.3s 0.3s;
 transition: transform 0.3s, top 0.3s 0.3s;
}
.header button.nav-toggle span:nth-child(2) {
 width: calc(100% - 2px);
 left: 1px;
 top: 50%;
 -webkit-transition: opacity 0.3s;
 -moz-transition: opacity 0.3s;
 -o-transition: opacity 0.3s;
 transition: opacity 0.3s;
}
.header button.nav-toggle span:nth-child(3) {
 top: 100%;
 -webkit-transition: -webkit-transform 0.3s, top 0.3s;
 -webkit-transition-delay: 0s, 0.3s;
 -moz-transition: -moz-transform 0.3s, top 0.3s 0.3s;
 -o-transition: -o-transform 0.3s, top 0.3s 0.3s;
 transition: transform 0.3s, top 0.3s 0.3s;
}
.header button.nav-toggle.open span:nth-child(1) {
 top: 50%;
 -webkit-transition: top 0.3s, -webkit-transform 0.3s;
 -webkit-transition-delay: 0s, 0.3s;
 -moz-transition: top 0.3s, -moz-transform 0.3s 0.3s;
 -o-transition: top 0.3s, -o-transform 0.3s 0.3s;
 transition: top 0.3s, transform 0.3s 0.3s;
 transform: rotate(45deg);
}
.header button.nav-toggle.open span:nth-child(2) {
 opacity: 0;
 -webkit-transition: opacity 0.3s;
 -moz-transition: opacity 0.3s;
 -o-transition: opacity 0.3s;
 transition: opacity 0.3s;
}
.header button.nav-toggle.open span:nth-child(3) {
 top: 50%;
 -webkit-transition: top 0.3s, -webkit-transform 0.3s;
 -webkit-transition-delay: 0s, 0.3s;
 -moz-transition: top 0.3s, -moz-transform 0.3s 0.3s;
 -o-transition: top 0.3s, -o-transform 0.3s 0.3s;
 transition: top 0.3s, transform 0.3s 0.3s;
 transform: rotate(-45deg);
}

body.subpage .header {
 background: #fff;
}

body.news main {
 padding-bottom: 130px;
}
@media only screen and (max-width: 767px) {
 body.news main {
  padding-bottom: 60px;
 }
}

body.news .title__subpage {
 margin-bottom: 85px;
}
@media only screen and (max-width: 767px) {
 body.news .title__subpage {
  margin-bottom: 45px;
 }
}

body.news.archive article {
 display: -webkit-flex;
 display: flex;
 margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
 body.news.archive article {
  -webkit-flex-direction: column;
  flex-direction: column;
  margin-bottom: 50px;
 }
}
body.news.archive article:last-of-type {
 margin-bottom: 0;
}
body.news.archive article time {
 margin-bottom: 20px;
 font-family: "Open Sans", sans-serif;
 font-size: 14px;
 font-size: 1.4rem;
 color: #e60012;
}
@media only screen and (max-width: 767px) {
 body.news.archive article time {
  font-size: 16px;
  font-size: 1.6rem;
 }
}
body.news.archive article .image {
 -webkit-flex: 0 0 350px;
 flex: 0 0 350px;
 margin-right: 30px;
}
@media only screen and (max-width: 767px) {
 body.news.archive article .image {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  margin-right: 0;
  margin-bottom: 25px;
 }
}
body.news.archive article .content {
 -webkit-flex: 1 1 100%;
 flex: 1 1 100%;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-direction: column;
 flex-direction: column;
}
body.news.archive article .content h2 {
 font-size: 20px;
 font-size: 2rem;
 font-weight: 600;
 margin-bottom: 20px;
 font-feature-settings: "palt" 1;
 word-break: break-all;
 line-height: 1.875;
}
@media only screen and (max-width: 767px) {
 body.news.archive article .content h2 {
  margin-bottom: 15px;
 }
}
body.news.archive article .content .txt {
 font-size: 16px;
 font-size: 1.6rem;
 word-break: break-all;
 line-height: 1.875;
}
body.news.archive article .content .txt a {
 color: #e60012;
}
@media only screen and (min-width: 768px) {
 body.news.archive article .content .txt a {
  transition: opacity 0.3s;
 }
 body.news.archive article .content .txt a:hover {
  opacity: 0.6;
 }
}

body.news .pagination {
 padding-top: 100px;
}
@media only screen and (max-width: 767px) {
 body.news .pagination {
  padding-top: 50px;
 }
}
body.news .pagination .wp-pagenavi {
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
}
body.news .pagination a,
body.news .pagination span {
 width: 30px;
 height: 30px;
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
 margin-right: 22px;
 font-size: 18px;
 font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
 body.news .pagination a,
 body.news .pagination span {
  margin-right: 5px;
 }
}
body.news .pagination a:last-child,
body.news .pagination span:last-child {
 margin-right: 0;
}
body.news .pagination a.current,
body.news .pagination span.current {
 background: #e60012;
 color: #fff;
}
body.news .pagination a _:lang(x)::-ms-backdrop,
body.news .pagination a,
body.news .pagination span _:lang(x)::-ms-backdrop,
body.news .pagination span {
 padding-top: 5px;
}
body.news .pagination .previouspostslink,
body.news .pagination .nextpostslink {
 text-indent: -100px;
 overflow: hidden;
 background-size: 8px 15px;
 background-position: center;
 background-repeat: no-repeat;
}
body.news .pagination .previouspostslink {
 background-image: url(../images/common/icon-arrow-prev.svg);
}
body.news .pagination .nextpostslink {
 background-image: url(../images/common/icon-arrow-next.svg);
}

body.product p.product-intro {
 text-align: center;
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 margin-bottom: 95px;
}
@media only screen and (max-width: 767px) {
 body.product p.product-intro {
  text-align: left;
  margin-bottom: 33px;
 }
}

body.product .list__products {
 max-width: 1000px;
 width: 100%;
 margin: 0 auto 100px;
 padding: 0 20px;
}
@media only screen and (max-width: 767px) {
 body.product .list__products {
  padding: 0 20px 40px;
  margin-bottom: 0;
 }
}
body.product .list__products--title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: 600;
 display: block;
 text-align: center;
 margin-bottom: 20px;
 margin-top: 60px;
}
body.product .list__products--title:first-of-type {
 margin-top: 0;
}
body.product .list__products ul {
 width: 100%;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 margin-bottom: -26px;
}
body.product .list__products ul li {
 width: calc((100% - 52px) / 3);
}
@media only screen and (min-width: 768px) {
 body.product .list__products ul li {
  margin-right: 26px;
 }
 body.product .list__products ul li:nth-child(3n + 3) {
  margin-right: 0;
 }
}
@media only screen and (max-width: 767px) {
 body.product .list__products ul li {
  width: calc((100% - 16px) / 2);
  margin-right: 16px;
 }
 body.product .list__products ul li:nth-child(2n + 2) {
  margin-right: 0;
 }
}
body.product .list__products ul li _:lang(x)::-ms-backdrop,
body.product .list__products ul li {
 width: calc((100% - 53px) / 3);
}
@supports (-ms-ime-align: auto) {
 body.product .list__products ul li {
  width: calc((100% - 53px) / 3);
 }
}

@media only screen and (min-width: 768px) {
 body.product section .inner:before {
  display: block;
  content: " ";
  margin-top: -200px;
  height: 200px;
  visibility: hidden;
  pointer-events: none;
  position: relative;
 }
}

body.product section.product-info {
 background: #f0f0f0;
 padding: 90px 0;
 margin-bottom: 90px;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.product section.product-info {
  padding: 40px 0 30px;
  margin-bottom: 35px;
 }
}
body.product section.product-info .intro {
 text-align: center;
 padding-bottom: 40px;
}
body.product section.product-info .txt__product-info {
 line-height: 1.875;
 font-size: 16px;
 font-size: 1.6rem;
 font-weight: 400;
 margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
 body.product section.product-info .txt__product-info {
  margin-bottom: 25px;
 }
}
body.product section.product-info .table--info {
 border-collapse: collapse;
 table-layout: fixed;
 width: 1000px;
}
body.product section.product-info .table--info .padding {
 padding: 30px 5px;
}
@media only screen and (max-width: 767px) {
 body.product section.product-info .table--info {
  table-layout: fixed;
 }
}
body.product section.product-info .table--info th,
body.product section.product-info .table--info td {
 border: 1px solid #706f70;
 vertical-align: middle;
 text-align: center;
 height: 46px;
 font-size: 16px;
 font-size: 1.6rem;
 padding: 6px 5px;
 line-height: 1.5625;
}
body.product section.product-info .table--info th _:lang(x)::-ms-backdrop,
body.product section.product-info .table--info th,
body.product section.product-info .table--info td _:lang(x)::-ms-backdrop,
body.product section.product-info .table--info td {
 padding: 9px 5px 3px;
}
body.product section.product-info .table--info thead th {
 color: #fff;
 background: #828282;
}
body.product section.product-info .table--info thead th:nth-child(1) {
 width: 130px;
}
@media only screen and (max-width: 767px) {
 body.product section.product-info .table--info thead th:not(:nth-child(1)) {
  width: 100px;
 }
}
body.product section.product-info .table--info tbody th {
 font-weight: 600;
}
body.product section.product-info .table--info tbody tr th {
 padding: 11px 8px 0;
 vertical-align: top;
}
body.product section.product-info .table--info tbody tr td,
body.product section.product-info .table--info tbody tr th {
 background: #fff;
}
body.product section.product-info .table--info tbody tr:nth-child(4n) td,
body.product section.product-info .table--info tbody tr:nth-child(4n) th,
body.product section.product-info .table--info tbody tr:nth-child(4n - 1) td,
body.product section.product-info .table--info tbody tr:nth-child(4n - 1) th {
 background: #f0f0f0;
}
body.product section.product-info .table--info tbody tr:nth-child(2n + 2) td {
 text-align: left;
}
body.product section.product-info .table--info tbody .link {
 max-width: 85%;
 margin-top: 10px;
}

body.product ul.list__product-info {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 text-align: left;
 margin-bottom: -40px;
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info {
  margin-bottom: -20px;
 }
}
body.product ul.list__product-info.col2 > li {
 width: calc((100% - 20px) / 2);
 margin-right: 20px;
}
body.product ul.list__product-info.col2 > li:nth-child(2n + 2) {
 margin-right: 0;
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info.col2 > li {
  width: calc((100% - 15px) / 2);
  margin-right: 15px;
 }
}
body.product ul.list__product-info.col2 > li .top .head .link {
 max-width: 180px;
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info.col2 > li .top .head .link {
  max-width: 118px;
 }
}
body.product ul.list__product-info.col2 > li .top .head .btn--red {
 border-radius: 3rem;
 margin-bottom: 20px;
 height: 28px;
 display: flex;
 align-items: center;
 justify-content: center;
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info.col2 > li .top .head .btn--red {
  width: 100%;
  margin-bottom: 0;
 }
}
body.product ul.list__product-info.col2 > li .top .head .link--outline {
 height: 28px;
}
@media only screen and (min-width: 768px) {
 body.product ul.list__product-info.col3 > li {
  width: calc((100% - 40px) / 3);
  margin-right: 20px;
 }
 body.product ul.list__product-info.col3 > li _:lang(x)::-ms-backdrop,
 body.product ul.list__product-info.col3 > li {
  width: calc(33.33333% - 14px);
 }
 body.product ul.list__product-info.col3 > li:nth-child(3n + 3) {
  margin-right: 0;
 }
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info.col3 > li {
  margin-right: 15px;
  width: calc((100% - 15px) / 2);
  height: auto;
 }
 body.product ul.list__product-info.col3 > li:nth-child(2n + 2) {
  margin-right: 0;
 }
}
body.product ul.list__product-info.col3 > li .top .image {
 max-width: 120px;
 width: 100%;
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info.col3 > li .top .image {
  margin-bottom: 5px;
 }
}
body.product ul.list__product-info.col3 > li .top .head {
 -webkit-flex-direction: column;
 flex-direction: column;
}
@media only screen and (min-width: 768px) {
 body.product ul.list__product-info.col3 > li .top .head {
  padding-left: 10px;
 }
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info.col3 > li .top .head {
  margin: 0 -12px;
 }
 body.product ul.list__product-info.col3 > li .top .head h3 {
  margin-bottom: 30px;
 }
 body.product ul.list__product-info.col3 > li .top .head .link {
  max-width: none;
  margin-top: 0;
 }
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info.col3 > li {
  padding: 18px 25px;
 }
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info.col1sp > li {
  width: 100%;
  padding: 18px 0 50px;
  height: auto;
  margin-right: 0;
 }
 body.product ul.list__product-info.col1sp > li .top {
  -webkit-flex-direction: row;
  flex-direction: row;
 }
 body.product ul.list__product-info.col1sp > li .top .image {
  padding: 0;
 }
 body.product ul.list__product-info.col1sp > li .top .image img {
  max-width: 160px;
 }
 body.product ul.list__product-info.col1sp > li .top .head {
  padding: 0 10px 0 15px;
 }
 body.product ul.list__product-info.col1sp > li .top .head .list li {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.538461538;
 }
 body.product ul.list__product-info.col1sp > li .top .head .link {
  position: absolute;
  left: 50%;
  bottom: 15px;
  transform: translateX(-50%);
 }
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info.thumb2 li .top .image {
  padding: 0;
 }
}
body.product ul.list__product-info > li {
 background: #fff;
 padding: 30px 20px;
 margin-bottom: 40px;
 position: relative;
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info > li {
  height: auto;
  padding: 18px 0 15px;
  margin-bottom: 20px;
 }
}
body.product ul.list__product-info > li .top {
 display: -webkit-flex;
 display: flex;
 margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info > li .top {
  -webkit-flex-direction: column;
  flex-direction: column;
  margin: 0;
  height: 100%;
 }
}
body.product ul.list__product-info > li .top .image {
 max-width: 180px;
 width: 100%;
}
@media only screen and (min-width: 768px) {
 body.product ul.list__product-info > li .top .image.thumb-230 {
  max-width: 230px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
 }
 body.product ul.list__product-info > li .top .image.thumb-230 img {
  width: 100%;
 }
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info > li .top .image {
  margin-bottom: 10px;
  padding: 0 25px;
 }
}
body.product ul.list__product-info > li .top .head {
 padding: 0 0 0 30px;
 flex: 1 1 auto;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-direction: column;
 flex-direction: column;
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info > li .top .head {
  height: auto;
  padding: 0 12px;
  text-align: center;
 }
}
body.product ul.list__product-info > li .top .head h3 {
 font-size: 16px;
 font-size: 1.6rem;
 font-weight: 600;
 margin-bottom: 17px;
 width: 100%;
 line-height: 1.5;
 word-break: break-all;
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info > li .top .head h3 {
  padding: 0 10px;
  line-height: 1.375;
  margin-bottom: auto;
  min-height: 56px;
 }
}
body.product ul.list__product-info > li .top .head .txt {
 width: 100%;
 margin-top: -5px;
 margin-bottom: 20px;
 font-size: 15px;
 font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info > li .top .head .txt {
  margin-top: auto;
 }
}
body.product ul.list__product-info > li .top .head .list {
 color: #e60012;
 font-size: 14px;
 font-size: 1.4rem;
 line-height: 1.75;
 margin-bottom: 20px;
}
body.product ul.list__product-info > li .top .head .list li {
 padding-left: 10px;
 position: relative;
 text-align: left;
}
body.product ul.list__product-info > li .top .head .list li:before {
 content: "";
 width: 3px;
 height: 3px;
 border-radius: 100%;
 background: #e60012;
 position: absolute;
 left: 0;
 top: 8px;
}
body.product ul.list__product-info > li .top .head .prop {
 width: 100%;
 display: block;
 margin-bottom: 22px;
 height: 28px;
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
 color: #fff;
 font-size: 14px;
 font-size: 1.4rem;
 background: #4d4d4d;
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info > li .top .head .prop {
  margin-bottom: 15px;
 }
}
body.product ul.list__product-info > li .top .head .link {
 margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info > li .top .head .link {
  max-width: calc(100% - 50px);
  width: 100%;
  min-width: auto;
  margin-top: 12px;
 }
}
body.product ul.list__product-info > li .btm p {
 font-size: 14px;
 font-size: 1.4rem;
 font-weight: 400;
 line-height: 1.75;
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info > li .btm {
  display: none;
 }
}
body.product ul.list__product-info > li.isNew:after {
 content: "NEW ITEM";
 background: #e60012;
 font-size: 10px;
 font-size: 1rem;
 font-family: "Open Sans", sans-serif;
 color: #fff;
 position: absolute;
 top: 0;
 left: 0;
 width: 150px;
 height: 30px;
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info > li.isNew:after {
  content: "NEW";
  width: 60px;
  height: 18px;
 }
}
body.product ul.list__product-info > li.isMain:after {
 content: "MAIN ITEM";
 background: #e60012;
 font-size: 10px;
 font-size: 1rem;
 font-family: "Open Sans", sans-serif;
 color: #fff;
 position: absolute;
 top: 0;
 left: 0;
 width: 150px;
 height: 30px;
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
}
@media only screen and (max-width: 767px) {
 body.product ul.list__product-info > li.isMain:after {
  content: "NEW";
  width: 60px;
  height: 18px;
 }
}

body.product .tbl-container {
 width: 100%;
}
@media only screen and (max-width: 767px) {
 body.product .tbl-container {
  overflow: scroll;
 }
}

body.product.title-image .title__product-info img {
 width: 268px;
}

body.product.title-image .list__product-info .head h3 img {
 width: 160px;
}

body.product.wide-image .list__product-info li .top .image {
 max-width: 200px;
 padding: 0;
}

body.product.square-thumbs .list__product-info li .top .image {
 max-width: 120px;
}
body.product.square-thumbs .list__product-info li .top .image.thumbs-150 {
 max-width: 150px;
}
@media only screen and (max-width: 767px) {
 body.product.square-thumbs .list__product-info li .top .image {
  padding: 0;
 }
}

body.product.title-short .title__product {
 margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
 body.product.title-short .title__product {
  margin-bottom: 35px;
 }
}

.breadcrumb {
 padding: 10px 0;
 position: relative;
 z-index: 99;
}
@media only screen and (max-width: 767px) {
 .breadcrumb {
  padding: 6px 0;
  line-height: 1.4;
 }
}
.breadcrumb .inner span,
.breadcrumb .inner a {
 padding: 0 28px 0 0;
 display: inline-block;
 font-size: 12px;
 font-size: 1.2rem;
 color: #4d4d4d;
}
.breadcrumb .inner span:last-child,
.breadcrumb .inner a:last-child {
 padding: 0;
}
.breadcrumb .inner a {
 position: relative;
}
@media only screen and (min-width: 768px) {
 .breadcrumb .inner a {
  transition: opacity 0.3s;
 }
 .breadcrumb .inner a:hover {
  opacity: 0.6;
 }
}
.breadcrumb .inner a:after {
 content: "";
 display: block;
 width: 8px;
 height: 12px;
 background: url(../images/common/arrow-grey.svg) center/8px 12px no-repeat;
 position: absolute;
 top: 1px;
 right: -6px;
 margin-right: 14px;
}
@media all and (-ms-high-contrast: none) {
 .breadcrumb .inner *::-ms-backdrop,
 .breadcrumb .inner a:after {
  top: -2px;
 }
}

.btn--red {
 font-size: 14px;
 font-size: 1.4rem;
 color: #fff;
 display: block;
 background: #e60012;
 width: 210px;
 text-align: center;
 border-radius: 4px;
 padding: 8px 0;
}
@media only screen and (min-width: 768px) {
 .btn--red {
  transition: opacity 0.3s;
 }
 .btn--red:hover {
  opacity: 0.6;
 }
}
@media only screen and (max-width: 767px) {
 .btn--red {
  border-radius: 6px;
 }
}

@media only screen and (min-width: 768px) {
 .btn--ml {
  margin-left: 20px;
 }
}

@media only screen and (max-width: 767px) {
 .btnurl {
  margin-top: 12px;
 }
}

@media all and (-ms-high-contrast: none) {
 *::-ms-backdrop,
 .btn--red {
  padding: 12px 0 4px 0;
 }
}

.title--container .txt {
 font-size: 16px;
 font-size: 1.6rem;
 letter-spacing: -0.04em;
 line-height: 1.75;
 margin-top: 20px;
}
@media only screen and (max-width: 767px) {
 .title--container .txt {
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 16px;
 }
}

.title--topsec {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-direction: column;
 flex-direction: column;
}
.title--topsec .en {
 font-family: "Open Sans", sans-serif;
 font-size: 54.51px;
 font-size: 5.451rem;
 font-weight: 300;
 padding-bottom: 5px;
 margin-bottom: 10px;
 border-bottom: 1px solid #e60012;
}
@media only screen and (max-width: 767px) {
 .title--topsec .en {
  font-size: 38px;
  font-size: 3.8rem;
 }
}
.title--topsec .en:after {
 content: "";
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 10px 4px 0 4px;
 border-color: #e60012 transparent transparent transparent;
 display: inline-block;
 margin: 0 7px;
 position: relative;
 top: -8px;
}
@media only screen and (max-width: 767px) {
 .title--topsec .en:after {
  border-width: 8px 3px 0 3px;
  top: -6px;
 }
}
.title--topsec .ja {
 font-family: "Sawarabi Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
  "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
 font-size: 35px;
 font-size: 3.5rem;
 letter-spacing: 0.11em;
 font-weight: 600;
}
@media only screen and (max-width: 767px) {
 .title--topsec .ja {
  font-size: 24px;
  font-size: 2.4rem;
 }
}
@media only screen and (min-width: 768px) {
 .title--topsec .ja img {
  height: 32px;
 }
}
@media only screen and (max-width: 767px) {
 .title--topsec .ja img {
  height: 22px;
 }
}

.title__product {
 text-align: center;
 margin-top: 50px;
 margin-bottom: 90px;
}
@media only screen and (max-width: 767px) {
 .title__product {
  margin: 25px 0 35px;
 }
}
.title__product span {
 display: block;
}
.title__product--type {
 font-size: 25px;
 font-size: 2.5rem;
 font-weight: 600;
 letter-spacing: -0.04em;
 color: #e60012;
 margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
 .title__product--type {
  font-size: 18px;
  font-size: 1.8rem;
  margin-bottom: 12px;
 }
}
.title__product--main {
 font-size: 40px;
 font-size: 4rem;
 font-weight: 600;
 letter-spacing: -0.04em;
 color: #4d4d4d;
}
@media only screen and (max-width: 767px) {
 .title__product--main {
  font-size: 30px;
  font-size: 3rem;
 }
}

.title__product-info {
 font-size: 32px;
 font-size: 3.2rem;
 font-weight: 600;
 text-align: center;
 margin-bottom: 35px;
 line-height: 1.5;
}
@media only screen and (max-width: 767px) {
 .title__product-info {
  font-size: 20px;
  font-size: 2rem;
 }
}

.title__cat {
 color: #e60012;
 border: 1px solid #e60012;
 font-size: 20px;
 font-size: 2rem;
 font-weight: 600;
 min-width: 140px;
 padding: 0 8px;
 display: -webkit-inline-flex;
 display: inline-flex;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
 height: 50px;
 margin-bottom: 38px;
}
@media only screen and (max-width: 767px) {
 .title__cat {
  min-width: 200px;
  height: 50px;
  font-size: 18px;
  font-size: 1.8rem;
  margin-bottom: 20px;
 }
}
.title__cat _:lang(x)::-ms-backdrop,
.title__cat {
 padding-top: 6px;
}

.title__subpage {
 text-align: center;
 padding: 80px 0 0;
}
@media only screen and (max-width: 767px) {
 .title__subpage {
  padding: 34px 0 0;
 }
}
.title__subpage--ja,
.title__subpage--en {
 display: block;
 line-height: 1.4;
}
.title__subpage--ja {
 font-size: 40px;
 font-size: 4rem;
 letter-spacing: -0.04em;
}
@media only screen and (max-width: 767px) {
 .title__subpage--ja {
  font-size: 30px;
  font-size: 3rem;
 }
}
.title__subpage--en {
 font-family: "Open Sans", sans-serif;
 font-size: 18px;
 font-size: 1.8rem;
 letter-spacing: 0.02em;
 font-style: italic;
 color: #e60012;
 font-weight: 300;
}
@media only screen and (max-width: 767px) {
 .title__subpage--en {
  font-size: 12px;
  font-size: 1.2rem;
 }
}

.title__subpage-barrel {
 padding: 60px 0 0;
}
@media only screen and (max-width: 767px) {
 .title__subpage-barrel {
  padding: 30px 0 0;
 }
}
.title__subpage-barrel span {
 display: block;
}
.title__subpage-barrel--label {
 color: #fff;
 background: #e60012;
 font-weight: bold;
 font-size: 14px;
 font-size: 1.4rem;
 max-width: 140px;
 margin: 0 auto;
 text-align: center;
 padding: 9px 0;
}
@media only screen and (max-width: 767px) {
 .title__subpage-barrel--label {
  font-size: 16px;
  font-size: 1.6rem;
 }
}
.title__subpage-barrel--label.large {
 max-width: 150px;
}
@media only screen and (max-width: 767px) {
 .title__subpage-barrel--label.large {
  max-width: 180px;
 }
}
.title__subpage-barrel--label.large-250 {
 max-width: 250px;
}
@media only screen and (max-width: 767px) {
 .title__subpage-barrel--label.large-250 {
  max-width: 275px;
 }
}
.title__subpage-barrel--label _:lang(x)::-ms-backdrop,
.title__subpage-barrel--label {
 padding: 12px 0 6px;
}
.title__subpage-barrel--text {
 font-size: 40px;
 font-size: 4rem;
 font-weight: bold;
 padding: 26px 0 0;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 .title__subpage-barrel--text {
  font-size: 30px;
  font-size: 3rem;
  padding: 16px 0 0;
 }
}

.link {
 margin-bottom: 8px;
 text-decoration: none;
 transition: all 0.3s;
 display: -webkit-inline-flex;
 display: inline-flex;
}
.link--red,
.link--grey {
 color: #fff;
 border-radius: 5px;
 min-width: 210px;
 height: 30px;
 font-size: 14px;
 font-size: 1.4rem;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
}
.link--red _:lang(x)::-ms-backdrop,
.link--red,
.link--grey _:lang(x)::-ms-backdrop,
.link--grey {
 padding: 3px 10px 0;
}
.link--grey {
 background-color: #706f6f;
}
.link--grey:hover {
 background-color: #e60012;
}
.link--red {
 background-color: #e60012;
}
@media only screen and (min-width: 768px) {
 .link--red {
  height: 40px;
  min-width: 200px;
 }
}
.link--red:hover {
 opacity: 0.6;
}
.link--red--outline {
 color: #e60012;
 border: 1px solid #e60012;
 background: none;
 margin-top: 10px;
}
.link--outline {
 color: #4d4d4d;
 border: 1px solid #e60012;
 border-radius: 15px;
 width: 100%;
 height: 30px;
 font-size: 14px;
 font-size: 1.4rem;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
}
.en-page .link--outline {
 font-size: 12px;
 font-size: 1.2rem;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 .link--outline {
  height: 28px;
 }
}
@media only screen and (max-width: 320px) {
 .link--outline {
  font-size: 11.5px;
  font-size: 1.15rem;
 }
}
.link--outline _:lang(x)::-ms-backdrop,
.link--outline {
 padding-top: 5px;
}
.link--outline:hover {
 background-color: #e60012;
 color: #fff;
}
.link--txt {
 font-size: 16px;
 font-size: 1.6rem;
 color: #e60012;
 position: relative;
 padding-right: 10px;
 line-height: 30px;
}
.link--txt:after {
 content: "";
 position: absolute;
 top: 50%;
 right: 0;
 border-top: 1px solid #e60012;
 border-right: 1px solid #e60012;
 width: 10px;
 height: 10px;
 display: block;
 -webkit-transform: rotateZ(45deg) translateY(-50%);
 -moz-transform: rotateZ(45deg) translateY(-50%);
 -ms-transform: rotateZ(45deg) translateY(-50%);
 -o-transform: rotateZ(45deg) translateY(-50%);
 transform: rotateZ(45deg) translateY(-50%);
}
.link--txt:hover {
 opacity: 0.6;
}
.link--img {
 border-top: 2px solid #e1e1e1;
 border-bottom: 2px solid #e1e1e1;
 padding-left: 5px;
 position: relative;
 margin-bottom: 26px;
}
@media only screen and (max-width: 767px) {
 .link--img {
  padding-left: 2px;
  margin-bottom: 15px;
 }
}
.link--img:before {
 content: "";
 width: 5px;
 background-color: #e60012;
 position: absolute;
 left: 0;
 top: -2px;
 bottom: -2px;
}
@media only screen and (max-width: 767px) {
 .link--img:before {
  width: 2px;
 }
}
.link--img .img-wrapper {
 width: 100px;
 display: flex;
 justify-content: center;
 align-items: center;
}
@media only screen and (max-width: 767px) {
 .link--img .img-wrapper {
  width: 48px;
 }
}
.link--img img {
 display: block;
 width: 100%;
 height: auto;
}
.link--img .txt {
 padding: 0 15px;
 font-weight: 600;
 font-size: 20px;
 font-size: 2rem;
 color: #333;
 background: #f0f0f0;
 display: -webkit-flex;
 display: flex;
 align-items: center;
 width: calc(100% - 100px);
 -webkit-transition: opacity 0.3s;
 -moz-transition: opacity 0.3s;
 -o-transition: opacity 0.3s;
 transition: opacity 0.3s;
 line-height: 1.3;
}
@media only screen and (max-width: 767px) {
 .link--img .txt {
  font-size: 12px;
  font-size: 1.2rem;
  padding: 0 7px;
  width: calc(100% - 48px);
 }
}
.link--img .txt _:lang(x)::-ms-backdrop,
.link--img .txt {
 padding-top: 5px;
}
@media only screen and (max-width: 320px) {
 .link--img .txt {
  font-size: 10px;
  font-size: 1rem;
 }
}
.link--img .txt:hover {
 opacity: 0.6;
}

.more-link {
 color: #e60012;
 display: inline-block;
 padding: 0 22px 0 0;
 position: relative;
}
@media only screen and (min-width: 768px) {
 .more-link {
  transition: opacity 0.3s;
 }
 .more-link:hover {
  opacity: 0.6;
 }
}
@media only screen and (max-width: 767px) {
 .more-link {
  padding-right: 16px;
 }
}
.more-link:before {
 content: "";
 display: block;
 position: absolute;
 top: 50%;
 right: 0;
 -webkit-transform: translateY(-50%);
 -moz-transform: translateY(-50%);
 -ms-transform: translateY(-50%);
 -o-transform: translateY(-50%);
 transform: translateY(-50%);
 width: 11px;
 height: 18px;
 background: url(../images/common/arrow-red.svg) center right/11px 18px
  no-repeat;
}
@media only screen and (max-width: 767px) {
 .more-link:before {
  width: 8px;
  height: 12px;
  background-size: 8px 12px;
 }
}

@media all and (-ms-high-contrast: none) {
 *::-ms-backdrop,
 .more-link:before {
  top: 34%;
 }
}

@media only screen and (max-width: 767px) {
 .en-page .more-link:before {
  top: calc(50% + 1px);
 }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
 .en-page
  .barrel-expendables
  section.barrel-expendables
  .inner
  .barrel-expendables-detail
  .col
  .text-link:before {
  top: 42%;
 }
}

@media only screen and (max-width: 767px) {
 body.subpage .mv-txt {
  padding: 0;
 }
}

.preloader {
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
 top: 0;
 left: 0;
 position: absolute;
 width: 100%;
 height: 100vh;
 z-index: 1001;
 overflow: hidden;
}
.preloader .cover {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100vh;
 background: #fff;
 z-index: 1;
 -webkit-transition: left 1s 1s;
 -webkit-transition-delay: cubic-bezier(0.39, 0.575, 0.565, 1);
 -moz-transition: left 1s 1s cubic-bezier(0.39, 0.575, 0.565, 1);
 -o-transition: left 1s 1s cubic-bezier(0.39, 0.575, 0.565, 1);
 transition: left 1s 1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.preloader .cover:after {
 content: "";
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 100vh 50vw 0 0;
 border-color: #fff transparent transparent transparent;
 position: absolute;
 top: 0;
 right: -50%;
}
.preloader .container {
 position: relative;
 z-index: 2;
}
.preloader .container .logo {
 -webkit-transition: opacity 0.3s 0.8s;
 -webkit-transition-delay: cubic-bezier(0.39, 0.575, 0.565, 1);
 -moz-transition: opacity 0.3s 0.8s cubic-bezier(0.39, 0.575, 0.565, 1);
 -o-transition: opacity 0.3s 0.8s cubic-bezier(0.39, 0.575, 0.565, 1);
 transition: opacity 0.3s 0.8s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media only screen and (max-width: 767px) {
 .preloader .container .logo {
  width: 100px;
 }
}
.preloader .container .txt,
.preloader .container .txt-progress {
 font-size: 16px;
 font-size: 1.6rem;
 color: #cdcdcd;
 text-align: center;
 line-height: 1.75;
 -webkit-transition: opacity 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
 -moz-transition: opacity 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
 -o-transition: opacity 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
 transition: opacity 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media only screen and (max-width: 767px) {
 .preloader .container .txt,
 .preloader .container .txt-progress {
  font-size: 14px;
  font-size: 1.4rem;
 }
}
.preloader.swipeOut .txt,
.preloader.swipeOut .txt-progress {
 opacity: 0;
}
.preloader.swipeOut .cover {
 left: -150%;
}
.preloader.swipeOut .container .logo {
 opacity: 0;
}

.simplebar-track .simplebar-scrollbar.simplebar-visible:before {
 opacity: 1;
 background: rgba(0, 0, 0, 0.2);
}

.star-container {
 position: relative;
 width: 85px;
}
.star-container div {
 width: 100%;
 display: block;
 white-space: nowrap;
}
.star-container div.foundation {
 padding: 0;
}
.star-container div.rating {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 overflow: hidden;
}
.star-container div .star {
 display: inline-block;
 width: calc(85px / 5);
 font-size: 14px;
 font-size: 1.4rem;
}

.star-container[data-rating="1"] .rating {
 width: calc((10% * 1));
}

.star-container[data-rating="2"] .rating {
 width: calc((10% * 2));
}

.star-container[data-rating="3"] .rating {
 width: calc((10% * 3));
}

.star-container[data-rating="4"] .rating {
 width: calc((10% * 4));
}

.star-container[data-rating="5"] .rating {
 width: calc((10% * 5));
}

.star-container[data-rating="6"] .rating {
 width: calc((10% * 6));
}

.star-container[data-rating="7"] .rating {
 width: calc((10% * 7));
}

.star-container[data-rating="8"] .rating {
 width: calc((10% * 8));
}

.star-container[data-rating="9"] .rating {
 width: calc((10% * 9));
}

.star-container[data-rating="10"] .rating {
 width: calc((10% * 10));
}

.sub-header {
 background: #4d4d4d;
 position: fixed;
 width: 100%;
 top: 100px;
 left: 0;
 padding: 12px 0;
 z-index: 100;
}
.sub-header _:lang(x)::-ms-backdrop,
.sub-header {
 padding: 15px 0 9px;
}
@media only screen and (max-width: 767px) {
 .sub-header {
  top: 47px;
  padding: 12px 0 0;
 }
}
.sub-header .inner {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
 -webkit-align-items: center;
 align-items: center;
}
@media only screen and (min-width: 768px) {
 .sub-header .inner .page-title {
  pointer-events: none;
 }
}
@media only screen and (max-width: 767px) {
 .sub-header .inner .page-title {
  width: 100%;
  padding: 0 0 12px 0;
  position: relative;
 }
 .sub-header .inner .page-title:after {
  content: "";
  display: block;
  position: absolute;
  top: 10%;
  right: 0;
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
  width: 18px;
  height: 10px;
  background: url(../images/common/arrow-white.svg) center/18px 10px no-repeat;
 }
 .sub-header .inner .page-title.opened:after {
  -webkit-transform: rotate(0);
  -moz-transform: rotate(0);
  -ms-transform: rotate(0);
  -o-transform: rotate(0);
  transform: rotate(0);
 }
}
.sub-header .inner .page-title h1,
.sub-header .inner .page-title p {
 font-size: 16px;
 font-size: 1.6rem;
 font-weight: bold;
 letter-spacing: -0.04em;
 color: #fff;
}
@media only screen and (max-width: 767px) {
 .sub-header .inner .page-title h1,
 .sub-header .inner .page-title p {
  font-size: 15px;
  font-size: 1.5rem;
 }
}
@media only screen and (max-width: 767px) {
 .sub-header .inner nav {
  width: 100%;
  display: none;
 }
}
.sub-header .inner nav ul {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
 .sub-header .inner nav ul li {
  width: 100%;
  border-top: 1px solid #fff;
 }
}
@media only screen and (max-width: 767px) {
 .sub-header .inner nav ul li:first-child {
  border: none;
 }
}
.sub-header .inner nav ul li a,
.sub-header .inner nav ul li span {
 font-size: 14px;
 font-size: 1.4rem;
 font-weight: bold;
 letter-spacing: -0.04em;
 color: #fff;
 padding: 0 24px;
}
@media only screen and (min-width: 768px) {
 .sub-header .inner nav ul li a,
 .sub-header .inner nav ul li span {
  transition: opacity 0.3s;
 }
 .sub-header .inner nav ul li a:hover,
 .sub-header .inner nav ul li span:hover {
  opacity: 0.6;
 }
}
@media only screen and (max-width: 1200px) {
 .sub-header .inner nav ul li a,
 .sub-header .inner nav ul li span {
  padding: 0 15px;
 }
}
@media only screen and (max-width: 915px) {
 .sub-header .inner nav ul li a,
 .sub-header .inner nav ul li span {
  padding: 0 10px;
  font-size: 12px;
  font-size: 1.2rem;
 }
}
@media only screen and (max-width: 767px) {
 .sub-header .inner nav ul li a,
 .sub-header .inner nav ul li span {
  font-size: 14px;
  font-size: 1.4rem;
  padding: 19px 0;
  position: relative;
  width: 100%;
  display: block;
 }
}
@media only screen and (max-width: 767px) {
 .sub-header .inner nav ul li a:after,
 .sub-header .inner nav ul li span:after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 10px;
  border-color: transparent transparent transparent #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 11px;
 }
}
.sub-header .inner nav ul li a.current,
.sub-header .inner nav ul li span.current {
 opacity: 0.5;
 pointer-events: none;
}
@media only screen and (max-width: 767px) {
 .sub-header .inner nav ul li a.current:after,
 .sub-header .inner nav ul li span.current:after {
  display: none;
 }
}
.sub-header .inner nav ul li:last-child a,
.sub-header .inner nav ul li:last-child span {
 padding: 0 0 0 24px;
}
@media only screen and (max-width: 767px) {
 .sub-header .inner nav ul li:last-child a,
 .sub-header .inner nav ul li:last-child span {
  padding: 19px 0;
 }
}
@media only screen and (min-width: 768px) {
 body.company .sub-header .page-title {
  display: none;
 }
 body.company .sub-header nav {
  width: 100%;
 }
 body.company .sub-header nav ul {
  width: 100%;
  padding: 0 70px;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
 }
}

@media only screen and (max-width: 767px) {
 .table-wrapper {
  width: 100%;
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
 }
}

.table__row {
 margin-bottom: 10px;
 padding-bottom: 10px;
 display: -webkit-flex;
 display: flex;
 border-bottom: 2px solid #e1e1e1;
}
@media only screen and (max-width: 767px) {
 .table__row {
  -webkit-flex-direction: column;
  flex-direction: column;
  border: none;
  margin: 0;
  padding: 0;
 }
}
.table__row--title,
.table__row--content {
 line-height: 1.875;
 font-size: 16px;
 font-size: 1.6rem;
}
.table__row--title {
 background: #f0f0f0;
 -webkit-flex: 0 0 106px;
 flex: 0 0 106px;
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
 margin-right: 30px;
 font-weight: 600;
 min-height: 106px;
}
@media only screen and (max-width: 767px) {
 .table__row--title {
  margin-right: 0;
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: 6px 0;
  min-height: auto;
 }
}
.table__row--content {
 padding: 20px 0;
 -webkit-flex: 1 1 auto;
 flex: 1 1 auto;
}
@media only screen and (max-width: 767px) {
 .table__row--content {
  padding: 12px 0;
 }
}
.table__row--content .data-list {
 width: 100%;
}
.table__row--content .data-list li {
 display: -webkit-flex;
 display: flex;
 width: 100%;
}
.table__row--content .data-list li span:nth-child(-n + 1) {
 -webkit-flex: 0 0 140px;
 flex: 0 0 140px;
}
.table__row--content .data-list-2col {
 width: 440px;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
 .table__row--content .data-list-2col {
  width: 100%;
 }
}
.table__row--content .data-list-2col li {
 width: 50%;
}
@media only screen and (max-width: 767px) {
 .table__row--content .data-list-2col li {
  width: 100%;
 }
}
.table__row--content .data-list-2col li span:nth-child(-n + 1) {
 -webkit-flex: 0 0 auto;
 flex: 0 0 auto;
 margin-right: 8px;
}
@media only screen and (max-width: 767px) {
 .table__row--content .data-list-2col li span:nth-child(-n + 1) {
  -webkit-flex: 0 0 125px;
  flex: 0 0 125px;
 }
}

table span.red {
 color: #e60012;
}

table span.bold {
 font-weight: 600;
}

@media only screen and (min-width: 768px) {
 body.profile .table__row--title {
  margin-right: 100px;
  flex: 0 0 300px;
 }
}

body.profile .table__row--content {
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
}

/* Z-INDEX */
.formError {
 z-index: 990;
}

.formError .formErrorContent {
 z-index: 991;
}

.formError .formErrorArrow {
 z-index: 996;
}

.ui-dialog .formError {
 z-index: 5000;
}

.ui-dialog .formError .formErrorContent {
 z-index: 5001;
}

.ui-dialog .formError .formErrorArrow {
 z-index: 5006;
}

.inputContainer {
 position: relative;
 float: left;
}

.formError {
 position: absolute;
 top: 300px;
 left: 300px;
 display: block;
 cursor: pointer;
 text-align: left;
}

.formError.inline {
 position: relative;
 top: 0;
 left: 0;
 display: inline-block;
}

.ajaxSubmit {
 padding: 20px;
 background: #55ea55;
 border: 1px solid #999;
 display: none;
}

.formError .formErrorContent {
 width: 100%;
 background: #ee0101;
 position: relative;
 color: #fff;
 min-width: 120px;
 font-size: 11px;
 border: 2px solid #ddd;
 box-shadow: 0 0 6px #000;
 -moz-box-shadow: 0 0 6px #000;
 -webkit-box-shadow: 0 0 6px #000;
 -o-box-shadow: 0 0 6px #000;
 padding: 4px 10px 4px 10px;
 border-radius: 6px;
 -moz-border-radius: 6px;
 -webkit-border-radius: 6px;
 -o-border-radius: 6px;
}

.formError.inline .formErrorContent {
 box-shadow: none;
 -moz-box-shadow: none;
 -webkit-box-shadow: none;
 -o-box-shadow: none;
 border: none;
 border-radius: 0;
 -moz-border-radius: 0;
 -webkit-border-radius: 0;
 -o-border-radius: 0;
}

.greenPopup .formErrorContent {
 background: #33be40;
}

.blackPopup .formErrorContent {
 background: #393939;
 color: #fff;
}

.formError .formErrorArrow {
 width: 15px;
 margin: -2px 0 0 13px;
 position: relative;
}

body[dir="rtl"] .formError .formErrorArrow,
body.rtl .formError .formErrorArrow {
 margin: -2px 13px 0 0;
}

.formError .formErrorArrowBottom {
 box-shadow: none;
 -moz-box-shadow: none;
 -webkit-box-shadow: none;
 -o-box-shadow: none;
 margin: 0px 0 0 12px;
 top: 2px;
}

.formError .formErrorArrow div {
 border-left: 2px solid #ddd;
 border-right: 2px solid #ddd;
 box-shadow: 0 2px 3px #444;
 -moz-box-shadow: 0 2px 3px #444;
 -webkit-box-shadow: 0 2px 3px #444;
 -o-box-shadow: 0 2px 3px #444;
 font-size: 0px;
 height: 1px;
 background: #ee0101;
 margin: 0 auto;
 line-height: 0;
 font-size: 0;
 display: block;
}

.formError .formErrorArrowBottom div {
 box-shadow: none;
 -moz-box-shadow: none;
 -webkit-box-shadow: none;
 -o-box-shadow: none;
}

.greenPopup .formErrorArrow div {
 background: #33be40;
}

.blackPopup .formErrorArrow div {
 background: #393939;
 color: #fff;
}

.formError .formErrorArrow .line10 {
 width: 13px;
 border: none;
}

.formError .formErrorArrow .line9 {
 width: 11px;
 border: none;
}

.formError .formErrorArrow .line8 {
 width: 11px;
}

.formError .formErrorArrow .line7 {
 width: 9px;
}

.formError .formErrorArrow .line6 {
 width: 7px;
}

.formError .formErrorArrow .line5 {
 width: 5px;
}

.formError .formErrorArrow .line4 {
 width: 3px;
}

.formError .formErrorArrow .line3 {
 width: 1px;
 border-left: 2px solid #ddd;
 border-right: 2px solid #ddd;
 border-bottom: 0 solid #ddd;
}

.formError .formErrorArrow .line2 {
 width: 3px;
 border: none;
 background: #ddd;
}

.formError .formErrorArrow .line1 {
 width: 1px;
 border: none;
 background: #ddd;
}

body.notfound main {
 padding: 0 0 130px;
}
@media only screen and (max-width: 767px) {
 body.notfound main {
  padding: 0 0 65px;
 }
}

body.notfound h1 {
 margin-top: 110px;
 margin-bottom: 30px;
 text-align: center;
 padding: 0 20px;
}
@media only screen and (max-width: 767px) {
 body.notfound h1 {
  margin-top: 35px;
  text-align: left;
  margin-bottom: 16px;
 }
}
body.notfound h1 span {
 font-weight: 600;
 display: inline-block;
}
body.notfound h1 span.four04 {
 font-size: 49.4px;
 font-size: 4.94rem;
 margin-right: 10px;
}
@media only screen and (max-width: 767px) {
 body.notfound h1 span.four04 {
  font-size: 25px;
  font-size: 2.5rem;
  margin-right: 5px;
 }
}
body.notfound h1 span.not-found {
 font-size: 40px;
 font-size: 4rem;
 color: #e60012;
}
@media only screen and (max-width: 767px) {
 body.notfound h1 span.not-found {
  font-size: 20px;
  font-size: 2rem;
 }
}

body.notfound .txt {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 2;
 text-align: center;
 margin-bottom: 75px;
}
@media only screen and (max-width: 767px) {
 body.notfound .txt {
  margin-bottom: 45px;
  text-align: left;
  font-size: 14px;
  font-size: 1.4rem;
 }
}

body.notfound .link {
 max-width: 300px;
 height: 50px;
 color: #fff;
 background: #e60012;
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
 margin: 0 auto;
 font-size: 16px;
 font-size: 1.6rem;
 font-weight: 600;
}
@media only screen and (max-width: 767px) {
 body.notfound .link {
  max-width: 305px;
 }
}

body.barrel-compound section.barrel-compound {
 padding: 90px 0 100px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-compound section.barrel-compound {
  padding: 36px 0 65px 0;
 }
}
body.barrel-compound section.barrel-compound .inner .catch {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
}
body.barrel-compound section.barrel-compound .inner .compound {
 padding: 50px 0 10px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-compound section.barrel-compound .inner .compound {
  padding: 30px 0 0 0;
 }
}
body.barrel-compound section.barrel-compound .inner .compound h3 {
 font-size: 20px;
 font-size: 2rem;
 color: #fff;
 text-align: center;
 background: #4d4d4d;
 padding: 12px 0;
}
body.barrel-compound
 section.barrel-compound
 .inner
 .compound
 h3
 _:lang(x)::-ms-backdrop,
body.barrel-compound section.barrel-compound .inner .compound h3 {
 padding: 15px 0 9px;
}
body.barrel-compound section.barrel-compound .inner .compound__action {
 background: #f0f0f0;
 padding: 40px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-compound section.barrel-compound .inner .compound__action {
  padding: 20px;
 }
}
body.barrel-compound section.barrel-compound .inner .compound__action__inner {
 max-width: 500px;
 margin: 0 auto;
}
body.barrel-compound
 section.barrel-compound
 .inner
 .compound__action__inner
 .title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 padding: 4px 0 0;
 margin-bottom: 8px;
}
@media only screen and (max-width: 767px) {
 body.barrel-compound
  section.barrel-compound
  .inner
  .compound__action__inner
  .title {
  padding: 10px 0 0;
 }
}
body.barrel-compound
 section.barrel-compound
 .inner
 .compound__action__inner
 .text {
 line-height: 1.875;
 font-size: 16px;
 font-size: 1.6rem;
 margin-bottom: 6px;
}
body.barrel-compound
 section.barrel-compound
 .inner
 .compound__action__inner
 .text:last-child {
 margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-compound
  section.barrel-compound
  .inner
  .compound__action__inner
  .text {
  padding: 8px 0 0;
 }
}
@media only screen and (min-width: 768px) {
 body.barrel-compound section.barrel-compound .inner .compound__item {
  padding: 40px 0 0;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel-compound section.barrel-compound .inner .compound__item {
  padding: 20px 0 0;
 }
}
body.barrel-compound section.barrel-compound .inner .compound__item img {
 width: 100%;
 display: block;
}
body.barrel-compound section.barrel-compound .inner .compound__merit {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
 margin: 40px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-compound section.barrel-compound .inner .compound__merit {
  margin: 20px 0 0;
 }
}
body.barrel-compound section.barrel-compound .inner .compound__merit__item {
 width: 48%;
}
@media only screen and (max-width: 767px) {
 body.barrel-compound section.barrel-compound .inner .compound__merit__item {
  width: 100%;
 }
}
body.barrel-compound
 section.barrel-compound
 .inner
 .compound__merit__item
 .title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 background: #e1e1e1;
 text-align: center;
 padding: 12px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-compound
  section.barrel-compound
  .inner
  .compound__merit__item
  .title {
  padding: 10px 0;
 }
}
body.barrel-compound
 section.barrel-compound
 .inner
 .compound__merit__item
 .title
 _:lang(x)::-ms-backdrop,
body.barrel-compound
 section.barrel-compound
 .inner
 .compound__merit__item
 .title {
 padding: 16px 0 8px;
}
body.barrel-compound
 section.barrel-compound
 .inner
 .compound__merit__item
 .text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
 padding: 14px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-compound
  section.barrel-compound
  .inner
  .compound__merit__item
  .text {
  padding: 10px 0 30px 0;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel-compound
  section.barrel-compound
  .inner
  .compound__merit__item:last-child
  .text {
  padding: 10px 0 0 0;
 }
}

body.barrel-expendables .expendables-mv {
 max-width: 1500px;
 margin: 0 auto;
 width: 100%;
 position: relative;
 top: -36px;
}
body.barrel-expendables .expendables-mv img:not(.mv-txt) {
 width: 65%;
 display: block;
 margin: 0 0 0 auto;
}
@media only screen and (max-width: 767px) {
 body.barrel-expendables .expendables-mv img:not(.mv-txt) {
  width: 100%;
  margin: auto;
 }
}
@media only screen and (min-width: 1500px) {
 body.barrel-expendables .expendables-mv > .pc {
  display: none !important;
 }
}
@media only screen and (max-width: 1499px) {
 body.barrel-expendables .expendables-mv .pc-1500 {
  display: none !important;
 }
}
@media only screen and (min-width: 1500px) {
 body.barrel-expendables .expendables-mv .pc-1500 {
  display: block !important;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel-expendables .expendables-mv {
  background: none;
  height: auto;
  top: auto;
 }
}
body.barrel-expendables .expendables-mv--text {
 -webkit-transition: opacity 1s;
 -webkit-transition-delay: 1.2s;
 -moz-transition: opacity 1s 1.2s;
 -o-transition: opacity 1s 1.2s;
 transition: opacity 1s 1.2s;
}
@media only screen and (min-width: 768px) {
 body.barrel-expendables .expendables-mv--text {
  position: absolute;
  top: 47%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
 }
}
@media only screen and (min-width: 1500px) {
 body.barrel-expendables .expendables-mv--text {
  top: 53%;
 }
}
body.barrel-expendables .expendables-mv--text h2 {
 border-radius: 10px;
 font-family: "Sawarabi Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
  "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
 font-size: 34px;
 font-size: 3.4rem;
 letter-spacing: 0.04em;
 line-height: 1.47058823;
 display: inline-block;
}
@media only screen and (min-width: 768px) {
 body.barrel-expendables .expendables-mv--text h2 {
  background-color: #fff;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel-expendables .expendables-mv--text h2 {
  font-size: 25px;
  font-size: 2.5rem;
  padding: 20px 0 20px 26px;
  max-width: 270px;
 }
}
@media only screen and (max-width: 320px) {
 body.barrel-expendables .expendables-mv--text h2 {
  font-size: 20px;
  font-size: 2rem;
 }
}

body.barrel-expendables section.barrel-expendables {
 padding: 0 0 150px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-expendables section.barrel-expendables {
  padding: 20px 0 60px 0;
 }
}
body.barrel-expendables
 section.barrel-expendables
 .inner
 .barrel-expendables-detail
 .col {
 margin: 80px 0 0;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
 -webkit-align-items: center;
 align-items: center;
}
body.barrel-expendables
 section.barrel-expendables
 .inner
 .barrel-expendables-detail
 .col:first-child {
 margin: 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-expendables
  section.barrel-expendables
  .inner
  .barrel-expendables-detail
  .col {
  margin: 36px 0 0;
 }
}
body.barrel-expendables
 section.barrel-expendables
 .inner
 .barrel-expendables-detail
 .col
 .text {
 width: 49%;
}
@media only screen and (max-width: 767px) {
 body.barrel-expendables
  section.barrel-expendables
  .inner
  .barrel-expendables-detail
  .col
  .text {
  width: 100%;
  -webkit-order: 2;
  order: 2;
  padding: 22px 0 0;
 }
}
body.barrel-expendables
 section.barrel-expendables
 .inner
 .barrel-expendables-detail
 .col
 .text-title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 line-height: 1.75;
}
body.barrel-expendables
 section.barrel-expendables
 .inner
 .barrel-expendables-detail
 .col
 .text-detail {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 padding: 10px 0 0;
 text-align: justify;
}
body.barrel-expendables
 section.barrel-expendables
 .inner
 .barrel-expendables-detail
 .col
 .text-link {
 display: inline-block;
 color: #e60012;
 font-size: 16px;
 font-size: 1.6rem;
 margin: 50px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-expendables
  section.barrel-expendables
  .inner
  .barrel-expendables-detail
  .col
  .text-link {
  margin: 30px 0 0;
 }
}
body.barrel-expendables
 section.barrel-expendables
 .inner
 .barrel-expendables-detail
 .col
 .image {
 width: 48.5%;
}
@media only screen and (max-width: 767px) {
 body.barrel-expendables
  section.barrel-expendables
  .inner
  .barrel-expendables-detail
  .col
  .image {
  width: 100%;
  -webkit-order: 1;
  order: 1;
 }
}
body.barrel-expendables
 section.barrel-expendables
 .inner
 .barrel-expendables-detail
 .col
 .image
 img {
 display: block;
 width: 100%;
}

body.barrel-expendables .banner__item.banner__item--01 {
 background: #fcfcfc url(../images/barrel-expendables/allitems-bg.jpg) right
  center/auto 100% no-repeat;
}
@media only screen and (max-width: 1016px) {
 body.barrel-expendables .banner__item.banner__item--01 {
  background-position: right 47% center;
 }
}
@media (min-width: 410px) and (max-width: 768px) {
 body.barrel-expendables .banner__item.banner__item--01 {
  padding-top: 90%;
  position: relative;
  height: auto;
 }
 body.barrel-expendables .banner__item.banner__item--01 .inner a {
  position: absolute;
  width: 100%;
  top: 5%;
  left: 50%;
  transform: translateX(-50%);
 }
}
@media (min-width: 510px) and (max-width: 768px) {
 body.barrel-expendables .banner__item.banner__item--01 {
  padding-top: 83%;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel-expendables .banner__item.banner__item--01 {
  background: #fcfcfc url(../images/barrel-expendables/allitems-bg-sp.jpg)
   center bottom/100% auto no-repeat;
 }
}

body.barrel-glossary .intro {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: center;
 margin: 90px 0 0;
 padding: 0 20px;
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary .intro {
  margin-top: 36px;
  text-align: left;
 }
}

body.barrel-glossary section.barrel-glossary {
 padding: 94px 0 130px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary section.barrel-glossary {
  padding: 40px 0 60px 0;
 }
}
body.barrel-glossary section.barrel-glossary .inner .links {
 padding: 0 0 90px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary section.barrel-glossary .inner .links {
  padding: 0 0 20px 0;
 }
}
body.barrel-glossary section.barrel-glossary .inner .links ul {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: flex-start;
 justify-content: flex-start;
}
body.barrel-glossary section.barrel-glossary .inner .links ul li {
 margin: 0 0 20px 0;
}
@media only screen and (min-width: 768px) {
 body.barrel-glossary section.barrel-glossary .inner .links ul li {
  width: calc((100% - 120px) / 4);
  margin-right: 40px;
 }
 body.barrel-glossary
  section.barrel-glossary
  .inner
  .links
  ul
  li:nth-child(4n + 4) {
  margin-right: 0;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary section.barrel-glossary .inner .links ul li {
  width: calc((100% - 60px) / 3);
  margin-right: 20px;
 }
 body.barrel-glossary
  section.barrel-glossary
  .inner
  .links
  ul
  li:nth-child(3n + 3) {
  margin-right: 0;
 }
}
body.barrel-glossary section.barrel-glossary .inner .links ul li a {
 width: 100%;
 display: block;
 color: #fff;
 background: #e60012;
 font-weight: bold;
 font-size: 20px;
 font-size: 2rem;
 text-align: center;
 padding: 15px 0;
}
@media only screen and (min-width: 768px) {
 body.barrel-glossary section.barrel-glossary .inner .links ul li a {
  transition: opacity 0.3s;
 }
 body.barrel-glossary section.barrel-glossary .inner .links ul li a:hover {
  opacity: 0.6;
 }
}
body.barrel-glossary
 section.barrel-glossary
 .inner
 .links
 ul
 li
 a
 _:lang(x)::-ms-backdrop,
body.barrel-glossary section.barrel-glossary .inner .links ul li a {
 padding: 18px 0 12px;
}
body.barrel-glossary section.barrel-glossary .inner .glossary {
 border-top: 2px solid #e60012;
 padding: 0 0 68px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary section.barrel-glossary .inner .glossary {
  padding: 0 0 40px 0;
 }
}
body.barrel-glossary section.barrel-glossary .inner .glossary:last-child {
 padding: 0 0 40px 0;
}
body.barrel-glossary section.barrel-glossary .inner .glossary p {
 font-weight: bold;
 font-size: 24px;
 font-size: 2.4rem;
 padding: 18px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary section.barrel-glossary .inner .glossary p {
  padding: 16px 0;
 }
}
body.barrel-glossary
 section.barrel-glossary
 .inner
 .glossary
 p
 _:lang(x)::-ms-backdrop,
body.barrel-glossary section.barrel-glossary .inner .glossary p {
 padding: 22px 0 14px;
}
body.barrel-glossary section.barrel-glossary .inner .glossary table {
 border: 1px solid #b7b7b7;
 width: 100%;
 border-collapse: collapse;
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary section.barrel-glossary .inner .glossary table {
  display: block;
  overflow-x: scroll;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
 }
}
body.barrel-glossary section.barrel-glossary .inner .glossary table thead tr {
 background: #4d4d4d;
}
body.barrel-glossary
 section.barrel-glossary
 .inner
 .glossary
 table
 thead
 tr
 th {
 color: #fff;
 padding: 10px 12px;
 font-size: 16px;
 font-size: 1.6rem;
 border-right: 1px solid #e1e1e1;
 line-height: 1.6;
 vertical-align: top;
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary
  section.barrel-glossary
  .inner
  .glossary
  table
  thead
  tr
  th {
  font-size: 12px;
  font-size: 1.2rem;
  padding: 7px 12px;
 }
}
body.barrel-glossary
 section.barrel-glossary
 .inner
 .glossary
 table
 thead
 tr
 th
 _:lang(x)::-ms-backdrop,
body.barrel-glossary
 section.barrel-glossary
 .inner
 .glossary
 table
 thead
 tr
 th {
 padding: 13px 12px 7px;
}
body.barrel-glossary
 section.barrel-glossary
 .inner
 .glossary
 table
 thead
 tr
 th:first-child {
 width: 25%;
 font-weight: bold;
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary
  section.barrel-glossary
  .inner
  .glossary
  table
  thead
  tr
  th:first-child {
  width: 170px;
 }
}
body.barrel-glossary
 section.barrel-glossary
 .inner
 .glossary
 table
 thead
 tr
 th:last-child {
 width: 75%;
 border-right: none;
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary
  section.barrel-glossary
  .inner
  .glossary
  table
  thead
  tr
  th:last-child {
  width: 515px;
 }
}
body.barrel-glossary section.barrel-glossary .inner .glossary table tbody tr {
 border-top: 1px solid #b7b7b7;
}
body.barrel-glossary
 section.barrel-glossary
 .inner
 .glossary
 table
 tbody
 tr
 td {
 padding: 14px 14px;
 border-right: 1px solid #b7b7b7;
 line-height: 1.4;
 vertical-align: top;
 font-size: 16px;
 font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary
  section.barrel-glossary
  .inner
  .glossary
  table
  tbody
  tr
  td {
  font-size: 12px;
  font-size: 1.2rem;
  padding: 10px 12px;
  border-right: none;
 }
}
body.barrel-glossary
 section.barrel-glossary
 .inner
 .glossary
 table
 tbody
 tr
 td
 _:lang(x)::-ms-backdrop,
body.barrel-glossary
 section.barrel-glossary
 .inner
 .glossary
 table
 tbody
 tr
 td {
 padding: 16px 14px 10px;
}
body.barrel-glossary
 section.barrel-glossary
 .inner
 .glossary
 table
 tbody
 tr
 td
 span {
 font-size: 12px;
 font-size: 1.2rem;
 font-weight: normal;
 display: block;
 padding: 7px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary
  section.barrel-glossary
  .inner
  .glossary
  table
  tbody
  tr
  td
  span {
  font-size: 10px;
  font-size: 1rem;
  padding: 5px 0 0;
 }
}
body.barrel-glossary
 section.barrel-glossary
 .inner
 .glossary
 table
 tbody
 tr
 td:first-child {
 width: 25%;
 font-weight: bold;
 font-size: 18px;
 font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary
  section.barrel-glossary
  .inner
  .glossary
  table
  tbody
  tr
  td:first-child {
  font-size: 12.35px;
  font-size: 1.235rem;
  width: 170px;
  text-align: left;
  padding: 10px 12px;
  display: block;
 }
}
body.barrel-glossary
 section.barrel-glossary
 .inner
 .glossary
 table
 tbody
 tr
 td:last-child {
 width: 75%;
 border-right: none;
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary
  section.barrel-glossary
  .inner
  .glossary
  table
  tbody
  tr
  td:last-child {
  width: 515px;
  border-left: 1px solid #b7b7b7;
 }
}
body.barrel-glossary section.barrel-glossary .inner .glossary .cap {
 color: #e60012;
 display: block;
 text-align: right;
 font-size: 16px;
 font-size: 1.6rem;
 padding: 10px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary section.barrel-glossary .inner .glossary .cap {
  text-align: center;
  padding: 40px 0 0;
 }
}
body.barrel-glossary section.barrel-glossary .btn {
 width: 300px;
 padding: 13px 0;
 margin: 0 auto;
}
@media only screen and (max-width: 767px) {
 body.barrel-glossary section.barrel-glossary .btn {
  width: 225px;
  font-size: 16px;
  font-size: 1.6rem;
 }
}
body.barrel-glossary section.barrel-glossary .btn _:lang(x)::-ms-backdrop,
body.barrel-glossary section.barrel-glossary .btn {
 padding: 16px 0 10px;
}

body.barrel-guide .catch {
 text-align: center;
 padding: 50px 0 30px;
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
}
@media only screen and (max-width: 767px) {
 body.barrel-guide .catch {
  padding: 30px 20px 20px 20px;
  text-align: justify;
 }
}

body.barrel-guide section.barrel-guide {
 padding: 70px 0 130px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-guide section.barrel-guide {
  padding: 40px 0 56px 0;
 }
}
body.barrel-guide section.barrel-guide .inner .barrel-guide__btn {
 background: #f0f0f0;
 border-bottom: 1px solid #e60012;
 position: relative;
 text-align: center;
}
body.barrel-guide section.barrel-guide .inner .barrel-guide__btn:before {
 content: "";
 display: block;
 position: absolute;
 left: 0;
 top: 0;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 30px 30px 0 0;
 border-color: #fff transparent transparent transparent;
}
body.barrel-guide section.barrel-guide .inner .barrel-guide__btn a {
 display: inline-block;
}
@media only screen and (min-width: 768px) {
 body.barrel-guide section.barrel-guide .inner .barrel-guide__btn a {
  transition: opacity 0.3s;
 }
 body.barrel-guide section.barrel-guide .inner .barrel-guide__btn a:hover {
  opacity: 0.6;
 }
}
body.barrel-guide section.barrel-guide .inner .barrel-guide__btn a .ja {
 font-weight: bold;
 display: block;
 margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
 body.barrel-guide section.barrel-guide .inner .barrel-guide__btn a .ja {
  margin-bottom: 16px;
 }
}
body.barrel-guide section.barrel-guide .inner .barrel-guide__btn a .more {
 font-size: 16px;
 font-size: 1.6rem;
}
@media only screen and (max-width: 320px) {
 body.barrel-guide section.barrel-guide .inner .barrel-guide__btn a .more {
  font-size: 12px;
  font-size: 1.2rem;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel-guide section.barrel-guide .inner .barrel-guide__btn a span {
  display: block;
 }
}
body.barrel-guide section.barrel-guide .inner .barrel-guide__btn--large {
 padding: 50px 0 50px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-guide section.barrel-guide .inner .barrel-guide__btn--large {
  padding: 28px 0 28px 0;
 }
}
body.barrel-guide section.barrel-guide .inner .barrel-guide__btn--large .ja {
 font-size: 30px;
 font-size: 3rem;
 letter-spacing: -0.04em;
}
@media only screen and (max-width: 767px) {
 body.barrel-guide section.barrel-guide .inner .barrel-guide__btn--large .ja {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0em;
 }
}
body.barrel-guide section.barrel-guide .inner ul {
 margin: 60px 0 0;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
@media only screen and (max-width: 767px) {
 body.barrel-guide section.barrel-guide .inner ul {
  margin: 40px 0 0;
 }
}
body.barrel-guide section.barrel-guide .inner ul .barrel-guide__btn {
 width: 30.8%;
 padding: 22px 0 30px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-guide section.barrel-guide .inner ul .barrel-guide__btn {
  width: 100%;
  padding: 20px 20px 10px 34px;
  margin-bottom: 20px;
 }
}
body.barrel-guide section.barrel-guide .inner ul .barrel-guide__btn a {
 display: inline-block;
}
@media only screen and (max-width: 767px) {
 body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn
  a
  figure:before,
 body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn
  a
  figure:after {
  content: " ";
  display: table;
 }
 body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn
  a
  figure:after {
  clear: both;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn
  a
  figure
  img {
  float: left;
 }
}
body.barrel-guide
 section.barrel-guide
 .inner
 ul
 .barrel-guide__btn
 a
 figure
 .ja {
 font-size: 25px;
 font-size: 2.5rem;
}
@media only screen and (max-width: 767px) {
 body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn
  a
  figure
  .ja {
  font-size: 20px;
  font-size: 2rem;
  float: right;
 }
}
@media only screen and (max-width: 390px) {
 body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn
  a
  figure
  .ja {
  font-size: 14px;
  font-size: 1.4rem;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn
  a
  figure
  .more {
  float: right;
 }
}
body.barrel-guide
 section.barrel-guide
 .inner
 ul
 .barrel-guide__btn:first-child
 a
 figure
 img {
 width: 71px;
 height: 78px;
 margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
 body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn:first-child
  a
  figure
  img {
  widows: 54px;
  height: 58.5px;
  margin-bottom: 0;
 }
}
body.barrel-guide
 section.barrel-guide
 .inner
 ul
 .barrel-guide__btn:nth-child(2)
 a
 figure
 img {
 width: 74px;
 height: 65px;
 margin-bottom: 24px;
}
@media only screen and (max-width: 767px) {
 body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn:nth-child(2)
  a
  figure
  img {
  widows: 54px;
  height: 58.5px;
  margin-bottom: 0;
 }
}
body.barrel-guide
 section.barrel-guide
 .inner
 ul
 .barrel-guide__btn:last-child
 a
 figure
 img {
 width: 78px;
 height: 65px;
 margin-bottom: 24px;
}
@media only screen and (max-width: 767px) {
 body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn:last-child
  a
  figure
  img {
  widows: 54px;
  height: 58.5px;
  margin-bottom: 0;
 }
}
body.barrel-guide section.barrel-guide .inner .glossary-btn {
 max-width: 500px;
 margin: 0 auto;
 border: 4px solid #e1e1e1;
 background: #fafafa;
 padding: 38px 0 32px 0;
 text-align: center;
 margin-top: 80px;
}
@media only screen and (max-width: 767px) {
 body.barrel-guide section.barrel-guide .inner .glossary-btn {
  margin-top: 20px;
  padding: 20px 0;
 }
}
body.barrel-guide section.barrel-guide .inner .glossary-btn a {
 display: inline-block;
}
@media only screen and (min-width: 768px) {
 body.barrel-guide section.barrel-guide .inner .glossary-btn a {
  transition: opacity 0.3s;
 }
 body.barrel-guide section.barrel-guide .inner .glossary-btn a:hover {
  opacity: 0.6;
 }
}
body.barrel-guide section.barrel-guide .inner .glossary-btn a .ja {
 font-size: 30px;
 font-size: 3rem;
 font-weight: bold;
 display: block;
 margin: 0 0 26px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-guide section.barrel-guide .inner .glossary-btn a .ja {
  font-size: 20px;
  font-size: 2rem;
  margin: 0 0 16px 0;
 }
}
body.barrel-guide section.barrel-guide .inner .glossary-btn a .more {
 font-size: 16px;
 font-size: 1.6rem;
}

.link-wrapper {
 padding-bottom: 60px;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 .link-wrapper {
  padding-bottom: 40px;
 }
}
.link-wrapper .backlink {
 margin: 0 auto;
}

body.barrel-kind section.barrel-kind {
 padding: 90px 0 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind section.barrel-kind {
  padding: 46px 0 40px 0;
 }
}
body.barrel-kind section.barrel-kind .inner .about h3 {
 font-size: 20px;
 font-size: 2rem;
 color: #fff;
 text-align: center;
 background: #4d4d4d;
 padding: 12px 0;
}
body.barrel-kind section.barrel-kind .inner .about h3 _:lang(x)::-ms-backdrop,
body.barrel-kind section.barrel-kind .inner .about h3 {
 padding: 15px 0 9px;
}
body.barrel-kind section.barrel-kind .inner .about.about01 .box {
 padding: 40px 0 60px 16px;
}
@media only screen and (min-width: 768px) {
 body.barrel-kind section.barrel-kind .inner .about.about01 .box {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel-kind section.barrel-kind .inner .about.about01 .box {
  padding: 20px 0 38px 0;
 }
}
body.barrel-kind section.barrel-kind .inner .about.about01 .box .left {
 width: 38%;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind section.barrel-kind .inner .about.about01 .box .left {
  width: 100%;
 }
}
body.barrel-kind section.barrel-kind .inner .about.about01 .box .right {
 width: 49.5%;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind section.barrel-kind .inner .about.about01 .box .right {
  width: 100%;
  padding: 10px 0 0;
 }
}
body.barrel-kind section.barrel-kind .inner .about.about01 .box .right p {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
}
@media only screen and (min-width: 768px) {
 body.barrel-kind section.barrel-kind .inner .about.about02 {
  padding: 0 0 60px 0;
 }
}
body.barrel-kind section.barrel-kind .inner .about.about02 > p {
 font-size: 16px;
 font-size: 1.6rem;
 text-align: justify;
 line-height: 1.875;
 padding: 40px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind section.barrel-kind .inner .about.about02 > p {
  padding: 10px 0 0;
 }
}
body.barrel-kind section.barrel-kind .inner .about.about02 h4 {
 text-align: center;
 color: #e60012;
 font-size: 24px;
 font-size: 2.4rem;
 font-weight: bold;
 padding: 40px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind section.barrel-kind .inner .about.about02 h4 {
  padding: 20px 0 0;
 }
}
body.barrel-kind section.barrel-kind .inner .about.about02 .box-wrap {
 max-width: 860px;
 margin: 0 auto;
 position: relative;
}
body.barrel-kind section.barrel-kind .inner .about.about02 .box-wrap:before {
 content: "";
 display: block;
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 z-index: -1;
}
@media only screen and (min-width: 768px) {
 body.barrel-kind section.barrel-kind .inner .about.about02 .box-wrap:before {
  width: 330px;
  height: 240px;
  background: url(../images/barrel-kind/tryangle.svg) center/330px 240px
   no-repeat;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel-kind section.barrel-kind .inner .about.about02 .box-wrap:before {
  width: 1px;
  height: 400px;
  background: #4d4d4d;
 }
}
body.barrel-kind
 section.barrel-kind
 .inner
 .about.about02
 .box-wrap
 .box-wrap-top {
 padding: 44px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind
  section.barrel-kind
  .inner
  .about.about02
  .box-wrap
  .box-wrap-top {
  padding: 32px 0 0;
 }
}
body.barrel-kind
 section.barrel-kind
 .inner
 .about.about02
 .box-wrap
 .box-wrap-top
 .box-item {
 margin: 0 auto 20px;
}
body.barrel-kind
 section.barrel-kind
 .inner
 .about.about02
 .box-wrap
 .box-wrap-bottom {
 padding: 80px 0 0;
}
@media only screen and (min-width: 768px) {
 body.barrel-kind
  section.barrel-kind
  .inner
  .about.about02
  .box-wrap
  .box-wrap-bottom {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel-kind
  section.barrel-kind
  .inner
  .about.about02
  .box-wrap
  .box-wrap-bottom {
  padding: 0;
 }
}
body.barrel-kind section.barrel-kind .inner .about.about02 .box-wrap .box-item {
 width: 44.187%;
 padding: 32px 32px 24px 32px;
 background: #fff;
 border: 3px solid #4d4d4d;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind
  section.barrel-kind
  .inner
  .about.about02
  .box-wrap
  .box-item {
  width: 100%;
  padding: 20px;
  margin: 0 0 20px 0;
 }
}
body.barrel-kind
 section.barrel-kind
 .inner
 .about.about02
 .box-wrap
 .box-item
 .title {
 font-size: 19px;
 font-size: 1.9rem;
 font-weight: bold;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind
  section.barrel-kind
  .inner
  .about.about02
  .box-wrap
  .box-item
  .title {
  font-size: 20px;
  font-size: 2rem;
 }
}
body.barrel-kind
 section.barrel-kind
 .inner
 .about.about02
 .box-wrap
 .box-item
 .text {
 font-size: 16px;
 font-size: 1.6rem;
 text-align: justify;
 line-height: 1.875;
 padding: 22px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind
  section.barrel-kind
  .inner
  .about.about02
  .box-wrap
  .box-item
  .text {
  padding: 10px 0 0;
 }
}
body.barrel-kind
 section.barrel-kind
 .inner
 .about.about02
 .box-wrap
 .box-item.color01 {
 border: 3px solid #c1af97;
}
body.barrel-kind
 section.barrel-kind
 .inner
 .about.about02
 .box-wrap
 .box-item.color02 {
 border: 3px solid #d6966b;
}
body.barrel-kind
 section.barrel-kind
 .inner
 .about.about02
 .box-wrap
 .box-item.color03 {
 border: 3px solid #7099b9;
}

body.barrel-kind section.barrel-merit {
 background: #e1e1e1;
 padding: 30px 0 50px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind section.barrel-merit {
  padding: 30px 0;
 }
}
body.barrel-kind section.barrel-merit .inner h3 {
 font-size: 24px;
 font-size: 2.4rem;
 color: #e60012;
 text-align: center;
 font-weight: bold;
}
@media only screen and (min-width: 768px) {
 body.barrel-kind section.barrel-merit .inner ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel-kind section.barrel-merit .inner ul {
  margin: 30px 0 0;
 }
}
body.barrel-kind section.barrel-merit .inner ul li {
 width: 48%;
 font-size: 20px;
 font-size: 2rem;
 background: #fff;
 font-weight: bold;
 padding: 15px 0;
 text-align: center;
 margin: 30px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind section.barrel-merit .inner ul li {
  width: 100%;
  margin: 20px 0 0;
  padding: 10px 6px;
  line-height: 1.3;
 }
}

body.barrel-kind section.barrel-howto {
 padding: 60px 0 80px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind section.barrel-howto {
  padding: 40px 0 0;
 }
}
body.barrel-kind section.barrel-howto .inner h3 {
 font-size: 20px;
 font-size: 2rem;
 color: #fff;
 text-align: center;
 background: #4d4d4d;
 padding: 12px 0;
}
body.barrel-kind section.barrel-howto .inner ul {
 margin: 40px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind section.barrel-howto .inner ul {
  margin: 20px 0 0;
 }
}
body.barrel-kind section.barrel-howto .inner ul li {
 padding: 0 0 50px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind section.barrel-howto .inner ul li {
  padding: 0 0 36px 0;
 }
}
body.barrel-kind section.barrel-howto .inner ul li .title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 font-feature-settings: "palt" 1;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind section.barrel-howto .inner ul li .title {
  letter-spacing: -0.05em;
  line-height: 1.5;
 }
}
body.barrel-kind section.barrel-howto .inner ul li .text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 padding: 24px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-kind section.barrel-howto .inner ul li .text {
  padding: 10px 0 0;
 }
}

body.barrel-machine section.barrel-machine {
 padding: 90px 0 90px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-machine section.barrel-machine {
  padding: 36px 0 40px 0;
 }
}
body.barrel-machine section.barrel-machine .inner .catch {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
}
body.barrel-machine section.barrel-machine .inner .machine {
 padding: 50px 0 10px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-machine section.barrel-machine .inner .machine {
  padding: 36px 0 10px 0;
 }
}
body.barrel-machine section.barrel-machine .inner .machine h3 {
 font-size: 20px;
 font-size: 2rem;
 color: #fff;
 text-align: center;
 background: #4d4d4d;
 padding: 12px 0;
}
body.barrel-machine
 section.barrel-machine
 .inner
 .machine
 h3
 _:lang(x)::-ms-backdrop,
body.barrel-machine section.barrel-machine .inner .machine h3 {
 padding: 15px 0 9px;
}
@media only screen and (min-width: 768px) {
 body.barrel-machine section.barrel-machine .inner .machine__item {
  padding: 40px 0 40px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel-machine section.barrel-machine .inner .machine__item {
  padding-bottom: 30px;
 }
}
body.barrel-machine section.barrel-machine .inner .machine__item__left {
 width: 46%;
}
@media only screen and (max-width: 767px) {
 body.barrel-machine section.barrel-machine .inner .machine__item__left {
  width: 100%;
  margin: 10px 0 10px 0;
 }
}
body.barrel-machine section.barrel-machine .inner .machine__item__right {
 width: 48.5%;
}
@media only screen and (max-width: 767px) {
 body.barrel-machine section.barrel-machine .inner .machine__item__right {
  width: 100%;
 }
}
body.barrel-machine section.barrel-machine .inner .machine__item__right .title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 padding: 0 0 20px 0;
}
body.barrel-machine section.barrel-machine .inner .machine__item__right .text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
 padding: 0 0 40px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-machine section.barrel-machine .inner .machine__item__right .text {
  padding: 0 0 30px 0;
 }
}
body.barrel-machine
 section.barrel-machine
 .inner
 .machine__item__right
 .text:last-child {
 padding-bottom: 0;
}
body.barrel-machine section.barrel-machine .inner .machine__merit {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
body.barrel-machine section.barrel-machine .inner .machine__merit__item {
 width: 48%;
}
@media only screen and (max-width: 767px) {
 body.barrel-machine section.barrel-machine .inner .machine__merit__item {
  width: 100%;
 }
}
body.barrel-machine section.barrel-machine .inner .machine__merit__item .title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 background: #e1e1e1;
 text-align: center;
 padding: 12px 0;
}
body.barrel-machine
 section.barrel-machine
 .inner
 .machine__merit__item
 .title
 _:lang(x)::-ms-backdrop,
body.barrel-machine section.barrel-machine .inner .machine__merit__item .title {
 padding: 16px 0 8px;
}
body.barrel-machine section.barrel-machine .inner .machine__merit__item ul {
 padding: 26px 0 0 2px;
}
@media only screen and (max-width: 767px) {
 body.barrel-machine section.barrel-machine .inner .machine__merit__item ul {
  padding: 16px 0 30px 2px;
 }
}
body.barrel-machine section.barrel-machine .inner .machine__merit__item ul li {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 list-style-type: none;
 position: relative;
 padding-left: 10px;
}
@media only screen and (max-width: 767px) {
 body.barrel-machine section.barrel-machine .inner .machine__merit__item ul li {
  padding-left: 0;
  text-indent: 10px;
 }
}
body.barrel-machine
 section.barrel-machine
 .inner
 .machine__merit__item
 ul
 li:before {
 content: "";
 width: 3px;
 height: 3px;
 background: #4d4d4d;
 border-radius: 100%;
 position: absolute;
 left: 0;
 top: 15px;
 transform: translateY(-50%);
}
body.barrel-machine section.barrel-machine .inner .machine__movie {
 display: none;
 margin: 60px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-machine section.barrel-machine .inner .machine__movie {
  margin: 10px 0 0;
 }
}
body.barrel-machine section.barrel-machine .inner .machine__movie a {
 display: block;
}
@media only screen and (min-width: 768px) {
 body.barrel-machine section.barrel-machine .inner .machine__movie a {
  transition: opacity 0.3s;
 }
 body.barrel-machine section.barrel-machine .inner .machine__movie a:hover {
  opacity: 0.6;
 }
}

body.barrel-machine section.comparison-table {
 padding: 0 0 130px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-machine section.comparison-table {
  padding: 0 0 50px 0;
 }
}
body.barrel-machine section.comparison-table .inner h3 {
 font-size: 20px;
 font-size: 2rem;
 color: #fff;
 text-align: center;
 background: #4d4d4d;
 padding: 12px 0;
}
body.barrel-machine section.comparison-table .inner h3 _:lang(x)::-ms-backdrop,
body.barrel-machine section.comparison-table .inner h3 {
 padding: 15px 0 9px;
}
body.barrel-machine section.comparison-table .inner p {
 font-size: 16px;
 font-size: 1.6rem;
 text-align: center;
 padding: 40px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-machine section.comparison-table .inner p {
  padding: 20px 0;
 }
}
body.barrel-machine section.comparison-table .inner .cap {
 font-size: 14px;
 font-size: 1.4rem;
 text-align: right;
 padding: 20px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-machine section.comparison-table .inner .cap {
  line-height: 1.3;
  text-align: left;
 }
}
body.barrel-machine section.comparison-table .inner table {
 border: 1px solid #e1e1e1;
 width: 100%;
}
@media only screen and (max-width: 767px) {
 body.barrel-machine section.comparison-table .inner table {
  display: block;
  overflow-x: scroll;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
 }
}
body.barrel-machine section.comparison-table .inner table tr th,
body.barrel-machine section.comparison-table .inner table tr td {
 padding: 14px 0;
}
body.barrel-machine
 section.comparison-table
 .inner
 table
 tr
 th
 _:lang(x)::-ms-backdrop,
body.barrel-machine section.comparison-table .inner table tr th,
body.barrel-machine
 section.comparison-table
 .inner
 table
 tr
 td
 _:lang(x)::-ms-backdrop,
body.barrel-machine section.comparison-table .inner table tr td {
 padding: 17px 0 11px;
}
body.barrel-machine section.comparison-table .inner table thead tr {
 background: #706f70;
}
body.barrel-machine section.comparison-table .inner table thead tr th {
 color: #fff;
 width: 14%;
 font-size: 16px;
 font-size: 1.6rem;
 border-right: 1px solid #e1e1e1;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.barrel-machine section.comparison-table .inner table thead tr th {
  padding-left: 12px;
  padding-right: 12px;
 }
}
body.barrel-machine
 section.comparison-table
 .inner
 table
 thead
 tr
 th:first-child {
 width: 30%;
}
body.barrel-machine
 section.comparison-table
 .inner
 table
 thead
 tr
 th:last-child {
 border-right: none;
}
body.barrel-machine section.comparison-table .inner table tbody tr {
 border-top: 1px solid #e1e1e1;
}
body.barrel-machine
 section.comparison-table
 .inner
 table
 tbody
 tr:nth-child(even) {
 background: #f0f0f0;
}
body.barrel-machine section.comparison-table .inner table tbody tr td {
 width: 14%;
 font-size: 16px;
 font-size: 1.6rem;
 border-right: 1px solid #e1e1e1;
 text-align: center;
}
body.barrel-machine section.comparison-table .inner table tbody tr td span {
 font-size: 12px;
 font-size: 1.2rem;
}
body.barrel-machine
 section.comparison-table
 .inner
 table
 tbody
 tr
 td:first-child {
 width: 30%;
 font-weight: bold;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.barrel-machine
  section.comparison-table
  .inner
  table
  tbody
  tr
  td:first-child {
  text-align: left;
  padding: 0 10px;
 }
}
body.barrel-machine
 section.comparison-table
 .inner
 table
 tbody
 tr
 td:last-child {
 border-right: none;
}

body.barrel-stone section.barrel-stone {
 padding: 90px 0 80px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-stone section.barrel-stone {
  padding: 36px 0 40px 0;
 }
}
body.barrel-stone section.barrel-stone .inner .catch {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
}
body.barrel-stone section.barrel-stone .inner .stone {
 padding: 50px 0 10px 0;
}
body.barrel-stone section.barrel-stone .inner .stone h3 {
 font-size: 20px;
 font-size: 2rem;
 color: #fff;
 text-align: center;
 background: #4d4d4d;
 padding: 12px 0;
}
body.barrel-stone section.barrel-stone .inner .stone h3 _:lang(x)::-ms-backdrop,
body.barrel-stone section.barrel-stone .inner .stone h3 {
 padding: 15px 0 9px;
}
@media only screen and (min-width: 768px) {
 body.barrel-stone section.barrel-stone .inner .stone__item {
  padding: 40px 0 0;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
 }
}
body.barrel-stone section.barrel-stone .inner .stone__item__left {
 width: 48.5%;
}
@media only screen and (max-width: 767px) {
 body.barrel-stone section.barrel-stone .inner .stone__item__left {
  width: 100%;
  margin: 40px 0 10px 0;
 }
}
body.barrel-stone section.barrel-stone .inner .stone__item__right {
 width: 48.5%;
}
@media only screen and (max-width: 767px) {
 body.barrel-stone section.barrel-stone .inner .stone__item__right {
  width: 100%;
 }
}
body.barrel-stone section.barrel-stone .inner .stone__item__right .text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
 padding: 0 0 40px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-stone section.barrel-stone .inner .stone__item__right .text {
  padding: 0;
 }
}

body.barrel-stone section.comparison-table {
 padding: 0 0 130px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-stone section.comparison-table {
  padding: 0 0 50px 0;
 }
}
body.barrel-stone section.comparison-table .inner h3 {
 font-size: 20px;
 font-size: 2rem;
 color: #fff;
 text-align: center;
 background: #4d4d4d;
 padding: 12px 0;
}
body.barrel-stone section.comparison-table .inner h3 _:lang(x)::-ms-backdrop,
body.barrel-stone section.comparison-table .inner h3 {
 padding: 15px 0 9px;
}
body.barrel-stone section.comparison-table .inner p {
 font-size: 16px;
 font-size: 1.6rem;
 text-align: center;
 padding: 40px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-stone section.comparison-table .inner p {
  padding: 20px 0;
 }
}
body.barrel-stone section.comparison-table .inner .cap {
 font-size: 14px;
 font-size: 1.4rem;
 text-align: right;
 padding: 20px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel-stone section.comparison-table .inner .cap {
  line-height: 1.3;
  text-align: left;
 }
}
body.barrel-stone section.comparison-table .inner table {
 border: 1px solid #e1e1e1;
 width: 100%;
}
@media only screen and (max-width: 767px) {
 body.barrel-stone section.comparison-table .inner table {
  display: block;
  overflow-x: scroll;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
 }
}
body.barrel-stone section.comparison-table .inner table tr th,
body.barrel-stone section.comparison-table .inner table tr td {
 line-height: 1.875;
 height: 76px;
}
body.barrel-stone
 section.comparison-table
 .inner
 table
 tr
 th
 _:lang(x)::-ms-backdrop,
body.barrel-stone section.comparison-table .inner table tr th,
body.barrel-stone
 section.comparison-table
 .inner
 table
 tr
 td
 _:lang(x)::-ms-backdrop,
body.barrel-stone section.comparison-table .inner table tr td {
 padding: 17px 0 11px;
}
body.barrel-stone section.comparison-table .inner table thead tr {
 background: #706f70;
}
body.barrel-stone section.comparison-table .inner table thead tr th {
 color: #fff;
 width: 16.4%;
 padding-right: 18px;
 padding-left: 18px;
 font-size: 16px;
 font-size: 1.6rem;
 border-right: 1px solid #e1e1e1;
 text-align: center;
 vertical-align: middle;
 line-height: 1.875;
}
@media only screen and (max-width: 767px) {
 body.barrel-stone section.comparison-table .inner table thead tr th {
  padding: 14px 12px;
 }
}
body.barrel-stone
 section.comparison-table
 .inner
 table
 thead
 tr
 th:first-child {
 width: 18%;
}
body.barrel-stone section.comparison-table .inner table thead tr th:last-child {
 border-right: none;
}
body.barrel-stone section.comparison-table .inner table tbody tr {
 border-top: 1px solid #e1e1e1;
}
body.barrel-stone
 section.comparison-table
 .inner
 table
 tbody
 tr:nth-child(even) {
 background: #f0f0f0;
}
body.barrel-stone section.comparison-table .inner table tbody tr td {
 width: 16.4%;
 font-size: 16px;
 font-size: 1.6rem;
 border-right: 1px solid #e1e1e1;
 text-align: center;
 padding: 0;
}
body.barrel-stone section.comparison-table .inner table tbody tr td span {
 font-size: 12px;
 font-size: 1.2rem;
}
body.barrel-stone
 section.comparison-table
 .inner
 table
 tbody
 tr
 td:first-child {
 width: 18%;
 font-weight: bold;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.barrel-stone
  section.comparison-table
  .inner
  table
  tbody
  tr
  td:first-child {
  text-align: left;
  padding: 0 10px;
 }
}
body.barrel-stone section.comparison-table .inner table tbody tr td:last-child {
 border-right: none;
}

body.barrel section.barrel {
 padding: 20px 0 100px 0;
}
@media only screen and (max-width: 767px) {
 body.barrel section.barrel {
  padding: 20px 0 50px 0;
 }
}
body.barrel section.barrel .inner .barrel-mv {
 position: relative;
}
body.barrel section.barrel .inner .barrel-mv--heading {
 -webkit-transition: opacity 1s;
 -webkit-transition-delay: 1.2s;
 -moz-transition: opacity 1s 1.2s;
 -o-transition: opacity 1s 1.2s;
 transition: opacity 1s 1.2s;
}
@media only screen and (min-width: 768px) {
 body.barrel section.barrel .inner .barrel-mv--heading {
  position: absolute;
  left: 0;
  top: 0;
 }
}
@media only screen and (min-width: 768px) {
 body.barrel section.barrel .inner .barrel-mv--heading h2 {
  max-width: 376px;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel section.barrel .inner .barrel-mv--heading h2 {
  max-width: 274px;
 }
}
@media only screen and (min-width: 768px) {
 body.barrel section.barrel .inner .barrel-mv--image {
  max-width: 685px;
  margin: 0 auto;
 }
}
@media only screen and (max-width: 767px) {
 body.barrel section.barrel .inner .barrel-mv--image {
  padding: 0 0 0 20px;
 }
}
body.barrel section.barrel .inner .barrel-mv--image img {
 display: block;
 width: 100%;
}
body.barrel section.barrel .inner .barrel-catch {
 padding: 60px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel section.barrel .inner .barrel-catch {
  padding: 0;
 }
}
body.barrel section.barrel .inner .barrel-catch--heading {
 font-size: 28px;
 font-size: 2.8rem;
 font-weight: bold;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.barrel section.barrel .inner .barrel-catch--heading {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.75;
 }
}
body.barrel section.barrel .inner .barrel-catch--image {
 max-width: 546px;
 margin: 0 auto;
 margin-top: 36px;
}
@media only screen and (max-width: 767px) {
 body.barrel section.barrel .inner .barrel-catch--image {
  margin-top: 30px;
  width: 72%;
 }
}
body.barrel section.barrel .inner .barrel-catch--image img {
 width: 100%;
 display: block;
}
body.barrel section.barrel .inner .barrel-catch--text {
 max-width: 600px;
 margin: 0 auto;
 padding: 40px 0 0;
}
body.barrel section.barrel .inner .barrel-catch--text p {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
}
body.barrel section.barrel .inner .barrel-detail .col {
 margin: 80px 0 0;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
 -webkit-align-items: center;
 align-items: center;
}
@media only screen and (max-width: 767px) {
 body.barrel section.barrel .inner .barrel-detail .col {
  margin: 36px 0 0;
 }
}
body.barrel section.barrel .inner .barrel-detail .col .text {
 width: 49%;
}
@media only screen and (max-width: 767px) {
 body.barrel section.barrel .inner .barrel-detail .col .text {
  width: 100%;
  -webkit-order: 2;
  order: 2;
  padding: 22px 0 0;
 }
}
body.barrel section.barrel .inner .barrel-detail .col .text-title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 line-height: 1.75;
}
body.barrel section.barrel .inner .barrel-detail .col .text-detail {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 padding: 10px 0 0;
 text-align: justify;
}
body.barrel section.barrel .inner .barrel-detail .col .text-link {
 display: inline-block;
 color: #e60012;
 font-size: 16px;
 font-size: 1.6rem;
 margin: 50px 0 0;
}
@media only screen and (max-width: 767px) {
 body.barrel section.barrel .inner .barrel-detail .col .text-link {
  margin: 30px 0 0;
 }
}
body.barrel section.barrel .inner .barrel-detail .col .image {
 width: 48.5%;
}
@media only screen and (max-width: 767px) {
 body.barrel section.barrel .inner .barrel-detail .col .image {
  width: 100%;
  -webkit-order: 1;
  order: 1;
 }
}
body.barrel section.barrel .inner .barrel-detail .col .image img {
 display: block;
 width: 100%;
}

body.catalog .title__subpage {
 margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
 body.catalog .title__subpage {
  margin-bottom: 30px;
 }
}

body.catalog .intro {
 font-size: 14px;
 font-size: 1.4rem;
 text-align: center;
 margin-bottom: 80px;
 line-height: 1.75;
}
@media only screen and (max-width: 767px) {
 body.catalog .intro {
  margin-bottom: 40px;
  text-align: left;
 }
}

body.catalog main {
 padding-bottom: 150px;
}
@media only screen and (max-width: 767px) {
 body.catalog main {
  padding-bottom: 30px;
 }
}
body.catalog main .catalogs-wrapper {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
}
body.catalog main .catalogs {
 width: calc((100% - 38px) / 2);
}
@media only screen and (min-width: 768px) {
 body.catalog main .catalogs {
  margin-right: 38px;
 }
 body.catalog main .catalogs:nth-child(2n + 2) {
  margin-right: 0;
 }
}
@media only screen and (max-width: 767px) {
 body.catalog main .catalogs {
  width: 100%;
 }
}
body.catalog main .catalogs__title {
 width: 100%;
 background: #4d4d4d;
 height: 44px;
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
 color: #fff;
 font-size: 20px;
 font-size: 2rem;
 font-weight: 600;
}
@media only screen and (max-width: 767px) {
 body.catalog main .catalogs__title {
  height: 35px;
  font-size: 16px;
  font-size: 1.6rem;
 }
}
@media only screen and (min-width: 768px) {
 body.catalog main .catalogs__list {
  padding: 45px 0 45px 80px;
 }
}
@media only screen and (max-width: 767px) {
 body.catalog main .catalogs__list {
  padding: 35px 0 45px 0;
 }
}
body.catalog main .catalogs__list--item {
 margin-bottom: 35px;
}
body.catalog main .catalogs__list--item:last-child {
 margin-bottom: 0;
}
body.catalog main .catalogs__list--item a {
 text-decoration: underline;
 line-height: 1.5;
}

body.coating-principle section.coating-principle {
 padding: 90px 0 130px 0;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle {
  padding: 40px 0 60px 0;
 }
}
body.coating-principle section.coating-principle .inner .catch-image {
 max-width: 250px;
 margin: 0 auto;
}
body.coating-principle section.coating-principle .inner .catch-text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
 padding: 40px 0 0;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner .catch-text {
  padding: 20px 0 0;
 }
}
body.coating-principle section.coating-principle .inner h3 {
 background: #4d4d4d;
 color: #fff;
 font-weight: bold;
 font-size: 20px;
 font-size: 2rem;
 text-align: center;
 padding: 12px 0;
 margin: 50px 0 0;
}
body.coating-principle
 section.coating-principle
 .inner
 h3
 _:lang(x)::-ms-backdrop,
body.coating-principle section.coating-principle .inner h3 {
 padding: 15px 0 9px;
}
body.coating-principle section.coating-principle .inner h3:nth-of-type(2) {
 margin-top: 60px;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner h3:nth-of-type(2) {
  margin-top: 50px;
 }
}
body.coating-principle section.coating-principle .inner h3:nth-of-type(3) {
 margin-top: 80px;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner h3:nth-of-type(3) {
  margin-top: 50px;
 }
}
body.coating-principle section.coating-principle .inner h3:nth-of-type(4) {
 margin-top: 70px;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner h3:nth-of-type(4) {
  margin-top: 25px;
 }
}
body.coating-principle section.coating-principle .inner h3:nth-of-type(5) {
 margin-top: 75px;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner h3:nth-of-type(5) {
  margin-top: 60px;
 }
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner h3 {
  line-height: 1.5;
  padding: 7px 10px;
 }
}
body.coating-principle section.coating-principle .inner .row {
 padding: 40px 0 0 0;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner .row {
  padding: 20px 0 0;
 }
}
@media only screen and (min-width: 768px) {
 body.coating-principle section.coating-principle .inner .row {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
 }
}
body.coating-principle section.coating-principle .inner .row .image {
 width: 48.5%;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner .row .image {
  width: 100%;
 }
}
body.coating-principle section.coating-principle .inner .row .text {
 width: 48.5%;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner .row .text {
  width: 100%;
  padding: 10px 0 0;
 }
}
body.coating-principle section.coating-principle .inner .row .text p {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
}
body.coating-principle section.coating-principle .inner .text-box {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
 padding: 20px 0 0;
}
body.coating-principle section.coating-principle .inner .text-box .text {
 width: 44%;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner .text-box .text {
  width: 47%;
 }
}
body.coating-principle section.coating-principle .inner .text-box p {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner .text-box p {
  text-align: left;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.785714286;
 }
}
body.coating-principle section.coating-principle .inner .text-box .title {
 font-weight: bold;
 font-size: 20px;
 font-size: 2rem;
 margin-bottom: 8px;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner .text-box .title {
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  margin-bottom: 0;
 }
}
body.coating-principle section.coating-principle .inner .image-box {
 padding: 40px 0 0;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner .image-box {
  padding-top: 20px;
 }
}
body.coating-principle section.coating-principle .inner ul {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
 margin: 44px 0 0;
}
body.coating-principle section.coating-principle .inner ul li {
 width: 47.5%;
 padding: 0 0 60px 0;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner ul li {
  width: 100%;
  padding: 0 0 50px 0;
 }
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner ul li:last-child {
  padding: 0 0 25px 0;
 }
}
body.coating-principle section.coating-principle .inner ul li p {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 text-align: center;
 background: #f0f0f0;
 border-bottom: 2px solid #e60012;
 padding: 10px 0;
}
body.coating-principle
 section.coating-principle
 .inner
 ul
 li
 p
 _:lang(x)::-ms-backdrop,
body.coating-principle section.coating-principle .inner ul li p {
 padding: 14px 0 6px;
}
body.coating-principle section.coating-principle .inner ul li img {
 display: block;
 margin: 26px 0 0;
}
body.coating-principle section.coating-principle .inner .cap {
 text-align: center;
 font-size: 16px;
 font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner .cap {
  text-align: left;
  line-height: 2;
 }
}
body.coating-principle section.coating-principle .inner .movie-wrap {
 background: #fff;
 border: 4px solid #e1e1e1;
 padding: 54px 0 90px 0;
 margin-top: 30px;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner .movie-wrap {
  padding: 17px 0;
  border: none;
  margin-top: 0;
 }
}
body.coating-principle section.coating-principle .inner .movie-wrap p {
 font-weight: bold;
 font-size: 24px;
 font-size: 2.4rem;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner .movie-wrap p {
  font-size: 17px;
  font-size: 1.7rem;
 }
}
body.coating-principle section.coating-principle .inner .movie-wrap .movie {
 max-width: 400px;
 margin: 50px auto 0;
 display: block;
}
@media only screen and (min-width: 768px) {
 body.coating-principle section.coating-principle .inner .movie-wrap .movie {
  transition: opacity 0.3s;
 }
 body.coating-principle
  section.coating-principle
  .inner
  .movie-wrap
  .movie:hover {
  opacity: 0.6;
 }
}
@media only screen and (max-width: 767px) {
 body.coating-principle section.coating-principle .inner .movie-wrap .movie {
  margin: 14px 0 auto;
 }
}

body.coating-principle section .contact-link {
 margin: 100px 0 0;
}
@media only screen and (max-width: 767px) {
 body.coating-principle section .contact-link {
  margin: 50px 0 0;
 }
}
@media only screen and (min-width: 768px) {
 body.coating-principle section .contact-link a {
  transition: opacity 0.3s;
 }
 body.coating-principle section .contact-link a:hover {
  opacity: 0.6;
 }
}

body.coating .coating-mv {
 position: relative;
 top: -36px;
 max-width: 1000px;
 margin: 0 auto;
}
@media only screen and (max-width: 767px) {
 body.coating .coating-mv {
  background: none;
  height: auto;
  top: auto;
 }
}
body.coating .coating-mv img:not(.mv-txt) {
 display: block;
 margin: 0 0 0 auto;
 width: 100%;
}
body.coating .coating-mv--text {
 -webkit-transition: opacity 1s;
 -webkit-transition-delay: 1.2s;
 -moz-transition: opacity 1s 1.2s;
 -o-transition: opacity 1s 1.2s;
 transition: opacity 1s 1.2s;
}
@media only screen and (min-width: 768px) {
 body.coating .coating-mv--text {
  position: absolute;
  top: 36%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
 }
}
@media only screen and (max-width: 767px) {
 body.coating .coating-mv--text.inner {
  padding: 0;
 }
}
body.coating .coating-mv--text h2 {
 border-radius: 10px;
 font-family: "Sawarabi Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
  "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
 font-size: 34px;
 font-size: 3.4rem;
 letter-spacing: 0.04em;
 line-height: 1.47058823;
 display: inline-block;
}
@media only screen and (max-width: 767px) {
 body.coating .coating-mv--text h2 {
  font-size: 25px;
  font-size: 2.5rem;
  padding: 20px 2px 10px 2px;
  margin: 0 auto;
  text-align: center;
  display: block;
  max-width: 195px;
 }
}

body.coating .coating-mv-catch {
 text-align: center;
}
body.coating .coating-mv-catch h3 {
 font-size: 24px;
 font-size: 2.4rem;
 font-weight: bold;
 line-height: 1.6666666;
}
@media only screen and (max-width: 767px) {
 body.coating .coating-mv-catch h3 {
  font-size: 20px;
  font-size: 2rem;
  margin: 10px 0 0;
 }
}
body.coating .coating-mv-catch p {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 margin-top: 40px;
}
@media only screen and (max-width: 767px) {
 body.coating .coating-mv-catch p {
  margin-top: 20px;
  text-align: justify;
 }
}
body.coating .coating-mv-catch .coating-list {
 max-width: 826px;
 margin: 0 auto;
 margin-bottom: 30px;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
@media only screen and (max-width: 767px) {
 body.coating .coating-mv-catch .coating-list {
  padding: 0 20px;
 }
}
body.coating .coating-mv-catch .coating-list__item {
 width: 17.07021791%;
 margin: 44px 0 0;
}
@media only screen and (max-width: 767px) {
 body.coating .coating-mv-catch .coating-list__item {
  width: 44.06779661%;
  margin: 30px 0 0;
 }
}
body.coating .coating-mv-catch .coating-list__item figure img {
 display: block;
 margin: 0 auto;
 width: 100%;
}
body.coating .coating-mv-catch .coating-list__item figure figcaption {
 font-weight: bold;
 font-size: 18px;
 font-size: 1.8rem;
 text-align: center;
 padding: 10px 0 0;
}
body.coating .coating-mv-catch .link--red {
 min-width: 200px;
}

body.coating section.coating-select {
 padding: 100px 0 92px 0;
}
@media only screen and (max-width: 767px) {
 body.coating section.coating-select {
  padding: 50px 0 50px 0;
 }
}
body.coating section.coating-select .inner .coating-select-detail h4 {
 font-size: 24px;
 font-size: 2.4rem;
 line-height: 1.666666666;
 text-align: center;
 font-weight: bold;
}
@media only screen and (max-width: 767px) {
 body.coating section.coating-select .inner .coating-select-detail h4 {
  font-size: 15px;
  font-size: 1.5rem;
 }
}
@media only screen and (max-width: 767px) {
 body.coating section.coating-select .inner .coating-select-detail .list-btn {
  color: #fff;
  background: #e60012;
  font-weight: bold;
  font-size: 15px;
  font-size: 1.5rem;
  text-align: center;
  padding: 12px 0;
  margin: 10px 0 0;
  position: relative;
 }
 body.coating
  section.coating-select
  .inner
  .coating-select-detail
  .list-btn:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  -webkit-transform: translateY(-50%) rotate(180deg);
  -moz-transform: translateY(-50%) rotate(180deg);
  -ms-transform: translateY(-50%) rotate(180deg);
  -o-transform: translateY(-50%) rotate(180deg);
  transform: translateY(-50%) rotate(180deg);
  width: 18px;
  height: 10px;
  background: url(../images/common/arrow-white.svg) center/18px 10px no-repeat;
 }
}
body.coating
 section.coating-select
 .inner
 .coating-select-detail
 .list-btn.opened:after {
 width: 15px;
 height: 15px;
 background: url(../images/common/close-white.svg) center/15px 15px no-repeat;
}
body.coating section.coating-select .inner .coating-select-detail ul {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 text-align: center;
 margin: 66px 0 0;
}
@media only screen and (max-width: 767px) {
 body.coating section.coating-select .inner .coating-select-detail ul {
  text-align: left;
  margin: 20px 0 0;
  display: none;
 }
}
body.coating section.coating-select .inner .coating-select-detail ul li {
 width: 33.3%;
 font-size: 16px;
 font-size: 1.6rem;
 padding: 0 0 28px 0;
 line-height: 1.2;
}
@media only screen and (max-width: 767px) {
 body.coating section.coating-select .inner .coating-select-detail ul li {
  width: 100%;
  font-size: 14px;
  font-size: 1.4rem;
  padding: 0 0 10px 0;
 }
}
body.coating section.coating-select .inner .coating-select-detail .other {
 margin: 30px 0 0;
 text-align: center;
 font-size: 18px;
 font-size: 1.8rem;
 line-height: 1.8;
}
@media only screen and (max-width: 767px) {
 body.coating section.coating-select .inner .coating-select-detail .other {
  font-size: 14px;
  font-size: 1.4rem;
  text-align: left;
  margin: 20px 0 0;
  display: none;
 }
}

body.coating section.flow-form .flow-form-bg {
 background: url(../images/coating/flow-form-bg.png) center/cover no-repeat;
 width: 100%;
 height: 250px;
}
@media only screen and (max-width: 767px) {
 body.coating section.flow-form .flow-form-bg {
  height: 75px;
  background-image: url(../images/coating/flow-form-bg-sp.png);
 }
}

@media only screen and (min-width: 768px) {
 body.coating section.flow-form .inner {
  position: relative;
  top: -150px;
 }
}

body.coating section.flow-form .inner .inner-bg {
 padding: 50px 0 60px 0;
 text-align: center;
}
@media only screen and (min-width: 768px) {
 body.coating section.flow-form .inner .inner-bg {
  background: #fff;
  border: 4px solid #e1e1e1;
 }
}
@media only screen and (max-width: 767px) {
 body.coating section.flow-form .inner .inner-bg {
  padding: 20px 0 0;
 }
}
body.coating section.flow-form .inner .inner-bg .logo {
 max-width: 234px;
 margin: 0 auto;
}
body.coating section.flow-form .inner .inner-bg p {
 font-weight: bold;
 font-size: 24px;
 font-size: 2.4rem;
 text-align: center;
}
body.coating section.flow-form .inner .inner-bg .movie {
 display: block;
 margin: 30px auto;
 width: 100%;
}
@media only screen and (min-width: 768px) {
 body.coating section.flow-form .inner .inner-bg .movie {
  transition: opacity 0.3s;
 }
 body.coating section.flow-form .inner .inner-bg .movie:hover {
  opacity: 0.6;
 }
}
@media only screen and (min-width: 768px) {
 body.coating section.flow-form .inner .inner-bg .movie {
  max-width: 400px;
 }
}
@media only screen and (max-width: 767px) {
 body.coating section.flow-form .inner .inner-bg .movie {
  margin: 20px auto;
 }
}
body.coating section.flow-form .inner .inner-bg .movie img {
 display: block;
 width: 100%;
}
body.coating section.flow-form .inner .inner-bg .more-link {
 font-size: 22px;
 font-size: 2.2rem;
}
@media only screen and (max-width: 767px) {
 body.coating section.flow-form .inner .inner-bg .more-link {
  font-size: 16px;
  font-size: 1.6rem;
 }
}

body.coating .contact-link {
 margin: 0 0 100px 0;
}
@media only screen and (max-width: 767px) {
 body.coating .contact-link {
  margin: 60px 0;
 }
}
body.coating .contact-link .inner a {
 display: block;
}
@media only screen and (min-width: 768px) {
 body.coating .contact-link .inner a {
  transition: opacity 0.3s;
 }
 body.coating .contact-link .inner a:hover {
  opacity: 0.6;
 }
}

body.coating ul.list__product-info.col2 > li .top .head .link.link--outline {
 max-width: 150px;
}
@media only screen and (max-width: 767px) {
 body.coating ul.list__product-info.col2 > li .top .head .link.link--outline {
  max-width: 135px;
 }
}

body.business .business-inner {
 padding: 0;
 width: 100%;
 margin: 0 auto;
 max-width: 100%;
}
@media only screen and (max-width: 767px) {
 body.business .business-inner {
  max-width: 1040px;
  padding: 0 20px;
 }
}

body.business #right-contents {
 margin: 88px 0 4px auto;
 width: 66%;
}
@media only screen and (max-width: 767px) {
 body.business #right-contents {
  margin: 40px 0 9px;
  width: 100%;
 }
}
body.business #right-contents .tomorrow {
 font-size: 48px;
 font-size: 4.8rem;
 font-family: "Open Sans", sans-serif;
 margin-bottom: 15px;
 color: rgba(112, 111, 112, 0.5);
}
@media only screen and (max-width: 767px) {
 body.business #right-contents .tomorrow {
  font-size: 30px;
  font-size: 3rem;
  text-align: center;
  margin-bottom: 13px;
 }
}
body.business #right-contents .caption {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 30px;
 margin-bottom: 54px;
}
@media only screen and (max-width: 767px) {
 body.business #right-contents .caption {
  margin-bottom: 12px;
 }
}
body.business #right-contents .mainlist li {
 border-top: 1px solid #e60012;
 padding: 38px 0 66px;
}
@media only screen and (max-width: 767px) {
 body.business #right-contents .mainlist li {
  padding: 20px 0 28px;
 }
}
body.business #right-contents .mainlist li:last-child {
 border-bottom: 1px solid #e60012;
}
body.business #right-contents .mainlist li .cont {
 width: 100%;
 max-width: 710px;
}
body.business #right-contents .mainlist li .cont .since {
 font-size: 46px;
 font-size: 4.6rem;
 font-family: "Open Sans", sans-serif;
 color: #e60012;
 margin-bottom: 38px;
 font-style: italic;
}
@media only screen and (max-width: 767px) {
 body.business #right-contents .mainlist li .cont .since {
  font-size: 30px;
  font-size: 3rem;
  margin-bottom: 24px;
 }
}
body.business #right-contents .mainlist li .cont h3 {
 font-size: 35px;
 font-size: 3.5rem;
 font-weight: bold;
 margin-bottom: 28px;
}
@media only screen and (max-width: 767px) {
 body.business #right-contents .mainlist li .cont h3 {
  font-size: 25px;
  font-size: 2.5rem;
  text-align: center;
  margin-bottom: 14px;
  line-height: 1.5em;
 }
}
body.business #right-contents .mainlist li .cont .box {
 display: flex;
 display: -webkit-flex;
 align-items: center;
 -webkit-align-items: center;
}
@media only screen and (max-width: 767px) {
 body.business #right-contents .mainlist li .cont .box {
  flex-direction: column;
 }
}
body.business #right-contents .mainlist li .cont .box.column {
 flex-direction: column;
 -webkit-flex-direction: column;
 justify-content: flex-start;
 -webkit-justify-content: flex-start;
 align-items: flex-start;
 -webkit-align-items: flex-start;
}
body.business #right-contents .mainlist li .cont .box.column .right {
 margin-left: 0;
 width: 490px;
 margin-top: 32px;
}
@media only screen and (max-width: 767px) {
 body.business #right-contents .mainlist li .cont .box.column .right {
  width: 100%;
  margin-top: 12px;
 }
}
body.business #right-contents .mainlist li .cont .box.thin {
 align-items: flex-start;
}
@media only screen and (max-width: 767px) {
 body.business #right-contents .mainlist li .cont .box.thin {
  align-items: center;
 }
}
body.business #right-contents .mainlist li .cont .box .left {
 flex: 1;
 -webkit-flex: 1;
}
body.business #right-contents .mainlist li .cont .box .left.flex-basis {
 flex-basis: auto;
}
body.business #right-contents .mainlist li .cont .box .left h4 {
 font-weight: bold;
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 30px;
 margin-bottom: 9px;
}
@media only screen and (max-width: 767px) {
 body.business #right-contents .mainlist li .cont .box .left h4 {
  text-align: center;
  margin-bottom: 4px;
 }
}
body.business #right-contents .mainlist li .cont .box .left .text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 30px;
 font-feature-settings: "palt";
}
body.business #right-contents .mainlist li .cont .box .right {
 width: 240px;
 margin-left: 63px;
}
@media only screen and (max-width: 767px) {
 body.business #right-contents .mainlist li .cont .box .right {
  width: 50%;
  margin-left: 0;
  margin-top: 12px;
 }
}
body.business #right-contents .mainlist li .cont .moreinfo {
 display: block;
 margin-top: 43px;
 background-color: #e60012;
 color: white;
 width: 255px;
 text-align: center;
 position: relative;
 padding: 0px 26px 0px 42px;
 font-size: 16px;
 font-size: 1.6rem;
 margin-left: -20px;
 line-height: 35px;
 z-index: 1;
}
@media only screen and (min-width: 768px) {
 body.business #right-contents .mainlist li .cont .moreinfo {
  transition: opacity 0.3s;
 }
 body.business #right-contents .mainlist li .cont .moreinfo:hover {
  opacity: 0.6;
 }
}
@media only screen and (max-width: 767px) {
 body.business #right-contents .mainlist li .cont .moreinfo {
  margin: 25px auto 0;
 }
}
body.business #right-contents .mainlist li .cont .moreinfo:before {
 position: absolute;
 content: "";
 left: -2px;
 top: -2px;
 width: 0;
 height: 0;
 border: none;
 border-left: solid 40px white;
 border-bottom: solid 79px transparent;
 z-index: 2;
}
@media only screen and (max-width: 767px) {
 body.business #right-contents .mainlist li .cont .moreinfo:before {
  border-bottom: solid 60px transparent;
 }
}
body.business #right-contents .mainlist li .cont .moreinfo:after {
 position: absolute;
 content: "";
 right: -3px;
 top: -7px;
 width: 0;
 height: 0;
 border: none;
 border-left: solid 40px transparent;
 border-bottom: solid 79px white;
 z-index: 2;
}
@media only screen and (max-width: 767px) {
 body.business #right-contents .mainlist li .cont .moreinfo:after {
  border-bottom: solid 60px white;
 }
}
body.business
 #right-contents
 .mainlist
 li
 .cont
 .moreinfo
 span
 _:lang(x)::-ms-backdrop,
body.business #right-contents .mainlist li .cont .moreinfo span {
 display: inline-block;
 padding-top: 6px;
}
body.business #right-contents .mainlist li .cont .moreinfo span:after {
 content: "";
 width: 13px;
 height: 14px;
 background-image: url(../images/common/arrow-white.svg);
 background-repeat: no-repeat;
 background-position: center;
 background-size: 100%;
 display: inline-block;
 transform: rotate(90deg);
 margin-bottom: -1px;
}
body.business #right-contents .bottom-tomorrow {
 color: #e60012;
 font-size: 45px;
 font-size: 4.5rem;
 font-family: "Open Sans", sans-serif;
 font-style: italic;
 margin-top: 42px;
}
@media only screen and (max-width: 767px) {
 body.business #right-contents .bottom-tomorrow {
  font-size: 30px;
  font-size: 3rem;
  margin-top: 21px;
 }
}

body.business #left-contents {
 position: fixed;
 width: 28vw;
 max-width: 322px;
 top: calc((100vh / 2) + 96px);
 transform: translateY(-50%);
 left: 30px;
}
@media screen and (min-width: 1164px) {
 body.business #left-contents {
  left: 0;
  right: 66%;
  margin: auto;
 }
}
@media only screen and (max-width: 767px) {
 body.business #left-contents {
  display: none !important;
 }
}
body.business #left-contents .hide {
 display: none;
}

body.message section.message .inner h2 {
 display: block;
 margin: 0 auto;
}
@media only screen and (min-width: 768px) {
 body.message section.message .inner h2 {
  width: 853px;
  height: 21px;
 }
}
@media only screen and (max-width: 767px) {
 body.message section.message .inner h2 {
  width: 330px;
  height: 50px;
 }
}

body.message section.message .inner img.img-main {
 display: block;
 width: 100%;
 margin: 40px 0 60px;
}
@media only screen and (max-width: 767px) {
 body.message section.message .inner img.img-main {
  margin: 34px 0;
 }
}

@media only screen and (min-width: 768px) {
 body.message section.message .inner h3 img {
  height: 21px;
 }
}

@media only screen and (max-width: 767px) {
 body.message section.message .inner h3 img {
  height: 15px;
 }
}

body.message section.message .inner p {
 font-size: 16px;
 font-size: 1.6rem;
 text-align: justify;
 line-height: 1.875;
 padding: 16px 0 0;
}

body.message section.message .inner .name {
 text-align: right;
 padding: 20px 0 0;
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: flex-end;
 justify-content: flex-end;
}
body.message section.message .inner .name img {
 display: inline-block;
 margin-left: 15px;
 width: 97px;
}
body.message section.message .inner .name img _:lang(x)::-ms-backdrop,
body.message section.message .inner .name img {
 position: relative;
 top: -3px;
}

body.our-efforts section.our-efforts .inner h2 {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 color: #fff;
 background: #e60012;
 text-align: center;
 padding: 12px;
 margin: 40px 0 30px 0;
 line-height: 1.5;
}
body.our-efforts section.our-efforts .inner h2 _:lang(x)::-ms-backdrop,
body.our-efforts section.our-efforts .inner h2 {
 padding: 15px 12px 9px;
}
@media only screen and (max-width: 767px) {
 body.our-efforts section.our-efforts .inner h2 {
  margin: 20px 0 16px;
 }
}

body.our-efforts section.our-efforts .inner p {
 font-size: 18px;
 font-size: 1.8rem;
 font-weight: bold;
 text-align: center;
 padding: 30px 0 40px 0;
}
@media only screen and (max-width: 767px) {
 body.our-efforts section.our-efforts .inner p {
  padding: 0 0 20px 0;
  text-align: left;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.75;
 }
}

body.our-efforts section.our-efforts .inner ul li {
 margin: 0 0 50px 0;
}
@media only screen and (min-width: 768px) {
 body.our-efforts section.our-efforts .inner ul li {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
 }
}
@media only screen and (max-width: 767px) {
 body.our-efforts section.our-efforts .inner ul li {
  margin: 0;
 }
}
body.our-efforts section.our-efforts .inner ul li:last-child {
 margin: 0;
}
@media only screen and (max-width: 767px) {
 body.our-efforts section.our-efforts .inner ul li:last-child .image {
  margin: 0;
 }
}
body.our-efforts section.our-efforts .inner ul li .image {
 width: 48.3%;
}
@media only screen and (max-width: 767px) {
 body.our-efforts section.our-efforts .inner ul li .image {
  width: 100%;
  margin: 0 0 20px 0;
 }
}
body.our-efforts section.our-efforts .inner ul li p {
 width: 48.5%;
 font-size: 16px;
 font-size: 1.6rem;
 text-align: justify;
 line-height: 1.875;
 font-weight: normal;
 padding: 0;
 font-feature-settings: "palt";
}
@media only screen and (max-width: 767px) {
 body.our-efforts section.our-efforts .inner ul li p {
  width: 100%;
  margin: 0 0 20px 0;
 }
}

body.philosophy section.philosophy .inner .philosophy-detail01 h2 {
 background: #e60012;
 color: #fff;
 font-weight: bold;
 font-size: 20px;
 font-size: 2rem;
 text-align: center;
 padding: 12px 0;
}
body.philosophy
 section.philosophy
 .inner
 .philosophy-detail01
 h2
 _:lang(x)::-ms-backdrop,
body.philosophy section.philosophy .inner .philosophy-detail01 h2 {
 padding: 15px 0 9px;
}

body.philosophy section.philosophy .inner .philosophy-detail01 .catch {
 margin: 56px 0 0;
}
@media only screen and (max-width: 767px) {
 body.philosophy section.philosophy .inner .philosophy-detail01 .catch {
  margin: 28px 0 0;
 }
}
body.philosophy section.philosophy .inner .philosophy-detail01 .catch img {
 display: block;
 margin: 0 auto;
}
@media only screen and (min-width: 768px) {
 body.philosophy section.philosophy .inner .philosophy-detail01 .catch img {
  height: 185px;
 }
}
@media only screen and (max-width: 767px) {
 body.philosophy section.philosophy .inner .philosophy-detail01 .catch img {
  height: 120px;
 }
}

body.philosophy section.philosophy .inner .philosophy-detail01 .catch-sub {
 margin: 50px 0 0;
}
@media only screen and (max-width: 767px) {
 body.philosophy section.philosophy .inner .philosophy-detail01 .catch-sub {
  margin: 25px 0 0;
 }
}
body.philosophy section.philosophy .inner .philosophy-detail01 .catch-sub img {
 display: block;
 margin: 0 auto;
}
@media only screen and (min-width: 768px) {
 body.philosophy section.philosophy .inner .philosophy-detail01 .catch-sub img {
  height: 16px;
 }
}
@media only screen and (max-width: 767px) {
 body.philosophy section.philosophy .inner .philosophy-detail01 .catch-sub img {
  height: 50px;
 }
}

body.philosophy section.philosophy .inner .philosophy-detail01 .satisfaction {
 margin: 80px 0 0;
}
@media only screen and (max-width: 767px) {
 body.philosophy section.philosophy .inner .philosophy-detail01 .satisfaction {
  margin: 34px 0 0;
 }
}
@media only screen and (min-width: 768px) {
 body.philosophy
  section.philosophy
  .inner
  .philosophy-detail01
  .satisfaction
  ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
 }
}
body.philosophy
 section.philosophy
 .inner
 .philosophy-detail01
 .satisfaction
 ul
 li {
 width: 29.4%;
}
@media only screen and (max-width: 767px) {
 body.philosophy
  section.philosophy
  .inner
  .philosophy-detail01
  .satisfaction
  ul
  li {
  width: 100%;
  padding: 0 0 36px 0;
 }
}
body.philosophy
 section.philosophy
 .inner
 .philosophy-detail01
 .satisfaction
 ul
 li
 .title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 background: #f0f0f0;
 border-bottom: 2px solid #e60012;
 text-align: center;
 padding: 10px 0;
}
body.philosophy
 section.philosophy
 .inner
 .philosophy-detail01
 .satisfaction
 ul
 li
 .title
 _:lang(x)::-ms-backdrop,
body.philosophy
 section.philosophy
 .inner
 .philosophy-detail01
 .satisfaction
 ul
 li
 .title {
 padding: 13px 0 7px;
}
body.philosophy
 section.philosophy
 .inner
 .philosophy-detail01
 .satisfaction
 ul
 li
 .text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
 padding: 10px 0 0;
}

body.philosophy section.philosophy .inner .philosophy-detail03 {
 padding: 100px 0 0;
}
@media only screen and (max-width: 767px) {
 body.philosophy section.philosophy .inner .philosophy-detail03 {
  padding: 40px 0 0;
 }
}
@media only screen and (min-width: 768px) {
 body.philosophy section.philosophy .inner .philosophy-detail03 .foundation ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
 }
}
body.philosophy
 section.philosophy
 .inner
 .philosophy-detail03
 .foundation
 ul
 li {
 width: 48%;
}
@media only screen and (max-width: 767px) {
 body.philosophy
  section.philosophy
  .inner
  .philosophy-detail03
  .foundation
  ul
  li {
  width: 100%;
  padding: 0 0 40px 0;
 }
}
body.philosophy
 section.philosophy
 .inner
 .philosophy-detail03
 .foundation
 ul
 li
 .title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 text-align: center;
 color: #fff;
 background: #e60012;
 padding: 12px 0;
}
body.philosophy
 section.philosophy
 .inner
 .philosophy-detail03
 .foundation
 ul
 li
 .title
 _:lang(x)::-ms-backdrop,
body.philosophy
 section.philosophy
 .inner
 .philosophy-detail03
 .foundation
 ul
 li
 .title {
 padding: 15px 0 9px;
}
body.philosophy
 section.philosophy
 .inner
 .philosophy-detail03
 .foundation
 ul
 li
 .text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
 padding: 10px 0 0;
}
body.philosophy section.philosophy .inner .philosophy-detail03 .csr {
 padding: 44px 0 0;
}
@media only screen and (max-width: 767px) {
 body.philosophy section.philosophy .inner .philosophy-detail03 .csr {
  padding: 0;
 }
}
body.philosophy section.philosophy .inner .philosophy-detail03 .csr .title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 color: #fff;
 background: #4d4d4d;
 text-align: center;
 padding: 12px 0;
}
body.philosophy
 section.philosophy
 .inner
 .philosophy-detail03
 .csr
 .title
 _:lang(x)::-ms-backdrop,
body.philosophy section.philosophy .inner .philosophy-detail03 .csr .title {
 padding: 15px 0 9px;
}
body.philosophy section.philosophy .inner .philosophy-detail03 .csr .text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
 padding: 10px 0 0;
}

body.philosophy section.philosophy .philosophy-detail02 {
 margin: 80px 0 0;
 height: 600px;
 width: 100%;
 padding: 110px 0;
 background: url("../images/company/philosophy-bg.jpg") center/cover no-repeat;
}
@media only screen and (max-width: 767px) {
 body.philosophy section.philosophy .philosophy-detail02 {
  margin: 0;
  padding: 36px 20px;
  height: 300px;
 }
}
@media only screen and (max-width: 320px) {
 body.philosophy section.philosophy .philosophy-detail02 {
  height: 350px;
 }
}
body.philosophy section.philosophy .philosophy-detail02 .invention {
 max-width: 600px;
 margin: 0 auto;
 background: rgba(255, 255, 255, 0.9);
 border-left: 10px solid #e60012;
}
@media only screen and (max-width: 767px) {
 body.philosophy section.philosophy .philosophy-detail02 .invention {
  border-left: 5px solid #e60012;
 }
}
body.philosophy
 section.philosophy
 .philosophy-detail02
 .invention
 .invention-inner {
 max-width: 430px;
 margin: 0 auto;
 padding: 40px 0;
}
@media only screen and (max-width: 767px) {
 body.philosophy
  section.philosophy
  .philosophy-detail02
  .invention
  .invention-inner {
  padding: 25px 0 25px 36px;
 }
}
body.philosophy
 section.philosophy
 .philosophy-detail02
 .invention
 .invention-inner
 img {
 display: block;
}
@media only screen and (min-width: 768px) {
 body.philosophy
  section.philosophy
  .philosophy-detail02
  .invention
  .invention-inner
  img {
  height: 272px;
 }
}
@media only screen and (max-width: 767px) {
 body.philosophy
  section.philosophy
  .philosophy-detail02
  .invention
  .invention-inner
  img {
  height: 170px;
 }
}

body.policy section.policy .inner .quality {
 font-size: 16px;
 font-size: 1.6rem;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.policy section.policy .inner .quality {
  text-align: left;
  line-height: 1.875;
 }
}

body.policy section.policy .inner .quality-image {
 max-width: 226px;
 margin: 40px auto 0;
}
@media only screen and (max-width: 767px) {
 body.policy section.policy .inner .quality-image {
  max-width: 193px;
  margin: 30px auto 0;
 }
}

body.policy section.policy .inner h2 {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 color: #fff;
 background: #4d4d4d;
 text-align: center;
 padding: 12px 0;
 margin: 40px 0 30px 0;
}
body.policy section.policy .inner h2 _:lang(x)::-ms-backdrop,
body.policy section.policy .inner h2 {
 padding: 15px 0 9px;
}
@media only screen and (max-width: 767px) {
 body.policy section.policy .inner h2 {
  margin: 20px 0 16px 0;
 }
}

body.policy section.policy .inner .text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
}

body.policy section.policy .inner h3 {
 font-size: 24px;
 font-size: 2.4rem;
 letter-spacing: 0.08em;
 font-family: "Sawarabi Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
  "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (max-width: 767px) {
 body.policy section.policy .inner h3 {
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  line-height: 1.875;
  padding: 10px 0 0;
 }
}

body.policy section.policy .inner h3 img {
 display: block;
 margin: 0 auto;
}
@media only screen and (min-width: 768px) {
 body.policy section.policy .inner h3 img {
  width: 772px;
  height: 22px;
 }
}
@media only screen and (max-width: 767px) {
 body.policy section.policy .inner h3 img {
  width: 283.5px;
  height: 99px;
 }
}

body.policy section.policy .inner ol {
 margin: 0 0 0 20px;
}
body.policy section.policy .inner ol li {
 list-style-type: decimal;
 margin: 34px 0 0;
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
}
@media only screen and (max-width: 767px) {
 body.policy section.policy .inner ol li {
  margin: 30px 0 0;
 }
}

body.policy section.policy .inner ul {
 margin: 40px 0 0;
}
@media only screen and (min-width: 768px) {
 body.policy section.policy .inner ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
 }
}
body.policy section.policy .inner ul li {
 width: 29.4%;
}
@media only screen and (max-width: 767px) {
 body.policy section.policy .inner ul li {
  width: 100%;
  margin: 0 0 25px 0;
 }
 body.policy section.policy .inner ul li:last-child {
  margin: 0;
 }
}

body.company-main #contents {
 margin: 75px 0 8px;
}
@media only screen and (max-width: 767px) {
 body.company-main #contents {
  margin: 40px 0 6px;
 }
}
@media only screen and (max-width: 767px) {
 body.company-main #contents .inner ul {
  max-width: 500px;
  margin: 0 auto;
 }
}
body.company-main #contents .inner ul a {
 display: flex;
 background-color: #f0f0f0;
 margin-bottom: 30px;
 background-image: url(../images/company/edge.png);
 background-position: right bottom;
 background-size: 65px;
 background-repeat: no-repeat;
 height: 170px;
 border-left: 5px solid #e60012;
 align-items: center;
}
@media only screen and (min-width: 768px) {
 body.company-main #contents .inner ul a {
  transition: opacity 0.3s;
 }
 body.company-main #contents .inner ul a:hover {
  opacity: 0.6;
 }
}
@media only screen and (max-width: 767px) {
 body.company-main #contents .inner ul a {
  height: 60px;
  border-left: 2.5px solid #e60012;
  background-size: 23px;
  margin-bottom: 20px;
 }
}
body.company-main #contents .inner ul a:last-child {
 margin-bottom: 0;
}
body.company-main #contents .inner ul a .linkmv {
 background-size: cover;
 background-position: center;
 width: 350px;
 height: 100%;
 margin-right: 45px;
}
@media only screen and (max-width: 767px) {
 body.company-main #contents .inner ul a .linkmv {
  width: 100px;
  margin-right: 12px;
 }
}
body.company-main #contents .inner ul a .cont {
 flex: 1;
}
body.company-main #contents .inner ul a .cont .en {
 height: 43px;
 margin-bottom: 2px;
}
@media screen and (max-width: 1045px) {
 body.company-main #contents .inner ul a .cont .en {
  height: 32px;
 }
}
@media screen and (max-width: 910px) {
 body.company-main #contents .inner ul a .cont .en {
  height: 25px;
 }
}
@media screen and (max-width: 815px) {
 body.company-main #contents .inner ul a .cont .en {
  height: 20px;
 }
}
@media only screen and (max-width: 767px) {
 body.company-main #contents .inner ul a .cont .en {
  height: 18px;
 }
}
@media screen and (max-width: 374px) {
 body.company-main #contents .inner ul a .cont .en {
  height: 13px;
 }
}
@media screen and (max-width: 320px) {
 body.company-main #contents .inner ul a .cont .en {
  height: 11px;
 }
}
body.company-main #contents .inner ul a .cont .en img {
 height: 100%;
}
body.company-main #contents .inner ul a .cont .jp {
 font-size: 24px;
 font-size: 2.4rem;
 letter-spacing: -0.04em;
 font-weight: bold;
}
@media only screen and (max-width: 767px) {
 body.company-main #contents .inner ul a .cont .jp {
  font-size: 18px;
  font-size: 1.8rem;
 }
}
@media only screen and (max-width: 320px) {
 body.company-main #contents .inner ul a .cont .jp {
  font-size: 10px;
  font-size: 1rem;
 }
}

body.contact {
 /* dislay */
}
body.contact .errMsg {
 margin-left: 1em;
 padding-bottom: 1px;
 display: block;
 line-height: 1.4;
 text-indent: -0.9em;
}
body.contact .formError {
 padding-bottom: 13px;
 display: block;
}
body.contact .fixed {
 padding-bottom: 0px;
}
body.contact .formError .formErrorClose {
 border: solid #252525 2px;
 display: block;
 width: 16px;
 height: 16px;
 position: absolute;
 top: -4px;
 right: -4px;
 color: #efefef;
 background: #333;
 font-weight: bold;
 text-align: center;
 line-height: middle;
 cursor: pointer;
 z-index: 2;
 -webkit-border-radius: 9px 9px 9px 9px;
 -moz-border-radius: 9px 9px 9px 9px;
 -ms-border-radius: 9px 9px 9px 9px;
 -o-border-radius: 9px 9px 9px 9px;
 border-radius: 9px 9px 9px 9px;
 -webkit-box-shadow: 1px -1px 3px #888;
 -moz-box-shadow: 1px -1px 3px #888;
 -ms-box-shadow: 1px -1px 3px #888;
 -o-box-shadow: 1px -1px 3px #888;
 box-shadow: 1px -1px 3px #888;
}
body.contact .formError .formErrorClose:hover {
 background: #666;
}
body.contact .fixed .formErrorClose {
 display: none;
}
body.contact .formError .formErrorContent {
 padding: 6px 10px;
 width: 180px;
 position: relative;
 color: #fff;
 background: #252525;
 font-family: "Lucida Sans Unicode", "Lucida Grande", Arial, Helvetica,
  "ヒラギノ丸ゴ Pro W4", HiraMaruPro-W4, "ヒラギノ角ゴ Pro W3", "メイリオ",
  Meiryo, Osaka, sans-serif;
 font-size: 11px;
 margin: 0 0;
 z-index: 1;
 -webkit-border-radius: 3px;
 -moz-border-radius: 3px;
 -ms-border-radius: 3px;
 -o-border-radius: 3px;
 border-radius: 3px;
 -webkit-box-shadow: 0px 0px 6px #888;
 -moz-box-shadow: 0px 0px 6px #888;
 -ms-box-shadow: 0px 0px 6px #888;
 -o-box-shadow: 0px 0px 6px #888;
 box-shadow: 0px 0px 6px #888;
}
body.contact .fixed .formErrorContent {
 margin-top: 0.5em;
 background: #f60;
 margin: 0 0 30px 0;
 -webkit-border-radius: none;
 -moz-border-radius: none;
 -ms-border-radius: none;
 -o-border-radius: none;
 border-radius: none;
 -webkit-box-shadow: none;
 -moz-box-shadow: none;
 -ms-box-shadow: none;
 -o-box-shadow: none;
 box-shadow: none;
}
body.contact .fadeOut {
 opacity: 0.2;
 filter: alpha(opacity=20);
}
body.contact .formError .formErrorArrow {
 width: 15px;
 height: 15px;
 position: absolute;
 bottom: 0;
 left: 20px;
 margin: 0 0 30px 0;
 z-index: 0;
}
body.contact .fixed .formErrorArrow {
 display: none;
}
body.contact .formErrorArrow {
 opacity: 0;
}
body.contact .formError .formErrorArrowBottom {
 margin: -6px;
 top: 0;
}
body.contact .fixed .formErrorArrowBottom {
 display: none;
}
body.contact .formError .formErrorArrow div {
 margin: 0 auto;
 display: block;
 height: 1px;
 background: #252525;
 line-height: 0px;
 font-size: 0px;
 -webkit-box-shadow: 0px 2px 3px #888;
 -moz-box-shadow: 0px 2px 3px #888;
 -ms-box-shadow: 0px 2px 3px #888;
 -o-box-shadow: 0px 2px 3px #888;
 box-shadow: 0px 2px 3px #888;
}
body.contact .formError .formErrorArrowBottom div {
 -webkit-box-shadow: none;
 -moz-box-shadow: none;
 -ms-box-shadow: none;
 -o-box-shadow: none;
 box-shadow: none;
}
body.contact .formError .formErrorArrow .line10 {
 width: 19px;
}
body.contact .formError .formErrorArrow .line9 {
 width: 17px;
}
body.contact .formError .formErrorArrow .line8 {
 width: 15px;
}
body.contact .formError .formErrorArrow .line7 {
 width: 13px;
}
body.contact .formError .formErrorArrow .line6 {
 width: 11px;
}
body.contact .formError .formErrorArrow .line5 {
 width: 9px;
}
body.contact .formError .formErrorArrow .line4 {
 width: 7px;
}
body.contact .formError .formErrorArrow .line3 {
 width: 5px;
}
body.contact .formError .formErrorArrow .line2 {
 width: 3px;
}
body.contact .formError .formErrorArrow .line1 {
 width: 1px;
}
body.contact .hid_url {
 display: none;
}
@media only screen and (max-width: 767px) {
 body.contact.subpage .wrap {
  padding: 50px 0 0;
 }
}
body.contact .wrap main > .inner {
 margin: 80px auto 0;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main > .inner {
  margin: 35px 0 0;
 }
}
body.contact .wrap main > .inner h2 {
 font-size: 20px;
 font-size: 2rem;
 background: #4d4d4d;
 color: #fff;
 text-align: center;
 padding: 10px 12px;
 line-height: 1.5;
}
@media only screen and (max-width: 320px) {
 body.contact .wrap main > .inner h2 {
  font-size: 17px;
  font-size: 1.7rem;
 }
}
body.contact .wrap main > .inner h2 _:lang(x)::-ms-backdrop,
body.contact .wrap main > .inner h2 {
 padding: 15px 0 9px;
}
body.contact .wrap main > .inner form {
 background: #f0f0f0;
 /* input start */
 /* IE */
 /* Edge */
 /* email check*/
 /* IE */
 /* Edge */
 /* text area */
 /* IE */
 /* Edge */
 /* input end */
}
body.contact .wrap main > .inner form input,
body.contact .wrap main > .inner form textarea {
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
 padding: 0;
 margin: 0;
 border-radius: 0;
 border: none;
 outline: none;
 background: #fff;
}
body.contact .wrap main > .inner form input::placeholder {
 color: #e1e1e1;
}
body.contact .wrap main > .inner form input:-ms-input-placeholder {
 color: #e1e1e1;
}
body.contact .wrap main > .inner form input::-ms-input-placeholder {
 color: #e1e1e1;
}
body.contact .wrap main > .inner form input[name="email-check"]::placeholder {
 color: #e60012;
}
body.contact
 .wrap
 main
 > .inner
 form
 input[name="email-check"]:-ms-input-placeholder {
 color: #e60012;
}
body.contact
 .wrap
 main
 > .inner
 form
 input[name="email-check"]::-ms-input-placeholder {
 color: #e60012;
}
body.contact .wrap main > .inner form textarea::placeholder {
 color: #e1e1e1;
}
body.contact .wrap main > .inner form textarea:-ms-input-placeholder {
 color: #e1e1e1;
}
body.contact .wrap main > .inner form textarea::-ms-input-placeholder {
 color: #e1e1e1;
}
body.contact .wrap main > .inner form .form-inner {
 padding: 36px 100px 76px 50px;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main > .inner form .form-inner {
  padding: 20px 14px 50px 14px;
 }
}
body.contact .wrap main > .inner form .form-inner .row {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-align-items: center;
 align-items: center;
 padding: 14px 0;
}
@media only screen and (min-width: 768px) {
 body.contact .wrap main > .inner form .form-inner .row {
  padding: 20px 0;
 }
}
@media only screen and (min-width: 768px) {
 body.contact .wrap main > .inner form .form-inner .row.messagerow {
  -webkit-align-items: flex-start;
  align-items: flex-start;
 }
 body.contact .wrap main > .inner form .form-inner .row.messagerow .left {
  margin-top: 6px;
 }
}
body.contact .wrap main > .inner form .form-inner .row.shearright .right ul {
 margin-right: -32px;
}
body.contact .wrap main > .inner form .form-inner .row .left {
 width: 29%;
 text-align: right;
 padding: 0 3.5% 0 0;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main > .inner form .form-inner .row .left {
  width: 100%;
  padding: 0;
  text-align: left;
 }
}
body.contact .wrap main > .inner form .form-inner .row .left label {
 font-size: 16px;
 font-size: 1.6rem;
 font-weight: bold;
 display: inline-block;
 padding: 0 10px 0 0;
}
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .row
 .left
 label
 _:lang(x)::-ms-backdrop,
body.contact .wrap main > .inner form .form-inner .row .left label {
 top: 2px;
 position: relative;
}
body.contact .wrap main > .inner form .form-inner .row .left span {
 padding: 4px 8px;
 display: inline-block;
 color: #fff;
 text-align: center;
 font-size: 12px;
 font-size: 1.2rem;
 font-weight: bold;
 border-radius: 6px;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main > .inner form .form-inner .row .left span {
  border-radius: 4px;
  padding: 4px 8px;
 }
}
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .row
 .left
 span
 _:lang(x)::-ms-backdrop,
body.contact .wrap main > .inner form .form-inner .row .left span {
 padding: 6px 8px 2px;
}
body.contact .wrap main > .inner form .form-inner .row .left .req {
 background: #e60012;
}
body.contact .wrap main > .inner form .form-inner .row .left .any {
 background: #706f70;
}
body.contact .wrap main > .inner form .form-inner .row .right {
 width: 71%;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main > .inner form .form-inner .row .right {
  width: 100%;
 }
}
@media only screen and (min-width: 768px) {
 body.contact .wrap main > .inner form .form-inner .row .right ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: -10px;
 }
}
body.contact .wrap main > .inner form .form-inner .row .right ul li {
 padding: 0 32px 10px 0;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main > .inner form .form-inner .row .right ul li {
  width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
  padding: 14px 0 0 0;
 }
}
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .row
 .right
 ul
 li
 input[type="checkbox"] {
 width: 12px;
 height: 12px;
 margin: 0 2px 0 0;
 position: relative;
}
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .row
 .right
 ul
 li
 input[type="checkbox"]:before {
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 content: "";
 display: block;
 width: 8px;
 height: 8px;
 background: #fff;
}
@media only screen and (max-width: 767px) {
 body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  input[type="checkbox"]:before {
  width: 16px;
  height: 16px;
 }
}
@media only screen and (max-width: 767px) {
 body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  input[type="checkbox"] {
  width: 25px;
  height: 25px;
  margin: 0 10px 0 0;
 }
}
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .row
 .right
 ul
 li
 input[type="checkbox"]:checked:before {
 background: #000;
}
body.contact .wrap main > .inner form .form-inner .row .right ul li label {
 display: inline-block;
 font-size: 14px;
 font-size: 1.4rem;
}
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .row
 .right
 input[type="text"], select {
 padding: 0 10px;
 font-size: 16px;
 font-size: 1.6rem;
 width: 100%;
 height: 32px;
 line-height: 1.875;
 border: none;
}
@media only screen and (max-width: 767px) {
 body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  input[type="text"] {
  margin: 10px 0 0;
 }
}
@media only screen and (min-width: 768px) {
 body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  input[name="department"] {
  max-width: 240px;
 }
}
body.contact .wrap main > .inner form .form-inner .row .right input[name="zip"],
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .row
 .right
 input[name="tel"] {
 max-width: 130px;
}
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .row
 .right
 input[name="zip"]
 _:lang(x)::-ms-backdrop,
body.contact .wrap main > .inner form .form-inner .row .right input[name="zip"],
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .row
 .right
 input[name="tel"]
 _:lang(x)::-ms-backdrop,
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .row
 .right
 input[name="tel"] {
 float: left;
}
@supports (-ms-ime-align: auto) {
 body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  input[name="zip"],
 body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  input[name="tel"] {
  float: left;
 }
}
@media only screen and (max-width: 767px) {
 body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  input[name="tel"] {
  max-width: 100%;
 }
}
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .row
 .right
 input[name="email"],
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .row
 .right
 input[name="email-check"] {
 max-width: 400px;
}
body.contact .wrap main > .inner form .form-inner .row .right .zip-search {
 background: #706f70;
 color: #fff;
 text-align: center;
 border-radius: 6px;
 padding: 0 6px;
 height: 32px;
 display: -webkit-inline-flex;
 display: inline-flex;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
 font-size: 12px;
 font-size: 1.2rem;
 margin-left: 16px;
 cursor: pointer;
 transition: opacity 0.3s;
}
@media only screen and (min-width: 768px) {
 body.contact .wrap main > .inner form .form-inner .row .right .zip-search {
  transition: opacity 0.3s;
 }
 body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  .zip-search:hover {
  opacity: 0.6;
 }
}
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .row
 .right
 .zip-search:hover {
 opacity: 0.6;
}
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .row
 .right
 .zip-search
 _:lang(x)::-ms-backdrop,
body.contact .wrap main > .inner form .form-inner .row .right .zip-search {
 float: left;
}
@supports (-ms-ime-align: auto) {
 body.contact .wrap main > .inner form .form-inner .row .right .zip-search {
  float: left;
 }
}
body.contact .wrap main > .inner form .form-inner .row .right textarea {
 width: 100%;
 padding: 10px;
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 height: 200px;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main > .inner form .form-inner .row .right textarea {
  margin: 10px 0 0;
  height: 152px;
 }
}
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .row
 .right
 textarea[name="address"] {
 height: 32px;
 padding: 0 10px;
}
@media only screen and (max-width: 767px) {
 body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  textarea[name="address"] {
  height: 64px;
  padding: 4px 10px;
 }
}
body.contact .wrap main > .inner form .form-inner .privacy {
 text-align: center;
 margin: 20px 0 0;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main > .inner form .form-inner .privacy {
  text-align: left;
  margin: 30px 0 0;
 }
}
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .privacy
 input[type="checkbox"] {
 width: 12px;
 height: 12px;
 position: relative;
}
@media only screen and (max-width: 767px) {
 body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .privacy
  input[type="checkbox"] {
  width: 14px;
  height: 14px;
 }
}
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .privacy
 input[type="checkbox"]:before {
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 content: "";
 display: block;
 width: 8px;
 height: 8px;
 background: #fff;
}
@media only screen and (max-width: 767px) {
 body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .privacy
  input[type="checkbox"]:before {
  width: 10px;
  height: 10px;
 }
}
body.contact
 .wrap
 main
 > .inner
 form
 .form-inner
 .privacy
 input[type="checkbox"]:checked:before {
 background: #000;
}
body.contact .wrap main > .inner form .form-inner .privacy label {
 font-size: 14px;
 font-size: 1.4rem;
}
body.contact .wrap main > .inner form .form-inner .privacy label a {
 text-decoration: underline;
}
@media only screen and (min-width: 768px) {
 body.contact .wrap main > .inner form .form-inner .privacy label a {
  transition: opacity 0.3s;
 }
 body.contact .wrap main > .inner form .form-inner .privacy label a:hover {
  opacity: 0.6;
 }
}
body.contact .wrap main > .inner form .form-inner button {
 display: block;
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
 outline: none;
 cursor: pointer;
 margin: 20px auto 0;
 padding: 14px 0;
 width: 300px;
 border: none;
 border-radius: 0;
 background: #e60012;
 color: #fff;
 text-align: center;
 font-size: 16px;
 font-size: 1.6rem;
 font-weight: bold;
 transition: opacity 0.3s;
}
@media only screen and (min-width: 768px) {
 body.contact .wrap main > .inner form .form-inner button {
  transition: opacity 0.3s;
 }
 body.contact .wrap main > .inner form .form-inner button:hover {
  opacity: 0.6;
 }
}
body.contact .wrap main > .inner form .form-inner button:hover {
 opacity: 0.6;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main > .inner form .form-inner button {
  width: 100%;
  padding: 12px 0;
 }
}
body.contact .wrap main .contact-text {
 padding: 100px 0 50px 0;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main .contact-text {
  padding: 60px 0 24px 0;
 }
}
body.contact .wrap main .contact-text .inner {
 text-align: center;
}
body.contact .wrap main .contact-text .inner h2 {
 font-size: 20px;
 font-size: 2rem;
 background: #4d4d4d;
 color: #fff;
 padding: 10px 12px;
 line-height: 1.5;
}
@media only screen and (max-width: 320px) {
 body.contact .wrap main .contact-text .inner h2 {
  font-size: 17px;
  font-size: 1.7rem;
 }
}
body.contact .wrap main .contact-text .inner h2 _:lang(x)::-ms-backdrop,
body.contact .wrap main .contact-text .inner h2 {
 padding: 15px 0 9px;
}
body.contact .wrap main .contact-text .inner > p {
 font-size: 12px;
 font-size: 1.2rem;
 padding: 36px 0 46px 0;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main .contact-text .inner > p {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 20px 0;
  text-align: justify;
  line-height: 1.875;
 }
}
body.contact .wrap main .contact-text .inner h3 {
 font-size: 20px;
 font-size: 2rem;
 background: #f0f0f0;
 color: #4d4d4d;
 padding: 12px 0;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main .contact-text .inner h3 {
  padding: 10px 0;
 }
}
body.contact .wrap main .contact-text .inner ul {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
 margin: 0 0 60px 0;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main .contact-text .inner ul {
  margin: 0 0 10px 0;
 }
}
body.contact .wrap main .contact-text .inner ul li {
 width: 30%;
 margin: 30px 0 0;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main .contact-text .inner ul li {
  width: 44.78%;
  margin: 10px 0 30px 0;
 }
}
body.contact .wrap main .contact-text .inner ul li p {
 font-size: 16px;
 font-size: 1.6rem;
 font-weight: 600;
 line-height: 1.875;
 border-bottom: 1px solid #4d4d4d;
 height: 30px;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: center;
 justify-content: center;
 -webkit-align-items: center;
 align-items: center;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main .contact-text .inner ul li p {
  height: auto;
  line-height: 1.5;
  padding: 9px 0;
 }
}
body.contact .wrap main .contact-text .inner ul li a {
 font-size: 30px;
 font-size: 3rem;
 padding: 20px 0 0;
 display: block;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main .contact-text .inner ul li a {
  font-size: 21px;
  font-size: 2.1rem;
  padding: 10px 0 0;
  white-space: nowrap;
 }
}
@media only screen and (max-width: 320px) {
 body.contact .wrap main .contact-text .inner ul li a {
  font-size: 15px;
  font-size: 1.5rem;
 }
}
body.contact .wrap main .contact-text .inner ul li:nth-last-child(-n + 3) {
 width: 100%;
 /* margin-top: 80px; */
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main .contact-text .inner ul li:nth-last-child(-n + 3) {
  margin-top: 0;
  margin-bottom: 50px;
 }
}
body.contact .wrap main .contact-text .inner ul li:nth-last-child(-n + 3) p {
 background: #f0f0f0;
 padding: 4px 10px;
 border: none;
 height: auto;
 display: block;
 font-size: 20px;
 font-size: 2rem;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main .contact-text .inner ul li:nth-last-child(-n + 3) p {
  padding: 7px 10px;
 }
}
body.contact
 .wrap
 main
 .contact-text
 .inner
 ul
 li:nth-last-child(-n + 3)
 p
 _:lang(x)::-ms-backdrop,
body.contact .wrap main .contact-text .inner ul li:nth-last-child(-n + 3) p {
 padding: 7px 10px 1px;
}
body.contact .wrap main .contact-text .inner ul li:nth-last-child(-n + 3) a {
 padding-top: 30px;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main .contact-text .inner ul li:nth-last-child(-n + 3) a {
  padding-top: 20px;
 }
}
body.contact .wrap main .contact-text .inner ul li:nth-last-child(3) {
 margin-top: 100px;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main .contact-text .inner ul li:nth-last-child(3) {
  margin-top: 20px;
 }
}
body.contact .wrap main .contact-text .inner > a {
 display: inline-block;
 font-size: 32px;
 font-size: 3.2rem;
 margin: 34px auto 70px 0;
}
@media only screen and (max-width: 767px) {
 body.contact .wrap main .contact-text .inner > a {
  font-size: 16px;
  font-size: 1.6rem;
  margin: 15px auto 40px 0;
  line-height: 1.875;
  white-space: nowrap;
 }
}
@media only screen and (max-width: 320px) {
 body.contact .wrap main .contact-text .inner > a {
  font-size: 15px;
  font-size: 1.5rem;
 }
}
body.contact.confirm .wrap main .cap {
 font-size: 16px;
 font-size: 1.6rem;
 text-align: center;
 color: #e60012;
 font-weight: bold;
 padding: 40px 0 20px 0;
}
@media only screen and (max-width: 767px) {
 body.contact.confirm .wrap main .cap {
  line-height: 1.875;
  text-align: left;
 }
}
body.contact.confirm .wrap main form {
 background: #fff;
}
body.contact.confirm .wrap main form .form-inner {
 padding: 36px 100px 130px 50px;
}
@media only screen and (max-width: 767px) {
 body.contact.confirm .wrap main form .form-inner {
  padding: 0 0 60px 0;
 }
}
body.contact.confirm .wrap main form .form-inner .row {
 padding: 20px 0;
 -webkit-align-items: flex-start;
 align-items: flex-start;
}
@media only screen and (max-width: 767px) {
 body.contact.confirm .wrap main form .form-inner .row {
  padding: 14px 0;
 }
}
body.contact.confirm .wrap main form .form-inner .row .left label {
 line-height: 1.875;
}
body.contact.confirm
 .wrap
 main
 form
 .form-inner
 .row
 .left
 label
 _:lang(x)::-ms-backdrop,
body.contact.confirm .wrap main form .form-inner .row .left label {
 margin-top: 3px;
}
body.contact.confirm .wrap main form .form-inner .row .right p {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
}
body.contact.confirm .wrap main form .form-inner .button-box {
 max-width: 640px;
 margin: 50px auto 0;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
@media only screen and (max-width: 767px) {
 body.contact.confirm .wrap main form .form-inner .button-box {
  padding: 0 14px;
 }
}
body.contact.confirm .wrap main form .form-inner .button-box a {
 display: block;
 margin: 0;
 padding: 18px 0;
 width: 300px;
 border: none;
 border-radius: 0;
 background: #4d4d4d;
 color: #fff;
 text-align: center;
 font-size: 16px;
 font-size: 1.6rem;
 font-weight: bold;
}
@media only screen and (min-width: 768px) {
 body.contact.confirm .wrap main form .form-inner .button-box a {
  transition: opacity 0.3s;
 }
 body.contact.confirm .wrap main form .form-inner .button-box a:hover {
  opacity: 0.6;
 }
}
@media only screen and (max-width: 767px) {
 body.contact.confirm .wrap main form .form-inner .button-box a {
  width: 100%;
  padding: 15px 0;
 }
}
body.contact.confirm .wrap main form .form-inner .button-box button {
 margin: 0;
}
@media only screen and (max-width: 767px) {
 body.contact.confirm .wrap main form .form-inner .button-box button {
  margin: 20px 0 0;
 }
}
body.contact.complete .wrap main .complete-inner {
 padding: 0 20px 140px 20px;
}
@media only screen and (max-width: 767px) {
 body.contact.complete .wrap main .complete-inner {
  padding: 0 20px 50px 20px;
 }
}
body.contact.complete .wrap main .complete-inner h2 {
 font-size: 20px;
 font-size: 2rem;
 background: #4d4d4d;
 color: #fff;
 text-align: center;
 padding: 10px 12px;
 line-height: 1.5;
}
body.contact.complete .wrap main .complete-inner p {
 font-size: 16px;
 font-size: 1.6rem;
 text-align: center;
 line-height: 1.875;
 padding: 40px 0;
}
@media only screen and (max-width: 767px) {
 body.contact.complete .wrap main .complete-inner p {
  padding: 20px 0;
  text-align: justify;
 }
}
body.contact.complete .wrap main .complete-inner .bnt-top {
 display: block;
 margin: 20px auto 0;
 padding: 14px 0;
 width: 300px;
 border: none;
 border-radius: 0;
 background: #e60012;
 color: #fff;
 text-align: center;
 font-size: 16px;
 font-size: 1.6rem;
 font-weight: bold;
}
@media only screen and (min-width: 768px) {
 body.contact.complete .wrap main .complete-inner .bnt-top {
  transition: opacity 0.3s;
 }
 body.contact.complete .wrap main .complete-inner .bnt-top:hover {
  opacity: 0.6;
 }
}
@media only screen and (max-width: 767px) {
 body.contact.complete .wrap main .complete-inner .bnt-top {
  width: 100%;
  padding: 12px 0;
 }
}

body.cyclofinish main {
 line-height: 1.9;
}

@media only screen and (min-width: 768px) {
 body.cyclofinish section.product-info {
  padding: 60px 0 80px;
  margin-bottom: 90px;
 }
}

@media only screen and (max-width: 767px) {
 body.cyclofinish ul.list__product-info.col3 > li .top .head h3 {
  margin-bottom: 0;
 }
 body.cyclofinish ul.list__product-info.col3 > li .top .image {
  padding: 0;
  max-width: 100%;
 }
 body.cyclofinish ul.list__product-info.col3 > li {
  padding-left: 0;
  padding-right: 0;
 }
 body.cyclofinish ul.list__product-info.col3 > li .top .head {
  margin: 0;
 }
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
 body.cyclofinish .link--outline {
  font-size: 10px;
  font-size: 1rem;
 }
}

body.cyclofinish .inner:before {
 display: none !important;
}

body.cyclofinish .title__product-info {
 font-size: 20px;
 font-size: 2rem;
 line-height: 1;
 background: #e1e1e1;
 padding: 12px;
}

body.cyclofinish .cyclooveriew .imgtx {
 position: relative;
}
@media only screen and (min-width: 768px) {
 body.cyclofinish .cyclooveriew .imgtx .img {
  padding-left: 440px;
 }
 body.cyclofinish .cyclooveriew .imgtx .img img {
  height: 626px;
 }
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .cyclooveriew .imgtx .img {
  text-align: center;
 }
 body.cyclofinish .cyclooveriew .imgtx .img img {
  max-height: 402px;
 }
}

@media only screen and (min-width: 768px) {
 body.cyclofinish .cyclooveriew .cyclooveriew__ttl {
  position: absolute;
  top: calc(50% - 25px);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 34px;
  font-size: 3.4rem;
 }
}

@media only screen and (max-width: 767px) {
 body.cyclofinish .cyclooveriew .cyclooveriew__ttl {
  text-align: center;
  margin-top: 20px;
 }
}

body.cyclofinish .cyclooveriew .cyclooveriew__ttl img {
 width: 431px;
 height: 171px;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .cyclooveriew .cyclooveriew__ttl img {
  width: 268px;
  height: auto;
 }
}

body.cyclofinish .cyclooveriew .txt {
 font-size: 24px;
 font-size: 2.4rem;
 font-weight: bold;
 text-align: center;
 line-height: 1.7;
 margin-top: 40px;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .cyclooveriew .txt {
  margin-top: 20px;
  font-size: 20px;
  font-size: 2rem;
 }
}

body.cyclofinish .structure {
 margin-top: 58px;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .structure {
  margin-top: 40px;
 }
 body.cyclofinish .structure--sec {
  margin-top: 58px;
 }
}
body.cyclofinish .structure__list > li {
 margin-bottom: 100px;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .structure__list > li {
  margin-bottom: 55px;
 }
}
@media only screen and (min-width: 768px) {
 body.cyclofinish .structure__cont01 .imgtx01 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
 }
 body.cyclofinish .structure__cont01 .imgtx01 .img {
  width: 250px;
 }
 body.cyclofinish .structure__cont01 .imgtx01 .txt {
  width: calc(100% - 260px);
 }
}
body.cyclofinish .structure__cont01 .imgtx01 .txt {
 margin: 15px 0 30px;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .structure__cont01 .imgtx01 .txt {
  text-align: center;
 }
}
body.cyclofinish .structure__cont01 .imgtop {
 margin-top: 25px;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .structure__cont01 .imgtop {
  margin-top: 25px;
 }
}
body.cyclofinish .structure__ttl {
 font-size: 20px;
 font-size: 2rem;
 background: #4d4d4d;
 color: #fff;
 padding: 8px;
 text-align: center;
 margin-bottom: 25px;
 line-height: 1.4;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .structure__ttl {
  margin-bottom: 20px;
 }
}
body.cyclofinish .structure__subttl {
 font-size: 20px;
 font-size: 2rem;
 background: #e1e1e1;
 padding: 8px;
 text-align: center;
 line-height: 1.4;
}
body.cyclofinish .structure__txt {
 font-size: 16px;
 font-size: 1.6rem;
 margin-top: 20px;
}
body.cyclofinish .structure__txt.mtsm {
 margin-top: 10px;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .structure__txt.mtsm {
  margin-top: -5px;
 }
}
body.cyclofinish .structure__img {
 max-width: 820px;
 margin: 20px auto 20px;
}
body.cyclofinish .structure__img .txt {
 text-align: center;
 margin-top: 10px;
 font-size: 16px;
 font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .structure__img .txt {
  margin-top: 5px;
 }
}
@media only screen and (min-width: 768px) {
 body.cyclofinish .structure .ulcol2pc {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
 }
 body.cyclofinish .structure .ulcol2pc > li {
  width: calc(50% - 20px);
 }
}
body.cyclofinish .structure .ulcol2pc > li h4 {
 font-size: 18px;
 font-size: 1.8rem;
 margin: 12px 0 5px;
}
body.cyclofinish .structure .ulcol2pc > li p {
 font-size: 16px;
 font-size: 1.6rem;
 margin: 5px 0 12px;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .structure .ulcol2pc > li {
  margin-bottom: 25px;
 }
 body.cyclofinish .structure .ulcol2pc > li:last-child {
  margin-bottom: 0;
 }
}
@media only screen and (min-width: 768px) {
 body.cyclofinish .structure .ulh4txt li {
  margin-bottom: -9px;
  line-height: 1.8;
 }
 body.cyclofinish .structure .ulh4txt li h4 {
  margin: 20px 0 5px;
 }
 body.cyclofinish .structure .ulh4txt li p {
  margin: 5px 0 8px;
 }
}
body.cyclofinish .structure .ultxt {
 font-size: 16px;
 font-size: 1.6rem;
}
body.cyclofinish .structure .ultxt > li {
 margin: 15px 0 30px;
}
body.cyclofinish .structure .ulimg {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
@media only screen and (min-width: 768px) {
 body.cyclofinish .structure .ulimg {
  margin-bottom: -28px;
 }
}
body.cyclofinish .structure .ulimg > li {
 width: calc(50% - 10px);
}
body.cyclofinish .structure .ulimg > li p {
 font-size: 16px;
 font-size: 1.6rem;
 text-align: center;
 margin: 5px 0 22px;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .structure .ulimg > li p {
  font-size: 13px;
  font-size: 1.3rem;
  margin-bottom: 18px;
 }
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .structure .ulimg > li:last-child p {
  margin-bottom: 0;
 }
}
body.cyclofinish .structure .beaf {
 -webkit-justify-content: center;
 justify-content: center;
 margin: 60px 0 -32px;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .structure .beaf {
  margin: 25px 0 50px;
 }
}
body.cyclofinish .structure .beaf__ttl {
 font-size: 20px;
 font-size: 2rem;
 color: #fff;
 background: #e5000b;
 padding: 12px;
 text-align: center;
 line-height: 1;
 border-radius: 22px;
}
@media only screen and (min-width: 768px) {
 body.cyclofinish .structure .beaf__ttl {
  margin-bottom: 25px !important;
 }
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .structure .beaf__ttl {
  margin-bottom: 18px !important;
 }
}
@media only screen and (min-width: 768px) {
 body.cyclofinish .structure .beaf li:first-child {
  margin-right: 40px;
 }
}
@media only screen and (min-width: 768px) {
 body.cyclofinish .structure .beaf li:last-child {
  margin-top: 35px;
 }
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .structure .beaf li {
  margin-bottom: 15px;
 }
}
body.cyclofinish .structure .beaf li .twoimg {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
}
@media only screen and (min-width: 768px) {
 body.cyclofinish .structure .beaf li .twoimg {
  -webkit-justify-content: center;
  justify-content: center;
  margin: 0 20px;
 }
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .structure .beaf li .twoimg {
  -webkit-justify-content: space-between;
  justify-content: space-between;
 }
}
body.cyclofinish .structure .beaf li .twoimg__item {
 width: calc(50% - 17.5px);
}
body.cyclofinish .structure .beaf li .twoimg__item p {
 text-align: center;
 line-height: 1.4;
 margin-top: 10px;
}
@media only screen and (min-width: 768px) {
 body.cyclofinish .structure .beaf li .twoimg__item:first-child {
  margin-right: 35px;
 }
}
body.cyclofinish .structure .beaf li .twoimg__item:first-child .img {
 position: relative;
}
body.cyclofinish .structure .beaf li .twoimg__item:first-child .img:after {
 position: absolute;
 content: "";
 width: 0;
 height: 0;
 border-width: 17.5px 0 17.5px 20px;
 border-color: transparent transparent transparent #e5000b;
 border-style: solid;
 right: -27px;
 top: 50%;
 -webkit-transform: translateY(-50%);
 -moz-transform: translateY(-50%);
 -ms-transform: translateY(-50%);
 -o-transform: translateY(-50%);
 transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .structure .beaf li .twoimg__item:first-child .img:after {
  border-width: 15px 0 15px 15px;
 }
}
body.cyclofinish .structure .beaf li .twoimg__item:last-child p {
 color: #e5000b;
}

body.cyclofinish .videowrap {
 background: url(../images/cyclofinish/bg_cyclo1.jpg) no-repeat center top;
 background-size: 100% 50%;
 padding-top: 105px;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .videowrap {
  padding-top: 74px;
 }
 body.cyclofinish .videowrap .inner {
  padding: 0;
 }
}
body.cyclofinish .videowrap__ttl {
 max-width: 250px;
 margin: 80px auto 37px;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .videowrap__ttl {
  max-width: 231px;
  margin: 0 auto 25px;
  padding-top: 65px;
 }
}
body.cyclofinish .videowrap__box {
 background: #fff;
 padding-bottom: 80px;
}
@media only screen and (min-width: 768px) {
 body.cyclofinish .videowrap__box {
  border: #e1e1e1 solid 3px;
 }
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .videowrap__box {
  padding: 0 20px;
 }
}
body.cyclofinish .videowrap__box a {
 display: block;
}
body.cyclofinish .videowrap__box a:hover {
 opacity: 0.5;
}
body.cyclofinish .videowrap__box .videoimg {
 width: 400px;
 height: 220px;
 margin: auto;
 display: block;
 overflow: hidden;
 position: relative;
}
body.cyclofinish .videowrap__box .videoimg img {
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 position: absolute;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .videowrap__box .videoimg {
  width: 100%;
  height: 194px;
 }
}

body.cyclofinish .btncyclo {
 margin: 150px 0 130px;
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .btncyclo {
  margin: 60px 0;
 }
}
body.cyclofinish .btncyclo__btn {
 background: url(../images/cyclofinish/bg_btn.jpg) no-repeat left center;
 background-size: auto 100%;
 border: #e5000b solid 5px;
 height: 200px;
 position: relative;
 display: block;
}
@media only screen and (min-width: 768px) {
 body.cyclofinish .btncyclo__btn:hover {
  opacity: 0.5;
 }
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .btncyclo__btn {
  border-width: 3px;
  background-size: auto 110px;
  background-position: 60% top;
 }
}
body.cyclofinish .btncyclo__btn p {
 font-size: 24px;
 font-size: 2.4rem;
 font-weight: bold;
 position: absolute;
}
@media only screen and (min-width: 768px) {
 body.cyclofinish .btncyclo__btn p {
  top: 50%;
  left: calc(50% - 15px);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  padding-right: 10px;
 }
}
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
 body.cyclofinish .btncyclo__btn p {
  font-size: 22px;
  font-size: 2.2rem;
 }
}
body.cyclofinish .btncyclo__btn p span {
 font-size: 22px;
 font-size: 2.2rem;
 font-weight: normal;
 color: #e5000b;
 position: relative;
 display: block;
 width: fit-content;
 margin-top: 20px;
}
body.cyclofinish .btncyclo__btn p span:after {
 width: 10px;
 height: 10px;
 top: calc(50% - 1px);
 right: -20px;
 content: "";
 position: absolute;
 display: inline-block;
 transition: all 0.6s;
 border: solid #e5000b;
 border-width: 0 1px 1px 0;
 -webkit-transform: rotate(-45deg) translateY(-50%);
 -moz-transform: rotate(-45deg) translateY(-50%);
 -ms-transform: rotate(-45deg) translateY(-50%);
 -o-transform: rotate(-45deg) translateY(-50%);
 transform: rotate(-45deg) translateY(-50%);
}
@media only screen and (max-width: 767px) {
 body.cyclofinish .btncyclo__btn p {
  text-align: center;
  font-size: 17px;
  font-size: 1.7rem;
  display: block;
  left: 50%;
  bottom: 10px;
  width: 100%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  line-height: 1.4;
 }
 body.cyclofinish .btncyclo__btn p span {
  margin: 3px auto 0;
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
 }
}
@media only screen and (max-width: 767px) and (max-width: 320px) {
 body.cyclofinish .btncyclo__btn p {
  font-size: 15px;
  font-size: 1.5rem;
 }
}
@media only screen and (min-width: 768px) {
 body.cyclofinish .btncyclo__btn--en p {
  left: 335px;
 }
}
body.cyclofinish .btncyclo.contact-link .inner a {
 display: block;
 transition: opacity 0.3s;
}
body.cyclofinish .btncyclo.contact-link .inner a:hover {
 opacity: 0.6;
}

body.cyclofinish .btn--red {
 width: 100%;
 border-radius: 3rem;
 height: auto;
 margin-bottom: 18px;
 padding: 2px 0;
}

body.cyclofinish .btn--02 {
 background: transparent;
 border: 1px solid #e60012;
 color: #4d4d4d;
 margin-top: 18px;
}

@media only screen and (max-width: 767px) {
 body.cyclofinish section .list__product-info li {
  padding-top: 0 !important;
 }
}

@media only screen and (min-width: 768px) {
 body.cyclofinish section .list__product-info li .top .img {
  width: 42.85%;
 }
}

@media only screen and (max-width: 767px) {
 body.cyclofinish section .list__product-info li .top .img {
  margin-bottom: 5px;
 }
}

@media only screen and (max-width: 767px) {
 body.cyclofinish section .list__product-info li .top .grBtn {
  padding: 0 10px;
 }
}

.en-page body.news.archive article .content h2 {
 word-break: normal;
 word-wrap: break-word !important;
}

/*-----------------------------------------------------------
FOOTER
------------------------------------------------------------*/
.en-page .footer .mid .fnav02 {
 max-width: 250px;
}

@media only screen and (min-width: 768px) {
 .en-page s .header .gnav ul li.mm .mm--container .inner {
  padding: 60px 20px 0;
 }
 .en-page s .header .gnav ul li.mm .mm--container .inner .mm--submenu li {
  margin-bottom: 60px;
 }
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(2),
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(7) {
  width: 30%;
 }
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(1),
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(6) {
  width: 23%;
 }
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(3),
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(8) {
  width: 27%;
 }
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(4),
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(9) {
  width: 20%;
 }
 .en-page s .header .gnav ul li a:not(.ex) span.en {
  font-weight: 600;
 }
 .en-page s .header .gnav > ul > li > a {
  padding: 4px 17px;
 }
}
@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1024px) {
 .en-page s .header .gnav > ul > li > a {
  padding: 4px 12px;
 }
 .en-page s .header .gnav > ul > li > a:not(.ex) span.en {
  font-size: 14px;
  font-size: 1.4rem;
 }
}

@media only screen and (min-width: 768px) {
 .en-page s .header .gnav > ul > li > a _:lang(x)::-ms-backdrop,
 .en-page s .header .gnav > ul > li > a {
  padding-top: 12px;
 }
 .en-page s .header .gnav ul li:last-child {
  height: 100%;
 }
 .en-page s .header .gnav ul li:last-child a {
  padding: 4px 10px 0;
 }
 .en-page s .header .gnav ul li:last-child a _:lang(x)::-ms-backdrop,
 .en-page s .header .gnav ul li:last-child a {
  padding-top: 10px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page .header .gnav {
  -webkit-overflow-scrolling: touch;
  -moz-overflow-scrolling: touch;
  -ms-overflow-scrolling: touch;
  -o-overflow-scrolling: touch;
  overflow-scrolling: touch;
  -ms-overflow-style: none;
  -ms-scrollbar-width: none;
  overflow: auto;
  scrollbar-width: none;
 }
 .en-page .header .gnav::-webkit-scrollbar {
  display: none;
 }
 .en-page .gnav ul {
  display: block;
 }
 .en-page .gnav ul li:last-child {
  height: auto;
 }
 .en-page .header .gnav ul li.mm .mm--container .inner .mm--submenu li a {
  font-size: 13px;
  font-size: 1.3rem;
 }
 .en-page .header .gnav ul li.mm .mm--container .inner .mm--submenu li a span {
  letter-spacing: -0.04em;
 }
 .en-page
  .header
  .gnav
  ul
  li.mm
  .mm--container
  .inner
  .mm--submenu
  li
  a
  span
  br {
  display: none;
 }
 .en-page .header .gnav ul li.mm--product .mm--submenu {
  padding-left: 15px;
 }
 .en-page .header .gnav ul li.mm--product .mm--submenu li a {
  padding-left: 0;
 }
}

@media only screen and (max-width: 370px) {
 .en-page .gnav ul {
  padding: 0 15px;
 }
 .en-page .gnav ul li a:not(.ex) span.en {
  font-size: 1.6rem;
 }
 .en-page .gnav ul li a:not(.ex):after {
  right: 3px;
 }
 .en-page .gnav ul li a:not(.ex):before {
  right: 3px;
 }
 .en-page .gnav ul li.mm .mm--container .inner .mm--submenu {
  padding-left: 15px;
 }
 .en-page .gnav ul li.mm .mm--container .inner .mm--submenu li a span {
  font-size: 1.2rem;
 }
 .en-page .gnav ul li.mm .mm--container .inner .mm--submenu li a:after {
  right: 3px;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 .en-page body .sub-header .inner {
  max-width: 1140px;
 }
}

@media only screen and (min-width: 1001px) {
 .en-page body .sub-header nav ul {
  padding: 0 10px !important;
  justify-content: space-between;
  align-items: center;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1000px) {
 .en-page body .sub-header nav ul {
  justify-content: space-between;
  align-items: center;
  padding: 0 !important;
  margin: 0 -10px;
  width: calc(100% + 20px);
 }
 .en-page body .sub-header nav ul li:last-child a {
  padding-left: 4px;
 }
}
@media only screen and (min-width: 768px) {
 .en-page body .sub-header nav ul li a {
  font-size: 16px;
  font-size: 1.6rem;
 }
}
@media only screen and (min-width: 1001px) {
 .en-page body .sub-header nav ul li a {
  padding: 0 2px;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1000px) {
 .en-page body .sub-header nav ul li a {
  font-size: 8px;
  padding: 0 3px;
 }
}

@media only screen and (max-width: 370px) {
 .en-page .breadcrumb .inner span,
 .en-page .breadcrumb .inner a {
  padding-right: 12px;
  font-size: 1.1rem;
 }
 .en-page .breadcrumb .inner span:after,
 .en-page .breadcrumb .inner a:after {
  right: -12.5px;
  background-size: 5px auto;
  background-position: top 3px right;
 }
}

/*-----------------------------------------------------------
Top
------------------------------------------------------------*/
@media only screen and (min-width: 1025px) {
 body.index.top-en .mv--intro .text {
  left: calc((100vw - (1040px) + 30px) / 2);
 }
 body.index.top-en .mv--intro .text h2 {
  line-height: 1.1666;
  font-size: 6.6rem;
  padding-bottom: 15px;
  margin-bottom: 14px;
 }
 body.index.top-en .mv--intro .text p {
  font-size: 1.7rem;
  padding-left: 9px;
  letter-spacing: 0.02em;
  font-weight: 300;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en .title--topsec .en {
  font-size: 4.5rem;
 }
 body.index.top-en .title--topsec .ja {
  font-size: 2.5rem;
 }
}

@media only screen and (min-width: 1025px) {
 body.index.top-en .mv {
  margin-bottom: 33px;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en .mv {
  margin-bottom: 50px;
 }
}

@media only screen and (min-width: 1025px) {
 body.index.top-en .mv--lower .text {
  padding-top: 128px;
  max-width: 518px;
  width: 100%;
  padding-right: 15px;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en .mv--lower .text {
  padding-top: 110px;
 }
}

@media only screen and (min-width: 1025px) {
 body.index.top-en .mv--lower .text > h3 {
  font-size: 31px;
  line-height: 1.29;
  font-weight: 300;
  margin-bottom: 17px;
  letter-spacing: -0.02em;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en .mv--lower .text > h3 {
  font-size: 1.9rem;
  line-height: 1.29;
  font-weight: 300;
  margin-bottom: 12px;
  letter-spacing: -0.02em;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en .mv--lower .text > h3 {
  font-size: 20px;
  line-height: 30px;
  letter-spacing: -0.04em;
  margin-bottom: 4px;
 }
}

@media only screen and (max-width: 370px) {
 body.index.top-en .mv--lower .text > h3 {
  font-size: 18px;
  line-height: 28px;
 }
}

@media only screen and (min-width: 1025px) {
 body.index.top-en .mv--lower .text p {
  letter-spacing: -0.04em;
 }
}

@media only screen and (min-width: 768px) {
 body.index.top-en section.products {
  margin-bottom: 70px;
 }
}

body.index.top-en section.products .title--container {
 max-width: 320px;
 width: 100%;
 bottom: 122px;
}
@media only screen and (min-width: 1280px) {
 body.index.top-en section.products .title--container {
  max-width: 440px;
 }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en section.products .title--container {
  max-width: 300px;
 }
}
@media only screen and (max-width: 767px) {
 body.index.top-en section.products .title--container {
  position: static;
  max-width: 100%;
 }
}
body.index.top-en section.products .title--container .txt {
 max-width: 310px;
 width: 100%;
 padding-left: 5px;
 margin-top: 0px;
}
@media only screen and (max-width: 767px) {
 body.index.top-en section.products .title--container .txt {
  max-width: 100%;
  padding-left: 20px;
  margin-top: 13px;
 }
}
@media only screen and (min-width: 768px) and (max-width: 1280px) {
 body.index.top-en section.products .title--container .txt {
  padding-right: 15px;
 }
}

@media only screen and (min-width: 768px) {
 body.index.top-en section.products nav ul li a {
  height: 107px;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.products nav ul li a .text {
  padding-right: 42px;
  text-align: left;
 }
}

@media only screen and (max-width: 370px) {
 body.index.top-en section.products nav ul li a .text {
  padding-right: 28px;
 }
 body.index.top-en section.products nav ul li a .text:after {
  border-width: 4px 0 4px 10px;
  right: 10px;
 }
}

body.index.top-en section.products nav ul li a .text .en {
 font-size: 1.8rem;
 line-height: 1.75;
 font-weight: bold;
 position: relative;
 text-indent: -12px;
 letter-spacing: -0.04em;
 padding-right: 18px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en section.products nav ul li a .text .en {
  font-size: 1.6rem;
 }
}
@media only screen and (max-width: 767px) {
 body.index.top-en section.products nav ul li a .text .en {
  text-indent: 0;
  padding-right: 0;
  font-weight: 500;
  letter-spacing: -0.01em;
 }
}
@media only screen and (max-width: 370px) {
 body.index.top-en section.products nav ul li a .text .en {
  font-size: 1.4rem;
 }
}
body.index.top-en section.products nav ul li a .text .en:before {
 content: "";
 width: 0;
 height: 0;
 position: absolute;
 right: 0;
 top: calc(50% - 4px);
 border-top: 4px solid transparent;
 border-left: 10px solid #e60012;
 border-bottom: 4px solid transparent;
}
@media only screen and (max-width: 767px) {
 body.index.top-en section.products nav ul li a .text .en:before {
  content: none;
 }
}

@media only screen and (min-width: 768px) {
 body.index.top-en section.newmodels .product.mightymild .content {
  bottom: 11%;
  right: 65px;
  width: 350px;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en section.newmodels .product.mightymild .content {
  right: 20px;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .product.mightymild .content {
  bottom: 16px;
  width: 180px;
 }
 body.index.top-en section.newmodels .product.mightymild .content .text,
 body.index.top-en section.newmodels .product.mightymild .content .boldtext {
  text-align: right;
  font-size: 12px;
  line-height: 18px;
 }
 body.index.top-en section.newmodels .product.mightymild .content .boldtext {
  margin-bottom: 10px;
 }
 body.index.top-en section.newmodels .product.mightymild .content .text {
  margin-bottom: 5px;
 }
 body.index.top-en section.newmodels .product.mightymild .content .button {
  padding-left: 13px;
  line-height: 15px;
  position: relative;
 }
 body.index.top-en
  section.newmodels
  .product.mightymild
  .content
  .button:after {
  left: calc(50% - 58px);
  top: calc(50% - 7px);
 }
 body.index.top-en section.newmodels .product.mightymild .content .image-logo {
  margin-bottom: 11px;
 }
}

@media only screen and (max-width: 370px) {
 body.index.top-en section.newmodels .product.mightymild .content .text,
 body.index.top-en section.newmodels .product.mightymild .content .boldtext {
  font-size: 10px;
  line-height: 15px;
 }
 body.index.top-en section.newmodels .product.mightymild .content .boldtext {
  margin-bottom: 5px;
 }
}

body.index.top-en section.newmodels .product.mightymild .content .image-logo {
 max-width: 277px;
}
@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .product.mightymild .content .image-logo {
  max-width: 172px;
 }
}
@media only screen and (max-width: 370px) {
 body.index.top-en section.newmodels .product.mightymild .content .image-logo {
  max-width: 130px;
  margin-bottom: 5px;
 }
}

@media only screen and (min-width: 768px) {
 body.index.top-en section.newmodels .product.coaterow .content {
  width: 400px;
  bottom: 37px;
  left: 145px;
 }
 body.index.top-en section.newmodels .product.coaterow .content .boldtext {
  margin-bottom: 12px;
 }
 body.index.top-en section.newmodels .product.coaterow .content .tetx {
  margin-bottom: 8px;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .product.coaterow .content .boldtext {
  line-height: 1.8rem;
  margin-bottom: 8px;
 }
 body.index.top-en section.newmodels .product.coaterow .content .text {
  display: block;
  margin-bottom: 6px;
 }
 body.index.top-en section.newmodels .product.coaterow .content .button {
  padding-left: 13px;
  line-height: 15px;
  position: relative;
 }
 body.index.top-en section.newmodels .product.coaterow .content .button:after {
  left: calc(50% - 58px);
  top: calc(50% - 7px);
 }
}

@media only screen and (max-width: 370px) {
 body.index.top-en section.newmodels .product.coaterow .content .boldtext,
 body.index.top-en section.newmodels .product.coaterow .content .text {
  margin-bottom: 0;
  font-size: 11px;
  font-size: 1.1rem;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en section.newmodels .product.coaterow .content {
  left: 20px;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .product.coaterow .content {
  width: 300px;
 }
}

body.index.top-en section.newmodels .product.coaterow .content .image-logo {
 max-width: 277px;
 margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .product.coaterow .content .image-logo {
  max-width: 148px;
  margin-bottom: 10px;
 }
}

@media only screen and (min-width: 768px) {
 body.index.top-en section.newmodels .item {
  padding-right: 133px;
 }
}

@media only screen and (max-width: 1000px) {
 body.index.top-en section.newmodels .item {
  padding-right: 20px;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .item:last-child .content .btn {
  width: 100%;
  max-width: 110px;
 }
}

@media only screen and (min-width: 768px) {
 body.index.top-en section.newmodels .item .content {
  width: 390px;
 }
 body.index.top-en section.newmodels .item .content .btn {
  margin-bottom: 5px;
  margin-top: 30px;
  padding: 10px 40px;
 }
 body.index.top-en
  section.newmodels
  .item
  .content
  .btn
  _:lang(x)::-ms-backdrop,
 body.index.top-en section.newmodels .item .content .btn {
  padding: 13px 40px 7px;
 }
 body.index.top-en section.newmodels .item .content .en {
  font-size: 2.9rem;
  margin-bottom: 22px;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .item .content {
  width: 240px !important;
 }
 body.index.top-en section.newmodels .item .content .en {
  font-size: 2rem;
  line-height: 25px;
  margin-bottom: 0;
 }
 body.index.top-en section.newmodels .item .content .en em {
  display: block;
  font-style: normal;
 }
 body.index.top-en section.newmodels .item .content p {
  line-height: 22px;
  padding-top: 6px;
 }
}
@media only screen and (max-width: 767px) and (max-width: 370px) {
 body.index.top-en section.newmodels .item .content p br {
  display: none;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .item .content .btn {
  margin-top: 12px;
  max-width: 205px;
  justify-content: center;
  padding: 7px 20px 7px 10px;
  position: relative;
 }
 body.index.top-en section.newmodels .item .content .btn:after {
  right: 8px;
  top: calc(50% - 4px);
  position: absolute;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en section.accreditation .accred {
  padding: 0 10px;
 }
}

@media only screen and (min-width: 768px) {
 body.index.top-en section.accreditation .accred__item {
  max-width: 186px;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1000px) {
 body.index.top-en section.accreditation .accred__item {
  width: 25%;
  padding: 0 10px;
 }
 body.index.top-en section.accreditation .accred__item--text {
  font-size: 1.1rem;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.accreditation .accred__item--text {
  letter-spacing: -0.04em;
 }
}

@media only screen and (max-width: 370px) {
 body.index.top-en section.accreditation .accred__item br {
  display: none;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .item .content {
  width: 250px;
 }
}

body.index.top-en
 section.news
 .content
 .article__content
 _:lang(x)::-ms-backdrop,
body.index.top-en section.news .content .article__content {
 padding-top: 5px;
}

body.index.top-en section.news .title .more-link {
 display: inline-block;
}
@media only screen and (min-width: 768px) {
 body.index.top-en section.news .title .more-link {
  padding: 0px 20px 0 10px;
 }
 body.index.top-en section.news .title .more-link:before {
  left: calc(100% - 15px);
 }
}
@media only screen and (max-width: 767px) {
 body.index.top-en section.news .title .more-link:before {
  left: calc(100% - 10px);
  top: calc(50% + 1px);
 }
}

@media only screen and (min-width: 768px) {
 .en-page body.company-main #contents .inner ul a .cont .en {
  margin-bottom: 0;
  margin-top: 6px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.company-main #contents .inner ul a .cont .en {
  height: 16px;
  margin-bottom: 0;
  margin-top: 4px;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.company-main #contents .inner ul a .cont .en {
  height: 12px;
  margin-bottom: 5px;
 }
 .en-page body.company-main #contents .inner ul a .linkmv {
  margin-right: 7px;
 }
}

/*-----------------------------------------------------------
COMPANY MESSAGE
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.message section.message .inner .name img {
  min-width: 378px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.message .message .inner > h3 img {
  max-width: 192.5px;
  width: 100%;
  height: auto;
 }
 .en-page body.message .message .inner .name img {
  width: 100%;
  max-width: 316px;
  margin-left: 0;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.message .message .inner > h2 {
  max-width: 100%;
 }
}

.en-page body.message .message .inner > h3 {
 font-size: 21px;
}
@media only screen and (max-width: 767px) {
 .en-page body.message .message .inner > h3 {
  font-size: 15px;
  line-height: 1.6;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.message .message .inner > p {
  font-size: 14px;
  line-height: 1.8;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.message .message .inner .name {
  font-size: 12px;
  letter-spacing: 0;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.message .message .inner .name {
  padding-left: 15px;
 }
 .en-page body.message .message .inner .name img {
  margin: 0;
 }
}

/*-----------------------------------------------------------
COMPANY PHILOSOPHY
------------------------------------------------------------*/
.en-page
 body.philosophy
 section.philosophy
 .inner
 .philosophy-detail01
 .satisfaction
 ul
 li
 .text,
.en-page
 body.philosophy
 section.philosophy
 .inner
 .philosophy-detail03
 .foundation
 ul
 li
 .text,
.en-page
 body.philosophy
 section.philosophy
 .inner
 .philosophy-detail03
 .csr
 .text {
 text-align: justify;
}

.en-page
 body.philosophy
 section.philosophy
 .philosophy-detail01
 .catch-sub
 img {
 width: 100%;
 height: auto;
}

.en-page body.philosophy section.philosophy .philosophy-detail01 .catch img {
 width: 100%;
 height: auto;
}

@media only screen and (min-width: 768px) {
 .en-page
  body.philosophy
  section.philosophy
  .philosophy-detail01
  .catch-sub
  img {
  max-width: 564px;
 }
 .en-page body.philosophy section.philosophy .philosophy-detail01 .catch img {
  max-width: 585px;
 }
 .en-page body.philosophy section.philosophy .philosophy-detail02 .invention {
  max-width: 660px;
 }
 .en-page
  body.philosophy
  section.philosophy
  .philosophy-detail02
  .invention
  .invention-inner {
  max-width: 617px;
  padding: 40px 10px;
 }
}

@media only screen and (min-width: 768px) and (max-width: 900px) {
 .en-page
  body.philosophy
  section.philosophy
  .inner
  .philosophy-detail01
  .satisfaction
  ul
  li
  .title {
  font-size: 18px;
  font-size: 1.8rem;
 }
}

@media only screen and (max-width: 767px) {
 .en-page
  body.philosophy
  section.philosophy
  .philosophy-detail01
  .catch-sub
  img {
  max-width: 323.5px;
 }
 .en-page body.philosophy section.philosophy .philosophy-detail01 .catch img {
  max-width: 327.5px;
 }
 .en-page body.philosophy section.philosophy .philosophy-detail02 {
  padding: 37px 20px;
  height: auto;
 }
 .en-page
  body.philosophy
  section.philosophy
  .philosophy-detail02
  .invention
  .invention-inner {
  padding: 19px 10px;
  text-align: center;
 }
 .en-page
  body.philosophy
  section.philosophy
  .philosophy-detail02
  .invention
  .invention-inner
  img {
  height: auto;
  max-width: 309.5px;
  display: inline-block;
 }
 .en-page
  body.philosophy
  section.philosophy
  .philosophy-detail03
  .foundation
  ul
  li
  .title {
  font-size: 15px;
  font-size: 1.5rem;
 }
 .en-page body.philosophy section.philosophy .philosophy-detail03 .csr .title {
  font-size: 17px;
  font-size: 1.7rem;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.philosophy .philosophy-detail03 .csr .title,
 .en-page body.philosophy .philosophy-detail03 .foundation ul li .title {
  font-size: 14px;
  font-size: 1.4rem;
 }
}

/*-----------------------------------------------------------
COMPANY PROFILE
------------------------------------------------------------*/
@media only screen and (max-width: 370px) {
 .en-page body.profile .table__row--content {
  font-size: 1.5rem;
 }
}

.en-page body.profile .table__row--content .data-list li span {
 flex: none;
}
.en-page body.profile .table__row--content .data-list li span:nth-child(1) {
 width: 35%;
}
@media only screen and (max-width: 767px) {
 .en-page body.profile .table__row--content .data-list li span:nth-child(1) {
  width: 50%;
 }
}
@media only screen and (max-width: 370px) {
 .en-page body.profile .table__row--content .data-list li span:nth-child(1) {
  width: 53%;
 }
}
.en-page body.profile .table__row--content .data-list li span:nth-child(2) {
 width: 65%;
}
@media only screen and (max-width: 767px) {
 .en-page body.profile .table__row--content .data-list li span:nth-child(2) {
  width: 50%;
 }
}
@media only screen and (max-width: 370px) {
 .en-page body.profile .table__row--content .data-list li span:nth-child(2) {
  width: 47%;
 }
}

.en-page body.profile .table__row--content .data-list-2col li {
 width: 100%;
}
@media only screen and (max-width: 767px) {
 .en-page body.profile .table__row--content .data-list-2col li {
  display: block;
  line-height: 1.4;
 }
 .en-page
  body.profile
  .table__row--content
  .data-list-2col
  li:not(:last-child) {
  margin-bottom: 12px;
 }
}
@media only screen and (max-width: 767px) {
 .en-page body.profile .table__row--content .data-list-2col li span {
  display: block;
 }
}
.en-page
 body.profile
 .table__row--content
 .data-list-2col
 li
 span:nth-child(1) {
 width: 60%;
}
@media only screen and (max-width: 767px) {
 .en-page
  body.profile
  .table__row--content
  .data-list-2col
  li
  span:nth-child(1) {
  width: 100%;
 }
}
.en-page
 body.profile
 .table__row--content
 .data-list-2col
 li
 span:nth-child(2) {
 width: 40%;
}
@media only screen and (max-width: 767px) {
 .en-page
  body.profile
  .table__row--content
  .data-list-2col
  li
  span:nth-child(2) {
  width: 100%;
 }
}

/*-----------------------------------------------------------
COMPANY BUSINESS
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.business #right-contents .mainlist li .cont .box .left {
  width: calc(100% - 240px);
  padding-right: 20px;
 }
}

.en-page body.business #right-contents .mainlist li .cont .box .right {
 margin-left: 0;
}

.en-page body.business #right-contents .mainlist li .cont .moreinfo span:after {
 margin-bottom: -2px;
}

/*-----------------------------------------------------------
COMPANY HISTORY
------------------------------------------------------------*/
.en-page body.company.history .footnote {
 text-align: left;
}

/*-----------------------------------------------------------
COMPANY POLICYニュース
------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
 .en-page body.company.policy .inner h2 {
  line-height: 1.4;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.company.policy .inner h2 {
  font-size: 17px;
  font-size: 1.7rem;
  padding-left: 10px;
  padding-right: 10px;
 }
}

.en-page body.company.policy .inner h3 {
 font-size: 22px;
 font-size: 2.2rem;
 line-height: 1.5;
 text-align: center;
}

@media only screen and (max-width: 370px) {
 .en-page body.company.policy .inner .text {
  font-size: 1.4rem;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.company.policy .inner ol li,
 .en-page body.company.policy .inner .quality {
  font-size: 1.4rem;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.company.policy .breadcrumb .inner span,
 .en-page body.company.policy .breadcrumb .inner a {
  padding-right: 20px;
 }
 .en-page body.company.policy .breadcrumb .inner span:after,
 .en-page body.company.policy .breadcrumb .inner a:after {
  right: -10px;
 }
 .en-page body.company.policy .breadcrumb .inner span:last-child,
 .en-page body.company.policy .breadcrumb .inner a:last-child {
  padding-right: 0;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.company.policy .breadcrumb .inner span,
 .en-page body.company.policy .breadcrumb .inner a {
  padding-right: 10px;
 }
 .en-page body.company.policy .breadcrumb .inner span:after,
 .en-page body.company.policy .breadcrumb .inner a:after {
  right: -13px;
  top: 0;
 }
}

/*-----------------------------------------------------------
OUR EFFORTS
------------------------------------------------------------*/
@media only screen and (max-width: 370px) {
 .en-page body.our-efforts section.our-efforts .inner h2 {
  padding: 12px 10px;
 }
}

body.our-efforts section.our-efforts .inner ul li p {
 text-align: justify;
}

/*-----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
#contents .inner .sublist li:nth-child(2) .left h5 {
 letter-spacing: -0.02em;
}

@media only screen and (min-width: 768px) {
 .en-page body.office-list #contents .inner .sublist li .left {
  width: 200px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.office-list #contents .inner #support ul li {
  line-height: 1.4;
 }
}

@media only screen and (min-width: 768px) {
 .en-page body.catalog .catalogs__title {
  line-height: 1.4;
  padding: 9px 10px;
  height: auto;
 }
 .en-page body.catalog .catalogs__title _:lang(x)::-ms-backdrop,
 .en-page body.catalog .catalogs__title {
  padding: 13px 10px 6px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.catalog .catalogs__title {
  line-height: 1.4;
  padding: 6.5px 10px;
  height: auto;
 }
}

.en-page
 body.technology
 section.technology-share
 .inner
 .share.share-twocolumn
 .column.column01
 .share-detail
 .text {
 text-align: justify;
}

/*-----------------------------------------------------------
TECHNOLOGY
------------------------------------------------------------*/
.en-page
 body.technology
 section.invention
 .inner
 .sub-text
 ul
 li
 span:first-child {
 max-width: 120px;
}

@media only screen and (min-width: 768px) {
 .en-page body.technology section.technology-share .inner .share01 .share-title,
 .en-page body.technology section.technology-share .inner .share02 .share-title,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share03
  .share-title {
  max-width: 500px;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:nth-child(2) {
  font-style: normal;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  .logo {
  top: 30px;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share01
  .share-box
  .left
  .title,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column01
  .share-detail
  .title {
  line-height: 1.4;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share02
  .share-box
  .left {
  width: 39.65%;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology {
  width: 64%;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  .logo {
  right: 0;
  top: 28%;
 }
 .en-page
  body.technology
  section.invention
  .inner
  table.table01
  tbody
  tr:first-child
  td {
  line-height: 1.4;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:first-child {
  padding-top: 3px;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share03
  .images {
  padding: 0 32.5px;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column01
  .share-detail
  img {
  width: 43.8%;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column02
  .share-detail
  img {
  width: 263px;
  margin-bottom: 6px;
 }
 .en-page body.technology .share-heading {
  font-size: 0;
  letter-spacing: 0;
 }
 .en-page body.technology .share-heading p,
 .en-page body.technology .share-heading span {
  display: inline-block;
  vertical-align: bottom;
 }
 .en-page body.technology .share-heading p {
  line-height: 1.4;
  width: calc(100% - 80px);
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1.4;
 }
 .en-page body.technology .share-heading p _:lang(x)::-ms-backdrop,
 .en-page body.technology .share-heading p {
  margin-bottom: -6px;
 }
 .en-page body.technology .share-heading span {
  width: 80px;
 }
 .en-page
  body.technology
  section.invention
  .inner
  .main-text
  h3
  span:last-child {
  font-size: 5rem;
 }
 .en-page
  body.technology
  section.invention
  .inner
  .main-text
  h3
  span:last-child {
  line-height: 1.4;
 }
}

@media only screen and (max-width: 767px) {
 .en-page
  body.technology
  section.invention
  .inner
  table.table01
  tbody
  tr:first-child
  td {
  line-height: 1.4;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column01
  .share-detail
  img {
  width: 200px;
 }
 .en-page body.technology .share-heading,
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__heading
  p {
  font-size: 1.8rem;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share01
  .share-box
  .left
  .title {
  line-height: 1.4;
 }
 .en-page body.technology section.technology-share .inner .catch-ja {
  padding-left: 20px;
  padding-right: 20px;
 }
 .en-page body.technology section.technology-share .inner .share01 .share-title,
 .en-page body.technology section.technology-share .inner .share02 .share-title,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share03
  .share-title {
  line-height: 1.4;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share01
  .share-title:before,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share02
  .share-title:before,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share03
  .share-title:before {
  content: none;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share01
  .share-title:after,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share02
  .share-title:after,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share03
  .share-title:after {
  position: absolute;
  content: "";
  top: 0;
  right: -64px;
  width: 0;
  height: 0;
  border-top: 80px solid #4d4d4d;
  border-right: 64px solid transparent;
 }
 .en-page body.technology section.certification .inner h3 {
  line-height: 1.4;
  min-height: 80px;
  display: flex;
  align-items: center;
 }
 .en-page body.technology section.certification .inner h3:before {
  width: 80px;
  height: 80px;
  right: -80px;
  border-width: 80px 60px 0 0;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share
  .share-title
  :before {
  z-index: -1;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:first-child {
  width: 32%;
  font-size: 1.2rem;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:last-child,
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:nth-child(2) {
  width: 68%;
  font-size: 1.3rem;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  p {
  font-size: 1.7rem;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  .logo {
  top: 52%;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:last-child
  .column {
  display: inline-block;
  vertical-align: top;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:last-child
  .column:nth-child(2) {
  width: calc(100% - 115px);
 }
 .en-page
  body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:last-child
  .column:nth-child(3) {
  width: 115px;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:last-child
  .column
  span {
  line-height: 1.4;
 }
 .en-page body.technology .share-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-indent: 0;
  padding-left: 0;
 }
 .en-page body.technology .share-heading span {
  width: 45px;
 }
 .en-page body.technology .share-heading p {
  width: calc(100% - 45px);
  line-height: 1.4;
  padding-left: 5px;
 }
 .en-page body.technology section.invention .inner .main-text h3 {
  display: flex;
  font-size: 6rem;
  justify-content: center;
  align-items: center;
 }
 .en-page
  body.technology
  section.invention
  .inner
  .main-text
  h3
  span:last-child {
  text-align: left;
  font-size: 2rem;
  line-height: 1.4;
 }
 .en-page body.technology section.invention .inner .table-head > span {
  line-height: 1.4;
  padding: 0 20px;
 }
}

@media only screen and (max-width: 370px) {
 .en-page
  body.technology
  section.invention
  .inner
  table.table01
  tbody
  tr
  td.grey {
  padding: 14px 5px;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  .logo {
  top: 63%;
 }
 .en-page body.technology section.technology-share .inner .catch-ja {
  font-size: 1.4rem;
 }
 .en-page body.technology .share-heading,
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__heading
  p {
  font-size: 1.5rem;
 }
 .en-page body.technology section.technology-share .inner .share01 .share-title,
 .en-page body.technology section.technology-share .inner .share02 .share-title,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share03
  .share-title {
  margin-left: 0;
  font-size: 1.6rem;
  line-height: 20px;
  min-height: 64px;
  max-width: calc(100% - 74px);
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share01
  .share-title:after,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share02
  .share-title:after,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share03
  .share-title:after {
  border-top-width: 64px;
 }
 .en-page body.technology section.technology-share .inner .share .share-title {
  font-size: 1.6rem;
  min-height: 44px;
 }
 .en-page body.technology section.technology-share .inner .share03 {
  padding-left: 20px;
  padding-right: 20px;
 }
 .en-page body.technology section.technology-share .inner .share03 .images {
  max-width: calc(100% + 40px);
  width: calc(100% + 40px);
  margin: 0 -20px;
 }
 .en-page body.technology section.certification .inner h3 {
  line-height: 20px;
  font-size: 1.6rem;
  min-height: 64px;
  max-width: calc(100% - 74px);
 }
 .en-page body.technology section.certification .inner h3:before {
  width: 64px;
  height: 64px;
  right: -64px;
  border-width: 64px 60px 0 0;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:first-child {
  font-size: 1rem;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:last-child,
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:nth-child(2) {
  font-size: 1.2rem;
 }
 .en-page body.technology section.invention .inner .main-text h3 {
  font-size: 5rem;
 }
 .en-page
  body.technology
  section.invention
  .inner
  .main-text
  h3
  span:last-child {
  font-size: 1.6rem;
 }
 .en-page body.technology section.invention .inner .sub-text ul li p {
  font-size: 4.2rem;
 }
 .en-page body.technology section.invention .inner .table-head > span {
  font-size: 1.4rem;
 }
 .en-page body.technology section.invention .inner .table-head > p {
  font-size: 5rem;
 }
 .en-page
  body.technology
  section.invention
  .inner
  table.table01
  tbody
  tr:first-child
  td {
  font-size: 1.4rem;
  line-height: 1.4;
 }
 .en-page body.technology section.invention .inner .table-title p {
  font-size: 2rem;
  line-height: 1.4;
 }
}

/*-----------------------------------------------------------
BARREL PRODUCT
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.barrel-guide section.barrel-guide .inner ul .barrel-guide__btn {
  padding-left: 5px;
  padding-right: 5px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel-guide .title__subpage--ja {
  font-size: 28px;
  font-size: 2.8rem;
 }
}

@media only screen and (min-width: 1025px) {
 .en-page
  body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn
  a
  figure
  .c-txt
  .ja {
  font-size: 21px;
  font-size: 2.1rem;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 .en-page
  body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn
  a
  figure
  .c-txt
  .ja {
  font-size: 17px;
  font-size: 1.7rem;
 }
}

@media only screen and (max-width: 370px) {
 .en-page
  body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn
  a
  figure
  .c-txt
  .ja {
  font-size: 13px;
  font-size: 1.3rem;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1000px) {
 .en-page
  body.barrel-guide
  section.barrel-guide
  .inner
  .barrel-guide__btn
  a
  .more {
  font-size: 14px;
  font-size: 1.4rem;
 }
 .en-page
  body.barrel-guide
  section.barrel-guide
  .inner
  .barrel-guide__btn
  a
  .more:before {
  background-size: 8px auto;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel-guide section.barrel-guide .inner ul .barrel-guide__btn {
  padding: 20px;
 }
 .en-page
  body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn
  a
  figure {
  display: flex;
  justify-content: space-between;
  align-items: center;
 }
}

.en-page body.barrel section.barrel .inner .barrel-detail .col .text-link {
 line-height: 1.4;
 padding-right: 20px;
}

@media only screen and (min-width: 768px) {
 .en-page body.barrel .banner__item .inner a {
  top: 60px;
 }
}

.en-page body.barrel .banner__item .inner a .en {
 line-height: 1.25;
}

.en-page body.barrel section.barrel .inner .barrel-detail .col .text-detail,
.en-page body.barrel section.barrel .inner .barrel-catch--text p {
 text-align: justify;
}

@media only screen and (min-width: 768px) {
 .en-page body.barrel section.barrel {
  padding-top: 8px;
 }
 .en-page body.barrel section.barrel .inner .barrel-mv {
  text-align: right;
 }
 .en-page body.barrel section.barrel .inner .barrel-mv--heading h2 {
  max-width: 438px;
  margin-top: 20%;
 }
 .en-page body.barrel section.barrel .inner .barrel-mv--image {
  margin: 0;
  display: inline-block;
 }
 .en-page body.barrel section.barrel .inner .barrel-catch {
  padding-top: 26px;
 }
 .en-page body.barrel section.barrel .inner .barrel-catch--image {
  max-width: 557px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel section.barrel .barrel-mv {
  padding-top: 30px;
 }
 .en-page body.barrel section.barrel .barrel-mv--heading h2 {
  max-width: 274px;
 }
 .en-page body.barrel section.barrel .barrel-catch--image {
  width: 81.5%;
 }
 .en-page body.barrel section.barrel .barrel-catch--text {
  padding-top: 20px;
 }
 .en-page body.barrel .banner__item .inner a .ja {
  font-size: 1.8rem;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.barrel section.barrel .barrel-catch--image {
  width: 100%;
 }
 .en-page body.barrel .banner__item .inner a .ja {
  font-size: 1.5rem;
  letter-spacing: -0.02em;
 }
}

@media only screen and (min-width: 768px) {
 .en-page .barrel-kind section.barrel-kind .inner .about.about01 .box .left {
  width: 37.6%;
 }
}

.en-page .barrel-kind section.barrel-kind .inner .about.about01 .box .right p,
.en-page .barrel-kind section.barrel-kind .inner .about.about02 > p,
.en-page
 .barrel-kind
 section.barrel-kind
 .inner
 .about.about02
 .box-wrap
 .box-item
 .text {
 text-align: justify;
}

/*-----------------------------------------------------------
barrel-expendables
------------------------------------------------------------*/
.en-page
 .barrel-expendables
 section.barrel-expendables
 .inner
 .barrel-expendables-detail
 .col
 .text-detail {
 text-align: left;
}

.en-page
 .barrel-expendables
 section.barrel-expendables
 .inner
 .barrel-expendables-detail
 .col
 .text-link {
 line-height: 1.4;
 padding-right: 20px;
}

@media only screen and (min-width: 768px) {
 .en-page .barrel-expendables .banner__item .inner a {
  top: 60px;
 }
}

.en-page .barrel-expendables .banner__item .inner a .en {
 line-height: 1.25;
}

@media only screen and (min-width: 768px) {
 .en-page .barrel-expendables .expendables-mv--text {
  top: 41%;
 }
 .en-page .barrel-expendables .expendables-mv--text h2 {
  max-width: 413px;
  background: transparent;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 .en-page .barrel-expendables .banner__item.banner__item--01 .inner a {
  padding: 0 20px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page .barrel-expendables .expendables-mv--text {
  text-align: center;
 }
 .en-page .barrel-expendables .expendables-mv--text h2 {
  padding: 20px 0;
  max-width: 302px;
 }
 .en-page .barrel-expendables .banner__item .inner a .ja {
  font-size: 2rem;
  letter-spacing: -0.02em;
 }
}

@media only screen and (max-width: 370px) {
 .en-page .barrel-expendables .banner__item .inner a .ja {
  font-size: 1.6rem;
 }
}

.en-page body.barrel-glossary .title__subpage-barrel--label {
 max-width: 260px;
}

.en-page body.barrel-glossary .link-wrapper .backlink {
 min-width: 240px;
}

.en-page
 body.barrel-glossary
 section.barrel-glossary
 .inner
 .glossary
 table
 tbody
 tr
 td:first-child {
 white-space: normal;
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel-glossary section.barrel-glossary .btn {
  width: 245px;
 }
 .en-page
  body.barrel-glossary
  section.barrel-glossary
  .inner
  .glossary
  table
  td:last-child {
  white-space: normal;
 }
}

/*-----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
body.product.square-thumbs
 section.product-info.modify
 .table--info
 tbody
 tr:nth-child(2n + 2)
 td {
 padding: 43px 5px;
}

body.product.square-thumbs
 section.product-info.modify
 .list__product-info
 li
 .top {
 display: flex;
 justify-content: space-between;
}
@media only screen and (max-width: 767px) {
 body.product.square-thumbs
  section.product-info.modify
  .list__product-info
  li
  .top {
  display: block;
 }
}
body.product.square-thumbs
 section.product-info.modify
 .list__product-info
 li
 .top
 .img {
 width: 42.85%;
}
@media only screen and (max-width: 767px) {
 body.product.square-thumbs
  section.product-info.modify
  .list__product-info
  li
  .top
  .img {
  width: 100%;
 }
}
body.product.square-thumbs
 section.product-info.modify
 .list__product-info
 li
 .top
 .head {
 width: 53.15%;
}
@media only screen and (max-width: 767px) {
 body.product.square-thumbs
  section.product-info.modify
  .list__product-info
  li
  .top
  .head {
  width: calc(100% + 24px);
  padding: 10px 0 0;
 }
 body.product.square-thumbs
  section.product-info.modify
  .list__product-info
  li
  .top
  .head
  h3 {
  margin-bottom: 0;
 }
}
body.product.square-thumbs
 section.product-info.modify
 .list__product-info
 li
 .top
 .head
 .grBtn
 .btn {
 width: 100%;
 border-radius: 3rem;
 height: auto;
}
body.product.square-thumbs
 section.product-info.modify
 .list__product-info
 li
 .top
 .head
 .grBtn
 .btn--02 {
 background: transparent;
 border: 1px solid #e60012;
 color: #4d4d4d;
 margin-top: 18px;
}
body.product.square-thumbs
 section.product-info.modify
 .list__product-info
 li
 .top
 .head
 .grBtn
 .btn--02:hover {
 background: #e60012;
 color: #fff;
}
body.product.square-thumbs
 section.product-info.modify
 .list__product-info
 li
 .top
 .head
 .prop {
 margin-bottom: 20px;
}

@media only screen and (max-width: 767px) {
 body.product.square-thumbs
  section.product-info.modify
  .list__product-info
  li
  .top
  .head
  .grBtn
  .btn--02 {
  font-size: 12px;
  font-size: 1.2rem;
 }
}

@media only screen and (max-width: 767px) {
 body.product.square-thumbs
  section.product-info.modify
  .list__product-info
  li
  .top
  .head
  .grBtn
  .btn--02 {
  font-size: 10px;
  font-size: 1rem;
 }
}

/*-----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
body.product section.product-info .table--info tbody .link {
 max-width: 88.5%;
 line-height: 1;
}
body.product section.product-info .table--info tbody .link--01 {
 width: 100%;
 background: #e60012;
 color: #fff;
 border-radius: 3rem;
 font-weight: normal;
 text-align: center;
 font-size: 14px;
 display: block;
 margin: 10px auto 0;
 padding: 7px 5px;
}
body.product section.product-info .table--info tbody .link--outline {
 padding: 6px 5px;
 height: auto;
 border-radius: 4rem;
}

/*-----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.oil-refinery .oil-mv--text h2 {
  max-width: 842px;
  width: 100%;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  > h4 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.45;
  padding: 9px 0;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  .country-of-sale
  .row
  span:first-child {
  width: 15%;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  .country-of-sale
  .row
  span:last-child {
  width: 85%;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 .en-page body.oil-refinery .banner__item--03 .inner a {
  padding: 0 20px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.oil-refinery .oil-mv--text h2 {
  max-width: 360px;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  > h4 {
  font-size: 17px;
  font-size: 1.7rem;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  > p {
  font-size: 15px;
  font-size: 1.5rem;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.oil-refinery .sub-header .inner .page-title h1 {
  font-size: 13px;
  font-size: 1.3rem;
 }
 .en-page body.oil-refinery .oil-mv--text.inner {
  padding: 10px 0;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  > h4 {
  font-size: 17px;
  font-size: 1.7rem;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  > h4
  br {
  display: none;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  > h3 {
  font-size: 17px;
  font-size: 1.7rem;
 }
}

/*-----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
 .en-page body.product ul.list__product-info.col3 > li .top .head {
  padding: 0;
 }
 .en-page body.product ul.list__product-info.col3 > li .top .head h3 {
  margin-bottom: 10px;
 }
 .en-page body.product ul.list__product-info.col3 > li .top .head .txt {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  margin-bottom: 12px;
 }
 .en-page body.product ul.list__product-info.col3 > li .top .head .link {
  font-size: 12px;
  font-size: 1.2rem;
  padding: 0 17px;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.product ul.list__product-info.col3 > li .top .head .link {
  font-size: 10px;
  font-size: 1rem;
 }
 .en-page body.product .sub-header .inner .page-title h1 {
  font-size: 13px;
  font-size: 1.3rem;
 }
 .en-page body.product .title__product--type {
  font-size: 16px;
  font-size: 1.6rem;
 }
}

/*-----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.oil-refinery-use section.oil-refinery-use .inner h3 {
  line-height: 1.4;
  padding: 8px 10px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  h3
  _:lang(x)::-ms-backdrop,
 .en-page body.oil-refinery-use section.oil-refinery-use .inner h3 {
  padding: 11px 10px 5px;
 }
 .en-page body.oil-refinery-use .title__subpage-barrel--label.large {
  max-width: 300px;
 }
 .en-page body.oil-refinery-use section.oil-refinery-use .inner .btn {
  max-width: 325px;
  width: 100%;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box {
  max-width: 40%;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.4;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li:first-child {
  margin-bottom: 20px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li:not(:last-child) {
  margin-bottom: 20px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.oil-refinery-use section.oil-refinery-use .inner .inner {
  padding: 0;
 }
 .en-page body.oil-refinery-use .title__subpage-barrel--label.large {
  max-width: 300px;
  width: 100%;
  font-size: 14px;
  font-size: 1.4rem;
 }
 .en-page body.oil-refinery-use .title__subpage-barrel--text {
  font-size: 26px;
  font-size: 2.6rem;
 }
 .en-page body.oil-refinery-use section.oil-refinery-use .inner h3,
 .en-page body.oil-refinery-use section.oil-refinery-use .inner h4 {
  font-size: 18px;
  font-size: 1.8rem;
  padding: 7px 10px;
 }
 .en-page body.oil-refinery-use section.oil-refinery-use .inner .btn {
  font-size: 13px;
  font-size: 1.3rem;
  width: 100%;
  max-width: 320px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box {
  max-width: 47%;
  right: 0;
  bottom: -30px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
  font-size: 9px;
  font-size: 0.9rem;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li:first-child {
  margin-bottom: 5px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li:not(:last-child) {
  margin-bottom: 5px;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.oil-refinery-use section.oil-refinery-use .inner h3,
 .en-page body.oil-refinery-use section.oil-refinery-use .inner h4 {
  font-size: 17px;
  font-size: 1.7rem;
 }
 .en-page body.oil-refinery-use section.oil-refinery-use .inner .btn {
  font-size: 12px;
  font-size: 1.2rem;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box {
  bottom: -40px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li {
  font-size: 7px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li:first-child {
  margin-bottom: 5px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li:not(:last-child) {
  margin-bottom: 5px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.burner
  .title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.6;
 }
}

/*-----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.grinding-wheel .grinding-wheel-mv--text {
  top: 42%;
 }
 .en-page body.grinding-wheel .grinding-wheel-mv--text h2 {
  max-width: 51.6%;
  width: 100%;
 }
 .en-page
  body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item {
  text-align: center;
 }
 .en-page
  body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item--title {
  width: auto;
  display: inline-block;
  padding-left: 50px !important;
 }
 .en-page
  body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item--title:before {
  left: 0 !important;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 .en-page body.grinding-wheel .banner__item--04 .inner a {
  padding: 0 20px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.grinding-wheel .grinding-wheel-mv--text h2 {
  max-width: 375px;
  padding: 20px 20px 30px;
 }
 .en-page body.grinding-wheel .grinding-wheel-mv-catch h3 {
  font-size: 18px;
  font-size: 1.8rem;
 }
 .en-page
  body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item {
  text-align: center;
 }
 .en-page
  body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item--title {
  width: auto;
  display: inline-block;
  padding-left: 40px !important;
 }
 .en-page
  body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item--title:before {
  left: 0 !important;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.product ul.list__product-info > li .top .head a {
  font-size: 12px;
  font-size: 1.2rem;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.product ul.list__product-info > li .top .head a {
  font-size: 10px;
  font-size: 1rem;
 }
}

/*i----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
@media only screen and (min-width: 767px) {
 .en-page body.coating .coating-mv {
  max-width: 1160px;
  padding-left: 160px;
 }
 .en-page body.coating .coating-mv h2 {
  max-width: 51.3%;
 }
 .en-page body.coating .coating-mv-catch .coating-list__item figure figcaption {
  font-size: 17px;
  font-size: 1.7rem;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 .en-page
  body.coating
  section.coating-select
  .inner
  .coating-select-detail
  ul
  li {
  font-size: 14px;
  font-size: 1.4rem;
  padding-bottom: 20px;
 }
 .en-page body.coating .banner__item--05 .inner a {
  padding: 0 20px;
 }
 .en-page body.coating .coating-mv-catch h3 {
  font-size: 22px;
  font-size: 2.2rem;
 }
 .en-page body.coating .coating-mv-catch .coating-list__item figure figcaption {
  font-size: 14px;
  font-size: 1.4rem;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.coating .coating-mv-catch .coating-list__item figure figcaption {
  font-size: 14px;
  font-size: 1.4rem;
 }
 .en-page body.coating .coating-mv--text h2 {
  padding: 15px 0 20px;
  max-width: 335px;
  width: 100%;
 }
 .en-page body.coating section.flow-form .inner .inner-bg .more-link {
  line-height: 1.4;
 }
 .en-page body.coating .coating-mv-catch h3 {
  letter-spacing: -0.02em;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.coating.product ul.list__product-info > li .top .image {
  width: 47%;
 }
 .en-page body.coating.product ul.list__product-info > li .top .image img {
  width: 100%;
 }
 .en-page body.coating.product ul.list__product-info > li .top .head {
  width: 53%;
 }
 .en-page body.coating .coating-mv--text h2 {
  padding: 15px 20px 20px;
 }
 .en-page body.coating .coating-mv-catch .coating-list {
  padding: 0 5px;
 }
 .en-page body.coating .coating-mv-catch .coating-list__item {
  width: 46%;
 }
}

/*-----------------------------------------------------------
OFICE LIST
.en-page body.coating-principle {
	@include min-screen(768px){
		section.coating-principle .inner .row{
			.image{
				width: 48.9%;
			}
			.text{
				width: 51.1%;
				padding-left: 25px;
			}
		}
		section.coating-principle .inner{
			ul li{
				width: 47.7%;
			}
			.cap{
				line-height: 1.4;
			}
		}
	}
	@include max-screen(767px){
		.title__subpage-barrel .title__subpage-barrel--text{
			@include font-size(27);
		}
		section.coating-principle .inner h3{
			@include font-size(19);
		}
	}
	@include max-screen(370px){
		.title__subpage-barrel .title__subpage-barrel--text{
			@include font-size(24);
		}
		section.coating-principle .inner h3,section.coating-principle .inner ul li p{
			@include font-size(18);
		}
	}
}
@media screen and (-ms-high-contrast: active),(-ms-high-contrast: none){
   .common-new-item .inner .list__item__detail .grBtn .btn{
        &--01{
        	padding-top: 11px;
        }
        &--02{
        	padding-top: 10px;
        }
   }
   body.product ul.list__product-info.col2 > li .top .head .btn--red{
   		padding: 6px 5px 0;
   }
   body.product.square-thumbs section.product-info.modify .list__product-info li .top .head .grBtn .btn{
   		padding-top: 10px;
   }
   body.product.square-thumbs section.product-info.modify .list__product-info li .top .head .prop{
   		padding-top: 6.5px;
   }
   body.product section.product-info .table--info tbody .link{
	   	&--01{
	   		padding: 9.5px 3px 4.5px;
	   	}
	   	&--outline{
	   		padding: 8.5px 3px 2.5px;
	   	}
   }
}
/*-----------------------------------------------------------
TAYLOR
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.taylor .taylor-mv--text {
  padding-left: 0;
  top: 52%;
 }
 .en-page body.taylor .taylor-mv--text h2 {
  max-width: 397px;
  width: 100%;
 }
 .en-page
  body.taylor
  section.construction
  .inner
  .inner-bg
  .more-link:before
  _:lang(x)::-ms-backdrop,
 .en-page body.taylor section.construction .inner .inner-bg .more-link:before {
  top: calc(50% - 2px);
 }
 .en-page body.taylor .taylor-mv-catch h3 {
  font-size: 23px;
  font-size: 2.3rem;
 }
 .en-page body.taylor .taylor-mv-catch ul li {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 15px 0;
 }
 .en-page body.taylor section.taylor .inner .taylor-detail__01 .col {
  height: auto;
 }
 .en-page
  body.taylor
  section.taylor
  .inner
  .taylor-detail__01
  .col
  span:first-child {
  padding: 10px;
  line-height: 1.5;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.taylor .taylor-mv-catch h3 {
  padding: 0 20px;
 }
 .en-page body.taylor section.taylor .inner .taylor-detail h3 {
  line-height: 1.4;
 }
 .en-page
  body.taylor
  section.taylor
  .inner
  .taylor-detail__01
  .col
  span:first-child {
  line-height: 1.4;
  padding: 8px 0;
  text-align: center;
 }
 .en-page body.taylor section.construction .inner .inner-bg .more-link {
  line-height: 1.4;
 }
 .en-page
  body.taylor
  section.taylor
  .inner
  .taylor-detail__02
  ul
  li
  figure
  figcaption
  p:first-child {
  padding: 6px 10px;
  line-height: 1.4;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.taylor section.construction .inner .inner-bg .more-link {
  font-size: 14px;
  font-size: 1.4rem;
 }
 .en-page
  body.taylor
  section.taylor
  .inner
  .taylor-detail__01
  .col
  span:first-child {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4;
  padding: 8px 10px;
  text-align: center;
 }
 .en-page body.taylor .taylor-mv-catch ul li {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.taylor.product .breadcrumb .inner span,
 .en-page body.taylor.product .breadcrumb .inner a {
  padding-right: 20px;
 }
 .en-page body.taylor.product .breadcrumb .inner span:after,
 .en-page body.taylor.product .breadcrumb .inner a:after {
  right: -10px;
 }
 .en-page body.taylor.product .breadcrumb .inner span:last-child,
 .en-page body.taylor.product .breadcrumb .inner a:last-child {
  padding-right: 0;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.taylor.product .breadcrumb .inner span,
 .en-page body.taylor.product .breadcrumb .inner a {
  padding-right: 10px;
 }
 .en-page body.taylor.product .breadcrumb .inner span:after,
 .en-page body.taylor.product .breadcrumb .inner a:after {
  right: -13px;
  top: 0;
 }
}

body.coating-principle section.coating-principle .inner .text-box p {
 text-align: justify;
}

/*-----------------------------------------------------------
TAYLOR
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.taylor-principle section.taylor-principle .inner ul li {
  padding: 17px 15px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.5;
 }
 .en-page
  body.taylor-principle
  section.taylor-principle
  .inner
  ul
  li:not(:last-child) {
  display: flex;
  justify-content: center;
  align-items: center;
 }
 .en-page body.taylor-principle .scroller {
  width: calc(100% + 1px);
  overflow: hidden;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.taylor-principle section.taylor-principle .inner .figure img {
  min-width: 603px;
 }
 .en-page body.taylor-principle .title__subpage-barrel--label.large-250 {
  max-width: 300px;
 }
 .en-page body.taylor-principle .title__subpage-barrel--text {
  font-size: 28px;
  font-size: 2.8rem;
 }
}

/*-----------------------------------------------------------
TAYLOR
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.contact .wrap main .inner form .form-inner {
  padding: 30px 70px 50px 50px;
 }
 .en-page body.contact .wrap main .inner form .form-inner .row .right {
  width: 62%;
 }
 .en-page body.contact .wrap main .inner form .form-inner .row .right ul {
  display: block;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  input[type="radio"] {
  width: 12px;
  height: 12px;
  margin: 0 2px 0 0;
  position: relative;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  input[type="radio"]:before {
  width: 8px;
  height: 8px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  content: "";
  display: block;
  background: #fff;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  input[type="radio"]:checked:before {
  background: #000;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .right
  input[type="tel"],
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .right
  input[type="email"] {
  padding: 0 10px;
  font-size: 16px;
  font-size: 1.6rem;
  width: 100%;
  height: 32px;
  line-height: 1.875;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .right
  input[type="tel"] {
  max-width: 160px;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .right
  input[type="email"] {
  max-width: 400px;
 }
 .en-page body.contact .wrap main .inner form .form-inner .row .left {
  width: 38%;
 }
 .en-page body.contact .wrap main .inner form .form-inner .row .left .req,
 .en-page body.contact .wrap main .inner form .form-inner .row .left .any {
  padding: 3.5px 8px 4px;
  height: 20px;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .left
  .req
  _:lang(x)::-ms-backdrop,
 .en-page body.contact .wrap main .inner form .form-inner .row .left .req,
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .left
  .any
  _:lang(x)::-ms-backdrop,
 .en-page body.contact .wrap main .inner form .form-inner .row .left .any {
  padding: 6px 8px 2px;
 }
 .en-page body.contact .wrap main .inner form .form-inner .row .left label em {
  font-style: normal;
  font-size: 10px;
  font-size: 1rem;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row:nth-child(6)
  .right
  ul {
  display: flex;
 }
}

@media only screen and (max-width: 767px) {
 .en-page
  body.contact
  .wrap
  main
  .contact-text
  .inner
  ul
  li:nth-last-child(-n + 3) {
  margin-top: 20px;
 }
 .en-page body.contact .wrap main > .inner form .form-inner .row .right ul {
  margin-right: 0;
 }
 .en-page body.contact .wrap main > .inner form .form-inner .row .right ul li {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
 }
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  label {
  width: calc(100% - 35px);
  line-height: 1.4;
 }
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  input[type="radio"] {
  width: 25px;
  min-width: 25px;
  height: 25px;
  margin: 0 10px 0 0;
  position: relative;
 }
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  input[type="radio"]:before {
  width: 16px;
  height: 16px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  content: "";
  display: block;
  background: #fff;
 }
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  input[type="radio"]:checked:before {
  background: #000;
 }
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  input[type="tel"],
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  input[type="email"] {
  max-width: 100%;
  padding: 0 10px;
  font-size: 16px;
  font-size: 1.6rem;
  width: 100%;
  height: 32px;
  line-height: 1.875;
  margin-top: 10px;
 }
 .en-page body.contact .wrap main > .inner form .form-inner .row .left .req {
  padding: 3.5px 8px 4.5px;
 }
 .en-page body.contact .wrap main > .inner form .form-inner .row .left .any {
  padding: 3px 8px 5px;
 }
 .en-page body.contact .wrap main > .inner form .form-inner .row .left em {
  font-style: normal;
  font-size: 10px;
  font-size: 1rem;
 }
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row:nth-child(6)
  .right
  ul {
  display: flex;
 }
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row:nth-child(6)
  .right
  ul
  li {
  align-items: center;
 }
}

/*-----------------------------------------------------------
TAYLOR
------------------------------------------------------------*/
@media only screen and (max-width: 370px) {
 .en-page body.privacypolicy #contents .inner .first-text,
 .en-page body.privacypolicy #contents .inner .policy-list li,
 .en-page body.privacypolicy #contents .inner .author,
 .en-page body.privacypolicy #contents .inner .info {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.8;
 }
}

@media only screen and (min-width: 768px) {
 .en-page body.sitemap #contents .inner .box table tbody tr td {
  font-size: 15px;
  font-size: 1.5rem;
 }
 .en-page body.sitemap #contents .inner .bottom-map li a {
  font-size: 17px;
  font-size: 1.7rem;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.sitemap #contents .inner a:before {
  min-width: 5px;
 }
 .en-page body.sitemap #contents .inner .box table tbody tr td {
  font-size: 13px;
  font-size: 1.3rem;
 }
}

@media only screen and (min-width: 768px) {
 .en-page body.barrel-kind .title__subpage-barrel--label {
  max-width: 230px;
 }
 .en-page body.barrel-kind section.barrel-merit .inner ul li {
  font-size: 16px;
  font-size: 1.6rem;
 }
 .en-page body.barrel-kind .link-wrapper .backlink {
  min-width: 240px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel-kind .title__subpage-barrel--label {
  max-width: 270px;
 }
 .en-page body.barrel-kind section.barrel-kind .inner .about h3,
 .en-page body.barrel-kind section.barrel-kind .inner .about.about02 h4,
 .en-page body.barrel-kind section.barrel-howto .inner h3,
 .en-page body.barrel-kind section.barrel-merit .inner h3 {
  line-height: 1.4;
 }
 .en-page body.barrel-kind .link-wrapper .backlink {
  min-width: 240px;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.barrel-kind section.barrel-merit .inner ul li,
 .en-page
  body.barrel-kind
  section.barrel-kind
  .inner
  .about.about02
  .box-wrap
  .box-item
  .title {
  font-size: 18px;
  font-size: 1.8rem;
 }
}

@media only screen and (min-width: 768px) {
 .en-page body.barrel-machine .title__subpage-barrel--label {
  max-width: 240px;
 }
 .en-page body.barrel-machine section.comparison-table .inner table tr th,
 .en-page body.barrel-machine section.comparison-table .inner table tr td {
  line-height: 1.4;
  padding-left: 5px;
  padding-right: 5px;
 }
 .en-page body.barrel-machine .link-wrapper .backlink {
  min-width: 240px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel-machine .title__subpage-barrel--label {
  max-width: 260px;
 }
 .en-page body.barrel-machine .title__subpage-barrel--text {
  font-size: 25px;
  font-size: 2.5rem;
 }
 .en-page body.barrel-machine section.barrel-machine .inner .machine h3 {
  line-height: 1.4;
  padding-left: 5px;
  padding-right: 5px;
 }
 .en-page body.barrel-machine .link-wrapper .backlink {
  min-width: 270px;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.barrel-machine section.barrel-machine .inner .machine h3 {
  font-size: 18px;
  font-size: 1.8rem;
 }
 .en-page body.barrel-machine .title__subpage-barrel--text {
  font-size: 21px;
  font-size: 2.1rem;
 }
}

.en-page
 body.barrel-machine
 section.barrel-machine
 .inner
 .machine__item__right
 .text {
 text-align: justify;
}

@media only screen and (min-width: 768px) {
 .en-page body.barrel-stone .title__subpage-barrel--label {
  max-width: 260px;
 }
 .en-page body.barrel-stone .link-wrapper .backlink {
  min-width: 240px;
 }
 .en-page body.barrel-stone section.comparison-table .inner table tr td,
 .en-page body.barrel-stone section.comparison-table .inner table tr th {
  line-height: 1.4;
  padding-left: 5px;
  padding-right: 5px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel-stone .title__subpage-barrel--label {
  max-width: 260px;
 }
 .en-page body.barrel-stone .title__subpage-barrel--text {
  font-size: 25px;
  font-size: 2.5rem;
 }
 .en-page body.barrel-stone section.comparison-table .inner h3 {
  line-height: 1.4;
  padding-left: 5px;
  padding-right: 5px;
 }
 .en-page body.barrel-stone section.comparison-table .inner table tr td,
 .en-page body.barrel-stone section.comparison-table .inner table tr th {
  line-height: 1.4;
  padding-left: 5px;
  padding-right: 5px;
 }
 .en-page body.barrel-stone .link-wrapper .backlink {
  min-width: 270px;
 }
}

.en-page
 body.barrel-compound
 section.barrel-compound
 .inner
 .compound__merit__item
 .text {
 text-align: left;
}

@media only screen and (min-width: 768px) {
 .en-page body.barrel-compound .title__subpage-barrel--label {
  max-width: 260px;
 }
 .en-page body.barrel-compound .link-wrapper .backlink {
  min-width: 240px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel-compound .title__subpage-barrel--label {
  max-width: 260px;
 }
 .en-page body.barrel-compound .title__subpage-barrel--text {
  font-size: 25px;
  font-size: 2.5rem;
 }
 .en-page body.barrel-compound section.barrel-compound .inner .compound h3 {
  line-height: 1.4;
  padding-left: 5px;
  padding-right: 5px;
 }
 .en-page body.barrel-compound .link-wrapper .backlink {
  min-width: 270px;
 }
}

@media only screen and (max-width: 370px) {
 .en-page
  body.barrel-compound
  section.barrel-compound
  .inner
  .compound__action__inner
  .title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4;
 }
 .en-page
  body.barrel-compound
  section.barrel-compound
  .inner
  .compound__action__inner
  .text {
  line-height: 1.6;
 }
}

.eng-page body.message section.message .inner .name img {
 width: 100%;
}

/*-----------------------------------------------------------
TAYLOR
------------------------------------------------------------*/
/*-----------------------------------------------------------
exhibition
------------------------------------------------------------*/
html body.exhibition .tabexh {
 white-space: nowrap;
 -webkit-text-size-adjust: 100%;
}
html body.exhibition .tabexh tr td,
html body.exhibition .tabexh tr th {
 font-size: inherit;
 min-width: max-content;
}

body.exhibition .tabexwrap {
 margin: 100px auto;
 position: relative;
}
body.exhibition .tabexwrap.mt-0 {
 margin-top: 0;
}
@media only screen and (max-width: 767px) {
 body.exhibition .tabexwrap.mt-0 {
  padding: 0;
 }
}
@media only screen and (max-width: 767px) {
 body.exhibition .tabexwrap {
  margin: 50px auto;
  position: relative;
 }
}

body.exhibition .tabexwrap.has-scroll:after {
 content: "";
 position: absolute;
 width: 174px;
 height: 135px;
 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='174' height='135' viewBox='0 0 174 135'%3E%3Cg id='Group_41963' data-name='Group 41963' transform='translate(-121 -8672.999)'%3E%3Crect id='Rectangle_14414' data-name='Rectangle 14414' width='174' height='135' rx='20' transform='translate(121 8672.999)' opacity='0.537'/%3E%3Cpath id='Path_93744' data-name='Path 93744' d='M829.307,847.015a2.766,2.766,0,0,0-2.695-2.882,20.734,20.734,0,0,0-2.405.11c-1.29-2.011-1.939-2.273-4.54-1.85-.231.038-.625-.032-.716-.188-1.061-1.786-2.655-2.055-4.465-1.578-.059-.129-.1-.172-.1-.216-.017-1.532-.019-3.064-.052-4.594a3.629,3.629,0,0,0-2.949-3.495,3.427,3.427,0,0,0-3.775,2.289,4.232,4.232,0,0,0-.164,1.392c-.011,5.065-.006,10.13-.006,15-1.737-.189-3.364-.471-5-.517a3.176,3.176,0,0,0-3.228,2.291,2.614,2.614,0,0,0,1.635,2.986,16.824,16.824,0,0,1,8.708,9.3,6.429,6.429,0,0,0,3.059,3.531h11.8c3.226-2.762,4.448-6.547,4.817-10.52C829.574,854.416,829.323,850.7,829.307,847.015ZM827.524,858.2a15.584,15.584,0,0,1-3.057,7.817,2.422,2.422,0,0,1-1.7.808c-2.922.081-5.849.108-8.768-.016a3.089,3.089,0,0,1-1.923-1.149,12.045,12.045,0,0,1-1.519-2.706,17.774,17.774,0,0,0-8.264-8.517c-.492-.258-.787-.886-1.174-1.343.585-.309,1.219-.942,1.747-.864a33.165,33.165,0,0,1,4.169,1.114c.568.161,1.134.329,1.7.495a6.714,6.714,0,0,0,.409-1.564c.041-2.636.019-5.273.019-7.911s0-5.275,0-7.912c0-1.521.594-2.383,1.635-2.41.953-.026,1.772,1.02,1.778,2.365.021,4.41.016,8.821.019,13.232a2.044,2.044,0,0,0-.006.429c.148.657-.4,1.785.833,1.753,1.047-.027.918-1.015.918-1.777,0-1.966.016-3.932,0-5.9-.011-1.12.438-1.917,1.605-1.9s1.6.808,1.581,1.928c-.026,2.062-.062,4.126.032,6.185.024.517.477,1.406.814,1.446,1.031.122,1.133-.786,1.145-1.575.022-1.465.078-2.933-.014-4.392-.078-1.219.563-1.934,1.572-1.936.99,0,1.533.873,1.554,1.914.032,1.581.046,3.162.065,4.745.006.627-.079,1.322.867,1.317s.857-.7.857-1.325c0-1.008-.025-2.015.008-3.021a1.539,1.539,0,0,1,1.567-1.677c1.109-.035,1.605.612,1.6,1.707C827.581,851.113,827.788,854.677,827.524,858.2Z' transform='translate(-810.114 8134.301) rotate(-16)' fill='%23fff'/%3E%3Cg id='Group_27141' data-name='Group 27141' transform='translate(2.494 -92.001)'%3E%3Cpath id='Path_93745' data-name='Path 93745' d='M556.429,917.547l-8.339,8.386-2.1-2.1,4.813-4.765H539.085v-3.049h11.77l-4.86-4.813,2.1-2.049Z' transform='translate(-301.579 7901.799)' fill='%23fff'/%3E%3Cpath id='Path_93746' data-name='Path 93746' d='M539.085,917.546l8.339,8.386,2.1-2.1-4.813-4.765h11.722v-3.049H544.66l4.86-4.812-2.1-2.049Z' transform='translate(-383.579 7901.799)' fill='%23fff'/%3E%3C/g%3E%3Ctext id='スクロールできます' transform='translate(210.8 8771.713)' fill='%23fff' font-size='14' font-family='NotoSansJP-Bold, Noto Sans JP' font-weight='700' letter-spacing='0.05em'%3E%3Ctspan x='-65.8' y='0'%3Eスクロールできます%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E%0A");
 background-size: contain;
 top: 50%;
 left: 50%;
 transform: translateX(-50%) translateY(-50%);
 pointer-events: none;
}
body.exhibition .tabexwrap.scrolled:after {
 animation: fadeout 1s;
 opacity: 0;
}
body.exhibition .tabexwrap .scroll {
 margin-right: -20px;
}
body.exhibition .tabexwrap .scroll__inner {
 display: inline-block;
 vertical-align: top;
 padding-right: 25px;
 min-width: 100%;
}
body.exhibition .tabexwrap .os-scrollbar-horizontal {
 width: calc(100% - 25px);
 height: 7px;
 background: #d9d9d9;
 border-radius: 2em;
 padding: 0;
}
body.exhibition .tabexwrap .os-scrollbar-handle {
 background: #4d4d4d !important;
 opacity: 1;
}
@keyframes fadeout {
 from {
  opacity: 1;
 }
 to {
  opacity: 0;
 }
}

body.exhibition .tabexh {
 margin-bottom: 40px;
 table-layout: auto;
 width: 100%;
 font-size: 16px;
}
@media only screen and (max-width: 767px) {
 body.exhibition .tabexh {
  width: 1000px;
 }
}
body.exhibition .tabexh tr th {
 font-weight: bold;
 color: #fff;
 text-align: center !important;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.exhibition .tabexh tr th,
 body.exhibition .tabexh tr td {
  font-size: 14px;
 }
}
body.exhibition .tabexh tr th,
body.exhibition .tabexh tr td {
 border-left: 1px solid #fff;
 padding: 10px;
 text-align: left;
 vertical-align: middle;
 line-height: 1.4;
}
body.exhibition .tabexh tr td a {
 text-decoration: underline;
}
body.exhibition .tabexh tr td.flex {
 padding: 0;
 position: relative;
}
body.exhibition .tabexh tr td.flex:before {
 content: "";
 position: absolute;
 width: 1px;
 height: 100%;
 left: 93px;
 background-color: #fff;
 top: 0;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.exhibition .tabexh tr td.flex:before {
  left: 81px;
 }
}
/* body.exhibition .tabexh tr td:nth-child(2),
body.exhibition .tabexh tr th:nth-child(2) {
 width: 45%;
} */
body.exhibition .tabexh tr td.flex span {
 vertical-align: middle;
 display: inline-block;
 padding: 10px;
}
body.exhibition .tabexh tr td.flex p {
 display: flex;
 height: 100%;
}
body.exhibition .tabexh tr td.flex span:nth-child(1) {
 min-width: 93px;
 align-self: center;
}
body.exhibition .tabexh tr td.flex span:nth-child(2) {
 width: 81%;
}

body.exhibition .tabexh tr:nth-child(even) {
 background-color: #e1e2e3;
}
body.exhibition .tabexh tr:nth-child(odd) {
 background-color: #f0f0f1;
}
body.exhibition .tabexh tr:first-child {
 background-color: #6b7074;
}
body.grinding-wheel .grinding-wheel-mv {
 position: relative;
 top: -36px;
 max-width: 1600px;
 margin: 0 auto;
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel .grinding-wheel-mv {
  background: none;
  height: auto;
  top: auto;
 }
}
body.grinding-wheel .grinding-wheel-mv img:not(.mv-txt) {
 display: block;
 margin: 0 0 0 auto;
 width: 71%;
}
@media only screen and (max-width: 1030px) {
 body.grinding-wheel .grinding-wheel-mv img:not(.mv-txt) {
  width: 46%;
 }
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel .grinding-wheel-mv img:not(.mv-txt) {
  width: 100%;
 }
}
body.grinding-wheel .grinding-wheel-mv--text {
 -webkit-transition: opacity 1s;
 -webkit-transition-delay: 1.2s;
 -moz-transition: opacity 1s 1.2s;
 -o-transition: opacity 1s 1.2s;
 transition: opacity 1s 1.2s;
}
@media only screen and (min-width: 768px) {
 body.grinding-wheel .grinding-wheel-mv--text {
  position: absolute;
  top: 36%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
 }
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel .grinding-wheel-mv--text.inner {
  padding: 0;
 }
}
body.grinding-wheel .grinding-wheel-mv--text h2 {
 border-radius: 10px;
 font-family: "Sawarabi Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
  "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
 font-size: 34px;
 font-size: 3.4rem;
 letter-spacing: 0.04em;
 line-height: 1.47058823;
 display: inline-block;
}
@media only screen and (min-width: 768px) {
 body.grinding-wheel .grinding-wheel-mv--text h2 {
  display: block;
  width: 465px;
 }
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel .grinding-wheel-mv--text h2 {
  font-size: 24px;
  font-size: 2.4rem;
  padding: 20px 20px 10px 20px;
  text-align: center;
  display: block;
  max-width: 330px;
 }
}
@media only screen and (max-width: 320px) {
 body.grinding-wheel .grinding-wheel-mv--text h2 {
  font-size: 20px;
  font-size: 2rem;
 }
}

body.grinding-wheel .grinding-wheel-mv-catch h3 {
 font-size: 28.8px;
 font-size: 2.88rem;
 font-weight: bold;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel .grinding-wheel-mv-catch h3 {
  font-size: 20px;
  font-size: 2rem;
  margin: 10px 0 0;
 }
}
body.grinding-wheel .grinding-wheel-mv-catch h3 span {
 color: #e60012;
}

body.grinding-wheel .grinding-wheel-mv-catch p {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
 margin-top: 50px;
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel .grinding-wheel-mv-catch p {
  margin-top: 20px;
 }
}

body.grinding-wheel section.grinding-wheel {
 padding: 0 0 100px 0;
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel section.grinding-wheel {
  padding: 0 0 50px 0;
 }
}
body.grinding-wheel section.grinding-wheel .inner .grinding-wheel-detail__item {
 margin: 76px 0 0;
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item {
  margin: 50px 0 0;
 }
}
body.grinding-wheel
 section.grinding-wheel
 .inner
 .grinding-wheel-detail__item--title {
 font-size: 24px;
 font-size: 2.4rem;
 font-weight: bold;
 text-align: center;
 position: relative;
 padding-left: 50px;
 width: 100%;
 margin: 0 auto;
 padding: 20px 0 20px 0;
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item--title {
  font-size: 20px;
  font-size: 2rem;
 }
}
body.grinding-wheel
 section.grinding-wheel
 .inner
 .grinding-wheel-detail__item--title:before {
 content: "";
 display: block;
 position: absolute;
 top: 50%;
 left: calc(50% - 95px);
 width: 80px;
 height: 63px;
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item--title:before {
  width: 68.5px;
  height: 53.5px;
  left: 27%;
 }
}
@media only screen and (max-width: 320px) {
 body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item--title:before {
  left: 24%;
 }
}
body.grinding-wheel
 section.grinding-wheel
 .inner
 .grinding-wheel-detail__item--title.title01 {
 padding-left: 80px;
}
body.grinding-wheel
 section.grinding-wheel
 .inner
 .grinding-wheel-detail__item--title.title01:before {
 background: url(../images/grinding-wheel/icon01.svg) center/80px 63px no-repeat;
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item--title.title01:before {
  background-size: 68.5px 53.5px;
 }
}
body.grinding-wheel
 section.grinding-wheel
 .inner
 .grinding-wheel-detail__item--title.title02 {
 padding-left: 90px;
}
body.grinding-wheel
 section.grinding-wheel
 .inner
 .grinding-wheel-detail__item--title.title02:before {
 background: url(../images/grinding-wheel/icon02.svg) center/80px 63px no-repeat;
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item--title.title02:before {
  background-size: 68.5px 53.5px;
 }
}
body.grinding-wheel
 section.grinding-wheel
 .inner
 .grinding-wheel-detail__item--title.title03 {
 padding-left: 50px;
}
body.grinding-wheel
 section.grinding-wheel
 .inner
 .grinding-wheel-detail__item--title.title03:before {
 background: url(../images/grinding-wheel/icon03.svg) center/80px 63px no-repeat;
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item--title.title03:before {
  background-size: 68.5px 53.5px;
 }
}
body.grinding-wheel
 section.grinding-wheel
 .inner
 .grinding-wheel-detail__item--text {
 font-size: 16px;
 font-size: 1.6rem;
 text-align: justify;
 line-height: 1.875;
 margin: 40px 0 0;
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item--text {
  margin: 20px 0 0;
 }
}
body.grinding-wheel
 section.grinding-wheel
 .inner
 .grinding-wheel-detail__item__image {
 margin: 40px 0 0;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item__image {
  margin: 20px 0 0;
 }
}
body.grinding-wheel
 section.grinding-wheel
 .inner
 .grinding-wheel-detail__item__image.center {
 -webkit-justify-content: center;
 justify-content: center;
}
body.grinding-wheel
 section.grinding-wheel
 .inner
 .grinding-wheel-detail__item__image--item {
 width: 29.4%;
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item__image--item {
  width: 47.761194%;
 }
}
body.grinding-wheel
 section.grinding-wheel
 .inner
 .grinding-wheel-detail__item__image--item
 img {
 display: block;
 width: 100%;
}
@media only screen and (max-width: 767px) {
 body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item__image--item.center-sp {
  margin: 0 auto;
  margin-top: 15px;
 }
}

body.index .wrap {
 overflow: hidden;
}

body.index main {
 perspective: 10px;
}

body.index .mv {
 margin-bottom: 42px;
}
@media only screen and (max-width: 767px) {
 body.index .mv {
  margin-bottom: 60px;
 }
}
body.index .mv--intro {
 width: 100%;
 height: 713px;
 background: url(../images/common/mv-bg.jpg) center/cover;
 position: relative;
 z-index: 1;
}
body.index .mv--intro:before {
 content: "";
 width: 100%;
 height: 100%;
 background: rgba(0, 0, 0, 0.2);
 position: absolute;
 top: 0;
 left: 0;
 opacity: 1;
}
@media only screen and (max-width: 767px) {
 body.index .mv--intro {
  height: 460px;
  background-image: url(../images/top/mv-bg-sp.jpg);
 }
}
body.index .mv--intro .video-frame {
 position: absolute;
 top: 0;
 left: 0;
 bottom: 0;
 right: 0;
 overflow: hidden;
}
body.index .mv--intro .video-frame video {
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translateX(-50%) translateY(-50%);
 transform: translateX(-50%) translateY(-50%);
 min-width: 100%;
 min-height: 100%;
 width: auto;
 height: auto;
 overflow: hidden;
 z-index: -1;
}
body.index .mv--intro .video-frame:after {
 content: "";
 position: absolute;
 top: 0;
 left: 0;
 bottom: 0;
 right: 0;
 background: url(../images/common/mv-overlay.png) top left/12px repeat;
}
body.index .mv--intro .text {
 opacity: 0;
 position: absolute;
 left: calc((100vw - (1040px) + 20px) / 2);
 -webkit-transition: all 0.8s cubic-bezier(0.39, 0.575, 0.565, 1);
 -moz-transition: all 0.8s cubic-bezier(0.39, 0.575, 0.565, 1);
 -o-transition: all 0.8s cubic-bezier(0.39, 0.575, 0.565, 1);
 transition: all 0.8s cubic-bezier(0.39, 0.575, 0.565, 1);
 bottom: -30px;
}
body.index .mv--intro .text.fadeIn {
 opacity: 1;
 bottom: 60px;
}
@media only screen and (max-width: 1040px) {
 body.index .mv--intro .text {
  left: 20px;
 }
}
@media only screen and (max-width: 767px) {
 body.index .mv--intro .text {
  bottom: -40px;
  left: 20px;
 }
 body.index .mv--intro .text.fadeIn {
  bottom: 30px;
 }
}
body.index .mv--intro .text h2 {
 color: #fff;
 font-family: "Open Sans", sans-serif;
 font-size: 64.27px;
 font-size: 6.427rem;
 font-weight: 300;
 line-height: 1.165534933;
 border-bottom: 6px solid #e60012;
 padding-bottom: 17px;
 margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
 body.index .mv--intro .text h2 {
  font-size: 40px;
  font-size: 4rem;
  border-bottom-width: 3px;
  margin-bottom: 10px;
  padding-bottom: 10px;
 }
}
body.index .mv--intro .text p {
 font-family: "Open Sans", sans-serif;
 font-weight: 300;
 font-size: 15px;
 font-size: 1.5rem;
 color: #fff;
 line-height: 1.75;
}
@media only screen and (max-width: 767px) {
 body.index .mv--intro .text p {
  font-size: 12px;
  font-size: 1.2rem;
 }
}
body.index .mv--lower {
 margin-top: -95px;
 position: relative;
 z-index: 2;
 display: -webkit-flex;
 display: flex;
 -webkit-justify-content: space-between;
 justify-content: space-between;
 padding-left: calc((100vw - (1040px - 20px)) / 2);
 padding-right: calc((100vw - 1300px) / 2);
}
@media only screen and (max-width: 1370px) {
 body.index .mv--lower {
  padding-right: 40px;
 }
}
@media only screen and (max-width: 1040px) {
 body.index .mv--lower {
  padding-left: 20px;
 }
}
@media only screen and (max-width: 767px) {
 body.index .mv--lower {
  margin-top: -11px;
  padding-right: 0;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
 }
}
body.index .mv--lower .text {
 padding-top: 150px;
}
@media only screen and (max-width: 767px) {
 body.index .mv--lower .text {
  order: 2;
  padding: 20px 20px 0 0;
 }
}
body.index .mv--lower .text h3 {
 margin-bottom: 13px;
}
@media only screen and (max-width: 767px) {
 body.index .mv--lower .text h3 {
  margin-bottom: 24px;
 }
}
body.index .mv--lower .text h3 img {
 display: block;
}
@media only screen and (min-width: 768px) {
 body.index .mv--lower .text h3 img {
  height: 28px;
 }
}
@media only screen and (max-width: 767px) {
 body.index .mv--lower .text h3 img {
  width: 288.5px;
 }
}
body.index .mv--lower .text p {
 line-height: 1.75;
 font-size: 18px;
 font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
 body.index .mv--lower .text p {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
 }
}
body.index .mv--lower .image {
 max-width: 585px;
 height: 328px;
 width: 100%;
 margin-left: 20px;
 position: relative;
 overflow: hidden;
}
@media only screen and (min-width: 768px) {
 body.index .mv--lower .image {
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
 }
 body.index .mv--lower .image:hover {
  opacity: 0.9;
 }
}
body.index .mv--lower .image _:lang(x)::-ms-backdrop,
body.index .mv--lower .image {
 overflow: hidden;
}
body.index .mv--lower .image:before {
 content: "";
 position: absolute;
 position: absolute;
 background: rgba(255, 255, 255, 0.8);
 border-radius: 50%;
 width: 50px;
 height: 50px;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
}
body.index .mv--lower .image:after {
 content: "";
 position: absolute;
 border-top: 9px solid transparent;
 border-bottom: 9px solid transparent;
 border-left: 15px solid rgba(0, 0, 0, 0.8);
 top: 50%;
 left: calc(50% + 2px);
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
}
body.index .mv--lower .image #mv-lower-vid {
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translateX(-50%) translateY(-50%);
 transform: translateX(-50%) translateY(-50%);
 overflow: hidden;
 z-index: -1;
}
@media only screen and (max-width: 767px) {
 body.index .mv--lower .image #mv-lower-vid {
  left: auto;
  right: 20px;
  width: auto;
  transform: translateY(-50%);
 }
}
body.index .mv--lower .image #mv-lower-vid _:lang(x)::-ms-backdrop,
body.index .mv--lower .image #mv-lower-vid {
 width: 120%;
 height: 120%;
}
@media only screen and (max-width: 767px) {
 body.index .mv--lower .image {
  order: 1;
  max-width: none;
  height: 182px;
  padding-left: 8.73%;
 }
}
body.index .mv.loaded .mv--intro::before {
 opacity: 1;
}

body.index section.products {
 margin-bottom: 35px;
}
@media only screen and (max-width: 767px) {
 body.index section.products {
  margin-bottom: 62px;
 }
}
body.index section.products .inner2 {
 position: relative;
}
body.index section.products .title--container {
 position: absolute;
 right: 0;
 bottom: 69px;
 pointer-events: none;
}
@media only screen and (max-width: 767px) {
 body.index section.products .title--container {
  position: relative;
  right: auto;
  bottom: auto;
  pointer-events: auto;
  padding: 0 20px 0 0;
  margin-bottom: 30px;
 }
 body.index section.products .title--container span,
 body.index section.products .title--container p {
  padding-left: 20px;
 }
}
body.index section.products nav ul {
 border-bottom: 1px solid #d3d3d3;
}
body.index section.products nav ul li {
 overflow: hidden;
 border-top: 1px solid #d3d3d3;
 background: rgba(255, 255, 255, 0.75);
}
body.index section.products nav ul li a {
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
 height: 108px;
 -webkit-transition: all 0.4s;
 -moz-transition: all 0.4s;
 -o-transition: all 0.4s;
 transition: all 0.4s;
}
@media only screen and (max-width: 1000px) {
 body.index section.products nav ul li a {
  position: relative;
  margin-left: -70px;
 }
}
@media only screen and (max-width: 920px) {
 body.index section.products nav ul li a {
  margin-left: -170px;
 }
}
@media only screen and (max-width: 767px) {
 body.index section.products nav ul li a {
  margin-left: 0;
  height: 100px;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
 }
}
body.index section.products nav ul li a .image {
 position: relative;
 -webkit-transition: all 0.4s;
 -moz-transition: all 0.4s;
 -o-transition: all 0.4s;
 transition: all 0.4s;
 transform-origin: 50% 50%;
 z-index: 0;
}
@media only screen and (max-width: 767px) {
 body.index section.products nav ul li a .image {
  width: 230px !important;
  position: absolute;
  left: 0;
  right: 130px;
  top: 0;
  bottom: 0;
  height: 100%;
 }
 body.index section.products nav ul li a .image img {
  height: 100%;
  width: auto;
 }
}
body.index section.products nav ul li a .image:after {
 content: "";
 position: absolute;
 right: -1px;
 top: -1px;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 0 0 110px 67px;
 border-color: transparent transparent #ffffff transparent;
 display: block;
}
@media only screen and (max-width: 767px) {
 body.index section.products nav ul li a .image:after {
  right: 0;
  top: 0;
  border-width: 0 0 100px 230px;
 }
}
body.index section.products nav ul li a .text {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-direction: column;
 flex-direction: column;
 -webkit-transition: all 0.4s;
 -moz-transition: all 0.4s;
 -o-transition: all 0.4s;
 transition: all 0.4s;
 z-index: 1;
}
body.index section.products nav ul li a .text .en {
 font-size: 11px;
 font-size: 1.1rem;
 font-family: "Open Sans", sans-serif;
 font-weight: 300;
}
body.index section.products nav ul li a .text .ja {
 font-size: 18px;
 font-size: 1.8rem;
 letter-spacing: -0.04em;
 margin-bottom: 8px;
 font-weight: 600;
 position: relative;
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
}
@media only screen and (max-width: 767px) {
 body.index section.products nav ul li a .text .ja {
  margin-bottom: 2px;
  display: block;
  line-height: 1.555555556;
 }
}
body.index section.products nav ul li a .text .ja:after {
 content: "";
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 4px 0 4px 10px;
 border-color: transparent transparent transparent #e60012;
 margin-left: 7px;
 display: block;
}
@media only screen and (max-width: 767px) {
 body.index section.products nav ul li a .text .ja:after {
  display: none;
 }
}
@media all and (-ms-high-contrast: none) {
 body.index section.products nav ul li a .text .ja {
  margin-bottom: 2px;
 }
 body.index section.products nav ul li a .text .ja:after {
  position: relative;
  top: -3px;
 }
}
@media only screen and (max-width: 767px) {
 body.index section.products nav ul li a .text {
  position: relative;
  padding-right: 47px;
  text-align: right;
 }
 body.index section.products nav ul li a .text:after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 15px;
  border-color: transparent transparent transparent #e60012;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
  position: absolute;
 }
}
@media only screen and (min-width: 768px) {
 body.index section.products nav ul li:hover .image {
  transform: scale(1.15);
 }
 body.index section.products nav ul li:hover .text {
  padding-left: 70px;
 }
 body.index section.products nav ul li:hover a {
  height: 120px;
 }
}
body.index section.products nav ul li:nth-child(1) a .image {
 width: 722px;
}
body.index section.products nav ul li:nth-child(2) a .image {
 width: 657px;
}
body.index section.products nav ul li:nth-child(3) a .image {
 width: 592px;
}
body.index section.products nav ul li:nth-child(4) a .image {
 width: 527px;
}
body.index section.products nav ul li:nth-child(5) a .image {
 width: 462px;
}
body.index section.products nav ul li:nth-child(6) a .image {
 width: 397px;
}

body.index section.newmodels {
 margin-bottom: 50px;
 position: relative;
 overflow: visible;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels {
  margin-bottom: 0;
  overflow: hidden;
 }
}
body.index section.newmodels .boomerang {
 position: absolute;
 top: 200px;
 right: 0;
 bottom: 0;
 left: 0;
 z-index: -1;
}
@media only screen and (min-width: 768px) {
 body.index section.newmodels .boomerang {
  transform-origin: 100% 0;
  transform: scale(1.1);
 }
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .boomerang {
  top: 120px;
  left: -120px;
  right: -40px;
 }
}
body.index section.newmodels .boomerang img {
 max-width: none;
 width: 100%;
}
body.index section.newmodels .title--container {
 display: inline-block;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .title--container {
  display: block;
  padding: 0 20px 0 0;
  margin-bottom: 30px;
 }
 body.index section.newmodels .title--container span {
  display: block;
 }
}
body.index section.newmodels .title--container h2 span {
 padding-left: 140px;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .title--container h2 span {
  padding-left: 20px;
 }
}
body.index section.newmodels .product-container {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-direction: column;
 flex-direction: column;
}
body.index section.newmodels .product {
 max-width: 1140px;
 position: relative;
 width: 100%;
 margin-bottom: 60px;
 display: block;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .product {
  max-width: 100%;
 }
}
body.index section.newmodels .product.cyclo-finish {
 margin-bottom: 10px;
}
body.index section.newmodels .product .content {
 width: 277px;
 display: block;
 position: absolute;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-direction: column;
 flex-direction: column;
 -webkit-align-items: flex-start;
 align-items: flex-start;
 transition: opacity 0.3s;
}
@media only screen and (min-width: 768px) {
 body.index section.newmodels .product:hover .content {
  opacity: 0.6;
 }
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .product .content {
  width: 172px;
 }
}
body.index section.newmodels .product .content .text {
 font-size: 16px;
 font-size: 1.6rem;
 margin-bottom: 10px;
 width: 100%;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .product .content .text {
  font-size: 12px;
  font-size: 1.2rem;
 }
}
body.index section.newmodels .product .content .boldtext {
 font-size: 16px;
 font-size: 1.6rem;
 font-weight: 600;
 margin-bottom: 14px;
 width: 100%;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .product .content .boldtext {
  font-size: 12px;
  font-size: 1.2rem;
 }
}
body.index section.newmodels .product .content .image-logo {
 width: 100%;
 margin-bottom: 14px;
 overflow: hidden;
}
body.index section.newmodels .product .content .button {
 background: #e60012;
 display: -webkit-inline-flex;
 display: inline-flex;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
 max-width: 188px;
 width: 100%;
 height: 22px;
 color: #fff;
 font-weight: 600;
 font-family: "Open Sans", sans-serif;
 position: relative;
 font-size: 12px;
 font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .product .content .button {
  font-size: 10px;
  font-size: 1rem;
  height: 15px;
  max-width: 125px;
 }
}
body.index section.newmodels .product .content .button:after {
 content: "";
 border-color: transparent transparent transparent #fff;
 position: absolute;
 right: 54px;
 top: 50%;
 transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .product .content .button:after {
  position: relative;
  left: auto;
  top: auto;
  transform: none;
  margin-left: 7px;
  border-width: 3px 0 3px 7px;
 }
}
body.index section.newmodels .product.mightymild {
 margin-left: auto;
 height: 430px;
 background: url(../images/top/bg-mightymild.png) center bottom/100% auto
  no-repeat;
 margin-bottom: 10px;
}
@media only screen and (max-width: 1040px) {
 body.index section.newmodels .product.mightymild {
  background-size: auto 100%;
 }
}
body.index section.newmodels .product.mightymild .content {
 right: 140px;
 bottom: 13%;
}
body.index section.newmodels .product.mightymild .content .text,
body.index section.newmodels .product.mightymild .content .boldtext {
 color: #fff;
 font-feature-settings: "palt" 1;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .product.mightymild .content .text,
 body.index section.newmodels .product.mightymild .content .boldtext {
  text-align: right;
 }
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .product.mightymild .content {
  right: 20px;
  bottom: 11%;
  -webkit-align-items: flex-end;
  align-items: flex-end;
 }
}
@media only screen and (max-width: 320px) {
 body.index section.newmodels .product.mightymild .content {
  bottom: 14px;
 }
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .product.mightymild {
  height: auto;
  padding-top: 61%;
  background-image: url(../images/top/bg-mightymild-sp.png);
  background-size: 100% auto;
 }
}
body.index section.newmodels .product.coaterow {
 height: 250px;
 background: url(../images/top/bg-coaterow.png) center bottom/100% auto
  no-repeat;
}
body.index section.newmodels .product.coaterow.coating {
 margin-bottom: 10px;
}
body.index section.newmodels .product.coaterow.tvf {
 background: url(../images/top/bg-tvf.png) center bottom/100% auto no-repeat !important;
 margin-bottom: 10px;
}
@media (max-width: 1040px) {
 body.index section.newmodels .product.coaterow.tvf {
  background-size: auto 100% !important;
 }
}
@media (min-width: 768px) {
 body.index section.newmodels .product.coaterow.tvf .content {
  width: 351px !important;
 }
 body.index section.newmodels .product.coaterow.tvf .content .image-logo {
  max-width: 100% !important;
 }
 body.index section.newmodels .product.coaterow.tvf .content .boldtext {
  margin-bottom: 33px !important;
 }
}

body.index section.newmodels .product.coaterow.tvf .content .image-logo {
 margin-bottom: 35px !important;
}
@media only screen and (max-width: 1040px) {
 body.index section.newmodels .product.coaterow {
  background-size: auto 100%;
 }
}
body.index section.newmodels .product.coaterow .content {
 left: 140px;
 bottom: 30px;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .product.coaterow .content {
  width: 192px;
  left: 20px;
  bottom: 20px;
  padding-right: 12px;
 }
 body.index section.newmodels .product.coaterow .content .text {
  display: none;
 }
 body.index section.newmodels .product.coaterow .content .boldtext {
  margin-right: -12px;
  display: block;
 }
 body.index section.newmodels .product.coaterow .content .image-logo {
  padding-right: 12px;
 }
}
@media only screen and (max-width: 320px) {
 body.index section.newmodels .product.coaterow .content {
  bottom: 14px;
 }
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .product.coaterow {
  padding-top: 45%;
  height: auto;
  background-image: url(../images/top/bg-coaterow-sp.png);
  background-size: 100% auto;
 }
}
body.index section.newmodels .product.coaterow.cyclo-finish {
 background: url(../images/top/bg_cyclo-finish.jpg) center bottom/100% auto
  no-repeat;
}
@media only screen and (max-width: 1040px) {
 body.index section.newmodels .product.coaterow.cyclo-finish {
  background-size: auto 100%;
 }
}
@media only screen and (min-width: 768px) {
 body.index section.newmodels .product.coaterow.cyclo-finish .content {
  width: 350px;
 }
 body.index
  section.newmodels
  .product.coaterow.cyclo-finish
  .content
  .boldtext {
  margin-bottom: 29px;
 }
 body.index
  section.newmodels
  .product.coaterow.cyclo-finish
  .content
  .image-logo {
  margin-bottom: 19px;
 }
}
@media only screen and (max-width: 767px) {
 body.index
  section.newmodels
  .product.coaterow.cyclo-finish
  .content
  .boldtext {
  padding: 0px 0 8px;
 }
 body.index
  section.newmodels
  .product.coaterow.cyclo-finish
  .content
  .image-logo {
  margin-bottom: 29px;
 }
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .product.coaterow.cyclo-finish {
  background-image: url(../images/top/bg_cyclo-finish-sp.jpg);
  background-size: 100% auto;
 }
}
body.index section.newmodels .item {
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: flex-end;
 justify-content: flex-end;
 height: 250px;
 padding-right: 130px;
 margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .item {
  padding-right: 30px;
 }
}
body.index section.newmodels .item:last-of-type {
 margin-bottom: 0;
}
body.index section.newmodels .item .content {
 width: 300px;
 display: inline-block;
 color: #fff;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-direction: column;
 flex-direction: column;
 -webkit-align-items: flex-start;
 align-items: flex-start;
}
@media only screen and (min-width: 768px) {
 body.index section.newmodels .item .content {
  transition: opacity 0.3s;
 }
 body.index section.newmodels .item .content:hover {
  opacity: 0.6;
 }
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .item .content {
  width: 230px;
 }
}
@media only screen and (max-width: 320px) {
 body.index section.newmodels .item .content {
  width: 240px;
 }
}
body.index section.newmodels .item .content .en {
 font-family: "Open Sans", sans-serif;
 font-size: 19px;
 font-size: 1.9rem;
 font-weight: 300;
 margin-bottom: 12px;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .item .content .en {
  font-size: 12px;
  font-size: 1.2rem;
  margin-bottom: 9px;
 }
}
body.index section.newmodels .item .content .ja {
 font-size: 29px;
 font-size: 2.9rem;
 font-family: "Sawarabi Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
  "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
 font-weight: 600;
 margin-bottom: 15px;
 letter-spacing: 0.11em;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .item .content .ja {
  font-size: 22px;
  font-size: 2.2rem;
  margin-right: 0;
  margin-bottom: 6px;
 }
}
@media only screen and (max-width: 320px) {
 body.index section.newmodels .item .content .ja {
  letter-spacing: 0.05em;
 }
}
body.index section.newmodels .item .content p {
 font-size: 16px;
 font-size: 1.6rem;
 letter-spacing: -0.04em;
 line-height: 1.75;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .item .content p {
  font-size: 14px;
  font-size: 1.4rem;
 }
}
body.index section.newmodels .item .content .btn {
 background-color: rgba(255, 255, 255, 0.7);
 font-size: 16px;
 font-size: 1.6rem;
 padding: 8px 16px;
 color: #4d4d4d;
 margin-top: 25px;
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
}
body.index section.newmodels .item .content .btn _:lang(x)::-ms-backdrop,
body.index section.newmodels .item .content .btn {
 padding: 8px 16px 2px;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .item .content .btn {
  margin-left: auto;
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 15px;
 }
}
body.index section.newmodels .item .content .btn:after {
 margin-left: 6px;
}
@media all and (-ms-high-contrast: none) {
 body.index section.newmodels .item .content .btn:after {
  position: relative;
  top: -3px !important;
 }
}
body.index section.newmodels .item:nth-of-type(3) {
 background: url(../images/common/strength-bg-01.jpg) center/cover;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .item:nth-of-type(3) {
  background-image: url(../images/top/strength-bg-01-sp.jpg);
 }
 body.index section.newmodels .item:nth-of-type(3) .btn {
  width: 100%;
 }
}
body.index section.newmodels .item:nth-of-type(4) {
 background: url(../images/common/strength-bg-02.jpg) center/cover;
}
@media only screen and (max-width: 767px) {
 body.index section.newmodels .item:nth-of-type(4) {
  background-image: url(../images/top/strength-bg-02-sp.jpg);
 }
}

body.index section.news {
 margin-bottom: 80px;
}
@media only screen and (max-width: 767px) {
 body.index section.news {
  margin-bottom: 30px;
 }
}
body.index section.news .inner2 {
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center;
}
@media only screen and (min-width: 768px) {
 body.index section.news .inner2 {
  padding: 0 138px;
 }
}
@media only screen and (max-width: 1140px) {
 body.index section.news .inner2 {
  padding: 0 20px;
 }
}
@media only screen and (max-width: 767px) {
 body.index section.news .inner2 {
  display: block;
 }
}
body.index section.news .title {
 font-family: "Open Sans", sans-serif;
 font-size: 64.27px;
 font-size: 6.427rem;
 font-weight: 300;
 color: #4d4d4d;
 -webkit-flex: 0 0 305px;
 flex: 0 0 305px;
}
@media only screen and (max-width: 767px) {
 body.index section.news .title {
  font-size: 38px;
  font-size: 3.8rem;
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  margin-bottom: 30px;
 }
}
body.index section.news .title .more-link {
 font-size: 16px;
 font-size: 1.6rem;
 font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
  "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
 display: block;
 margin: 20px 0 0;
}
body.index section.news .title .more-link:before {
 left: 58%;
}
@media only screen and (max-width: 767px) {
 body.index section.news .title .more-link:before {
  left: 51%;
 }
}
body.index section.news .content {
 flex: 1;
}
body.index section.news .content .article {
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: flex-start;
 align-items: flex-start;
}
@media only screen and (max-width: 767px) {
 body.index section.news .content .article {
  display: block;
 }
}
body.index section.news .content .article__image {
 -webkit-flex: 0 0 200px;
 flex: 0 0 200px;
 margin-right: 30px;
}
@media only screen and (max-width: 767px) {
 body.index section.news .content .article__image {
  margin-right: 0;
  margin-bottom: 14px;
 }
}
body.index section.news .content .article__content {
 width: calc(100% - 200px);
}
@media only screen and (max-width: 767px) {
 body.index section.news .content .article__content {
  width: 100%;
 }
}
body.index section.news .content .article__content--title {
 margin-bottom: 14px;
 font-size: 16px;
 font-size: 1.6rem;
 font-weight: 600;
 font-feature-settings: "palt" 1;
}
@media only screen and (max-width: 767px) {
 body.index section.news .content .article__content--title {
  margin-bottom: 9px;
 }
}
body.index section.news .content .article__content--date {
 font-size: 16px;
 font-size: 1.6rem;
 margin-bottom: 30px;
 display: block;
}
@media only screen and (max-width: 767px) {
 body.index section.news .content .article__content--date {
  margin-bottom: 14px;
 }
}
body.index section.news .content .article__content--text {
 font-size: 14px;
 font-size: 1.4rem;
 line-height: 2.107142857;
 width: 100%;
}
body.index section.news .content .article__content--text a {
 color: #e60012;
}

@media only screen and (max-width: 767px) {
 body.index section.accreditation {
  padding-bottom: 60px;
 }
}

body.index section.accreditation .accred {
 max-width: 915px;
 width: 100%;
 margin: 30px auto;
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: flex-start;
 align-items: flex-start;
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
@media only screen and (max-width: 767px) {
 body.index section.accreditation .accred {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0 20px;
  margin-bottom: -14px;
 }
}
body.index section.accreditation .accred__item {
 max-width: 176px;
 width: 100%;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.index section.accreditation .accred__item {
  width: calc((100% - 40px) / 2);
  margin-bottom: 14px;
 }
}
body.index section.accreditation .accred__item--image {
 height: 58px;
 display: inline-block;
 margin-bottom: 8px;
}
body.index section.accreditation .accred__item--image img {
 height: auto;
 width: 100%;
 display: block;
}
body.index section.accreditation .accred__item--text {
 font-size: 12px;
 font-size: 1.2rem;
 line-height: 1.416666667;
 text-align: left;
}
@media only screen and (max-width: 767px) {
 body.index section.accreditation .accred__item--text {
  font-size: 11px;
  font-size: 1.1rem;
 }
}
body.index
 section.accreditation
 .accred__item:nth-child(4)
 .accred__item--image {
 width: 89px;
}
body.index
 section.accreditation
 .accred__item:nth-child(2)
 .accred__item--image {
 width: 90px;
 position: relative;
 top: -12px;
 height: 90px;
}
@media only screen and (max-width: 767px) {
 body.index
  section.accreditation
  .accred__item:nth-child(2)
  .accred__item--image {
  width: 60px;
  top: 0;
  height: 60px;
 }
}
body.index
 section.accreditation
 .accred__item:nth-child(3)
 .accred__item--image {
 width: 54px;
}
body.index
 section.accreditation
 .accred__item:nth-child(1)
 .accred__item--image {
 width: 87px;
}

body.index .gr-cat .main-content {
 width: calc(100% - 40px);
 max-width: 1020px;
 margin: 0 auto 96px;
 position: relative;
}
@media only screen and (max-width: 767px) {
 body.index .gr-cat .main-content {
  padding-top: 10px;
  margin-bottom: 30px;
 }
}
body.index .gr-cat .main-content .title {
 font-family: "Open Sans", sans-serif;
 font-size: 64.27px;
 font-size: 6.427rem;
 font-weight: 300;
 color: #4d4d4d;
 -webkit-flex: 0 0 305px;
 flex: 0 0 305px;
 margin: 0 0 20px;
 padding-left: 8px;
}
@media only screen and (max-width: 767px) {
 body.index .gr-cat .main-content .title {
  font-size: 40px;
  margin-bottom: 10px;
  padding-left: 0;
 }
}
body.index .gr-cat .main-content .linklist {
 position: absolute;
 font-size: 16px;
 right: 5px;
 top: 41px;
}
@media only screen and (min-width: 768px) {
 body.index .gr-cat .main-content .linklist:hover {
  opacity: 0.5;
 }
}
@media only screen and (max-width: 767px) {
 body.index .gr-cat .main-content .linklist {
  font-size: 14px;
  top: 30px;
  right: -6px;
 }
}
body.index .gr-cat .main-content .linklist:after {
 content: "";
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 4px 0 4px 10px;
 border-color: transparent transparent transparent #e60012;
 display: inline-block;
 margin: 0 7px;
 position: relative;
 top: -2px;
}
@media only screen and (max-width: 767px) {
 body.index .gr-cat .main-content .linklist:after {
  top: -2px;
  border-width: 3px 0 3px 8px;
  border-color: transparent transparent transparent #e60012;
 }
}
body.index .gr-cat .main-content__posts {
 display: inline-block;
 font-size: 0;
 line-height: 1;
 letter-spacing: 0;
 flex-wrap: wrap;
 margin: 0 -7px;
 max-width: 1020px;
 margin: 0 auto;
 width: 100%;
}
@media only screen and (max-width: 767px) {
 body.index .gr-cat .main-content__posts {
  justify-content: space-between;
  margin: 0;
  width: calc(100% + 14px);
  margin-left: -7px;
 }
}
body.index .gr-cat .main-content__posts .it {
 width: 33.3333%;
 padding: 0 10px 38px;
 max-width: 340px;
 display: inline-block;
 vertical-align: top;
 position: relative;
}
@media only screen and (max-width: 767px) {
 body.index .gr-cat .main-content__posts .it {
  padding: 0 8px 38px;
 }
}
body.index .gr-cat .main-content__posts .it .content {
 position: relative;
 width: 100%;
}
body.index .gr-cat .main-content__posts .it .content .img {
 position: relative;
 background-color: #ccc;
 background-position: center;
 background-size: cover;
 background-repeat: no-repeat;
 border: none;
 cursor: pointer;
 display: block;
 width: 100%;
 max-width: 340px;
 -webkit-transition: all 0.3s ease-out;
 -moz-transition: all 0.3s ease-out;
 -ms-transition: all 0.3s ease-out;
 -o-transition: all 0.3s ease-out;
 transition: all 0.3s ease-out;
 background-color: #ccc;
 background-position: center;
 background-size: cover;
 background-repeat: no-repeat;
 border: none;
}
body.index .gr-cat .main-content__posts .it .content .img:before {
 display: block;
 content: " ";
 width: 100%;
 padding-top: 56.25%;
}
body.index .gr-cat .main-content__posts .it .content .img > .content {
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
}
body.index .gr-cat .main-content__posts .it .content .img .thumb {
 position: absolute;
 width: 100%;
 height: 100%;
 left: 0;
 top: 0;
 z-index: 99;
}
body.index .gr-cat .main-content__posts .it .content .img i {
 position: absolute;
 background: rgba(255, 255, 255, 0.8);
 border-radius: 50%;
 width: 50px;
 height: 50px;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
}
body.index .gr-cat .main-content__posts .it .content .img i::before {
 content: "";
 position: absolute;
 border-top: 9px solid transparent;
 border-bottom: 9px solid transparent;
 border-left: 15px solid rgba(0, 0, 0, 0.8);
 top: 50%;
 left: 55%;
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
}
body.index .gr-cat .main-content__posts .it .content .ttl {
 color: #4d4d4d;
 font-size: 16px;
 font-weight: bold;
 padding-top: 8px;
 line-height: 24px;
 -webkit-font-feature-settings: "palt";
 -moz-font-feature-settings: "palt";
 -ms-font-feature-settings: "palt";
 -o-font-feature-settings: "palt";
 font-feature-settings: "palt";
}
@media only screen and (max-width: 767px) {
 body.index .gr-cat .main-content__posts .it .content .ttl {
  line-height: 22px;
 }
}
body.index .gr-cat .main-content__posts .it .content .info {
 padding-top: 18px;
 text-align: left;
}
body.index .gr-cat .main-content__posts .it .content .info time {
 font-size: 16px;
 letter-spacing: 0;
 font-weight: 500;
 color: #e60012;
}
@media only screen and (min-width: 768px) {
 body.index .gr-cat .main-content__posts .it .content:hover {
  opacity: 0.7;
 }
}
body.index .gr-cat .main-content .slick-list {
 padding: 0;
}
body.index .gr-cat .main-content .slick-track {
 overflow: hidden;
}
body.index .gr-cat .main-content .slick-track .slick-slide {
 max-width: 340px;
}
body.index .gr-cat .main-content .slick-prev,
body.index .gr-cat .main-content .slick-next {
 width: 66px;
 height: 66px;
 top: 90px;
}
@media only screen and (max-width: 767px) {
 body.index .gr-cat .main-content .slick-prev,
 body.index .gr-cat .main-content .slick-next {
  background: transparent;
  z-index: 22;
  width: 33px;
  height: 33px;
  top: 45px;
 }
}
body.index .gr-cat .main-content .slick-prev::before,
body.index .gr-cat .main-content .slick-next::before {
 font-size: 0;
 content: "";
 opacity: 1;
}
body.index .gr-cat .main-content .slick-prev {
 left: -52px;
}
@media only screen and (max-width: 1100px) {
 body.index .gr-cat .main-content .slick-prev {
  left: -45px;
 }
}
@media only screen and (max-width: 767px) {
 body.index .gr-cat .main-content .slick-prev {
  left: -15px;
 }
}
body.index .gr-cat .main-content .slick-prev::before {
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 10px 10px 10px 0;
 border-color: transparent #706f70 transparent transparent;
 content: "";
}
@media only screen and (max-width: 767px) {
 body.index .gr-cat .main-content .slick-prev::before {
  border-width: 8px 8px 8px 0;
  border-color: transparent #706f70 transparent transparent;
 }
}
body.index .gr-cat .main-content .slick-next {
 right: -52px;
}
@media only screen and (max-width: 1100px) {
 body.index .gr-cat .main-content .slick-next {
  right: -45px;
 }
}
@media only screen and (max-width: 767px) {
 body.index .gr-cat .main-content .slick-next {
  right: -15px;
 }
}
body.index .gr-cat .main-content .slick-next::before {
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 10px 0 10px 10px;
 border-color: transparent transparent transparent #706f70;
}
@media only screen and (max-width: 767px) {
 body.index .gr-cat .main-content .slick-next::before {
  border-width: 8px 0 8px 8px;
  border-color: transparent transparent transparent #706f70;
 }
}
body.index .gr-cat .main-content .cont-pop .popup {
 display: flex;
 align-items: center;
 width: 100%;
 height: 100%;
 position: fixed;
 top: 0;
 left: 0;
 z-index: 10000;
 opacity: 0;
 pointer-events: none;
 -webkit-transition: all 0.3s ease-out;
 -moz-transition: all 0.3s ease-out;
 -ms-transition: all 0.3s ease-out;
 -o-transition: all 0.3s ease-out;
 transition: all 0.3s ease-out;
}
body.index .gr-cat .main-content .cont-pop .popup__background {
 background: rgba(0, 0, 0, 0.9);
 width: 100%;
 height: 100%;
 position: absolute;
 top: 0;
 left: 0;
 z-index: 1;
}
body.index .gr-cat .main-content .cont-pop .popup__close {
 background: none;
 border: none;
 cursor: pointer;
 width: 35px;
 height: 35px;
 padding: 0;
 position: absolute;
 top: 0;
 right: 0;
 z-index: 2;
 -webkit-transition: all 0.3s ease-out;
 -moz-transition: all 0.3s ease-out;
 -ms-transition: all 0.3s ease-out;
 -o-transition: all 0.3s ease-out;
 transition: all 0.3s ease-out;
}
@media only screen and (min-width: 768px) {
 body.index .gr-cat .main-content .cont-pop .popup__close:hover {
  opacity: 0.5;
 }
}
body.index .gr-cat .main-content .cont-pop .popup__close::before,
body.index .gr-cat .main-content .cont-pop .popup__close::after {
 content: "";
 position: absolute;
 background: #fff;
 border-radius: 2px;
 width: 20px;
 height: 4px;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%) rotate(45deg);
 -moz-transform: translate(-50%, -50%) rotate(45deg);
 -ms-transform: translate(-50%, -50%) rotate(45deg);
 -o-transform: translate(-50%, -50%) rotate(45deg);
 transform: translate(-50%, -50%) rotate(45deg);
}
body.index .gr-cat .main-content .cont-pop .popup__close::after {
 -webkit-transform: translate(-50%, -50%) rotate(-45deg);
 -moz-transform: translate(-50%, -50%) rotate(-45deg);
 -ms-transform: translate(-50%, -50%) rotate(-45deg);
 -o-transform: translate(-50%, -50%) rotate(-45deg);
 transform: translate(-50%, -50%) rotate(-45deg);
}
body.index .gr-cat .main-content .cont-pop .popup__video {
 position: relative;
 width: 100%;
 max-width: 964px;
 margin: 0 auto;
 position: relative;
 z-index: 3;
}
body.index .gr-cat .main-content .cont-pop .popup__video:before {
 display: block;
 content: " ";
 width: 100%;
 padding-top: 56.25%;
}
body.index .gr-cat .main-content .cont-pop .popup__video > .content {
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
}
body.index .gr-cat .main-content .cont-pop .popup__video iframe {
 width: 100%;
 height: 100%;
 position: absolute;
 top: 0;
 left: 0;
}
body.index .gr-cat .main-content .cont-pop .popup--active {
 opacity: 1;
 pointer-events: auto;
}

body.index #news.gr-cat .main-content {
 max-width: 1032px;
}
body.index #news.gr-cat .main-content .ins {
 text-align: center;
}
body.index #news.gr-cat .main-content__posts {
 max-width: 1032px;
}
@media only screen and (min-width: 768px) {
 body.index #news.gr-cat .main-content__posts .it {
  padding: 0 17px 0px;
 }
}
body.index #news.gr-cat .main-content__posts .it .content .img {
 position: relative;
}
body.index #news.gr-cat .main-content__posts .it .content .img:before {
 display: block;
 content: " ";
 width: 100%;
 padding-top: 66.66667%;
}
body.index #news.gr-cat .main-content__posts .it .content .img > .content {
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
}
@media only screen and (min-width: 768px) {
 body.index #news.gr-cat .main-content__posts .it .content .img:hover {
  opacity: 1;
 }
}
@media only screen and (max-width: 767px) {
 body.index #news.gr-cat .main-content__posts .it .content .img {
  position: relative;
 }
 body.index #news.gr-cat .main-content__posts .it .content .img:before {
  display: block;
  content: " ";
  width: 100%;
  padding-top: 68.125%;
 }
 body.index #news.gr-cat .main-content__posts .it .content .img > .content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
 }
}
@media only screen and (min-width: 768px) {
 body.index #news.gr-cat .main-content .linklist {
  right: 10px;
 }
}
@media only screen and (min-width: 768px) {
 body.index #news.gr-cat .main-content .slick-prev {
  left: -46px;
 }
}
@media only screen and (min-width: 768px) {
 body.index #news.gr-cat .main-content .slick-next {
  right: -46px;
 }
}
@media only screen and (min-width: 768px) {
 body.index #news.gr-cat .main-content .slick-prev,
 body.index #news.gr-cat .main-content .slick-next {
  top: 70px;
 }
}
@media only screen and (max-width: 767px) {
 body.index #news.gr-cat .main-content .slick-prev,
 body.index #news.gr-cat .main-content .slick-next {
  top: 55px;
 }
}

body.index.top main,
body.top-en main {
 perspective: none;
}

body#movie .title__subpage {
 padding-top: 62px;
}
@media only screen and (max-width: 767px) {
 body#movie .title__subpage {
  padding-top: 18px;
 }
}
body#movie .title__subpage--en {
 line-height: 30px;
}
@media only screen and (max-width: 767px) {
 body#movie .title__subpage--en {
  line-height: 26px;
 }
}

body#movie .main-content {
 width: calc(100% - 40px);
 max-width: 1000px;
 margin: 76px auto 130px;
}
@media only screen and (max-width: 767px) {
 body#movie .main-content {
  margin: 34px auto 58px;
 }
}
body#movie .main-content__posts {
 display: flex;
 flex-wrap: wrap;
 margin: 0 -10px;
}
@media only screen and (max-width: 767px) {
 body#movie .main-content__posts {
  justify-content: space-between;
  margin: 0;
 }
}
body#movie .main-content__posts li {
 width: 33.3333%;
 padding: 0 10px 38px;
}
@media only screen and (max-width: 767px) {
 body#movie .main-content__posts li {
  width: calc(50% - 8px);
  padding: 0 0 32px;
 }
}
body#movie .main-content__posts li .content .img {
 position: relative;
 background-color: #ccc;
 background-position: center;
 background-size: cover;
 background-repeat: no-repeat;
 border: none;
 cursor: pointer;
 display: block;
 width: 100%;
 -webkit-transition: all 0.3s ease-out;
 -moz-transition: all 0.3s ease-out;
 -ms-transition: all 0.3s ease-out;
 -o-transition: all 0.3s ease-out;
 transition: all 0.3s ease-out;
}
body#movie .main-content__posts li .content .img:before {
 display: block;
 content: " ";
 width: 100%;
 padding-top: 56.25%;
}
body#movie .main-content__posts li .content .img > .content {
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
}
@media only screen and (min-width: 768px) {
 body#movie .main-content__posts li .content .img:hover {
  opacity: 0.5;
 }
}
body#movie .main-content__posts li .content .img i {
 position: absolute;
 background: rgba(255, 255, 255, 0.8);
 border-radius: 50%;
 width: 50px;
 height: 50px;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
}
body#movie .main-content__posts li .content .img i::before {
 content: "";
 position: absolute;
 border-top: 9px solid transparent;
 border-bottom: 9px solid transparent;
 border-left: 15px solid rgba(0, 0, 0, 0.8);
 top: 50%;
 left: 55%;
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 -o-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
}
body#movie .main-content__posts li .content .ttl {
 color: #4d4d4d;
 font-size: 16px;
 font-weight: bold;
 padding-top: 8px;
 line-height: 24px;
 -webkit-font-feature-settings: "palt";
 -moz-font-feature-settings: "palt";
 -ms-font-feature-settings: "palt";
 -o-font-feature-settings: "palt";
 font-feature-settings: "palt";
}
@media only screen and (max-width: 767px) {
 body#movie .main-content__posts li .content .ttl {
  line-height: 22px;
 }
}
body#movie .main-content__posts li .popup {
 display: flex;
 align-items: center;
 width: 100%;
 height: 100%;
 position: fixed;
 top: 0;
 left: 0;
 z-index: 10000;
 opacity: 0;
 pointer-events: none;
 -webkit-transition: all 0.3s ease-out;
 -moz-transition: all 0.3s ease-out;
 -ms-transition: all 0.3s ease-out;
 -o-transition: all 0.3s ease-out;
 transition: all 0.3s ease-out;
}
body#movie .main-content__posts li .popup__background {
 background: rgba(0, 0, 0, 0.9);
 width: 100%;
 height: 100%;
 position: absolute;
 top: 0;
 left: 0;
 z-index: 1;
}
body#movie .main-content__posts li .popup__close {
 background: none;
 border: none;
 cursor: pointer;
 width: 35px;
 height: 35px;
 padding: 0;
 position: absolute;
 top: 0;
 right: 0;
 z-index: 2;
 -webkit-transition: all 0.3s ease-out;
 -moz-transition: all 0.3s ease-out;
 -ms-transition: all 0.3s ease-out;
 -o-transition: all 0.3s ease-out;
 transition: all 0.3s ease-out;
}
@media only screen and (min-width: 768px) {
 body#movie .main-content__posts li .popup__close:hover {
  opacity: 0.5;
 }
}
body#movie .main-content__posts li .popup__close::before,
body#movie .main-content__posts li .popup__close::after {
 content: "";
 position: absolute;
 background: #fff;
 border-radius: 2px;
 width: 20px;
 height: 4px;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%) rotate(45deg);
 -moz-transform: translate(-50%, -50%) rotate(45deg);
 -ms-transform: translate(-50%, -50%) rotate(45deg);
 -o-transform: translate(-50%, -50%) rotate(45deg);
 transform: translate(-50%, -50%) rotate(45deg);
}
body#movie .main-content__posts li .popup__close::after {
 -webkit-transform: translate(-50%, -50%) rotate(-45deg);
 -moz-transform: translate(-50%, -50%) rotate(-45deg);
 -ms-transform: translate(-50%, -50%) rotate(-45deg);
 -o-transform: translate(-50%, -50%) rotate(-45deg);
 transform: translate(-50%, -50%) rotate(-45deg);
}
body#movie .main-content__posts li .popup__video {
 position: relative;
 width: 100%;
 max-width: 964px;
 margin: 0 auto;
 position: relative;
 z-index: 3;
}
body#movie .main-content__posts li .popup__video:before {
 display: block;
 content: " ";
 width: 100%;
 padding-top: 56.25%;
}
body#movie .main-content__posts li .popup__video > .content {
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
}
body#movie .main-content__posts li .popup__video iframe {
 width: 100%;
 height: 100%;
 position: absolute;
 top: 0;
 left: 0;
}
body#movie .main-content__posts li .popup--active {
 opacity: 1;
 pointer-events: auto;
}
body#movie .main-content__pagenavi {
 padding-top: 68px;
}
@media only screen and (max-width: 767px) {
 body#movie .main-content__pagenavi {
  padding-top: 48px;
 }
}
body#movie .main-content__pagenavi .wp-pagenavi {
 display: flex;
 align-items: center;
 justify-content: center;
}
body#movie .main-content__pagenavi .wp-pagenavi a,
body#movie .main-content__pagenavi .wp-pagenavi span {
 width: 30px;
 height: 30px;
 display: flex;
 align-items: center;
 justify-content: center;
 margin-right: 22px;
 font-size: 18px;
}
@media only screen and (max-width: 767px) {
 body#movie .main-content__pagenavi .wp-pagenavi a,
 body#movie .main-content__pagenavi .wp-pagenavi span {
  margin-right: 5px;
 }
}
body#movie .main-content__pagenavi .wp-pagenavi a:last-child,
body#movie .main-content__pagenavi .wp-pagenavi span:last-child {
 margin-right: 0;
}
body#movie .main-content__pagenavi .wp-pagenavi a.current,
body#movie .main-content__pagenavi .wp-pagenavi span.current {
 background: #e5000b;
 color: #fff;
}
body#movie .main-content__pagenavi .wp-pagenavi .previouspostslink,
body#movie .main-content__pagenavi .wp-pagenavi .nextpostslink {
 text-indent: -100px;
 overflow: hidden;
 background-size: 8px 15px;
 background-position: center;
 background-repeat: no-repeat;
}
body#movie .main-content__pagenavi .wp-pagenavi .previouspostslink {
 background-image: url("../images/common/icon-arrow-prev.svg");
}
body#movie .main-content__pagenavi .wp-pagenavi .nextpostslink {
 background-image: url("../images/common/icon-arrow-next.svg");
}

body.office-list #contents {
 margin: 75px 0 130px;
}
body.office-list .sub-header nav {
 width: 100%;
}
body.office-list .sub-header .page-title {
 display: none;
}
@media only screen and (max-width: 767px) {
 body.office-list .sub-header .page-title {
  display: block;
 }
}
@media only screen and (max-width: 767px) {
 body.office-list #contents {
  margin: 40px 0 55px;
 }
}
body.office-list #contents .inner h3 {
 color: white;
 font-weight: bold;
 font-size: 20px;
 font-size: 2rem;
 width: 100%;
 height: 44px;
 line-height: 44px;
 text-align: center;
 background-color: #e60012;
}
body.office-list #contents .inner h3 _:lang(x)::-ms-backdrop,
body.office-list #contents .inner h3 {
 padding-top: 3px;
}
body.office-list #contents .inner h4 {
 background-color: #f0f0f0;
 font-weight: bold;
 font-size: 20px;
 font-size: 2rem;
 padding: 11px 20px;
 border-bottom: 2px solid #e60012;
}
body.office-list #contents .inner h4 _:lang(x)::-ms-backdrop,
body.office-list #contents .inner h4 {
 padding: 14px 20px 8px;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner h4 {
  padding: 11px 10px;
 }
}
body.office-list #contents .inner .maplink {
 text-align: center;
 width: 200px;
 height: 40px;
 line-height: 40px;
 text-align: center;
 display: block;
}
body.office-list #contents .inner .sublist li {
 display: flex;
 padding: 25px 0 21px;
 border-bottom: 1px solid #706f70;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner .sublist li {
  flex-direction: column;
  padding: 20px 0;
 }
}
body.office-list #contents .inner .sublist li:last-child {
 border-bottom: none;
}
body.office-list #contents .inner .sublist li .left {
 width: 140px;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner .sublist li .left {
  width: 100%;
 }
}
body.office-list #contents .inner .sublist li .left h5 {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 padding-top: 6px;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner .sublist li .left h5 {
  margin-bottom: 16px;
  padding-top: 0;
 }
}
body.office-list #contents .inner .sublist li .center {
 flex: 1;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner .sublist li .center {
  margin-bottom: 10px;
 }
}
body.office-list #contents .inner .sublist li .center p {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 30px;
}
body.office-list #contents .inner .sublist li .right {
 width: 200px;
 display: flex;
 align-items: center;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner .sublist li .right {
  width: 100%;
  justify-content: center;
 }
}
body.office-list #contents .inner #link-list {
 display: flex;
 align-items: center;
 justify-content: center;
 margin-bottom: 68px;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner #link-list {
  flex-direction: column;
  margin-bottom: 40px;
 }
}
body.office-list #contents .inner #link-list a {
 display: block;
 width: 300px;
 height: 60px;
 background-color: #4d4d4d;
 color: white;
 font-weight: bold;
 text-align: center;
 font-size: 20px;
 font-size: 2rem;
 line-height: 60px;
 margin: 0 25px;
}
body.office-list #contents .inner #link-list a:hover {
 background-color: #e60012;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner #link-list a {
  margin: 0 0 15px;
  height: 44px;
  line-height: 44px;
  width: 250px;
  font-size: 20px;
  font-size: 2rem;
 }
 body.office-list #contents .inner #link-list a:last-child {
  margin-bottom: 0;
 }
}
body.office-list #contents .inner #link-list a _:lang(x)::-ms-backdrop,
body.office-list #contents .inner #link-list a {
 padding-top: 4px;
}
body.office-list #contents .inner #office-map {
 position: relative;
}
body.office-list #contents .inner #office-map .office-position {
 position: absolute;
 display: flex;
 flex-wrap: wrap;
 justify-content: space-around;
 top: 65px;
 left: 0;
 right: 0;
 margin: auto;
}
body.office-list #contents .inner #office-map .office-position:after {
 content: "";
 width: 135px;
}
body.office-list #contents .inner #office-map .office-position a {
 display: block;
 width: 135px;
 height: 28px;
 line-height: 28px;
 text-align: center;
 margin-bottom: 18px;
 font-size: 14px;
 font-size: 1.4rem;
 letter-spacing: -0.04em;
 background-color: white;
}
body.office-list #contents .inner #office-map .office-position a:hover {
 background-color: #e60012;
}
body.office-list #contents .inner .bigitem {
 margin-bottom: 77px;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner .bigitem {
  margin-bottom: 40px;
 }
}
body.office-list #contents .inner .bigitem h4 {
 margin-bottom: 28px;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner .bigitem h4 {
  margin-bottom: 20px;
 }
}
body.office-list #contents .inner .bigitem .box {
 display: flex;
 justify-content: space-between;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner .bigitem .box {
  flex-direction: column;
 }
}
body.office-list #contents .inner .bigitem .box .left {
 width: 48.5%;
 position: relative;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner .bigitem .box .left {
  width: 100%;
 }
}
body.office-list #contents .inner .bigitem .box .left figure {
 width: 100%;
 margin-bottom: 15px;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner .bigitem .box .left figure {
  margin-bottom: 12px;
 }
}
body.office-list #contents .inner .bigitem .box .left h5 {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 margin-bottom: 18px;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner .bigitem .box .left h5 {
  margin-bottom: 12px;
  margin-top: 20px;
 }
}
body.office-list #contents .inner .bigitem .box .left .address {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 30px;
}
body.office-list #contents .inner .bigitem .box .left .maplink {
 position: absolute;
 bottom: 0;
 right: 0;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner .bigitem .box .left .maplink {
  position: relative;
  margin: 14px auto 20px;
 }
}
body.office-list #contents .inner .bigitem .box .right {
 width: 48.5%;
 height: 465px;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner .bigitem .box .right {
  width: 100%;
  height: 53vw;
 }
}
body.office-list #contents .inner .bigitem .box .right iframe {
 width: 100%;
 height: 100%;
}
body.office-list #contents .inner #eigyo {
 margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner #eigyo {
  margin-bottom: 20px;
 }
}
body.office-list #contents .inner #syussi {
 margin-bottom: 80px;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner #syussi {
  margin-bottom: 40px;
 }
}
body.office-list #contents .inner #syussi .sublist li .left {
 width: 236px;
}
body.office-list #contents .inner #support .text {
 margin-top: 20px;
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 30px;
 margin-bottom: 26px;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner #support .text {
  margin-top: 14px;
  margin-bottom: 14px;
 }
}
body.office-list #contents .inner #support ul {
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner #support ul {
  flex-direction: column;
 }
}
body.office-list #contents .inner #support ul li {
 width: 48.5%;
 margin-bottom: 18px;
 background-color: #f0f0f0;
 border-left: 3px solid #e60012;
 padding: 15px;
 font-size: 16px;
 font-size: 1.6rem;
}
body.office-list #contents .inner #support ul li _:lang(x)::-ms-backdrop,
body.office-list #contents .inner #support ul li {
 padding: 18px 15px 12px;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner #support ul li {
  width: 100%;
 }
}
body.office-list #contents .inner #support ul li:last-child {
 margin-bottom: 0;
}
body.office-list #contents .inner #support ul li:nth-last-child(2) {
 margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
 body.office-list #contents .inner #support ul li:nth-last-child(2) {
  margin-bottom: 18px;
 }
}

body.oil-refinery-use section.oil-refinery-use {
 padding: 90px 0 120px 0;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery-use section.oil-refinery-use {
  padding: 40px 0 50px 0;
 }
}
body.oil-refinery-use section.oil-refinery-use .inner h3 {
 background: #e60012;
 color: #fff;
 font-weight: bold;
 font-size: 20px;
 font-size: 2rem;
 text-align: center;
 padding: 12px 0;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery-use section.oil-refinery-use .inner h3 {
  line-height: 1.5;
  padding: 7px 10px;
 }
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 h3
 _:lang(x)::-ms-backdrop,
body.oil-refinery-use section.oil-refinery-use .inner h3 {
 padding: 15px 0 9px;
}
body.oil-refinery-use section.oil-refinery-use .inner .catch {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
 padding: 14px 0 0;
}
body.oil-refinery-use section.oil-refinery-use .inner h4 {
 font-size: 20px;
 font-size: 2rem;
 color: #fff;
 text-align: center;
 background: #4d4d4d;
 padding: 12px 0;
 margin: 60px 0 30px 0;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery-use section.oil-refinery-use .inner h4 {
  margin: 30px 0 24px 0;
  line-height: 1.5;
  padding: 7px 0;
 }
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 h4
 _:lang(x)::-ms-backdrop,
body.oil-refinery-use section.oil-refinery-use .inner h4 {
 padding: 15px 0 9px;
}
body.oil-refinery-use section.oil-refinery-use .inner .btn {
 width: 295px;
 margin: 0 auto;
 margin-top: 26px;
 padding: 13px 0;
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .btn
 _:lang(x)::-ms-backdrop,
body.oil-refinery-use section.oil-refinery-use .inner .btn {
 padding: 15px 0 11px;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery-use section.oil-refinery-use .inner .btn {
  margin-top: 40px;
  border-radius: 4px;
  font-size: 16px;
  font-size: 1.6rem;
  padding: 9px 0;
  position: relative;
 }
 body.oil-refinery-use section.oil-refinery-use .inner .btn:before {
  content: "";
  display: block;
  position: absolute;
  top: -25px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 5px 25px 5px;
  border-color: transparent transparent #e60012 transparent;
 }
}
@media only screen and (max-width: 320px) {
 body.oil-refinery-use section.oil-refinery-use .inner .btn {
  width: auto;
  padding: 9px;
  line-height: 1.4;
  font-size: 14px;
  font-size: 1.4rem;
 }
}
body.oil-refinery-use section.oil-refinery-use .inner .image-box.how img {
 margin: 0 auto;
 display: block;
 width: 100%;
 max-width: 750px;
}
body.oil-refinery-use section.oil-refinery-use .inner .inner-sm {
 max-width: 750px;
 margin: 0 auto;
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.reactor {
 position: relative;
 margin: 0 0 130px 0;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor {
  margin: 0 0 60px 0;
 }
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.reactor
 .text-box {
 position: absolute;
 right: 0;
 bottom: -30px;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box {
  right: -6%;
  bottom: -5%;
 }
}
@media only screen and (max-width: 320px) {
 body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box {
  bottom: -14%;
  right: -10%;
 }
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.reactor
 .text-box
 ul
 li {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 position: relative;
 padding: 0 0 0 30px;
 margin: 0 0 20px 0;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li {
  font-size: 10px;
  font-size: 1rem;
  line-height: 1.3;
  margin: 0 0 10px 0;
  padding: 0 0 0 14px;
  -webkit-transform: scale(0.7);
  -moz-transform: scale(0.7);
  -ms-transform: scale(0.7);
  -o-transform: scale(0.7);
  transform: scale(0.7);
 }
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.reactor
 .text-box
 ul
 li
 span {
 color: #e60012;
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.reactor
 .text-box
 ul
 li:before {
 position: absolute;
 left: 0;
 top: 6px;
 display: block;
 width: 22px;
 height: 22px;
 font-size: 16px;
 font-size: 1.6rem;
 text-align: center;
 line-height: 22px;
 color: #fff;
 font-family: "Open Sans", sans-serif;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li:before {
  line-height: 12px;
  width: 12px;
  height: 12px;
  top: 2px;
  font-size: 10px;
  font-size: 1rem;
  -webkit-transform: scale(0.7);
  -moz-transform: scale(0.7);
  -ms-transform: scale(0.7);
  -o-transform: scale(0.7);
  transform: scale(0.7);
 }
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.reactor
 .text-box
 ul
 li:first-child {
 margin: 0 0 40px 0;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li:first-child {
  margin: 0 0 10px 0;
 }
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.reactor
 .text-box
 ul
 li:first-child:before {
 content: "1";
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.reactor
 .text-box
 ul
 li:nth-child(2):before {
 content: "2";
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.reactor
 .text-box
 ul
 li:nth-child(3):before {
 content: "3";
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.reactor
 .text-box
 ul
 li:last-child:before {
 content: "4";
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.reactor
 .text-box
 ul
 li:nth-child(even):before {
 background: #e60012;
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.reactor
 .text-box
 ul
 li:nth-child(odd):before {
 background: #4d4d4d;
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.burner
 p.cap {
 font-size: 16px;
 font-size: 1.6rem;
 padding: 20px 0 0;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.burner
  p.cap {
  line-height: 1.5625;
 }
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.burner
 .title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 padding: 80px 0 0;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.burner
  .title {
  line-height: 1.75;
  padding: 40px 0 0;
 }
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.burner
 .text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
 padding: 16px 0 0;
}
body.oil-refinery-use
 section.oil-refinery-use
 .inner
 .inner-sm
 .image-box.burner
 .text
 span {
 color: #e60012;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.burner
  .text {
  padding-top: 12px;
 }
}

body.oil-refinery .oil-mv {
 width: 100%;
 max-width: 1600px;
 position: relative;
 margin: 0 auto;
 top: -36px;
 z-index: -1;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery .oil-mv {
  top: -28px;
 }
}
@media only screen and (max-width: 320px) {
 body.oil-refinery .oil-mv {
  top: -42px;
 }
}
@media only screen and (min-width: 1500px) {
 body.oil-refinery .oil-mv > .pc {
  display: none;
 }
}
@media only screen and (max-width: 1499px) {
 body.oil-refinery .oil-mv .pc-1500 {
  display: none;
 }
}
@media only screen and (min-width: 1500px) {
 body.oil-refinery .oil-mv .pc-1500 {
  display: block;
 }
}
body.oil-refinery .oil-mv--text {
 -webkit-transition: opacity 1s;
 -webkit-transition-delay: 1.2s;
 -moz-transition: opacity 1s 1.2s;
 -o-transition: opacity 1s 1.2s;
 transition: opacity 1s 1.2s;
}
@media only screen and (min-width: 768px) {
 body.oil-refinery .oil-mv--text {
  position: absolute;
  top: 55%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
 }
}
@media only screen and (min-width: 1500px) {
 body.oil-refinery .oil-mv--text {
  top: 60%;
 }
}
@media only screen and (max-width: 767px) {
 body.oil-refinery .oil-mv--text.inner {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: 0;
  padding: 0 4px;
 }
}
body.oil-refinery .oil-mv--text h2 {
 border-radius: 10px;
 font-family: "Sawarabi Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
  "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
 font-size: 34px;
 font-size: 3.4rem;
 letter-spacing: 0.04em;
 line-height: 1.47058823;
 display: inline-block;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery .oil-mv--text h2 {
  max-width: 330px;
  font-size: 24px;
  font-size: 2.4rem;
  padding: 42px 20px;
  letter-spacing: -0.01em;
  text-align: center;
 }
}
@media only screen and (max-width: 320px) {
 body.oil-refinery .oil-mv--text h2 {
  font-size: 20px;
  font-size: 2rem;
 }
}

body.oil-refinery section.oil-refinery {
 margin-top: -420px;
 padding: 0 0 60px 0;
}
@media only screen and (min-width: 1600px) {
 body.oil-refinery section.oil-refinery {
  margin-top: -380px;
 }
}
@media only screen and (min-width: 1920px) {
 body.oil-refinery section.oil-refinery {
  margin-top: -370px;
 }
}
@media only screen and (max-width: 1100px) {
 body.oil-refinery section.oil-refinery {
  margin-top: -290px;
 }
}
@media only screen and (max-width: 1000px) {
 body.oil-refinery section.oil-refinery {
  margin-top: -350px;
 }
}
@media only screen and (max-width: 900px) {
 body.oil-refinery section.oil-refinery {
  margin-top: -280px;
 }
}
@media only screen and (max-width: 767px) {
 body.oil-refinery section.oil-refinery {
  padding: 20px 0 0 0;
  margin-top: -15%;
 }
}
@media only screen and (max-width: 320px) {
 body.oil-refinery section.oil-refinery {
  margin-top: -13%;
 }
}
body.oil-refinery section.oil-refinery .inner .oil-refinery-detail {
 max-width: 750px;
 margin: 0 auto;
}
body.oil-refinery section.oil-refinery .inner .oil-refinery-detail > h3 {
 font-size: 24px;
 font-size: 2.4rem;
 font-weight: bold;
 line-height: 1.666666;
 text-align: center;
 margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery section.oil-refinery .inner .oil-refinery-detail > h3 {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: -0.05em;
  margin-bottom: 30px;
 }
}
body.oil-refinery section.oil-refinery .inner .oil-refinery-detail > h3 span {
 color: #e60012;
}
body.oil-refinery section.oil-refinery .inner .oil-refinery-detail > h4 {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 color: #fff;
 text-align: center;
 background: #4d4d4d;
 padding: 12px 0;
 margin: 0 0 30px 0;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery section.oil-refinery .inner .oil-refinery-detail > h4 {
  line-height: 1.5;
  padding: 8px;
  margin: 0 0 16px 0;
 }
}
body.oil-refinery
 section.oil-refinery
 .inner
 .oil-refinery-detail
 > h4
 _:lang(x)::-ms-backdrop,
body.oil-refinery section.oil-refinery .inner .oil-refinery-detail > h4 {
 padding: 15px 0 9px;
}
body.oil-refinery section.oil-refinery .inner .oil-refinery-detail > p {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 margin: 0 0 30px 0;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery section.oil-refinery .inner .oil-refinery-detail > p {
  margin: 0 0 16px 0;
 }
}
body.oil-refinery section.oil-refinery .inner .oil-refinery-detail > p.bold {
 color: #e60012;
 font-weight: bold;
 font-size: 20px;
 font-size: 2rem;
 margin: 0 0 10px 0;
}
body.oil-refinery section.oil-refinery .inner .oil-refinery-detail p.mb60-30 {
 margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery section.oil-refinery .inner .oil-refinery-detail p.mb60-30 {
  margin-bottom: 30px;
 }
}
body.oil-refinery
 section.oil-refinery
 .inner
 .oil-refinery-detail
 .country-of-sale
 p {
 font-size: 18px;
 font-size: 1.8rem;
 font-weight: bold;
 margin: 0 0 10px 0;
}
@media only screen and (min-width: 768px) {
 body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  .country-of-sale
  .row {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
 }
}
body.oil-refinery
 section.oil-refinery
 .inner
 .oil-refinery-detail
 .country-of-sale
 .row
 span {
 line-height: 1.875;
 font-size: 16px;
 font-size: 1.6rem;
}
@media only screen and (min-width: 768px) {
 body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  .country-of-sale
  .row
  span {
  display: block;
 }
}
@media only screen and (min-width: 768px) {
 body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  .country-of-sale
  .row
  span:first-child {
  width: 10.4%;
  letter-spacing: -0.03em;
 }
}
@media only screen and (min-width: 768px) {
 body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  .country-of-sale
  .row
  span:last-child {
  width: 89.6%;
 }
}
body.oil-refinery section.oil-refinery .inner .oil-refinery-detail .image-box {
 margin: 30px 0 50px 0;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery section.oil-refinery .inner .oil-refinery-detail .image-box {
  margin: 20px 0 74px 0;
 }
}
body.oil-refinery
 section.oil-refinery
 .inner
 .oil-refinery-detail
 .image-box
 img {
 display: block;
 width: 100%;
}

body.oil-refinery section.top-share .top-share-bg {
 background: url(../images/oil-refinery/top-share-bg.png) center/cover no-repeat;
 width: 100%;
 height: 250px;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery section.top-share .top-share-bg {
  height: 72px;
 }
}

@media only screen and (min-width: 768px) {
 body.oil-refinery section.top-share .inner {
  position: relative;
  top: -150px;
 }
}

@media only screen and (max-width: 767px) {
 body.oil-refinery section.top-share .inner {
  padding: 25px 0 0;
 }
}

body.oil-refinery section.top-share .inner .inner-bg {
 padding: 50px 0 0;
}
@media only screen and (min-width: 768px) {
 body.oil-refinery section.top-share .inner .inner-bg {
  background: #fff;
  border: 4px solid #e1e1e1;
 }
}
@media only screen and (max-width: 767px) {
 body.oil-refinery section.top-share .inner .inner-bg {
  padding-top: 0;
 }
}
body.oil-refinery section.top-share .inner .inner-bg h3 {
 font-size: 24px;
 font-size: 2.4rem;
 font-weight: bold;
 line-height: 1.66666666;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery section.top-share .inner .inner-bg h3 {
  font-size: 20px;
  font-size: 2rem;
 }
}
body.oil-refinery section.top-share .inner .inner-bg .box {
 padding: 0 80px 46px 70px;
}
@media only screen and (min-width: 768px) {
 body.oil-refinery section.top-share .inner .inner-bg .box {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
 }
}
@media only screen and (max-width: 767px) {
 body.oil-refinery section.top-share .inner .inner-bg .box {
  padding: 0;
 }
}
body.oil-refinery section.top-share .inner .inner-bg .box .image-box {
 width: 18.23529411%;
 margin-top: 48px;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery section.top-share .inner .inner-bg .box .image-box {
  width: 61.334%;
  margin: 0 auto;
  margin-top: 20px;
 }
}
body.oil-refinery section.top-share .inner .inner-bg .box .image-box img {
 display: block;
 width: 100%;
}
body.oil-refinery section.top-share .inner .inner-bg .box .text-box {
 width: 77.647058823%;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery section.top-share .inner .inner-bg .box .text-box {
  width: 100%;
  text-align: center;
 }
}
body.oil-refinery section.top-share .inner .inner-bg .box .text-box p {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 margin: 40px 0 0;
 text-align: justify;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery section.top-share .inner .inner-bg .box .text-box p {
  margin: 20px 0 0;
  padding: 0 20px;
 }
}
body.oil-refinery section.top-share .inner .inner-bg .box .text-box p span {
 color: #e60012;
}
body.oil-refinery section.top-share .inner .inner-bg .box .text-box a {
 margin: 40px 0 0;
 font-size: 22px;
 font-size: 2.2rem;
 font-feature-settings: "palt" 1;
}
@media only screen and (max-width: 767px) {
 body.oil-refinery section.top-share .inner .inner-bg .box .text-box a {
  font-size: 16px;
  font-size: 1.6rem;
  margin: 20px 0 0;
 }
}
@media only screen and (max-width: 320px) {
 body.oil-refinery section.top-share .inner .inner-bg .box .text-box a {
  font-size: 13px;
  font-size: 1.3rem;
 }
}

body.privacypolicy #contents {
 margin: 75px 0 120px;
}
@media only screen and (max-width: 767px) {
 body.privacypolicy #contents {
  margin: 30px 0 47px;
 }
}
body.privacypolicy #contents .inner .first-text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 30px;
 margin-bottom: 30px;
}
body.privacypolicy #contents .inner .policy-list li {
 list-style-type: decimal;
 padding-left: 1em;
 margin-left: 1.5em;
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 30px;
 margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
 body.privacypolicy #contents .inner .policy-list li {
  padding-left: 0;
 }
}
body.privacypolicy #contents .inner .policy-list li h3 {
 font-weight: normal;
}
body.privacypolicy #contents .inner .info {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 30px;
 margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
 body.privacypolicy #contents .inner .info {
  margin-bottom: 25px;
 }
}
body.privacypolicy #contents .inner .info:before {
 content: "※";
 margin-right: 1.5em;
}
@media only screen and (max-width: 767px) {
 body.privacypolicy #contents .inner .info:before {
  margin-right: 0;
 }
}
body.privacypolicy #contents .inner .author {
 text-align: right;
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 30px;
}

body.sitemap #contents {
 margin: 75px 0 120px;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents {
  margin: 30px 0 32px;
 }
}
body.sitemap #contents .inner .heading {
 padding: 5px 5px 5px 37px;
}
body.sitemap #contents .inner .heading _:lang(x)::-ms-backdrop,
body.sitemap #contents .inner .heading {
 padding-top: 9px;
 padding-bottom: 1px;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .heading {
  padding: 4px 4px 4px 22px;
 }
}
body.sitemap #contents .inner a {
 display: flex;
 width: 100%;
 height: 100%;
 padding: 5px 5px 5px 20px;
}
@media only screen and (min-width: 768px) {
 body.sitemap #contents .inner a {
  transition: opacity 0.3s;
 }
 body.sitemap #contents .inner a:hover {
  opacity: 0.6;
 }
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner a {
  padding: 4px 4px 4px 10px;
 }
}
body.sitemap #contents .inner a _:lang(x)::-ms-backdrop,
body.sitemap #contents .inner a {
 padding: 10px 5px 0px 20px;
}
body.sitemap #contents .inner a:before {
 content: "";
 display: block;
 width: 6px;
 height: 11px;
 background-image: url(../images/common/arrow-red.svg);
 background-repeat: no-repeat;
 background-position: center;
 background-size: 100%;
 margin-right: 10px;
 margin-top: 10px;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner a:before {
  width: 5px;
  height: 10px;
  margin-top: 6px;
  margin-right: 7px;
 }
}
@media all and (-ms-high-contrast: none) {
 body.sitemap #contents .inner a:before {
  margin-top: 6px;
 }
}
body.sitemap #contents .inner .box {
 display: flex;
 justify-content: space-between;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box {
  flex-direction: column;
 }
}
body.sitemap #contents .inner .box .left {
 width: 64%;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box .left {
  width: 100%;
 }
}
body.sitemap #contents .inner .box .right {
 width: 320px;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box .right {
  width: 100%;
 }
 body.sitemap #contents .inner .box .right table:last-child {
  margin-bottom: 0;
 }
}
body.sitemap #contents .inner .box table {
 border-right: 1px solid #e1e1e1;
 width: 100%;
 margin-bottom: 9px;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box table {
  margin-bottom: 13px;
 }
}
body.sitemap #contents .inner .box table tbody tr th,
body.sitemap #contents .inner .box table tbody tr td {
 font-size: 18px;
 font-size: 1.8rem;
 line-height: 30px;
 border-bottom: 1px solid #e1e1e1;
 border-left: 1px solid #e1e1e1;
 border-top: 1px solid #e1e1e1;
 width: 320px;
 font-feature-settings: "palt";
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box table tbody tr th,
 body.sitemap #contents .inner .box table tbody tr td {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6em;
 }
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box table tbody tr th.short,
 body.sitemap #contents .inner .box table tbody tr td.short {
  width: 38%;
 }
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box table tbody tr th.wide,
 body.sitemap #contents .inner .box table tbody tr td.wide {
  width: 62%;
 }
}
body.sitemap #contents .inner .box table tbody tr th.null,
body.sitemap #contents .inner .box table tbody tr td.null {
 border: none;
}
body.sitemap #contents .inner .box table tbody tr th {
 background-color: #e1e1e1;
}
body.sitemap #contents .inner .box table.item1 {
 margin-bottom: 18px;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box table.item1 {
  margin-bottom: 13px;
 }
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box table.item2 {
  margin-bottom: 14px;
 }
}
body.sitemap #contents .inner .box table.item3 {
 margin-bottom: 27px;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box table.item3 {
  margin-bottom: 25px;
 }
}
body.sitemap #contents .inner .box table.item4 {
 margin-bottom: 27px;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box table.item4 {
  margin-bottom: 29px;
 }
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box table.item8 {
  margin-bottom: 30px;
 }
}
body.sitemap #contents .inner .box table.ritem1 {
 margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box table.ritem1 {
  margin-bottom: 13px;
 }
}
body.sitemap #contents .inner .box table.ritem2 {
 margin-bottom: 48px;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box table.ritem2 {
  margin-bottom: 13px;
 }
}
body.sitemap #contents .inner .box table.ritem3 {
 margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box table.ritem3 {
  margin-bottom: 13px;
 }
}
body.sitemap #contents .inner .box table.ritem4 {
 margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .box table.ritem4 {
  margin-bottom: 13px;
 }
}
body.sitemap #contents .inner .bottom-map {
 margin-top: 70px;
 display: flex;
 align-items: center;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .bottom-map {
  margin-top: 30px;
  flex-wrap: wrap;
 }
}
body.sitemap #contents .inner .bottom-map li {
 margin-right: 35px;
}
body.sitemap #contents .inner .bottom-map li:last-child {
 margin-right: 0;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .bottom-map li {
  margin-right: 0;
  width: 50%;
  margin-bottom: 24px;
 }
}
body.sitemap #contents .inner .bottom-map li a {
 font-size: 18px;
 font-size: 1.8rem;
 padding-left: 0;
}
@media only screen and (max-width: 767px) {
 body.sitemap #contents .inner .bottom-map li a {
  font-size: 14px;
  font-size: 1.4rem;
 }
}
body.sitemap #contents .inner .bottom-map li a _:lang(x)::-ms-backdrop,
body.sitemap #contents .inner .bottom-map li a {
 padding-top: 2px;
}
body.sitemap #contents .inner .bottom-map li a:before {
 margin-top: 4px;
}
@media all and (-ms-high-contrast: none) {
 body.sitemap #contents .inner .bottom-map li a:before {
  margin-top: 1px;
 }
}

body.taylor-principle section.taylor-principle {
 padding: 90px 0 130px 0;
}
@media only screen and (max-width: 767px) {
 body.taylor-principle section.taylor-principle {
  padding: 0 0 60px 0;
 }
}
body.taylor-principle section.taylor-principle .inner h3 {
 background: #4d4d4d;
 color: #fff;
 font-weight: bold;
 font-size: 20px;
 font-size: 2rem;
 text-align: center;
 padding: 12px 0;
 margin: 0 0 40px 0;
}
body.taylor-principle
 section.taylor-principle
 .inner
 h3
 _:lang(x)::-ms-backdrop,
body.taylor-principle section.taylor-principle .inner h3 {
 padding: 15px 0 9px;
}
@media only screen and (max-width: 767px) {
 body.taylor-principle section.taylor-principle .inner h3 {
  line-height: 1.5;
  padding: 7px 10px;
  margin: 50px 0 20px 0;
 }
}
body.taylor-principle section.taylor-principle .inner h3.mt-80 {
 margin-top: 80px;
}
@media only screen and (max-width: 767px) {
 body.taylor-principle section.taylor-principle .inner h3.mt-80 {
  margin-top: 50px;
 }
}
body.taylor-principle section.taylor-principle .inner .movie-wrap {
 padding: 0 0 90px 0;
}
@media only screen and (max-width: 767px) {
 body.taylor-principle section.taylor-principle .inner .movie-wrap {
  padding: 0;
 }
}
body.taylor-principle section.taylor-principle .inner .movie-wrap p {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.taylor-principle section.taylor-principle .inner .movie-wrap p {
  text-align: justify;
 }
}
body.taylor-principle section.taylor-principle .inner .movie-wrap .movie {
 max-width: 485px;
 margin: 26px auto 0;
 display: block;
}
@media only screen and (min-width: 768px) {
 body.taylor-principle section.taylor-principle .inner .movie-wrap .movie {
  transition: opacity 0.3s;
 }
 body.taylor-principle
  section.taylor-principle
  .inner
  .movie-wrap
  .movie:hover {
  opacity: 0.6;
 }
}
@media only screen and (max-width: 767px) {
 body.taylor-principle section.taylor-principle .inner .movie-wrap .movie {
  margin: 14px auto auto;
 }
}
body.taylor-principle section.taylor-principle .inner p {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 margin: 30px 0 70px;
}
@media only screen and (max-width: 767px) {
 body.taylor-principle section.taylor-principle .inner p {
  margin: 15px 0;
 }
}
body.taylor-principle section.taylor-principle .inner p span {
 color: #e60012;
}
body.taylor-principle section.taylor-principle .inner p.left {
 text-align: justify;
}
body.taylor-principle section.taylor-principle .inner p.center {
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.taylor-principle section.taylor-principle .inner p.left-sp {
  text-align: justify;
 }
}
body.taylor-principle section.taylor-principle .inner .img1 {
 width: 518px;
 margin: auto;
}
@media only screen and (max-width: 767px) {
 body.taylor-principle section.taylor-principle .inner .img1 {
  width: 100%;
 }
}
@media only screen and (min-width: 768px) {
 body.taylor-principle section.taylor-principle .inner ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
 }
}
body.taylor-principle section.taylor-principle .inner ul li {
 width: 48.5%;
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 background: #f0f0f0;
 border-radius: 8px;
 text-align: center;
 padding: 17px 0;
 margin: 0 0 20px 0;
}
body.taylor-principle
 section.taylor-principle
 .inner
 ul
 li
 _:lang(x)::-ms-backdrop,
body.taylor-principle section.taylor-principle .inner ul li {
 padding: 21px 0 13px;
}
@media only screen and (max-width: 767px) {
 body.taylor-principle section.taylor-principle .inner ul li {
  font-size: 16px;
  font-size: 1.6rem;
  width: 100%;
  margin: 0 0 10px 0;
  padding: 5px 20px;
  line-height: 1.875;
 }
}
body.taylor-principle section.taylor-principle .inner ul li:last-child {
 width: 100%;
 margin-bottom: 0;
}
body.taylor-principle section.taylor-principle .inner ul li span {
 display: block;
 line-height: 1.5;
 font-weight: normal;
}
@media only screen and (max-width: 767px) {
 body.taylor-principle section.taylor-principle .inner .figure {
  overflow-x: auto;
  white-space: nowrap;
 }
 body.taylor-principle
  section.taylor-principle
  .inner
  .figure
  ::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 7px;
  height: 7px;
 }
 body.taylor-principle
  section.taylor-principle
  .inner
  .figure
  ::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);
 }
 body.taylor-principle section.taylor-principle .inner .figure img {
  max-width: none;
  width: 100%;
  min-width: 600px;
  overflow-x: scroll;
  white-space: nowrap;
 }
}

body.taylor-principle section .contact-link {
 margin: 100px 0 0;
}
@media only screen and (max-width: 767px) {
 body.taylor-principle section .contact-link {
  margin: 50px 0 0;
 }
}
@media only screen and (min-width: 768px) {
 body.taylor-principle section .contact-link a {
  transition: opacity 0.3s;
 }
 body.taylor-principle section .contact-link a:hover {
  opacity: 0.6;
 }
}

body.taylor .taylor-mv {
 position: relative;
 top: -36px;
 max-width: 1000px;
 margin: 0 auto;
}
@media only screen and (max-width: 767px) {
 body.taylor .taylor-mv {
  background: none;
  height: auto;
  top: auto;
 }
}
body.taylor .taylor-mv img:not(.mv-txt) {
 display: block;
 margin: 0 0 0 auto;
 width: 100%;
}
@media only screen and (max-width: 990px) {
 body.taylor .taylor-mv img:not(.mv-txt) {
  width: 80%;
 }
}
@media only screen and (max-width: 767px) {
 body.taylor .taylor-mv img:not(.mv-txt) {
  width: 100%;
 }
}
body.taylor .taylor-mv--text {
 -webkit-transition: opacity 1s;
 -webkit-transition-delay: 1.2s;
 -moz-transition: opacity 1s 1.2s;
 -o-transition: opacity 1s 1.2s;
 transition: opacity 1s 1.2s;
}
@media only screen and (min-width: 768px) {
 body.taylor .taylor-mv--text {
  position: absolute;
  top: 36%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
 }
}
@media only screen and (max-width: 767px) {
 body.taylor .taylor-mv--text.inner {
  padding: 0;
 }
}
body.taylor .taylor-mv--text h2 {
 border-radius: 10px;
 font-family: "Sawarabi Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
  "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
 font-size: 34px;
 font-size: 3.4rem;
 letter-spacing: 0.04em;
 line-height: 1.47058823;
 display: inline-block;
}
@media only screen and (max-width: 767px) {
 body.taylor .taylor-mv--text h2 {
  font-size: 25px;
  font-size: 2.5rem;
  padding: 20px 2px 10px 2px;
  text-align: center;
  display: block;
  max-width: 239px;
  margin: 0 auto;
 }
}

body.taylor .taylor-mv-catch {
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.taylor .taylor-mv-catch .inner {
  padding: 0;
 }
}
body.taylor .taylor-mv-catch h3 {
 font-size: 24px;
 font-size: 2.4rem;
 font-weight: bold;
 line-height: 1.6666666;
}
@media only screen and (max-width: 767px) {
 body.taylor .taylor-mv-catch h3 {
  font-size: 20px;
  font-size: 2rem;
  margin: 10px 0 0;
  letter-spacing: -0.05em;
 }
}
@media only screen and (max-width: 320px) {
 body.taylor .taylor-mv-catch h3 {
  font-size: 17px;
  font-size: 1.7rem;
 }
}
body.taylor .taylor-mv-catch p {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 margin-top: 40px;
}
@media only screen and (max-width: 767px) {
 body.taylor .taylor-mv-catch p {
  margin-top: 20px;
  text-align: justify;
 }
}
body.taylor .taylor-mv-catch ul {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: center;
 justify-content: center;
}
@media only screen and (max-width: 767px) {
 body.taylor .taylor-mv-catch ul {
  padding: 0 32px;
  -webkit-justify-content: space-between;
  justify-content: space-between;
 }
}
body.taylor .taylor-mv-catch ul li {
 width: 29.4%;
 font-size: 22px;
 font-size: 2.2rem;
 font-weight: 600;
 border-bottom: 3px solid #e60012;
 padding: 20px 0;
 margin: 50px 0 0;
}
@media only screen and (max-width: 767px) {
 body.taylor .taylor-mv-catch ul li {
  font-size: 17.5px;
  font-size: 1.75rem;
  line-height: 1.4857142;
  width: 45.1%;
  padding: 8px 0;
  margin: 20px 0 0;
 }
}
@media only screen and (min-width: 768px) {
 body.taylor .taylor-mv-catch ul li:first-child,
 body.taylor .taylor-mv-catch ul li:nth-child(2) {
  margin-right: 5.3%;
 }
}
@media only screen and (min-width: 768px) {
 body.taylor .taylor-mv-catch ul li:nth-child(4) {
  margin-right: 2.6%;
 }
}
@media only screen and (min-width: 768px) {
 body.taylor .taylor-mv-catch ul li:last-child {
  margin-left: 2.6%;
 }
}
@media only screen and (max-width: 767px) {
 body.taylor .taylor-mv-catch ul li:last-child {
  margin: 0 auto;
  margin-top: 20px;
 }
}

body.taylor section.taylor {
 padding: 100px 0 92px 0;
}
@media only screen and (max-width: 767px) {
 body.taylor section.taylor {
  padding: 60px 0 50px 0;
 }
}
body.taylor section.taylor .inner .taylor-detail {
 max-width: 750px;
 margin: 0 auto;
}
body.taylor section.taylor .inner .taylor-detail h3 {
 font-size: 24px;
 font-size: 2.4rem;
 font-weight: bold;
 letter-spacing: 0.04em;
 text-align: center;
}
@media only screen and (max-width: 767px) {
 body.taylor section.taylor .inner .taylor-detail h3 {
  font-size: 20px;
  font-size: 2rem;
 }
}
body.taylor section.taylor .inner .taylor-detail h4 {
 font-size: 20px;
 font-size: 2rem;
 color: #fff;
 background: #4d4d4d;
 text-align: center;
 padding: 12px 0;
}
body.taylor section.taylor .inner .taylor-detail h4 _:lang(x)::-ms-backdrop,
body.taylor section.taylor .inner .taylor-detail h4 {
 padding: 15px 0 9px;
}
body.taylor section.taylor .inner .taylor-detail__01 h4 {
 margin: 40px 0;
}
@media only screen and (max-width: 767px) {
 body.taylor section.taylor .inner .taylor-detail__01 h4 {
  margin: 20px 0 24px 0;
 }
}
body.taylor section.taylor .inner .taylor-detail__01 .col {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
 margin: 0 0 20px 0;
 height: 86px;
}
@media only screen and (max-width: 767px) {
 body.taylor section.taylor .inner .taylor-detail__01 .col {
  height: auto;
 }
}
body.taylor section.taylor .inner .taylor-detail__01 .col span {
 display: block;
}
body.taylor section.taylor .inner .taylor-detail__01 .col span:first-child {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 background: #e1e1e1;
 width: 21.3333333%;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-align-items: center;
 align-items: center;
 -webkit-justify-content: center;
 justify-content: center;
}
@media only screen and (max-width: 767px) {
 body.taylor section.taylor .inner .taylor-detail__01 .col span:first-child {
  width: 100%;
  padding: 12px 0;
 }
}
body.taylor section.taylor .inner .taylor-detail__01 .col span:last-child {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 width: 76%;
}
@media only screen and (min-width: 768px) {
 body.taylor section.taylor .inner .taylor-detail__01 .col span:last-child {
  letter-spacing: -0.03em;
 }
}
@media only screen and (max-width: 767px) {
 body.taylor section.taylor .inner .taylor-detail__01 .col span:last-child {
  width: 100%;
  padding: 10px 0 0;
 }
}
body.taylor section.taylor .inner .taylor-detail__02 {
 margin: 60px 0 0;
}
@media only screen and (max-width: 767px) {
 body.taylor section.taylor .inner .taylor-detail__02 {
  margin: 30px 0 0;
 }
}
body.taylor section.taylor .inner .taylor-detail__02 h4 {
 margin: 30px 0;
}
@media only screen and (max-width: 767px) {
 body.taylor section.taylor .inner .taylor-detail__02 h4 {
  margin: 20px 0;
 }
}
body.taylor section.taylor .inner .taylor-detail__02 p {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
}
body.taylor section.taylor .inner .taylor-detail__02 p span {
 color: #e60012;
}
body.taylor section.taylor .inner .taylor-detail__02 ul {
 margin: 30px 0 10px 0;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
body.taylor section.taylor .inner .taylor-detail__02 ul li {
 width: 46.66666666%;
}
@media only screen and (max-width: 767px) {
 body.taylor section.taylor .inner .taylor-detail__02 ul li {
  width: 100%;
 }
}
@media only screen and (max-width: 767px) {
 body.taylor section.taylor .inner .taylor-detail__02 ul li:first-child {
  padding: 0 0 40px 0;
 }
}
body.taylor section.taylor .inner .taylor-detail__02 ul li figure figcaption p {
 text-align: center;
}
body.taylor
 section.taylor
 .inner
 .taylor-detail__02
 ul
 li
 figure
 figcaption
 p:first-child {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 background: #f0f0f0;
}
body.taylor
 section.taylor
 .inner
 .taylor-detail__02
 ul
 li
 figure
 figcaption
 p:last-child {
 padding: 6px 0;
 font-size: 16px;
 font-size: 1.6rem;
}
body.taylor section.taylor .inner .taylor-detail__02 ul li figure img {
 width: 100%;
}

body.taylor section.construction .construction-bg {
 background: url(../images/taylor/construction-bg.png) center/cover no-repeat;
 width: 100%;
 height: 250px;
}
@media only screen and (max-width: 767px) {
 body.taylor section.construction .construction-bg {
  height: 75px;
 }
}

@media only screen and (min-width: 768px) {
 body.taylor section.construction .inner {
  position: relative;
  top: -150px;
 }
}

@media only screen and (max-width: 767px) {
 body.taylor section.construction .inner {
  padding: 0;
 }
}

body.taylor section.construction .inner .inner-bg {
 padding: 50px 0 60px 0;
 text-align: center;
}
@media only screen and (min-width: 768px) {
 body.taylor section.construction .inner .inner-bg {
  background: #fff;
  border: 4px solid #e1e1e1;
 }
}
@media only screen and (max-width: 767px) {
 body.taylor section.construction .inner .inner-bg {
  padding: 35px 0 0;
 }
}
body.taylor section.construction .inner .inner-bg .logo {
 max-width: 194px;
 margin: 0 auto;
}
body.taylor section.construction .inner .inner-bg p {
 font-weight: bold;
 font-size: 24px;
 font-size: 2.4rem;
 text-align: center;
 padding: 12px 0 0;
}
@media only screen and (max-width: 767px) {
 body.taylor section.construction .inner .inner-bg p {
  font-size: 20px;
  font-size: 2rem;
 }
}
body.taylor section.construction .inner .inner-bg .movie {
 display: block;
 margin: 30px auto;
 width: 100%;
}
@media only screen and (min-width: 768px) {
 body.taylor section.construction .inner .inner-bg .movie {
  transition: opacity 0.3s;
 }
 body.taylor section.construction .inner .inner-bg .movie:hover {
  opacity: 0.6;
 }
}
@media only screen and (min-width: 768px) {
 body.taylor section.construction .inner .inner-bg .movie {
  max-width: 400px;
 }
}
@media only screen and (max-width: 767px) {
 body.taylor section.construction .inner .inner-bg .movie {
  margin: 20px auto;
  padding: 0 20px;
 }
}
body.taylor section.construction .inner .inner-bg .movie img {
 display: block;
 width: 100%;
}
body.taylor section.construction .inner .inner-bg .more-link {
 font-size: 22px;
 font-size: 2.2rem;
}
@media only screen and (max-width: 767px) {
 body.taylor section.construction .inner .inner-bg .more-link {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: -0.07em;
 }
}
@media only screen and (max-width: 320px) {
 body.taylor section.construction .inner .inner-bg .more-link {
  line-height: 1.3;
  letter-spacing: 0em;
 }
}
body.taylor section.construction .inner .inner-bg .more-link .ip5 {
 display: none;
}
@media only screen and (max-width: 320px) {
 body.taylor section.construction .inner .inner-bg .more-link .ip5 {
  display: block;
 }
}

body.taylor .contact-link {
 margin: 0 0 100px 0;
}
@media only screen and (max-width: 767px) {
 body.taylor .contact-link {
  margin: 60px 0;
 }
}
body.taylor .contact-link .inner a {
 display: block;
}
@media only screen and (min-width: 768px) {
 body.taylor .contact-link .inner a {
  transition: opacity 0.3s;
 }
 body.taylor .contact-link .inner a:hover {
  opacity: 0.6;
 }
}

@media only screen and (max-width: 767px) {
 body.taylor.product main section.product-info {
  margin-bottom: 60px;
 }
}

@media only screen and (max-width: 767px) {
 body.taylor ul.list__product-info > li {
  height: auto;
 }
 body.taylor ul.list__product-info > li .link--outline {
  margin: 0 auto;
 }
}

@media only screen and (max-width: 767px) {
 body.technology.subpage .wrap {
  padding: 50px 0 0;
 }
}

@media only screen and (max-width: 767px) {
 body.technology section .inner {
  padding: 0;
 }
}

body.technology section .share-heading {
 font-size: 28px;
 font-size: 2.8rem;
 font-weight: bold;
}
@media only screen and (max-width: 767px) {
 body.technology section .share-heading {
  font-size: 20px;
  font-size: 2rem;
  margin: 40px 20px 0 20px;
  padding-left: 2em;
  text-indent: -2.2em;
 }
}
body.technology section .share-heading span {
 font-size: 60px;
 font-size: 6rem;
 color: #e60012;
 font-family: "Open Sans", sans-serif;
 font-weight: 100;
 padding-right: 10px;
}
@media only screen and (max-width: 767px) {
 body.technology section .share-heading span {
  font-size: 35px;
  font-size: 3.5rem;
  padding: 0 4px 0 0;
 }
}

@media only screen and (max-width: 767px) {
 body.technology section .share-heading-bottom span {
  vertical-align: middle;
 }
}

@media only screen and (max-width: 320px) {
 body.technology section .share-heading-bottom br {
  display: none !important;
 }
}

body.technology section.technology-share {
 padding: 70px 0 130px 0;
}
@media only screen and (max-width: 767px) {
 body.technology section.technology-share {
  padding: 40px 0 40px 0;
 }
}
body.technology section.technology-share .inner .catch-en {
 font-size: 40px;
 font-size: 4rem;
 font-family: "Open Sans", sans-serif;
 text-align: center;
 color: #e60012;
}
@media only screen and (max-width: 767px) {
 body.technology section.technology-share .inner .catch-en {
  font-size: 30px;
  font-size: 3rem;
 }
}
body.technology section.technology-share .inner .catch-ja {
 font-size: 16px;
 font-size: 1.6rem;
 text-align: center;
 line-height: 1.875;
 padding: 10px 0 0;
 margin-bottom: 40px;
}
body.technology section.technology-share .inner .share {
 margin: 40px 0 0;
 padding: 0 0 26px 0;
}
@media only screen and (max-width: 767px) {
 body.technology section.technology-share .inner .share {
  margin: 20px 0 0;
 }
}
body.technology section.technology-share .inner .share .share-title {
 background: #4d4d4d;
 color: #fff;
 font-size: 24px;
 font-size: 2.4rem;
 font-weight: bold;
 padding: 13px 0;
 text-align: center;
 max-width: 308px;
 position: relative;
}
body.technology
 section.technology-share
 .inner
 .share
 .share-title
 _:lang(x)::-ms-backdrop,
body.technology section.technology-share .inner .share .share-title {
 padding: 17px 0 9px;
}
@media only screen and (max-width: 767px) {
 body.technology section.technology-share .inner .share .share-title {
  font-size: 20px;
  font-size: 2rem;
  text-align: left;
  padding: 12px 10px;
  max-width: 260px;
 }
}
@media only screen and (max-width: 320px) {
 body.technology section.technology-share .inner .share .share-title {
  max-width: 226px;
 }
}
body.technology section.technology-share .inner .share .share-title:before {
 content: "";
 display: block;
 width: 50px;
 height: 50px;
 width: 0;
 height: 0;
 position: absolute;
 right: -50px;
 top: 0;
 border-style: solid;
 border-width: 50px 50px 0 0;
 border-color: #4d4d4d transparent transparent transparent;
}
@media only screen and (max-width: 767px) {
 body.technology section.technology-share .inner .share .share-title:before {
  width: 44px;
  height: 44px;
  right: -44px;
  border-width: 44px 44px 0 0;
 }
}
@media only screen and (min-width: 768px) {
 body.technology section.technology-share .inner .share.share01 {
  border-left: 1px solid #e60012;
  border-bottom: 1px solid #e60012;
 }
}
@media only screen and (max-width: 767px) {
 body.technology section.technology-share .inner .share.share01 {
  margin: 26px 0 0;
  padding: 0 20px;
 }
}
body.technology section.technology-share .inner .share.share01 .share-box {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
body.technology
 section.technology-share
 .inner
 .share.share01
 .share-box
 .left {
 margin: 0 0 0 36px;
 width: 40%;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.technology-share
  .inner
  .share.share01
  .share-box
  .left {
  width: 100%;
  -webkit-order: 2;
  order: 2;
  margin: 0;
 }
}
body.technology
 section.technology-share
 .inner
 .share.share01
 .share-box
 .left
 .title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 padding: 50px 0 0;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.technology-share
  .inner
  .share.share01
  .share-box
  .left
  .title {
  padding: 25px 0 0;
  font-size: 16px;
  font-size: 1.6rem;
 }
}
body.technology
 section.technology-share
 .inner
 .share.share01
 .share-box
 .left
 .text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
 padding: 10px 0 0;
}
body.technology
 section.technology-share
 .inner
 .share.share01
 .share-box
 .left
 .text
 span {
 color: #e60012;
}
body.technology
 section.technology-share
 .inner
 .share.share01
 .share-box
 .right {
 width: 54%;
 margin: -20px 0 0;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.technology-share
  .inner
  .share.share01
  .share-box
  .right {
  width: 100%;
  -webkit-order: 1;
  order: 1;
  margin: 26px 0 0;
 }
}
body.technology
 section.technology-share
 .inner
 .share.share01
 .share-box
 .right
 img {
 width: 100%;
}
body.technology section.technology-share .inner .share.share02 {
 margin: 70px 0 0;
}
@media only screen and (min-width: 768px) {
 body.technology section.technology-share .inner .share.share02 {
  border-bottom: 1px solid #e60012;
  border-left: 1px solid #e60012;
  background: url("../images/technology/bg01.svg") bottom 48px right/96% auto
   no-repeat;
 }
}
@media only screen and (max-width: 767px) {
 body.technology section.technology-share .inner .share.share02 {
  margin: 20px 0 0;
  padding: 0 20px;
 }
}
body.technology section.technology-share .inner .share.share02 .share-box {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
 padding: 20px 0 110px 0;
}
@media only screen and (max-width: 767px) {
 body.technology section.technology-share .inner .share.share02 .share-box {
  padding: 20px 0 0 0;
 }
}
body.technology
 section.technology-share
 .inner
 .share.share02
 .share-box
 .left {
 margin: 0 0 0 36px;
 width: 39%;
}
@media only screen and (min-width: 768px) {
 body.technology
  section.technology-share
  .inner
  .share.share02
  .share-box
  .left {
  position: relative;
  z-index: -1;
 }
}
@media only screen and (max-width: 767px) {
 body.technology
  section.technology-share
  .inner
  .share.share02
  .share-box
  .left {
  width: 100%;
  margin: 0;
  padding: 0 0 40px 0;
  position: relative;
 }
 body.technology
  section.technology-share
  .inner
  .share.share02
  .share-box
  .left:before {
  content: "";
  display: block;
  width: 110%;
  height: 60px;
  position: absolute;
  bottom: 0;
  left: -5%;
  background: url("../images/technology/bg01.svg") bottom center/100% auto
   no-repeat;
 }
}
@media only screen and (max-width: 767px) {
 body.technology
  section.technology-share
  .inner
  .share.share02
  .share-box
  .left
  img {
  position: relative;
  z-index: -1;
 }
}
body.technology
 section.technology-share
 .inner
 .share.share02
 .share-box
 .right {
 width: 49%;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.technology-share
  .inner
  .share.share02
  .share-box
  .right {
  width: 100%;
 }
}
body.technology
 section.technology-share
 .inner
 .share.share02
 .share-box
 .right
 .title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 padding: 50px 0 0;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.technology-share
  .inner
  .share.share02
  .share-box
  .right
  .title {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 25px 0 0;
 }
}
body.technology
 section.technology-share
 .inner
 .share.share02
 .share-box
 .right
 .text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
 padding: 10px 0 0;
}
body.technology
 section.technology-share
 .inner
 .share.share02
 .share-box
 .right
 .text
 span {
 color: #e60012;
}
body.technology section.technology-share .inner .share.share-twocolumn {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
@media only screen and (max-width: 767px) {
 body.technology section.technology-share .inner .share.share-twocolumn {
  padding: 0 20px;
 }
}
body.technology section.technology-share .inner .share.share-twocolumn .column {
 width: 47.5%;
 padding: 0 0 36px 0;
}
@media only screen and (min-width: 768px) {
 body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column {
  border-bottom: 1px solid #e60012;
  border-left: 1px solid #e60012;
 }
}
@media only screen and (max-width: 767px) {
 body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column {
  width: 100%;
 }
}
body.technology
 section.technology-share
 .inner
 .share.share-twocolumn
 .column.column01
 .share-detail {
 margin: 0 0 0 36px;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column01
  .share-detail {
  margin: 0;
 }
}
@media only screen and (min-width: 768px) {
 body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column01
  .share-detail
  img {
  float: right;
  margin: 70px 0 26px 26px;
 }
}
@media only screen and (max-width: 767px) {
 body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column01
  .share-detail
  img {
  margin: 26px auto 0;
  display: block;
 }
}
body.technology
 section.technology-share
 .inner
 .share.share-twocolumn
 .column.column01
 .share-detail
 .title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 padding: 50px 0 0;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column01
  .share-detail
  .title {
  font-size: 16px;
  font-size: 1.6rem;
 }
}
body.technology
 section.technology-share
 .inner
 .share.share-twocolumn
 .column.column01
 .share-detail
 .text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
 padding: 10px 0 0;
}
body.technology
 section.technology-share
 .inner
 .share.share-twocolumn
 .column.column01
 .share-detail
 .text
 span {
 color: #e60012;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column02 {
  padding: 0;
 }
}
body.technology
 section.technology-share
 .inner
 .share.share-twocolumn
 .column.column02
 .share-detail {
 margin: 36px 0 0 36px;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column02
  .share-detail {
  margin: 0;
 }
}
body.technology
 section.technology-share
 .inner
 .share.share-twocolumn
 .column.column02
 .share-detail
 img {
 display: block;
 margin: 0 auto;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column02
  .share-detail
  img {
  width: 60%;
  margin: 20px auto 0;
 }
}
body.technology
 section.technology-share
 .inner
 .share.share-twocolumn
 .column.column02
 .share-detail
 .title {
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column02
  .share-detail
  .title {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 10px 0 0;
 }
}
body.technology
 section.technology-share
 .inner
 .share.share-twocolumn
 .column.column02
 .share-detail
 .text {
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 text-align: justify;
 padding: 10px 0 0;
}
body.technology
 section.technology-share
 .inner
 .share.share-twocolumn
 .column.column02
 .share-detail
 .text
 span {
 color: #e60012;
}
@media only screen and (min-width: 768px) {
 body.technology section.technology-share .inner .share.share03 {
  border-bottom: 1px solid #e60012;
  border-left: 1px solid #e60012;
 }
}
@media only screen and (max-width: 767px) {
 body.technology section.technology-share .inner .share.share03 .share-title {
  margin: 20px 20px 0 20px;
 }
}
body.technology section.technology-share .inner .share.share03 .images {
 margin: -50px 0 0;
 padding: 0 30px;
}
@media only screen and (max-width: 767px) {
 body.technology section.technology-share .inner .share.share03 .images {
  margin: 0;
  padding: 0;
 }
}

body.technology section.certification {
 background: #f0f0f0;
 padding: 70px 0 100px 0;
}
@media only screen and (max-width: 767px) {
 body.technology section.certification {
  padding: 26px 20px 30px 20px;
 }
}
@media only screen and (max-width: 767px) {
 body.technology section.certification .share-heading {
  margin: 0;
 }
}
body.technology section.certification .inner h3 {
 color: #fff;
 background: #4d4d4d;
 text-align: center;
 padding: 12px 0;
 margin: 40px 0 0;
 max-width: 940px;
 display: block;
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 margin: 40px auto 0;
 position: relative;
}
body.technology section.certification .inner h3 _:lang(x)::-ms-backdrop,
body.technology section.certification .inner h3 {
 padding: 15px 0 9px;
}
@media only screen and (max-width: 767px) {
 body.technology section.certification .inner h3 {
  max-width: 260px;
  margin: 34px 0 0;
  text-align: left;
  padding: 12px 10px;
 }
}
@media only screen and (max-width: 320px) {
 body.technology section.certification .inner h3 {
  max-width: 226px;
 }
}
body.technology section.certification .inner h3:before,
body.technology section.certification .inner h3:after {
 content: "";
 display: block;
 width: 0;
 height: 0;
 border-style: solid;
 position: absolute;
 top: 0;
}
body.technology section.certification .inner h3:before {
 right: -28px;
 border-width: 44px 28px 0 0;
 border-color: #4d4d4d transparent transparent transparent;
}
body.technology section.certification .inner h3:after {
 left: -28px;
 border-width: 0 0 44px 28px;
 border-color: transparent transparent #4d4d4d transparent;
}
@media only screen and (max-width: 767px) {
 body.technology section.certification .inner h3:after {
  display: none;
 }
}
body.technology section.certification .inner .performance {
 margin: 28px 0 60px 0;
}
@media only screen and (max-width: 767px) {
 body.technology section.certification .inner .performance {
  margin: 36px 0 50px 0;
 }
}
body.technology section.certification .inner .performance .performance-inner {
 background: #fff;
 padding: 0 50px;
 border: 1px solid #e60012;
}
@media only screen and (max-width: 767px) {
 body.technology section.certification .inner .performance .performance-inner {
  padding: 20px 16px;
 }
}
body.technology
 section.certification
 .inner
 .performance
 .performance-inner
 .performance-row__heading {
 padding: 50px 0 20px 0;
 border-bottom: 1px solid #706f70;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__heading {
  padding: 0 0 10px 0;
 }
}
body.technology
 section.certification
 .inner
 .performance
 .performance-inner
 .performance-row__heading
 p {
 font-weight: bold;
 font-size: 20px;
 font-size: 2rem;
 color: #706f70;
}
body.technology
 section.certification
 .inner
 .performance
 .performance-inner
 .performance-row__item {
 padding: 50px 30px 40px 30px;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item {
  padding: 16px 0 0 0;
 }
}
body.technology
 section.certification
 .inner
 .performance
 .performance-inner
 .performance-row__item__image {
 width: 27%;
}
body.technology
 section.certification
 .inner
 .performance
 .performance-inner
 .performance-row__item__image
 img {
 width: 100%;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__image {
  width: 100%;
  max-width: 130px;
  margin: 0 auto;
  display: block;
 }
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item
  .sp-size {
  max-width: 220px;
 }
}
body.technology
 section.certification
 .inner
 .performance
 .performance-inner
 .performance-row__item__chronology {
 width: 60%;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology {
  width: 100%;
 }
}
body.technology
 section.certification
 .inner
 .performance
 .performance-inner
 .performance-row__item__chronology
 p {
 font-size: 24px;
 font-size: 2.4rem;
 font-weight: bold;
 padding: 0 0 30px 0;
 line-height: 1.875;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  p {
  font-size: 19px;
  font-size: 1.9rem;
  padding: 20px 0 0;
 }
}
@media only screen and (max-width: 320px) {
 body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  p {
  font-size: 18px;
  font-size: 1.8rem;
 }
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul {
  margin: 20px 0 0;
 }
}
body.technology
 section.certification
 .inner
 .performance
 .performance-inner
 .performance-row__item__chronology
 ul
 li {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 padding: 0 0 16px 0;
 position: relative;
}
body.technology
 section.certification
 .inner
 .performance
 .performance-inner
 .performance-row__item__chronology
 ul
 li
 span {
 display: block;
 line-height: 1.66666666;
}
body.technology
 section.certification
 .inner
 .performance
 .performance-inner
 .performance-row__item__chronology
 ul
 li
 span:first-child {
 width: 20%;
 color: #e60012;
 font-size: 14px;
 font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:first-child {
  padding: 4px 0 0;
  width: 25%;
 }
}
@media only screen and (max-width: 320px) {
 body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:first-child {
  padding-right: 9px;
 }
}
body.technology
 section.certification
 .inner
 .performance
 .performance-inner
 .performance-row__item__chronology
 ul
 li
 span:nth-child(2) {
 width: 80%;
 font-size: 18px;
 font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:nth-child(2) {
  font-size: 16px;
  font-size: 1.6rem;
  width: 75%;
 }
}
body.technology
 section.certification
 .inner
 .performance
 .performance-inner
 .performance-row__item__chronology
 ul
 li
 span:nth-child(2)
 em {
 font-weight: bold;
 font-style: normal;
}
body.technology
 section.certification
 .inner
 .performance
 .performance-inner
 .performance-row__item__chronology
 ul
 li
 .logo {
 position: absolute;
 right: 12%;
 top: 0;
 display: inline-block;
 width: 60px;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  .logo {
  right: 0;
  top: 38%;
  width: 30px;
 }
}
body.technology section.certification .inner .certification-list ul {
 margin: 30px 0 0;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
body.technology section.certification .inner .certification-list ul li {
 width: 47.5%;
 background: #fff;
 border: 1px solid #e60012;
 padding: 40px 50px 34px 70px;
 margin: 0 0 18px 0;
}
@media only screen and (max-width: 767px) {
 body.technology section.certification .inner .certification-list ul li {
  width: 100%;
  padding: 25px 15px;
 }
}
@media only screen and (max-width: 320px) {
 body.technology section.certification .inner .certification-list ul li {
  padding: 20px 10px;
 }
}
body.technology section.certification .inner .certification-list ul li .title {
 font-size: 24px;
 font-size: 2.4rem;
 font-weight: bold;
 color: #e60012;
 width: 100%;
}
@media only screen and (max-width: 767px) {
 body.technology section.certification .inner .certification-list ul li .title {
  font-size: 20px;
  font-size: 2rem;
 }
}
@media only screen and (max-width: 370px) {
 body.technology section.certification .inner .certification-list ul li .title {
  font-size: 16px;
  font-size: 1.6rem;
 }
}
body.technology
 section.certification
 .inner
 .certification-list
 ul
 li
 .row
 span {
 font-size: 18px;
 font-size: 1.8rem;
 font-weight: bold;
 padding: 0 5% 0 0;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li
  .row
  span {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.2;
  padding: 0;
  width: 54%;
 }
}
@media only screen and (max-width: 370px) {
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li
  .row
  span {
  width: 52%;
  font-size: 13px;
  font-size: 1.3rem;
 }
}
body.technology
 section.certification
 .inner
 .certification-list
 ul
 li
 .column
 span {
 font-size: 18px;
 font-size: 1.8rem;
 font-weight: bold;
 line-height: 1.875;
 display: block;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li
  .column
  span {
  font-size: 16px;
  font-size: 1.6rem;
 }
}
@media only screen and (max-width: 360px) {
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li
  .column
  span {
  font-size: 14px;
  font-size: 1.4rem;
 }
}
body.technology
 section.certification
 .inner
 .certification-list
 ul
 li:first-child
 .row {
 margin: 10px 0;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:first-child
  .row {
  margin: 10px 0 10px 0;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
 }
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:first-child
  .row:before,
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:first-child
  .row:after {
  content: " ";
  display: table;
 }
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:first-child
  .row:after {
  clear: both;
 }
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:first-child
  .row:first-of-type
  span {
  width: 48%;
 }
}
body.technology
 section.certification
 .inner
 .certification-list
 ul
 li:first-child
 .row
 img {
 width: auto;
 height: 34px;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:first-child
  .row
  img {
  float: right;
 }
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:first-child
  .row:nth-child(2)
  img {
  margin-right: 18%;
 }
}
@media only screen and (max-width: 370px) {
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:first-child
  .row:nth-child(2)
  img {
  margin-right: 10%;
 }
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:first-child
  .row:last-child
  img {
  margin-right: 22%;
 }
}
@media only screen and (max-width: 370px) {
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:first-child
  .row:last-child
  img {
  margin-right: 16%;
 }
}
body.technology
 section.certification
 .inner
 .certification-list
 ul
 li:last-child {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
}
body.technology
 section.certification
 .inner
 .certification-list
 ul
 li:last-child
 .column {
 margin: 10px 0 0;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:last-child
  .column {
  margin: 10px 0 0;
 }
}
@media only screen and (max-width: 767px) {
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:last-child
  .column
  span:last-child {
  padding: 14px 0 0;
 }
}
body.technology
 section.certification
 .inner
 .certification-list
 ul
 li:last-child
 .column
 img {
 width: auto;
 height: 80px;
}
@media only screen and (max-width: 360px) {
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:last-child
  .column
  img {
  height: 70px;
 }
}

body.technology section.invention {
 padding: 70px 0 130px 0;
}
@media only screen and (max-width: 767px) {
 body.technology section.invention {
  padding: 0 20px 70px 20px;
 }
}
@media only screen and (max-width: 767px) {
 body.technology section.invention .inner .share-heading {
  margin: 40px 0 0;
 }
}
body.technology section.invention .inner .main-text {
 margin: 50px 0 0;
}
@media only screen and (max-width: 767px) {
 body.technology section.invention .inner .main-text {
  margin: 10px 0 0;
 }
}
body.technology section.invention .inner .main-text h3 {
 text-align: center;
 display: block;
 padding: 0 0 22px 0;
 font-size: 100px;
 font-size: 10rem;
 font-weight: 100;
 font-style: italic;
 color: #e60012;
 font-family: "Open Sans", sans-serif;
 border-bottom: 1px solid #e60012;
}
@media only screen and (max-width: 767px) {
 body.technology section.invention .inner .main-text h3 {
  font-size: 70px;
  font-size: 7rem;
  padding: 0 0 14px 0;
 }
}
@media only screen and (max-width: 320px) {
 body.technology section.invention .inner .main-text h3 {
  font-size: 60px;
  font-size: 6rem;
 }
}
body.technology section.invention .inner .main-text h3 span:first-child {
 font-size: 40px;
 font-size: 4rem;
 font-weight: bold;
 color: #4d4d4d;
 font-style: normal;
}
@media only screen and (max-width: 767px) {
 body.technology section.invention .inner .main-text h3 span:first-child {
  font-size: 20px;
  font-size: 2rem;
 }
}
body.technology section.invention .inner .main-text h3 span:last-child {
 font-size: 60px;
 font-size: 6rem;
 font-style: normal;
}
@media only screen and (max-width: 767px) {
 body.technology section.invention .inner .main-text h3 span:last-child {
  font-size: 30px;
  font-size: 3rem;
 }
}
body.technology section.invention .inner .sub-text {
 margin: 40px 0 0;
}
@media only screen and (max-width: 767px) {
 body.technology section.invention .inner .sub-text {
  margin: 20px 0 0;
 }
}
body.technology section.invention .inner .sub-text ul {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: center;
 justify-content: center;
}
body.technology section.invention .inner .sub-text ul li {
 margin: 0 20px;
 display: -webkit-flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-justify-content: center;
 justify-content: center;
 -webkit-align-items: flex-end;
 align-items: flex-end;
}
body.technology section.invention .inner .sub-text ul li span:first-child {
 color: #fff;
 background: #e60012;
 text-align: center;
 padding: 9px 0;
 max-width: 82px;
 display: block;
 font-size: 20px;
 font-size: 2rem;
 font-weight: bold;
 height: 38px;
 position: relative;
}
@media only screen and (max-width: 767px) {
 body.technology section.invention .inner .sub-text ul li span:first-child {
  font-size: 16px;
  font-size: 1.6rem;
  height: 30px;
  padding: 6px 0;
 }
}
body.technology
 section.invention
 .inner
 .sub-text
 ul
 li
 span:first-child:before,
body.technology
 section.invention
 .inner
 .sub-text
 ul
 li
 span:first-child:after {
 content: "";
 display: block;
 width: 0;
 height: 0;
 border-style: solid;
 position: absolute;
 top: 0;
}
body.technology
 section.invention
 .inner
 .sub-text
 ul
 li
 span:first-child:before {
 right: -24px;
 border-width: 38px 24px 0 0;
 border-color: #e60012 transparent transparent transparent;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.invention
  .inner
  .sub-text
  ul
  li
  span:first-child:before {
  border-width: 30px 18px 0 0;
  right: -18px;
 }
}
body.technology
 section.invention
 .inner
 .sub-text
 ul
 li
 span:first-child:after {
 left: -24px;
 border-width: 0 0 38px 24px;
 border-color: transparent transparent #e60012 transparent;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.invention
  .inner
  .sub-text
  ul
  li
  span:first-child:after {
  border-width: 0 0 30px 18px;
  left: -18px;
 }
}
body.technology section.invention .inner .sub-text ul li span:last-child {
 font-size: 30px;
 font-size: 3rem;
 color: #e60012;
}
@media only screen and (max-width: 767px) {
 body.technology section.invention .inner .sub-text ul li span:last-child {
  font-size: 24px;
  font-size: 2.4rem;
 }
}
body.technology section.invention .inner .sub-text ul li p {
 font-size: 60px;
 font-size: 6rem;
 font-style: italic;
 color: #e60012;
 font-family: "Open Sans", sans-serif;
 padding: 0 4px 0 30px;
}
@media only screen and (max-width: 767px) {
 body.technology section.invention .inner .sub-text ul li p {
  font-size: 48px;
  font-size: 4.8rem;
 }
}
body.technology section.invention .inner .cap {
 text-align: right;
 padding: 50px 0 20px 0;
}
body.technology section.invention .inner .cap p {
 font-size: 14px;
 font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
 body.technology section.invention .inner .table-head {
  text-align: center;
  padding: 20px 0;
  border-top: 1px solid #e1e1e1;
  border-left: 1px solid #e1e1e1;
  border-right: 1px solid #e1e1e1;
 }
 body.technology section.invention .inner .table-head > span {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
 }
 body.technology section.invention .inner .table-head > p {
  font-size: 60px;
  font-size: 6rem;
  font-family: "Open Sans", sans-serif;
  font-style: italic;
  color: #e60012;
  padding: 10px 0 0;
 }
 body.technology section.invention .inner .table-head > p > span {
  font-size: 30px;
  font-size: 3rem;
  font-style: normal;
 }
}
@media only screen and (max-width: 767px) {
 body.technology section.invention .inner .sp-table {
  border-bottom: 1px solid #e1e1e1;
  border-right: 1px solid #e1e1e1;
  border-left: 1px solid #e1e1e1;
 }
 body.technology section.invention .inner .sp-table span {
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
  display: block;
 }
 body.technology section.invention .inner .sp-table span:first-child {
  font-weight: bold;
  padding: 30px 0;
  border-bottom: 1px solid #e1e1e1;
 }
 body.technology section.invention .inner .sp-table span:last-child {
  text-align: justify;
  line-height: 1.875;
  font-size: 16px;
  font-size: 1.6rem;
  padding: 16px 16px;
 }
}
body.technology section.invention .inner table {
 border: 1px solid #e1e1e1;
}
body.technology section.invention .inner table.table01 {
 width: 100%;
}
body.technology section.invention .inner table.table01 tbody tr td {
 text-align: center;
 padding: 14px 10px;
 border-right: 1px solid #e1e1e1;
 border-bottom: 1px solid #e1e1e1;
}
body.technology
 section.invention
 .inner
 table.table01
 tbody
 tr
 td
 _:lang(x)::-ms-backdrop,
body.technology section.invention .inner table.table01 tbody tr td {
 padding: 17px 10px 11px;
}
body.technology section.invention .inner table.table01 tbody tr td.grey {
 background: #4d4d4d;
 color: #fff;
}
body.technology section.invention .inner table.table01 tbody tr td.white-grey {
 background: #f0f0f0;
}
@media only screen and (max-width: 767px) {
 body.technology section.invention .inner table.table01 tbody tr td.sp-width {
  width: 42%;
 }
}
body.technology section.invention .inner table.table01 tbody tr:first-child td {
 width: 17%;
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 0.875;
}
@media only screen and (max-width: 767px) {
 body.technology
  section.invention
  .inner
  table.table01
  tbody
  tr:first-child
  td {
  width: 21%;
 }
}
body.technology
 section.invention
 .inner
 table.table01
 tbody
 tr:first-child
 td:first-child {
 width: 32%;
 text-align: center;
}
body.technology
 section.invention
 .inner
 table.table01
 tbody
 tr:first-child
 td:first-child
 > span {
 font-size: 16px;
 font-size: 1.6rem;
 font-weight: bold;
}
body.technology
 section.invention
 .inner
 table.table01
 tbody
 tr:first-child
 td:first-child
 > p {
 font-size: 60px;
 font-size: 6rem;
 font-family: "Open Sans", sans-serif;
 font-style: italic;
 color: #e60012;
 padding: 10px 0 0;
}
body.technology
 section.invention
 .inner
 table.table01
 tbody
 tr:first-child
 td:first-child
 > p
 > span {
 font-size: 30px;
 font-size: 3rem;
 font-style: normal;
}
body.technology section.invention .inner table.table01 tbody tr:last-child td {
 text-align: center;
 width: 17%;
 font-size: 16px;
 font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
 body.technology section.invention .inner table.table01 tbody tr:last-child td {
  width: 19%;
 }
}
body.technology
 section.invention
 .inner
 table.table01
 tbody
 tr:last-child
 td:first-child {
 font-weight: bold;
}
body.technology
 section.invention
 .inner
 table.table01
 tbody
 tr:last-child
 td:last-child {
 text-align: justify;
 line-height: 1.875;
 font-size: 16px;
 font-size: 1.6rem;
 padding-left: 20px;
 padding-right: 20px;
}
@media only screen and (max-width: 767px) {
 body.technology section.invention .inner table.table02 {
  width: 1000px;
 }
}
body.technology section.invention .inner table.table02 thead tr th {
 text-align: center;
 padding: 8px 10px;
 font-size: 16px;
 font-size: 1.6rem;
 color: #fff;
 line-height: 1.875;
 background: #4d4d4d;
 border-right: 1px solid #e1e1e1;
}
body.technology
 section.invention
 .inner
 table.table02
 thead
 tr
 th
 _:lang(x)::-ms-backdrop,
body.technology section.invention .inner table.table02 thead tr th {
 padding: 11px 10px 5px;
}
body.technology section.invention .inner table.table02 thead tr th:first-child {
 width: 16%;
}
body.technology
 section.invention
 .inner
 table.table02
 thead
 tr
 th:nth-child(2) {
 width: 35%;
}
body.technology section.invention .inner table.table02 thead tr th:last-child {
 width: 14%;
}
body.technology section.invention .inner table.table02 tbody tr {
 border-bottom: 1px solid #e1e1e1;
}
body.technology section.invention .inner table.table02 tbody tr td {
 padding: 8px 10px;
 font-size: 16px;
 font-size: 1.6rem;
 line-height: 1.875;
 border-right: 1px solid #e1e1e1;
 vertical-align: top;
}
body.technology
 section.invention
 .inner
 table.table02
 tbody
 tr
 td
 _:lang(x)::-ms-backdrop,
body.technology section.invention .inner table.table02 tbody tr td {
 padding: 11px 10px 5px;
}
body.technology section.invention .inner table.table02 tbody tr td span {
 color: #e60012;
}
body.technology section.invention .inner table.table02 tbody tr td:first-child {
 width: 16%;
 text-align: center;
 background: #f0f0f0;
}
body.technology
 section.invention
 .inner
 table.table02
 tbody
 tr
 td:nth-child(2) {
 width: 35%;
}
body.technology section.invention .inner table.table02 tbody tr td:last-child {
 width: 14%;
 background: #f0f0f0;
}
body.technology section.invention .inner .table-title p {
 color: #e60012;
 text-align: center;
 font-weight: bold;
 font-size: 24px;
 font-size: 2.4rem;
 padding: 60px 0 20px 0;
}
@media only screen and (max-width: 767px) {
 body.technology section.invention .inner .table-title p {
  padding: 30px 0 10px 0;
  text-align: left;
 }
}

.en-page body.news.archive article .content h2 {
 word-break: normal;
 word-wrap: break-word !important;
}

/*-----------------------------------------------------------
FOOTER
------------------------------------------------------------*/
.en-page .footer .mid .fnav02 {
 max-width: 250px;
}

@media only screen and (min-width: 768px) {
 .en-page s .header .gnav ul li.mm .mm--container .inner {
  padding: 60px 20px 0;
 }
 .en-page s .header .gnav ul li.mm .mm--container .inner .mm--submenu li {
  margin-bottom: 60px;
 }
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(2),
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(7) {
  width: 30%;
 }
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(1),
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(6) {
  width: 23%;
 }
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(3),
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(8) {
  width: 27%;
 }
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(4),
 .en-page s .header .gnav ul li.mm--company .mm--submenu li:nth-child(9) {
  width: 20%;
 }
 .en-page s .header .gnav ul li a:not(.ex) span.en {
  font-weight: 600;
 }
 .en-page s .header .gnav > ul > li > a {
  padding: 4px 17px;
 }
}
@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1024px) {
 .en-page s .header .gnav > ul > li > a {
  padding: 4px 12px;
 }
 .en-page s .header .gnav > ul > li > a:not(.ex) span.en {
  font-size: 14px;
  font-size: 1.4rem;
 }
}

@media only screen and (min-width: 768px) {
 .en-page s .header .gnav > ul > li > a _:lang(x)::-ms-backdrop,
 .en-page s .header .gnav > ul > li > a {
  padding-top: 12px;
 }
 .en-page s .header .gnav ul li:last-child {
  height: 100%;
 }
 .en-page s .header .gnav ul li:last-child a {
  padding: 4px 10px 0;
 }
 .en-page s .header .gnav ul li:last-child a _:lang(x)::-ms-backdrop,
 .en-page s .header .gnav ul li:last-child a {
  padding-top: 10px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page .header .gnav {
  -webkit-overflow-scrolling: touch;
  -moz-overflow-scrolling: touch;
  -ms-overflow-scrolling: touch;
  -o-overflow-scrolling: touch;
  overflow-scrolling: touch;
  -ms-overflow-style: none;
  -ms-scrollbar-width: none;
  overflow: auto;
  scrollbar-width: none;
 }
 .en-page .header .gnav::-webkit-scrollbar {
  display: none;
 }
 .en-page .gnav ul {
  display: block;
 }
 .en-page .gnav ul li:last-child {
  height: auto;
 }
 .en-page .header .gnav ul li.mm .mm--container .inner .mm--submenu li a {
  font-size: 13px;
  font-size: 1.3rem;
 }
 .en-page .header .gnav ul li.mm .mm--container .inner .mm--submenu li a span {
  letter-spacing: -0.04em;
 }
 .en-page
  .header
  .gnav
  ul
  li.mm
  .mm--container
  .inner
  .mm--submenu
  li
  a
  span
  br {
  display: none;
 }
 .en-page .header .gnav ul li.mm--product .mm--submenu {
  padding-left: 15px;
 }
 .en-page .header .gnav ul li.mm--product .mm--submenu li a {
  padding-left: 0;
 }
}

@media only screen and (max-width: 370px) {
 .en-page .gnav ul {
  padding: 0 15px;
 }
 .en-page .gnav ul li a:not(.ex) span.en {
  font-size: 1.6rem;
 }
 .en-page .gnav ul li a:not(.ex):after {
  right: 3px;
 }
 .en-page .gnav ul li a:not(.ex):before {
  right: 3px;
 }
 .en-page .gnav ul li.mm .mm--container .inner .mm--submenu {
  padding-left: 15px;
 }
 .en-page .gnav ul li.mm .mm--container .inner .mm--submenu li a span {
  font-size: 1.2rem;
 }
 .en-page .gnav ul li.mm .mm--container .inner .mm--submenu li a:after {
  right: 3px;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 .en-page body .sub-header .inner {
  max-width: 1140px;
 }
}

@media only screen and (min-width: 1001px) {
 .en-page body .sub-header nav ul {
  padding: 0 10px !important;
  justify-content: space-between;
  align-items: center;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1000px) {
 .en-page body .sub-header nav ul {
  justify-content: space-between;
  align-items: center;
  padding: 0 !important;
  margin: 0 -10px;
  width: calc(100% + 20px);
 }
 .en-page body .sub-header nav ul li:last-child a {
  padding-left: 4px;
 }
}
@media only screen and (min-width: 768px) and (max-width: 1000px) {
 .en-page body .sub-header nav ul li a {
  font-size: 8px;
  padding: 0 3px;
 }
}

@media only screen and (max-width: 370px) {
 .en-page .breadcrumb .inner span,
 .en-page .breadcrumb .inner a {
  padding-right: 12px;
  font-size: 1.1rem;
 }
 .en-page .breadcrumb .inner span:after,
 .en-page .breadcrumb .inner a:after {
  right: -12.5px;
  background-size: 5px auto;
  background-position: top 3px right;
 }
}

/*-----------------------------------------------------------
Top
------------------------------------------------------------*/
@media only screen and (min-width: 1025px) {
 body.index.top-en .mv--intro .text {
  left: calc((100vw - (1040px) + 30px) / 2);
 }
 body.index.top-en .mv--intro .text h2 {
  line-height: 1.1666;
  font-size: 6.6rem;
  padding-bottom: 15px;
  margin-bottom: 14px;
 }
 body.index.top-en .mv--intro .text p {
  font-size: 1.7rem;
  padding-left: 9px;
  letter-spacing: 0.02em;
  font-weight: 300;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en .title--topsec .en {
  font-size: 4.5rem;
 }
 body.index.top-en .title--topsec .ja {
  font-size: 2.5rem;
 }
}

@media only screen and (min-width: 1025px) {
 body.index.top-en .mv {
  margin-bottom: 33px;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en .mv {
  margin-bottom: 50px;
 }
}

@media only screen and (min-width: 1025px) {
 body.index.top-en .mv--lower .text {
  padding-top: 128px;
  max-width: 518px;
  width: 100%;
  padding-right: 15px;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en .mv--lower .text {
  padding-top: 110px;
 }
}

@media only screen and (min-width: 1025px) {
 body.index.top-en .mv--lower .text > h3 {
  font-size: 31px;
  line-height: 1.29;
  font-weight: 300;
  margin-bottom: 17px;
  letter-spacing: -0.02em;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en .mv--lower .text > h3 {
  font-size: 1.9rem;
  line-height: 1.29;
  font-weight: 300;
  margin-bottom: 12px;
  letter-spacing: -0.02em;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en .mv--lower .text > h3 {
  font-size: 20px;
  line-height: 30px;
  letter-spacing: -0.04em;
  margin-bottom: 4px;
 }
}

@media only screen and (max-width: 370px) {
 body.index.top-en .mv--lower .text > h3 {
  font-size: 18px;
  line-height: 28px;
 }
}

@media only screen and (min-width: 1025px) {
 body.index.top-en .mv--lower .text p {
  letter-spacing: -0.04em;
 }
}

@media only screen and (min-width: 768px) {
 body.index.top-en section.products {
  margin-bottom: 70px;
 }
}

body.index.top-en section.products .title--container {
 max-width: 320px;
 width: 100%;
 bottom: 122px;
}
@media only screen and (min-width: 1280px) {
 body.index.top-en section.products .title--container {
  max-width: 440px;
 }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en section.products .title--container {
  max-width: 300px;
 }
}
@media only screen and (max-width: 767px) {
 body.index.top-en section.products .title--container {
  position: static;
  max-width: 100%;
 }
}
body.index.top-en section.products .title--container .txt {
 max-width: 310px;
 width: 100%;
 padding-left: 5px;
 margin-top: 0px;
}
@media only screen and (max-width: 767px) {
 body.index.top-en section.products .title--container .txt {
  max-width: 100%;
  padding-left: 20px;
  margin-top: 13px;
 }
}
@media only screen and (min-width: 768px) and (max-width: 1280px) {
 body.index.top-en section.products .title--container .txt {
  padding-right: 15px;
 }
}

@media only screen and (min-width: 768px) {
 body.index.top-en section.products nav ul li a {
  height: 107px;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.products nav ul li a .text {
  padding-right: 42px;
  text-align: left;
 }
}

@media only screen and (max-width: 370px) {
 body.index.top-en section.products nav ul li a .text {
  padding-right: 28px;
 }
 body.index.top-en section.products nav ul li a .text:after {
  border-width: 4px 0 4px 10px;
  right: 10px;
 }
}

body.index.top-en section.products nav ul li a .text .en {
 font-size: 1.8rem;
 line-height: 1.75;
 font-weight: bold;
 position: relative;
 text-indent: -12px;
 letter-spacing: -0.04em;
 padding-right: 18px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en section.products nav ul li a .text .en {
  font-size: 1.6rem;
 }
}
@media only screen and (max-width: 767px) {
 body.index.top-en section.products nav ul li a .text .en {
  text-indent: 0;
  padding-right: 0;
  font-weight: 500;
  letter-spacing: -0.01em;
 }
}
@media only screen and (max-width: 370px) {
 body.index.top-en section.products nav ul li a .text .en {
  font-size: 1.4rem;
 }
}
body.index.top-en section.products nav ul li a .text .en:before {
 content: "";
 width: 0;
 height: 0;
 position: absolute;
 right: 0;
 top: calc(50% - 4px);
 border-top: 4px solid transparent;
 border-left: 10px solid #e60012;
 border-bottom: 4px solid transparent;
}
@media only screen and (max-width: 767px) {
 body.index.top-en section.products nav ul li a .text .en:before {
  content: none;
 }
}

@media only screen and (min-width: 768px) {
 body.index.top-en section.newmodels .product.mightymild .content {
  bottom: 11%;
  right: 65px;
  width: 350px;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en section.newmodels .product.mightymild .content {
  right: 20px;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .product.mightymild .content {
  bottom: 16px;
  width: 180px;
 }
 body.index.top-en section.newmodels .product.mightymild .content .text,
 body.index.top-en section.newmodels .product.mightymild .content .boldtext {
  text-align: right;
  font-size: 12px;
  line-height: 18px;
 }
 body.index.top-en section.newmodels .product.mightymild .content .boldtext {
  margin-bottom: 10px;
 }
 body.index.top-en section.newmodels .product.mightymild .content .text {
  margin-bottom: 5px;
 }
 body.index.top-en section.newmodels .product.mightymild .content .button {
  padding-left: 13px;
  line-height: 15px;
  position: relative;
 }
 body.index.top-en
  section.newmodels
  .product.mightymild
  .content
  .button:after {
  left: calc(50% - 58px);
  top: calc(50% - 7px);
 }
 body.index.top-en section.newmodels .product.mightymild .content .image-logo {
  margin-bottom: 11px;
 }
}

@media only screen and (max-width: 370px) {
 body.index.top-en section.newmodels .product.mightymild .content .text,
 body.index.top-en section.newmodels .product.mightymild .content .boldtext {
  font-size: 10px;
  line-height: 15px;
 }
 body.index.top-en section.newmodels .product.mightymild .content .boldtext {
  margin-bottom: 5px;
 }
}

body.index.top-en section.newmodels .product.mightymild .content .image-logo {
 max-width: 277px;
}
@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .product.mightymild .content .image-logo {
  max-width: 172px;
 }
}
@media only screen and (max-width: 370px) {
 body.index.top-en section.newmodels .product.mightymild .content .image-logo {
  max-width: 130px;
  margin-bottom: 5px;
 }
}

@media only screen and (min-width: 768px) {
 body.index.top-en section.newmodels .product.coaterow .content {
  width: 400px;
  bottom: 37px;
  left: 145px;
 }
 body.index.top-en section.newmodels .product.coaterow .content .boldtext {
  margin-bottom: 12px;
 }
 body.index.top-en section.newmodels .product.coaterow .content .tetx {
  margin-bottom: 8px;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .product.coaterow .content .boldtext {
  line-height: 1.8rem;
  margin-bottom: 8px;
 }
 body.index.top-en section.newmodels .product.coaterow .content .text {
  display: block;
  margin-bottom: 6px;
 }
 body.index.top-en section.newmodels .product.coaterow .content .button {
  padding-left: 13px;
  line-height: 15px;
  position: relative;
 }
 body.index.top-en section.newmodels .product.coaterow .content .button:after {
  left: calc(50% - 58px);
  top: calc(50% - 7px);
 }
}

@media only screen and (max-width: 370px) {
 body.index.top-en section.newmodels .product.coaterow .content .boldtext,
 body.index.top-en section.newmodels .product.coaterow .content .text {
  margin-bottom: 0;
  font-size: 11px;
  font-size: 1.1rem;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en section.newmodels .product.coaterow .content {
  left: 20px;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .product.coaterow .content {
  width: 300px;
 }
}

body.index.top-en section.newmodels .product.coaterow .content .image-logo {
 max-width: 277px;
 margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .product.coaterow .content .image-logo {
  max-width: 148px;
  margin-bottom: 10px;
 }
}

@media only screen and (min-width: 768px) {
 body.index.top-en section.newmodels .item {
  padding-right: 133px;
 }
}

@media only screen and (max-width: 1000px) {
 body.index.top-en section.newmodels .item {
  padding-right: 20px;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .item:last-child .content .btn {
  width: 100%;
  max-width: 110px;
 }
}

@media only screen and (min-width: 768px) {
 body.index.top-en section.newmodels .item .content {
  width: 390px;
 }
 body.index.top-en section.newmodels .item .content .btn {
  margin-bottom: 5px;
  margin-top: 30px;
  padding: 10px 40px;
 }
 body.index.top-en
  section.newmodels
  .item
  .content
  .btn
  _:lang(x)::-ms-backdrop,
 body.index.top-en section.newmodels .item .content .btn {
  padding: 13px 40px 7px;
 }
 body.index.top-en section.newmodels .item .content .en {
  font-size: 2.9rem;
  margin-bottom: 22px;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .item .content {
  width: 240px !important;
 }
 body.index.top-en section.newmodels .item .content .en {
  font-size: 2rem;
  line-height: 25px;
  margin-bottom: 0;
 }
 body.index.top-en section.newmodels .item .content .en em {
  display: block;
  font-style: normal;
 }
 body.index.top-en section.newmodels .item .content p {
  line-height: 22px;
  padding-top: 6px;
 }
}
@media only screen and (max-width: 767px) and (max-width: 370px) {
 body.index.top-en section.newmodels .item .content p br {
  display: none;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .item .content .btn {
  margin-top: 12px;
  max-width: 205px;
  justify-content: center;
  padding: 7px 20px 7px 10px;
  position: relative;
 }
 body.index.top-en section.newmodels .item .content .btn:after {
  right: 8px;
  top: calc(50% - 4px);
  position: absolute;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 body.index.top-en section.accreditation .accred {
  padding: 0 10px;
 }
}

@media only screen and (min-width: 768px) {
 body.index.top-en section.accreditation .accred__item {
  max-width: 186px;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1000px) {
 body.index.top-en section.accreditation .accred__item {
  width: 25%;
  padding: 0 10px;
 }
 body.index.top-en section.accreditation .accred__item--text {
  font-size: 1.1rem;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.accreditation .accred__item--text {
  letter-spacing: -0.04em;
 }
}

@media only screen and (max-width: 370px) {
 body.index.top-en section.accreditation .accred__item br {
  display: none;
 }
}

@media only screen and (max-width: 767px) {
 body.index.top-en section.newmodels .item .content {
  width: 250px;
 }
}

body.index.top-en
 section.news
 .content
 .article__content
 _:lang(x)::-ms-backdrop,
body.index.top-en section.news .content .article__content {
 padding-top: 5px;
}

body.index.top-en section.news .title .more-link {
 display: inline-block;
}
@media only screen and (min-width: 768px) {
 body.index.top-en section.news .title .more-link {
  padding: 0px 20px 0 10px;
 }
 body.index.top-en section.news .title .more-link:before {
  left: calc(100% - 15px);
 }
}
@media only screen and (max-width: 767px) {
 body.index.top-en section.news .title .more-link:before {
  left: calc(100% - 10px);
  top: calc(50% + 1px);
 }
}

@media only screen and (min-width: 768px) {
 .en-page body.company-main #contents .inner ul a .cont .en {
  margin-bottom: 0;
  margin-top: 6px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.company-main #contents .inner ul a .cont .en {
  height: 16px;
  margin-bottom: 0;
  margin-top: 4px;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.company-main #contents .inner ul a .cont .en {
  height: 12px;
  margin-bottom: 5px;
 }
 .en-page body.company-main #contents .inner ul a .linkmv {
  margin-right: 7px;
 }
}

/*-----------------------------------------------------------
COMPANY MESSAGE
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.message section.message .inner .name img {
  min-width: 378px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.message .message .inner > h3 img {
  max-width: 192.5px;
  width: 100%;
  height: auto;
 }
 .en-page body.message .message .inner .name img {
  width: 100%;
  max-width: 316px;
  margin-left: 0;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.message .message .inner > h2 {
  max-width: 100%;
 }
}

.en-page body.message .message .inner > h3 {
 font-size: 21px;
}
@media only screen and (max-width: 767px) {
 .en-page body.message .message .inner > h3 {
  font-size: 15px;
  line-height: 1.6;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.message .message .inner > p {
  font-size: 14px;
  line-height: 1.8;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.message .message .inner .name {
  font-size: 12px;
  letter-spacing: 0;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.message .message .inner .name {
  padding-left: 15px;
 }
 .en-page body.message .message .inner .name img {
  margin: 0;
 }
}

/*-----------------------------------------------------------
COMPANY PHILOSOPHY
------------------------------------------------------------*/
.en-page
 body.philosophy
 section.philosophy
 .inner
 .philosophy-detail01
 .satisfaction
 ul
 li
 .text,
.en-page
 body.philosophy
 section.philosophy
 .inner
 .philosophy-detail03
 .foundation
 ul
 li
 .text,
.en-page
 body.philosophy
 section.philosophy
 .inner
 .philosophy-detail03
 .csr
 .text {
 text-align: justify;
}

.en-page
 body.philosophy
 section.philosophy
 .philosophy-detail01
 .catch-sub
 img {
 width: 100%;
 height: auto;
}

.en-page body.philosophy section.philosophy .philosophy-detail01 .catch img {
 width: 100%;
 height: auto;
}

@media only screen and (min-width: 768px) {
 .en-page
  body.philosophy
  section.philosophy
  .philosophy-detail01
  .catch-sub
  img {
  max-width: 564px;
 }
 .en-page body.philosophy section.philosophy .philosophy-detail01 .catch img {
  max-width: 585px;
 }
 .en-page body.philosophy section.philosophy .philosophy-detail02 .invention {
  max-width: 660px;
 }
 .en-page
  body.philosophy
  section.philosophy
  .philosophy-detail02
  .invention
  .invention-inner {
  max-width: 617px;
  padding: 40px 10px;
 }
}

@media only screen and (min-width: 768px) and (max-width: 900px) {
 .en-page
  body.philosophy
  section.philosophy
  .inner
  .philosophy-detail01
  .satisfaction
  ul
  li
  .title {
  font-size: 18px;
  font-size: 1.8rem;
 }
}

@media only screen and (max-width: 767px) {
 .en-page
  body.philosophy
  section.philosophy
  .philosophy-detail01
  .catch-sub
  img {
  max-width: 323.5px;
 }
 .en-page body.philosophy section.philosophy .philosophy-detail01 .catch img {
  max-width: 327.5px;
 }
 .en-page body.philosophy section.philosophy .philosophy-detail02 {
  padding: 37px 20px;
  height: auto;
 }
 .en-page
  body.philosophy
  section.philosophy
  .philosophy-detail02
  .invention
  .invention-inner {
  padding: 19px 10px;
  text-align: center;
 }
 .en-page
  body.philosophy
  section.philosophy
  .philosophy-detail02
  .invention
  .invention-inner
  img {
  height: auto;
  max-width: 309.5px;
  display: inline-block;
 }
 .en-page
  body.philosophy
  section.philosophy
  .philosophy-detail03
  .foundation
  ul
  li
  .title {
  font-size: 15px;
  font-size: 1.5rem;
 }
 .en-page body.philosophy section.philosophy .philosophy-detail03 .csr .title {
  font-size: 17px;
  font-size: 1.7rem;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.philosophy .philosophy-detail03 .csr .title,
 .en-page body.philosophy .philosophy-detail03 .foundation ul li .title {
  font-size: 14px;
  font-size: 1.4rem;
 }
}

/*-----------------------------------------------------------
COMPANY PROFILE
------------------------------------------------------------*/
@media only screen and (max-width: 370px) {
 .en-page body.profile .table__row--content {
  font-size: 1.5rem;
 }
}

.en-page body.profile .table__row--content .data-list li span {
 flex: none;
}
.en-page body.profile .table__row--content .data-list li span:nth-child(1) {
 width: 35%;
}
@media only screen and (max-width: 767px) {
 .en-page body.profile .table__row--content .data-list li span:nth-child(1) {
  width: 50%;
 }
}
@media only screen and (max-width: 370px) {
 .en-page body.profile .table__row--content .data-list li span:nth-child(1) {
  width: 53%;
 }
}
.en-page body.profile .table__row--content .data-list li span:nth-child(2) {
 width: 65%;
}
@media only screen and (max-width: 767px) {
 .en-page body.profile .table__row--content .data-list li span:nth-child(2) {
  width: 50%;
 }
}
@media only screen and (max-width: 370px) {
 .en-page body.profile .table__row--content .data-list li span:nth-child(2) {
  width: 47%;
 }
}

.en-page body.profile .table__row--content .data-list-2col li {
 width: 100%;
}
@media only screen and (max-width: 767px) {
 .en-page body.profile .table__row--content .data-list-2col li {
  display: block;
  line-height: 1.4;
 }
 .en-page
  body.profile
  .table__row--content
  .data-list-2col
  li:not(:last-child) {
  margin-bottom: 12px;
 }
}
@media only screen and (max-width: 767px) {
 .en-page body.profile .table__row--content .data-list-2col li span {
  display: block;
 }
}
.en-page
 body.profile
 .table__row--content
 .data-list-2col
 li
 span:nth-child(1) {
 width: 60%;
}
@media only screen and (max-width: 767px) {
 .en-page
  body.profile
  .table__row--content
  .data-list-2col
  li
  span:nth-child(1) {
  width: 100%;
 }
}
.en-page
 body.profile
 .table__row--content
 .data-list-2col
 li
 span:nth-child(2) {
 width: 40%;
}
@media only screen and (max-width: 767px) {
 .en-page
  body.profile
  .table__row--content
  .data-list-2col
  li
  span:nth-child(2) {
  width: 100%;
 }
}

/*-----------------------------------------------------------
COMPANY BUSINESS
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.business #right-contents .mainlist li .cont .box .left {
  width: calc(100% - 240px);
  padding-right: 20px;
 }
}

.en-page body.business #right-contents .mainlist li .cont .box .right {
 margin-left: 0;
}

.en-page body.business #right-contents .mainlist li .cont .moreinfo span:after {
 margin-bottom: -2px;
}

/*-----------------------------------------------------------
COMPANY HISTORY
------------------------------------------------------------*/
.en-page body.company.history .footnote {
 text-align: left;
}

/*-----------------------------------------------------------
COMPANY POLICYニュース
------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
 .en-page body.company.policy .inner h2 {
  line-height: 1.4;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.company.policy .inner h2 {
  font-size: 17px;
  font-size: 1.7rem;
  padding-left: 10px;
  padding-right: 10px;
 }
}

.en-page body.company.policy .inner h3 {
 font-size: 22px;
 font-size: 2.2rem;
 line-height: 1.5;
 text-align: center;
}

@media only screen and (max-width: 370px) {
 .en-page body.company.policy .inner .text {
  font-size: 1.4rem;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.company.policy .inner ol li,
 .en-page body.company.policy .inner .quality {
  font-size: 1.4rem;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.company.policy .breadcrumb .inner span,
 .en-page body.company.policy .breadcrumb .inner a {
  padding-right: 20px;
 }
 .en-page body.company.policy .breadcrumb .inner span:after,
 .en-page body.company.policy .breadcrumb .inner a:after {
  right: -10px;
 }
 .en-page body.company.policy .breadcrumb .inner span:last-child,
 .en-page body.company.policy .breadcrumb .inner a:last-child {
  padding-right: 0;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.company.policy .breadcrumb .inner span,
 .en-page body.company.policy .breadcrumb .inner a {
  padding-right: 10px;
 }
 .en-page body.company.policy .breadcrumb .inner span:after,
 .en-page body.company.policy .breadcrumb .inner a:after {
  right: -13px;
  top: 0;
 }
}

/*-----------------------------------------------------------
OUR EFFORTS
------------------------------------------------------------*/
@media only screen and (max-width: 370px) {
 .en-page body.our-efforts section.our-efforts .inner h2 {
  padding: 12px 10px;
 }
}

body.our-efforts section.our-efforts .inner ul li p {
 text-align: justify;
}

/*-----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
#contents .inner .sublist li:nth-child(2) .left h5 {
 letter-spacing: -0.02em;
}

@media only screen and (min-width: 768px) {
 .en-page body.office-list #contents .inner .sublist li .left {
  width: 200px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.office-list #contents .inner #support ul li {
  line-height: 1.4;
 }
}

@media only screen and (min-width: 768px) {
 .en-page body.catalog .catalogs__title {
  line-height: 1.4;
  padding: 9px 10px;
  height: auto;
 }
 .en-page body.catalog .catalogs__title _:lang(x)::-ms-backdrop,
 .en-page body.catalog .catalogs__title {
  padding: 13px 10px 6px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.catalog .catalogs__title {
  line-height: 1.4;
  padding: 6.5px 10px;
  height: auto;
 }
}

.en-page
 body.technology
 section.technology-share
 .inner
 .share.share-twocolumn
 .column.column01
 .share-detail
 .text {
 text-align: justify;
}

/*-----------------------------------------------------------
TECHNOLOGY
------------------------------------------------------------*/
.en-page
 body.technology
 section.invention
 .inner
 .sub-text
 ul
 li
 span:first-child {
 max-width: 120px;
}

@media only screen and (min-width: 768px) {
 .en-page body.technology section.technology-share .inner .share01 .share-title,
 .en-page body.technology section.technology-share .inner .share02 .share-title,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share03
  .share-title {
  max-width: 500px;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:nth-child(2) {
  font-style: normal;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  .logo {
  top: 30px;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share01
  .share-box
  .left
  .title,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column01
  .share-detail
  .title {
  line-height: 1.4;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share02
  .share-box
  .left {
  width: 39.65%;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology {
  width: 64%;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  .logo {
  right: 0;
  top: 28%;
 }
 .en-page
  body.technology
  section.invention
  .inner
  table.table01
  tbody
  tr:first-child
  td {
  line-height: 1.4;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:first-child {
  padding-top: 3px;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share03
  .images {
  padding: 0 32.5px;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column01
  .share-detail
  img {
  width: 43.8%;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column02
  .share-detail
  img {
  width: 263px;
  margin-bottom: 6px;
 }
 .en-page body.technology .share-heading {
  font-size: 0;
  letter-spacing: 0;
 }
 .en-page body.technology .share-heading p,
 .en-page body.technology .share-heading span {
  display: inline-block;
  vertical-align: bottom;
 }
 .en-page body.technology .share-heading p {
  line-height: 1.4;
  width: calc(100% - 80px);
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1.4;
 }
 .en-page body.technology .share-heading p _:lang(x)::-ms-backdrop,
 .en-page body.technology .share-heading p {
  margin-bottom: -6px;
 }
 .en-page body.technology .share-heading span {
  width: 80px;
 }
 .en-page
  body.technology
  section.invention
  .inner
  .main-text
  h3
  span:last-child {
  font-size: 5rem;
 }
 .en-page
  body.technology
  section.invention
  .inner
  .main-text
  h3
  span:last-child {
  line-height: 1.4;
 }
}

@media only screen and (max-width: 767px) {
 .en-page
  body.technology
  section.invention
  .inner
  table.table01
  tbody
  tr:first-child
  td {
  line-height: 1.4;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share-twocolumn
  .column.column01
  .share-detail
  img {
  width: 200px;
 }
 .en-page body.technology .share-heading,
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__heading
  p {
  font-size: 1.8rem;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share.share01
  .share-box
  .left
  .title {
  line-height: 1.4;
 }
 .en-page body.technology section.technology-share .inner .catch-ja {
  padding-left: 20px;
  padding-right: 20px;
 }
 .en-page body.technology section.technology-share .inner .share01 .share-title,
 .en-page body.technology section.technology-share .inner .share02 .share-title,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share03
  .share-title {
  line-height: 1.4;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share01
  .share-title:before,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share02
  .share-title:before,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share03
  .share-title:before {
  content: none;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share01
  .share-title:after,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share02
  .share-title:after,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share03
  .share-title:after {
  position: absolute;
  content: "";
  top: 0;
  right: -64px;
  width: 0;
  height: 0;
  border-top: 80px solid #4d4d4d;
  border-right: 64px solid transparent;
 }
 .en-page body.technology section.certification .inner h3 {
  line-height: 1.4;
  min-height: 80px;
  display: flex;
  align-items: center;
 }
 .en-page body.technology section.certification .inner h3:before {
  width: 80px;
  height: 80px;
  right: -80px;
  border-width: 80px 60px 0 0;
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share
  .share-title
  :before {
  z-index: -1;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:first-child {
  width: 32%;
  font-size: 1.2rem;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:last-child,
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:nth-child(2) {
  width: 68%;
  font-size: 1.3rem;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  p {
  font-size: 1.7rem;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  .logo {
  top: 52%;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:last-child
  .column {
  display: inline-block;
  vertical-align: top;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:last-child
  .column:nth-child(2) {
  width: calc(100% - 115px);
 }
 .en-page
  body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:last-child
  .column:nth-child(3) {
  width: 115px;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:last-child
  .column
  span {
  line-height: 1.4;
 }
 .en-page body.technology .share-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-indent: 0;
  padding-left: 0;
 }
 .en-page body.technology .share-heading span {
  width: 45px;
 }
 .en-page body.technology .share-heading p {
  width: calc(100% - 45px);
  line-height: 1.4;
  padding-left: 5px;
 }
 .en-page body.technology section.invention .inner .main-text h3 {
  display: flex;
  font-size: 6rem;
  justify-content: center;
  align-items: center;
 }
 .en-page
  body.technology
  section.invention
  .inner
  .main-text
  h3
  span:last-child {
  text-align: left;
  font-size: 2rem;
  line-height: 1.4;
 }
 .en-page body.technology section.invention .inner .table-head > span {
  line-height: 1.4;
  padding: 0 20px;
 }
}

@media only screen and (max-width: 370px) {
 .en-page
  body.technology
  section.invention
  .inner
  table.table01
  tbody
  tr
  td.grey {
  padding: 14px 5px;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  .logo {
  top: 63%;
 }
 .en-page body.technology section.technology-share .inner .catch-ja {
  font-size: 1.4rem;
 }
 .en-page body.technology .share-heading,
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__heading
  p {
  font-size: 1.5rem;
 }
 .en-page body.technology section.technology-share .inner .share01 .share-title,
 .en-page body.technology section.technology-share .inner .share02 .share-title,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share03
  .share-title {
  margin-left: 0;
  font-size: 1.6rem;
  line-height: 20px;
  min-height: 64px;
  max-width: calc(100% - 74px);
 }
 .en-page
  body.technology
  section.technology-share
  .inner
  .share01
  .share-title:after,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share02
  .share-title:after,
 .en-page
  body.technology
  section.technology-share
  .inner
  .share03
  .share-title:after {
  border-top-width: 64px;
 }
 .en-page body.technology section.technology-share .inner .share .share-title {
  font-size: 1.6rem;
  min-height: 44px;
 }
 .en-page body.technology section.technology-share .inner .share03 {
  padding-left: 20px;
  padding-right: 20px;
 }
 .en-page body.technology section.technology-share .inner .share03 .images {
  max-width: calc(100% + 40px);
  width: calc(100% + 40px);
  margin: 0 -20px;
 }
 .en-page body.technology section.certification .inner h3 {
  line-height: 20px;
  font-size: 1.6rem;
  min-height: 64px;
  max-width: calc(100% - 74px);
 }
 .en-page body.technology section.certification .inner h3:before {
  width: 64px;
  height: 64px;
  right: -64px;
  border-width: 64px 60px 0 0;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:first-child {
  font-size: 1rem;
 }
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:last-child,
 .en-page
  body.technology
  section.certification
  .inner
  .performance
  .performance-inner
  .performance-row__item__chronology
  ul
  li
  span:nth-child(2) {
  font-size: 1.2rem;
 }
 .en-page body.technology section.invention .inner .main-text h3 {
  font-size: 5rem;
 }
 .en-page
  body.technology
  section.invention
  .inner
  .main-text
  h3
  span:last-child {
  font-size: 1.6rem;
 }
 .en-page body.technology section.invention .inner .sub-text ul li p {
  font-size: 4.2rem;
 }
 .en-page body.technology section.invention .inner .table-head > span {
  font-size: 1.4rem;
 }
 .en-page body.technology section.invention .inner .table-head > p {
  font-size: 5rem;
 }
 .en-page
  body.technology
  section.invention
  .inner
  table.table01
  tbody
  tr:first-child
  td {
  font-size: 1.4rem;
  line-height: 1.4;
 }
 .en-page body.technology section.invention .inner .table-title p {
  font-size: 2rem;
  line-height: 1.4;
 }
}

/*-----------------------------------------------------------
BARREL PRODUCT
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.barrel-guide section.barrel-guide .inner ul .barrel-guide__btn {
  padding-left: 5px;
  padding-right: 5px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel-guide .title__subpage--ja {
  font-size: 28px;
  font-size: 2.8rem;
 }
}

@media only screen and (min-width: 1025px) {
 .en-page
  body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn
  a
  figure
  .c-txt
  .ja {
  font-size: 21px;
  font-size: 2.1rem;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 .en-page
  body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn
  a
  figure
  .c-txt
  .ja {
  font-size: 17px;
  font-size: 1.7rem;
 }
}

@media only screen and (max-width: 370px) {
 .en-page
  body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn
  a
  figure
  .c-txt
  .ja {
  font-size: 13px;
  font-size: 1.3rem;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1000px) {
 .en-page
  body.barrel-guide
  section.barrel-guide
  .inner
  .barrel-guide__btn
  a
  .more {
  font-size: 14px;
  font-size: 1.4rem;
 }
 .en-page
  body.barrel-guide
  section.barrel-guide
  .inner
  .barrel-guide__btn
  a
  .more:before {
  background-size: 8px auto;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel-guide section.barrel-guide .inner ul .barrel-guide__btn {
  padding: 20px;
 }
 .en-page
  body.barrel-guide
  section.barrel-guide
  .inner
  ul
  .barrel-guide__btn
  a
  figure {
  display: flex;
  justify-content: space-between;
  align-items: center;
 }
}

.en-page body.barrel section.barrel .inner .barrel-detail .col .text-link {
 line-height: 1.4;
 padding-right: 20px;
}

@media only screen and (min-width: 768px) {
 .en-page body.barrel .banner__item .inner a {
  top: 60px;
 }
}

.en-page body.barrel .banner__item .inner a .en {
 line-height: 1.25;
}

.en-page body.barrel section.barrel .inner .barrel-detail .col .text-detail,
.en-page body.barrel section.barrel .inner .barrel-catch--text p {
 text-align: justify;
}

@media only screen and (min-width: 768px) {
 .en-page body.barrel section.barrel {
  padding-top: 8px;
 }
 .en-page body.barrel section.barrel .inner .barrel-mv {
  text-align: right;
 }
 .en-page body.barrel section.barrel .inner .barrel-mv--heading h2 {
  max-width: 438px;
  margin-top: 20%;
 }
 .en-page body.barrel section.barrel .inner .barrel-mv--image {
  margin: 0;
  display: inline-block;
 }
 .en-page body.barrel section.barrel .inner .barrel-catch {
  padding-top: 26px;
 }
 .en-page body.barrel section.barrel .inner .barrel-catch--image {
  max-width: 557px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel section.barrel .barrel-mv {
  padding-top: 30px;
 }
 .en-page body.barrel section.barrel .barrel-mv--heading h2 {
  max-width: 274px;
 }
 .en-page body.barrel section.barrel .barrel-catch--image {
  width: 81.5%;
 }
 .en-page body.barrel section.barrel .barrel-catch--text {
  padding-top: 20px;
 }
 .en-page body.barrel .banner__item .inner a .ja {
  font-size: 1.8rem;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.barrel section.barrel .barrel-catch--image {
  width: 100%;
 }
 .en-page body.barrel .banner__item .inner a .ja {
  font-size: 1.5rem;
  letter-spacing: -0.02em;
 }
}

@media only screen and (min-width: 768px) {
 .en-page .barrel-kind section.barrel-kind .inner .about.about01 .box .left {
  width: 37.6%;
 }
}

.en-page .barrel-kind section.barrel-kind .inner .about.about01 .box .right p,
.en-page .barrel-kind section.barrel-kind .inner .about.about02 > p,
.en-page
 .barrel-kind
 section.barrel-kind
 .inner
 .about.about02
 .box-wrap
 .box-item
 .text {
 text-align: justify;
}

/*-----------------------------------------------------------
barrel-expendables
------------------------------------------------------------*/
.en-page
 .barrel-expendables
 section.barrel-expendables
 .inner
 .barrel-expendables-detail
 .col
 .text-detail {
 text-align: left;
}

.en-page
 .barrel-expendables
 section.barrel-expendables
 .inner
 .barrel-expendables-detail
 .col
 .text-link {
 line-height: 1.4;
 padding-right: 20px;
}

@media only screen and (min-width: 768px) {
 .en-page .barrel-expendables .banner__item .inner a {
  top: 60px;
 }
}

.en-page .barrel-expendables .banner__item .inner a .en {
 line-height: 1.25;
}

@media only screen and (min-width: 768px) {
 .en-page .barrel-expendables .expendables-mv--text {
  top: 41%;
 }
 .en-page .barrel-expendables .expendables-mv--text h2 {
  max-width: 413px;
  background: transparent;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 .en-page .barrel-expendables .banner__item.banner__item--01 .inner a {
  padding: 0 20px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page .barrel-expendables .expendables-mv--text {
  text-align: center;
 }
 .en-page .barrel-expendables .expendables-mv--text h2 {
  padding: 20px 0;
  max-width: 302px;
 }
 .en-page .barrel-expendables .banner__item .inner a .ja {
  font-size: 2rem;
  letter-spacing: -0.02em;
 }
}

@media only screen and (max-width: 370px) {
 .en-page .barrel-expendables .banner__item .inner a .ja {
  font-size: 1.6rem;
 }
}

.en-page body.barrel-glossary .title__subpage-barrel--label {
 max-width: 260px;
}

.en-page body.barrel-glossary .link-wrapper .backlink {
 min-width: 240px;
}

.en-page
 body.barrel-glossary
 section.barrel-glossary
 .inner
 .glossary
 table
 tbody
 tr
 td:first-child {
 white-space: normal;
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel-glossary section.barrel-glossary .btn {
  width: 245px;
 }
 .en-page
  body.barrel-glossary
  section.barrel-glossary
  .inner
  .glossary
  table
  td:last-child {
  white-space: normal;
 }
}

/*-----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
body.product.square-thumbs
 section.product-info.modify
 .table--info
 tbody
 tr:nth-child(2n + 2)
 td {
 padding: 43px 5px;
}

body.product.square-thumbs
 section.product-info.modify
 .list__product-info
 li
 .top {
 display: flex;
 justify-content: space-between;
}
@media only screen and (max-width: 767px) {
 body.product.square-thumbs
  section.product-info.modify
  .list__product-info
  li
  .top {
  display: block;
 }
}
body.product.square-thumbs
 section.product-info.modify
 .list__product-info
 li
 .top
 .img {
 width: 42.85%;
}
@media only screen and (max-width: 767px) {
 body.product.square-thumbs
  section.product-info.modify
  .list__product-info
  li
  .top
  .img {
  width: 100%;
 }
}
body.product.square-thumbs
 section.product-info.modify
 .list__product-info
 li
 .top
 .head {
 width: 53.15%;
}
@media only screen and (max-width: 767px) {
 body.product.square-thumbs
  section.product-info.modify
  .list__product-info
  li
  .top
  .head {
  width: calc(100% + 24px);
  padding: 10px 0 0;
 }
 body.product.square-thumbs
  section.product-info.modify
  .list__product-info
  li
  .top
  .head
  h3 {
  margin-bottom: 0;
 }
}
body.product.square-thumbs
 section.product-info.modify
 .list__product-info
 li
 .top
 .head
 .grBtn
 .btn {
 width: 100%;
 border-radius: 3rem;
 height: auto;
}
body.product.square-thumbs
 section.product-info.modify
 .list__product-info
 li
 .top
 .head
 .grBtn
 .btn--02 {
 background: transparent;
 border: 1px solid #e60012;
 color: #4d4d4d;
 margin-top: 18px;
}
body.product.square-thumbs
 section.product-info.modify
 .list__product-info
 li
 .top
 .head
 .grBtn
 .btn--02:hover {
 background: #e60012;
 color: #fff;
}
body.product.square-thumbs
 section.product-info.modify
 .list__product-info
 li
 .top
 .head
 .prop {
 margin-bottom: 20px;
}

@media only screen and (max-width: 767px) {
 body.product.square-thumbs
  section.product-info.modify
  .list__product-info
  li
  .top
  .head
  .grBtn
  .btn--02 {
  font-size: 12px;
  font-size: 1.2rem;
 }
}

@media only screen and (max-width: 767px) {
 body.product.square-thumbs
  section.product-info.modify
  .list__product-info
  li
  .top
  .head
  .grBtn
  .btn--02 {
  font-size: 10px;
  font-size: 1rem;
 }
}

/*-----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
body.product section.product-info .table--info tbody .link {
 max-width: 88.5%;
 line-height: 1;
}
body.product section.product-info .table--info tbody .link--01 {
 width: 100%;
 background: #e60012;
 color: #fff;
 border-radius: 3rem;
 font-weight: normal;
 text-align: center;
 font-size: 14px;
 display: block;
 margin: 10px auto 0;
 padding: 7px 5px;
}
body.product section.product-info .table--info tbody .link--outline {
 padding: 6px 5px;
 height: auto;
 border-radius: 4rem;
}

/*-----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.oil-refinery .oil-mv--text h2 {
  max-width: 842px;
  width: 100%;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  > h4 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.45;
  padding: 9px 0;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  .country-of-sale
  .row
  span:first-child {
  width: 15%;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  .country-of-sale
  .row
  span:last-child {
  width: 85%;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 .en-page body.oil-refinery .banner__item--03 .inner a {
  padding: 0 20px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.oil-refinery .oil-mv--text h2 {
  max-width: 360px;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  > h4 {
  font-size: 17px;
  font-size: 1.7rem;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  > p {
  font-size: 15px;
  font-size: 1.5rem;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.oil-refinery .sub-header .inner .page-title h1 {
  font-size: 13px;
  font-size: 1.3rem;
 }
 .en-page body.oil-refinery .oil-mv--text.inner {
  padding: 10px 0;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  > h4 {
  font-size: 17px;
  font-size: 1.7rem;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  > h4
  br {
  display: none;
 }
 .en-page
  body.oil-refinery
  section.oil-refinery
  .inner
  .oil-refinery-detail
  > h3 {
  font-size: 17px;
  font-size: 1.7rem;
 }
}

/*-----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
 .en-page body.product ul.list__product-info.col3 > li .top .head {
  padding: 0;
 }
 .en-page body.product ul.list__product-info.col3 > li .top .head h3 {
  margin-bottom: 10px;
 }
 .en-page body.product ul.list__product-info.col3 > li .top .head .txt {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.4;
  margin-bottom: 12px;
 }
 .en-page body.product ul.list__product-info.col3 > li .top .head .link {
  font-size: 12px;
  font-size: 1.2rem;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.product ul.list__product-info.col3 > li .top .head .link {
  font-size: 10px;
  font-size: 1rem;
 }
 .en-page body.product .sub-header .inner .page-title h1 {
  font-size: 13px;
  font-size: 1.3rem;
 }
 .en-page body.product .title__product--type {
  font-size: 16px;
  font-size: 1.6rem;
 }
}

/*-----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.oil-refinery-use section.oil-refinery-use .inner h3 {
  line-height: 1.4;
  padding: 8px 10px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  h3
  _:lang(x)::-ms-backdrop,
 .en-page body.oil-refinery-use section.oil-refinery-use .inner h3 {
  padding: 11px 10px 5px;
 }
 .en-page body.oil-refinery-use .title__subpage-barrel--label.large {
  max-width: 300px;
 }
 .en-page body.oil-refinery-use section.oil-refinery-use .inner .btn {
  max-width: 325px;
  width: 100%;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box {
  max-width: 40%;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.4;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li:first-child {
  margin-bottom: 20px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li:not(:last-child) {
  margin-bottom: 20px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.oil-refinery-use section.oil-refinery-use .inner .inner {
  padding: 0;
 }
 .en-page body.oil-refinery-use .title__subpage-barrel--label.large {
  max-width: 300px;
  width: 100%;
  font-size: 14px;
  font-size: 1.4rem;
 }
 .en-page body.oil-refinery-use .title__subpage-barrel--text {
  font-size: 26px;
  font-size: 2.6rem;
 }
 .en-page body.oil-refinery-use section.oil-refinery-use .inner h3,
 .en-page body.oil-refinery-use section.oil-refinery-use .inner h4 {
  font-size: 18px;
  font-size: 1.8rem;
  padding: 7px 10px;
 }
 .en-page body.oil-refinery-use section.oil-refinery-use .inner .btn {
  font-size: 13px;
  font-size: 1.3rem;
  width: 100%;
  max-width: 320px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box {
  max-width: 47%;
  right: 0;
  bottom: -30px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
  font-size: 9px;
  font-size: 0.9rem;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li:first-child {
  margin-bottom: 5px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li:not(:last-child) {
  margin-bottom: 5px;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.oil-refinery-use section.oil-refinery-use .inner h3,
 .en-page body.oil-refinery-use section.oil-refinery-use .inner h4 {
  font-size: 17px;
  font-size: 1.7rem;
 }
 .en-page body.oil-refinery-use section.oil-refinery-use .inner .btn {
  font-size: 12px;
  font-size: 1.2rem;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box {
  bottom: -40px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li {
  font-size: 7px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li:first-child {
  margin-bottom: 5px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.reactor
  .text-box
  ul
  li:not(:last-child) {
  margin-bottom: 5px;
 }
 .en-page
  body.oil-refinery-use
  section.oil-refinery-use
  .inner
  .inner-sm
  .image-box.burner
  .title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.6;
 }
}

/*-----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.grinding-wheel .grinding-wheel-mv--text {
  top: 42%;
 }
 .en-page body.grinding-wheel .grinding-wheel-mv--text h2 {
  max-width: 51.6%;
  width: 100%;
 }
 .en-page
  body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item {
  text-align: center;
 }
 .en-page
  body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item--title {
  width: auto;
  display: inline-block;
  padding-left: 50px !important;
 }
 .en-page
  body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item--title:before {
  left: 0 !important;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 .en-page body.grinding-wheel .banner__item--04 .inner a {
  padding: 0 20px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.grinding-wheel .grinding-wheel-mv--text h2 {
  max-width: 375px;
  padding: 20px 20px 30px;
 }
 .en-page body.grinding-wheel .grinding-wheel-mv-catch h3 {
  font-size: 18px;
  font-size: 1.8rem;
 }
 .en-page
  body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item {
  text-align: center;
 }
 .en-page
  body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item--title {
  width: auto;
  display: inline-block;
  padding-left: 40px !important;
 }
 .en-page
  body.grinding-wheel
  section.grinding-wheel
  .inner
  .grinding-wheel-detail__item--title:before {
  left: 0 !important;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.product ul.list__product-info > li .top .head a {
  font-size: 12px;
  font-size: 1.2rem;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.product ul.list__product-info > li .top .head a {
  font-size: 10px;
  font-size: 1rem;
 }
}

/*i----------------------------------------------------------
OFICE LIST
------------------------------------------------------------*/
@media only screen and (min-width: 767px) {
 .en-page body.coating .coating-mv {
  max-width: 1160px;
  padding-left: 160px;
 }
 .en-page body.coating .coating-mv h2 {
  max-width: 51.3%;
 }
 .en-page body.coating .coating-mv-catch .coating-list__item figure figcaption {
  font-size: 17px;
  font-size: 1.7rem;
 }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
 .en-page
  body.coating
  section.coating-select
  .inner
  .coating-select-detail
  ul
  li {
  font-size: 14px;
  font-size: 1.4rem;
  padding-bottom: 20px;
 }
 .en-page body.coating .banner__item--05 .inner a {
  padding: 0 20px;
 }
 .en-page body.coating .coating-mv-catch h3 {
  font-size: 22px;
  font-size: 2.2rem;
 }
 .en-page body.coating .coating-mv-catch .coating-list__item figure figcaption {
  font-size: 14px;
  font-size: 1.4rem;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.coating .coating-mv-catch .coating-list__item figure figcaption {
  font-size: 14px;
  font-size: 1.4rem;
 }
 .en-page body.coating .coating-mv--text h2 {
  padding: 15px 0 20px;
  max-width: 335px;
  width: 100%;
 }
 .en-page body.coating section.flow-form .inner .inner-bg .more-link {
  line-height: 1.4;
 }
 .en-page body.coating .coating-mv-catch h3 {
  letter-spacing: -0.02em;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.coating.product ul.list__product-info > li .top .image {
  width: 47%;
 }
 .en-page body.coating.product ul.list__product-info > li .top .image img {
  width: 100%;
 }
 .en-page body.coating.product ul.list__product-info > li .top .head {
  width: 53%;
 }
 .en-page body.coating .coating-mv--text h2 {
  padding: 15px 20px 20px;
 }
 .en-page body.coating .coating-mv-catch .coating-list {
  padding: 0 5px;
 }
 .en-page body.coating .coating-mv-catch .coating-list__item {
  width: 46%;
 }
}

/*-----------------------------------------------------------
OFICE LIST
.en-page body.coating-principle {
	@include min-screen(768px){
		section.coating-principle .inner .row{
			.image{
				width: 48.9%;
			}
			.text{
				width: 51.1%;
				padding-left: 25px;
			}
		}
		section.coating-principle .inner{
			ul li{
				width: 47.7%;
			}
			.cap{
				line-height: 1.4;
			}
		}
	}
	@include max-screen(767px){
		.title__subpage-barrel .title__subpage-barrel--text{
			@include font-size(27);
		}
		section.coating-principle .inner h3{
			@include font-size(19);
		}
	}
	@include max-screen(370px){
		.title__subpage-barrel .title__subpage-barrel--text{
			@include font-size(24);
		}
		section.coating-principle .inner h3,section.coating-principle .inner ul li p{
			@include font-size(18);
		}
	}
}
@media screen and (-ms-high-contrast: active),(-ms-high-contrast: none){
   .common-new-item .inner .list__item__detail .grBtn .btn{
        &--01{
        	padding-top: 11px;
        }
        &--02{
        	padding-top: 10px;
        }
   }
   body.product ul.list__product-info.col2 > li .top .head .btn--red{
   		padding: 6px 5px 0;
   }
   body.product.square-thumbs section.product-info.modify .list__product-info li .top .head .grBtn .btn{
   		padding-top: 10px;
   }
   body.product.square-thumbs section.product-info.modify .list__product-info li .top .head .prop{
   		padding-top: 6.5px;
   }
   body.product section.product-info .table--info tbody .link{
	   	&--01{
	   		padding: 9.5px 3px 4.5px;
	   	}
	   	&--outline{
	   		padding: 8.5px 3px 2.5px;
	   	}
   }
}
/*-----------------------------------------------------------
TAYLOR
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.taylor .taylor-mv--text {
  padding-left: 0;
  top: 52%;
 }
 .en-page body.taylor .taylor-mv--text h2 {
  max-width: 397px;
  width: 100%;
 }
 .en-page
  body.taylor
  section.construction
  .inner
  .inner-bg
  .more-link:before
  _:lang(x)::-ms-backdrop,
 .en-page body.taylor section.construction .inner .inner-bg .more-link:before {
  top: calc(50% - 2px);
 }
 .en-page body.taylor .taylor-mv-catch h3 {
  font-size: 23px;
  font-size: 2.3rem;
 }
 .en-page body.taylor .taylor-mv-catch ul li {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 15px 0;
 }
 .en-page body.taylor section.taylor .inner .taylor-detail__01 .col {
  height: auto;
 }
 .en-page
  body.taylor
  section.taylor
  .inner
  .taylor-detail__01
  .col
  span:first-child {
  padding: 10px;
  line-height: 1.5;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.taylor .taylor-mv-catch h3 {
  padding: 0 20px;
 }
 .en-page body.taylor section.taylor .inner .taylor-detail h3 {
  line-height: 1.4;
 }
 .en-page
  body.taylor
  section.taylor
  .inner
  .taylor-detail__01
  .col
  span:first-child {
  line-height: 1.4;
  padding: 8px 0;
  text-align: center;
 }
 .en-page body.taylor section.construction .inner .inner-bg .more-link {
  line-height: 1.4;
 }
 .en-page
  body.taylor
  section.taylor
  .inner
  .taylor-detail__02
  ul
  li
  figure
  figcaption
  p:first-child {
  padding: 6px 10px;
  line-height: 1.4;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.taylor section.construction .inner .inner-bg .more-link {
  font-size: 14px;
  font-size: 1.4rem;
 }
 .en-page
  body.taylor
  section.taylor
  .inner
  .taylor-detail__01
  .col
  span:first-child {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4;
  padding: 8px 10px;
  text-align: center;
 }
 .en-page body.taylor .taylor-mv-catch ul li {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.taylor.product .breadcrumb .inner span,
 .en-page body.taylor.product .breadcrumb .inner a {
  padding-right: 20px;
 }
 .en-page body.taylor.product .breadcrumb .inner span:after,
 .en-page body.taylor.product .breadcrumb .inner a:after {
  right: -10px;
 }
 .en-page body.taylor.product .breadcrumb .inner span:last-child,
 .en-page body.taylor.product .breadcrumb .inner a:last-child {
  padding-right: 0;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.taylor.product .breadcrumb .inner span,
 .en-page body.taylor.product .breadcrumb .inner a {
  padding-right: 10px;
 }
 .en-page body.taylor.product .breadcrumb .inner span:after,
 .en-page body.taylor.product .breadcrumb .inner a:after {
  right: -13px;
  top: 0;
 }
}

body.coating-principle section.coating-principle .inner .text-box p {
 text-align: justify;
}

/*-----------------------------------------------------------
TAYLOR
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.taylor-principle section.taylor-principle .inner ul li {
  padding: 17px 15px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.5;
 }
 .en-page
  body.taylor-principle
  section.taylor-principle
  .inner
  ul
  li:not(:last-child) {
  display: flex;
  justify-content: center;
  align-items: center;
 }
 .en-page body.taylor-principle .scroller {
  width: calc(100% + 1px);
  overflow: hidden;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.taylor-principle section.taylor-principle .inner .figure img {
  min-width: 603px;
 }
 .en-page body.taylor-principle .title__subpage-barrel--label.large-250 {
  max-width: 300px;
 }
 .en-page body.taylor-principle .title__subpage-barrel--text {
  font-size: 28px;
  font-size: 2.8rem;
 }
}

/*-----------------------------------------------------------
TAYLOR
------------------------------------------------------------*/
@media only screen and (min-width: 768px) {
 .en-page body.contact .wrap main .inner form .form-inner {
  padding: 30px 70px 50px 50px;
 }
 .en-page body.contact .wrap main .inner form .form-inner .row .right {
  width: 62%;
 }
 .en-page body.contact .wrap main .inner form .form-inner .row .right ul {
  display: block;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  input[type="radio"] {
  width: 12px;
  height: 12px;
  margin: 0 2px 0 0;
  position: relative;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  input[type="radio"]:before {
  width: 8px;
  height: 8px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  content: "";
  display: block;
  background: #fff;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  input[type="radio"]:checked:before {
  background: #000;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .right
  input[type="tel"],
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .right
  input[type="email"] {
  padding: 0 10px;
  font-size: 16px;
  font-size: 1.6rem;
  width: 100%;
  height: 32px;
  line-height: 1.875;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .right
  input[type="tel"] {
  max-width: 160px;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .right
  input[type="email"] {
  max-width: 400px;
 }
 .en-page body.contact .wrap main .inner form .form-inner .row .left {
  width: 38%;
 }
 .en-page body.contact .wrap main .inner form .form-inner .row .left .req,
 .en-page body.contact .wrap main .inner form .form-inner .row .left .any {
  padding: 3.5px 8px 4px;
  height: 20px;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .left
  .req
  _:lang(x)::-ms-backdrop,
 .en-page body.contact .wrap main .inner form .form-inner .row .left .req,
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row
  .left
  .any
  _:lang(x)::-ms-backdrop,
 .en-page body.contact .wrap main .inner form .form-inner .row .left .any {
  padding: 6px 8px 2px;
 }
 .en-page body.contact .wrap main .inner form .form-inner .row .left label em {
  font-style: normal;
  font-size: 10px;
  font-size: 1rem;
 }
 .en-page
  body.contact
  .wrap
  main
  .inner
  form
  .form-inner
  .row:nth-child(6)
  .right
  ul {
  display: flex;
 }
}

@media only screen and (max-width: 767px) {
 .en-page
  body.contact
  .wrap
  main
  .contact-text
  .inner
  ul
  li:nth-last-child(-n + 3) {
  margin-top: 20px;
 }
 .en-page body.contact .wrap main > .inner form .form-inner .row .right ul {
  margin-right: 0;
 }
 .en-page body.contact .wrap main > .inner form .form-inner .row .right ul li {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
 }
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  label {
  width: calc(100% - 35px);
  line-height: 1.4;
 }
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  input[type="radio"] {
  width: 25px;
  min-width: 25px;
  height: 25px;
  margin: 0 10px 0 0;
  position: relative;
 }
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  input[type="radio"]:before {
  width: 16px;
  height: 16px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  content: "";
  display: block;
  background: #fff;
 }
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  ul
  li
  input[type="radio"]:checked:before {
  background: #000;
 }
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  input[type="tel"],
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row
  .right
  input[type="email"] {
  max-width: 100%;
  padding: 0 10px;
  font-size: 16px;
  font-size: 1.6rem;
  width: 100%;
  height: 32px;
  line-height: 1.875;
  margin-top: 10px;
 }
 .en-page body.contact .wrap main > .inner form .form-inner .row .left .req {
  padding: 3.5px 8px 4.5px;
 }
 .en-page body.contact .wrap main > .inner form .form-inner .row .left .any {
  padding: 3px 8px 5px;
 }
 .en-page body.contact .wrap main > .inner form .form-inner .row .left em {
  font-style: normal;
  font-size: 10px;
  font-size: 1rem;
 }
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row:nth-child(6)
  .right
  ul {
  display: flex;
 }
 .en-page
  body.contact
  .wrap
  main
  > .inner
  form
  .form-inner
  .row:nth-child(6)
  .right
  ul
  li {
  align-items: center;
 }
}

/*-----------------------------------------------------------
TAYLOR
------------------------------------------------------------*/
@media only screen and (max-width: 370px) {
 .en-page body.privacypolicy #contents .inner .first-text,
 .en-page body.privacypolicy #contents .inner .policy-list li,
 .en-page body.privacypolicy #contents .inner .author,
 .en-page body.privacypolicy #contents .inner .info {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.8;
 }
}

@media only screen and (min-width: 768px) {
 .en-page body.sitemap #contents .inner .box table tbody tr td {
  font-size: 15px;
  font-size: 1.5rem;
 }
 .en-page body.sitemap #contents .inner .bottom-map li a {
  font-size: 17px;
  font-size: 1.7rem;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.sitemap #contents .inner a:before {
  min-width: 5px;
 }
 .en-page body.sitemap #contents .inner .box table tbody tr td {
  font-size: 13px;
  font-size: 1.3rem;
 }
}

@media only screen and (min-width: 768px) {
 .en-page body.barrel-kind .title__subpage-barrel--label {
  max-width: 230px;
 }
 .en-page body.barrel-kind section.barrel-merit .inner ul li {
  font-size: 16px;
  font-size: 1.6rem;
 }
 .en-page body.barrel-kind .link-wrapper .backlink {
  min-width: 240px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel-kind .title__subpage-barrel--label {
  max-width: 270px;
 }
 .en-page body.barrel-kind section.barrel-kind .inner .about h3,
 .en-page body.barrel-kind section.barrel-kind .inner .about.about02 h4,
 .en-page body.barrel-kind section.barrel-howto .inner h3,
 .en-page body.barrel-kind section.barrel-merit .inner h3 {
  line-height: 1.4;
 }
 .en-page body.barrel-kind .link-wrapper .backlink {
  min-width: 240px;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.barrel-kind section.barrel-merit .inner ul li,
 .en-page
  body.barrel-kind
  section.barrel-kind
  .inner
  .about.about02
  .box-wrap
  .box-item
  .title {
  font-size: 18px;
  font-size: 1.8rem;
 }
}

@media only screen and (min-width: 768px) {
 .en-page body.barrel-machine .title__subpage-barrel--label {
  max-width: 240px;
 }
 .en-page body.barrel-machine section.comparison-table .inner table tr th,
 .en-page body.barrel-machine section.comparison-table .inner table tr td {
  line-height: 1.4;
  padding-left: 5px;
  padding-right: 5px;
 }
 .en-page body.barrel-machine .link-wrapper .backlink {
  min-width: 240px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel-machine .title__subpage-barrel--label {
  max-width: 260px;
 }
 .en-page body.barrel-machine .title__subpage-barrel--text {
  font-size: 25px;
  font-size: 2.5rem;
 }
 .en-page body.barrel-machine section.barrel-machine .inner .machine h3 {
  line-height: 1.4;
  padding-left: 5px;
  padding-right: 5px;
 }
 .en-page body.barrel-machine .link-wrapper .backlink {
  min-width: 270px;
 }
}

@media only screen and (max-width: 370px) {
 .en-page body.barrel-machine section.barrel-machine .inner .machine h3 {
  font-size: 18px;
  font-size: 1.8rem;
 }
 .en-page body.barrel-machine .title__subpage-barrel--text {
  font-size: 21px;
  font-size: 2.1rem;
 }
}

.en-page
 body.barrel-machine
 section.barrel-machine
 .inner
 .machine__item__right
 .text {
 text-align: justify;
}

@media only screen and (min-width: 768px) {
 .en-page body.barrel-stone .title__subpage-barrel--label {
  max-width: 260px;
 }
 .en-page body.barrel-stone .link-wrapper .backlink {
  min-width: 240px;
 }
 .en-page body.barrel-stone section.comparison-table .inner table tr td,
 .en-page body.barrel-stone section.comparison-table .inner table tr th {
  line-height: 1.4;
  padding-left: 5px;
  padding-right: 5px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel-stone .title__subpage-barrel--label {
  max-width: 260px;
 }
 .en-page body.barrel-stone .title__subpage-barrel--text {
  font-size: 25px;
  font-size: 2.5rem;
 }
 .en-page body.barrel-stone section.comparison-table .inner h3 {
  line-height: 1.4;
  padding-left: 5px;
  padding-right: 5px;
 }
 .en-page body.barrel-stone section.comparison-table .inner table tr td,
 .en-page body.barrel-stone section.comparison-table .inner table tr th {
  line-height: 1.4;
  padding-left: 5px;
  padding-right: 5px;
 }
 .en-page body.barrel-stone .link-wrapper .backlink {
  min-width: 270px;
 }
}

.en-page
 body.barrel-compound
 section.barrel-compound
 .inner
 .compound__merit__item
 .text {
 text-align: left;
}

@media only screen and (min-width: 768px) {
 .en-page body.barrel-compound .title__subpage-barrel--label {
  max-width: 260px;
 }
 .en-page body.barrel-compound .link-wrapper .backlink {
  min-width: 240px;
 }
}

@media only screen and (max-width: 767px) {
 .en-page body.barrel-compound .title__subpage-barrel--label {
  max-width: 260px;
 }
 .en-page body.barrel-compound .title__subpage-barrel--text {
  font-size: 25px;
  font-size: 2.5rem;
 }
 .en-page body.barrel-compound section.barrel-compound .inner .compound h3 {
  line-height: 1.4;
  padding-left: 5px;
  padding-right: 5px;
 }
 .en-page body.barrel-compound .link-wrapper .backlink {
  min-width: 270px;
 }
}

@media only screen and (max-width: 370px) {
 .en-page
  body.barrel-compound
  section.barrel-compound
  .inner
  .compound__action__inner
  .title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4;
 }
 .en-page
  body.barrel-compound
  section.barrel-compound
  .inner
  .compound__action__inner
  .text {
  line-height: 1.6;
 }
}

.eng-page body.message section.message .inner .name img {
 width: 100%;
}

/*-----------------------------------------------------------
TAYLOR
------------------------------------------------------------*/
@media screen and (max-width: 767px) {
 body.news .profile-content article .content table {
  width: 100%;
  max-width: 100%;
 }
}
/* mdf0525 */
@media screen and (min-width: 768px) {
 body.technology
  section.certification
  .inner
  .certification-list
  ul
  li:first-child
  .row
  img {
  position: relative;
  top: 6px;
 }
}
