@charset "utf-8";
@import url(https://fonts.googleapis.com/css?family=Roboto+Condensed);
@import url(https://fonts.googleapis.com/earlyaccess/notosanssc.css);
html,
button,
input,
select,
textarea {
    color: #222;
}

label {
    font-weight: normal;
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

html {
    font-size: 100%;
    font-family: sans-serif;
    /* 1 */
    -ms-text-size-adjust: 100%;
    /* 2 */
    -webkit-text-size-adjust: 100%;
    /* 2 */
    -webkit-font-smoothing: antialiased;
    position: relative;
    height: 100%;
}

a {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	word-break: break-all;
}

a:not(#header .header-nav-menu > li > a div em) {
    font-weight: 400;
    color: #666;
    outline: none;
    -webkit-transition: opacity 0.2s ease, background-color 0.2s ease, color 0.2s ease;
    -moz-transition: opacity 0.2s ease, background-color 0.2s ease, color 0.2s ease;
    -ms-transition: opacity 0.2s ease, background-color 0.2s ease, color 0.2s ease;
    -o-transition: opacity 0.2s ease, background-color 0.2s ease, color 0.2s ease;
    transition: opacity 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

a:hover {
    text-decoration: none;
    color: #E50012;
}

a:hover,
a:active,
a:visited,
a:focus {
    outline: none;
}


/*a{
	opacity: 1!important;
}*/

img {
    outline: none;
    border: none;
    max-width: 100%;
    height: auto;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

html,
body {
    padding: 0;
    margin: 0;
}

ul,
ol {
    padding: 0;
    margin: 0;
    list-style: none;
}

body {
    background-color: #fff;
    /*overflow: hidden;*/
    overflow-y: auto;
    height: 100%;
    position: relative;
}

button:focus,
textarea:focus,
input:focus {
    outline: none;
}

.clean-list {
    padding: 0;
    margin: 0;
}

.clean-list li {
    list-style: none
}

.clearfix {
    *zoom: 1;
}

.clearfix:before {
    content: " ";
    display: table;
}

.clearfix:after {
    content: ".";
    display: block;
    font-size: 0;
    line-height: 0;
    height: 0;
    clear: both;
    visibility: hidden;
}

html,
body,
input,
button,
select,
textarea {
    margin: 0;
    padding: 0;
    background-color: #fff;
    color: #333;
    line-height: 1.5;
    font-size: 16px;
    font-weight: 400;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: 1.3;
    color: #000;
    font-size: 1em;
    font-weight: 700;
}

.fl-left {
    float: left;
}

.fl-right {
    float: right;
}

.fl-no {
    float: none;
}

.w-auto {
    width: auto;
}

.clear {
    clear: both;
}

.hide {
    display: none !important;
}

.show {
    display: block !important;
}

.hidden {
    visibility: hidden;
}

.visible {
    visibility: visible;
}

.visible-block {
    display: none;
}

.table {
    display: table;
    width: 100%;
    max-width: 100%;
}

.table-cell {
    display: table-cell;
}

.table th,
.table td {
    border: 1px solid #e1e1df;
}

.eng-text {
    font-family: Arial, Helvetica, Verdana, sans-serif;
}

.green-text {
    color: #00633D;
}

.blue-text {
    color: #002E7E;
}

.red-text {
    color: #E50012;
}

.btn,
a.btn,
button.btn {
    position: relative;
    display: inline-block;
    padding: 20px 23px;
    border: none;
    text-decoration: none !important;
    outline: none;
    text-align: center;
    text-transform: uppercase;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    line-height: 1;
    font-size: 16px;
    border-radius: 0;
}

.btn-primary {
    background: #005dab;
}

.btn-primary:hover {
    background: #005398;
}

.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus {
    outline: none;
}

.btn.active.none-shadow {
    box-shadow: none;
}

.easing {
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

.no-easing {
    -webkit-transition: none !important;
    -moz-transition: none !important;
    -ms-transition: none !important;
    -o-transition: none !important;
    transition: none !important;
}

.row-group {
    position: relative;
}

.input-group,
.form-group {
    position: relative;
}

.form-group {
    margin-top: 35px;
}

.form-group:first-child {
    margin: 0
}

.control-label {
    display: inline-block;
    position: relative;
}

input[type="text"],
input[type="email"],
input[type="number"],
input[type="password"],
.form-control {
    background: #fff;
    border: 1px solid #cbcbcb;
    padding: 7px 22px 7px 22px;
    width: 100%;
    height: 45px;
    font-size: 18px;
    outline: none;
    line-height: 1.5;
    color: #222;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    -webkit-appearance: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -webkit-transition: box-shadow 0.2s ease;
    -moz-transition: box-shadow 0.2s ease;
    -ms-transition: box-shadow 0.2s ease;
    -o-transition: box-shadow 0.2s ease;
    transition: box-shadow 0.2s ease;
}

textarea,
textarea.form-control {
    height: 120px;
    max-width: 100%;
    resize: vertical;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    -webkit-appearance: none;
}

.form-control:focus,
.search-area .form-control:focus {
    background: #fff;
    border: 1px solid #717171;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

button::-moz-focus-inner {
    padding: 0;
    border: 0;
}

.ta-right {
    text-align: right;
}

.ta-center {
    text-align: center;
}

.visible-xs-block {
    display: none;
}

.mCheckable {
    display: inline-block;
    cursor: pointer;
    margin: 0 12px 0 0;
    text-align: center;
    background-color: #fff;
    border: 1px solid #005dac;
    height: 20px;
    width: 20px;
    font-size: 0;
    line-height: 1;
    vertical-align: 0;
}

.mCheckable em {
    background-color: #fff;
    margin-top: 3px;
    display: inline-block;
    width: 12px;
    height: 12px;
    vertical-align: 0;
}

.mCheckable.checked em {
    background-color: #005dac;
}

.mCheckable.radiobutton {
    border-radius: 50%;
}

.mCheckable.radiobutton em {
    border-radius: 50%;
}

.only-mobile {
    display: none !important;
}

.only-w1024 {
	display: none !important;
}

.only-w389 {
    display: none !important;
}

/* Start Content */

.wrapper {
    margin: 0;
    position: relative;
    width: 100%;
    height: 100%;
}

.contents {
    position: relative;
}

.main-content {
    position: relative;
    padding: 0;
}

.main-content p {
    margin: 3px 0 7px;
    font-weight: 400;
    line-height: 1.7;
}

.main-content p.fw800 {
    line-height: 1.6;
}

.content-wrapper {
    padding-left: 25px;
    padding-right: 25px;
    overflow: hidden;
}

.content-wrapper.is_margin {
    margin-top: 70px;
}

.plant-page .section .content-wrapper.is_padding {
    padding-top: 21px;
    padding-bottom: 21px;
}

.center-content {
    position: relative;
    max-width: 1280px;
    margin: 0 auto;
}

.content-inner {
    position: relative;
    max-width: 960px;
    margin: 0 auto;
}


/*Main content*/

.section {
    position: relative;
}


/*Header*/

#header::before {
    background: rgba(255, 255, 255, 0.3) none repeat scroll 0 0;
    bottom: 0;
    content: "";
    height: 100%;
    opacity: 0;
    position: fixed;
    right: 0;
    top: 0;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    transition: all 0.2s ease 0s;
    visibility: hidden;
    z-index: 99;
}

#header {
    position: relative;
    z-index: 105;
    background: #fff;
    height: auto;
    overflow: visible;
}

#header .header-content {
    height: 100%;
}

#header .header-top {
    height: 84px;
    padding: 0 0 0 20px;
}

#header .header-logo {
    display: inline-block;
    /*float: left;*/
    padding: 17px 5px 8px 5px;
    margin: 0;
}

#header .header-logo a {
    height: 100%;
}

#header .header-nav {
    float: right;
    margin: 0;
    height: 100%;
}

#header .header-nav-menu {
    height: 100%;
}

#header .header-nav-menu > li {
    display: inline-block;
    position: relative;
    vertical-align: top;
    margin-left: 14px;
}

#header .header-nav-menu > li > a {
    height: 100%;
    text-decoration: none;
    text-align: center;
    padding: 0;
    line-height: 84px;
    color: #000;
    font-size: 16px;
}

#header .header-nav-menu > li:first-child > a {
    color: #000;
}

#header .header-nav-menu > li > a:hover {
    color: #E50012;
}

#header .header-nav-menu > li > a i {
    font-size: 37px;
    vertical-align: middle;
}

#header .header-nav-menu > li > a div em {
    margin-left: 6px;
    font-style: normal;
    float: right;
}

#header .header-nav-menu > li.menu {
    width: 84px;
    height: 100%;
    background-color: #e60012;
}

#header .header-nav-menu > li.menu > a:before {
    display: none;
}

#header .header-nav-menu > li .header-nav-submenu {
    list-style: outside none none;
    position: absolute;
    display: none;
    top: 73px;
    left: -88px;
    width: 216px;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    transition: all 0.2s ease 0s;
    background-color: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    z-index: 120;
}

#header .header-nav-menu > li:hover .header-nav-submenu {
    display: block;
}

#header .header-nav-menu > li:first-child:hover > a {
    color: #000;
}

#header .header-nav-menu > li .header-nav-submenu > li {
    display: block;
    position: relative;
    padding: 0 0;
    vertical-align: middle;
    margin: 0 0;
    font-size: 16px;
    line-height: 1.5;
    color: #000;
    text-align: center;
    z-index: 120;
}

#header .header-nav-menu > li .header-nav-submenu > li span {
    display: block;
    position: relative;
    background-color: #fff;
    z-index: 121;
    padding-top: 6px;
}

#header .header-nav-menu > li .header-nav-submenu > li a {
    display: block;
    font-size: 16px;
    line-height: 2;
    color: #000;
    padding: 4px 10px 4px 30px;
    text-decoration: none;
	position: relative;
}

#header .header-nav-menu > li .header-nav-submenu > li.active a,
#header .header-nav-menu > li .header-nav-submenu > li a:hover {
    color: #E60012;
}

#header .header-nav-menu > li .header-nav-submenu > li a.ja::before {
	position: absolute;
	left: 30px;
    content: "";
	background: url("/assets/img/common/myicon-ja-black.png");
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
}

#header .header-nav-menu > li .header-nav-submenu > li.active a.ja::before,
#header .header-nav-menu > li .header-nav-submenu > li a.ja:hover::before {
	background: url("/assets/img/common/myicon-ja.png");
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
}

#header .header-nav-menu > li .header-nav-submenu > li a.en::before {
	position: absolute;
	left: 30px;
    content: "";
	background: url("/assets/img/common/myicon-en-black.png");
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
}

#header .header-nav-menu > li .header-nav-submenu > li.active a.en::before,
#header .header-nav-menu > li .header-nav-submenu > li a.en:hover::before {
	background: url("/assets/img/common/myicon-en.png");
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
}

#header .header-nav-menu > li .header-nav-submenu > li a.zh::before {
	position: absolute;
	left: 30px;
    content: "";
	background: url("/assets/img/common/myicon-zh-black.png");
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
}

#header .header-nav-menu > li .header-nav-submenu > li.active a.zh::before,
#header .header-nav-menu > li .header-nav-submenu > li a.zh:hover::before {
	background: url("/assets/img/common/myicon-zh.png");
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
}

#header .header-nav-menu > li .header-nav-submenu > li a.kr::before {
	position: absolute;
	left: 30px;
    content: "";
	background: url("/assets/img/common/myicon-kr-black.png");
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
}

#header .header-nav-menu > li .header-nav-submenu > li.active a.kr::before,
#header .header-nav-menu > li .header-nav-submenu > li a.kr:hover::before {
	background: url("/assets/img/common/myicon-kr.png");
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
}

#header .header-nav-menu > li .header-nav-submenu > li a.esp::before {
	position: absolute;
	left: 30px;
    content: "";
	background: url("/assets/img/common/myicon-esp-black.png");
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
}

#header .header-nav-menu > li .header-nav-submenu > li.active a.esp::before,
#header .header-nav-menu > li .header-nav-submenu > li a.esp:hover::before {
	background: url("/assets/img/common/myicon-esp.png");
	background-size: 30px 30px;
	width: 30px;
    height: 30px;
}

#header .header-nav-menu > li .header-nav-submenu > li a.pt::before {
	position: absolute;
	left: 30px;
    content: "";
	background: url("/assets/img/common/myicon-pt-black.png");
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
}

#header .header-nav-menu > li .header-nav-submenu > li.active a.pt::before,
#header .header-nav-menu > li .header-nav-submenu > li a.pt:hover::before {
	background: url("/assets/img/common/myicon-pt.png");
	background-size: 30px 30px;
	width: 30px;
    height: 30px;
}

#header .header-nav-menu > li .header-nav-submenu > li a.tr::before {
	position: absolute;
	left: 30px;
    content: "";
	background: url("/assets/img/common/myicon-tr-black.png");
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
}

#header .header-nav-menu > li .header-nav-submenu > li.active a.tr::before,
#header .header-nav-menu > li .header-nav-submenu > li a.tr:hover::before {
	background: url("/assets/img/common/myicon-tr.png");
	background-size: 30px 30px;
	width: 30px;
    height: 30px; 
}

#header .header-nav-menu > li .header-nav-submenu > li a.de::before {
	position: absolute;
	left: 30px;
    content: "";
	background: url("/assets/img/common/myicon-de-black.png");
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
}

#header .header-nav-menu > li .header-nav-submenu > li.active a.de::before,
#header .header-nav-menu > li .header-nav-submenu > li a.de:hover::before {
	background: url("/assets/img/common/myicon-de.png");
	background-size: 30px 30px;
	width: 30px;
    height: 30px; 
}

#header .header-nav-menu > li .header-nav-submenu > li a.fr::before {
	position: absolute;
	left: 30px;
    content: "";
	background: url("/assets/img/common/myicon-fr-black.png");
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
}

#header .header-nav-menu > li .header-nav-submenu > li.active a.fr::before,
#header .header-nav-menu > li .header-nav-submenu > li a.fr:hover::before {
	background: url("/assets/img/common/myicon-fr.png");
	background-size: 30px 30px;
	width: 30px;
    height: 30px; 
}



#header .header-nav-menu > li .header-nav-submenu > li:first-child {
    border-bottom: 1px solid #ccc;
    background-color: #fff;
    font-weight: 700;
    line-height: 2;
    padding: 0 10px 1px 10px;
    margin-bottom: 16px;
}

#header .header-nav-menu > li .header-nav-submenu > li:first-child:after {
    content: "";
    position: absolute;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
    height: 0;
    width: 0;
    pointer-events: none;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-bottom: 15px solid #fff;
    z-index: 120;
}

#header .header-nav-menu > li .header-nav-submenu > li:first-child:before {
    content: '';
    position: absolute;
    width: 30px;
    height: 30px;
    top: -10px;
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
    z-index: 115;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
}

#header .header-nav-menu > li .header-nav-submenu > li:last-child {
    margin-bottom: 14px;
}

#header .btn-menu {
    background: transparent;
    display: inline-block;
    float: none;
    height: 100%;
    position: relative;
    text-decoration: none;
    width: 100%;
    z-index: 1;
}

#header .btn-menu .icon-menu-hamburger {
    height: 28px;
    left: 50%;
    margin: -14px 0 0 -17px;
    position: absolute;
    top: 50%;
    width: 32px;
}

#header .btn-menu .icon-menu-hamburger span,
#header .btn-menu .icon-menu-hamburger:before,
#header .btn-menu .icon-menu-hamburger:after {
    background: #fff none repeat scroll 0 0;
    content: "";
    display: block;
    height: 2px;
    left: 0;
    position: absolute;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    transition: all 0.2s ease 0s;
    width: 100%;
    color: #fff;
}

#header .btn-menu .icon-menu-hamburger span {
    margin: -1px 0 0;
    top: 50%;
}

#header .btn-menu .icon-menu-hamburger:before {
    top: 0;
}

#header .btn-menu .icon-menu-hamburger:after {
    bottom: 0;
}

#header .btn-menu.icon-menu-hamburger span:first-child {
    margin-top: 0;
}

#header .btn-menu.active .icon-menu-hamburger span {
    display: none;
}

#header .btn-menu.active .icon-menu-hamburger {
    margin-left: -20px;
}

#header .btn-menu.active .icon-menu-hamburger::before,
#header .btn-menu.active .icon-menu-hamburger::after {
    width: 110%;
}

#header .btn-menu.active .icon-menu-hamburger::before,
#header .btn-menu.active .icon-menu-hamburger::after {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    transition: transform 0.2s ease 0s;
}

#header .btn-menu.active .icon-menu-hamburger::before {
    top: 13px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

#header .btn-menu.active .icon-menu-hamburger::after {
    bottom: 12px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

#header .header-top-menu {
    display: none;
}

#header .header-top-menu {
    background: #E50012;
    bottom: 0;
    float: none;
    padding: 0;
    position: relative;
    -webkit-transition: all 0.5s ease 0s;
    -moz-transition: all 0.5s ease 0s;
    -ms-transition: all 0.5s ease 0s;
    -o-transition: all 0.5s ease 0s;
    transition: all 0.5s ease 0s;
    width: 100%;
    z-index: 111;
}

#header .header-top-menu .header-menu {
    margin: 46px auto 3px auto;
    max-width: 960px;
}

#header .header-menu {
    float: none;
}

#header .header-menu li {
    display: block;
    float: left;
    width: 23.44%;
    margin: 0 2.08% 30px 0;
    padding: 0;
}

#header .header-menu li:nth-of-type(4n) {
    margin-right: 0;
}

:lang(ja) #header .header-menu li {
    display: block;
    float: left;
    width: 18.33%;
    margin: 0 2.08% 30px 0;
    padding: 0;
}

:lang(ja) #header .header-menu li:nth-of-type(4n) {
    margin-right: 2.08%;
}

:lang(ja) #header .header-menu li:nth-of-type(5n) {
    margin-right: 0;
}

:lang(en) #header .header-menu li {
    display: block;
    float: left;
    width: 18.33%;
    margin: 0 2.08% 30px 0;
    padding: 0;
}

:lang(en) #header .header-menu li:nth-of-type(4n) {
    margin-right: 2.08%;
}

:lang(en) #header .header-menu li:nth-of-type(5n) {
    margin-right: 0;
}

:lang(zh) #header .header-menu li {
    display: block;
    float: left;
    width: 18.33%;
    margin: 0 2.08% 30px 0;
    padding: 0;
}

:lang(zh) #header .header-menu li:nth-of-type(4n) {
    margin-right: 2.08%;
}

:lang(zh) #header .header-menu li:nth-of-type(5n) {
    margin-right: 0;
}

:lang(pt) #header .header-menu li {
    display: block;
    float: left;
    width: 18.33%;
    margin: 0 2.08% 30px 0;
    padding: 0;
}

:lang(pt) #header .header-menu li:nth-of-type(4n) {
    margin-right: 2.08%;
}

:lang(pt) #header .header-menu li:nth-of-type(5n) {
    margin-right: 0;
}

:lang(es) #header .header-menu li {
    display: block;
    float: left;
    width: 18.33%;
    margin: 0 2.08% 30px 0;
    padding: 0;
}

:lang(es) #header .header-menu li:nth-of-type(4n) {
    margin-right: 2.08%;
}

:lang(es) #header .header-menu li:nth-of-type(5n) {
    margin-right: 0;
}

:lang(de) #header .header-menu li {
    display: block;
    float: left;
    width: 18.33%;
    margin: 0 2.08% 30px 0;
    padding: 0;
}

:lang(de) #header .header-menu li:nth-of-type(4n) {
    margin-right: 2.08%;
}

:lang(de) #header .header-menu li:nth-of-type(5n) {
    margin-right: 0;
}

:lang(fr) #header .header-menu li {
    display: block;
    float: left;
    width: 18.33%;
    margin: 0 2.08% 30px 0;
    padding: 0;
}

:lang(fr) #header .header-menu li:nth-of-type(4n) {
    margin-right: 2.08%;
}

:lang(fr) #header .header-menu li:nth-of-type(5n) {
    margin-right: 0;
}

:lang(kr) #header .header-menu li {
    display: block;
    float: left;
    width: 18.33%;
    margin: 0 2.08% 30px 0;
    padding: 0;
}

:lang(kr) #header .header-menu li:nth-of-type(4n) {
    margin-right: 2.08%;
}

:lang(kr) #header .header-menu li:nth-of-type(5n) {
    margin-right: 0;
}

:lang(tr) #header .header-menu li {
    display: block;
    float: left;
    width: 18.33%;
    margin: 0 2.08% 30px 0;
    padding: 0;
}

:lang(tr) #header .header-menu li:nth-of-type(4n) {
    margin-right: 2.08%;
}

:lang(tr) #header .header-menu li:nth-of-type(5n) {
    margin-right: 0;
}

#header .header-menu li a {
    height: auto;
    line-height: inherit;
    padding: 0 0;
    text-align: left;
    text-decoration: none;
    font-weight: 400;
    text-shadow: none;
    color: #fff;
    font-size: 16px;
}

:lang(ja) #header .header-menu li a {
    font-size: 14px;
}

:lang(en) #header .header-menu li a {
    font-size: 13px;
}

:lang(zh) #header .header-menu li a {
    font-size: 13px;
}

:lang(pt) #header .header-menu li a {
    font-size: 13px;
}

:lang(es) #header .header-menu li a {
    font-size: 13px;
}

:lang(de) #header .header-menu li a {
    font-size: 13px;
}

:lang(fr) #header .header-menu li a {
    font-size: 13px;
}

:lang(kr) #header .header-menu li a {
    font-size: 13px;
}

:lang(tr) #header .header-menu li a {
    font-size: 13px;
}

#header .header-menu li a i {
    font-size: 20px;
    vertical-align: middle;
    margin-right: 9px;
    display: inline-block;
    margin-top: -2px;
}

:lang(ja) #header .header-menu li a i {
    font-size: 14px;
    margin-top: -3px;
}

:lang(en) #header .header-menu li a i {
    font-size: 14px;
    margin-top: -3px;
}

:lang(zh) #header .header-menu li a i {
    font-size: 14px;
    margin-top: -3px;
}

:lang(pt) #header .header-menu li a i {
    font-size: 14px;
    margin-top: -3px;
}

:lang(es) #header .header-menu li a i {
    font-size: 14px;
    margin-top: -3px;
}

:lang(de) #header .header-menu li a i {
    font-size: 14px;
    margin-top: -3px;
}

:lang(fr) #header .header-menu li a i {
    font-size: 14px;
    margin-top: -3px;
}

:lang(kr) #header .header-menu li a i {
    font-size: 14px;
    margin-top: -3px;
}

:lang(tr) #header .header-menu li a i {
    font-size: 14px;
    margin-top: -3px;
}

#header .header-menu li a:after {
    display: none;
}

#header .header-menu .header-menu__image {
    display: block;
    margin: 0 0 8px 0;
}

#header .header-menu .header-menu__image img {
    width: auto;
    max-width: 100%;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    transition: all 0.2s ease 0s;
}

#header .header-menu .header-menu__title {
    color:#fff;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    transition: all 0.2s ease 0s;
}

#header .header-menu .header-menu__title.esp {
    font-size: 14px;

}

#header .header-menu a:hover .header-menu__title,
#header .header-menu a:hover .header-menu__image img {
    opacity: 0.75;
}

#header .header-menu li a:hover {
    text-decoration: none;
}

.mobile-menu-open #header .header-nav {
    right: 0;
}

#header a.btn-close-menu {
    color: #fff;
    display: block;
    font-size: 24px;
    height: auto;
    line-height: 1;
    padding: 10px;
    position: absolute;
    right: 12px;
    text-decoration: none;
    top: 8px;
    transition: all 0.2s ease 0.2s;
    width: auto;
    z-index: 112;
}

.myicon-globe-ja {
    background: url(/assets/img/common/myicon-ja-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 40px;
    height: 40px;
    margin-top: 24.2px;
}

.myicon-globe-en {
    background: url(/assets/img/common/myicon-en-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 40px;
    height: 40px;
    margin-top: 24.2px;
}

.myicon-globe-zh {
    visibility: hidden;
    background: url(/assets/img/common/myicon-zh-black.png) top left no-repeat;
    background-size: 0px 0px;
    width: 40px;
    height: 40px;
    margin-top: 24.2px;
}

.myicon-globe-kr {
    background: url(/assets/img/common/myicon-kr-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 40px;
    height: 40px;
    margin-top: 24.2px;
}

.myicon-globe-esp {
    background: url(/assets/img/common/myicon-esp-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 40px;
    height: 40px;
    margin-top: 24.2px;
}

.myicon-globe-pt {
    background: url(/assets/img/common/myicon-pt-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 40px;
    height: 40px;
    margin-top: 24.2px;
}

.myicon-globe-tr {
    background: url(/assets/img/common/myicon-tr-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 40px;
    height: 40px;
    margin-top: 24.2px;
}

.myicon-globe-de {
    background: url(/assets/img/common/myicon-de-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 40px;
    height: 40px;
    margin-top: 24.2px;
}

.myicon-globe-fr {
    background: url(/assets/img/common/myicon-fr-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 40px;
    height: 40px;
    margin-top: 24.2px;
}

.myicon-rounded-envelope {
    background: url(/assets/img/common/myicon-rounded-envelope-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 150px;
    height: 40px;
    margin-top: 24.2px;
    padding-top: 10px;
    padding-left: 46px;
    float: left;
}

.myicon-rounded-envelope-en {
    background: url(/assets/img/common/myicon-rounded-envelope-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 130px;
    height: 40px;
    margin-top: 24.2px;
    padding-top: 10px;
    padding-left: 46px;
    float: left;
}

.myicon-rounded-envelope-esp {
    background: url(/assets/img/common/myicon-rounded-envelope-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 150px;
    height: 40px;
    margin-top: 24.2px;
    padding-top: 10px;
    padding-left: 46px;
    float: left;
}

.myicon-rounded-envelope-cn {
    background: url(/assets/img/common/myicon-rounded-envelope-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 120px;
    height: 40px;
    margin-top: 24.2px;
    padding-top: 10px;
    padding-left: 46px;
    float: left;
}

.myicon-rounded-envelope-kr {
    background: url(/assets/img/common/myicon-rounded-envelope-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 120px;
    height: 40px;
    margin-top: 24.2px;
    padding-top: 10px;
    padding-left: 46px;
    float: left;
}

.myicon-rounded-envelope-pt {
    background: url(/assets/img/common/myicon-rounded-envelope-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 130px;
    height: 40px;
    margin-top: 24.2px;
    padding-top: 10px;
    padding-left: 46px;
    float: left;
}

.myicon-rounded-envelope-tr {
    background: url(/assets/img/common/myicon-rounded-envelope-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 130px;
    height: 40px;
    margin-top: 24.2px;
    padding-top: 10px;
    padding-left: 46px;
    float: left;
}

.myicon-rounded-envelope-de {
    background: url(/assets/img/common/myicon-rounded-envelope-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 130px;
    height: 40px;
    margin-top: 24.2px;
    padding-top: 10px;
    padding-left: 46px;
    float: left;
}

.myicon-rounded-envelope-fr {
    background: url(/assets/img/common/myicon-rounded-envelope-black.png) top left no-repeat;
    background-size: 40px 40px;
    width: 130px;
    height: 40px;
    margin-top: 24.2px;
    padding-top: 10px;
    padding-left: 46px;
    float: left;
}

.myicon-rounded-envelope:hover {
    background: url(/assets/img/common/myicon-rounded-envelope.png) top left no-repeat;
    background-size: 40px 40px;
}
.myicon-rounded-envelope-en:hover {
    background: url(/assets/img/common/myicon-rounded-envelope.png) top left no-repeat;
    background-size: 40px 40px;
}
.myicon-rounded-envelope-cn:hover {
    background: url(/assets/img/common/myicon-rounded-envelope.png) top left no-repeat;
    background-size: 40px 40px;
}
.myicon-rounded-envelope-kr:hover {
    background: url(/assets/img/common/myicon-rounded-envelope.png) top left no-repeat;
    background-size: 40px 40px;
}
.myicon-rounded-envelope-esp:hover {
    background: url(/assets/img/common/myicon-rounded-envelope.png) top left no-repeat;
    background-size: 40px 40px;
}
.myicon-rounded-envelope-pt:hover {
    background: url(/assets/img/common/myicon-rounded-envelope.png) top left no-repeat;
    background-size: 40px 40px;
}
.myicon-rounded-envelope-tr:hover {
    background: url(/assets/img/common/myicon-rounded-envelope.png) top left no-repeat;
    background-size: 40px 40px;
}
.myicon-rounded-envelope-de:hover {
    background: url(/assets/img/common/myicon-rounded-envelope.png) top left no-repeat;
    background-size: 40px 40px;
}
.myicon-rounded-envelope-fr:hover {
    background: url(/assets/img/common/myicon-rounded-envelope.png) top left no-repeat;
    background-size: 40px 40px;
}

.myicon-pdf {
    background: url(/assets/img/common/myicon-pdf.png) top left no-repeat;
    background-size: 17px 23px;
    width: 17px;
    height: 23px;
}

.mobile-menu-open #header .header-content {
    opacity: 1;
}

.mobile-menu-open #go-top {
    visibility: hidden;
}

.mobile-menu-open #header {
    height: auto;
}

.mobile-menu-open #header .header-top-menu {
    right: 0;
}

#footer {
    background: #fff;
    color: #666;
    font-size: 14px;
    border-top: 1px solid #e60012;
    margin-top: 200px;
}

#footer a {
    color: #666;
}

#footer a:hover {
    color: #e50012;
    text-decoration: underline;
}

#footer .footer-bottom {
    padding: 25px 0 26px 0;
}

#footer .footer-bottom .footer-menu {
    float: left;
    margin: 0;
}

#footer .footer-bottom .footer-menu li {
    float: left;
    padding: 0 30px 0 0;
    margin: 0;
    line-height: 1.1;
}

#footer .footer-bottom .copy {
    float: right;
    margin: 0;
    line-height: 1.1;
}

#go-top {
    position: absolute;
    right: 0;
    bottom: 0;
    line-height: 1;
    width: 72px;
    height: 72px;
    border: 2px solid #e60012;
    background-color: #fff;
    color: #e60012;
    font-size: 46px;
    text-align: center;
    line-height: 72px;
    text-decoration: none;
    right: 80px;
    bottom: 28px;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 99;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

#go-top:hover {
    background-color: #e60012;
    color: #fff;
}

#go-top.in {
    visibility: visible;
    opacity: 1;
}

#go-top.fixed {
    position: fixed;
    bottom: 10px;
    right: 10px;
}


/*Main content*/

.s-title {
    font-size: 40px;
    font-weight: normal;
    line-height: 1.2;
    margin: 0 0 50px;
    text-align: center;
}

.s-cover {
    position: relative;
}

.s-cover__main {
    position: relative;
    z-index: 4;
    margin: 0 0 80px;
    padding: 0;
    width: 100%;
    height: auto;
    background: #000;
}

.s-cover__main video {
    display: block;
    height: 100%;
    max-height: min( 1080px, calc( 100vh - 84px));
    width: auto;
    max-width: 100%;
    margin: 0 auto;
}

.s-cover__main .video {
    pointer-events: none;
    display: block;
    height: 100%;
    max-height: min(1080px, calc(100vh - 84px));
    width: auto;
    max-width: 100%;
    margin: 0 auto;
    width: 100%;
    aspect-ratio: 16 / 9;
}

.s-cover .s-cover__title {
    position: absolute;
    color: #000;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.25;
    margin: 0 0 0 0;
    left: 35px;
    top: 37px;
    text-shadow: 1px 2px 3px rgba(255, 255, 255, 0.5);
}

.s-cover .swiper-container {
    padding-bottom: 56px;
}

.s-cover .swiper-slide {
    position: relative;
}

.s-cover .s-slide {
    background-position: center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
    height: 700px;
    width: 100%;
}

.s-cover .slide-1 .s-slide {
    background-image: url(/assets/img/top/slide-1.jpg);
}

.s-cover .slide-2 .s-slide {
    background-image: url(/assets/img/top/slide-2.jpg);
}

.s-cover .slide-3 .s-slide {
    background-image: url(/assets/img/top/slide-3.jpg);
    background-position: center top;
}

.s-cover .slide-4 .s-slide {
    background-image: url(/assets/img/top/slide-4.jpg);
}

.s-cover .slide-5 .s-slide {
    background-image: url(/assets/img/top/slide-5.jpg);
}

.s-cover .slide-6 .s-slide {
    background-image: url(/assets/img/top/slide-6.jpg);
}

.s-cover .slide-7 .s-slide {
    background-image: url(/assets/img/top/slide-7.jpg);
}

.s-cover .slide-8 .s-slide {
    background-image: url(/assets/img/top/slide-8.jpg);
}

.s-cover .slide-9 .s-slide {
    background-image: url(/assets/img/top/slide-9.jpg);
}

.s-cover .slide-1 .s-cover__title {
    left: 35px;
    top: auto;
    bottom: 50px;
}

.s-cover .slide-1 .s-cover__title span {
    display: block;
    font-family: 'Helvetica Neue LT Std Bold', 'Helvetica Neue LT Std', "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 65px;
    line-height: 1.15;
    margin-bottom: 14px;
}

.swiper-container-horizontal > .swiper-pagination-bullets {
    bottom: 23px;
}

.swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    display: inline-block;
    border-radius: 100%;
    background: #ccc;
    opacity: 1;
}

.swiper-pagination-bullet-active {
    opacity: 1;
    background: #e60012;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 5px;
}

.s-main-products {
    padding-top: 0;
    padding-bottom: 115px;
}

.s-main-products .s-title {
    font-size: 42px;
    font-weight: 400;
    text-align: center;
    line-height: 1.35;
    margin: 0;
    color: #000;
    font-family: 'Times LT Std';
}

.s-main-products .s-main-products-list {
    max-width: 982px;
    margin: 0 auto 40px auto;
}

.s-main-products-list .product-item {
    float: left;
    max-width: 450px;
    width: 45.825%;
    margin: 0 8.35% 50px 0;
}

.s-main-products-list .product-item:nth-of-type(2n) {
    margin-right: 0;
}

.s-main-products-list .product-image {
    display: block;
    overflow: hidden;
    margin: 0 0 9px 0;
}

.s-main-products-list .product-image img {
    width: auto;
    max-width: 100%;
    -webkit-transition: all 0.45s ease 0s;
    -moz-transition: all 0.45s ease 0s;
    -o-transition: all 0.45s ease 0s;
    -ms-transition: all 0.45s ease 0s;
    transition: all 0.45s ease 0s;
}

.s-main-products-list .product-image a:hover img {
    opacity: 0.7;
    transform: scale(1.1);
}

.s-main-products-list .product-info {
    margin: 0 4.88% 0 0;
    padding: 0 0 0 14px;
    border-left: 5px solid #e50012;
    color: #E50012;
}

.s-main-products-list .product-item:nth-of-type(2) .product-info {
    color: #002e7e;
    border-left-color: #002e7e;
}

.s-main-products-list .product-item:nth-of-type(3) .product-info {
    color: #00633d;
    border-left-color: #00633d;
}

.s-main-products-list .product-info .s-title {
    font-size: 40px;
    text-align: left;
    font-family: 'Helvetica Neue LT Std Bold', "Helvetica Neue", Helvetica, Arial, sans-serif;
    margin: 0;
    color: inherit;
    line-height: 1.2;
}

.s-main-products-list .product-description {
    color: #000;
    margin: 0;
    padding: 0;
    height: 24px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.s-main-products-list .product-footer {
    margin: 22px 0 0 0;
    padding: 0 0 2px 0;
    height: 43px;
}

.s-main-products-list .product-footer .btn {
    position: relative;
    width: 48.655%;
    margin-right: 2.69%;
    height: 41px;
    background-color: #fff;
    color: inherit;
    text-align: center;
    border: 1px solid #ccc;
    padding: 0 40px;
    line-height: 37px;
}

.s-main-products-list .product-footer .btn span {
    color: #000;
}

.s-main-products-list .product-footer .btn:nth-of-type(2n) {
    margin-right: 0;
}

.s-main-products-list .product-footer .btn i {
    position: absolute;
    font-size: 20px;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: inherit;
}

.s-main-products-list .product-footer .btn:hover {
    border: 1px solid #E50012;
    background-color: #E50012;
}

.s-main-products-list .product-footer .btn:hover i {
    color: #fff;
}

.s-main-products-list .product-footer .btn:hover span {
    color: #fff;
}

.s-main-products-list .product-item:nth-of-type(2) .product-footer .btn:hover {
    border: 1px solid #002e7e;
    background-color: #002e7e;
}

.s-main-products-list .product-item:nth-of-type(3) .product-footer .btn:hover {
    border: 1px solid #00633d;
    background-color: #00633d;
}

.s-main-products-list .product-item.item-new .product-footer .btn {
    display: inline-block;
    vertical-align: bottom;
    position: relative;
    width: auto;
    margin-right: 0;
    height: auto;
    background-color: transparent;
    color: inherit;
    text-align: center;
    border: none;
    padding: 0 0;
    font-size: 14px;
    line-height: 1.5;
    margin: 12px 0 0 0;
}

.s-main-products-list .product-item.item-new .product-footer .btn span {
    color: #000;
}

.s-main-products-list .product-item.item-new .product-footer .btn:nth-of-type(2n) {
    margin-right: 0;
}

.s-main-products-list .product-item.item-new .product-footer .btn i {
    position: relative;
    font-size: 20px;
    right: auto;
    top: auto;
    transform: translateY(0);
    color: inherit;
    vertical-align: middle;
    margin-right: 5px;
}

.s-main-products-list .product-item.item-new .product-footer .btn:hover {
    border: none;
    background-color: transparent;
}

.s-main-products-list .product-item.item-new .product-footer .btn:hover i {
    color: inherit;
}

.s-main-products-list .product-item.item-new .product-footer .btn:hover span {
    color: inherit;
}


/* ------------------------------------
 * TOPページ 第2階層 扉ページのカテゴリーメニュー
 * --------------------------------- */

.s-main-categories {
    padding: 0;
}

body:not(.home-page) .s-main-categories {
    margin-top: -45px;
}

.recruit-page .s-main-categories {
    border-bottom: 1px solid #e50012;
}

.s-main-categories-list .category-item {
    position: relative;
    height: 320px;
    -webkit-transition: all 0.35s ease 0s;
    -moz-transition: all 0.35s ease 0s;
    -o-transition: all 0.35s ease 0s;
    -ms-transition: all 0.35s ease 0s;
    transition: all 0.35s ease 0s;
}

.s-main-categories-list .category-item.type-main {
    height: 400px;
}

.s-main-categories-list .category-image {
    position: relative;
    float: left;
    width: 50%;
    height: 100%;
    height: 320px;
    background-position: center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
    -webkit-transition: all 0.35s ease 0s;
    -moz-transition: all 0.35s ease 0s;
    -o-transition: all 0.35s ease 0s;
    -ms-transition: all 0.35s ease 0s;
    transition: all 0.35s ease 0s;
    z-index: 5;
}

.s-main-categories-list .category-item.type-main .category-image {
    position: relative;
    float: none;
    width: 100%;
    height: 400px;
}

.s-main-categories-list .category-item.type-2 .category-image {
    float: right;
}

.s-main-categories-list .category-item.item-1 .category-image {
    background-image: url(/assets/img/top/img0.jpg);
}

.s-main-categories-list .category-item.item-2 .category-image {
    background-image: url(/assets/img/top/img1.jpg);
}

.s-main-categories-list .category-item.item-3 .category-image {
    background-image: url(/assets/img/top/img2.jpg);
}

.s-main-categories-list .category-item.item-4 .category-image {
    background-image: url(/assets/img/top/img3.jpg);
}

.s-main-categories-list .category-item.item-5 .category-image {
    background-image: url(/assets/img/top/img4.jpg);
}

.s-main-categories-list .category-item.item-6 .category-image {
    background-image: url(/assets/img/top/img5.jpg);
}

.s-main-categories-list .category-item.item-7 .category-image {
    background-image: url(/assets/img/top/img6.jpg);
}

.s-main-categories-list .category-item.item-8 .category-image {
    background-image: url(/assets/img/top/img7.jpg);
}

.s-main-categories-list .category-item.item-9 .category-image {
    background-image: url(/assets/img/top/img8.jpg);
}

/* network */

.column-box-network {
	display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.column-box-item-network {
	width: 32%;
	margin-right: 2%;
}

.column-box-item-network:last-child {
	margin-right: 0;
}

/* company */

.company-page .s-main-categories-list .category-item.item-2 .category-image {
    background-image: url(/assets/img/company/img_01.jpg);
}

.company-page .s-main-categories-list .category-item.item-3 .category-image {
    background-image: url(/assets/img/company/img_02.jpg);
}

.company-page .s-main-categories-list .category-item.item-4 .category-image {
    background-image: url(/assets/img/company/img_03.jpg);
}

.company-page .histry-list.is_link a {
    text-decoration: underline;
}


/* recruit */

.recruit-page .s-main-categories-list .category-item.item-1 .category-image {
    background-image: url(/assets/img/recruit/rec-img01.png);
}

.recruit-page .s-main-categories-list .category-item.item-2 .category-image {
    background-image: url(/assets/img/recruit/rec-img02.png);
}

.recruit-page .s-main-categories-list .category-item.item-3 .category-image {
    background-image: url(/assets/img/recruit/rec-img03.png);
}

.recruit-page .s-main-categories-list .category-item.item-4 .category-image {
    background-image: url(/assets/img/recruit/rec-img04.png);
}

.recruit-page .s-main-categories-list .category-item.item-5 .category-image {
    background-image: url(/assets/img/recruit/rec-img05.png);
}

.recruit-page .s-main-categories-list .category-item.item-6 .category-image {
    background-image: url(/assets/img/recruit/rec-img06.png);
}

.recruit-page .s-main-categories-list .category-item.item-7 .category-image {
    background-image: url(/assets/img/recruit/rec-img07.png);
}


.s-main-categories-list .category-content {
    position: relative;
    float: left;
    width: 50%;
    height: 100%;
    height: 320px;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    flex-direction: column;
    background-color: #fff;
    -webkit-transition: all 0.35s ease 0s;
    -moz-transition: all 0.35s ease 0s;
    -o-transition: all 0.35s ease 0s;
    -ms-transition: all 0.35s ease 0s;
    transition: all 0.35s ease 0s;
    z-index: 10;
}

.s-main-categories-list .category-content:before {
    content: "";
    position: absolute;
    left: -34px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-top: 34px solid transparent;
    border-bottom: 34px solid transparent;
    border-right: 34px solid #fff;
    -webkit-transition: all 0.35s ease 0s;
    -moz-transition: all 0.35s ease 0s;
    -o-transition: all 0.35s ease 0s;
    -ms-transition: all 0.35s ease 0s;
    transition: all 0.35s ease 0s;
    z-index: 10;
}

.s-main-categories-list a:hover .category-content:before {
    border-right: 34px solid #E60012;
}

.s-main-categories-list .category-item.type-2 .category-content:before {
    content: "";
    position: absolute;
    left: auto;
    right: -34px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-top: 34px solid transparent;
    border-bottom: 34px solid transparent;
    border-left: 34px solid #fff;
    border-right: none;
}

.s-main-categories-list .category-item.type-2 a:hover .category-content:before {
    border-left: 34px solid #E60012;
}

.s-main-categories-list .category-item.type-main .category-content {
    position: relative;
    float: none;
    width: 540px;
    height: 300px;
    position: absolute;
    right: 45px;
    top: 50%;
    transform: translateY(-50%);
}

.s-main-categories-list .category-item.type-main .category-content:before {
    content: none;
    display: none;
}

.s-main-categories-list .s-title {
    font-size: 46px;
    color: #E60012;
    margin: 0 0 15px 0;
    -webkit-transition: all 0.35s ease 0s;
    -moz-transition: all 0.35s ease 0s;
    -o-transition: all 0.35s ease 0s;
    -ms-transition: all 0.35s ease 0s;
    transition: all 0.35s ease 0s;
    font-family: 'Times LT Std';
}

.s-main-categories-list .category-content p {
    margin: 0;
    padding: 0;
    color: #333;
    -webkit-transition: all 0.35s ease 0s;
    -moz-transition: all 0.35s ease 0s;
    -o-transition: all 0.35s ease 0s;
    -ms-transition: all 0.35s ease 0s;
    transition: all 0.35s ease 0s;
}

.s-main-categories-list .category-content .details {
    color: #000;
    margin: 18px 0 0 0;
    padding: 0;
    -webkit-transition: all 0.35s ease 0s;
    -moz-transition: all 0.35s ease 0s;
    -o-transition: all 0.35s ease 0s;
    -ms-transition: all 0.35s ease 0s;
    transition: all 0.35s ease 0s;
}

.s-main-categories-list .category-content .details i {
    color: #E60012;
    font-size: 20px;
    vertical-align: middle;
    margin: 0 4px 0 0;
    -webkit-transition: all 0.35s ease 0s;
    -moz-transition: all 0.35s ease 0s;
    -o-transition: all 0.35s ease 0s;
    -ms-transition: all 0.35s ease 0s;
    transition: all 0.35s ease 0s;
}

.s-main-categories-list .category-item a {
    color: inherit;
    -webkit-transition: all 0.35s ease 0s;
    -moz-transition: all 0.35s ease 0s;
    -o-transition: all 0.35s ease 0s;
    -ms-transition: all 0.35s ease 0s;
    transition: all 0.35s ease 0s;
}

.s-main-categories-list a:hover .category-image {
    opacity: 0.7;
}

.s-main-categories-list a:hover .category-content {
    background-color: #E60012;
}

.s-main-categories-list a:hover .s-title {
    color: #fff;
}

.s-main-categories-list a:hover .category-content p {
    color: #fff;
}

.s-main-categories-list a:hover .category-content .details {
    color: #fff;
}

.s-main-categories-list a:hover .category-content .details i {
    color: #fff;
}



/*  TOPページ ニュース*/
.s-main-news {
    min-height: 844px;
    background-image: url(/assets/img/top/news-bg.jpg);
    background-position: center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
    padding-top: 141px;
    padding-bottom: 118px;
}

.s-main-news .s-title {
    font-size: 46px;
    font-family: 'Times LT Std';
    color: #fff;
    text-align: left;
    margin: 0 0 5px 0;
}

.s-main-news .s-main-news-list {
    max-width: 660px;
    color: #fff;
    margin-left: 30px;
}

.s-main-news .s-main-news-list a {
    color: #E50012;
}

.s-main-news .s-main-news-list a:hover {
    text-decoration: none;
}

.s-main-news-list .news-item {
    font-size: 16px;
    border-bottom: 1px solid #fff;
    padding: 11px 0 13px 0;
}

.s-main-news-list .news-covid {
    font-size: 160px;
    border-bottom: 1px solid #000;
    padding: 11px 0 13px 0;
    text-align: center;
}

.s-main-news-list .news-covidtitle {
    color: #000;
    -webkit-text-fill-color: #000;
    text-align: center;
}

.s-main-news-list .news-item:nth-of-type(1) {
    border-top: 1px solid #fff;
}

.s-main-news-list .news-date {}

.s-main-news-list .news-title {
    color: #fff;
    -webkit-text-fill-color: #fff;
}

.s-main-news-list .news-title a,
.s-main-news-list .news-title a:visited {
    color: #fff;
    -webkit-text-fill-color: #fff;
}

.s-main-news-list .s-more {
    display: inline-block;
    color: #FCCF35;
    -webkit-text-fill-color: #FCCF35;
    margin: 7px 0 0 0;
}

.s-main-news-list .s-more i {
    font-size: 20px;
    vertical-align: middle;
    margin-right: 4px;
}

.s-main-news-list .s-more:hover {
    opacity: 0.7;
}

/*  TOPページ お問い合わせ*/

.s-main-contacts {
    padding-top: 98px;
    text-align: center;
}

.s-main-contacts.is_padding {
    padding-top: 18px;
}

.s-main-contacts .s-title {
    font-size: 28px;
    font-weight: 700;
    margin: 0 0 17px 0;
}

.s-main-contacts p {
    margin: 0 0 53px 0;
    color: #666;
}

.s-main-contacts .btn {
    width: 335px;
    height: 60px;
    background-color: #e60012;
    border: 1px solid #e60012;
    color: #fff;
    -webkit-text-fill-color: #fff;
    font-size: 18px;
    font-weight: 700;
    padding: 0 60px;
    line-height: 58px;
}

.s-main-contacts .btn:hover {
    background-color: #fff;
    color: #e60012;
    -webkit-text-fill-color: #e60012;
}

.s-main-contacts .btn i:first-child {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 37px;
}

.s-main-contacts .btn i:last-child {
    position: absolute;
    right: 9px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
}

/* ------------------------------------------------------------------------
 * 共通レイアウト
 * --------------------------------- --------------------------------- */
/* ------------------------------------
 * タイトル
 * --------------------------------- */

.s-heading {
    padding-top: 0;
    padding-bottom: 0;
    background-position: right center;
    background-repeat: no-repeat;
    height: 200px;
    border-top: 1px solid #e50012;
    border-bottom: 1px solid #e50012;
}

.s-heading .s-heading-content {
    height: 200px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    flex-direction: column;
    padding: 0 0;
}

.s-heading .s-title {
    color: #000;
    font-size: 38px;
    font-weight: bold;
    margin: 0;
    text-align: center;
}

.s-heading .s-title span {
    display: block;
    font-size: 21px;
    font-weight: 400;
    color: #E60012;
    font-family: 'Times LT Std';
    margin-top: 14px;
}

.products-page .s-heading {
    background-image: url(/assets/img/products/heading-products.jpg);
}

.products-page.needle .s-heading {
    background-image: url(/assets/img/products/heading-products_01.jpg);
}

.products-page.cam .s-heading {
    background-image: url(/assets/img/products/heading-products_02.jpg);
}

.products-page.roller .s-heading {
    background-image: url(/assets/img/products/heading-products_03.jpg);
}

.company-page .s-heading {
    background-image: url(/assets/img/company/heading-company.jpg);
    background-size: contain;
}

.strength-page .s-heading {
    background-image: url(/assets/img/strength/heading-strength.png);
    background-size: contain;
}

.network-page .s-heading {
    background-image: url(/assets/img/network/net_img_01.png);
    background-size: contain;
}

.news-page .s-heading {
    background-image: url(/assets/img/news/heading-news.png);
    background-size: contain;
}

.recruit-page .s-heading {
    background-image: url(/assets/img/recruit/heading-recruit.png);
    background-size: contain;
}

.recruit-person-page .s-heading {
    background-image: url(/assets/img/recruit/heading-recruit.png);
    background-size: contain;
}

.recruit-careers-page .s-heading {
    background-image: url(/assets/img/recruit/heading-recruit.png);
    background-size: contain;
}

.recruit-culture-page .s-heading {
    background-image: url(/assets/img/recruit/heading-recruit.png);
    background-size: contain;
}

.recruit-message-page .s-heading {
    background-image: url(/assets/img/recruit/heading-recruit.png);
    background-size: contain;
}

.development-page .s-heading {
    background-image: url(/assets/img/development/heading-randd.png);
    background-size: contain;
}

.plant-page .s-heading {
    background-image: url(/assets/img/plant/heading-plant.png);
    background-size: contain;
}

.recruit-person-page01 .s-heading {
    background-image: url(/assets/img/recruit/heading-recruit.png);
    background-size: contain;
}

.recruit-person-page01 .s-heading {
    background-image: url(/assets/img/recruit/heading-recruit.png);
    background-size: contain;
}

.sitemap-page .s-heading {
    background-image: url(/assets/img/strength/heading-strength.png);
    background-size: contain;
}

.privacy-page .s-heading {
    background-image: url(/assets/img/strength/heading-strength.png);
    background-size: contain;
}

.sustainability-page .s-heading {
    background-image: url(/assets/img/sustainability/heading-sustainability.png);
    background-size: contain;
}

.recruit-person-page01 .btnL {
    font-size: 27px;
    width: 360px;
    height: 90px;
    line-height: 90px;
}

.s-title-content {
    margin: 60px 0;
}

.s-title-content .s-title {
    color: #000;
    font-size: 32px;
    font-weight: 700;
    margin: 0;
    text-align: center;
    font-family: inherit;
}

.s-title-content .s-title span {
    display: block;
    font-size: 18px;
    font-weight: 400;
    color: #E60012;
    font-family: 'Times LT Std';
    margin-top: 14px;
}


/* state */

.s-title.is_left {
    text-align: left;
}

.s-title.is_margin {
    margin-bottom: 5px;
}


/* 下層共通タイトル */

.common-title01 {
    font-size: 18px;
    padding-left: 10px;
    border-left: 5px solid #e60012;
    margin-bottom: 30px!important;
    font-weight: bold!important;
}

.common-title01 a {
    color: #000;
}

.common-title01 a:hover {
    color: #e60012;
}

.common-title02 {
    font-size: 22px;
}

.common-title03 {
    font-size: 18px;
    text-align: center;
}

.common-title04 {
    font-size: 46px;
    color: #E60012;
    margin: 0 0 15px 0;
    -webkit-transition: all 0.35s ease 0s;
    -moz-transition: all 0.35s ease 0s;
    -o-transition: all 0.35s ease 0s;
    -ms-transition: all 0.35s ease 0s;
    transition: all 0.35s ease 0s;
    font-family: 'Times LT Std';
    font-weight: normal;
}

.common-title04 + .common-title02 {
    margin-top: -10px;
}

.common-title05 {
    margin-bottom: 5px;
}


/* ------------------------------------
 * ぱんくず
 * --------------------------------- */

.s-breadcrumbs {
    padding-top: 0;
    padding-bottom: 0;
    z-index: 99;
    max-width: 1280px;
    margin: 0 auto;
}

.s-breadcrumbs .s-breadcrumbs-content ul {
    list-style-type: none;
    margin: 10px 0 11px 0;
}

.s-breadcrumbs .s-breadcrumbs-content li {
    position: relative;
    display: inline-block;
    font-size: 14px;
    color: #666;
    margin-right: 1px;
    line-height: 1.5;
}

.s-breadcrumbs .s-breadcrumbs-content li:after {
    content: ">";
    display: inline-block;
    padding: 0 0 0 4px;
}

.s-breadcrumbs .s-breadcrumbs-content ul li:last-child:after {
    content: none;
}

.s-breadcrumbs .s-breadcrumbs-content li a:hover {
    text-decoration: underline;
}


/* ------------------------------------
 * テキスト
 * --------------------------------- */

.main-content .read-text {
    margin-bottom: 20px;
}

.main-content .read-text.last {
    margin-bottom: 0;
}

.main-content .content-box {
    margin-bottom: 60px;
}

.main-content .content-box.last {
    margin-bottom: 0;
}

.border-box {
    text-align: center;
    font-size: 20px;
    border: 1px solid #ccc;
    padding: 10px;
    width: 80%;
    margin: 0 auto;
}

/*indent*/
.text-indent01 {
    padding-left: 1em;
    text-indent: -1em;
}


/* ------------------------------------
 * 画像
 * --------------------------------- */

.img-wrap01 {
    text-align: center;
    margin: 30px auto 60px;
}

.img-wrap02 {
    margin-bottom: 1.6%;
}

.img-wrap02 img {
    width: 100%;
}

.img-wrap03 {
    position: relative;
}

.img-wrap03 img {
    width: 100%;
}

.column-box .column-box-item.img-wrap01 {
    margin: 0;
}


/* ------------------------------------
 * column
 * --------------------------------- */

.column-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.column-box-item {
    width: 50%;
}

.column-box-item img {
    width: 100%;
}

.column-box[data-type="5-5"] .column-box-item {
    width: 49.2%;
    margin-right: 1.5%;
}

.column-box[data-type="5-5"] .column-box-item:last-child {
    margin-right: 0;
}

.column-box[data-type="7-3"] .column-box-item:first-child {
    width: 70%;
    padding-right: 5%;
}

.column-box[data-type="7-3"] .column-box-item:last-child {
    width: 30%;
}

.column-box[data-type="8-2"] .column-box-item:first-child {
    width: 80%;
    padding-right: 5%;
}

.column-box[data-type="8-2"] .column-box-item:last-child {
    width: 20%;
}

.column-box[data-type="3-3-3"] .column-box-item {
    width: 32%;
    margin-right: 2%;
}

.column-box[data-type="3-3-3"] .column-box-item:last-child {
    margin-right: 0;
}

.column-box[data-type="10-5-5"] .column-box-item:first-child {
    width: 100%;
    margin-bottom: 2.875%;
    margin-right: 0;
}

.column-box[data-type="10-5-5"] .column-box-item:nth-child(2) {
    width: 48.3%;
    margin-right: 3.2%;
}

.column-box[data-type="10-5-5"] .column-box-item:last-child {
    width: 48.3%;
}

.column-box[data-type="5-5-10"] .column-box-item:first-child {
    width: 48.3%;
    margin: 0 3.2% 0 0;
}

.column-box[data-type="5-5-10"] .column-box-item:nth-child(2) {
    width: 48.3%;
    margin: 0;
}

.column-box[data-type="5-5-10"] .column-box-item:last-child {
    width: 100%;
    margin-top: 2.875%;
    margin-right: 0;
}

.column-box[data-type="5-5-5-5"] .column-box-item {
    width: 48%;
    margin-right: 4%;
}

.column-box[data-type="5-5-5-5"] .column-box-item:nth-child(even) {
    margin-right: 0;
}

.column-box[data-type="5-5-5-5"] .column-box-item:nth-child(n+3) {
    margin-top: 3.5%;
}

.column-box[data-type="2-2-2-2"] .column-box-item {
    width: 23.8%;
    margin-right: 1.6%;
}

.column-box[data-type="2-2-2-2"] .column-box-item:last-child {
    margin-right: 0;
}


/* column イレギュラー  */

/* 2カラムレイアウト */
.twocol-wrapper:after {
    content: "";
    display: block;
    clear: both;
}
.twocol-colum {
    float: left;
    width: 49.325%;
}
.twocol-colum:first-child {
    margin-right: 1.35%;
}

/* 4カラムレイアウト */
.fourcol-wrapper-2 {
    margin-top: 1.6%;
}

.fourcol-wrapper-2:after {
    content: "";
    display: block;
    clear: both;
}

.fourcol-colum-2 {
    float: left;
    width: 23.8%;
    margin-right: 1.6%;
}

.fourcol-colum-2:last-child {
    margin-right: 0;
}

/* w-twocol */
.w-twocol-wrapper:after {
    content: "";
    display: block;
    clear: both;
}

.w-twocol-colum-left {
    width: 68%;
    float: left;
    margin-right: 2%;
}

.w-twocol-colum-left.is_noborder {
    border: none;
}

.w-twocol-colum-right {
    width: 30%;
    float: left;
}

.w-twocol-colum-left.is_center,
.w-twocol-colum-left.is_quality {
    position: relative;
}

.w-twocol-colum-left.is_center > ul {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 80%;
    height: 5.3rem;
}

.w-twocol-colum-left.is_quality > ul {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 80%;
    height: 5.3rem;
}

.w-twocol-colum-left.is_center > ul > li {
    margin-bottom: 6px;
}

.w-twocol-colum-left.is_quality {
    width: 60%;
    margin: 2% 20%;
}

/* w-twocol-02 */
.w-twocol-wrapper-02:after {
    content: "";
    display: block;
    clear: both;
}

.w-twocol-colum-left-02 {
    width: 100%;
    float: left;
    margin-right: -250px;
    padding-right: 250px;
}

.w-twocol-colum-right-02 {
    width: 230px;
    float: right;
}

.w-twocol-colum-right-02 img {
    width: 100%;
    margin-bottom: 5%;
    min-height: 146px;
    min-width: 230px;
}


/* ------------------------------------
 * table
 * --------------------------------- */
/* ------------------------------------
 * table scroll
 * --------------------------------- */

.sp-scroll-table-wrap + .sp-scroll-table-wrap {
    margin-top: 2.5em;
}


/* ------------------------------------
 * ローカルナビ
 * --------------------------------- */
.s-local-nav .columns-list {
    max-width: 958px;
    margin: 0 auto;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-flex-wrap:nowrap;
    -moz-flex-wrap:nowrap;
    -ms-flex-wrap:nowrap;
    flex-wrap:nowrap;
    margin-top: 30px;
}
.s-local-nav .columns-list .column {
    margin: 0 1.25% 0 0;
    width: 32.5%;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-flex-wrap:nowrap;
    -moz-flex-wrap:nowrap;
    -ms-flex-wrap:nowrap;
    flex-wrap:nowrap;
    -webkit-align-items: center;
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center;
}
.s-local-nav .columns-list .column:last-child {
    margin-right: 0;
}
.s-local-nav .local-btn {
    background-color: #fff;
    border: 1px solid #ccc;
    text-align: center;
    font-size: 16px;
    color: #000;
    padding: 5px;
    margin: 0 0.96% 0 0;
    width: 100%;
    height: 100%;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-flex-wrap:nowrap;
    -moz-flex-wrap:nowrap;
    -ms-flex-wrap:nowrap;
    flex-wrap:nowrap;
    -webkit-align-items: center;
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
    word-break: break-all;
    transition: all 0.2s ease;
}
:lang(de) .s-local-nav .local-btn {
    font-size: 12px    
}


.s-local-nav .column-row .local-btn.active {
    pointer-events: none;
}
.s-local-nav .column.type-1 .local-btn.active,
.s-local-nav .column.type-1 .local-btn:hover,
.products-page .column.type-1 .column-row.active a {
    background-color: #e50012;
    color: #fff;
    -webkit-text-fill-color: #fff;
    border: 1px solid #e50012;
}

.s-local-nav .column.type-2 .local-btn.active,
.s-local-nav .column.type-2 .local-btn:hover,
.products-page .column.type-2 .column-row.active a {
    background-color: #002e7e;
    color: #fff;
    -webkit-text-fill-color: #fff;
    border: 1px solid #002e7e;
}
.s-local-nav .column.type-3 .local-btn.active,
.s-local-nav .column.type-3 .local-btn:hover,
.products-page .column.type-3 .column-row.active a {
    background-color: #00633d;
    color: #fff;
    -webkit-text-fill-color: #fff;
    border: 1px solid #00633d;
}
.s-local-nav .column.type-4 .local-btn.active,
.s-local-nav .column.type-4 .local-btn:hover,
.products-page .column.type-4 .column-row.active a {
    background-color: #e50012;
    color: #fff;
    -webkit-text-fill-color: #fff;
    border: 1px solid #e50012;
}
.s-local-nav .column.type-4 .main-row .local-btn {
    font-size: 13px;
    padding: 2.5px 10px;
}
.products-page .column.type-4 .column-row a {
    width: 100%;
}
/* 製品ページ  ローカルナビ*/
.products-page .column-row {
    width: 100%;
}
.products-page .column-row:first-child {
    margin-bottom: 5px;
}
.products-page .column-row:nth-child(2) {
    display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-flex-wrap:nowrap;
    -moz-flex-wrap:nowrap;
    -ms-flex-wrap:nowrap;
    flex-wrap:nowrap;
    -webkit-align-items: center;
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center;
}
.products-page .column-row:nth-child(2) a {
    width: 48.9%;
}
.products-page .column-row:nth-child(2) a:last-child {
    margin-right: 0;
}
.products-page .s-local-nav .columns-list .column {
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    text-align: center;
    -webkit-align-items: unset;
    -ms-flex-align: unset;
    -webkit-box-align: unset;
    align-items: unset;
}
.s-local-nav .local-btn {
    padding: 10px;
}
.products-page .column-row:nth-child(2) .local-btn {
    padding: 10px;
    margin-right: 1.9%;
}
.products-page .column-row.active {
}
/* ------------------------------------
 * default table
 * --------------------------------- */

.default-table > dl {
    border-top: 1px solid #ccc;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    margin: 0;
}

.default-table > dl:last-child {
    border-bottom: 1px solid #ccc;
}

.default-table > dl > dt,
.default-table > dl > dd {
    padding: 20px;
}

.default-table > dl > dt {
    font-weight: bold;
    width: 15%;
    min-width: 140px;
}

.default-table > dl > dd {
    margin: 0;
}

.default-table > dl > dd a {
    display: block;
}

.default-table > dl > dd:nth-child(3) {
    width: 30%;
    min-width: 285px;
    margin-left: auto;
}

.default-table > dl > dd > ul > li {
    float: left;
    width: 33.333%;
}

.default-table > dl > dd > ul:after {
    content: "";
    display: block;
    clear: both;
}

.default-table > dl > dd > img {
    width: 100%;
}

.default-table-list dl {
    margin-top: 0;
    padding-left: 20px;
}

.default-table-list .title {
    font-weight: bold;
    position: relative;
    padding-left: 20px;
    margin-bottom: 5px;
}

.default-table-list .title::before {
    font-weight: bold;
    position: absolute;
    content: '●';
    top: 0;
    left: 0;
}

.default-table-list dt {
    font-weight: bold;
}

.default-table-list dd {
    margin: 0 0 10px 20px;
}

.default-table-list dt + dt {
    margin-top: 10px;
}

.default-table-list .text-mark-decimal {
    position: relative;
    padding-left: 20px;
}

.default-table-list .text-mark-decimal::before {
    position: absolute;
    content: '・';
    top: 0;
    left: 0;
}


/*  会社概要*/

.default-table.is_profile > dl > dd {
    width: 85%;
}


/* 採用情報  NEWS */

.default-table.is_recruit_news {
    width: 85%;
    margin: 0 auto;
}

.default-table.is_recruit_news > dl > dt {
    width: 22%;
}

.default-table.is_recruit_news > dl > dd {
    width: 78%;
}


/*News*/

.default-table.is_news > dl > dt {
    width: 18%;
}

.default-table.is_news > dl > dd {
    width: 82%;
}

/* ------------------------------------
 * リスト
 * --------------------------------- */

.list-mark-decimal li {
    position: relative;
    padding-left: 15px;
}

.list-mark-decimal li::before {
    position: absolute;
    content: '・';
    top: 0;
    left: 0;
}

.list-mark-kome li {
    position: relative;
    padding-left: 15px;
}

.list-mark-kome li::before {
    position: absolute;
    content: '※';
    top: 0;
    left: 0;
}

.list-mark-number {
    counter-reset: item;

}

.list-mark-number li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 10px;
}

.list-mark-number li:before {
    position: absolute;
    top: 0;
    left: 0;
    counter-increment: item;
    content: counter(item)'.';
}


/* ------------------------------------
 * btn
 * --------------------------------- */

.default-btn.btn {
    position: relative;
    background-color: #fff;
    color: inherit;
    text-align: center;
    border: 1px solid #ccc;
    padding: 10px 0;
    width: 200px;
    max-width: 100%;
    display: block;
}

.default-btn.btn i:last-child {
    position: absolute;
    right: 9px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    color: #E50012;
}

.default-btn.btn:hover {
    border: 1px solid #E50012;
    background-color: #E50012;
}

.default-btn.btn:hover i {
    color: #fff;
}

.default-btn.btn:hover span {
    color: #fff;
}


/* ------------------------------------
 * モーダルウィンドウ
 * --------------------------------- */

.modal-content-inner {
    display: none;
}

#colorbox .modal-content-inner {
    display: block;
}

.modal-content-inner {
    padding: 10px;
    font-size: 14px;
}

.modal-text {
    padding: 10px;
}

.modal-text dt {
    font-weight: bold;
}

.modal-text dd {
    margin: 0 0 20px 0;
}

.modal-text dd:last-child {
    margin: 0;
}


/* ------------------------------------
 * メッセージ
 * --------------------------------- */

.message-text-wrapper .message-title {
    font-size: 30px;
    margin: 0 0 20px 0;
    color: #E60012;
    text-align: center;
}

.message-text-wrapper .message-title.strong {
    font-size: 40px;
}

.message-text-wrapper .message-text {
    font-size: 20px;
    margin-bottom: 60px;
    font-weight: 600;
    text-align: center;
}

.message-text-wrapper .read-text:last-child {
    margin-top: 50px;
}



/* ------------------------------------------------------------------------
 * 下層 
 * --------------------------------- --------------------------------- */

/* ------------------------------------
 * s-strength-categories-list
 * --------------------------------- */

.s-strength-categories-list {
    margin-top: 30px;
}

.s-strength-categories-list .str-wrapper:after {
    content: "";
    display: block;
    clear: both;
}

.s-strength-categories-list .str-left {
    float: left;
    width: 84%;
}

.s-strength-categories-list .str-right {
    float: left;
    width: 16%;
}

/* ------------------------------------
 * s-development-categories-list
 * --------------------------------- */

.development-entry.bg {
    background-image: url(/assets/img/development/dev_img_01.png);
    background-size: contain;
    height: 0;
    width: 100%;
    padding-bottom: 41%;
}

.development-page .parent-box_float {
    position: absolute;
    z-index: 10;
    width: 100%;
}

.development-page .child-box_float {
    margin-top: 3.4%;
}

.development-page .child-box_float .s-title {
    color: #000;
    font-size: 38px;
    font-weight: bold;
    margin: 0;
    text-align: center;
}

.development-page .child-box_float .s-title span {
    display: block;
    font-size: 40px;
    font-weight: 500;
    color: #E60012;
    font-family: 'Times LT Std';
    margin-bottom: 10px;
}


/* ------------------------------------
 * s-plant-categories-list
 * --------------------------------- */

.plant-page .plant-menu {
    padding: 10px;
    overflow: hidden;
    position: relative;
}

.plant-page .plant-menu ul {
    list-style: none outside none;
    float: left;
    margin: 0 0 0 0;
    padding: 0;
    position: relative;
    left: 50%;
}

.plant-menu ul li {
    float: left;
    margin-right: 13px;
    margin-left: 13px;
    padding: 5px;
    position: relative;
    left: -50%;
}

.plant-page .plant-menu {
    padding: 10px;
    overflow: hidden;
    position: relative;
    margin-top: 20px;
    margin-bottom: 36px;
}

.plant-page .plant-menu li a:focus {
    text-decoration: none;
}

.plant-page .plant-menu li a:hover {
    color: #E50012;
}

.plant-page .plant-menu li a i {
    color: #E50012;
    font-size: 20px;
    vertical-align: -2px;
    margin: 0 4px 0 0;
}

.plant-page .plant-menu li a {
    color: #000;
    line-height: 1.25;
}

.plant-page .plant-menu li a.is_red {
    color: #E50012;
    pointer-events: none;
    cursor: auto;
}

/* ------------------------------------
 * recruit-person
 * --------------------------------- */

.recruit-person-page .person-title {
    padding-top: 8px;
    padding-bottom: 8px;
    background-color: #e50012;
    color: #fff;
    text-align: center;
    margin-bottom: 8px;
}

.recruit-person-page .person-name {
    text-align: center;
    line-height: 1.3;
    color: #000;
    font-size: 1em;
    font-weight: 700;
    margin-top: 12px;
    margin-bottom: 12px;
}

.recruit-person-page .person-year {
    text-align: center;
    line-height: 1.3;
    color: #666;
    font-size: 1em;
    font-weight: 700;
    margin-top: 8px;
    margin-bottom: 8px;
}

.recruit-person-page .person-detail {
    border-top: 1px solid #666;
    margin-top: 14px;
    padding-top: 9px;
    text-align: center;
}

.recruit-person-page .person-detail span {
    padding-left: 8px;
}

.recruit-person-page .person-detail i {
    color: #E60012;
    font-size: 20px;
    vertical-align: middle;
    margin: 0 4px 0 0;
    vertical-align: -3px;
}

.recruit-person-page .person-detail a {
    color: #000;
}

.recruit-person-page .person-detail a:hover {
    color: #E50012;
}


/* ------------------------------------
 * recruit-person01
 * --------------------------------- */

.recruit-person-page01 .plant-page .plant-menu {
    padding: 0;
    margin-top: 30px;
}

.recruit-person-page01 .s-title-content .s-title.myday span {
    font-size: 39px;
}

.recruit-person-page01 .s-title-content .s-title.myday {
    font-size: 15px;
}


/* my-day-jns */

.recruit-person-page01 .myday-jns span {
    display: inline-block;
    background-color: #E60012;
    padding: 7px 26px;
    color: #fff;
    width: 148px;
    text-align: center;
    vertical-align: middle;
}

.recruit-person-page01 .myday-jns span.is_wthite {
    color: #E60012;
    background-color: #fff;
    border: 1px solid #E60012;
    padding: 6px 25px;
}

.recruit-person-page01 .myday-jns .text {
    display: inline-block;
    padding-left: 20px;
}

.recruit-person-page01 .myday-jns li {
    margin-bottom: 22px;
    padding-top: 18px;
    border-top: 1px solid #ccc;
}

.recruit-person-page01 .myday-jns li:last-child {
    border-bottom: 1px solid #ccc;
    padding-bottom: 15px;
}

.recruit-person-page01 .person-spimg {
    display: none;
}

.recruit-person-page01 .facebook-icon {
    max-width: 98px;
}

.recruit-person-page01 .contact-colum .column-box-item {
    width: 34%;
}

.recruit-person-page01 .contact-colum .column-box-item:last-child {
    padding-top: 10px;
    width: 60%;
}

.recruit-person-page01 .contact-colum .column-box-item:last-child img {
    width: 80%;
}

table.requirement {
    width: 100%;
}

table.requirement,
table.requirement td,
table.requirement th {
    border: 1px solid #ccc;
    border-collapse: collapse;
}

table.requirement td,
table.requirement th {
    padding: 6px;
    height: 25px;
}

table.requirement td {
    text-align: left;
}

table.requirement td:nth-child(4) {
    width: 540px;
}

table.requirement.tb02 td:nth-child(3) {
    width: 360px;
}

table.requirement td:nth-child(1) {
    text-align: center;
}

table.requirement td.is_center {
    text-align: center;
}

table.requirement + table.requirement {
    margin-top: 2.5em;
}

table.requirement.tb03 {
    margin: 0 auto;
    width: 80%;
    table-layout: fixed;
}

table.requirement.tb03 td:nth-child(1) {
    text-align: left;
    width: 22%;
    font-weight: bold;
}



/* ------------------------------------
 * recruit-careers
 * --------------------------------- */

.recruit-careers-page .fw800 {
    font-weight: 800;
}

.twocol-wrapper.is_careers_top {
    padding-top: 20px;
}

.twocol-wrapper.is_careers_top .twocol-colum.is_left {
    display: inline-block;
    width: 35.325%;
    vertical-align: bottom;
}

.twocol-wrapper.is_careers_top .twocol-colum.is_right {
    display: inline-block;
    width: 62.325%;
    position: relative;
}

.twocol-wrapper.is_careers_top .twocol-colum.is_right img.teach-nishi {
    position: absolute;
    top: -19px;
    left: -380px;
}

.twocol-wrapper.is_careers_top .twocol-colum {
    float: none;
}

.twocol-wrapper.is_careers_top .twocol-colum:first-child {
    margin-right: 1.3%;
}

.twocol-wrapper.is_careers_top .twocol-colum.is_inner {
    float: left;
    text-align: center;
    margin-top: 6px;
}
.twocol-wrapper.is_careers_top .twocol-colum.is_inner p:lang(en) {
    font-size: 12px;
}

.twocol-wrapper.is_careers_top .twocol-colum.is_left.sp_only {
    display: none;
}

.recruit-careers-page .balloon-text-left .twocol-wrapper .twocol-colum img {
    width: 100%;
}

.careers-qbox-wrap.is_question {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

.recruit-person-page01 .careers-qbox-wrap.is_topborder {
    border-top: 1px solid #ccc;
    padding-top: 15px;
    position: relative
}

.recruit-person-page01 .careers-qbox-wrap.is_noicon {
    border-top: 1px solid #ccc;
    padding-top: 15px;
    height: 84px;
}

.recruit-person-page01 .careers-qbox-wrap.is_lastborder {
    border-bottom: 1px solid #ccc;
}

.recruit-person-page01 .careers-qbox-wrap.is_topborder:after {
    content: '';
    display: inline-block;
    width: 25px;
    height: 25px;
    vertical-align: middle;
    background: url(/assets/img/recruit/person/01/per01_img_04.png);
    background-size: 25px 25px;
    position: relative;
    top: -39px;
    left: 94%;
    z-index: -100;
}

.recruit-person-page01 .careers-qbox-wrap.is_topborder.minas:after {
    width: 25px;
    height: 5px;
    background: url(/assets/img/recruit/person/01/per01_img_03.png);
    background-size: 25px 5px;
}

.recruit-person-page01 .careers-qbox-wrap.is_topborder a {
    position: absolute;
    left: 2px;
    width: 100%;
}

.recruit-person-page01 .careers-qbox-wrap.is_topborder a:focus {
    text-decoration: none;
}

.recruit-person-page01 .careers-qbox-wrap.is_text {
    display: none;
    margin-top: 20px;
}

a.q-open:focus {
    text-decoration: none;
}

.careers-qbox-l.is_culture > p {
    color: black;
    font-weight: 600;
}


/* ------------------------------------
 * recruit-culture
 * --------------------------------- */

.recruit-culture-page .s-title-content .s-title.is_culture {
    font-size: 45px;
    color: #e50012;
}

.recruit-culture-page .s-title-content .s-title.is_culture span {
    font-size: 19px;
    font-weight: 600;
    color: #000;
}

.recruit-culture-page .s-title-content .s-title.is_culture {
    position: absolute;
    top: 44px;
    right: 0;
    margin: 0;
    left: 0;
}

.recruit-culture-page .s-title-content.is_margin {
    margin: 0px;
}

.recruit-culture-page .network-wrap {
    margin-bottom: 0px;
}

.recruit-culture-page .careers-qbox-wrap.is_question .careers-qbox-l.is_culture {
    vertical-align: baseline;
}

.recruit-culture-page .careers-qbox-wrap {
    margin-top: 14px;
    margin-bottom: 14px;
    padding-top: 14px;
    padding-bottom: 14px;
}


/* person */

.recruit-person-page01 .person-kanban {
    width: auto;
    position: absolute;
    top: 51px;
    right: 51px;
}

.recruit-person-page01 .person-kanban span {
    display: block;
}
.recruit-person-page01 .person-kanban .text01 {
    font-size: 34px;
    margin-bottom: 10px;
    font-weight: bold;
}
.recruit-person-page01 .person-kanban .text02 {
    font-size: 23px;
    margin-bottom: 5px;
}
.recruit-person-page01 .person-kanban .text03 {
    font-size: 16px;
}
.recruit-person-page01 .myday-jns .text {
    font-size: 17px;
    font-weight: 500;
    vertical-align: middle;
}
/*--------------------
 吹き出しを作る
--------------------*/

.balloon {
    margin: 40px 0;
    padding: 0 40px;
    position: relative;
}

.balloon:after,
.balloon:before {
    clear: both;
    content: "";
    display: block;
}

.balloon-image-left {
    position: absolute;
    left: 0;
    margin: 0;
    width: 60px;
    height: 60px;
}

.balloon-image-right {
    position: absolute;
    right: 0;
    margin: 0;
    width: 60px;
    height: 60px;
}

.balloon figure img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    margin: 0;
}

.balloon-image-description {
    padding: 5px 0 0;
    font-size: 13px;
    text-align: center;
}

.balloon-text-right {
    position: relative;
    margin-left: 40px;
    padding: 10px;
    padding-left: 26px;
    border: 1.5px solid #E50012;
    border-radius: 3px;
    float: left;
    width: 91%;
}

.balloon-text-left {
    position: relative;
    margin-right: 40px;
    padding: 18px;
    padding-left: 26px;
    padding-right: 26px;
    border: 1.5px solid #676767;
    border-radius: 3px;
    float: right;
    width: 91%;
}

.balloon p {
    margin: 0 0 20px;
}

.balloon p:last-child {
    margin-bottom: 0;
}


/* 会話 */

.balloon-text-right:before {
    position: absolute;
    content: '';
    border: 10px solid transparent;
    border-right: 10px solid #E50012;
    top: 15px;
    left: -20px;
}

.balloon-text-right:after {
    position: absolute;
    content: '';
    border: 10px solid transparent;
    border-right: 10px solid #fff;
    top: 15px;
    left: -18px;
}

.balloon-text-left:before {
    position: absolute;
    content: '';
    border: 10px solid transparent;
    border-left: 10px solid #676767;
    top: 15px;
    right: -21px;
}

.balloon-text-left:after {
    position: absolute;
    content: '';
    border: 10px solid transparent;
    border-left: 10px solid #fff;
    top: 15px;
    right: -19px;
}


/* 吹き出し - カスタム */

.careers-qbox-wrap:after {
    content: "";
    display: block;
    clear: both;
}

.careers-qbox-r {
    width: 50px;
    display: table-cell;
}

.careers-qbox-l {
    width: auto;
    display: table-cell;
    padding-left: 12px;
    vertical-align: middle;
}

.careers-qbox-l > p {
    font-size: 18px;
    font-weight: 500;
    color: #E50012;
}

.careers-qbox-l > p.is_black {
    color: #000;
    padding-bottom: 11px;
    font-weight: 400;
}

/* 吹き出し culture */
.careers-qbox-r.is_culture {
    width: 50px;
    display: table-cell;
}
.careers-qbox-l.is_culture {
    width: auto;
    display: table-cell;
    padding-left: 12px;
    vertical-align: bottom;
}
.careers-qbox-l.is_culture .culture-text {
    font-size: 18px;
    font-weight: normal;
    color: #000;
}
.s-main-contacts .btn i.form {
    background: url(/assets/img/common/myicon-rounded-envelope-white.png) top left no-repeat;
    background-size: 40px 40px;
    position: absolute;
    left: 18px;
    top: 10%;
    transform: translateY(-50%);
    font-size: 37px;
}
.s-main-contacts .btn i.form:hover {
    background: url(/assets/img/common/myicon-rounded-envelope.png) top left no-repeat;
    background-size: 40px 40px;
}

/* ------------------------------------
 * products
 * --------------------------------- */

.products-page .s-main-products {
    padding-bottom: 0;
}

.s-local-nav {
    padding-top: 56px;
    padding-bottom: 0;
}

.s-local-nav .columns-list {
    max-width: 958px;
    margin: 0 auto;
}

.s-local-nav .columns-list .column {
    float: left;
    margin: 0 1.25% 0 0;
    width: 32.5%;
}

.s-local-nav .columns-list .column:last-child {
    margin-right: 0;
}

.s-local-nav .column-row {
    margin: 0 0 3px 0;
	width: 100%;
}

.s-local-nav .column-row .btn {
    background-color: #fff;
    border: 1px solid #ccc;
    text-align: center;
    font-size: 16px;
    color: #000;
    height: 41px;
    width: 49.52%;
    padding: 0 10px;
    line-height: 37px;
    float: left;
    margin: 0 0.96% 0 0;
}

.s-local-nav .column-row .btn:last-child {
    margin-right: 0;
}

.s-local-nav .column-row.main-row .btn {
    float: none;
    width: 100%;
    height: 61px;
    line-height: 57px;
}

.s-local-nav .column-row.main-row .btn.twoline {
    line-height: 20px;
    padding-top: 6%;
}

.s-local-nav .column-row .btn.active {
    pointer-events: none;
}

.s-local-nav .column.type-1 .btn.active,
.s-local-nav .column.type-1 .btn:hover {
    background-color: #e50012;
    color: #fff;
    -webkit-text-fill-color: #fff;
    border: 1px solid #e50012;
}

.s-local-nav .column.type-2 .btn.active,
.s-local-nav .column.type-2 .btn:hover {
    background-color: #002e7e;
    color: #fff;
    -webkit-text-fill-color: #fff;
    border: 1px solid #002e7e;
}

.s-local-nav .column.type-3 .btn.active,
.s-local-nav .column.type-3 .btn:hover {
    background-color: #00633d;
    color: #fff;
    -webkit-text-fill-color: #fff;
    border: 1px solid #00633d;
}

.s-product-info {
    padding-top: 41px;
    padding-bottom: 0;
}

.s-product-info .center-content {
    max-width: 966px;
}

.s-product-info .s-title {
    font-size: 64px;
    font-family: 'Helvetica Neue LT Std Bold', 'Helvetica Neue LT Std', "Helvetica Neue", Helvetica, Arial, sans-serif;
    margin: 0;
    text-align: center;
}

.s-product-info span {
    display: block;
    text-align: center;
    color: #000;
    font-weight: 700;
}

.s-product-info .type {
    font-size: 32px;
    line-height: 1.3;
}

.s-product-info .type.red-text {
    color: #E50012;
}

.s-product-info .type.blue-text {
    color: #002E7E;
}

.s-product-info .type.green-text {
    color: #00633D;
}

.s-product-info .name {
    font-size: 18px;
    line-height: 1.8;
    margin: 0 0 33px 0;
}

.s-product-info p {
    text-align: justify;
    line-height: 1.9;
}

.s-products-list {
    padding-top: 62px;
}

.s-products-list .center-content {
    max-width: 966px;
}

.s-products-list .products-menu {
    margin: 0 0 78px 0;
}

.s-products-list .products-menu ul {
    list-style-type: none;
    margin: 0;
    text-align: center;
}

.s-products-list .products-menu li {
    position: relative;
    display: inline-block;
    color: #000;
    margin: 0 17px 10px 17px;
    line-height: 1.25;
}

.s-products-list .products-menu ul li:first-child {
    margin-left: 0;
}

.s-products-list .products-menu ul li:last-child {
    margin-right: 0;
}

.s-products-list .products-menu li a {
    color: #000;
    line-height: 1.25;
}

.s-products-list .products-menu li a i {
    font-size: 20px;
    vertical-align: -2px;
    margin: 0 4px 0 0;
    color: #000;
}

.s-products-list .products-menu li a:hover {
    color: #000;
}

.s-products-list.type-1 .products-menu li a i {
    color: #E50012;
}

.s-products-list.type-1 .products-menu li a:hover {
    color: #E50012;
}

.s-products-list.type-2 .products-menu li a i {
    color: #002E7E;
}

.s-products-list.type-2 .products-menu li a:hover {
    color: #002E7E;
}

.s-products-list.type-3 .products-menu li a i {
    color: #00633D;
}

.s-products-list.type-3 .products-menu li a:hover {
    color: #00633D;
}

.s-products-list .s-title {
    position: relative;
    font-size: 26px;
    font-weight: 400;
    margin: 0 0 69px 0;
    padding: 0 0 0 20px;
    text-align: left;
}

.s-products-list .s-title:before {
    content: "";
    display: inline-block;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-45%);
    width: 5px;
    height: 56px;
    background-color: #000;
}

.s-products-list .s-title.is_space {
    margin: 0 0 30px 0;
}

.s-products-list .s-title.is_space + p.is_half {
    width: 45.03%;
}

.s-products-list.type-1 .s-title:before {
    background-color: #E50012;
}

.s-products-list.type-1 .s-title.color-1:before {
    background-color: #E85382;
}

.s-products-list.type-1 .s-title.color-2:before {
    background-color: #EC6C00;
}

.s-products-list.type-1 .s-title.color-3:before {
    background-color: #0098D8;
}

.s-products-list.type-2 .s-title:before {
    background-color: #002E7E;
}

.s-products-list.type-3 .s-title:before {
    background-color: #00633D;
}

.s-products-list .s-title.caution-color {
    color: #E50012;
    font-weight: bold;
}

.s-products-list .s-title.caution-color::before {
    background-color: #E50012;
}

.s-products-list .products-group {}

.s-products-list .products-list {
    margin: 0 0 35px 0;
}

.s-products-list .products-list .product-item {
    float: left;
    width: 45.03%;
    margin: 0 9.94% 63px 0;
    border-top: 1px solid #ccc;
}


/* cam foller */

.cam-follower .s-products-list .products-list .product-item {
    float: none;
    width: 68%;
    margin: 0 auto 63px auto;
    border-top: 1px solid #ccc;
}

.cam-follower .s-products-list .products-list .product-item:nth-of-type(2n) {
    margin-right: auto;
}


/* cam foller end */

.s-products-list .products-list .product-item:nth-of-type(2n) {
    margin-right: 0;
}

.s-products-list .product-header {
    margin: 9px 0 5px 0;
}

.s-products-list .product-header span {
    display: block;
}

.s-products-list .product-title {
    font-size: 18px;
    font-weight: 700;
    color: #000;
}

.s-products-list .product-composition {
    font-size: 14px;
    line-height: 1.6;
}

.s-products-list .product-body {}

.s-products-list .product-body-item {
    float: left;
    width: 48.39%;
    margin: 0 3.22% 0 0;
}

.s-products-list .product-body .product-body-item:last-child {
    margin-right: 0;
}

.cam-follower .s-products-list .product-body-item {
    width: 34.4%;
}

.cam-follower .s-products-list .product-body-item:nth-child(2) {
    width: 62.3%;
}

.s-products-list .product-body-item-image {
    width: 100%;
    height: 100%;
    border: 1px solid #ccc;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    flex-direction: column;
    margin: 0 0 15px 0;
}

.s-products-list .product-body-item-image img {
    width: 100%;
    height: auto;
}

.s-products-list .product-body-item-image.type-scheme img {
    width: auto;
}

.s-products-list .product-body-item-image.type-scheme {
    padding: 10px;
}

.s-products-list .product-body-item-footer .btn {
    position: relative;
    background-color: #e6e6e6;
    width: 100%;
    height: 40px;
    line-height: 39px;
    text-align: center;
    padding: 0 10px;
    color: #000;
    font-size: 16px;
}

.s-products-list .product-body-item-footer .btn:hover {
    opacity: 0.7;
}

.s-products-list .product-body-item-footer .btn i {
    position: absolute;
    right: 23px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    color: #E50012;
}

.s-products-list .btn-wrapper {
    text-align: center;
    padding-top: 54px;
}

.s-products-list .btn-wrapper .btn {
    position: relative;
    width: 310px;
    height: 61px;
    border: 1px solid #ccc;
    text-align: center;
    background-color: #fff;
    font-size: 16px;
    color: #000;
}

.s-products-list .btn-wrapper .btn i {
    font-size: 20px;
    color: #000;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.s-products-list .btn-wrapper .btn + .btn {
    margin-left: 17px;
}

.s-products-list .btn-wrapper .btn {
    border: 1px solid #E50012;
}

.s-products-list .btn-wrapper .btn i {
    color: #E50012;
}

.s-products-list .btn-wrapper .btn:hover {
    background-color: #E50012;
    color: #fff;
}

.s-products-list .btn-wrapper .btn:hover i {
    color: #fff;
}

.products-page .s-main-contacts {
    display: none;
}






/* ------------------------------------
 * siteuse
 * --------------------------------- */

.siteuse-page .list-mark-decimal {
    margin-bottom: 30px;
}

.siteuse-page .list-mark-decimal.en {
    margin-bottom: 0px;
}
.siteuse-page .list-mark-decimal:last-child {
    margin-bottom: 0;
}

.siteuse-page .list-mark-kome.en {
    margin: 7px 0 30px;
}

/* ------------------------------------
 * sitemap
 * --------------------------------- */

.sitemap-page .common-title01 + .list-mark-decimal {
    margin: -10px 0 50px;
}

.sitemap-page .common-title01 + .list-mark-decimal li {
    margin-bottom: 5px;
}

.sitemap-page .common-title01 + .list-mark-decimal a {
    color: #000;
}

.sitemap-page .common-title01 + .list-mark-decimal a:hover {
    color: #e60012;
}

.sitemap-page .common-title01 + .list-mark-decimal ul {
    margin: 10px 0;
    font-size: 14px;
}

/* ------------------------------------
 * mail form
 * --------------------------------- */
.mailform-salse {
    text-align: center;
}
.checkbox-input.catalog {
    margin-top: 40px;
    margin-bottom: 30px;
    text-align: center;
}
.checkbox-input.catalog input[type="checkbox"] {
    margin-right: 5px;
}
.error_message {
    width: 80%;
    margin: 0 auto 2em;
    font-weight: bold;
    max-width: 960px;
}
.error_message li::before {
    content: '※';
    color: #E60012;
}
span.hissu {
    display: inline-block;
    color: #e70012;
    font-size: 20px;
}
.contact-text {
    width: 100%;
}

/* ------------------------------------
 * sustainability
 * --------------------------------- */

 .sustainability-page .plant-menu {
    max-width: 600px;
    margin: 0 auto 50px;
    padding: 10px;
    overflow: hidden;
    position: relative;
}

.sustainability-page .plant-menu ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    list-style: none outside none;
    margin: 0 0 0 0;
    padding: 0;
}

.sustainability-page .plant-menu ul li {
    margin-right: 13px;
    margin-left: 13px;
    padding: 5px;
    position: static;
}

.sustainability-page .plant-menu li a:focus {
    text-decoration: none;
}

.sustainability-page .plant-menu li a:hover {
    color: #E50012;
}

.sustainability-page .plant-menu li a i {
    color: #E50012;
    font-size: 20px;
    vertical-align: -2px;
    margin: 0 4px 0 0;
}

.sustainability-page .plant-menu li a {
    color: #000;
    line-height: 1.25;
}

.sustainability-page .plant-menu li a.is_red {
    color: #E50012;
    pointer-events: none;
    cursor: auto;
}

.sustainability-page .sustainability-inner {
    padding: 35px 0;
    margin-top: 35px;
    border-top: 1px solid #c0c0c0;
}

.sustainability-page .sustainability-title-wrap {
    position: relative;
}

.sustainability-page .sustainability-title {
    font-size: 30px;
    text-align: center;
    font-weight: 700;
    margin: 0 0 20px;
}

.sustainability-page .sustainability-title span {
    font-size: 28px;
    color: #E60012;
    font-family: 'Times LT Std';
    font-weight: 400;
}

.sustainability-page .sustainability-icon {
    position: absolute;
    top: 10px;
    right: 0;
}

.sustainability-page .sustainability-icon-img {
    display: block;
    max-width: 100%;
}

.sustainability-page .sustainability-title-label ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: -10px -10px 0 0;
}

.sustainability-page .sustainability-title-label li {
    font-size: 16px;
    color: #ffffff;
    text-align: center;
    min-width: 130px;
    padding: 5px 10px;
    margin: 10px 10px 0 0;
    border-radius: 25px;
}

.sustainability-page .sustainability-title-label.type-1 li {
    background: #dc0011;
}

.sustainability-page .sustainability-title-label.type-2 li {
    background: #d10067;
}

.sustainability-page .sustainability-title-label.type-3 li {
    background: #09882d;
}

.sustainability-page .sustainability-title-label.type-4 li {
    background: #ba0000;
}

.sustainability-page .sustainability-title-label.type-5 li {
    background: #cf4800;
}

.sustainability-page .sustainability-title-label.type-6 li {
    background: #dc0011;
    margin-top: 20px;
}

.sustainability-page .sustainability-title-label.type-7 li {
    background: #d10067;
    margin-top: 20px;
}

.sustainability-page .sustainability-title-label.type-8 li {
    background: #09882d;
    margin-top: 20px;
}

.sustainability-page .sustainability-title-label.type-9 li {
    background: #ba0000;
    margin-top: 20px;
}

.sustainability-page .sustainability-title-label.type-10 li {
    background: #cf4800;
    margin-top: 20px;
}

.sustainability-page .sustainability-catch {
    margin-bottom: 50px;
}

.sustainability-page .sustainability-catch img {
    display: block;
    max-width: 60%;
    margin: 0 auto 20px;
}

.sustainability-page .sustainability-catch p {
    text-align: center;
    margin: 0;
}

.sustainability-page a:not(#header .header-nav-menu > li > a div em).sustainability-link {
    color: #0000ff;
}

.sustainability-page a:not(#header .header-nav-menu > li > a div em).sustainability-link:hover {
    opacity: 0.7;
}