@charset "UTF-8";

/* -----------------------------------------------
Table of Contents (common css) [Thought of SMACSS + original]
--------------------------------------------------
0. Foundation
	 0-1. Reset (normalize.css + original)
	 0-2. Base
	 0-3. Config
1. Layout
	 1-1. #l-document
	 1-2. #l-header
	 1-3. #l-container
				1-3-1. #l-main
				1-3-2. #l-sub
	 1-4. #l-footer
	 1-5. #l-nav-global
2. Object
	 2-1. Component a.k.a Module [Thought of BEM + original]
				2-1-1.  Wrap     [wrp-***]
				2-1-2.  Box      [box-***]
				2-1-3.  Table    [tbl-***]
				2-1-4.  Headings [hdg-lv*]
				2-1-5.  Nav      [nav-***]
				2-1-6.  List     [lst-***]
				2-1-7.  Button   [btn-***]
				2-1-8.  Anchor   [acr-***]
				2-1-9.  Text     [txt-***]
				2-1-10. Icon     [icn-***]
				2-1-11. Label    [lbl-***]
				2-1-12. Form     [frm-***]
				2-1-13. Error    [err-***]
				2-1-14. UI
	 2-2. Utility
				2-2-1. clearfix
				2-2-2. margin,padding [mb10,pt20]
				2-2-3. Object-Oriented CSS
				2-2-4. Grid System [grid-***]
				2-2-5. WebFont [FontAwesome] http://fortawesome.github.io/Font-Awesome/icons/
	 2-3. State [is-***]
	 2-4. OverLayerConfig [z-index]
	 2-5. Project

-------------------------------------------------- */

/* -----------------------------------------------
 [0. Foundation]
-------------------------------------------------- */

/* 0-0. webfont
-------------------------------------------------- */
/*
This CSS resource incorporates links to font software which is the valuable copyrighted
property of Monotype Imaging and/or its suppliers. You may not attempt to copy, install,
redistribute, convert, modify or reverse engineer this font software. Please contact Monotype
Imaging with any questions regarding Web Fonts:  http://www.fonts.com
*/
@import url("https://fast.fonts.net/t/1.css?apiType=css&projectid=2d3ba1b8-45c7-48ae-aaa8-bae39ba84bfa");

@font-face {
  font-family: "Minion W01 Caption_i4";
  src: url("../fonts/80bce96f-4b1e-46ed-bfb5-aa38e8872541-.eot#iefix") format("eot")
}

@font-face {
  font-family: "Minion W01 Caption";
  src: url("../fonts/80bce96f-4b1e-46ed-bfb5-aa38e8872541-.eot#iefix");
  src: url("../fonts/80bce96f-4b1e-46ed-bfb5-aa38e8872541-.eot#iefix") format("eot"), url("../fonts/a8fcdbbe-f7ec-4b06-9dc6-4f52410657bd.woff2") format("woff2"), url("../fonts/06b9c6e8-5a04-48a2-a296-e8c20abb7795.woff") format("woff"), url("../fonts/e5019d39-8454-4f0a-9d49-3197c97a0739.ttf") format("truetype"), url("../fonts/4135ea82-4c6b-4a74-b6e7-c77754d08e78.svg#4135ea82-4c6b-4a74-b6e7-c77754d08e78") format("svg");
  font-weight: 400;
  font-style: italic;
}

@font-face {
  font-family: 'Source Sans Pro', sans-serif;
}

@font-face {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 100;
  font-style: normal;
}


/* 0-1. Reset
-------------------------------------------------- */
html {
  /*font-family: sans-serif;*/
}

body {
  margin: 0;
  padding: 0;
  -webkit-text-size-adjust: 100%;
}

a {
  background: transparent;
}

a:focus {
  outline: thin dotted;
}

a:active,
a:hover {
  outline: 0;
}

html,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
code,
del,
em,
img,
strong,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}

article,
aside,
footer,
header,
small,
nav,
section,
figure,
figcaption,
main {
  margin: 0;
  padding: 0;
  display: block;
  vertical-align: baseline;
  list-style: none;
  background-color: transparent;
  outline: none;
}

audio,
canvas,
video {
  display: inline-block;
}

ul,
ol {
  list-style-type: none;
}

table {
  border: none;
  border-collapse: collapse;
  border-spacing: 0;
}

img {
  line-height: 1;
  vertical-align: baseline;
  outline: none;
}

a img {
  border: none;
  outline: none;
}

sub {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
}

hr {
  box-sizing: content-box;
  height: 0;
}

dt,
dd,
li,
th,
td,
input,
textarea {
  text-align: left;
  vertical-align: top;
}

button {
  border: none;
}

input,
textarea,
button {
  margin: 0;
  padding: 0;
}

input {
  border: 1px solid #dad7d3;
  height: 24px;
  padding: 2px 5px;
}

textarea {
  border: 1px solid #dad7d3;
  height: 78px;
  resize: none;
}

button,
label {
  background-color: transparent;
  cursor: pointer;
}

button,
select {
  text-transform: none;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
input[disabled] {
  cursor: default;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: content-box;
  padding: 0;
}

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}

textarea {
  overflow: auto;
  vertical-align: top;
}

:focus {
  outline: none;
}

/* 0-2. Base
-------------------------------------------------- */
html {
  overflow-y: scroll;
  font-size: 100%;
}

body {
  /*font-family:"YuGothic","Roboto Regular","ヒラギノ角ゴ ProN W3","HiraKakuProN-W3","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","helvetica","arial",sans-serif;*/
  background-color: #fff;
  font-family: 'Source Sans Pro', sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: bold;
}

table {
  width: 100%;
}

input,
textarea,
button,
select {
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 100%;
}

strong {
  font-weight: bold;
}

em {
  font-weight: bold;
}

/* 0-3. Config
-------------------------------------------------- */
body {
  font-size: 3px;
  color: #333;
  position: relative;
}

@media screen and (min-width: 768px),
print {
  body {
    font-size: 16px;
  }
}

@media screen and (min-width: 768px) and (max-width: 980px),
print {
  body {
    min-width: 960px;
  }
}

a {
  color: #333;
  /* ベースのリンク文字の色を指定 */
  text-decoration: underline;
  /* ベースのリンク文字の下線の有無を指定 */
}

a:visited {
  color: #333;
  /* ベースのリンク文字の色を指定 */
}

a:hover {
  /*opacity: 0.7;*/
  color: #333;
  /* ベースのリンク文字の色を指定 */
  text-decoration: none;
  /* ベースのリンク文字の下線の有無を指定 */
}

a:focus {
  outline: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.4;
  /* ベースの行間を指定 */
}

p {
  line-height: 1.428;
  /* ベースの行間を指定 */
}

dt,
dd,
li,
th,
td,
input,
textarea,
button {
  line-height: 1.6;
  /* ベースの行間を指定 */
}

@media screen and (min-width: 768px),
print {
  p {
    line-height: 1.9;
  }
}


/* -----------------------------------------------
 [1. Layout]
-------------------------------------------------- */
/* 1-1. #l-document
-------------------------------------------------- */
#l-document {}

/* 1-2. #l-header
-------------------------------------------------- */
.l-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
  background: #fff;
  z-index: 200;
}

@media print {
  .l-header {
    position: relative;
  }
}

.l-header-logo {
  position: absolute;
  top: 10px;
  z-index: 202;
}

.l-header-logo img {
  width: 100%;
  height: auto;
}

.l-header-logo a {
  display: block;
  width: 114px;
}

.l-header-logo img {
  vertical-align: bottom;
}


/* content01 */
.l-header__content01 {
  position: relative;
  text-align: right;
  z-index: 201;
}

.l-header__content01>p {
  box-sizing: border-box;
}

.l-header__content01>p>img {
  max-width: 100%;
  height: auto;
}

.l-header__content01-nav>li {
  position: relative;
  cursor: pointer;
}

.l-header__content01-nav>li:before {
  content: '';
  position: absolute;
  left: 0;
  width: 1px;
  border-left: 1px solid #dddddd;
}

/* content02 */
.l-header__content02 {
  position: fixed;
  top: 0;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  height: 0;
  visibility: hidden;
  opacity: 0;
  z-index: 200;
  -webkit-transition: top 0.5s ease-out, opacity 0.5s ease-out, visibility 0s 0.5s, height 0s 0.5s;
  transition: all 0.5s ease-out, visibility 0s 0.5s, height 0s 0.5s;
}

.l-header__content02.is-opened {
  height: 100%;
  visibility: visible;
  opacity: 1;
  -webkit-transition: top 0.5s ease-out, opacity 0.5s ease-out, visibility 0s;
  transition: top 0.5s ease-out, opacity 0.5s ease-out, visibility 0s;
}

.l-header__content02>nav,
.l-header__content02>div {
  z-index: 2;
}

.l-header__content02 .menu-bg {
  position: fixed;
  top: 100px;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: 1;
}

.l-header__content02-title {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  margin-top: -25px;
  padding-top: 8px;
  color: #fff;
  text-align: center;
  z-index: 2;
}

.l-header__content02-title>span {
  display: block;
  margin-bottom: 0.5em;
  -webkit-font-smoothing: antialiased;
  font-style: italic;
  letter-spacing: 4px;
  line-height: 1.25;
  font-weight: normal;
  font-size: 14px;
}

/* serach, lang */
.l-header__content02-search,
.l-header__content02-lang {
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  text-align: center;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.5s, visibility 0s 0.5s;
  transition: opacity 0.5s, visibility 0s 0.5s;
}

.l-header__content02-search.is-opened,
.l-header__content02-lang.is-opened {
  visibility: visible;
  opacity: 1;
  z-index: 3;
  -webkit-transition: opacity 0.5s, visibility 0s;
  transition: opacity 0.5s, visibility 0s;
}

.l-header__content02-search input[type=text] {
  width: 225px;
  padding: 22px 10px 21px;
  box-sizing: border-box;
  border: 1px solid #e5e5e5;
  border-radius: 3px;
}

.l-header__content02-search input[type=submit] {
  width: 60px;
  height: 45px;
  border: none;
  border-radius: 3px;
  background: #6a6a6a;
  color: #fff;
  text-align: center;
  line-height: 43px;
}

.l-header__content02-search div {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 1023px) {
  .l-header-logo {
    left: 10px;
    width: 83px;
  }

  /* content01 */
  .l-header__content01 {
    height: 60px;
    background: #000;
  }

  .l-header__content01_1>p {
    padding: 10px 61px 0 0;
  }

  .l-header__content01-nav {
    display: inline-block;
    width: 161px;
    padding-right: 61px;
    box-sizing: border-box;
    letter-spacing: -0.4em;
  }

  .l-header__content01-nav>li {
    display: inline-block;
    font-size: 14px;
    text-align: center;
    line-height: 20px;
    text-decoration: none;
    opacity: 1;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
    box-sizing: border-box;
    letter-spacing: normal;
    width: 50px;
    height: 20px;
  }

  .l-header__content01-nav>li:before {
    top: 0;
    height: 20px;
  }

  /* nav-global */
  .nav-global {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background: #333333;
    visibility: hidden;
  }

  .nav-global>ul {
    position: absolute;
    top: 60px;
    left: 0;
    width: 100%;
  }

  .nav-global>ul>li {
    width: 100%;
  }

  .nav-global>ul>li>span {
    position: relative;
    display: block;
    color: #ffffff;
    padding: 15px 7px;
    background: #333333;
    font-weight: bold;
    border-bottom: 1px solid #666666;
  }

  .nav-global>ul>li>span i {
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -10px;
    z-index: 100;
  }

  .nav-global>ul>li>span i:before {
    color: #ffffff;
  }

  .nav-global>ul>li .nav-contents {
    width: 100%;
    display: none;
  }

  .nav-global>ul>li ul {
    width: 100%;
    background: #444444;
    margin: 0;
    padding: 0;
  }

  .nav-global>ul>li ul li {
    padding: 0 7px;
  }

  .nav-global>ul>li ul li a {
    display: block;
    padding: 15px 15px;
    color: #ffffff;
    text-decoration: none;
    border-bottom: 1px solid #666666;
  }

  .nav-global>ul>li ul li.nav-global-catetop a {
    padding: 15px 0;
    font-weight: bold;
  }

  .nav-global.is-opened {
    visibility: visible;
  }

  .nav-global-megadrop {
    display: none;
  }

  /* content02 */
  .l-header__content02 {
    padding-top: 100px;
  }

  .l-header__content02.is-opened {
    top: 0px;
    overflow-y: scroll;
    overflow-x: hidden;
  }

  .l-header__content02-title {
    font-size: 15px;
  }

  .l-header__content02-title>span {
    font-size: 8px;
  }

  .l-header__content02-search div {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 0;
    padding: 10px;
    margin: 0 auto;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
  }

  .l-header__content02 .menu-bg {
    top: 60px;
  }

  /* lang */
  .l-header__content02-lang ul {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    padding: 0 5px;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    box-sizing: border-box;
  }

  .l-header__content02-lang li {
    width: 50%;
    height: 40px;
    float: left;
    margin: 5px 0;
    padding: 0 5px;
    box-sizing: border-box;
  }

  .l-header__content02-lang li>a {
    color: #fff;
  }

  .l-header__content02-lang li>a {
    display: block;
    width: 100%;
    height: 40px;
    border: 1px solid #fff;
    box-sizing: border-box;
    font-size: 14px;
    color: #fff;
    line-height: 40px;
    text-align: center;
    padding: 0;
    text-decoration: none;
  }
}

@media screen and (min-width: 1024px),
print {
  .l-header {
    height: 100px;
    border-bottom: 1px solid #ddd;
  }

  .l-header-logo {
    position: absolute;
    top: 8px;
    margin: 0 auto;
    left: 0px;
    right: 0px;
    width: 1200px;
    z-index: 202;
  }

  /* content01 */
  .l-header__content01 {
    position: relative;
    box-sizing: border-box;
    height: 108px;
    padding-top: 20px;
    background: #fff;
  }

  .l-header__content01-err {
    padding-right: 0;
  }

  .l-header__content01_1 {
    width: 364px;
    margin-left: auto;
    letter-spacing: -0.4em;
  }

  .l-header__content01_1>p {
    display: inline-block;
    position: relative;
    height: auto;
    width: 254px;
    text-align: left;
    letter-spacing: normal;
  }

  K .l-header__content01_1>p img {
    position: relative;
    width: 234px;
    height: auto;
    top: 5px;
  }

  .l-header__content01-nav {
    display: inline-block;
    width: 110px;
    box-sizing: border-box;
    letter-spacing: -0.4em;
  }

  .l-header__content01-nav>li {
    display: inline-block;
    font-size: 14px;
    text-align: center;
    line-height: 30px;
    text-decoration: none;
    opacity: 1;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
    box-sizing: border-box;
    letter-spacing: normal;
  }

  .l-header__content01-nav>li.js-globalmenu-lang {
    width: 60px;
  }

  .l-header__content01-nav>li.js-globalmenu-search {
    width: 50px;
  }

  .l-header__content01-nav>li:hover {
    opacity: 0.7;
  }

  .l-header__content01-nav>li.visible-sp {
    display: none;
  }

  .l-header__content01-nav>li:before {
    top: 7px;
    height: 20px;
    border-color: #e5e5e5;
  }

  .l-header__content01-nav>li>i {
    font-size: 20px;
  }

  /* content02 */
  .l-header__content02 {
    top: -20px;
    left: 0;
    padding-top: 71px;
  }

  .l-header__content02.is-opened {
    top: 0;
  }

  .l-header__content02 .menu-bg {
    top: 71px;
  }

  .l-header__content02 a {
    display: block;
    overflow: hidden;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }

  .l-header__content02 a>img {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: -webkit-transform 0.5s ease-out;
    transition: transform 0.5s ease-out;
  }

  .l-header__content02 a:hover>img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }

  .l-header__content02-title {
    margin-top: -32px;
    font-size: 16px;
  }

  /* nav-global */
  .nav-global {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50px;
    background: #4d4d4d;
  }

  .nav-global>ul {
    position: absolute;
    height: 40px;
    bottom: 0px;
    top: 0px;
    left: 0px;
    right: 0px;
    margin: auto;
    width: 1200px;
    letter-spacing: -0.4em;
  }

  .nav-global>ul>li {
    display: inline-block;
    letter-spacing: normal;
    font-weight: bold;
    height: 40px;
    margin: 0px 78px;
    position: relative;
  }

  .nav-global>ul>li a {
    display: inline-block;
    height: 40px;
    line-height: 40px;
  }

  .nav-global>ul>li a .nav-global-btn {
    /*border-bottom: 2px solid #ffffff;*/
    display: inline-block;
    font-weight: normal;
    color: #fff;
  }

  .nav-global>ul>li a:hover .nav-global-btn {
    border-bottom: 2px solid #ffffff;
  }

  .nav-global>ul>li a .nav-global-arrow {
    display: block;
    position: absolute;
    content: "";
    width: 14px;
    height: 14px;
    background: #3a3a3a;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    bottom: -19px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }

  .nav-global-megadrop {
    display: none;
    position: absolute;
    top: 114px;
    left: 0;
    width: 100%;
    background: #3a3a3a;
    z-index: 500;
    padding
  }

  .nav-global-megadrop .nav-global-megadrop-inner {
    display: block;
    max-width: 1170px;
    margin: 0 auto;
  }

  .nav-global-megadrop .nav-global-megadrop-inner:after {
    content: "";
    clear: both;
    display: block;
  }

  .nav-global-megadrop .nav-global-megadrop-inner .nav-global-megadrop-left {
    float: left;
    width: 50%;
  }

  .nav-global-megadrop .nav-global-megadrop-inner .nav-global-megadrop-right {
    float: right;
    width: 50%;
  }

  .nav-global-megadrop .nav-global-megadrop-top {
    padding: 10px 0 28px;
    font-size: 18px;
    color: #fff;
    border-bottom: 1px solid #575757;
  }

  .nav-global-megadrop .nav-global-megadrop-top a {
    color: #fff;
    text-decoration: none;
  }

  .nav-global-megadrop .nav-global-megadrop-top a i {
    display: inline-block;
    color: #fff;
    text-decoration: none;
    font-size: 11px;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    margin-left: 0.3em;
    vertical-align: middle;
  }

  .nav-global-megadrop .nav-global-megadrop-top a:hover i {
    color: #fff;
    text-decoration: none;
    margin-left: 0.6em;
  }

  .nav-global-megadrop .nav-global-megadrop-list {
    width: 100%;
  }

  .nav-global-megadrop .nav-global-megadrop-list ul:after {
    content: "";
    clear: both;
    display: block;
  }

  .nav-global-megadrop .nav-global-megadrop-list li {
    float: left;
    position: relative;
    font-size: 14px;
  }

  .nav-global-megadrop .nav-global-megadrop-list li a {
    color: #fff;
    text-decoration: none;
  }

  .nav-global-megadrop .nav-global-megadrop-list .col1 li {
    width: 100%;
    float: none;
    padding-right: 30px;
  }

  .nav-global-megadrop .nav-global-megadrop-list .col2 li {
    width: 50%;
    box-sizing: border-box;
  }

  .nav-global-megadrop .nav-global-megadrop-list .col2 li:nth-of-type(2n+1) {
    padding-right: 15px;
    clear: both;
  }

  .nav-global-megadrop .nav-global-megadrop-list .col2 li:nth-of-type(2n) {
    padding-left: 15px;
  }

  .nav-global-megadrop .nav-global-megadrop-list .col3 li {
    width: 33.3333333333%;
    box-sizing: border-box;
  }

  .nav-global-megadrop .nav-global-megadrop-list .col3 li:nth-of-type(3n+1) {
    padding-right: 15px;
    clear: both;
  }

  .nav-global-megadrop .nav-global-megadrop-list .col3 li:nth-of-type(3n+2) {
    padding-left: 15px;
    padding-right: 15px;
  }

  .nav-global-megadrop .nav-global-megadrop-list .col3 li:nth-of-type(3n) {
    padding-left: 15px;
  }

  .nav-global-megadrop .nav-global-megadrop-list .col4 li {
    width: 25%;
    box-sizing: border-box;
  }

  .nav-global-megadrop .nav-global-megadrop-list .col4 li:nth-of-type(4n+1) {
    padding-right: 15px;
    clear: both;
  }

  .nav-global-megadrop .nav-global-megadrop-list .col4 li:nth-of-type(4n+2) {
    padding-left: 15px;
    padding-right: 15px;
  }

  .nav-global-megadrop .nav-global-megadrop-list .col4 li:nth-of-type(4n+3) {
    padding-left: 15px;
    padding-right: 15px;
  }

  .nav-global-megadrop .nav-global-megadrop-list .col4 li:nth-of-type(4n) {
    padding-left: 15px;
  }

  .nav-global-megadrop .nav-global-megadrop-list .col1 li span,
  .nav-global-megadrop .nav-global-megadrop-list .col2 li span,
  .nav-global-megadrop .nav-global-megadrop-list .col3 li span,
  .nav-global-megadrop .nav-global-megadrop-list .col4 li span {
    position: relative;
    padding: 9px 0 9px;
    display: block;
  }

  .nav-global-megadrop .nav-global-megadrop-list .col1 li span:after,
  .nav-global-megadrop .nav-global-megadrop-list .col2 li span:after,
  .nav-global-megadrop .nav-global-megadrop-list .col3 li span:after,
  .nav-global-megadrop .nav-global-megadrop-list .col4 li span:after {
    content: "";
    position: absolute;
    border-bottom: 1px solid #575757;
    width: 100%;
    height: 1px;
    left: 0;
    bottom: 0;
  }

  .nav-global-megadrop .megadrop-btn a {
    position: relative;
    display: inline-block;
    padding: 7px 15px 7px 15px;
    border: 1px solid #fff;
    border-radius: 0;
    font-size: 14px;
    white-space: nowrap;
    overflow: hidden;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    color: #fff;
    text-decoration: none;
  }

  .nav-global-megadrop .megadrop-btn a:hover {
    color: #333;
    background: #fff;
  }

  /* megadrop corporate */
  .nav-global>ul>li.megadrop-corporate a .nav-global-arrow {
    background: #3a3a3a;
  }

  #megadrop-corporate.nav-global-megadrop {
    background: #3a3a3a;
    padding-bottom: 40px;
  }

  #megadrop-corporate .nav-global-megadrop-left {
    padding-bottom: 35px;
  }

  #megadrop-corporate.nav-global-megadrop .nav-global-megadrop-list .col2 li span:after {
    border-bottom: 1px solid #262626;
  }

  #megadrop-corporate.nav-global-megadrop .nav-global-megadrop-top {
    border-bottom: 1px solid #575757;
  }

  #megadrop-corporate .nav-global-megadrop-right {
    position: relative;
    min-height: 330px;
    background: url("../img/gnavi_img_corporate.jpg") no-repeat;
  }

  [lang=en] #megadrop-corporate .nav-global-megadrop-right {
    background: url("../img/gnavi_img_corporate_en.jpg") no-repeat;
  }

  #megadrop-corporate .nav-global-megadrop-right .megadrop-btn {
    position: absolute;
    top: 172px;
    left: 271px;
  }

  /* megadrop product */
  #megadrop-product.nav-global-megadrop .nav-global-megadrop-list .col2 li span:after {
    border-bottom: 1px solid #575757;
  }

  #megadrop-product.nav-global-megadrop .nav-global-megadrop-top {
    border-bottom: 1px solid #575757;
  }

  #megadrop-product .nav-global-megadrop-inner {
    padding-bottom: 35px;
  }

  #megadrop-product .nav-global-megadrop-inner p {
    padding: 25px 0 0;
    text-align: center;
    color: #ffffff;
    font-size: 14px;
  }

  #megadrop-product .bnr {
    margin: 25px 0 0;
  }

  #megadrop-product .bnr:after {
    content: "";
    clear: both;
    display: block;
  }

  #megadrop-product .bnr li {
    float: left;
    width: 270px;
    margin-right: 30px;
  }

  #megadrop-product .bnr li:nth-of-type(4n) {
    margin-right: 0;
  }

  #megadrop-product .bnr img {
    width: 100%;
    height: auto;
  }

  /* megadrop rd */
  .nav-global>ul>li.megadrop-rd a .nav-global-arrow {
    background: #000000;
  }

  #megadrop-rd.nav-global-megadrop {
    background: #000000;
  }

  #megadrop-rd .nav-global-megadrop-left {
    width: 400px;
    padding-bottom: 35px;
  }

  #megadrop-rd.nav-global-megadrop .nav-global-megadrop-list .col1 li span:after {
    border-bottom: 1px solid #262626;
  }

  #megadrop-rd.nav-global-megadrop .nav-global-megadrop-top {
    border-bottom: 1px solid #262626;
  }

  #megadrop-rd .nav-global-megadrop-right {
    position: relative;
    width: 770px;
    min-height: 330px;
    background: url("../img/gnavi_img_rd.jpg") no-repeat;
  }

  #megadrop-rd .nav-global-megadrop-right .megadrop-btn {
    position: absolute;
    top: 172px;
    left: 471px;
  }

  /* megadrop news */
  #megadrop-news .nav-global-megadrop-left {
    padding-bottom: 35px;
  }

  #megadrop-news .nav-global-megadrop-right {
    position: relative;
    min-height: 330px;
  }

  #megadrop-news .nav-global-megadrop-right .megadrop-btn {
    position: absolute;
    top: 171x;
    left: 471px;
  }

  #megadrop-news .lbl--white {
    color: #fff;
  }

  /* megadrop csr */
  #megadrop-csr .nav-global-megadrop-inner {
    padding-bottom: 35px;
  }

  /* megadrop ir */
  #megadrop-ir .nav-global-megadrop-left {
    padding-bottom: 35px;
  }

  #megadrop-ir .nav-global-megadrop-right {
    position: relative;
    min-height: 330px;
  }

  #megadrop-ir .nav-global-megadrop-right .megadrop-btn {
    position: absolute;
    top: 172px;
    left: 271px;
  }

  #megadrop-ir .lbl--white {
    color: #fff;
  }

  /* megadrop employment */
  #megadrop-employment .nav-global-megadrop-left {
    width: 400px;
    padding-bottom: 35px;
  }

  #megadrop-employment .nav-global-megadrop-right {
    position: relative;
    width: 770px;
    min-height: 181px;
    padding-top: 30px;
    padding-bottom: 25px;
  }

  /* megadrop special */
  .nav-global>ul>li.megadrop-special a .nav-global-arrow {
    background: #000000;
  }

  #megadrop-special.nav-global-megadrop {
    background: #000000;
  }

  #megadrop-special .nav-global-megadrop-left {
    padding-bottom: 35px;
  }

  #megadrop-special.nav-global-megadrop .nav-global-megadrop-list .col2 li span:after {
    border-bottom: 1px solid #262626;
  }

  #megadrop-special.nav-global-megadrop .nav-global-megadrop-top {
    border-bottom: 1px solid #262626;
  }

  #megadrop-special .nav-global-megadrop-right {
    position: relative;
    min-height: 320px;
    background: url("../img/gnavi_img_special.jpg") no-repeat;
  }

  [lang=en] #megadrop-special .nav-global-megadrop-right {
    background: url("../img/gnavi_img_special_en.jpg") no-repeat;
  }

  #megadrop-special .nav-global-megadrop-right p {
    position: absolute;
    top: 130px;
    left: 300px;
    color: #fff;
    width: 250px;
    font-size: 14px;
    line-height: 1.4;
  }

  #megadrop-special .nav-global-megadrop-right .megadrop-btn {
    position: absolute;
    top: 240px;
    left: 45px;
  }

  [lang=en] #megadrop-special .nav-global-megadrop-right .megadrop-btn {
    top: 180px;
    left: 230px;
  }

  /* serach, lang */
  .l-header__content02-lang ul {
    position: absolute;
    width: 880px;
    overflow: hidden;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  .l-header__content02-search,
  .l-header__content02-lang {
    padding: 20px 0;
  }

  .l-header__content02-search input[type=text] {
    width: 550px;
    padding: 0 10px;
    height: 50px;
    margin: 5px 0;
  }

  .l-header__content02-search input[type=submit] {
    width: 86px;
    height: 50px;
    line-height: 48px;
    margin: 5px 0;
  }

  .l-header__content02-lang li {
    width: 200px;
    height: 80px;
    float: left;
    margin-left: 10px;
    margin-right: 10px;
    margin-top: 20px;
  }

  .l-header__content02-lang li>a {
    display: block;
    width: 200px;
    height: 80px;
    border: 1px solid #fff;
    box-sizing: border-box;
    font-size: 18px;
    color: #fff;
    line-height: 80px;
    text-align: center;
    padding: 0;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    text-decoration: none;
  }

  .l-header__content02-lang li>a:hover {
    background: #fff;
    color: #000;
  }

  .gnavi-irnews {
    border-top: 1px dotted #666666;
  }

  .gnavi-irnews li {
    padding: 10px 0;
    border-bottom: 1px dotted #666666;
  }

  .gnavi-irnews li a {
    display: block;
    color: #ffffff;
  }

  .gnavi-irnews li a:after {
    content: "";
    clear: both;
    display: block;
  }

  .gnavi-irnews li .box-news__content {
    width: 473px;
    float: left;
  }

  .gnavi-irnews li .box-news__icon {
    float: right;
    width: 80px;
    margin-top: 22px;
  }

  .gnavi-irnews li p {
    width: 473px;
    font-size: 14px;
    display: block;
    /*
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
		*/
  }

  .gnavi-irnews li p.box-news__date {
    width: auto;
    font-size: 12px;
  }

  .gnavi-irnews li p.box-news__date span {
    display: inline-block;
    background: #666666;
    margin-left: 10px;
    max-width: auto;
    color: #ffffff;
    padding: 2px 7px;
  }

  .gnavi-irnews li .box-news__title {
    width: auto;
    max-width: 400px;
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    vertical-align: middle;
  }

  .gnavi-irnews li .icon-file-pdf {
    display: inline-block;
    margin-top: 22px;
  }

  .gnavi-newslatest {
    padding-bottom: 10px;
  }

  .gnavi-newslatest ul {}

  .gnavi-newslatest ul li {
    border-bottom: 1px dotted #666666;
  }

  .gnavi-newslatest ul li a {
    display: block;
    padding: 8px 0px 7px;
    color: #fff;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    text-decoration: none;
  }

  .gnavi-newslatest ul li a:hover {
    margin-left: 6px;
  }

  .gnavi-newslatest ul li .gnavi-newslatest_date {
    font-size: 12px;
  }

  .gnavi-newslatest ul li .gnavi-newslatest_category {
    font-size: 12px;
  }

  .gnavi-newslatest ul li p {
    font-size: 14px;
  }
}

@media (min-width: 1024px) and (max-width: 1170px) {
  #megadrop-employment .nav-global-megadrop-right {
    width: 600px;
  }

  #megadrop-employment .nav-global-megadrop-right img {
    max-width: 100%;
    height: auto;
  }

  #megadrop-rd .nav-global-megadrop-right {
    position: relative;
    width: 600px;
    min-height: 250px;
    background: url("../img/gnavi_img_rd.jpg") no-repeat;
    background-size: 100% auto;
  }

  #megadrop-rd .nav-global-megadrop-right .megadrop-btn {
    position: absolute;
    top: 172px;
    left: 370px;
  }
}


/* 1-3. #l-container
-------------------------------------------------- */
.l-container {
  padding-top: 51px;
}

@media screen and (min-width: 768px),
print {
  .l-container {
    margin-bottom: 60px;
    padding-top: 101px;
  }

  .l-container.has-sub {
    margin-bottom: 70px;
  }
}

@media print {
  .l-container {
    padding-top: 11px;
  }
}

/* 1-3-1. #l-main
-------------------------------------------------- */

@media screen and (min-width: 768px) and (max-width: 1014px),
print {
  .has-sub .l-main {
    float: left;
    width: 68%;
    padding-right: 0 !important;
  }
}

@media screen and (min-width: 1015px) and (max-width: 1049px) {
  .has-sub .l-main {
    float: left;
    width: 69%;
    padding-right: 30px !important;
  }
}

@media screen and (min-width: 1050px) and (max-width: 1118px) {
  .has-sub .l-main {
    float: left;
    width: 70%;
  }
}

@media screen and (min-width: 1119px) and (max-width: 1200px) {
  .has-sub .l-main {
    float: left;
    width: 72%;
  }
}

@media screen and (min-width: 1201px) {
  .has-sub .l-main {
    float: left;
    width: 74%;
  }
}

/* 1-3-2. #l-sub
-------------------------------------------------- */
.l-sub {
  background: #5f5f5f;
  padding: 30px 15px;
}

.l-sub a {
  text-decoration: none;
  display: block;
  border-bottom: 1px solid #7c7c7c;
  padding: 18px 28px 18px 2px;
  position: relative;
}

.l-sub a .icon {
  position: absolute;
  right: 5px;
  top: 50%;
  margin-top: -12px;
}

.l-sub .l-sub__title a .icon {
  position: static;
}

.l-sub .hdg-lv4 {
  font-size: 14px;
}

@media screen and (max-width: 767px) {
  .l-sub {
    color: #fff;
    margin: 30px -15px 0;
  }

  .l-sub__inner {
    background: #525251;
    border-radius: 1.5px;
    padding: 0 13px 10px;
  }

  .l-sub a {
    color: #fff;
  }

  .l-sub .l-sub__title a {
    border-bottom: none;
    font-size: 18px;
    padding: 15px 0 5px;
  }

  .l-sub .l-sub__title a .icon {
    margin-top: 0;
  }

  .l-sub a .icon {
    font-size: 13px;
  }

  .l-sub .hdg-lv4 {
    margin: 40px 0 5px;
  }

  .l-sub__inner-list li a {
    padding-left: 10px;
  }
}

@media screen and (min-width: 768px),
print {
  .l-sub {
    width: 240px;
    background: #fff;
    float: right;
    padding: 0;
  }

  .l-sub a {
    border-bottom: 1px dashed #d7d7d7;
    padding: 10px 58px 8px 0;
    font-size: 14px;
    transition: all 0.2s;
  }

  .l-sub a {
    padding-right: 74px !important;
  }

  .l-sub .ico-narrow a {
    padding-right: 20px !important;
  }

  .l-sub a:hover {
    padding-left: 3px !important;
  }

  .l-sub__inner-list li a:hover {
    padding-left: 18px !important;
  }

  .l-sub__inner-list {
    display: none;
  }

  .l-sub a .icon {
    transition: all 0.2s;
  }

  .l-sub a:hover .icon {
    right: 3px;
  }

  .l-sub a.l-sub__current {
    background: #f5f5f5;
  }

  .l-sub__inner>ul>li>a.l-sub__current {
    padding-left: 10px !important;
  }

  .l-sub__inner>ul>li>a.l-sub__current:hover {
    padding-left: 13px !important;
  }

  .l-sub .l-sub__title {
    margin-bottom: 10px;
  }

  .l-sub .l-sub__title a {
    font-size: 16px;
    color: #fff;
    background: #6a6a6a;
    border-radius: 3px;
    border-bottom: 0;
    padding: 15px 10px 15px 20px !important;
    transition: none;
    transition: all 0.2s;
  }

  .l-sub .l-sub__title a:hover {
    padding-left: 26px !important;
  }

  .l-sub .l-sub__title a .icon {
    transition: none;
  }

  .l-sub .hdg-lv4 {
    margin: 55px 0 10px;
  }

  .l-sub__inner-list li a {
    padding-left: 15px;
  }
}

/* 1-4. #l-footer
-------------------------------------------------- */
.l-footer a {
  color: #fff;
}

.l-footer__content01 {
  background: #000000;
}

.l-footer__content02 {
  background: #333333;
  color: #fff;
  padding: 10px 0;
}

.l-footer .bnr-footer {
  margin: -40px auto 0;
}

.l-footer .bnr-footer img {
  max-width: 100%;
  height: auto;
}

@media screen and (min-width: 768px),
print {
  .l-footer__content02 {
    padding: 20px 0;
  }

  .l-footer__content01 {
    padding-top: 45px;
  }

  .l-footer__content02 .wrp-container {
    width: auto;
  }

  .l-footer .bnr-footer {
    margin: -60px auto 50px;
  }
}

/* 1-5. #l-nav-global
-------------------------------------------------- */



/* -----------------------------------------------
 [2. Object]
-------------------------------------------------- */

/* 2-1. Component a.k.a Module
-------------------------------------------------- */
/*2-1-1.  Wrap     [wrp-***]*/
.wrp-container {
  padding: 0 15px;
  position: relative;
  box-sizing: border-box;
  width: 100%;
}

.wrp-container-gray {
  margin-bottom: 60px;
  background: #f5f5f5;
}

.wrp-container-gray__title {
  margin: -75px 0 60px;
  padding: 70px 0 5px;
  background: #f5f5f5;
}

.wrp-container-gray__title .hdg-lv2 {
  font-weight: bold;
}

.wrp-container-black {
  margin-top: 50px;
  background: #1c1c1c;
}

.box-main-img+.wrp-container-gray,
.box-header-detail+.wrp-container-gray {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .wrp-container {
    padding: 15px;
    position: relative;
    box-sizing: border-box;
    width: 100%;
  }

  .wrp-container-gray {
    margin-bottom: 30px;
    background: #f5f5f5;
  }

  .wrp-container-gray__title {
    margin: 0;
    padding: 15px 0 0;
    background: #f5f5f5;
  }

  .box-notes img {
    margin-top: 15px;
  }

  .box-notes .hdg-lv4:first-child {
    margin-top: 0px;
  }
}

@media screen and (min-width: 768px),
print {
  .wrp-container {
    margin: 0 auto;
  }
}

@media only screen and (min-width : 1230px) {
  .wrp-container {
    width: 1200px;
  }
}

/*-------------------------------------------------- */
.wrp-block {
  margin-bottom: 15px;
}

@media screen and (min-width: 768px),
print {
  .wrp-block {
    margin-bottom: 30px;
  }
}

/*2-1-2.  Box      [box-***]*/

.box-noscript {
  margin-top: 70px;
  padding: 24px;
  background: #3a3a3a;
  box-sizing: border-box;
}

.box-noscript p {
  text-shadow: 0 0 1px #fff;
  color: #fff;
}

/* ----------------------------------------------- */
.box-section {
  margin: 0 auto 20px;
  padding: 20px;
  width: 942px;
  border: 1px solid #ccc;
}

/* ----------------------------------------------- */
.box-media {
  display: table;
  width: 100%;
}

.box-media--txt,
.box-media--pic {
  display: block;
  vertical-align: top;
}

.box-media--left .box-media--txt {}

.box-white__01 {
  padding: 20px;
  background: #ffffff;
}

.box-white__01 .hdg-lv3:first-child {
  margin-top: 0 !important;
}

.box-white__02 {
  padding: 20px;
  background: #ffffff;
}

.box-white__01 .hdg-lv3:first-child {
  margin-top: 0 !important;
}

.box-gray__01 {
  padding: 20px;
  background: #f5f5f5;
  border-radius: 3px;
}

@media screen and (max-width: 767px) {
  .box-white__01 img {
    margin-top: 10px;
  }

  .box-noscript {
    margin-top: 50px;
  }
}

@media screen and (min-width: 768px),
print {

  .box-media--txt,
  .box-media--pic {
    display: table-cell;
    vertical-align: top;
  }

  .box-media--pic {
    width: 40%;
    padding-left: 30px;
  }

  .box-media--right .box-media--txt {
    padding-left: 40px;
  }

  .box-media--right .box-media--inf {
    direction: ltr;
  }

  .box-white__01 {
    padding: 60px 65px;
  }

  .box-white__02 {
    padding: 40px;
  }

  .box-gray__01 {
    padding: 30px 35px;
    background: #f5f5f5;
    border-radius: 5px;
  }

  .box-gray__01.cookie {
    padding: 10px 90px;
    background: #f5f5f5;
    border-radius: 5px;
    width: 50%;
    margin: auto;
  }
}

.box-media--pic {
  margin-top: 10px;
}

.box-media--right {
  direction: rtl;
}

.box-media--right .box-media--txt {
  padding-left: 20px;
}

.box-media--right .box-media--inf {
  direction: ltr;
}

.box-select {
  display: block;
  padding: 17px 30px 14px 12px;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  width: 100%;
  background: transparent url("../img/cmn_icn_arrow_down.png") no-repeat 95% 50%;
  border-radius: 2px;
  border: 1px solid #7f7f7f;
  cursor: pointer;
}

/* ----------------------------------------------- */
@media only screen and (max-width: 767px) {
  .wrp-tabs {
    margin: 5px 0;
  }

  .box-tab {
    display: none;
  }
}

@media only screen and (min-width: 768px),
print {
  .box-tab {
    display: block;
    padding: 20px 30px 0;
    background: #f5f5f5;
    max-width: 100%;
  }

  .box-tab li {
    display: inline-block;
    margin-right: 10px;
    margin-top: 10px;
  }

  .box-tab li a {
    display: block;
    text-decoration: none;
    box-sizing: border-box;
    padding: 13px 15px 6px 20px;
    background: #ececec;
    transition: all 0.2s;
  }

  .box-tab li a:hover {
    padding: 15px 15px 1px 20px;
  }

  .box-tab li span {
    margin-left: 8px;
  }

  .box-tab li:last-child {
    margin-right: 0;
  }

  .wrp-tab__content {
    position: relative;
    z-index: 1;
  }

  .box-tab li .is-active {
    z-index: 2;
    position: relative;
    background-color: #fff;
  }

  .box-select {
    display: inline-block;
    padding: 12px 30px 8px 15px;
    font-size: 16px;
    width: 260px;
    background: transparent url("../img/cmn_icn_arrow_down.png") no-repeat 95% 50%;
  }
}

/* ----------------------------------------------- */
.box-main-img {
  background: #3a3a3a;
  height: 250px;
  position: relative;
  overflow: hidden;
  /* background: url(../img/news_main_bg.png) center center no-repeat; */
}

.box-main-img .hdg-lv1 {
  text-align: center;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  color: #fff;
}

@media screen and (max-width: 767px) {
  .box-main-img .hdg-lv1 {
    font-size: 16px;
    letter-spacing: 3px;
    line-height: 1.3;
  }
}

@media only screen and (min-width: 768px),
print {
  .box-main-img {
    height: 500px;
  }
}

/* ----------------------------------------------- */
.box-news {
  width: 100%;
  display: table;
}

.box-news a {
  display: table-row;
  text-decoration: none;
}

.box-news__content,
.box-news__title {
  display: table-cell;
  vertical-align: middle;
}

#xj-mainlist-results,
#xj-mainlist-presen,
.box-news {
  transition: all 0.2s;
}

#xj-mainlist-results:hover,
#xj-mainlist-presen:hover,
.box-news:hover {
  margin-left: 6px;
}

.noanimation.box-news:hover {
  margin-left: 0;
}

.box-news__date {
  font-size: 12px;
  margin-bottom: 5px;
}

.box-news__date .lbl {
  margin-left: 5px;
}

.box-news__icon {
  text-align: right;
  display: table-cell;
  vertical-align: middle;
  white-space: nowrap;
}

@media screen and (min-width: 768px),
print {
  .box-news__content {
    width: 100%;
    display: table;
  }

  .box-news__content p {
    display: table-cell;
  }

  .box-news__date {
    margin: 0;
    width: 27%;
  }

  .has-sub .l-main .box-news__date {
    margin: 0;
    width: 30%;
  }

  .lst-new--icon-none .box-news__date {
    width: 30%;
  }

  .box-news__date .lbl {
    display: inline-block;
    margin-left: 20px;
    max-width: 120px;
    white-space: normal;
    text-align: left;
  }

  .box-news__icon {
    width: 70px;
  }

  .box-news__date {
    font-size: 16px;
  }

  .box-news__title {
    width: 175px;
  }

  /* .lst-news-2col */
  .lst-news-2col .box-news__content p {
    display: block;
  }

  .lst-news-2col .box-news__date {
    width: 100%;
    padding: 0 0 5px;
  }

  .box-news__date.box-event__date {
    margin: 0;
    width: 20%;
  }
}

/* ----------------------------------------------- */
.box-event {
  width: 100%;
  display: block;
  text-decoration: none;
}

.box-event__img {
  width: 100%;
  text-align: center;
}

.box-event__content-02 {
  display: table;
}

.box-event__content-03,
.box-event__icon {
  display: table-cell;
  vertical-align: middle;
}

.txt-event {
  padding: 5px 0;
}

@media screen and (min-width: 768px),
print {

  .box-event__content-02,
  .box-event {
    width: 100%;
    display: table;
  }

  .box-event__img,
  .box-event__content,
  .box-event__content-03,
  .box-event__icon {
    display: table-cell;
    vertical-align: top;
  }

  a .box-event__content-02 {
    transition: all 0.2s;
  }

  a:hover .box-event__content-02 {
    margin-left: 6px;
  }

  .box-event__icon {
    vertical-align: middle;
  }

  .box-event__img {
    width: 198px;
    text-align: left;
  }

  .box-event__img>div {
    width: 170px;
    overflow: hidden;
    line-height: 0;
  }

  .box-event__icon {
    width: 40px;
  }

  .icon-event {}

  .txt-event {
    padding: 9px 0;
  }
}

/*------------------------------------*/
@media screen and (max-width: 767px) {
  .box-print {
    display: none;
  }
}

@media screen and (min-width: 768px),
print {
  .box-print {
    position: relative;
    text-align: right;
    padding: 19px 15px 20px 0;
    z-index: 500;
  }
}

/*------------------------------------*/
.box-notes {
  background-color: #f5f5f5;
  padding: 30px;
  clear: both;
  display: block;
  margin-top: 65px;
}

/*------------------------------------*/
.box-border__01 {
  margin: 10px 0 0;
  padding: 0 0 0;
  border-top: 1px solid #d7d7d7;
}

.box-border__02 {
  margin: 10px 0 0;
  padding: 0px 15px 15px;
  border: 1px solid #d7d7d7;
}

@media screen and (min-width: 768px),
print {
  .box-border__01 {
    margin: 30px 0 0;
    padding: 0px 0 0;
  }

  .box-border__02 {
    margin: 30px 0 0;
    padding: 0px 25px 25px;
  }
}

/*------------------------------------*/
.box-recommend__title {
  text-align: center;
  padding: 25px 0;
  letter-spacing: 1.9px;
}

@media screen and (min-width: 768px),
print {
  .box-recommend {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: -1px;
    max-width: 1170px;
  }

  .box-recommend__title {
    padding: 22px 0 20px;
    font-size: 28px;
  }
}

@media screen and (max-width: 767px) {
  .box-recommend__title {
    padding: 22px 0 20px;
    font-size: 18px;
  }

  .accordion-content {
    display: none;
  }

  .accordion-title a {
    display: block;
    text-decoration: none;
    padding: 20px 0;
    border-bottom: 1px solid #d7d7d7;
  }

  .accordion-title a.is-active {
    border-bottom: 0;
  }

  .accordion-title .icon {
    float: right;
  }
}

@media screen and (min-width: 768px),
print {
  .accordion-title {
    display: none;
  }
}

/*2-1-3.  Table    [tbl-***]*/
.wrp-table {
  overflow-x: auto;
}

@media screen and (min-width: 768px),
print {
  .wrp-table {
    overflow-x: auto;
  }
}

.tbl-base {
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .tbl-base {
    width: 100%;
    min-width: 50% !important;
  }
}

@media screen and (min-width: 768px),
print {
  .tbl-base {
    width: 100% !important;
  }
}

.tbl-base {
  border-bottom: 1px solid #d7d7d7;
  border-top: 1px solid #d7d7d7;
}

.tbl-base tr {
  border-bottom: 1px solid #d7d7d7;
}

.tbl-base th {
  padding-right: 1px;
  background-color: #f5f5f5;
  padding: 5px 10px;
  text-align: center;
  font-weight: normal;
}

.tbl-base td {
  padding: 5px 10px;
  background-color: #ffffff;
}

.tbl-base th,
.tbl-base td {
  border-left: 1px solid #d7d7d7;
  border-right: 1px solid #d7d7d7;
  text-align: center;
  font-size: 13px;
}

.tbl-base.tbl-base--wide th,
.tbl-base.tbl-base--wide td {
  padding: 5px 5px;
  text-align: left;
}

.tbl-nowrap {
  word-break: keep-all;
  white-space: nowrap;
}

@media screen and (min-width: 768px),
print {
  .tbl-base {
    /*margin-bottom: 30px;*/
    min-width: auto;
  }

  .tbl-base td,
  .tbl-base th {
    padding: 12px 0;
    font-size: 16px;
  }

  .tbl-base.tbl-base--wide th,
  .tbl-base.tbl-base--wide td {
    padding: 20px 20px;
    text-align: left;
  }
}



/*2-1-4.  Headings [hdg_lv*]*/
/*--------------------------------------------*/
.box-header-detail {
  border-bottom: 1px solid #dddddd;
  padding-bottom: 20px;
}

.hdg-lv1 {
  font-weight: normal;
  font-size: 20px;
  text-align: center;
  line-height: 1;
  letter-spacing: 5px;
}

.hdg-lv1 small {
  display: block;
  font-size: 15px;
  font-weight: bold;
  font-style: normal;
  letter-spacing: 0.2em;
  margin: 5px 0;
}

.hdg-lv1_jp {
  font-size: 24px !important;
  font-weight: bold;
  font-style: normal;
}

.hdg-lv1-02 {
  font-weight: bold;
  font-size: 18px;
  line-height: 1;
  padding: 33px 15px 10px;
}

@media screen and (max-width: 767px) {
  .hdg-lv1 small {
    margin: 8px 0 5px;
  }

  .box-header-detail {
    border-bottom: 1px solid #dddddd;
    padding-bottom: 12px;
  }

  .box-header-detail .hdg-lv1 {
    font-size: 14px;
    letter-spacing: 3px;
    margin-top: 17px;
    padding: 0 10px;
  }

  .box-header-detail small {
    font-size: 14px;
    letter-spacing: 0.1em;
  }
}

@media screen and (min-width: 768px),
print {
  .hdg-lv1 {
    font-size: 60px;
    letter-spacing: 9.5px;
  }

  .box-header-detail .hdg-lv1 {
    font-size: 30px;
    letter-spacing: 6px;
    margin-top: 20px;
  }

  .hdg-lv1 small {
    font-size: 12px;
    margin: 15px 0;
  }

  .hdg-lv1-02 {
    font-weight: normal;
    font-size: 26px;
    line-height: 1;
    padding: 50px 10px 20px;
    box-sizing: border-box;
  }
}

@media only screen and (min-width : 1230px) {
  .hdg-lv1-02 {
    width: 1170px;
    margin: 0 auto;
  }
}

/*--------------------------------------------*/
.hdg-lv2 a,
.hdg-lv3 a,
.hdg-lv4 a {
  display: inline-block;
  text-decoration: none;
}

.hdg-lv2 a:hover,
.hdg-lv3 a:hover,
.hdg-lv4 a:hover {
  text-decoration: none;
}

.has-icon .icon {
  display: inline-block;
  vertical-align: middle;
  font-size: 16px;
  margin-top: -1px;
}

/*--------------------------------------------*/
.hdg-lv2 {
  font-size: 18px;
  margin: 15px 0;
  line-height: 1.333;
  font-weight: normal;
}

.hdg-lv2--02 {
  padding: 15px 0 10px;
  margin: 0;
}

.hdg-lv2--02 a {
  display: table;
  width: 100%;
}

.hdg-lv2--02 .hdg-lv2__txt {
  background: #f5f5f5;
  margin-bottom: 0px;
  font-style: normal;
  font-weight: normal;
  padding-left: 10px;
  transition: all 0.5s;
}

.hdg-lv2--02 .hdg-lv2__img {
  width: 43px;
  font-size: 0;
}

.hdg-lv2--02 .hdg-lv2__img,
.hdg-lv2--02 .hdg-lv2__txt {
  display: table-cell;
  vertical-align: middle;
}

.hdg-lv2--02 .hdg-lv2__img img {
  width: 100%;
  height: auto;
}

.hdg-lv2--03 {
  padding: 30px 0 30px;
  margin: 0;
  font-weight: normal;
  font-size: 18px;
  text-align: center;
}

.hdg-lv2--03:after {
  display: block;
  content: " ";
  margin: 9px auto 0;
  font-size: 0.1px;
  width: 30px;
  height: 2px;
  background: #d7d7d7;
}

.hdg-lv2--04 {
  margin: 90px 0 0;
  background: #6a6a6a;
  font-size: 18px;
  border-radius: 3px;
}

.hdg-lv2--04>span,
.hdg-lv2--04>a {
  display: block;
  padding: 10px 15px;
  color: #ffffff;
  text-decoration: none;
  font-weight: normal;
}

.hdg-lv2--04>a .icon {
  vertical-align: middle;
  font-size: 14px;
}

@media screen and (max-width: 767px) {
  .hdg-lv2:first-child {
    margin-top: 30px;
  }

  .hdg-lv2 {
    font-size: 18px;
    margin: 80px 0 20px;
    line-height: 1.43;
    font-weight: normal;
    text-align: center;
  }
}

@media screen and (min-width: 768px),
print {
  .hdg-lv2:first-child {
    margin-top: 0;
  }

  .hdg-lv2 {
    margin: 110px 0 30px;
    font-size: 26px;
  }

  .hdg-lv2 a {
    transition: all 0.2s;
  }

  .hdg-lv2 a:hover {
    margin-left: 6px;
  }

  .l-article>.hdg-lv2:first-child {
    margin-top: 0;
  }

  .hdg-lv2--02 .hdg-lv2__img {
    width: 85px;
    padding-right: 5px;
  }

  .hdg-lv2--02 .hdg-lv2__txt {
    background: #f5f5f5;
    padding: 20px 0 20px 25px;
  }

  .hdg-lv2--02 a {
    transition: none;
  }

  .hdg-lv2--02 a:hover {
    margin-left: 0;
  }

  .hdg-lv2--02 a .hdg-lv2__txt {
    transition: all 0.2s;
  }

  .hdg-lv2--02 a:hover .hdg-lv2__txt {
    padding-left: 30px;
  }

  .hdg-lv2--03 {
    padding: 60px 0 45px;
    margin: 0;
    font-size: 26px;
  }

  .hdg-lv2--03:after {
    margin: 15px auto 0;
    width: 60px;
    height: 3px;
  }

  .hdg-lv2--04 {
    margin: 110px 0 0;
    font-size: 20px;
  }

  .hdg-lv2--04>span,
  .hdg-lv2--04>a {
    padding: 15px 30px;
  }

  .hdg-lv2--04>a .icon {
    font-size: 16px;
  }
}

/*--------------------------------------------*/
.hdg-lv3 {
  border-bottom: 2px solid #c6c6c6;
  font-size: 15px;
  font-weight: normal;
  margin: 20px 0 10px;
  line-height: 1.2;
}

@media screen and (max-width: 767px) {
  .hdg-lv3 {
    border-bottom: 2px solid #c6c6c6;
    font-size: 15px;
    font-weight: normal;
    margin: 30px 0 20px;
    line-height: 1.3;
    padding-bottom: 5px;
  }
}

@media screen and (min-width: 768px),
print {
  .hdg-lv3 {
    font-size: 30px;
    padding-bottom: 3px;
    margin: 40px 0 25px;
    border-bottom: 2px solid #c6c6c6;
    line-height: 1.41;
  }

  .hdg-lv3 a {
    transition: all 0.2s;
  }

  .hdg-lv3 a:hover {
    padding-left: 6px;
  }
}

/*--------------------------------------------*/
.hdg-lv4 {
  font-size: 15px;
  font-weight: bold;
  margin: 14px 0;
}

@media screen and (max-width: 767px) {
  .hdg-lv4 {
    font-size: 15px;
    font-weight: bold;
    margin: 14px 0 5px;
  }
}

@media screen and (min-width: 768px),
print {
  .hdg-lv4 {
    font-size: 18px;
    font-weight: bold;
    margin: 30px 0 10px;
  }
}


/*2-1-5.  Nav      [nav-***]*/
.nav li a {
  color: #333;
  text-decoration: none;
  display: block;
  text-align: left;
}

@media screen and (max-width: 767px) {
  .nav li {
    display: block;
  }

  .nav li a {
    padding: 14px 0;
  }
}

@media screen and (min-width: 768px),
print {

  .nav,
  .nav ul {
    display: table;
  }

  .nav>li {
    display: table-cell;
  }
}

/* -------------------------------------------------- */
.nav--header-btn {
  position: absolute;
  right: 0;
  top: 0;
  width: 50px;
  height: 60px;
  cursor: pointer;
  background: :;
  color: #fff;
  text-align: center;
  z-index: 211;
}

.nav--header-btn a {
  position: relative;
  display: block;
  height: 60px;
  color: #fff;
  vertical-align: middle;
  font-size: 8px;
  text-decoration: none;
  text-align: center;
  text-transform: uppercase;
}

.nav--header-btn a>span {
  position: absolute;
  left: 12px;
  display: block;
  width: 26px;
  height: 3px;
  background: #fff;
  transition: all 0.3s;
}

.nav--header-btn a>span.nav--header-btn1 {
  top: 14px;
}

.nav--header-btn a>span.nav--header-btn2 {
  top: 22px;
  opacity: 1;
}

.nav--header-btn a>span.nav--header-btn3 {
  top: 30px;
}

.nav--header-btn.is-active a>span {
  height: 4px;
}

.nav--header-btn.is-active a>span.nav--header-btn1 {
  top: 22px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.nav--header-btn.is-active a>span.nav--header-btn2 {
  width: 0;
  opacity: 0;
}

.nav--header-btn.is-active a>span.nav--header-btn3 {
  top: 22px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.nav--header-btn.is-active a>p>span {
  display: none;
}

.nav--header-btn.is-active a>p:before {
  content: 'CLOSE';
}

.nav--header-btn a>p {
  position: absolute;
  bottom: 4px;
  left: 0;
  width: 100%;
}

@media screen and (min-width: 1024px),
print {
  .nav--header-btn {
    display: none;
  }
}

/* -------------------------------------------------- */
@media screen and (min-width: 768px),
print {

  .nav-contentinfo,
  .nav--footer {
    width: 100%;
  }

  .nav-contentinfo--02 {
    border-top: 1px solid #4b4b4b;
  }
}

.l-footer .nav li a {
  color: #fff;
}

/*-------- .nav--footer, .nav--footer02 --------*/
@media screen and (max-width: 767px) {

  .nav--footer>li,
  .nav--footer02>li {
    border-top: 1px solid #4b4b4b;
  }

  .nav--footer>li {
    padding: 25px 0;
  }

  .nav--footer02 li a {
    text-align: center;
    font-size: 13px;
  }

  .nav--footer>li:first-child {
    border-top: 0;
  }
}

@media screen and (min-width: 768px),
print {
  .nav--footer {
    table-layout: fixed;
    padding-bottom: 50px;
  }

  .nav--footer02 {
    margin: 0 auto;
    padding: 20px 0;
  }

  .nav--footer02 li {
    padding: 0 18px;
    position: relative;
  }

  .nav--footer02 li:after {
    content: "";
    background: #505050;
    width: 1px;
    height: 13px;
    position: absolute;
    right: 0;
    top: 2px;
  }

  .nav--footer02 li:last-child:after {
    display: none;
  }

  .nav--footer02 li a {
    font-size: 12px;
  }
}

/*-------- .nav__sub --------*/
.nav__sub li {
  display: list-item;
}

.nav__sub li a {
  padding: 5px 0;
  text-align: left;
  font-weight: normal;
  border-bottom: 0;
  font-size: 13px;
}

.nav__sub .nav__title,
.nav__sub .nav__title a {
  font-weight: bold;
}

@media screen and (min-width: 768px),
print {
  .nav__sub li a {
    font-size: 12px;
  }

  .nav__sub .nav__title,
  .nav__sub .nav__title a {
    font-size: 14px;
    margin-bottom: 10px;
  }
}

/*--------------------------------------------*/
@media only screen and (max-width: 767px) {
  .nav-breadcrumb {
    display: none;
  }
}

@media only screen and (min-width: 768px),
print {
  .nav-breadcrumb {
    color: #666;
    font-size: 13px;
    text-align: left;
    padding: 8px 15px;
  }

  .nav-breadcrumb.has-main-img {
    color: #fff;
  }

  .nav-breadcrumb li {
    display: inline-block;
  }

  .nav-breadcrumb li a {
    color: #666;
    text-decoration: none;
  }

  .nav-breadcrumb.has-main-img li a {
    color: #fff;
  }

  .nav-breadcrumb li a:hover {
    text-decoration: underline;
  }

  .nav-breadcrumb li:after {
    font-family: 'nittokucorporate-06';
    content: '\e802';
    color: #c6c6c6;
    padding: 0 0.6em;
    vertical-align: top;
    font-size: 6px;
  }

  .nav-breadcrumb li.current::after {
    display: none;
  }
}


/*2-1-6.  List     [lst-***]*/
.lst-global li {
  text-align: center;
  font-size: 13px;
}

.lst-global li a {
  text-align: center;
}

@media screen and (min-width: 768px),
print {
  .lst-global {
    float: left;
  }

  .lst-global li {
    padding-right: 30px;
  }

  .lst-global li,
  .lst-global li a {
    font-size: 12px;
  }
}

/*--------------------------------------------*/
.lst-num {
  display: block;
  list-style-type: decimal;
  padding-left: 20px;
}

/*--------------------------------------------*/
@media only screen and (min-width: 768px),
print {
  .box-bnr01_slider {
    padding: 0 0 60px;
  }

  .lst-bnr01 {
    width: 1170px;
    margin: 0 auto;
    letter-spacing: -0.4em;
    text-align: center;
  }

  .lst-bnr01 li {
    width: 218px;
    display: inline-block;
    letter-spacing: normal;
    margin-left: 20px;
  }

  .lst-bnr01 li img {
    width: 100%;
    height: auto;
  }

  .lst-bnr01 li:nth-of-type(5n+1) {
    clear: both;
    margin: 0;
  }

  .lst-bnr01 li#tokushu a {
    display: block;
    width: 218px;
    height: 87px;
    background: url("../img/index/index_bnr_cm.png") no-repeat;
    background-size: cover;
  }

  .lst-bnr01_slider:after {
    content: "";
    clear: both;
    display: block;
  }

  .lst-bnr01_slider li {
    display: block;
    height: 96px;
  }

  .lst-bnr01_slider li#tokushu a {
    display: block;
    width: 265px;
    height: 96px;
    background: url("../img/index/index_bnr_cm.png") no-repeat;
    background-size: cover;
  }

  .lst-bnr01_slider_btn {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .box-bnr01_slider {
    padding: 0 0 20px;
  }

  .lst-bnr01 {
    width: 100%;
    margin: 0 auto;
  }

  .lst-bnr01:after {
    content: "";
    clear: both;
    display: block;
  }

  .lst-bnr01 li {
    width: 50%;
    float: left;
    box-sizing: border-box;
    padding: 0 10px;
  }

  .lst-bnr01 li img {
    width: 100%;
    height: auto;
  }

  .lst-bnr01 li#tokushu a {
    display: block;
    background: url("../img/index/index_bnr_cm.png") no-repeat;
    background-size: 100% auto;
    padding: 0;
  }

  .lst-bnr01 li:nth-of-type(2n+1) {
    clear: both;
  }

  .lst-bnr01_slider li#tokushu a {
    display: block;
    background: url("../img/index/index_bnr_cm.png") no-repeat;
    background-size: 100% auto;
    padding: 0;
  }

  .lst-bnr01_slider_btn {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 20px;
    z-index: 100;
    width: 100%;
  }

  .lst-bnr01_slider_btn_inner {
    position: relative;
    width: 302px;
    margin: 5px auto 0;
  }

  .lst-bnr01_slider_btn .btn-slide {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 20px;
    border: 1px solid #333333;
    background: #333333;
    cursor: pointer;
    box-sizing: border-box;
  }

  .lst-bnr01_slider_btn .btn-multi {
    position: absolute;
    bottom: 0;
    left: 45px;
    width: 40px;
    height: 20px;
    border: 1px solid #333333;
    background: #333333;
    cursor: pointer;
    box-sizing: border-box;
  }

  .lst-bnr01_slider_btn .btn-multi.active,
  .lst-bnr01_slider_btn .btn-slide.active {
    border: 1px solid #dddddd;
    background: #ffffff;
  }

  .lst-bnr01_slider_btn .btn-slide span {
    position: absolute;
    display: block;
    top: 5px;
    left: 10px;
    width: 19px;
    height: 9px;
    background: #ffffff;
  }

  .lst-bnr01_slider_btn .btn-slide.active span {
    background: #dddddd;
  }

  .lst-bnr01_slider_btn .btn-multi span {
    position: absolute;
    display: block;
    width: 9px;
    height: 4px;
    background: #ffffff;
  }

  .lst-bnr01_slider_btn .btn-multi.active span {
    background: #dddddd;
  }

  .lst-bnr01_slider_btn .btn-multi span:nth-of-type(1) {
    top: 5px;
    left: 10px;
  }

  .lst-bnr01_slider_btn .btn-multi span:nth-of-type(2) {
    top: 5px;
    left: 20px;
  }

  .lst-bnr01_slider_btn .btn-multi span:nth-of-type(3) {
    top: 10px;
    left: 10px;
  }

  .lst-bnr01_slider_btn .btn-multi span:nth-of-type(4) {
    top: 10px;
    left: 20px;
  }

  .wrp-container>.lst-bnr01_slider {
    width: 302px;
    margin: 0 auto 20px;
  }

  .wrp-container>.lst-bnr01_slider:after {
    content: "";
    clear: both;
    display: block;
  }

  .wrp-container>.lst-bnr01_slider li {
    width: 146px;
    float: left;
  }

  .wrp-container>.lst-bnr01_slider li:nth-of-type(2n) {
    margin-left: 10px;
  }

  .lst-bnr01_slider+.lst-bnr01_slider_btn {
    margin-top:
  }
}

@media print {
  .lst-bnr01 li#tokushu a {
    background: none;
  }
}

/*--------------------------------------------*/
.lst-dot li {
  padding-left: 16px;
  text-indent: -16px;
}

.lst-dot li::before {
  content: "・";
}

@media screen and (min-width: 768px),
print {
  .lst-dot-horizontal {
    width: 100%;
    letter-spacing: -0.4em;
  }

  .lst-dot-horizontal li {
    width: 25%;
    padding-top: 5px;
    display: inline-block;
    letter-spacing: normal;
    box-sizing: border-box;
    padding-right: 20px;
  }

  .lst-dot-horizontal li span {
    display: inline-block;
    padding-left: 1em;
    text-indent: -1em;
  }

  .lst-dot-horizontal li span::before {
    content: "・";
  }
}

/*--------------------------------------------*/

.lst-news li {
  border-bottom: 1px solid #d7d7d7;
  padding: 16px 0 17px;
}

@media screen and (min-width: 768px),
print {
  .lst-news li {
    border-bottom: 1px dashed #d7d7d7;
    padding: 13px 0;
  }

  .lst-news li.noarticle {
    border-bottom: none;
    padding: 13px 0;
  }

  .lst-news.lst-news-narrow li {
    padding: 10px 0;
  }

  .lst-news li a .box-news__icon .icon,
  .lst-news li a .box-news__content {
    transition: all 0.2s;
  }

  .lst-news li a:hover .box-news__content {
    padding-left: 3px;
  }

  .lst-news li a:hover .box-news__icon .icon {
    margin-right: -3px;
  }

  .lst-news.ico-narrow .box-news__icon {
    width: 15px !important;
  }
}

/*--------------------------------------------*/

.lst-event li {
  border-bottom: 1px solid #d7d7d7;
  padding: 10px 0;
}

@media screen and (min-width: 768px),
print {
  .lst-event li {
    border-bottom: 1px dashed #d7d7d7;
    padding: 15px 0;
  }
}

/*--------------------------------------------*/
.lst-recommend {
  padding: 0 15px 20px;
}

.lst-recommend li {
  margin-bottom: 8px;
}

@media screen and (max-width: 767px) {
  .lst-recommend {
    padding: 0;
  }

  .lst-recommend li {
    margin-bottom: 0;
  }

  .lst-recommend .lst__link {
    padding: 10px;
    font-size: 18px;
  }

  .lst-recommend .lst__link span:before {
    display: inline-block;
    font-size: 10px;
    vertical-align: middle;
    margin: 0 0 2px 3px;
  }

  .lst-recommend .txt-recommend {
    padding: 0 10px 10px;
  }
}

.lst-recommend li a {
  display: block;
  height: 100%;
  overflow: hidden;
  position: relative;
  color: #333;
  text-decoration: none;
}

.lst-recommend .lst__img {
  /*position: absolute;*/
  top: 0;
  left: 0;
  height: auto;
  width: 100%;
  vertical-align: bottom;
}

@media screen and (min-width: 768px),
print {
  .lst-recommend {
    display: table;
    table-layout: fixed;
    width: 100%;
    padding: 0;
    margin: 0 -10px;
    box-sizing: border-box;
  }

  .lst-recommend li {
    display: table-cell;
    width: 33.3333333333%;
    height: 200px;
    padding: 0 10px;
    overflow: hidden;
    line-height: 0;
    vertical-align: top;
  }

  .lst-recommend li a {
    /*border-radius: 3px;*/
  }

  .lst-recommend li a img {
    position: static;
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    transform: translate(0, 0);
    transition: all 0.5s;
  }

  .lst-recommend li a:hover img {
    -ms-transform: scale(1.03) translate(0, 0);
    -moz-transform: scale(1.03) translate(0, 0);
    -webkit-transform: scale(1.03) translate(0, 0);
    transform: scale(1.03) translate(0, 0);
  }

  .lst-recommend .lst__link {
    margin: 10px 0 3px;
    font-size: 18px;
  }

  .lst-recommend .lst__link span:before {
    display: inline-block;
    font-size: 10px;
    vertical-align: middle;
    margin: 0 0 2px 3px;
  }

  .lst-recommend .txt-recommend {
    line-height: 1.5;
    font-size: 14px;
  }
}

/*--------------------------------------------*/
.lst-link li {
  border-bottom: 1px solid #d7d7d7;
}

.lst-link a {
  position: relative;
  display: block;
  padding: 19px 0;
  text-decoration: none;
}

.lst-link>li>span {
  display: block;
  padding: 19px 0;
  text-decoration: none;
}

.lst-link a .icon {
  position: absolute;
  right: 5px;
  top: 50%;
  margin-top: -12px;
}

@media screen and (min-width: 768px),
print {
  .lst-link li {
    border-bottom: 1px dotted #d7d7d7;
  }

  .lst-link a {
    display: table;
    width: 100%;
    font-size: 16px;
    transition: all 0.2s;
  }

  .lst-link a:hover {
    margin-left: 6px !important;
  }

  .lst-link a>span.lst-link-text {
    position: table-cell;
    vertical-align: middle;
    padding: 12px 0;
  }

  .lst-link a>span.icon {
    position: relative;
    display: table-cell;
    right: auto;
    top: auto;
    margin-top: 0;
    padding: 0 0;
    vertical-align: middle;
    text-align: right;
  }

  .lst-link>li>span {
    padding: 12px 0;
  }

  .lst-link .grid-6 {
    padding: 0 30px;
  }
}

/*--------------------------------------------*/
.lst-option {
  float: right;
  display: table;
  margin-right: -10px;
}

.lst-option li {
  display: table-cell;
  line-height: 1;
  padding: 0 12px;
  font-size: 12px;
  position: relative;
}

.lst-option li:after {
  content: "";
  display: block;
  background: #e5e5e5;
  width: 1px;
  height: 9px;
  position: absolute;
  right: 0;
  top: 2px;
}

.lst-option a {
  text-decoration: none;
}

.lst-option li:last-child:after {
  display: none;
}

@media screen and (max-width: 767px) {
  .lst-option {
    margin: 8px -10px 8px 0;
  }
}

@media screen and (min-width: 768px),
print {
  .lst-option li {
    display: inline-block;
    line-height: 1;
    padding: 0 20px;
    font-size: 14px;
  }

  .lst-option li:after {
    height: 15px;
    top: -1px;
  }

  .lst-option a {
    text-decoration: none;
  }
}

/*--------------------------------------------*/
.lst-01 li {
  border-bottom: 1px solid #d7d7d7;
  padding: 10px 0;
}

.lst-01__item {
  font-size: 12px;
}

@media screen and (min-width: 768px),
print {
  .lst-01 li {
    display: table;
    width: 100%;
    border-bottom: 1px dashed #d7d7d7;
    padding: 0;
  }

  .lst-01__item {
    display: table-cell;
    width: 140px;
    padding: 15px 0;
    font-size: 16px;
  }

  .lst-01__txt {
    display: table-cell;
    padding: 15px 0;
  }

  .lst-01 li:first-child .lst-01__item {
    padding: 0 0 15px;
  }

  .lst-01 li:first-child .lst-01__txt {
    padding: 0 0 15px;
  }
}

/*--------------------------------------------*/
.lst-02>div {
  border-bottom: 1px solid #d7d7d7;
  padding-top: 10px;
  padding-bottom: 10px;
}

@media screen and (min-width: 768px),
print {
  .lst-02>div {
    border-bottom: 1px dashed #d7d7d7;
    padding-top: 18px;
    padding-bottom: 18px;
  }

  .lst-02>div:first-child {
    padding-top: 0;
  }
}

/*--------------------------------------------*/
.lst-note {
  padding: 5px 0 0;
}

.lst-note li {
  margin: 0 0 0 1em;
  padding: 5px 0 0;
  font-size: 12px;
  text-indent: -1em;
}

@media screen and (min-width: 768px),
print {
  .lst-note {
    padding: 10px 0 0;
  }

  .lst-note li {
    margin: 0 0 0 1em;
    padding: 10px 0 0;
    font-size: 14px;
    text-indent: -1em;
  }
}

/*2-1-7.  Button   [btn-***]*/
.btn {
  border-radius: 1.5px;
  cursor: pointer;
  display: block;
  padding: 19px 0;
  text-align: center;
  vertical-align: middle;
  border: 1px solid transparent;
  text-decoration: none;
}

.btn,
.btn:link,
.btn:visited {
  color: #fff;
}

.btn:hover {
  text-decoration: none;
}

.btn--md {
  margin: 10px 0;
}

.btn--default {
  background: #6a6a6a;
  text-align: left;
  padding-left: 17px
}

.btn--white {
  /*background: #fff;*/
  border: 1px solid #6a6a6a;
  color: #6a6a6a !important;
  text-align: left;
  padding-left: 17px;
}

.btn--white02 {
  border-radius: 0;
  border: 1px solid #ddd;
  color: #333 !important;
  text-align: left;
  padding-left: 17px;
}

.btn--white02 .icon {
  font-size: 12px;
}

.btn--small {
  font-size: 12px;
  font-weight: bold;
}

.btn-lst li {
  display: block;
  padding: 5px 0 0;
}

.btn-lst--equality li {
  display: block;
  padding: 0 10px 10px 0;
}

.lnk-back {
  padding: 10px 0 0;
}

.lnk-back a {
  text-decoration: none;
}

.lnk-back .icon {
  margin-right: 5px;
}

@media screen and (max-width: 767px) {
  .btn {
    padding: 19px 20px;
  }

  .btn-lst li a {
    text-align: center;
  }

  .btn-lst--equality {
    margin: 30px 0 0 0 !important;
  }

  .btn-lst--equality li {
    display: block;
    padding: 0 0 5px 0;
  }

  .lnk-back {
    padding: 15px 0 0;
  }
}

@media screen and (min-width: 768px),
print {
  .btn {
    border-radius: 3px;
    display: inline-block;
    padding: 11px 30px;
  }

  .btn--md {
    margin: 0 0 30px;
  }

  .btn--small {
    padding: 6px 17px;
  }

  .btn--default,
  .btn--white {
    text-align: center;
  }

  .btn--default span,
  .btn--white {
    float: none;
  }

  .btn--default,
  .btn--white02 {
    text-align: center;
  }

  .btn--default span,
  .btn--white02 {
    float: none;
  }

  .btn-lst {
    letter-spacing: -0.4em;
  }

  .btn-lst li {
    display: inline-block;
    letter-spacing: normal;
    padding: 15px 10px 0 0;
  }

  .btn-lst--equality {
    margin: 60px 0 50px !important;
  }

  .btn-lst--equality li:nth-of-type(4n+1) {
    clear: both;
  }

  .btn-lst--equality li .btn {
    display: table;
    box-sizing: border-box;
    width: 100%;
    padding: 0;
    text-align: left;
  }

  .btn-lst--equality li .btn span {
    display: table-cell;
    padding: 11px 0 11px 20px;
    vertical-align: middle;
  }

  .btn-lst--equality li .btn .icon {
    display: table-cell;
    padding: 11px 20px 11px 0;
    text-align: right;
    word-break: keep-all;
    white-space: nowrap;
  }

  .lnk-back {
    padding: 25px 0 0;
  }

  .lnk-back a {
    transition: all 0.2s;
  }

  .lnk-back a:hover {
    margin-left: -6px;
  }

  .lnk-back .icon {
    margin-right: 15px;
  }
}

/*2-1-8.  Anchor   [acr-***]*/
.acr-link-inner,
.acr-link-inner:link {
  text-decoration: underline;
}

.acr-link-inner:visited {}

.acr-link-inner:hover,
.acr-link-inner:active {
  text-decoration: none;
}

.acr-link-inner span {
  padding-left: 5px;
}

/*--------------------------------------------*/
.arc-type01 {
  text-decoration: none;
}

/*--------------------------------------------*/
.arc-type02 {}

@media screen and (max-width: 767px) {
  .arc-global {
    -webkit-border-radius: 1.5px;
    background: #6a6a6a;
    text-align: center;
    display: block;
    padding: 14px 0;
    margin: 5px 0 10px;
    font-size: 15px;
  }
}

@media screen and (min-width: 768px),
print {
  a.lnk-slide {
    transition: all 0.5s;
  }

  a.lnk-slide:hover {
    padding-left: 15px;
  }
}

/*2-1-9.  Text     [txt-***]*/
.txt-english {
  font-weight: 100;
}

.txt-mincho {}

.txt-break {
  /* <br> */
  display: none;
}

.txt-copyright {
  text-align: center;
}

.txt-copyright small {
  font-size: 12px;
}

.txt-caption {
  display: block;
  font-size: 12px;
  line-height: 1.416;
  text-align: center;
}

.txt-time {
  font-size: 12px;
}

.txt-bold {
  font-weight: bold;
}

.txt-title {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 5px;
}

.txt-preview {
  margin-bottom: 5px;
}

.txt--unit {
  font-size: 10px;
  text-align: right;
  padding-bottom: 2px;
}

.txt-catchcopy {
  padding: 0 0 30px;
  font-size: 26px;
  line-height: 1.333;
  font-weight: normal;
}

.l-article>.txt-lead:first-child {
  padding: 10px 0 0;
}

.wrp-container>.txt-lead:first-child {
  padding: 10px 0 0;
}

.txt-small {
  font-size: 10px;
}

.txt-note-num01 {
  margin-left: 1.2em;
  text-indent: -1.2em;
}

@media screen and (max-width: 767px) {
  .txt-catchcopy {
    padding: 10px 0 20px;
    font-size: 20px;
    line-height: 1.333;
    font-weight: normal;
  }
}

@media screen and (min-width: 768px),
print {
  .txt-caption {
    font-size: 14px;
  }

  .txt-time {
    font-size: 14px;
    margin-bottom: 10px;
  }

  .txt-title {
    font-size: 16px;
    margin-bottom: 15px;
  }

  .txt-preview {
    font-size: 14px;
    margin-bottom: 24px;
  }

  .txt-copyright {
    float: right;
  }

  .txt--unit {
    font-size: 14px;
    padding-bottom: 6px;
  }

  .l-article>.txt-lead:first-child {
    padding: 0 0 0;
  }

  .wrp-container>.txt-lead:first-child {
    padding: 0 0 0;
  }

  .txt-small {
    font-size: 14px;
  }
}

.txt-paragraph,
.box-txt-paragraph p {
  margin-bottom: 23px;
}

@media screen and (min-width: 768px),
print {

  .txt-paragraph,
  .box-txt-paragraph p {
    margin-bottom: 25px;
  }
}

.box-txt-paragraph p:last-child {
  margin-bottom: 0;
}

/*2-1-10. Icon     [icn-***]*/
.icn--right:before {
  margin-left: 5px;
  margin-right: 0;
}

@media screen and (min-width: 768px),
print {
  .icn--right:before {
    margin-left: 10px;
  }
}

.icn--graphlegend:before {
  content: "■";

}

/*2-1-11. Label    [lbl-***]*/
.lbl {
  border-radius: 0.25em;
  box-sizing: border-box;
  color: #000;
  display: inline-block;
  font-size: 8px;
  font-weight: normal;
  line-height: 1;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  padding: 2px 5px;
}

.l-container .box-news .lbl--white {
  color: #333;
}

.lbl--default {
  background-color: #fff;
}

.lbl--small {
  font-size: 8px;
  padding: 2px 5px;
}

.lbl--gray {
  background-color: #f0f0f0;
}

.lbl--white {
  border: 1px solid #7f7f7f;
  color: #000;
}

.lbl--new {
  margin: 0 0 2px 4px;
}

.lbl--new02 {
  margin: 0 0 0 7px;
  padding: 2px 3px 1px;
  font-size: 10px;
  border: 1px solid #7f7f7f;
  border-radius: 3px;
  line-height: 1;
  vertical-align: middle;
}

@media screen and (max-width: 767px) {
  .lbl--regular {
    padding: 4px 6px 4px;
    font-size: 14px;
  }
}

@media screen and (min-width: 768px),
print {
  .lbl {
    font-size: 12px;
    padding: 4px 10px;
  }

  .lbl--small {
    padding: 4px 4px 1px;
    font-size: 10px;
  }

  .lbl--new {
    margin: 0 0 2px 7px;
  }
}

/*2-1-12. Form     [frm-***]*/
::-webkit-input-placeholder {
  padding: 4px 2px 0 8px;
  font-size: 12px;
  color: #999;
}

::-moz-placeholder {
  padding: 4px 2px 0 8px;
  font-size: 12px;
  color: #999;
}

:-ms-input-placeholder {
  padding: 4px 2px 0 8px;
  font-size: 12px;
  color: #999;
}

:-moz-placeholder {
  padding: 4px 2px 0 8px;
  font-size: 12px;
  color: #999;
}


/*2-1-13. Error    [err-***]*/


/*2-1-14. UI.     [index-block__***]*/
.index-block__wrp a {
  text-decoration: none;
}

.index-block__box {
  display: block;
  margin: 15px 0 0;
  border: 1px solid #d7d7d7;
  padding: 27px 33px 25px;
}

.index-block__hdg {
  font-size: 15px;
  text-align: center;
}

.index-block__hdg:after {
  display: block;
  content: " ";
  margin: 10px auto 0;
  font-size: 0.1px;
  width: 15px;
  height: 2px;
  background: #d7d7d7;
}

.index-block__txt {
  margin: 18px 0 0;
  font-size: 12px;
}

.index-block__btn {
  margin: 27px 0 0;
  font-size: 12px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .index-block__hdg {
    font-weight: normal;
  }
}

@media screen and (min-width: 768px),
print {
  .index-block__box {
    margin: 0 0 30px;
    padding: 60px 44px 45px;
  }

  .index-block__wrp>div.grid-4:nth-of-type(3n+1) {
    clear: both;
  }

  .index-block__wrp>div.grid-6:nth-of-type(2n+1) {
    clear: both;
  }

  .index-block__hdg {
    font-size: 20px;
    font-weight: normal;
  }

  .index-block__hdg:after {
    margin: 18px auto 0;
    width: 30px;
    height: 3px;
  }

  .index-block__txt {
    margin: 43px 0 0;
    font-size: 16px;
  }

  .index-block__btn {
    margin: 25px 0 0;
    font-size: 16px;
    padding-left: 13px;
    transition: all 0.2s;
  }

  a:hover .index-block__btn {
    padding-left: 21px;
  }
}

@media print {
  .index-block__box {
    height: auto !important;
  }
}

/*2-1-14. UI.     [index-img-block__***]*/
.index-img-block__wrp a {
  text-decoration: none;
}

.index-img-block__box {
  display: block;
  margin: 15px 0 0;
  border: 1px solid #d7d7d7;
  padding: 30px;
}

.index-img-block__box .wrp-grid>div {
  overflow: hidden;
  line-height: 0;
}

.index-img-block__hdg {
  margin: 15px 0 0;
  font-size: 15px;
  text-align: center;
}

.index-img-block__hdg:after {
  display: block;
  content: " ";
  margin: 10px auto 0;
  font-size: 0.1px;
  width: 15px;
  height: 2px;
  background: #d7d7d7;
}

.index-img-block__txt {
  margin: 18px 0 0;
  font-size: 12px;
}

.index-img-block__btn {
  margin: 27px 0 0;
  font-size: 12px;
  text-align: center;
}

@media screen and (min-width: 768px),
print {
  .index-img-block__box {
    margin: 30px 0 0;
    padding: 55px 40px 55px;
  }

  .index-img-block__wrp>div.grid-4:nth-of-type(3n+1) {
    clear: both;
  }

  .index-img-block__wrp>div.grid-6:nth-of-type(2n+1) {
    clear: both;
  }

  .index-img-block__hdg {
    font-size: 20px;
    font-weight: normal;
  }

  .index-img-block__hdg:after {
    margin: 18px auto 0;
    width: 30px;
    height: 3px;
  }

  .index-img-block__txt {
    margin: 43px 0 0;
    font-size: 16px;
  }

  .index-img-block__btn {
    margin: 37px 0 0;
    font-size: 16px;
    transition: all 0.2s;
  }

  a:hover .index-img-block__btn {
    padding-left: 10px;
  }

  a.index-img-block__box:hover .fluid-image {
    transform: none;
  }
}

/*2-1-14. UI.     [index-img-block02__***]*/
.index-img-block02 {
  padding: 0 0 15px;
}

.index-img-block02__box {
  display: block;
  margin: 0 0 15px;
  background: #ffffff;
}

.index-img-block02__box a {
  display: block;
  margin: 0;
  padding: 0 0 20px;
  text-decoration: none;
}

.index-img-block02__box>a>div {
  position: relative;
  overflow: hidden;
  line-height: 0;
}

.index-img-block02__box-txt {
  margin: 15px 0 0;
  padding: 0 30px;
  text-align: left;
}

.index-img-block02__hdg {
  font-size: 18px;
  font-weight: normal;
}

.index-img-block02__hdg .icon {
  margin-left: 3px;
  font-size: 14px;
}

.index-img-block02__txt {
  margin: 13px 0 0;
  font-size: 15px;
}

@media screen and (max-width: 767px) {
  .index-img-block02__box-txt {
    margin: 8px 0 0;
    padding: 0 18px;
    text-align: left;
  }

  .index-img-block02__txt {
    margin: 10px 0 0;
    font-size: 15px;
  }
}

@media screen and (min-width: 768px),
print {
  .index-img-block02__wrp {
    padding: 0 0 30px;
  }

  .index-img-block02 {
    display: table;
    margin: 0 0 30px;
    padding: 0 0 0;
  }

  .index-img-block02__box {
    display: table-cell;
    margin: 0 0 0;
    padding: 0 0;
    width: 33.3333333333%;
    background: #ffffff;
  }

  .index-img-block02__box a {
    display: block;
    height: 100%;
    margin: 0;
    padding: 0;
  }

  .index-img-block02__box-txt {
    border-left: 1px solid #ededed;
  }

  .index-img-block02__wrp .index-img-block02__box:first-child .index-img-block02__box-txt {
    border: none;
  }

  .index-img-block02__hdg {
    font-size: 20px;
    text-align: center;
  }

  .index-img-block02__hdg .icon {
    margin-left: 18px;
    margin-bottom: 2px;
    font-size: 16px;
  }

  .index-img-block02__txt {
    margin: 13px 0 0;
    font-size: 14px;
  }
}

/*2-1-14. UI.     [index-img-block03__***]*/
.index-img-block03 {
  padding: 0 0 15px;
}

.index-img-block03__box {
  display: block;
  margin: 0 0 15px;
  background: #ffffff;
}

.index-img-block03__box a {
  display: block;
  margin: 0;
  padding: 0 0 20px;
  text-decoration: none;
}

.index-img-block03__box-txt {
  margin: 15px 0 0;
  padding: 0 30px;
  text-align: left;
}

.index-img-block03__hdg {
  font-size: 18px;
}

.index-img-block03__hdg .icon {
  margin-left: 3px;
  font-size: 14px;
}

.index-img-block03__txt {
  margin: 13px 0 0;
  font-size: 15px;
}

@media screen and (max-width: 767px) {
  .index-img-block03__hdg {
    font-size: 18px;
    font-weight: normal;
  }
}

@media screen and (min-width: 768px),
print {
  .index-img-block03__wrp:last-child {
    padding: 0 0 30px;
  }

  .index-img-block03 {
    display: table;
    margin: 0 0 30px;
    padding: 0 0 0;
    background: #ffffff;
  }

  .index-img-block03__box {
    display: table-cell;
    margin: 0 0 0;
    padding: 0 0 35px;
    width: 50%;
  }

  .index-img-block03__box a {
    display: block;
    height: 100%;
    margin: 0;
    padding: 0;
  }

  .index-img-block03__box a>div {
    overflow: hidden;
    line-height: 0;
  }

  .index-img-block03__box a>div img {
    position: static;
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    transform: translate(0, 0);
    transition: all 0.5s;
  }

  .index-img-block03__box a:hover>div img {
    -ms-transform: scale(1.03) translate(0, 0);
    -moz-transform: scale(1.03) translate(0, 0);
    -webkit-transform: scale(1.03) translate(0, 0);
    transform: scale(1.03) translate(0, 0);
  }

  .index-img-block03__box-txt {
    border-left: 1px solid #ededed;
  }

  .index-img-block03__wrp .index-img-block03__box:first-child .index-img-block03__box-txt {
    border: none;
  }

  .index-img-block03__hdg {
    font-size: 20px;
    font-weight: normal;
  }

  .index-img-block03__hdg .icon {
    margin-left: 18px;
    margin-bottom: 2px;
    font-size: 16px;
  }

  .index-img-block03__txt {
    margin: 13px 0 0;
    font-size: 14px;
  }
}

/*2-1-14. UI.     [member-introduction__***]*/
.member-introduction__box {
  display: block;
  margin: 15px 0 0;
  padding: 30px;
  background: #ffffff;
}

.member-introduction__category {
  margin-top: 12px;
  font-size: 13px;
}

.member-introduction__hdg {
  margin-top: 16px;
  font-size: 18px;
}

.member-introduction__lnk {
  margin-top: 16px;
  font-size: 13px;
}

a:hover .member-introduction__lnk {
  text-decoration: none;
}

.member-introduction__txt {
  margin-top: 12px;
  font-size: 13px;
}

@media screen and (max-width: 767px) {
  .member-introduction__box {
    display: block;
    margin: 0 0 15px;
    padding: 30px;
    background: #ffffff;
  }

  .member-introduction__category {
    margin-top: 3px;
    font-size: 14px;
  }

  .member-introduction__hdg {
    margin-top: 12px;
    font-size: 26px;
  }

  .member-introduction__lnk {
    margin-top: 8px;
    font-size: 14px;
  }
}

@media screen and (min-width: 768px),
print {
  .member-introduction__wrp {
    padding: 0 0 60px;
  }

  .member-introduction__box {
    margin: 0 0 30px;
    padding: 20px 20px 20px;
  }

  .member-introduction__wrp div.grid-6:nth-of-type(2n+1) {
    clear: both;
  }

  .member-introduction__category {
    margin-top: 0;
    font-size: 14px;
  }

  .member-introduction__hdg {
    margin-top: 23px;
    font-size: 26px;
  }

  .member-introduction__lnk {
    margin-top: 15px;
    font-size: 14px;
  }

  .member-introduction__txt {
    margin-top: 23px;
    font-size: 14px;
  }

  a.member-introduction__box .fluid-image {
    transition: none;
  }

  a.member-introduction__box:hover .fluid-image {
    transform: none;
  }

  a.member-introduction__box .member-introduction__lnk {
    transition: all 0.2s;
  }

  a.member-introduction__box:hover .member-introduction__lnk {
    padding-left: 6px;
  }
}

/*2-1-14. UI.     [profile__***]*/
.profile {
  display: block;
  margin: 15px 0 0;
  padding: 30px;
  background: #ffffff;
}

.profile__category {
  margin-top: 12px;
  font-size: 13px;
}

.profile__hdg {
  margin-top: 16px;
  font-size: 18px;
}

.profile__hdg span {
  display: block;
  margin: 5px 0 0;
  font-size: 14px;
}

.profile__lnk {
  margin-top: 16px;
  font-size: 13px;
  text-decoration: underline;
}

a:hover .profile__lnk {
  text-decoration: none;
}

.profile__txt {
  margin-top: 12px;
  font-size: 13px;
}

.profile__lst {
  margin-top: -18px;
  border-top: 1px solid #d7d7d7;
}

.profile__lst-items {
  border-bottom: 1px solid #d7d7d7;
  padding: 10px 0;
}

.profile__lst-date {
  font-size: 12px;
}

@media screen and (max-width: 767px) {
  .profile {
    display: block;
    margin: 0 0 15px;
    padding: 30px;
    background: #ffffff;
  }

  .profile__lst {
    margin-top: 15px;
    border-top: 1px solid #d7d7d7;
  }
}

@media screen and (min-width: 768px),
print {
  .profile_wrp {
    padding: 0 0 60px;
  }

  .profile {
    margin: 30px 0 0;
    padding: 60px;
  }

  .profile__box {
    display: table;
    width: 100%;
  }

  .profile__box--left {
    display: table-cell;
    width: 310px;
    vertical-align: top;
  }

  .profile__box--right {
    display: table-cell;
    vertical-align: top;
    padding-left: 30px;
  }

  .profile__category {
    margin-top: 0;
    font-size: 14px;
  }

  .profile__hdg {
    margin-top: 23px;
    font-size: 26px;
  }

  .profile__hdg span {
    margin: 5px 0 0;
    font-size: 12px;
  }

  .profile__lnk {
    margin-top: 15px;
    font-size: 14px;
  }

  .profile__txt {
    margin-top: 23px;
    font-size: 14px;
  }

  .profile__lst {
    width: 100%;
    border-top: none;
  }

  .profile__lst-items {
    border-bottom: 1px dashed #d7d7d7;
    padding: 15px 0;
  }

  .profile__lst-items>div {
    display: table;
  }

  .profile__lst-date {
    display: table-cell;
    width: 120px;
    vertical-align: top;
    font-size: 14px;
  }

  .profile__lst-txt {
    display: table-cell;
    vertical-align: top;
  }
}

/*2-1-14. UI.     [pdf-thumbnail__***]*/
.pdf-thumbnail__box {
  display: block;
  margin: 30px 0 0;
  text-decoration: none;
}

.pdf-thumbnail__ttl {
  font-size: 15px;
  text-decoration: underline;
}

.pdf-thumbnail__box:hover .pdf-thumbnail__ttl {
  text-decoration: none;
}

.pdf-thumbnail__icon {
  margin: 9px 0 0;
  font-size: 12px;
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .pdf-thumbnail__box {
    margin: 0 0 50px;
  }

  .pdf-thumbnail__ttl {
    font-size: 15px;
    text-decoration: underline;
    font-weight: normal;
    margin-top: 5px;
  }
}

@media screen and (min-width: 768px),
print {
  .pdf-thumbnail__box {
    margin: 0 0 30px;
  }

  a.pdf-thumbnail__box>div {
    overflow: hidden;
    line-height: 0;
  }

  a.pdf-thumbnail__box>div img {
    position: static;
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    transform: translate(0, 0);
    transition: all 0.5s;
  }

  a.pdf-thumbnail__box:hover>div img {
    -ms-transform: scale(1.03) translate(0, 0);
    -moz-transform: scale(1.03) translate(0, 0);
    -webkit-transform: scale(1.03) translate(0, 0);
    transform: scale(1.03) translate(0, 0);
  }

  .pdf-thumbnail__ttl {
    font-size: 16px;
    font-weight: normal;
    margin-top: 10px;
  }

  .pdf-thumbnail__icon {
    margin: 10px 0 0;
    font-size: 14px;
  }

  .pdf-thumbnail__img {
    display: block;
    width: 270px;
    overflow: hidden;
    line-height: 0;
  }

  .has-sub .pdf-thumbnail__img {
    width: 190px;
  }
}

/*2-1-14. UI.     [box-notes__***]*/
.box-notes {
  margin: 15px 0 0;
  padding: 17px 17px;
  background: #f5f5f5;
  border-radius: 3px;
}

.box-notes__hdg {
  font-size: 15px;
}

.box-notes__lst {
  margin: 10px 0 0;
}

.box-notes__lst>li {
  margin: 5px 0 0 1em;
  text-indent: -1em;
}

.box-notes__lst>li::before {
  content: "・";
}

.box-notes__txt {
  margin: 23px 0 0;
}

@media screen and (min-width: 768px),
print {
  .box-notes {
    margin: 30px 0 0;
    padding: 37px 50px 30px;
    background: #f5f5f5;
    border-radius: 5px;
  }

  .box-notes .hdg-lv4 {
    margin-top: 0;
  }

  .box-notes__hdg {
    font-size: 18px;
  }

  .box-notes__lst {
    margin: 20px 0 0;
  }

  .box-notes__lst>li {
    margin: 9px 0 0 1em;
    text-indent: -1em;
  }

  .box-notes__txt {
    margin: 23px 0 0;
  }
}

/*2-1-14. UI.     [page-link__***]*/
.page-link__wrap {
  margin: 30px -15px 0;
  padding: 28px 15px;
  background: #f5f5f5;
}

.page-link__hdg {
  margin: 0 0 14px;
  font-weight: bold;
  font-size: 15px;
}

.page-link__lst {
  display: block;
  padding: 0 15px 15px;
  background: #ffffff;
  border-radius: 5px;
}

.page-link__lst li {
  display: block;
  padding: 0;
  border-bottom: 1px solid #d7d7d7;
}

.page-link__lst li a {
  display: table;
  width: 100%;
  padding: 20px 0;
  font-size: 15px;
  text-decoration: none;
}

.page-link__lst li span {
  display: table-cell;
  vertical-align: middle;
}

.page-link__lst li span.icon {
  text-align: right;
}

@media screen and (max-width: 767px) {
  .page-link__wrap {
    margin: -15px -15px 0;
    padding: 28px 15px;
    background: #f5f5f5;
  }
}

@media screen and (min-width: 768px),
print {
  .page-link__wrap {
    display: table;
    margin: 0;
    padding: 0;
    background: #ffffff;
    min-height: 44px;
  }

  .page-link__hdg {
    display: table-cell;
    margin: 0 0 0;
    padding: 0 40px 0 0;
    font-weight: bold;
    font-size: 16px;
    white-space: nowrap;
  }

  .page-link__hdg span {
    position: relative;
    display: inline-block;
    background: #f5f5f5;
    padding: 7px 14px 7px 15px;
    border-radius: 3px;
    font-weight: normal;
  }

  .page-link__hdg span:after {
    content: " ";
    position: absolute;
    display: block;
    width: 11px;
    height: 100%;
    font-size: 0.1px;
    top: 0;
    right: -11px;
    background: url("../img/cmn_icn_arrow_gray_right.png") left center no-repeat;
  }

  .page-link__lst {
    display: block;
    padding: 0;
    border-radius: 0;
    letter-spacing: -0.4em;
  }

  .page-link__lst li {
    display: inline-block;
    letter-spacing: normal;
    padding: 0 25px 0 0;
    border-bottom: none;
  }

  .page-link__lst li a {
    display: table;
    width: auto;
    padding: 0 0;
    font-size: 16px;
    text-decoration: none;
    transition: all 0.2s;
  }

  .page-link__lst li a:hover {
    margin-top: 3px;
  }

  .page-link__lst li span {
    display: table-cell;
    vertical-align: middle;
  }

  .page-link__lst li span.icon {
    text-align: right;
  }

  .page-link__lst li .icon-down-open-big:before {
    margin-left: 3px;
    font-size: 11px;
  }
}

/*2-1-14. UI.     [l-faq-block__***]*/
.l-faq {
  margin: 10px 0 0;
  padding: 10px 15px;
  background: #f5f5f5;
}

.l-faq__item {
  margin: 0 0 5px;
  padding: 10px 15px;
  background: #ffffff;
}

.l-faq__question {
  padding: 0 0 5px 30px;
  position: relative;
  font-weight: normal;
}

.l-faq__question::before {
  position: absolute;
  display: block;
  content: "Q";
  top: 0;
  left: 0;
}

.l-faq__answer-blk {
  margin: 0;
  padding: 16px 0 0;
  border-top: 1px dotted #d7d7d7;
}

.l-faq__answer {
  padding: 0 0 0 30px;
  position: relative;
}

.l-faq__answer::before {
  position: absolute;
  display: block;
  content: "A";
  top: 0;
  left: 0;
}

.l-faq__answer-btn {
  margin: 5px 0 0 30px;
}

@media screen and (min-width: 768px),
print {
  .l-faq {
    margin: 30px 0 0;
    padding: 0 30px 20px;
  }

  .l-faq__item {
    margin: 0 0 10px;
    padding: 40px 40px;
  }

  .l-faq__question {
    padding: 0 0 10px 60px;
  }

  .l-faq__answer-blk {
    margin: 0;
    padding: 16px 0 0;
  }

  .l-faq__answer {
    padding: 0 0 0 60px;
  }

  .l-faq__answer-btn {
    margin: 15px 0 0 60px;
  }
}

/*2-1-14. UI.     [js-medical_contents]*/
.js-medical_contents_off {
  display: none;
}

.js-medical_contents_on {
  display: none;
}

/*2-1-14. UI.     [box-err-***]*/
@media screen and (max-width: 767px) {
  .lst-err_lnk {
    width: 100%;
    margin: 15px 0 0;
    border-top: 1px solid #d7d7d7;
  }

  .lst-err_lnk li {
    display: block;
    border-bottom: 1px solid #d7d7d7;
  }

  .lst-err_lnk li a {
    display: table;
    width: 100%;
    padding: 15px 0 15px;
    text-decoration: none;
  }

  .lst-err_lnk li a span {
    display: table-cell;
    vertical-align: middle;
  }

  .lst-err_lnk li a span.lst-err_ttl {
    width: auto;
  }

  .lst-err_lnk li a span.icon {
    width: 30px;
    text-align: right;
  }
}

@media screen and (min-width: 768px),
print {
  .lst-err_lnk {
    width: 100%;
    letter-spacing: -0.4em;
    text-align: center;
    border: none;
    margin: 15px 0 0;
  }

  .lst-err_lnk li {
    display: inline-block;
    letter-spacing: normal;
    padding: 5px 10px 0;
    border: none;
  }

  .lst-err_lnk .icon-right-open-big {
    display: none;
  }

  .lst-err_lnk .icon-popup {
    margin-left: 5px;
  }
}

.box-err-search {
  width: 100%;
  margin: 0 auto;
}

.ipt-err-search {
  width: 100%;
  border: 1px solid #e5e5e5;
  border-radius: 3px;
  padding: 5px;
  box-sizing: border-box;
  height: 34px;
}

.box-err-search:after {
  content: "";
  clear: both;
  display: block;
}

.box-err-search-input {
  width: 80%;
  float: left;
  padding: 0 5px 0 0;
  box-sizing: border-box;
}

.ipt-err-search {}

.box-err-search-button {
  width: 20%;
  float: right;
}

.box-err-search .btn--default {
  display: inline-block;
  width: 100%;
  height: 34px;
  margin: 0 0 0;
  padding: 0;
  text-align: center;
}

@media screen and (min-width: 768px),
print {
  .box-err-search {
    width: 650px;
  }

  .box-err-search-input {
    width: 560px;
  }

  .box-err-search-button {
    width: 85px;
  }

  .ipt-err-search {
    height: 52px;
  }

  .box-err-search .btn--default {
    display: block;
    width: 100%;
    height: 52px;
  }
}



/* 2-2. Utility
-------------------------------------------------- */
/*2-2-1. clearfix [ModernType]*/
#l-header:after,
#l-container:after,
#l-main:after,
#l-sub:after,
#l-footer:after,
.wrp-container:after,
.clearfix:after {
  display: block;
  clear: both;
  content: "";
}


/*2-2-2. margin,padding [mb10,pt20]*/
/* margin  */
.m0 {
  margin: 0 !important;
}

.m5 {
  margin: 5px !important;
}

.m10 {
  margin: 10px !important;
}

.m15 {
  margin: 15px !important;
}

.m20 {
  margin: 20px !important;
}

.m25 {
  margin: 25px !important;
}

.m30 {
  margin: 30px !important;
}

.m35 {
  margin: 35px !important;
}

.m40 {
  margin: 40px !important;
}

.m45 {
  margin: 45px !important;
}

.m50 {
  margin: 50px !important;
}

.m55 {
  margin: 55px !important;
}

.m60 {
  margin: 60px !important;
}

.m65 {
  margin: 65px !important;
}

.m70 {
  margin: 70px !important;
}

.m75 {
  margin: 75px !important;
}

.m80 {
  margin: 80px !important;
}

.m85 {
  margin: 85px !important;
}

.m90 {
  margin: 90px !important;
}

.m95 {
  margin: 95px !important;
}

.m100 {
  margin: 100px !important;
}

/* margin-top */
.mt-5 {
  margin-top: -5px !important;
}

.mt-10 {
  margin-top: -10px !important;
}

.mt-15 {
  margin-top: -15px !important;
}

.mt-20 {
  margin-top: -20px !important;
}

.mt-25 {
  margin-top: -25px !important;
}

.mt-30 {
  margin-top: -30px !important;
}

.mt-35 {
  margin-top: -35px !important;
}

.mt-40 {
  margin-top: -40px !important;
}

.mt-45 {
  margin-top: -45px !important;
}

.mt-50 {
  margin-top: -50px !important;
}

.mt-55 {
  margin-top: -55px !important;
}

.mt-60 {
  margin-top: -60px !important;
}

.mt-65 {
  margin-top: -65px !important;
}

.mt-70 {
  margin-top: -70px !important;
}

.mt-75 {
  margin-top: -75px !important;
}

.mt-80 {
  margin-top: -80px !important;
}

.mt-85 {
  margin-top: -85px !important;
}

.mt-90 {
  margin-top: -90px !important;
}

.mt-95 {
  margin-top: -95px !important;
}

.mt-100 {
  margin-top: -100px !important;
}

.mt0 {
  margin-top: 0 !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mt55 {
  margin-top: 55px !important;
}

.mt60 {
  margin-top: 60px !important;
}

.mt65 {
  margin-top: 65px !important;
}

.mt70 {
  margin-top: 70px !important;
}

.mt75 {
  margin-top: 75px !important;
}

.mt80 {
  margin-top: 80px !important;
}

.mt85 {
  margin-top: 85px !important;
}

.mt90 {
  margin-top: 90px !important;
}

.mt95 {
  margin-top: 95px !important;
}

.mt100 {
  margin-top: 100px !important;
}

/* margin-right */
.mr0 {
  margin-right: 0 !important;
}

.mr5 {
  margin-right: 5px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mr15 {
  margin-right: 15px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mr25 {
  margin-right: 25px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.mr35 {
  margin-right: 35px !important;
}

.mr40 {
  margin-right: 40px !important;
}

.mr45 {
  margin-right: 45px !important;
}

.mr50 {
  margin-right: 50px !important;
}

.mr55 {
  margin-right: 55px !important;
}

.mr60 {
  margin-right: 60px !important;
}

.mr65 {
  margin-right: 65px !important;
}

.mr70 {
  margin-right: 70px !important;
}

.mr75 {
  margin-right: 75px !important;
}

.mr80 {
  margin-right: 80px !important;
}

.mr85 {
  margin-right: 85px !important;
}

.mr90 {
  margin-right: 90px !important;
}

.mr95 {
  margin-right: 95px !important;
}

.mr100 {
  margin-right: 100px !important;
}

/* margin-bottom */
.mb0 {
  margin-bottom: 0 !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.mb55 {
  margin-bottom: 55px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.mb65 {
  margin-bottom: 65px !important;
}

.mb70 {
  margin-bottom: 70px !important;
}

.mb75 {
  margin-bottom: 75px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.mb85 {
  margin-bottom: 85px !important;
}

.mb90 {
  margin-bottom: 90px !important;
}

.mb95 {
  margin-bottom: 95px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

/* margin-left */
.ml0 {
  margin-left: 0 !important;
}

.ml5 {
  margin-left: 5px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.ml15 {
  margin-left: 15px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.ml35 {
  margin-left: 35px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.ml45 {
  margin-left: 45px !important;
}

.ml50 {
  margin-left: 50px !important;
}

.ml55 {
  margin-left: 55px !important;
}

.ml60 {
  margin-left: 60px !important;
}

.ml65 {
  margin-left: 65px !important;
}

.ml70 {
  margin-left: 70px !important;
}

.ml75 {
  margin-left: 75px !important;
}

.ml80 {
  margin-left: 80px !important;
}

.ml85 {
  margin-left: 85px !important;
}

.ml90 {
  margin-left: 90px !important;
}

.ml95 {
  margin-left: 95px !important;
}

.ml100 {
  margin-left: 100px !important;
}

/* padding */
.p0 {
  padding: 0 !important;
}

.p5 {
  padding: 5px !important;
}

.p10 {
  padding: 10px !important;
}

.p15 {
  padding: 15px !important;
}

.p20 {
  padding: 20px !important;
}

.p25 {
  padding: 25px !important;
}

.p30 {
  padding: 30px !important;
}

.p35 {
  padding: 35px !important;
}

.p40 {
  padding: 40px !important;
}

.p45 {
  padding: 45px !important;
}

.p50 {
  padding: 50px !important;
}

.p55 {
  padding: 55px !important;
}

.p60 {
  padding: 60px !important;
}

.p65 {
  padding: 65px !important;
}

.p70 {
  padding: 70px !important;
}

.p75 {
  padding: 75px !important;
}

.p80 {
  padding: 80px !important;
}

.p85 {
  padding: 85px !important;
}

.p90 {
  padding: 90px !important;
}

.p95 {
  padding: 95px !important;
}

.p100 {
  padding: 100px !important;
}

/* padding-top */
.pt0 {
  padding-top: 0 !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pt35 {
  padding-top: 35px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pt55 {
  padding-top: 55px !important;
}

.pt60 {
  padding-top: 60px !important;
}

.pt65 {
  padding-top: 65px !important;
}

.pt70 {
  padding-top: 70px !important;
}

.pt75 {
  padding-top: 75px !important;
}

.pt80 {
  padding-top: 80px !important;
}

.pt85 {
  padding-top: 85px !important;
}

.pt90 {
  padding-top: 90px !important;
}

.pt95 {
  padding-top: 95px !important;
}

.pt100 {
  padding-top: 100px !important;
}

/* padding-right */
.pr0 {
  padding-right: 0 !important;
}

.pr5 {
  padding-right: 5px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.pr25 {
  padding-right: 25px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.pr35 {
  padding-right: 35px !important;
}

.pr40 {
  padding-right: 40px !important;
}

.pr45 {
  padding-right: 45px !important;
}

.pr50 {
  padding-right: 50px !important;
}

.pr55 {
  padding-right: 55px !important;
}

.pr60 {
  padding-right: 60px !important;
}

.pr65 {
  padding-right: 65px !important;
}

.pr70 {
  padding-right: 70px !important;
}

.pr75 {
  padding-right: 75px !important;
}

.pr80 {
  padding-right: 80px !important;
}

.pr85 {
  padding-right: 85px !important;
}

.pr90 {
  padding-right: 90px !important;
}

.pr95 {
  padding-right: 95px !important;
}

.pr100 {
  padding-right: 100px !important;
}

/* padding-bottom */
.pb0 {
  padding-bottom: 0 !important;
}

.pb5 {
  padding-bottom: 5px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pb35 {
  padding-bottom: 35px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.pb55 {
  padding-bottom: 55px !important;
}

.pb60 {
  padding-bottom: 60px !important;
}

.pb65 {
  padding-bottom: 65px !important;
}

.pb70 {
  padding-bottom: 70px !important;
}

.pb75 {
  padding-bottom: 75px !important;
}

.pb80 {
  padding-bottom: 80px !important;
}

.pb85 {
  padding-bottom: 85px !important;
}

.pb90 {
  padding-bottom: 90px !important;
}

.pb95 {
  padding-bottom: 95px !important;
}

.pb100 {
  padding-bottom: 100px !important;
}

/* padding-left */
.pl0 {
  padding-left: 0 !important;
}

.pl5 {
  padding-left: 5px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pl25 {
  padding-left: 25px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pl35 {
  padding-left: 35px !important;
}

.pl40 {
  padding-left: 40px !important;
}

.pl45 {
  padding-left: 45px !important;
}

.pl50 {
  padding-left: 50px !important;
}

.pl55 {
  padding-left: 55px !important;
}

.pl60 {
  padding-left: 60px !important;
}

.pl65 {
  padding-left: 65px !important;
}

.pl70 {
  padding-left: 70px !important;
}

.pl75 {
  padding-left: 75px !important;
}

.pl80 {
  padding-left: 80px !important;
}

.pl85 {
  padding-left: 85px !important;
}

.pl90 {
  padding-left: 90px !important;
}

.pl95 {
  padding-left: 95px !important;
}

.pl100 {
  padding-left: 100px !important;
}

.mlrauto {
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 767px) {

  /* margin  */
  .m0-sp {
    margin: 0 !important;
  }

  .m5-sp {
    margin: 5px !important;
  }

  .m10-sp {
    margin: 10px !important;
  }

  .m15-sp {
    margin: 15px !important;
  }

  .m20-sp {
    margin: 20px !important;
  }

  .m25-sp {
    margin: 25px !important;
  }

  .m30-sp {
    margin: 30px !important;
  }

  .m35-sp {
    margin: 35px !important;
  }

  .m40-sp {
    margin: 40px !important;
  }

  .m45-sp {
    margin: 45px !important;
  }

  .m50-sp {
    margin: 50px !important;
  }

  .m55-sp {
    margin: 55px !important;
  }

  .m60-sp {
    margin: 60px !important;
  }

  .m65-sp {
    margin: 65px !important;
  }

  .m70-sp {
    margin: 70px !important;
  }

  .m75-sp {
    margin: 75px !important;
  }

  .m80-sp {
    margin: 80px !important;
  }

  .m85-sp {
    margin: 85px !important;
  }

  .m90-sp {
    margin: 90px !important;
  }

  .m95-sp {
    margin: 95px !important;
  }

  .m100-sp {
    margin: 100px !important;
  }

  /* margin-top */
  .mt0-sp {
    margin-top: 0 !important;
  }

  .mt-5-sp {
    margin-top: -5px !important;
  }

  .mt-10-sp {
    margin-top: -10px !important;
  }

  .mt-15-sp {
    margin-top: -15px !important;
  }

  .mt-20-sp {
    margin-top: -20px !important;
  }

  .mt-25-sp {
    margin-top: -25px !important;
  }

  .mt-30-sp {
    margin-top: -30px !important;
  }

  .mt-35-sp {
    margin-top: -35px !important;
  }

  .mt-40-sp {
    margin-top: -40px !important;
  }

  .mt-45-sp {
    margin-top: -45px !important;
  }

  .mt-50-sp {
    margin-top: -50px !important;
  }

  .mt-55-sp {
    margin-top: -55px !important;
  }

  .mt-60-sp {
    margin-top: -60px !important;
  }

  .mt-65-sp {
    margin-top: -65px !important;
  }

  .mt-70-sp {
    margin-top: -70px !important;
  }

  .mt-75-sp {
    margin-top: -75px !important;
  }

  .mt-80-sp {
    margin-top: -80px !important;
  }

  .mt-85-sp {
    margin-top: -85px !important;
  }

  .mt-90-sp {
    margin-top: -90px !important;
  }

  .mt-95-sp {
    margin-top: -95px !important;
  }

  .mt-100-sp {
    margin-top: -100px !important;
  }

  .mt5-sp {
    margin-top: 5px !important;
  }

  .mt10-sp {
    margin-top: 10px !important;
  }

  .mt15-sp {
    margin-top: 15px !important;
  }

  .mt20-sp {
    margin-top: 20px !important;
  }

  .mt25-sp {
    margin-top: 25px !important;
  }

  .mt30-sp {
    margin-top: 30px !important;
  }

  .mt35-sp {
    margin-top: 35px !important;
  }

  .mt40-sp {
    margin-top: 40px !important;
  }

  .mt45-sp {
    margin-top: 45px !important;
  }

  .mt50-sp {
    margin-top: 50px !important;
  }

  .mt55-sp {
    margin-top: 55px !important;
  }

  .mt60-sp {
    margin-top: 60px !important;
  }

  .mt65-sp {
    margin-top: 65px !important;
  }

  .mt70-sp {
    margin-top: 70px !important;
  }

  .mt75-sp {
    margin-top: 75px !important;
  }

  .mt80-sp {
    margin-top: 80px !important;
  }

  .mt85-sp {
    margin-top: 85px !important;
  }

  .mt90-sp {
    margin-top: 90px !important;
  }

  .mt95-sp {
    margin-top: 95px !important;
  }

  .mt100-sp {
    margin-top: 100px !important;
  }

  /* margin-right */
  .mr0-sp {
    margin-right: 0 !important;
  }

  .mr5-sp {
    margin-right: 5px !important;
  }

  .mr10-sp {
    margin-right: 10px !important;
  }

  .mr15-sp {
    margin-right: 15px !important;
  }

  .mr20-sp {
    margin-right: 20px !important;
  }

  .mr25-sp {
    margin-right: 25px !important;
  }

  .mr30-sp {
    margin-right: 30px !important;
  }

  .mr35-sp {
    margin-right: 35px !important;
  }

  .mr40-sp {
    margin-right: 40px !important;
  }

  .mr45-sp {
    margin-right: 45px !important;
  }

  .mr50-sp {
    margin-right: 50px !important;
  }

  .mr55-sp {
    margin-right: 55px !important;
  }

  .mr60-sp {
    margin-right: 60px !important;
  }

  .mr65-sp {
    margin-right: 65px !important;
  }

  .mr70-sp {
    margin-right: 70px !important;
  }

  .mr75-sp {
    margin-right: 75px !important;
  }

  .mr80-sp {
    margin-right: 80px !important;
  }

  .mr85-sp {
    margin-right: 85px !important;
  }

  .mr90-sp {
    margin-right: 90px !important;
  }

  .mr95-sp {
    margin-right: 95px !important;
  }

  .mr100-sp {
    margin-right: 100px !important;
  }

  /* margin-bottom */
  .mb0-sp {
    margin-bottom: 0 !important;
  }

  .mb5-sp {
    margin-bottom: 5px !important;
  }

  .mb10-sp {
    margin-bottom: 10px !important;
  }

  .mb15-sp {
    margin-bottom: 15px !important;
  }

  .mb20-sp {
    margin-bottom: 20px !important;
  }

  .mb25-sp {
    margin-bottom: 25px !important;
  }

  .mb30-sp {
    margin-bottom: 30px !important;
  }

  .mb35-sp {
    margin-bottom: 35px !important;
  }

  .mb40-sp {
    margin-bottom: 40px !important;
  }

  .mb45-sp {
    margin-bottom: 45px !important;
  }

  .mb50-sp {
    margin-bottom: 50px !important;
  }

  .mb55-sp {
    margin-bottom: 55px !important;
  }

  .mb60-sp {
    margin-bottom: 60px !important;
  }

  .mb65-sp {
    margin-bottom: 65px !important;
  }

  .mb70-sp {
    margin-bottom: 70px !important;
  }

  .mb75-sp {
    margin-bottom: 75px !important;
  }

  .mb80-sp {
    margin-bottom: 80px !important;
  }

  .mb85-sp {
    margin-bottom: 85px !important;
  }

  .mb90-sp {
    margin-bottom: 90px !important;
  }

  .mb95-sp {
    margin-bottom: 95px !important;
  }

  .mb100-sp {
    margin-bottom: 100px !important;
  }

  /* margin-left */
  .ml0-sp {
    margin-left: 0 !important;
  }

  .ml5-sp {
    margin-left: 5px !important;
  }

  .ml10-sp {
    margin-left: 10px !important;
  }

  .ml15-sp {
    margin-left: 15px !important;
  }

  .ml20-sp {
    margin-left: 20px !important;
  }

  .ml25-sp {
    margin-left: 25px !important;
  }

  .ml30-sp {
    margin-left: 30px !important;
  }

  .ml35-sp {
    margin-left: 35px !important;
  }

  .ml40-sp {
    margin-left: 40px !important;
  }

  .ml45-sp {
    margin-left: 45px !important;
  }

  .ml50-sp {
    margin-left: 50px !important;
  }

  .ml55-sp {
    margin-left: 55px !important;
  }

  .ml60-sp {
    margin-left: 60px !important;
  }

  .ml65-sp {
    margin-left: 65px !important;
  }

  .ml70-sp {
    margin-left: 70px !important;
  }

  .ml75-sp {
    margin-left: 75px !important;
  }

  .ml80-sp {
    margin-left: 80px !important;
  }

  .ml85-sp {
    margin-left: 85px !important;
  }

  .ml90-sp {
    margin-left: 90px !important;
  }

  .ml95-sp {
    margin-left: 95px !important;
  }

  .ml100-sp {
    margin-left: 100px !important;
  }

  /* padding */
  .p0-sp {
    padding: 0 !important;
  }

  .p5-sp {
    padding: 5px !important;
  }

  .p10-sp {
    padding: 10px !important;
  }

  .p15-sp {
    padding: 15px !important;
  }

  .p20-sp {
    padding: 20px !important;
  }

  .p25-sp {
    padding: 25px !important;
  }

  .p30-sp {
    padding: 30px !important;
  }

  .p35-sp {
    padding: 35px !important;
  }

  .p40-sp {
    padding: 40px !important;
  }

  .p45-sp {
    padding: 45px !important;
  }

  .p50-sp {
    padding: 50px !important;
  }

  .p55-sp {
    padding: 55px !important;
  }

  .p60-sp {
    padding: 60px !important;
  }

  .p65-sp {
    padding: 65px !important;
  }

  .p70-sp {
    padding: 70px !important;
  }

  .p75-sp {
    padding: 75px !important;
  }

  .p80-sp {
    padding: 80px !important;
  }

  .p85-sp {
    padding: 85px !important;
  }

  .p90-sp {
    padding: 90px !important;
  }

  .p95-sp {
    padding: 95px !important;
  }

  .p100-sp {
    padding: 100px !important;
  }

  /* padding-top */
  .pt0-sp {
    padding-top: 0 !important;
  }

  .pt5-sp {
    padding-top: 5px !important;
  }

  .pt10-sp {
    padding-top: 10px !important;
  }

  .pt15-sp {
    padding-top: 15px !important;
  }

  .pt20-sp {
    padding-top: 20px !important;
  }

  .pt25-sp {
    padding-top: 25px !important;
  }

  .pt30-sp {
    padding-top: 30px !important;
  }

  .pt35-sp {
    padding-top: 35px !important;
  }

  .pt40-sp {
    padding-top: 40px !important;
  }

  .pt45-sp {
    padding-top: 45px !important;
  }

  .pt50-sp {
    padding-top: 50px !important;
  }

  .pt55-sp {
    padding-top: 55px !important;
  }

  .pt60-sp {
    padding-top: 60px !important;
  }

  .pt65-sp {
    padding-top: 65px !important;
  }

  .pt70-sp {
    padding-top: 70px !important;
  }

  .pt75-sp {
    padding-top: 75px !important;
  }

  .pt80-sp {
    padding-top: 80px !important;
  }

  .pt85-sp {
    padding-top: 85px !important;
  }

  .pt90-sp {
    padding-top: 90px !important;
  }

  .pt95-sp {
    padding-top: 95px !important;
  }

  .pt100-sp {
    padding-top: 100px !important;
  }

  /* padding-right */
  .pr0-sp {
    padding-right: 0 !important;
  }

  .pr5-sp {
    padding-right: 5px !important;
  }

  .pr10-sp {
    padding-right: 10px !important;
  }

  .pr15-sp {
    padding-right: 15px !important;
  }

  .pr20-sp {
    padding-right: 20px !important;
  }

  .pr25-sp {
    padding-right: 25px !important;
  }

  .pr30-sp {
    padding-right: 30px !important;
  }

  .pr35-sp {
    padding-right: 35px !important;
  }

  .pr40-sp {
    padding-right: 40px !important;
  }

  .pr45-sp {
    padding-right: 45px !important;
  }

  .pr50-sp {
    padding-right: 50px !important;
  }

  .pr55-sp {
    padding-right: 55px !important;
  }

  .pr60-sp {
    padding-right: 60px !important;
  }

  .pr65-sp {
    padding-right: 65px !important;
  }

  .pr70-sp {
    padding-right: 70px !important;
  }

  .pr75-sp {
    padding-right: 75px !important;
  }

  .pr80-sp {
    padding-right: 80px !important;
  }

  .pr85-sp {
    padding-right: 85px !important;
  }

  .pr90-sp {
    padding-right: 90px !important;
  }

  .pr95-sp {
    padding-right: 95px !important;
  }

  .pr100-sp {
    padding-right: 100px !important;
  }

  /* padding-bottom */
  .pb0-sp {
    padding-bottom: 0 !important;
  }

  .pb5-sp {
    padding-bottom: 5px !important;
  }

  .pb10-sp {
    padding-bottom: 10px !important;
  }

  .pb15-sp {
    padding-bottom: 15px !important;
  }

  .pb20-sp {
    padding-bottom: 20px !important;
  }

  .pb25-sp {
    padding-bottom: 25px !important;
  }

  .pb30-sp {
    padding-bottom: 30px !important;
  }

  .pb35-sp {
    padding-bottom: 35px !important;
  }

  .pb40-sp {
    padding-bottom: 40px !important;
  }

  .pb45-sp {
    padding-bottom: 45px !important;
  }

  .pb50-sp {
    padding-bottom: 50px !important;
  }

  .pb55-sp {
    padding-bottom: 55px !important;
  }

  .pb60-sp {
    padding-bottom: 60px !important;
  }

  .pb65-sp {
    padding-bottom: 65px !important;
  }

  .pb70-sp {
    padding-bottom: 70px !important;
  }

  .pb75-sp {
    padding-bottom: 75px !important;
  }

  .pb80-sp {
    padding-bottom: 80px !important;
  }

  .pb85-sp {
    padding-bottom: 85px !important;
  }

  .pb90-sp {
    padding-bottom: 90px !important;
  }

  .pb95-sp {
    padding-bottom: 95px !important;
  }

  .pb100-sp {
    padding-bottom: 100px !important;
  }

  /* padding-left */
  .pl0-sp {
    padding-left: 0 !important;
  }

  .pl5-sp {
    padding-left: 5px !important;
  }

  .pl10-sp {
    padding-left: 10px !important;
  }

  .pl15-sp {
    padding-left: 15px !important;
  }

  .pl20-sp {
    padding-left: 20px !important;
  }

  .pl25-sp {
    padding-left: 25px !important;
  }

  .pl30-sp {
    padding-left: 30px !important;
  }

  .pl35-sp {
    padding-left: 35px !important;
  }

  .pl40-sp {
    padding-left: 40px !important;
  }

  .pl45-sp {
    padding-left: 45px !important;
  }

  .pl50-sp {
    padding-left: 50px !important;
  }

  .pl55-sp {
    padding-left: 55px !important;
  }

  .pl60-sp {
    padding-left: 60px !important;
  }

  .pl65-sp {
    padding-left: 65px !important;
  }

  .pl70-sp {
    padding-left: 70px !important;
  }

  .pl75-sp {
    padding-left: 75px !important;
  }

  .pl80-sp {
    padding-left: 80px !important;
  }

  .pl85-sp {
    padding-left: 85px !important;
  }

  .pl90-sp {
    padding-left: 90px !important;
  }

  .pl95-sp {
    padding-left: 95px !important;
  }

  .pl100-sp {
    padding-left: 100px !important;
  }

  .mlrauto-sp {
    margin-left: auto;
    margin-right: auto;
  }
}

/* width */
.w1per {
  width: 1% !important;
}

.w2per {
  width: 2% !important;
}

.w3per {
  width: 3% !important;
}

.w4per {
  width: 4% !important;
}

.w5per {
  width: 5% !important;
}

.w6per {
  width: 6% !important;
}

.w7per {
  width: 7% !important;
}

.w8per {
  width: 8% !important;
}

.w9per {
  width: 9% !important;
}

.w10per {
  width: 10% !important;
}

.w11per {
  width: 11% !important;
}

.w12per {
  width: 12% !important;
}

.w13per {
  width: 13% !important;
}

.w14per {
  width: 14% !important;
}

.w15per {
  width: 15% !important;
}

.w16per {
  width: 16% !important;
}

.w17per {
  width: 17% !important;
}

.w18per {
  width: 18% !important;
}

.w19per {
  width: 19% !important;
}

.w20per {
  width: 20% !important;
}

.w21per {
  width: 21% !important;
}

.w22per {
  width: 22% !important;
}

.w23per {
  width: 23% !important;
}

.w24per {
  width: 24% !important;
}

.w25per {
  width: 25% !important;
}

.w26per {
  width: 26% !important;
}

.w27per {
  width: 27% !important;
}

.w28per {
  width: 28% !important;
}

.w29per {
  width: 29% !important;
}

.w30per {
  width: 30% !important;
}

.w31per {
  width: 31% !important;
}

.w32per {
  width: 32% !important;
}

.w33per {
  width: 33% !important;
}

.w34per {
  width: 34% !important;
}

.w35per {
  width: 35% !important;
}

.w36per {
  width: 36% !important;
}

.w37per {
  width: 37% !important;
}

.w38per {
  width: 38% !important;
}

.w39per {
  width: 39% !important;
}

.w40per {
  width: 40% !important;
}

.w41per {
  width: 41% !important;
}

.w42per {
  width: 42% !important;
}

.w43per {
  width: 43% !important;
}

.w44per {
  width: 44% !important;
}

.w45per {
  width: 45% !important;
}

.w46per {
  width: 46% !important;
}

.w47per {
  width: 47% !important;
}

.w48per {
  width: 48% !important;
}

.w49per {
  width: 49% !important;
}

.w50per {
  width: 50% !important;
}

.w51per {
  width: 51% !important;
}

.w52per {
  width: 52% !important;
}

.w53per {
  width: 53% !important;
}

.w54per {
  width: 54% !important;
}

.w55per {
  width: 55% !important;
}

.w56per {
  width: 56% !important;
}

.w57per {
  width: 57% !important;
}

.w58per {
  width: 58% !important;
}

.w59per {
  width: 59% !important;
}

.w60per {
  width: 60% !important;
}

.w61per {
  width: 61% !important;
}

.w62per {
  width: 62% !important;
}

.w63per {
  width: 63% !important;
}

.w64per {
  width: 64% !important;
}

.w65per {
  width: 65% !important;
}

.w66per {
  width: 66% !important;
}

.w67per {
  width: 67% !important;
}

.w68per {
  width: 68% !important;
}

.w69per {
  width: 69% !important;
}

.w70per {
  width: 70% !important;
}

.w71per {
  width: 71% !important;
}

.w72per {
  width: 72% !important;
}

.w73per {
  width: 73% !important;
}

.w74per {
  width: 74% !important;
}

.w75per {
  width: 75% !important;
}

.w76per {
  width: 76% !important;
}

.w77per {
  width: 77% !important;
}

.w78per {
  width: 78% !important;
}

.w79per {
  width: 79% !important;
}

.w80per {
  width: 80% !important;
}

.w81per {
  width: 81% !important;
}

.w82per {
  width: 82% !important;
}

.w83per {
  width: 83% !important;
}

.w84per {
  width: 84% !important;
}

.w85per {
  width: 85% !important;
}

.w86per {
  width: 86% !important;
}

.w87per {
  width: 87% !important;
}

.w88per {
  width: 88% !important;
}

.w89per {
  width: 89% !important;
}

.w90per {
  width: 90% !important;
}

.w91per {
  width: 91% !important;
}

.w92per {
  width: 92% !important;
}

.w93per {
  width: 93% !important;
}

.w94per {
  width: 94% !important;
}

.w95per {
  width: 95% !important;
}

.w96per {
  width: 96% !important;
}

.w97per {
  width: 97% !important;
}

.w98per {
  width: 98% !important;
}

.w99per {
  width: 99% !important;
}

.w100per {
  width: 100% !important;
}

.wauto {
  width: auto !important;
}

@media screen and (max-width: 767px) {
  .w1per-sp {
    width: 1% !important;
  }

  .w2per-sp {
    width: 2% !important;
  }

  .w3per-sp {
    width: 3% !important;
  }

  .w4per-sp {
    width: 4% !important;
  }

  .w5per-sp {
    width: 5% !important;
  }

  .w6per-sp {
    width: 6% !important;
  }

  .w7per-sp {
    width: 7% !important;
  }

  .w8per-sp {
    width: 8% !important;
  }

  .w9per-sp {
    width: 9% !important;
  }

  .w10per-sp {
    width: 10% !important;
  }

  .w11per-sp {
    width: 11% !important;
  }

  .w12per-sp {
    width: 12% !important;
  }

  .w13per-sp {
    width: 13% !important;
  }

  .w14per-sp {
    width: 14% !important;
  }

  .w15per-sp {
    width: 15% !important;
  }

  .w16per-sp {
    width: 16% !important;
  }

  .w17per-sp {
    width: 17% !important;
  }

  .w18per-sp {
    width: 18% !important;
  }

  .w19per-sp {
    width: 19% !important;
  }

  .w20per-sp {
    width: 20% !important;
  }

  .w21per-sp {
    width: 21% !important;
  }

  .w22per-sp {
    width: 22% !important;
  }

  .w23per-sp {
    width: 23% !important;
  }

  .w24per-sp {
    width: 24% !important;
  }

  .w25per-sp {
    width: 25% !important;
  }

  .w26per-sp {
    width: 26% !important;
  }

  .w27per-sp {
    width: 27% !important;
  }

  .w28per-sp {
    width: 28% !important;
  }

  .w29per-sp {
    width: 29% !important;
  }

  .w30per-sp {
    width: 30% !important;
  }

  .w31per-sp {
    width: 31% !important;
  }

  .w32per-sp {
    width: 32% !important;
  }

  .w33per-sp {
    width: 33% !important;
  }

  .w34per-sp {
    width: 34% !important;
  }

  .w35per-sp {
    width: 35% !important;
  }

  .w36per-sp {
    width: 36% !important;
  }

  .w37per-sp {
    width: 37% !important;
  }

  .w38per-sp {
    width: 38% !important;
  }

  .w39per-sp {
    width: 39% !important;
  }

  .w40per-sp {
    width: 40% !important;
  }

  .w41per-sp {
    width: 41% !important;
  }

  .w42per-sp {
    width: 42% !important;
  }

  .w43per-sp {
    width: 43% !important;
  }

  .w44per-sp {
    width: 44% !important;
  }

  .w45per-sp {
    width: 45% !important;
  }

  .w46per-sp {
    width: 46% !important;
  }

  .w47per-sp {
    width: 47% !important;
  }

  .w48per-sp {
    width: 48% !important;
  }

  .w49per-sp {
    width: 49% !important;
  }

  .w50per-sp {
    width: 50% !important;
  }

  .w51per-sp {
    width: 51% !important;
  }

  .w52per-sp {
    width: 52% !important;
  }

  .w53per-sp {
    width: 53% !important;
  }

  .w54per-sp {
    width: 54% !important;
  }

  .w55per-sp {
    width: 55% !important;
  }

  .w56per-sp {
    width: 56% !important;
  }

  .w57per-sp {
    width: 57% !important;
  }

  .w58per-sp {
    width: 58% !important;
  }

  .w59per-sp {
    width: 59% !important;
  }

  .w60per-sp {
    width: 60% !important;
  }

  .w61per-sp {
    width: 61% !important;
  }

  .w62per-sp {
    width: 62% !important;
  }

  .w63per-sp {
    width: 63% !important;
  }

  .w64per-sp {
    width: 64% !important;
  }

  .w65per-sp {
    width: 65% !important;
  }

  .w66per-sp {
    width: 66% !important;
  }

  .w67per-sp {
    width: 67% !important;
  }

  .w68per-sp {
    width: 68% !important;
  }

  .w69per-sp {
    width: 69% !important;
  }

  .w70per-sp {
    width: 70% !important;
  }

  .w71per-sp {
    width: 71% !important;
  }

  .w72per-sp {
    width: 72% !important;
  }

  .w73per-sp {
    width: 73% !important;
  }

  .w74per-sp {
    width: 74% !important;
  }

  .w75per-sp {
    width: 75% !important;
  }

  .w76per-sp {
    width: 76% !important;
  }

  .w77per-sp {
    width: 77% !important;
  }

  .w78per-sp {
    width: 78% !important;
  }

  .w79per-sp {
    width: 79% !important;
  }

  .w80per-sp {
    width: 80% !important;
  }

  .w81per-sp {
    width: 81% !important;
  }

  .w82per-sp {
    width: 82% !important;
  }

  .w83per-sp {
    width: 83% !important;
  }

  .w84per-sp {
    width: 84% !important;
  }

  .w85per-sp {
    width: 85% !important;
  }

  .w86per-sp {
    width: 86% !important;
  }

  .w87per-sp {
    width: 87% !important;
  }

  .w88per-sp {
    width: 88% !important;
  }

  .w89per-sp {
    width: 89% !important;
  }

  .w90per-sp {
    width: 90% !important;
  }

  .w91per-sp {
    width: 91% !important;
  }

  .w92per-sp {
    width: 92% !important;
  }

  .w93per-sp {
    width: 93% !important;
  }

  .w94per-sp {
    width: 94% !important;
  }

  .w95per-sp {
    width: 95% !important;
  }

  .w96per-sp {
    width: 96% !important;
  }

  .w97per-sp {
    width: 97% !important;
  }

  .w98per-sp {
    width: 98% !important;
  }

  .w99per-sp {
    width: 99% !important;
  }

  .w100per-sp {
    width: 100% !important;
  }

  .wauto-sp {
    width: auto !important;
  }
}

/* font size */
.fS10 {
  font-size: 10px !important;
}

.fS11 {
  font-size: 11px !important;
}

.fS12 {
  font-size: 12px !important;
}

.fS13 {
  font-size: 13px !important;
}

.fS14 {
  font-size: 14px !important;
}

.fS15 {
  font-size: 15px !important;
}

.fS16 {
  font-size: 16px !important;
}

.fS17 {
  font-size: 17px !important;
}

.fS18 {
  font-size: 18px !important;
}

.fS19 {
  font-size: 19px !important;
}

.fS20 {
  font-size: 20px !important;
}

.fS22 {
  font-size: 22px !important;
}

.fS24 {
  font-size: 24px !important;
}

.fS26 {
  font-size: 26px !important;
}

.fS28 {
  font-size: 28px !important;
}

.fS30 {
  font-size: 30px !important;
}

@media screen and (max-width: 767px) {
  .fS10-sp {
    font-size: 10px !important;
  }

  .fS11-sp {
    font-size: 11px !important;
  }

  .fS12-sp {
    font-size: 12px !important;
  }

  .fS13-sp {
    font-size: 13px !important;
  }

  .fS14-sp {
    font-size: 14px !important;
  }

  .fS15-sp {
    font-size: 15px !important;
  }

  .fS16-sp {
    font-size: 16px !important;
  }

  .fS17-sp {
    font-size: 17px !important;
  }

  .fS18-sp {
    font-size: 18px !important;
  }

  .fS19-sp {
    font-size: 19px !important;
  }

  .fS20-sp {
    font-size: 20px !important;
  }

  .fS22-sp {
    font-size: 22px !important;
  }

  .fS24-sp {
    font-size: 24px !important;
  }

  .fS26-sp {
    font-size: 26px !important;
  }

  .fS28-sp {
    font-size: 28px !important;
  }

  .fS30-sp {
    font-size: 30px !important;
  }
}

/*2-2-3. Object-Oriented CSS [OOCSS]*/
.dspB {
  display: block;
}

.dspI {
  display: inline;
}

.dspIB {
  display: inline-block;
}

.dspN {
  display: none;
}

@media screen and (max-width: 767px) {
  .dspB-sp {
    display: block;
  }

  .dspI-sp {
    display: inline;
  }

  .dspIB-sp {
    display: inline-block;
  }

  .dspN-sp {
    display: none;
  }
}

.no-pointer-events {
  pointer-events: none;
}

.no-display {
  display: none;
}

.no-br {
  white-space: nowrap;
}

.no-border {
  border: none !important;
}

.no-line-height {
  line-height: 1 !important;
}

.pull-left {
  float: left !important;
}

.pull-right {
  float: right !important;
}

.right {
  text-align: right !important;
}

.center {
  text-align: center !important;
}

.left {
  text-align: left !important;
}

.top {
  vertical-align: top !important;
}

.middle {
  vertical-align: middle !important;
}

.bottom {
  vertical-align: bottom !important;
}

.fwB {
  font-weight: bold;
}

.fwN {
  font-weight: normal;
}

.list {}

ul.list li {
  margin-bottom: 6px;
  margin-left: 26px;
  list-style-type: disc !important;
}

ol.list li {
  margin-bottom: 6px;
  margin-left: 26px;
  list-style-type: decimal !important;
}

@media screen and (max-width: 767px) {
  .no-display-sp {
    display: none;
  }

  .no-br-sp {
    white-space: nowrap;
  }

  .no-line-height-sp {
    line-height: 1 !important;
  }

  .pull-left-sp {
    float: left !important;
  }

  .pull-right-sp {
    float: right !important;
  }

  .right-sp {
    text-align: right !important;
  }

  .center-sp {
    text-align: center !important;
  }

  .left-sp {
    text-align: left !important;
  }

  .top-sp {
    vertical-align: top !important;
  }

  .middle-sp {
    vertical-align: middle !important;
  }

  .bottom-sp {
    vertical-align: bottom !important;
  }
}

/* for RWD */
.fluid-image {
  max-width: 100%;
  height: auto;
  /* height: 100%; */
}

.full-image {
  width: 100%;
  height: auto;
}

@media screen and (max-width: 767px) {
  .fluid-image {
    width: 100%;
    height: auto;
  }
}

@media screen and (min-width: 768px),
print {
  .wrp-img-expand {
    overflow: hidden;
    line-height: 0;
  }

  .fluid-image {
    position: static;
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    transform: translate(0, 0);
    transition: all 0.5s;
  }

  a:hover .fluid-image {
    -ms-transform: scale(1.03) translate(0, 0);
    -moz-transform: scale(1.03) translate(0, 0);
    -webkit-transform: scale(1.03) translate(0, 0);
    transform: scale(1.03) translate(0, 0);
  }
}


/* 2-2-4. Grid System [grid-***] */
.wrp-grid,
.row {
  box-sizing: border-box;
}

.wrp-grid:after,
.row:after {
  clear: both;
  content: " ";
  display: table;
}

.grid-1,
.grid-2,
.grid-3,
.grid-4,
.grid-5,
.grid-6,
.grid-7,
.grid-8,
.grid-9,
.grid-10,
.grid-11,
.grid-12,
.grid-1--sp,
.grid-2--sp,
.grid-3--sp,
.grid-4--sp,
.grid-5--sp,
.grid-6--sp,
.grid-7--sp,
.grid-8--sp,
.grid-9--sp,
.grid-10--sp,
.grid-11--sp,
.grid-12--sp {
  box-sizing: border-box;
  float: left;
}

/* 1. 12 Column Grid 0px - 767px 
----------------------------------------------------------------------------- 

col 1:    8.33333333333%
col 2:    16.6666666667%
col 3:    25.0%
col 4:    33.3333333333%
col 5:    41.6666666667%
col 6:    50.0%
col 7:    58.3333333333%
col 8:    66.6666666667%
col 9:    75.0%
col 10:    83.3333333333%
col 11:    91.6666666667%
col 12:    100%

----------------------------------------------------------------------------- */
@media screen and (min-width: 0px) and (max-width: 767px) {
  .wrp-grid {
    margin-left: -8px;
    margin-right: -7px;
  }

  .grid-1,
  .grid-2,
  .grid-3,
  .grid-4,
  .grid-5,
  .grid-6,
  .grid-7,
  .grid-8,
  .grid-9,
  .grid-10,
  .grid-11,
  .grid-12,
  .grid-1--sp,
  .grid-2--sp,
  .grid-3--sp,
  .grid-4--sp,
  .grid-5--sp,
  .grid-6--sp,
  .grid-7--sp,
  .grid-8--sp,
  .grid-9--sp,
  .grid-10--sp,
  .grid-11--sp,
  .grid-12--sp {
    width: 100%;
    padding: 0 7px 0 8px;
  }

  .grid-1--sp {
    width: 8.33333%;
  }

  .grid-2--sp {
    width: 16.66667%;
  }

  .grid-3--sp {
    width: 25%;
  }

  .grid-4--sp {
    width: 33.3333333%;
  }

  .grid-5--sp {
    width: 41.66667%;
  }

  .grid-6--sp {
    width: 50%;
  }

  .grid-7--sp {
    width: 58.33333%;
  }

  .grid-8--sp {
    width: 66.66667%;
  }

  .grid-9--sp {
    width: 75%;
  }

  .grid-10--sp {
    width: 83.33333%;
  }

  .grid-11--sp {
    width: 91.66667%;
  }

  .grid-12--sp {
    width: 100%;
  }
}

/* 2. 12 Column Grid 768px - Infinity 
----------------------------------------------------------------------------- 

col 1:    8.33333333333%
col 2:    16.6666666667%
col 3:    25.0%
col 4:    33.3333333333%
col 5:    41.6666666667%
col 6:    50.0%
col 7:    58.3333333333%
col 8:    66.6666666667%
col 9:    75.0%
col 10:    83.3333333333%
col 11:    91.6666666667%
col 12:    100%

----------------------------------------------------------------------------- */
@media screen and (min-width: 768px),
print {
  .wrp-grid {
    margin-left: -15px;
    margin-right: -15px;
  }

  .grid-1,
  .grid-2,
  .grid-3,
  .grid-4,
  .grid-5,
  .grid-6,
  .grid-7,
  .grid-8,
  .grid-9,
  .grid-10,
  .grid-11,
  .grid-12 {
    padding: 0 15px;
  }

  .grid-1 {
    width: 8.33333333333%;
  }

  .grid-2 {
    width: 16.6666666667%;
  }

  .grid-3 {
    width: 25%;
  }

  .grid-4 {
    width: 33.3333333333%;
  }

  .grid-5 {
    width: 41.6666666667%;
  }

  .grid-6 {
    width: 50%;
  }

  .grid-7 {
    width: 58.3333333333%;
  }

  .grid-8 {
    width: 66.6666666667%;
  }

  .grid-9 {
    width: 75%;
  }

  .grid-10 {
    width: 83.3333333333%;
  }

  .grid-11 {
    width: 91.6666666667%;
  }

  .grid-12 {
    width: 100%;
  }

}

.cp-1 {
  padding-left: 60px;
}

/* 2-2-5. WebFont [FontAwesome] */
@font-face {
  font-family: 'nittokucorporate-06';
  src: url('../fonts/nittokucorporate-06-6607990.eot');
  src: url('../fonts/nittokucorporate-06-6607990.eot#iefix') format('embedded-opentype'),
    url('../fonts/nittokucorporate-06-6607990.woff2') format('woff2'),
    url('../fonts/nittokucorporate-06-6607990.woff') format('woff'),
    url('../fonts/nittokucorporate-06-6607990.ttf') format('truetype'),
    url('../fonts/nittokucorporate-06-6607990.svg#nittokucorporate-06') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"]:before,
[class*=" icon-"]:before {
  font-family: "nittokucorporate-06";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  line-height: 1em;
  margin-left: .2em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;

}

.icon-angle-right:before {
  content: '\63';
}

/* 'c' */
.icon-popup:before {
  content: '\e800';
}

/* '' */
.icon-rss-squared:before {
  content: '\e801';
}

/* '' */
.icon-right-open-big:before {
  content: '\e802';
}

/* '' */
.icon-down-open-big:before {
  content: '\e803';
}

/* '' */
.icon-left-open-big:before {
  content: '\e804';
}

/* '' */
.icon-up-open-big:before {
  content: '\e805';
}

/* '' */
.icon-file-pdf:before {
  content: '\e806';
}

/* '' */
.icon-menu:before {
  content: '\e807';
}

/* '' */
.icon-chart-line:before {
  content: '\e808';
}

/* '' */
.icon-file-word:before {
  content: '\e809';
}

/* '' */
.icon-th-1:before {
  content: '\e80a';
}

/* '' */
.icon-plus-circle:before {
  content: '\e80b';
}

/* '' */
.icon-minus-circle-1:before {
  content: '\e80c';
}

/* '' */
.icon-search:before {
  content: '\e80d';
}

/* '' */
.icon-cancel:before {
  content: '\e80e';
}

/* '' */
.icon-file-excel:before {
  content: '\e80f';
}

/* '' */
.icon-file-powerpoint:before {
  content: '\e810';
}

/* '' */
.icon-file-archive:before {
  content: '\e811';
}

/* '' */
.icon-file-image:before {
  content: '\e812';
}

/* '' */
.icon-globe:before {
  content: '\e813';
}

/* '' */
.icon-link-ext:before {
  content: '\f08e';
}

/* '' */
.icon-angle-double-down:before {
  content: '\f103';
}

/* '' */

.icon i {
  font-size: 14px;
  font-style: normal;
}

.icon-file-pdf i {
  padding-left: 5px;
}

/* 2-2-6. Visibility [visible-***] */
@media only screen and (max-width : 767px) {
  .visible-sp {
    display: block !important;
  }

  .visible-pc {
    display: none !important;
  }
}

@media screen and (min-width: 768px),
print {
  .visible-sp {
    display: none !important;
  }

  .visible-pc {
    display: block !important;
  }
}


/* 2-2-7. Background [bg-***] */


/* 2-3. State [is-***]
-------------------------------------------------- */
.is-open {
  display: block;
}

.is-close {
  display: none;
}

.is-error {
  background-color: #f9eceb;
}

.is-disabled {
  opacity: 0.45;
}

.is-active {}

.is-fadein {
  animation: fade-in 0.5s ease;
  visibility: visible;
  -webkit-backface-visibility: hidden;
}

@keyframes fade-in {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}


/* 2-3-2. rollover [rollover-***] */
.rollover {
  text-decoration: none;
  transition: all 0.3s;
}

.rollover:hover {
  text-decoration: none;
}


/* 2-4. OverLayerConfig [z-index]
-------------------------------------------------- */
.is-overlay {
  z-index: 10;
}


/* 2-5. Project
-------------------------------------------------- */

/* 2-5. animation
-------------------------------------------------- */
@media screen and (min-width: 1024px) {
  .l-header {
    /*top: -30px;*/
    animation-name: load__l-header;
    animation-duration: 0.6s;
    animation-delay: 0;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
  }

  .l-container {
    animation-name: load__l-container;
    animation-duration: 0.6s;
    animation-delay: 0;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
  }

  .wrp-container {
    animation-name: load__wrp-container;
    animation-duration: 0.6s;
    animation-delay: 0;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
  }

  .noloadanime .l-header,
  .noloadanime .l-container,
  .noloadanime .wrp-container {
    animation-name: none;
  }
}

@media print {
  .l-header {
    animation-name: none;
  }

  .l-container {
    animation-name: none;
  }

  .wrp-container {
    animation-name: none;
  }

  .noloadanime .l-header,
  .noloadanime .l-container,
  .noloadanime .wrp-container {
    animation-name: none;
  }
}

@keyframes load__l-header {
  0% {
    top: -30px;
    opacity: 0.5;
  }

  100% {
    top: 0px;
    opacity: 1;
  }
}

@keyframes load__l-container {
  0% {
    padding-top: 1px;
    opacity: 0.5;
  }

  100% {
    /*padding-top: 71px;*/
    opacity: 1;
  }
}

@keyframes load__wrp-container {
  0% {
    margin-top: -15px;
    opacity: 0.5;
  }

  100% {
    margin-top: 0;
    opacity: 1;
  }
}


/* 2-6. cookie box
-------------------------------------------------- */
.cookie-box {
  position: fixed;
  bottom: -100px;
  right: 10px;
  display: none;
  width: 495px;
  background: #ffffff;
  border-radius: 10px;
  padding: 35px 40px;
  box-sizing: border-box;
  text-align: center;
  opacity: 0;
  box-shadow: 0px 0px 8px -1px #666666;
  z-index: 1000;
}

.cookie-box p {
  text-align: left;
}

.cookie-box button {
  display: inline-block;
  margin: 20px auto 0;
  padding: 8px 18px 7px;
  font-size: 16px;
  text-align: center;
  background: #6a6a6a;
  border-radius: 3px;
  color: #ffffff;
}

@media only screen and (max-width : 767px) {
  .cookie-box {
    width: 95%;
  }
}


/* bxslider
-------------------------------------------------- */
@media screen and (min-width: 768px),
print {
  .bx-wrapper {
    margin: 0 auto;
    position: relative;
  }

  .bx-wrapper .bx-pager.bx-default-pager a {
    background: #dddddd;
    text-indent: -9999px;
    display: block;
    width: 10px;
    height: 10px;
    margin: 0 5px;
    outline: 0;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
  }

  .bx-wrapper .bx-pager.bx-default-pager a:hover,
  .bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #ff9900;
  }

  .bx-wrapper .bx-pager {
    text-align: center;
    font-size: .85em;
    font-family: Arial;
    font-weight: bold;
    color: #666;
    padding-top: 20px;
  }

  .bx-wrapper .bx-pager,
  .bx-wrapper .bx-controls-auto {
    position: absolute;
    bottom: -30px;
    width: 100%;
  }

  .bx-wrapper .bx-pager .bx-pager-item,
  .bx-wrapper .bx-controls-auto .bx-controls-auto-item {
    display: inline-block;
  }

  .bx-wrapper .bx-controls-direction a {
    position: absolute;
    top: 0;
    display: block;
    outline: 0;
    width: 30px;
    height: 96px;
    z-index: 100;
    background: #333333;
    color: #ffffff;
  }

  .bx-wrapper .bx-controls-direction a i {
    display: block;
    width: 30px;
    height: 106px;
    text-align: center;
    line-height: 106px;
  }

  .bx-wrapper .bx-prev {
    left: -40px;
  }

  .bx-wrapper .bx-next {
    right: -40px;
  }
}

@media only screen and (max-width : 767px) {
  .bx-wrapper {
    margin: 0 auto;
    position: relative;
  }

  .bx-controls {
    position: relative;
    padding: 0 0 20px;
  }

  .bx-wrapper .bx-pager.bx-default-pager a {
    background: #dddddd;
    text-indent: -9999px;
    display: block;
    width: 10px;
    height: 10px;
    margin: 0 5px;
    outline: 0;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
  }

  .bx-wrapper .bx-pager.bx-default-pager a:hover,
  .bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #ff9900;
  }

  .bx-wrapper .bx-pager {
    text-align: center;
    font-size: .85em;
    font-family: Arial;
    font-weight: bold;
    color: #666;
    padding-top: 20px;
  }

  .bx-wrapper .bx-pager,
  .bx-wrapper .bx-controls-auto {
    position: absolute;
    top: -15px;
    width: 100%;
  }

  .bx-wrapper .bx-pager .bx-pager-item,
  .bx-wrapper .bx-controls-auto .bx-controls-auto-item {
    display: inline-block;
  }

  .bx-wrapper .bx-controls-direction a {
    position: absolute;
    top: 0;
    display: block;
    outline: 0;
    width: 40px;
    height: 20px;
    z-index: 100;
    background: #333333;
    color: #ffffff;
  }

  .bx-wrapper .bx-controls-direction a i {
    display: block;
    width: 40px;
    height: 20px;
    text-align: center;
    line-height: 20px;
  }

  .bx-wrapper .bx-controls-direction a i:before {
    font-size: 10px;
  }

  .bx-wrapper .bx-prev {
    right: 45px;
    bottom: -50px;
  }

  .bx-wrapper .bx-next {
    right: 0;
    bottom: -50px;
  }
}


.index-banner a {
  opacity: 1;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.index-banner a:hover {
  opacity: 0.6;
}

.index-banner img {
  max-width: 100%;
  height: auto;
}

.special-index {
  padding: 40px 0 40px;
  margin: 0;
}

.special-index>div {
  background: #fff;
  margin-bottom: 18px;
  padding: 0;
  overflow: hidden;
}

.special-index .wrp-grid {
  margin: 0;
}

.special-index .wrp-grid>div {
  padding: 0;
}

@media screen and (min-width: 768px),
print {
  .special-index>div:nth-of-type(2n+1) {
    clear: both;
  }
}

.special-index img {
  display: block;
}

.special-index a {
  display: block;
}

.special-index a div {
  overflow: hidden;
}

.special-index a div {
  overflow: hidden;
}

.special-index-txt h3 {
  padding: 30px 18px 0;
  font-weight: bold;
  font-size: 16px;
}

.special-index-txt p {
  padding: 16px 18px 16px;
  font-size: 14px;
}

.special-index_tokushu {
  width: 100%;
  min-height: 698px;
  background: url("../img/special_index_img_tokushu.jpg") center center no-repeat;
  background-size: cover;
}

.special-index_tokushu>div {
  width: 1170px;
  height: 698px;
  margin: 0 auto;
  position: relative;
}

.special-index_tokushu>div>div {
  position: absolute;
  left: 40px;
  top: 100px;
  z-index: 100;
}

.special-index_tokushu p {
  position: absolute;
  left: 40px;
  bottom: 35px;
  z-index: 100;
}

.special-index_tokushu a {
  display: inline-block;
  padding: 7px 15px 7px 15px;
  border: 1px solid #fff;
  border-radius: 0;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  color: #fff;
  text-decoration: none;
}

.special-index_tokushu a:hover {
  background: #fff;
  color: #000;
}

.special-index_tokushu-sp {
  display: none;
}

@media only screen and (max-width : 767px) {
  .special-index {
    padding: 0 0;
    margin: 0;
  }

  .special-index-txt h3 {
    padding: 15px 10px 0;
  }

  .special-index-txt p {
    padding: 10px 10px 15px;
    font-size: 14px;
  }

  .special-index_tokushu {
    display: none;
  }

  .special-index_tokushu-sp {
    display: block;
    background: url("../img/index/index_bg_cm_sp.jpg") center no-repeat scroll;
    background-size: cover;
    width: 100%;
    min-height: 320px;
    position: relative;
  }

  .special-index_tokushu-txt {
    padding: 10px 0 0;
  }

  .special-index_tokushu-txt img {
    max-width: 100%;
    height: auto;
  }

  .special-index_tokushu-btn {
    width: 100%;
    position: absolute;
    bottom: 10px;
    left: 0;
  }

  .special-index_tokushu-btn a {
    display: block;
  }

  .special-index_tokushu-btn a span {
    display: block;
    margin: 0 10px;
    width: auto;
    height: 55px;
    position: relative;
    background: #b2ff59;
    -webkit-animation: btnEffect 3s infinite;
    animation: btnEffect 3s infinite;
  }

  .special-index_tokushu-btn a:hover span {
    background: #b2ff59;
  }

  .special-index_tokushu-btn .special-index_tokushu-btn01 {
    width: 55px;
    height: auto;
    position: absolute;
    bottom: 4px;
    left: 3px;
  }

  .special-index_tokushu-btn .special-index_tokushu-btn02 {
    width: 225px;
    height: auto;
    position: absolute;
    top: 19px;
    right: 10px;
  }
}



.fn-box {
  position: absolute;
  z-index: 1000;
  left: 0px;
  right: 0px;
  margin: auto;
  width: 1200px;
  bottom: 60px;
}

.fn-box li {
  float: left;
  margin-left: 40px;
  text-align: center;
}

.fn-box li img {
  width: 160px;
  display: block;
}

#l-main {
  margin-top: 100px;
}

.zongcai-1-box {
  overflow: hidden;
  margin-top: 60px;
  border-bottom: 1px #dfdfdf;
  margin-bottom: 80px;
}

.zongcai-1-box .zongcai-1-img {
  float: left;
  width: 290px;
}

.zongcai-1-img img {
  width: 100%;
}

.zongcai-1-box .zongcai-1-txt {
  width: 800px;
  float: right;
}

.zongcai-1-box .zongcai-1-txt p {
  margin-bottom: 20px;
}

.zongcai-1-box .zongcai-1-txt ul {
  margin-top: 60px;
}

.zongcai-1-box .zongcai-1-txt li {
  text-align: right;
}

.wrp-container .map {
  margin: 80px auto;
}

#l-footer {
  /*margin-top: 160px;*/
}

.nav-breadcrumb {
  width: 1200px;
  margin: 0 auto;
}

.no-h3 {
  float: left;
  margin: 0;
  margin-left: 20px;
  border: none;
  font-size: 26px;
}

.no-box {
  margin-top: 40px;
  margin-bottom: 10px;
}

.qiyekouhao {
  width: 1200px;
  border: 1px solid #8e8e8e;
  padding: 40px;
}

.rite {
  font-size: 24px;
  margin-left: 10px;
}

.way-pct-txt li {
  list-style-type: square;
  margin-bottom: 20px;
  font-size: 26px;
}

.qiyewenhua .wenzi {
  margin-top: 100px;
}

.index-img-block02 {
  margin: auto;
}

.index-img-block02__box-txt {
  background: #eeeeee;
  margin-top: 0px;
  padding: 10px;
}

.pb60 {
  background: #eee;
}

.box-white__02 {
  background: #eee;
}

.megadrop-ir .nav-global-arrow {
  display: none !important;
}

.megadrop-news .nav-global-arrow {
  display: none !important;
}

.BrandStory .wrp-container-gray {
  margin-bottom: 0px;
}

.BrandStory .pb60 {
  background: none;
}

.BrandStory #l-footer {
  margin-top: -24px;
}

.CompanyProfile .first-title {
  text-indent: 2em;
  border: 1px solid #dddddd;
  padding: 20px 40px;
  margin: 20px 0px;
}

.CompanyProfile .img-box ul li {
  float: left;
  margin-left: 23px;
  margin-left: 10px;
  margin-right: 11px;
}

.CompanyProfile .img-box {
  overflow: hidden;
}

.CompanyProfile .de-l,
.CompanyProfile .de-c,
.CompanyProfile .de-r,
.CompanyProfile .de-im {
  float: left;
  margin-right: 20px;
}

.CompanyProfile .de-l {
  width: 320px;
}

.CompanyProfile .de-c {
  width: 80px;
}

.CompanyProfile .de-r {
  width: 500px;
}

.CompanyProfile .de-m {
  width: 200px;
}

.CompanyProfile .de-c {
  float: left;
}

.CompanyProfile .de-im {
  margin-top: 50px;
}

.CompanyProfile .de-l img {
  float: right;
  margin-top: 10px;
}

.CompanyProfile .de-l p {
  text-align: right;
  font-weight: bold;
}

.CompanyProfile .c-detial {
  overflow: hidden;
  margin-top: 40px;
}

.CompanyProfile table {
  border: 1px solid #afafaf;
  margin-top: 10px;
}

.CompanyProfile table td {
  padding: 4px;
  font-size: 14px;
  font-weight: bold;
}

.CompanyProfile {
  margin-bottom: 80px;
}

.CompanyHistory .box-main-img.corporate_brand {
  background: url(../img/his-img.jpg) center cover top no-repeat;
}

.his-2 {
  margin: 40px auto;
  margin-bottom: 80px;
}

.csr-main .wrp-container {
  text-align: center;
}

.csr-main .index-img-block02__box {
  padding: 0px;
}

.csr-main .wrp-container-gray {
  background: none;
  margin-top: 0px !important;
}

.SocialContributions .wrp-container h1 {
  text-align: left;
  border-bottom: 1px solid #e4e2e2;
  padding-bottom: 10px;
  width: 800px;
  font-weight: bold;
  font-size: 24px;
  margin: 20px 0px;
}

.SocialContributions .wrp-container p {
  text-align: left;
  margin: 40px 0px;
}

.SocialContributions .wrp-container img {
  width: 100%;
}

.shehui-box {
  margin-bottom: 40px;
}

.SocialContributions .wrp-container .renquan-title h1 {
  border: none;
  padding: 0px;
}

.SocialContributions .wrp-container .renquan-title p {
  margin: 0;
  width: 520px;
  border-bottom: 1px solid #e4e2e2;
}

.SocialContributions .wrp-container .renquan-con h2 {
  text-align: left;
  margin-top: 20px;
}

.SocialContributions .wrp-container .renquan-con p {
  text-align: left;
  margin-top: 6px;
  margin-bottom: 20px;
  border-bottom: 1px;
  border-bottom: 1px dashed #afafaf;
}

.renquan-box {
  margin: 80px 0px;
}

#staff h1 {
  font-size: 20px;
  text-align: center;
  border-bottom: 3px solid #e4e2e2;
  width: 120px;
  margin: 0 auto;
}

#staff p {
  text-align: center;
}

#staff .staff-1 {
  border: 1px solid #afafaf;
  padding: 20px;
  margin-bottom: 20px;
  overflow: hidden;
}

#staff .staff-1 h1 {
  text-align: left;
  width: 94%;
  border-bottom: 1px solid #e4e2e2;
  font-weight: 100;
}

#staff .staff-1 p {
  text-align: left;
  width: 94%;
  margin: 0 auto;
  margin-top: 30px;
  margin-bottom: 20px;
}

#staff .staff-1 ul {
  float: left;
  margin-top: 40px;
  margin-left: 30px;
  width: 550px;
  margin-bottom: 50px;
}

#staff .staff-1 ul li {
  padding-bottom: 6px;
  margin-top: 20px;
  border-bottom: 1px dashed #dbdbdb;

}

#staff .staff-1 ul img {
  width: 40px;
  margin-right: 16px;
  position: absolute;
}

#staff .staff-1 ul span {
  margin-left: 50px
}

#staff .staff-1 .sr {
  width: 400px;
  margin-top: 50px;
  margin-left: 80px;
  float: left;
}

#staff #staff-2 ul {
  margin-top: 10px;
  width: 94%;
}

.pro-inf .index-img-block02__box {
  padding: 0px;
}

.pro-inf .index-img-block02 {
  margin-bottom: 35px;
}

.SemiconductorPackages .index-img-block02__hdg,
.CuttingTools .index-img-block02__hdg,
.secsor .index-img-block02__hdg {
  text-align: left;
}

.contact .txt-lead {
  margin-bottom: 20px;
}

.con-box {
  border: 1px solid #b0b0b0;
  padding: 20px 40px;
  overflow: hidden;
  margin-bottom: 40px;
}

.con-box-l {
  float: left;
}

.con-box-l .con-first {
  width: 520px;
  border-bottom: 1px dashed #b0b0b0;
}

.con-box-l p {
  padding: 10px 0px;
}

.con-box-r {
  float: right;
  padding: 10px 100px;
  background: #c2c0c0;
  margin-top: 30px;
}

.con-box-r a {
  text-decoration: none;
}

.l-footer__content01 .wrp-container img {
  width: 100%;
}

.mobile-footer {
  display: none;
}

.cp-box {
  margin-top: 80px;
}

.noloadanime {
  background: #333333;
}

/*响应式 roy 2018年03月07日22:54:25*/
@media (max-width: 640px) {
  .fn-box {
    display: none;
  }

  .pc-footer {
    display: none;
  }

  .mobile-footer {
    display: block;
    margin-top: -30px;
  }

  .zongcai-1-box .zongcai-1-img {
    display: block;
    float: none;
  }

  .zongcai-1-box .zongcai-1-img img {
    display: block;
    margin: 20px auto;
  }

  .zongcai-1-box .zongcai-1-txt {
    width: 90%;
    margin: 0 auto;
    float: none;
  }

  .zongcai-1-box {
    margin-top: 0px;
  }

  .noloadanime {
    background: #000000;
  }

  #l-main {
    margin-top: 80px;
  }

  .zongcai-1-box {
    margin-bottom: 30px;
  }

  .l-header-logo img {
    margin-top: 10px;
  }

  .cp-box {
    margin-top: 30px;
  }

  .box-header-detail .hdg-lv1 {
    font-size: 26px;
  }

  .box-header-detail small {
    font-size: 12px;
  }

  .cp-1 {
    padding: 0px;
    padding: 0px;
    width: 90%;
    margin: auto;
    float: none;
  }

  .cp-1 img {
    width: 50px;
  }

  .cp-2 {
    float: none;
    margin-bottom: 30px;
  }

  .txt-mincho {
    padding-left: 0px !important;
  }

  .way-pct-txt li {
    font-size: 16px;
  }

  .way-pct-txt {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }

  .hdg-lv3 {
    font-size: 24px;
  }

  .way-txt-main {
    margin: 0px !important;
  }

  .gongsikouhao {
    width: 90% !important;
    margin: 0 auto !important;
    padding: 0px !important;
  }

  .CompanyProfile .img-box ul li {
    margin-left: 0px;
    margin-right: 10px;
  }

  .CompanyProfile .img-box ul li img {
    width: 100px;
  }

  .de-c {
    display: none;
  }

  .CompanyProfile .de-r {
    width: 100%;
    margin-bottom: 20px;
  }

  .CompanyProfile .de-im {
    float: right;
    margin-top: 0px;
    margin-bottom: 50px;
  }

  .CompanyProfile .first-title {
    padding: 10px;
    20px
  }

  .his-2 {
    width: 100%;
  }

  .guoneiwangluo img {
    width: 100%;
  }

  .SocialContributions .wrp-container p {
    margin: 20px 0px;
  }

  #staff .staff-1 ul,
  #staff .staff-1 .sr {
    width: 100%;
    margin: 0px;
  }

  #staff .staff-1 .sr {
    margin-top: 20px;
  }

  .SocialContributions .wrp-container h1,
  .SocialContributions .wrp-container .renquan-title p {
    width: 100%;
  }

  .index-img-block02__box a {
    padding: 0px;
  }

  .pro-inf .index-img-block02 {
    margin-bottom: 0px;
  }

  .hdg-lv2--03 {
    padding-top: 0px;
  }
}



/*========================新闻===================*/
.news-content {
  width: 80%;
  margin: 0 auto;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.news-content p {
  color: #000000;
  font-size: 22px;
  padding-bottom: 1rem;
}

.new-list .news-item .news-date {
  display: inline-block;
  width: 15%;
  text-align: left;
  min-width: 148px;
}

.new-list .news-item {
  padding-bottom: 1rem;
  border: 0.1rem silver;
  border-bottom: 1px dashed #eeeeee;
  padding-top: 1rem;
}

.new-list .news-item .news-tags {
  display: inline-block;
  text-align: center;
  width: 10%;
  background-color: #eeeeee;
  border-radius: 0.6rem;
  min-width: 102px;
}

.new-list {
  text-align: center;
  display: inline-block;
  width: 100%;
  padding-bottom: 0rem;
}

.new-list .news-item .news-title {
  display: inline-block;
  text-align: left;
  padding-left: 8%;
  width: 26%;
  /* min-width: 10rem; */
  vertical-align: middle;
  /* overflow: scroll; */
}

.page-list {
  width: 100%;
  text-align: center;
  border-bottom: 1px solid #eeeeee;
  padding-bottom: 0.5rem;
  margin-bottom: 2rem;
  padding-top: 3rem;
}

.page-list .M-box {
  padding-top: 5rem;
}

.page-list span,
.page-list a {
  width: 20%;
  margin: 0.5px 0.5rem;

}

.page-list span:hover {
  cursor: pointer;
}

.page-list span.active {
  color: red;

}

.new-icon {
  width: 10%;
  text-align: right;
  display: inline-block;
  float: right;
}

.news-item a {
  width: 100%;
  display: block;
  text-align: left;
}

@media screen and (max-width: 768px),
print {
  .new-list .news-item .news-date {
    display: inline-block;
    min-width: 100px;
  }

  .news-content {
    width: 90%;

  }

  #news-content img {
    max-width: 100%;
  }

  .new-list .news-item .news-tags {
    display: inline-block;
    text-align: center;
    width: 3%;
    background-color: #eeeeee;
    border-radius: 0.6rem;
    min-width: 67px;
  }
}

/*============历史新闻====================================*/
.news-content-history {
  width: 60%;
  margin: 0 auto;
  padding-top: 2rem;
  padding-bottom: 1rem;
}

.news-content-detail {
  width: 80%;
  margin: 0 auto;
  /* padding-top: 3rem; */
  border-bottom: 1px solid #eeeeee;
}

@media screen and (max-width: 768px),
print {

  .news-content-history {
    width: 80%;
    margin: 0 auto;
    padding-top: 2rem;
  }

  .new-list .news-item .news-date {
    display: inline-block;
    min-width: 100px;
  }

  .news-content-detail {
    width: 90%;
  }

  .new-list .news-item .news-tags {
    display: inline-block;
    text-align: center;
    width: 3%;
    background-color: #eeeeee;
    border-radius: 0.6rem;
    min-width: 67px;
  }
}

.news-content-title {
  width: 100%;
  text-align: center;
  font-size: 18px;
  padding: 20px 0;
}

/*============招聘咨询=================================*/

.box-main-banner img {
  width: 100%;
}

.information-title {
  width: 100%;
  text-align: center;
  padding: 10px;
  font-size: 17px;
}

.information-question-list {
  text-align: center;
  width: 90%;
  margin: 0 5%;
}

.information-q-content {
  display: inline-block;
  padding-left: 8%;
  /* position: absolute; */
  margin-top: 1%;
}

.information-question-item {
  background: url("../img/information/q.png") no-repeat;
  position: relative;
  width: 100%;
  text-align: left;
  line-height: 48px;
  vertical-align: middle;
  min-height: 56px;
  background-size: 100% auto;
}

.information-question-item.on {
  background: url("../img/information/r.png") no-repeat;
  position: relative;
  width: 100%;
  text-align: left;
  line-height: 48px;
  vertical-align: middle;
  min-height: 56px;
  background-size: 100% auto;
}

.information-question-item.on .information-q-a {
  background-color: #f8e8e8;
}

span.information-q-num {
  color: #fff;
  position: absolute;
  left: 2.2%;
  top: 8%;
}

.information-q-a {
  margin: 0 auto;
  padding-left: 20px;
  margin-top: 2%;
  margin-bottom: 1%;
  border-radius: 5px;
  width: 98%;
  min-height: 60px;
}

.information-q-a .tag {
  display: inline-block;
  width: 5%;
  vertical-align: top;
}

.information-q-a .information-q-a-content {
  display: inline-block;
  width: 95%;
  margin: 0px 0;
}

@media screen and (max-width: 768px),
print {
  span.information-q-num {
    left: 2px;
    top: -14px;
  }

  .information-question-list {
    text-align: center;
    width: 91%;
    margin: 0 5%;
  }

  .information-q-content {
    line-height: 15px;
    top: 2px;
    position: absolute;
    margin-top: 0px;

  }

  .information-q-a {
    padding-left: 20px;
    margin-top: 12px;
    margin-bottom: 10px;
    line-height: 20px;
    padding-top: 26px;
  }

  .information-question-item.on {
    /* background: url("../img/information/q.png") no-repeat !important; */
  }

  .information-question-item.on .information-q-a {
    background-color: white;
  }
}

@media screen and (min-width: 768px) and (max-width: 980px),
print {
  .information-question-item {
    background: url("../img/information/q.png") no-repeat;
    position: relative;
    width: 100%;
    text-align: left;
    line-height: 58px;
    vertical-align: middle;
    min-height: 56px;
    background-size: 100% auto;
  }
}

/*=============培训===*/
.CompanyProfile .first-title {
  text-indent: 2em;
  border: 1px solid #dddddd;
  padding: 20px 40px;
  margin: 20px 0px;
}

.CompanyProfile .img-box ul li {
  float: left;
  margin-left: 23px;
}

.CompanyProfile .img-box {
  overflow: hidden;
}

.CompanyProfile .de-l,
.CompanyProfile .de-c,
.CompanyProfile .de-r,
.CompanyProfile .de-im {
  float: left;
  margin-right: 20px;
}

.CompanyProfile .de-l {
  width: 320px;
}

.CompanyProfile .de-c {
  width: 80px;
}

.CompanyProfile .de-r {
  width: 500px;
}

.CompanyProfile .de-m {
  width: 200px;
}

.CompanyProfile .de-c {
  float: left;
}

.CompanyProfile .de-im {
  margin-top: 50px;
}

.CompanyProfile .de-l img {
  float: right;
  margin-top: 10px;
}

.CompanyProfile .de-l p {
  text-align: right;
  font-weight: bold;
}

.CompanyProfile .c-detial {
  overflow: hidden;
  margin-top: 40px;
}

.CompanyProfile table {
  border: 1px solid #afafaf;
  margin-top: 10px;
}

.CompanyProfile table td {
  padding: 4px;
  font-size: 14px;
  font-weight: bold;
}

.CompanyProfile {
  margin-bottom: 80px;
}

.CompanyHistory .box-main-img.corporate_brand {
  background: url(../img/his-img.jpg) center top no-repeat;
}

.peixun .CompanyHistory .box-main-img.corporate_brand {
  background: url(../img/peixun-1.png) center top no-repeat;
}

#megadrop-product .nav-global-megadrop-top a,
#megadrop-csr .nav-global-megadrop-top a {
  padding-top: 20px;
  display: block;
}

.his-2 {
  margin: 40px auto;
  margin-bottom: 80px;
}

.csr-main .wrp-container {
  text-align: center;
}

.csr-main .index-img-block02__box {
  padding: 0px;
}

.csr-main .wrp-container-gray {
  background: none;
  margin-top: 0px !important;
}

.SocialContributions .wrp-container h1 {
  text-align: left;
  border-bottom: 1px solid #e4e2e2;
  padding-bottom: 10px;
  width: 800px;
  font-weight: bold;
  font-size: 24px;
  margin: 20px 0px;
}

.SocialContributions .wrp-container p {
  text-align: left;
  margin: 40px 0px;
}

.SocialContributions .wrp-container img {
  width: 100%;
}

.shehui-box {
  margin-bottom: 40px;
}

.SocialContributions .wrp-container .renquan-title h1 {
  border: none;
  padding: 0px;
}

.SocialContributions .wrp-container .renquan-title p {
  margin: 0;
  width: 520px;
  border-bottom: 1px solid #e4e2e2;
}

.SocialContributions .wrp-container .renquan-con h2 {
  text-align: left;
  margin-top: 20px;
}

.SocialContributions .wrp-container .renquan-con p {
  text-align: left;
  margin-top: 6px;
  margin-bottom: 20px;
  border-bottom: 1px;
  border-bottom: 1px dashed #afafaf;
}

.renquan-box {
  margin: 80px 0px;
}

#staff h1 {
  font-size: 20px;
  text-align: center;
  border-bottom: 3px solid #e4e2e2;
  width: 120px;
  margin: 0 auto;
}

#staff p {
  text-align: center;
}

#staff .staff-1 {
  border: 1px solid #afafaf;
  padding: 20px;
  margin-bottom: 20px;
  overflow: hidden;
}

#staff .staff-1 h1 {
  text-align: left;
  width: 94%;
  border-bottom: 1px solid #e4e2e2;
  font-weight: 100;
}

#staff .staff-1 p {
  text-align: left;
  width: 94%;
  margin: 0 auto;
  margin-top: 30px;
  margin-bottom: 20px;
}

#staff .staff-1 ul {
  float: left;
  margin-top: 40px;
  margin-left: 30px;
  width: 550px;
  margin-bottom: 50px;
}

#staff .staff-1 ul li {
  padding-bottom: 6px;
  margin-top: 20px;
  border-bottom: 1px dashed #dbdbdb;

}

#staff .staff-1 ul img {
  width: 40px;
  margin-right: 16px;
  position: absolute;
}

#staff .staff-1 ul span {
  margin-left: 50px
}

#staff .staff-1 .sr {
  width: 400px;
  margin-top: 50px;
  margin-left: 80px;
  float: left;
}

#staff #staff-2 ul {
  margin-top: 10px;
  width: 94%;
}

.pro-inf .index-img-block02__box {
  padding: 0px;
}

.pro-inf .index-img-block02 {
  margin-bottom: 35px;
}

.SemiconductorPackages .index-img-block02__hdg,
.CuttingTools .index-img-block02__hdg,
.secsor .index-img-block02__hdg {
  text-align: left;
}

.contact .txt-lead {
  margin-bottom: 20px;
}

.con-box {
  border: 1px solid #b0b0b0;
  padding: 20px 40px;
  overflow: hidden;
  margin-bottom: 40px;
}

.con-box-l {
  float: left;
}

.con-box-l .con-first {
  width: 520px;
  border-bottom: 1px dashed #b0b0b0;
}

.slogn {
  font-weight: bold;
  margin-right: 80px;
  font-size: 26px;
  margin-top: -7px;
  display: block;
}

.con-box-l p {
  padding: 10px 0px;
}

.con-box-r {
  float: right;
  padding: 10px 100px;
  background: #c2c0c0;
  margin-top: 30px;
}

.con-box-r a {
  text-decoration: none;
}

.l-footer__content01 .wrp-container img {
  width: 100%;
}

.mobile-footer {
  display: none;
}

.cp-box {
  margin-top: 80px;
}

.noloadanime {
  background: #333333;
}

.hdg-lv2--03 {
  font-family: 'Source Sans Pro', sans-serif;
}

body {
  font-family: 'Source Sans Pro' !important;
}

/*响应式 roy 2018年03月07日22:54:25*/
@media (max-width: 640px) {
  .fn-box {
    display: none;
  }

  .pc-footer {
    display: none;
  }

  .mobile-footer {
    display: block;
    margin-top: -30px;
  }

  .zongcai-1-box .zongcai-1-img {
    display: block;
    float: none;
  }

  .zongcai-1-box .zongcai-1-img img {
    display: block;
    margin: 20px auto;
  }

  .zongcai-1-box .zongcai-1-txt {
    width: 90%;
    margin: 0 auto;
    float: none;
  }

  .zongcai-1-box {
    margin-top: 0px;
  }

  .noloadanime {
    background: #000000;
  }

  #l-main {
    margin-top: 80px;
  }

  .zongcai-1-box {
    margin-bottom: 30px;
  }

  .l-header-logo img {
    margin-top: 10px;
  }

  .cp-box {
    margin-top: 30px;
  }

  .box-header-detail .hdg-lv1 {
    font-size: 26px;
  }

  .box-main-news-img {
    background: url(../img/news_main_bg.png) center center no-repeat !important;
    background-size: cover;
    position: relative;
    overflow: hidden;
  }

  .box-main-img.news {
    background: url(../img/news_main_bg.png) center center no-repeat;
    background-size: cover;
    position: relative;
    overflow: hidden;
  }

  .box-header-detail small {
    font-size: 12px;
  }

  .cp-1 {
    padding: 0px;
    padding: 0px;
    width: 90%;
    margin: auto;
    float: none;
  }

  .cp-1 img {
    width: 50px;
  }

  .cp-2 {
    float: none;
    margin-bottom: 30px;
  }

  .txt-mincho {
    padding-left: 0px !important;
  }

  .way-pct-txt li {
    font-size: 16px;
  }

  .way-pct-txt {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }

  .hdg-lv3 {
    font-size: 24px;
  }

  .way-txt-main {
    margin: 0px !important;
  }

  .gongsikouhao {
    width: 90% !important;
    margin: 0 auto !important;
    padding: 0px !important;
  }

  .CompanyProfile .img-box ul li {
    margin-left: 0px;
    margin-right: 10px;
  }

  .CompanyProfile .img-box ul li img {
    width: 100px;
  }

  .de-c {
    display: none;
  }

  .CompanyProfile .de-r {
    width: 100%;
    margin-bottom: 20px;
  }

  .slogn {
    display: none;
  }
}

/*============公司招聘========================*/
.table {
  width: 100%;
  padding: 5% 0%;
  text-align: center;
}

.table .th {
  display: inline-block;
  padding: 0.5%;
  text-align: center;
  width: 100%;
}

.table .th div {
  width: 19%;
  display: inline-block;
  /* padding: 1% 1%; */
  margin: 0 0%;
}

.table .th div span {
  background-color: #d9d9d9;
  padding: 5px 10px;
  width: 68%;
  display: inline-block;
}

.t-body .tr {
  width: 100%;
  display: inline-block;
  padding: 0.5%;
  text-align: center;
  position: relative;
  margin-bottom: 2%;
}

.t-body .tr .td {
  width: 19%;
  display: inline-block;
  /* padding: 1% 1%; */
  margin: 0 0%;
  word-break: break-all;
  word-wrap: break-word;
  vertical-align: middle;
}

.t-body .td-img {
  position: absolute;
  /* display:inline-block; */
  /* top: -6%; */
  left: 1px;
  /* right: 0; */
  /* float: right; */
  /* margin-left: 31px; */
  /* z-index: 10; */
  /* width: 50%; */
  /* float: right; */
  vertical-align: middle;
}

.t-body .td-img img {
  /* position:absolute; */
  width: 175px;
  /* height:100%; */
  top: -1%;
  left: 0;
}

.webui-popover-margin-left {
  margin-left: -50px;
  text-align: left !important;
}

.detail-button {
  font-size: 25px;
  width: 36%;
  text-align: center;
  top: 50%;
  letter-spacing: 15px;
  position: absolute;
  left: 31%;
  border: 1px solid;
  padding: 10px;
}

.fn-box li a span {
  padding-top: 10px;
  display: block;
  text-align: center;
}


@media only screen and (min-width: 768px),
print {
  .news-header {
    max-height: 400px;
    background-size: cover;
  }
}
