@charset 'utf-8';
/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/* ----------------------------------------------------------------
    Normalize
----------------------------------------------------------------- */
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-family: sans-serif;
}

body {
  margin: 0;
}

article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
  display: block;
}

audio, canvas, progress, video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

progress {
  vertical-align: baseline;
}

template, [hidden] {
  display: none;
}

a {
  background-color: transparent;

  -webkit-text-decoration-skip: objects;
}
a:active, a:hover {
  outline-width: 0;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b, strong {
  font-weight: inherit;
  font-weight: bolder;
}

dfn {
  font-style: italic;
}

h1 {
  margin: .67em 0;
  font-size: 2em;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 100%;
}

sub, sup {
  position: relative;
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

img {
  border-style: none;
}

svg:not(:root) {
  overflow: hidden;
}

code, kbd, pre, samp {
  font-size: 1em;
  font-family: monospace, monospace;
}

figure {
  margin: 1em 40px;
}

hr {
  overflow: visible;
  box-sizing: content-box;
  height: 0;
}

button, input, select, textarea {
  margin: 0;
  font: inherit;
}

optgroup {
  font-weight: bold;
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, html input[type='button'], [type='reset'], [type='submit'] {
  -webkit-appearance: button;
}

button::-moz-focus-inner, [type='button']::-moz-focus-inner, [type='reset']::-moz-focus-inner, [type='submit']::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

button:-moz-focusring, [type='button']:-moz-focusring, [type='reset']:-moz-focusring, [type='submit']:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  margin: 0 2px;
  padding: .35em .625em .75em;
  border: 1px solid #c0c0c0;
}

legend {
  display: table;
  box-sizing: border-box;
  padding: 0;
  max-width: 100%;
  color: inherit;
  white-space: normal;
}

textarea {
  overflow: auto;
}

[type='checkbox'], [type='radio'] {
  box-sizing: border-box;
  padding: 0;
}

[type='number']::-webkit-inner-spin-button, [type='number']::-webkit-outer-spin-button {
  height: auto;
}

[type='search'] {
  outline-offset: -2px;

  -webkit-appearance: textfield;
}

[type='search']::-webkit-search-cancel-button, [type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-input-placeholder {
  color: inherit;
  opacity: .54;
}

::-webkit-file-upload-button {
  font: inherit;

  -webkit-appearance: button;
}

:root {
  font-size: 62.5%;
}
:root.isFontL {
  /* 1.6em/rem で 18px 相当 */
  font-size: 70.31%;
}
:root.isFontMax {
  /* 1.6em/rem で 20px 相当 */
  font-size: 78.12%;
}

html, body, h1, h2, h3, h4, h5, h6, li {
  margin: 0;
  padding: 0;
}

body {
  background: #fff;
  color: #444;
  font-size: 1.6em;
  font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', sans-serif;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  body {
    font-size: 1.4rem;
  }
}
:lang(en) body {
  font-family: Helvetica, Arial, sans-serif;
}

ul, ol {
  list-style-type: none;
}

a {
  color: #35719b;
  transition: color .5s cubic-bezier(.23, 1, .32, 1);
}
a:hover, a:active, a:focus {
  color: #5d8daf;
  text-decoration: none;
}
a.is-disabled {
  color: inherit;
}

a.visited {
  color: #663399 !important;
}

a.visited .linkTxt span {
  color: #663399 !important;
}

a.visited .navHdg {
  color: #663399 !important;
}

a.visited .hdgTxt span {
  color: #663399 !important;
}

button {
  cursor: pointer;
}

em {
  color: #444;
  font-weight: bold;
  font-style: normal;
}

strong {
  color: #c7000d;
  font-weight: bold;
}

img {
  max-width: 100%;
  vertical-align: bottom;
}

hr {
  display: none;
}

p, ul, ol, dl {
  margin: 0 0 30px;
  padding: 0;
}
@media only screen and (max-width: 767px) {
  p, ul, ol, dl {
    margin: 0 0 22px;
  }
}

ul > :last-child, ol > :last-child, dl > :last-child {
  margin-bottom: 0;
}

dd {
  margin: 0;
}

table {
  border-collapse: collapse;
}

blockquote {
  margin: 0;
}

iframe {
  margin: 0;
  padding: 0;
  width: 100%;
  border: 0;
}

input[type='text'], input[type='search'] {
  border-radius: 0 !important;

  -webkit-appearance: none;
}

dfn {
  font-style: normal;
}

@media only screen and (max-width: 768px) {
  input, select {
    padding: 1px;
    font-size: 16px;
  }
}
/* ----------------------------------------------------------------
    clearfix
----------------------------------------------------------------- */
.headerInner::after, .headerUtility::after, .headerUtility .headerUtilityInner .utilitySwitch::after, .tHeader .headerUtility::after, .headerNavInner::after, .headerNavMain::after, .headerNavSub::after, .topicPathInner::after, .footerNavInner::after, .footerGrid::after, .footerSub::after, .hdgL1::after, .listFlow02::after, .linkList::after, .formList::after, .navRelated > .navList::after, .navRelated > .navList02::after, .navPagination::after, .grid::after, .mediaLyt::after, .carouselItem::after, .tListGroup::after, .tGrid::after, .uniPanelOfficer .panelBody::after, .uniLinkList02::after, .uniGrid::after, .uniNavPagination ul::after, .sstGrid::after, .content._col2::after, .contentInner::after {
  display: block;
  clear: both;
  content: '';
}

/* ----------------------------------------------------------------
    pseudo element
----------------------------------------------------------------- */
/* block
----------------------------------------------- */
.navLocal > li > a::before, .navLocal .navChild > li > a::before, .footerNavTop a::before, [class*='hdgL']._setBase a::before, [class*='hdgL']._setBase a::after, .hdgL102 span::before, .hdgL102_2 span::before, .hdgL2 a::after, .hdgL3 a::after, .hdgL4 a::after, .list > li::before, .listFlow > li::before, .listFlow02 li::before, .listRanking a::before, .link::before, .linkList > li a::before, .linkList02 > li > a::before, .formTxtErr::before, [class*='btn']._setBase:not(._icon)::before, .btnClose span::before, .btnClose span::after, .navToc a::before, .navTocBack a::before, .navRelated > .navList a::before, .navRelated > .navList02 a .navTxt span::before, .navPanel .navHdg::before, .navPanel .navHdg::after, .navPagination li a::before, .navPagination li a::after, .panelPoint::before, .panelPoint::after, .panelPoint > .panelInner::after, .lytOrder::before, .toggle > .toggleHdg > .toggleHdgInner::before, .toggle > .toggleHdg > .toggleHdgInner::after, .toggleFaq > .toggleHdg > .toggleHdgInner::before, .toggleFaq > .toggleHdg > .toggleHdgInner::after, .tab._toToggle .toggleItem .toggleHdg button::before, .tab._toToggle .toggleItem .toggleHdg button::after, .carouselFade .carouselControl .carouselNext button::before, .carouselFade .carouselControl .carouselPrev button::before, .carouselFade02 .carouselControl .carouselNext button::before, .carouselFade02 .carouselControl .carouselPrev button::before, .carouselPlayer button::before, .carouselPlayer button::after, .carouselPlayer button span::after, .modalBtnClose button::before, .modalBtnClose button::after, .tLinkList a .linkTxt span::before, .tLinkList02._emergency .linkIcon span::before, .uniListOutline > li .listHdg::before, .uniListHistory > li:last-child::before, .uniListHistory > li > .listHdg::before, .uniListHistory > li > .listHdg::after, .uniListAction::before, .uniHdgL2 a::before, .uniHdgL2 a::after, .uniHdgL202 .hdgTxt span::before, .uniHdgL202 .hdgTxt span::after, .uniLinkList a .listInner span::before, .uniLinkMedia span::before, .uniLinkFile a .linkMark::before, .uniNavPagination .navPrev a::before, .uniNavPagination .navNext a::before, .abtPanel .panelHdg span::before, .irLinkList li::before, .irLinkList li::after, .irLinkList a::before, .irLinkList02 a::before, .sstLinkDesc .linkTxt span::before, .sstLinkDesc .linkTxt span::after, .rctLinkDesc .linkTxt span::before, .rctLinkDesc .linkTxt span::after {
  display: block;
  content: '';
}

/* block2
----------------------------------------------- */
.carouselFade03 .carouselControl .carouselNext button::before, .carouselFade03 .carouselControl .carouselPrev button::before{
 display: block;
 content: ''
 }

/* inline-block
----------------------------------------------- */
[class*='btn']._setBase:not(._icon)::before, .btn02._icon._glossary::before, .btnPrint button::before, .uniBtnSearch::before, .btn02._icon._mail::before {
  display: inline-block;
  content: '';
}

/* ----------------------------------------------------------------
    sprite-image load
----------------------------------------------------------------- */
.formTxtErr::before, .btn02._icon._glossary::before, .btnPrint button::before, .tLinkList02._emergency .linkIcon span::before, .uniListOutline > li .listHdg._health::before, .uniListOutline > li .listHdg._society::before, .uniListOutline > li .listHdg._environment::before, .uniBtnSearch::before, .irLinkList .-market::after, .irLinkList .-strength::after, .irLinkList .-position::after, .irLinkList .-grow::after, .irLinkList .-dividend::after {
  background-image: url(../images/icon/sprite.png);
}

.btn02._icon._mail::before {
  background-image: url(../images/icon/mail.png);
}
/* ----------------------------------------------------------------
    margin adjust
----------------------------------------------------------------- */
/* last-child
----------------------------------------------- */
/* ----------------------------------------------------------------
    Header
----------------------------------------------------------------- */
/* .header
----------------------------------------------- */
.header {
  position: relative;
  padding: 30px 0 71px;
  border-bottom: 3px solid #c7000d;
  background: #fff;
}
.header a {
  text-decoration: none;
}
.header._onlyLogo {
  padding: 28px 0 23px;
}
.tHeader .header {
  position: static;
  padding: 0;
  border: 0;
}
@media only screen and (max-width: 767px) {
  .header {
    padding: 0;
  }
  .header._onlyLogo {
    padding: 0;
  }
  .tHeader .header {
    position: relative;
    padding: 0;
    border-bottom: 3px solid #c7000d;
  }
}
@media print {
  .header {
    padding-bottom: 30px;
  }
}

/* .headerInner
----------------------------------------------- */
.headerInner {
  margin: 0 auto;
  max-width: 1060px;
  text-align: left;
  line-height: 1;
}
@media only screen and (max-width: 860px) {
  .headerInner {
    width: auto;
  }
}
@media only screen and (max-width: 1060px) {
  .headerInner {
    padding-right: 15px;
    padding-left: 15px;
  }
}
.tHeader .headerInner {
  max-width: none;
}
@media only screen and (max-width: 1060px) {
  .tHeader .headerInner {
    padding: 0;
  }
}
@media only screen and (max-width: 767px) {
  .tHeader .headerInner {
    padding-right: 15px;
    padding-left: 15px;
  }
}

/* .headerLogo
----------------------------------------------- */
.headerLogo {
  position: relative;
  z-index: 50;
  display: inline-block;
  float: left;
  width: 314px;
  font-size: 12px;
}
.headerLogo a {
  display: block;
}
.headerLogo img {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
}
.tHeader .headerLogo {
  position: absolute;
  top: 118px;
  left: 50%;
  z-index: 100;
  width: 379px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.tHeader .headerLogo_en {
  position: absolute;
  top: 118px;
  left: 50%;
  z-index: 100;
  width: 700px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  font-size: 12px;
}
.tHeader .headerLogo_en a {
  display: block;
}
.tHeader .headerLogo_en img {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .headerLogo {
    display: block;
    float: none;
    padding: 16px 0 15px;
    width: 209px;
  }
  .tHeader .headerLogo {
    position: static;
    width: 209px;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  .headerLogo_en {
    display: block;
    float: none;
    padding: 16px 0 15px;
    width: 209px;
  }
  .tHeader .headerLogo_en {
    position: static;
    width: 209px;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

/* ----------------------------------------------------------------
    Header Menu
----------------------------------------------------------------- */
/* .headerMenu
----------------------------------------------- */
@media only screen and (max-width: 767px) {
  .headerMenu {
    margin: 0 -15px;
    padding: 0;
    background: #e2ddd4;
  }
}

/* .headerMenuBtn
----------------------------------------------- */
.headerMenuBtn {
  position: absolute;
  top: 15px;
  right: 15px;
  display: none;
  min-height: 30px;
  width: 30px;
  text-align: center;
}
.headerMenuBtn button {
  display: block;
  padding: 23px 0 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: transparent;
  color: #c7000d;
  font-size: 10px;
}
.headerMenuBtn button::before, .headerMenuBtn button::after {
  position: absolute;
  left: 50%;
  box-sizing: border-box;
  margin: 0 0 0 -12px;
  width: 24px;
  height: 3px;
  border: 1px solid #c7000d;
  border-radius: 3px;
  background: #c7000d;
  content: '';
  transition: all .2s ease;
  -webkit-transform-origin: left center;
  transform-origin: left center;
}
.headerMenuBtn button::before {
  top: 0;
}
.headerMenuBtn button::after {
  top: 14px;
}
.headerMenuBtn .headerMenuBtnInner {
  display: block;
}
.headerMenuBtn .headerMenuBtnInner::before {
  position: absolute;
  top: 7px;
  left: 50%;
  box-sizing: border-box;
  margin: 0 0 0 -12px;
  width: 24px;
  height: 3px;
  border: 1px solid #c7000d;
  border-radius: 3px;
  background: #c7000d;
  content: '';
  transition: all .2s ease;
  -webkit-transform-origin: left center;
  transform-origin: left center;
}
.headerMenu:not(.isCollapse) .headerMenuBtn {
  /* メニューが閉じる動作をする時はハンバーガーアイコンにしておく */
}
.headerMenu:not(.isCollapse) .headerMenuBtn [aria-expanded='true']::before, .headerMenu:not(.isCollapse) .headerMenuBtn [aria-expanded='true']::after {
  margin: 0 0 0 -8px;
}
.headerMenu:not(.isCollapse) .headerMenuBtn [aria-expanded='true']::before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.headerMenu:not(.isCollapse) .headerMenuBtn [aria-expanded='true']::after {
  top: 17px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.headerMenu:not(.isCollapse) .headerMenuBtn [aria-expanded='true'] .headerMenuBtnInner::before {
  top: 8px;
  margin: 0 0 0 -1px;
  -webkit-transform: scale(.1, 1);
  transform: scale(.1, 1);
}
@media only screen and (max-width: 767px) {
  .headerMenuBtn {
    display: block;
  }
  .headerMenuBtn button::before, .headerMenuBtn button::after {
    display: block;
  }
  .headerMenuBtn .headerMenuBtnInner::before {
    display: block;
  }
}

/* .headerMenuContent
----------------------------------------------- */
.headerMenuContent > :last-child {
  margin-bottom: 0;
}

/* .headerMenuContentInner
----------------------------------------------- */
@media only screen and (max-width: 767px) {
  .headerMenuContentInner {
    padding: 20px 30px 23px;
  }
}

/* .headerUtility
----------------------------------------------- */
.headerUtility .headerUtilityInner {
  display: table;
  float: right;
  margin: 0;
  direction: rtl;
}
.headerUtility .headerUtilityInner .utilitySearch, .headerUtility .headerUtilityInner .utilitySwitch {
  display: table-cell;
  margin: 0;
  vertical-align: middle;
  direction: ltr;
}
.headerUtility .headerUtilityInner .utilitySearch {
  position: relative;
  box-sizing: border-box;
  padding: 0 0 0 20px;
  width: 260px;
}
.headerUtility .headerUtilityInner .utilitySearch input {
  box-sizing: border-box;
  padding: 8px 50px 7px 10px;
  width: 100%;
  height: 40px;
  border: 0;
  background: #edeceb;
  color: #666;
  font-size: 12px;
}
.headerUtility .headerUtilityInner .utilitySearch button {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0 12px 0 13px;
  height: 100%;
  border: 0;
  background: #edebeb;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.headerUtility .headerUtilityInner .utilitySearch button:hover, .headerUtility .headerUtilityInner .utilitySearch button:active, .headerUtility .headerUtilityInner .utilitySearch button:focus {
  opacity: .8;
}
.headerUtility .headerUtilityInner .utilitySwitch {
  padding: 0 0 0 20px;
}
.headerUtility .headerUtilityInner .utilitySwitch li {
  float: left;
  border: 1px solid #c2b7a8;
  border-left: 0;
  font-size: 16px;
}
.headerUtility .headerUtilityInner .utilitySwitch li:first-child {
  border-left: 1px solid #c2b7a8;
}
.headerUtility .headerUtilityInner .utilitySwitch button {
  overflow: hidden;
  box-sizing: border-box;
  padding: 2px 2px 1px;
  min-width: 48px;
  border: 0;
  background: #fff;
  transition: background .7s cubic-bezier(.23, 1, .32, 1);
}
.headerUtility .headerUtilityInner .utilitySwitch button:hover, .headerUtility .headerUtilityInner .utilitySwitch button:active, .headerUtility .headerUtilityInner .utilitySwitch button:focus {
  background: #edeceb;
}
.headerUtility .headerUtilityInner .utilitySwitch .isSelected {
  background: #edeceb;
  color: #706451;
}
.tHeader .headerUtility {
  margin: 0 auto;
  margin-top: 25px;
  max-width: 1060px;
  text-align: left;
}
@media only screen and (max-width: 860px) {
  .tHeader .headerUtility {
    width: auto;
  }
}
@media only screen and (max-width: 1060px) {
  .tHeader .headerUtility {
    padding-right: 15px;
    padding-left: 15px;
  }
}
.tHeader .headerUtility .headerUtilityInner .utilitySearch input {
  padding: 8px 50px 7px 10px;
  height: 35px;
}
.tHeader .headerUtility .headerUtilityInner .utilitySwitch li {
  display: table;
  box-sizing: border-box;
  min-height: 35px;
}
.tHeader .headerUtility .headerUtilityInner .utilitySwitch button {
  display: table-cell;
  box-sizing: border-box;
  min-height: 33px;
  vertical-align: middle;
}
@media only screen and (max-width: 910px) {
  .headerUtility .headerUtilityInner .utilitySearch {
    width: 180px;
  }
}
@media only screen and (max-width: 767px) {
  .headerUtility .headerUtilityInner {
    display: block;
    float: none;
    direction: ltr;
  }
  .headerUtility .headerUtilityInner .utilitySwitch, .headerUtility .headerUtilityInner .utilitySearch {
    display: block;
  }
  .headerUtility .headerUtilityInner .utilitySwitch {
    margin: 0 0 20px;
    padding: 0;
    text-align: center;
    font-size: 0;
  }
  .headerUtility .headerUtilityInner .utilitySwitch li {
    display: inline-block;
    float: none;
    font-size: 12px;
  }
  .headerUtility .headerUtilityInner .utilitySwitch button {
    padding: 12px 0 11px;
    background: transparent;
  }
  .headerUtility .headerUtilityInner .utilitySwitch button:hover, .headerUtility .headerUtilityInner .utilitySwitch button:active, .headerUtility .headerUtilityInner .utilitySwitch button:focus {
    background: transparent;
    opacity: .5;
  }
  .headerUtility .headerUtilityInner .utilitySwitch b button {
    background: transparent;
    opacity: .5;
  }
  .headerUtility .headerUtilityInner .utilitySearch {
    padding: 0 0 0 41px;
    width: auto;
  }
  .headerUtility .headerUtilityInner .utilitySearch input {
    padding: 8px 10px;
    font-size: 16px;
  }
  .headerUtility .headerUtilityInner .utilitySearch button {
    left: 0;
    padding: 0;
    width: 40px;
    height: 40px;
  }
  .tHeader .headerUtility {
    margin: 0;
    padding: 0;
  }
  .tHeader .headerUtility .headerUtilityInner .utilitySearch input {
    padding: 8px 10px;
    height: 40px;
  }
  .tHeader .headerUtility .headerUtilityInner .utilitySwitch li {
    display: inline-block;
    min-height: 0;
  }
  .tHeader .headerUtility .headerUtilityInner .utilitySwitch button {
    display: block;
    padding: 12px 0 11px;
    min-height: 0;
  }
}
@media print {
  .headerUtility {
    display: none;
  }
}

/* ----------------------------------------------------------------
    Global Navigation
----------------------------------------------------------------- */
.gnavi_inner a, gnavi_block_title a {
  color: #4f3b1a;
}

.gnaviListwrap li {
  cursor: pointer;
}

.gnavi_menu_content {
  display: none;
  background: #f9f8f6;

  overflow: hidden;
  width: 1060px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.gnavi_menu {
  z-index: 101;
  position: absolute;
  left: 0;
  right: 0;
}

@media only screen and (max-width: 1060px) {
  .gnavi_menu_content{
    width: 98%;
  }
  ul.headerNavMain.gnaviListwrap {
    font-size: 13px !important;
  }
  .headerNavMain li {
    padding: 2px 6px 1px !important;
  }
  .headerNavSub {
    font-size: 12px !important;
  }
  .headerNavSub li {
    padding: 0 0 0 5px !important;
  }
}

@media only screen and (max-width: 767px) {
  .gnavi_menu_content {
    display: none !important;
    overflow: hidden;
  }
  ul.headerNavMain.gnaviListwrap {
    font-size: 14px !important;
  }
  ul.headerNavSub li {
    font-size: 14px !important;
    width: 50%;
    padding-left: 0px !important;
  }
}

.gnavi_inner_item {
    margin-bottom: 0;
}

.gnavi{
  background: #ebe7df;
  
}

.gnavi_block_sitemap span.plane {
  position: relative;
  display: inline-block;
  padding: 0 25px 0 16px;
  font-size: 12px;
  font-weight: bold;
  right: 0;
}

.gnavi_block_sitemap span.plane:before {
  content: "";
  position: absolute;
  top: 5px;
  left: -3px;
  width: 8px;
  height: 8px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transform: rotate(45deg);
}

.gnavi_block {
  float: left;
  margin-top: 18px;
  margin-left: 15px;
}

.gnavi_block > p {
    border-bottom: 1px dotted #4f3b1a;
    width: 192px;
    height: 35px;
    font-weight: bold;
    font-size: 12px;
}

.gnavi_block p {
    margin-bottom: 10px;
    padding-bottom: 3px;
}

.gmavi_block_wrap {
  overflow: hidden;
  margin: 0 17px 0 4px;
}

.gnavi_block_child {
    font-size: 10px;
    width: 192px;
    margin-bottom: 10px;
}

.gnavi_block_title {
  font-weight: bold;
  font-size: 15px;
}

.gnavi_block_title > p {
    margin: 10px 0 0 0;
}

.gnavi_block_title .plane {
    position: relative;
    display: inline-block;
    padding: 5px 0px 0 16px;
    margin-left: 17px;
}

.gnavi_block_title .plane:before {
  content: "";
  position: absolute;
  top: 9px;
  left: -3px;
  width: 8px;
  height: 8px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.gnavi_block_sitemap {
  text-align: right;
  margin-bottom: 10px;
}

.gnavi_block .plane {
  position: relative;
  display: inline-block;
  padding: 0 5px 0 16px;
}

.gnavi_block .plane:before {
  content: "";
  position: absolute;
  top: 3px;
  left: -3px;
  width: 8px;
  height: 8px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.gnavi_img {
  margin-bottom: 10px;
  font-size: 0.8em;
}

.gnavi_imgtxt {
  font-size: 0.8em;
  margin-bottom: 0px;
}

.gnavi_block_menu {
  overflow: hidden;
}

.gnaviListwrap li.is-active {
  color: #c7000d;
}

.gnaviListwrap li span:hover{
  color: #c7000d;
}

.inquerBox {
  font-size: 14px;

}
.inquerBox li {
  padding-left: 15px;
}

.btm_tran > p {
    border-bottom-color: transparent;
}

.close_btn {
  text-align: center;
  padding: 5px;
  background: #ebe7df;
  color: #4f3b1a;
  cursor: pointer;
  margin-bottom: 0px;
  border-bottom: 2px solid #c7000d;
  font-size: 12px;
}

.close_icon {
  display: inline-block;
  vertical-align: middle;
  background: #92846e;
  width: 16px;
  height: 2px;
  position: relative;
  transform: rotate(45deg);
  top: -0.9px;
  left: -3px;
}

.close_icon:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width:100%;
  height: 100%;
  background: inherit;
  transform: rotate(90deg);
}

li.gnavi_block.width_auto > p {
  width: auto;
  height: auto;
  border-bottom: transparent;
  font-size: 12px;
}

ul.gnavi_block_child.width_auto {
  width: auto;
}

.gnavi_block.width_auto span.plane {
  padding-right: 25px !important;
}


.gnavi_inner_item span.plane:hover, .gnavi_inner_item span.plane:active, .gnavi_inner_item spn.plane:focus {
  text-decoration: underline;
}

.gnavi_inner_item span.plane:hover::before, .gnavi_inner_item span.plane:active::before, .gnavi_inner_item spn.plane:focus::before {
  -webkit-transform: rotate(45deg) translate(2px, -2px);
}
/* ----------------------------------------------------------------
    Header Navigation
----------------------------------------------------------------- */
/* .headerNav
----------------------------------------------- */
.headerNav {
  position: absolute;
  bottom: 19px;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  color: #4f3b1a;
  font-size: 15px;
}
.headerNav a {
  color: inherit;
}
.tHeader .headerNav {
  position: static;
  padding: 28px 0;
  border-top: 3px solid #c7000d;
  background: #e2ddd4;
}
@media only screen and (max-width: 1060px) {
  .headerNav {
    font-size: 14px;
  }
  .tHeader .headerNav {
    padding: 28px 15px;
  }
}
@media only screen and (max-width: 880px) {
  .headerNav {
    bottom: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .headerNav {
    position: static;
    margin: -18px 0 0;
  }
  .tHeader .headerNav {
    padding: 0;
    border: 0;
    background: none;
  }
}
@media print {
  .headerNav {
    display: none;
  }
}

/* .headerNavInner
----------------------------------------------- */
.headerNavInner {
  display: table;
  box-sizing: border-box;
  margin: 0 auto;
  max-width: 1060px;
  width: 100%;
  height: 100%;
  text-align: left;
  /* FireFox で必要 */
}
@media only screen and (max-width: 880px) {
  .headerNavInner {
    width: auto;
    display: block;
  }
}
@media only screen and (max-width: 1060px) {
  .headerNavInner {
    padding-right: 15px;
    padding-left: 15px;
  }
  .tHeader .headerNavInner {
    display: block;
    padding: 0;
  }
}
@media only screen and (max-width: 767px) {
  .headerNavInner {
    display: block;
    padding: 0;
  }
}

/* .headerNavMain
----------------------------------------------- */
.headerNavMain {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
}
.headerNavMain li {
  float: left;
  padding: 2px 17px 1px;
  border-left: 1px solid #d2d2d2;
}
.headerNavMain li:first-child {
  padding-left: 0;
  border-left: 0;
}
.headerNavMain a {
  position: relative;
}
.headerNavMain a::before {
  position: absolute;
  top: 50%;
  right: 8px;
  margin: -4px 0 0;
  width: 9px;
  height: 9px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.headerNavMain a:hover, .headerNavMain a:active, .headerNavMain a:focus {
  color: #c7000d;
  text-decoration: none;
}
.headerNavMain .isCurrent a {
  color: #c7000d;
}
.headerNavMain .isCurrent b {
  font-weight: normal;
}
@media only screen and (max-width: 910px) {
  .headerNavMain li {
    padding-right: 10px;
    padding-left: 10px;
  }
}
@media only screen and (max-width: 880px) {
  .headerNavMain {
    display: block;
    margin: 0 0 12px;
  }
}
@media only screen and (max-width: 767px) {
  .headerNavMain {
    display: block;
    margin-bottom: 22px;
  }
  .headerNavMain li {
    float: none;
    padding: 0;
    border: 0;
    border-bottom: 1px solid #c2b7a8;
  }
  .headerNavMain a {
    display: block;
    padding: 18px 20px 16px 0;
  }
  .headerNavMain a::before {
    display: block;
    content: '';
  }
  .headerNavMain a:hover, .headerNavMain a:active, .headerNavMain a:focus {
    color: #776647;
  }
}

/* .headerNavSub
----------------------------------------------- */
.headerNavSub {
  display: block;
  text-align: right;
  margin: 2px 0px 0px;
  float: right;
  font-size: 14px;
}
.headerNavSub li {
  float: left;
  padding: 0 0 0 15px;
}
.headerNavSub li:first-child {
  padding: 0;
}
.headerNavSub li a {
  transition: opacity .5s cubic-bezier(.23, 1, .32, 1);
}
.headerNavSub li a:hover, .headerNavSub li a:active, .headerNavSub li a:focus {
  opacity: .8;
}
.tHeader .headerNavSub {
  font-size: 14px;
}
@media only screen and (max-width: 860px) {
  .headerNavSub {
    display: block;
    float: right;
    margin: 0;
  }
}
@media only screen and (max-width: 767px) {
  .headerNavSub {
    float: none;
    margin-bottom: 22px;
    text-align: center;
    font-size: 12px;
  }
  .headerNavSub li {
    padding: 0;
    width: 50%;
  }
}

/* ----------------------------------------------------------------
    Topic path
----------------------------------------------------------------- */
/* .topicPath
----------------------------------------------- */
.topicPath {
  background: #e2ddd4;
  font-size: 1.2rem;
}
.topicPath li {
  display: inline;
}
.topicPath li::before {
  position: relative;
  top: -1px;
  display: inline-block;
  margin: 0 8px 0 4px;
  color: #92846e;
  content: '\003e';
}
.topicPath li:first-child::before {
  content: none;
}
.topicPath a {
  text-decoration: none;
}
.topicPath a:hover, .topicPath a:active, .topicPath a:focus {
  text-decoration: underline;
}
.topicPath b {
  font-weight: normal;
}
.topicPath._bottom {
  display: none;
  background: none;
}
@media only screen and (max-width: 767px) {
  .topicPath {
    display: none;
  }
  .topicPath._bottom {
    display: block;
  }
}
@media print {
  .topicPath {
    display: none;
  }
}

/* .topicPathInner
----------------------------------------------- */
.topicPathInner {
  margin: 0 auto;
  padding: 10px 0 11px;
  max-width: 1060px;
  text-align: left;
}
@media only screen and (max-width: 860px) {
  .topicPathInner {
    width: auto;
  }
}
@media only screen and (max-width: 1060px) {
  .topicPathInner {
    padding-right: 15px;
    padding-left: 15px;
  }
}

/* ----------------------------------------------------------------
    Navigation Local
----------------------------------------------------------------- */
/* .navLocal
----------------------------------------------- */
.navLocal {
  margin: 0 0 40px 0;
  padding: 0 0 0 21px;
  border-left: 1px solid #e2ddd4;
  color: #4f3b1a;
}
.navLocal li {
  margin: 0;
}
.navLocal b {
  font-weight: normal;
}
.navLocal .navChild, .navLocal .navGrandchild {
  display: none;
}
.navLocal .isCurrent {
  font-weight: normal;
}
.navLocal .isCurrent > a {
  border-bottom: 1px solid #c7000d;
  color: #c7000d;
}
.navLocal .isCurrent > .navChild, .navLocal .isCurrent > .navGrandchild {
  display: block;
}
.navLocal .isCurrent._pass > a {
  color: #444;
}
.navLocal .isCurrent._pass > a:hover, .navLocal .isCurrent._pass > a:active, .navLocal .isCurrent._pass > a:focus {
  color: #c7000d;
}
.navLocal a {
  position: relative;
  display: block;
  padding: 11px 0 7px 23px;
  color: inherit;
  text-decoration: none;
  transition: color .5s cubic-bezier(.23, 1, .32, 1);
}
.navLocal a:hover, .navLocal a:active, .navLocal a:focus {
  color: #c7000d;
  text-decoration: none;
}
.navLocal > li {
  border-bottom: 1px solid #e4dfd7;
}
.navLocal > li > a::before {
  position: absolute;
  top: 17px;
  left: 0;
  width: 8px;
  height: 8px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.navLocal > li > a:hover::before, .navLocal > li > a:active::before, .navLocal > li > a:focus::before {
  -webkit-transform: rotate(45deg) translate(3px, -3px);
  transform: rotate(45deg) translate(3px, -3px);
}
.navLocal > .isCurrent {
  margin: 0 0 -1px;
  border: 0;
}
.navLocal > .isCurrent._pass > a {
  border-bottom-color: #e4dfd7;
}
.navLocal > .isCurrent._pass > a::before {
  top: 14px;
  left: 2px;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.navLocal > .isCurrent + li {
  /* カレント表示に隣接している要素は上ボーダーを表示 */
  border-top: 1px solid #e4dfd7;
}
.navLocal .navChild {
  margin: 0 0 -1px;
  font-size: 1.5rem;
}
.navLocal .navChild > li > a::before {
  position: absolute;
  top: 17px;
  left: 3px;
  width: 4px;
  height: 4px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.navLocal .navChild > li > a:hover::before, .navLocal .navChild > li > a:active::before, .navLocal .navChild > li > a:focus::before {
  -webkit-transform: rotate(45deg) translate(3px, -3px);
  transform: rotate(45deg) translate(3px, -3px);
}
.navLocal .navChild > .isCurrent._pass > a {
  border: 0;
}
.navLocal .navChild > .isCurrent._pass > a::before {
  left: 4px;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.navLocal .navGrandchild {
  margin: 0;
  font-size: 1.4rem;
}
.navLocal .navGrandchild a {
  padding: 12px 0 10px 41px;
}
.navLocal .navGrandchild a::before {
  position: absolute;
  top: 11px;
  left: 26px;
  content: '・';
}

/* .noJs
----------------------------------------------- */
.noJs .navLocal .navChild, .noJs .navLocal .navGrandchild {
  display: block;
}

/* .irmodule
----------------------------------------------- */

.hdgL6 {
  margin: 20px 0 15px 0;
  color: #4f3b1a;
  font-weight: bold;
  font-size: 1.7rem;
}
@media only screen and (max-width: 767px) {
  .hdgL6 {
    font-size: 1.6rem;
  }
}

.navRelated.navRelated2{
  border: none;
}

.navRelated.navRelated2 a{
  text-align: left;
}

.navRelated.navRelated2 .navList02 li{
  margin-top: 0;
}

.navRelated.navRelated2 .navList02 li:nth-child(n+4){
  margin-top: 20px;
}


/* ----------------------------------------------------------------
    Footer
----------------------------------------------------------------- */
/* .footer
----------------------------------------------- */
.footer {
  padding: 0 0 35px;
  border-top: 1px solid #e2ddd4;
  border-bottom: 3px solid #c7000d;
  background: #e2ddd4;
  font-size: 1.4rem;
}
.footer a {
  text-decoration: none;
}
.footer a:hover, .footer a:active, .footer a:focus {
  text-decoration: underline;
}
.footer._onlyCopyright {
  padding: 23px 0;
  border-bottom: 0;
  background: none;
}
@media only screen and (max-width: 767px) {
  .footer {
    padding: 0 0 15px;
    border-top: none;
    font-size: 1.2rem;
  }
  .footer._onlyCopyright {
    padding: 0 0 15px;
    border-top: 1px solid #e2ddd4;
  }
}

/* .footerNav
----------------------------------------------- */
.footerNav {
  margin: 0 0 14px;
  padding: 52px 0 0;
  background: url(/common/images/footer/bg.png) no-repeat 50% bottom #fff;
  background-size: 100% auto;
}
@media only screen and (max-width: 767px) {
  .footerNav {
    margin: 0;
    padding: 0;
    height: 27vw;
  }
}
@media print {
  .footerNav {
    display: none;
  }
}

/* .footerNavInner
----------------------------------------------- */
.footerNavInner {
  position: relative;
  margin: 0 auto;
  max-width: 1060px;
  text-align: left;
}
@media only screen and (max-width: 860px) {
  .footerNavInner {
    width: auto;
  }
}
@media only screen and (max-width: 1060px) {
  .footerNavInner {
    padding-right: 15px;
    padding-left: 15px;
  }
}

/* .footerGrid
----------------------------------------------- */
.footerGrid {
  margin-left: -1.88679%;
}
.footerGrid > .gridCol {
  margin-left: 1.85185%;
  width: 23.14815%;
}
.footerGrid > .gridCol:nth-child(4n+1) {
  clear: both;
}
.footerGrid > .gridCol {
  float: left;
}
.footerGrid > .gridCol > :last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .footerGrid {
    display: none;
  }
}

/* .footerHdg
----------------------------------------------- */
.footerHdg {
  margin: 40px 0 13px;
  color: #776647;
  font-weight: normal;
  font-size: 1.8rem;
}
.footerHdg a {
  color: inherit;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.footerHdg a:hover, .footerHdg a:active, .footerHdg a:focus {
  opacity: .7;
}
.gridCol > .footerHdg:first-child {
  margin-top: 0;
}

/* .footerSub
----------------------------------------------- */
.footerSub {
  margin: 0 auto;
  max-width: 1060px;
  text-align: left;
  text-align: center;
}
@media only screen and (max-width: 860px) {
  .footerSub {
    width: auto;
  }
}
@media only screen and (max-width: 1060px) {
  .footerSub {
    padding-right: 15px;
    padding-left: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .footerSub {
    padding-top: 18.4375%;
  }
  .footer._onlyCopyright .footerSub {
    padding: 15px 0 0;
  }
}

/* .footerLink
----------------------------------------------- */
.footerLink {
  margin: 0;
}
.footerLink li {
  margin: 0 0 8px;
}
.footerLink a {
  color: inherit;
}

/* .footerNavTop
----------------------------------------------- */
.footerNavTop {
  margin: 0;
  text-align: right;
}
.footerNavTop a {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 20px 0 0;
  min-width: 84px;
  min-height: 84px;
  background: rgba(255, 255, 255, .5);
  color: #473d2d !important;
  text-align: center;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.footerNavTop a::before {
  display: block;
  margin: 5px auto -4px;
  width: 20px;
  height: 20px;
  border: 1px solid #92846e;
  border-bottom: transparent;
  border-left: transparent;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(315deg);
  transform: rotate(315deg);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.footerNavTop a:hover, .footerNavTop a:active, .footerNavTop a:focus {
  text-decoration: none;
  opacity: .7;
}
.footerNavTop a:hover::before, .footerNavTop a:active::before, .footerNavTop a:focus::before {
  -webkit-transform: translateY(-3px) rotate(315deg);
  transform: translateY(-3px) rotate(315deg);
}
@media only screen and (max-width: 767px) {
  .footerNavTop {
    position: absolute;
    top: 22vw;
    right: 15px;
  }
  .footerNavTop a {
    min-width: 65px;
    min-height: 65px;
  }
  .footerNavTop a::before {
    margin: 1px auto -2px;
    width: 17px;
    height: 17px;
  }
}

/* .footerLink02
----------------------------------------------- */
.footerLink02 {
  margin: 0 0 7px;
  line-height: 1.2;
}
.footerLink02 li {
  display: inline-block;
  margin: 0 7px 0 0;
  padding: 2px 13px 1px 0;
  border-right: 1px solid #c2b7a8;
  color: #444;
}
.footerLink02 li:last-child {
  margin: 0;
  padding: 0;
  border: 0;
}
.footerLink02 a {
  color: inherit;
}
.footerLink02 a:hover, .footerLink02 a:active, .footerLink02 a:focus {
  color: #7c7c7c;
}
@media only screen and (max-width: 767px) {
  .footerLink02 {
    margin: 0;
  }
  .footerLink02 li {
    margin-bottom: 10px;
  }
}
@media print {
  .footerLink02 {
    display: none;
  }
}

/* .footerCopyright
----------------------------------------------- */
.footerCopyright {
  margin: 2px 0 0;
  color: #444;
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  .footerCopyright {
    margin: 4px 0 0;
    font-size: 1rem;
  }
}
@media print {
  .footerCopyright {
    margin-top: 35px;
  }
}

/* ----------------------------------------------------------------
    Headings
----------------------------------------------------------------- */
/* 見出しのベーススタイル
----------------------------------------------- */
[class*='hdgL']._setBase {
  color: #4f3b1a;
  font-weight: normal;
}
[class*='hdgL']._setBase a {
  position: relative;
  display: inline-block;
  color: #4f3b1a;
  text-decoration: none;
  transition: opacity .5s cubic-bezier(.23, 1, .32, 1);
}
[class*='hdgL']._setBase a::before, [class*='hdgL']._setBase a::after {
  position: absolute;
}
[class*='hdgL']._setBase a::before {
  left: 0;
  border-radius: 2px;
}
[class*='hdgL']._setBase a:hover, [class*='hdgL']._setBase a:active, [class*='hdgL']._setBase a:focus {
  text-decoration: none;
  opacity: .7;
}
.gridCol [class*='hdgL']._setBase {
  margin-top: 0;
}

/* .hdgL1
----------------------------------------------- */
.hdgL1 {
  margin: 0 auto;
  padding-top: 50px;
  max-width: 1060px;
  text-align: left;
}
@media only screen and (max-width: 860px) {
  .hdgL1 {
    width: auto;
  }
}
@media only screen and (max-width: 1060px) {
  .hdgL1 {
    padding-right: 15px;
    padding-left: 15px;
  }
}
.hdgL1 .hdgInner {
  padding: 15px 0 9px 55px;
  border-left: 3px solid #c7000d;
}
.hdgL1 .hdgInner > :last-child {
  margin-bottom: 0;
}
.hdgL1 .hdgMain {
  color: #c7000d;
  font-weight: normal;
  font-size: 3.8rem;
}
.hdgL1 .hdgSub {
  margin: 0 0 1px;
  color: #4f3b1a;
  font-size: 2.6rem;
}
@media only screen and (max-width: 767px) {
  .hdgL1 {
    padding-top: 30px;
  }
  .hdgL1 .hdgInner {
    padding: 10px 0 4px 19px;
  }
  .hdgL1 .hdgMain {
    font-size: 2.6rem;
  }
  .hdgL1 .hdgSub {
    font-size: 1.9rem;
  }
}

/* .hdgL102（第二階層用見出し）
----------------------------------------------- */
.hdgL102 ,.hdgL102_2 {
  position: relative;
  margin: 0 auto 45px;
  padding: 30px 0 5px;
  max-width: 1060px;
  color: #c7000d;
  text-align: center;
  font-weight: normal;
  font-size: 3.4rem;
  line-height: 1.61765;
}
.hdgL102 span::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  margin-left: -197px;
  width: 394px;
  height: 1px;
  background-color: #92846e;
}
.hdgL102_2 span::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  margin-left: -259px;
  width: 520px;
  height: 1px;
  background-color: #92846e;
}
@media only screen and (max-width: 767px) {
  .hdgL102 ,.hdgL102_2 {
    margin-bottom: 25px;
    padding: 20px 30px 0;
    font-size: 2.4rem;
  }
  .hdgL102 span ,.hdgL102_2 span {
    position: relative;
    display: block;
  }
  .hdgL102 span::before ,.hdgL102_2 span::before {
    left: 0;
    margin: 0;
    width: 100%;
  }
}

/* .hdgL2
----------------------------------------------- */
.hdgL2 {
  margin: 60px 0 25px 0;
  padding: 0 0 9px;
  border-bottom: 1px solid #706451;
  font-size: 3rem;
}
.hdgL2 a {
  padding-left: 40px;
}
.hdgL2 a::before {
  top: 9px;
  width: 23px;
  height: 23px;
  background: #706451;
}
.hdgL2 a::after {
  top: 16px;
  left: 5px;
  width: 7px;
  height: 7px;
  border: 1px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.btnPrint + .hdgL2 {
  margin-top: 0;
}
@media only screen and (max-width: 767px) {
  .hdgL2 {
    margin: 30px 0 15px;
    padding: 0 0 2px;
    font-size: 2.2rem;
  }
  .hdgL2 a {
    padding-left: 27px;
  }
  .hdgL2 a::before {
    top: 6px;
    width: 18px;
    height: 18px;
  }
  .hdgL2 a::after {
    top: 12px;
    left: 4px;
    width: 6px;
    height: 6px;
  }
}

/* .hdgL202
----------------------------------------------- */
.hdgL202 {
  margin: 40px 0 32px;
  color: #4f3b1a;
  text-align: center;
  font-size: 2rem;
}
.contentSecondary .hdgL202 {
  margin: 40px 0 10px;
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .hdgL202 {
    margin: 30px 0 14px;
    font-size: 1.7rem;
  }
  .contentSecondary .hdgL202 {
    font-size: 1.4rem;
  }
}

/* .hdgL3
----------------------------------------------- */
.hdgL3 {
  margin: 50px 0 25px;
  padding: 4px 0 0 12px;
  border-left: 2px solid #c7000d;
  font-size: 2.4rem;
  line-height: 1.2;
}
.hdgL3 a {
  padding-left: 28px;
}
.hdgL3 a::before {
  top: 5px;
  width: 16px;
  height: 16px;
  background: #706451;
}
.hdgL3 a::after {
  top: 10px;
  left: 4px;
  width: 5px;
  height: 5px;
  border: 1px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.hdgL3 .hdgInner {
  display: inline-block;
}
@media only screen and (max-width: 767px) {
  .hdgL3 {
    margin: 25px 0 20px;
    padding: 2px 0 0 7px;
    font-size: 1.8rem;
  }
  .hdgL3 a {
    padding-left: 18px;
  }
  .hdgL3 a::before {
    top: 3px;
    width: 13px;
    height: 13px;
  }
  .hdgL3 a::after {
    top: 7px;
    left: 3px;
    width: 4px;
    height: 4px;
  }
  .hdgL3 .hdgInner {
    display: block;
    margin: 7px 0 0;
  }
}

/* .hdgL4
----------------------------------------------- */
.hdgL4 {
  margin: 25px 0 20px 0;
  padding: 0 0 4px;
  border-bottom: 1px solid #bab2a7;
  font-size: 2rem;
}
.hdgL4 a {
  padding-left: 27px;
}
.hdgL4 a::before {
  top: 6px;
  width: 16px;
  height: 16px;
  background-color: #bab2a7;
}
.hdgL4 a::after {
  top: 11px;
  left: 4px;
  width: 5px;
  height: 5px;
  border: 1px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media only screen and (max-width: 767px) {
  .hdgL4 {
    margin: 20px 0 15px;
    padding: 0 0 1px;
    font-size: 1.6rem;
  }
  .hdgL4 a {
    padding-left: 20px;
  }
  .hdgL4 a::before {
    top: 5px;
    width: 13px;
    height: 13px;
  }
  .hdgL4 a::after {
    top: 9px;
    left: 3px;
    width: 4px;
    height: 4px;
  }
}

/* .hdgL5
----------------------------------------------- */
.hdgL5 {
  margin: 20px 0 15px 0;
  color: #000;
  font-weight: normal;
  font-size: 1.7rem;
}
@media only screen and (max-width: 767px) {
  .hdgL5 {
    font-size: 1.5rem;
  }
}

/* ----------------------------------------------------------------
    Texts
----------------------------------------------------------------- */
/* .txtStrong
----------------------------------------------- */
.txtStrong {
  font-weight: normal;
}

/* .txtUnderLine
----------------------------------------------- */
.txtUnderLine {
  text-decoration: underline;
}

/* .txtSizeS
----------------------------------------------- */
.txtSizeS {
  font-size: 1.4rem;
}

/* .txtSizeL
----------------------------------------------- */
.txtSizeL {
  font-size: 1.8rem;
}

/* .txtLead
----------------------------------------------- */
.txtLead {
  font-weight: bold;
  font-size: 2rem;
  line-height: 1.4;
}
.txtLead._daiichi {
  color: #c7000d;
}
.txtLead._dFrontier {
  color: #35719b;
}
.txtLead._neofirst {
  color: #9a789b;
}
@media only screen and (max-width: 767px) {
  .txtLead {
    font-size: 1.6rem;
    line-height: 1.25;
  }
}

/* .txtConvo
----------------------------------------------- */
.txtConvo {
  display: table;
  width: 100%;
}
.txtConvo .txtSpeaker, .txtConvo .txtContent {
  display: table-cell;
  vertical-align: top;
}
.txtConvo .txtSpeaker {
  padding: 0 20px 0 0;
  width: 4em;
  text-align: center;
  font-weight: normal;
}
.txtConvo .txtContent {
  padding-left: 20px;
  border-left: 1px solid #c3baae;
}
@media only screen and (max-width: 767px) {
  .txtConvo .txtSpeaker {
    padding-right: 10px;
  }
  .txtConvo .txtContent {
    padding-left: 10px;
  }
}

/* ----------------------------------------------------------------
    Lists
----------------------------------------------------------------- */
/* .list
----------------------------------------------- */
.list > li {
  position: relative;
  margin: 0 0 15px;
  padding-left: 20px;
}
.list > li::before {
  position: absolute;
  top: 7px;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 3px;
  background: #6f6351;
}
.list > li:last-child {
  margin-bottom: 0;
}
.list > li > :last-child {
  margin-bottom: 0;
}
.list > li > ul, .list > li ol {
  margin-top: 15px;
}
.list > li > ul > li, .list > li ol > li {
  font-size: 1.4rem;
}
.list > li > .list > li {
  margin: 0 0 9px;
}
.list > li > .list > li::before {
  width: 4px;
  height: 4px;
  border-radius: 2px;
}
.list > li > .list > li:last-child {
  margin-bottom: 0;
}
.listNumber > li > .list > li {
  margin: 0 0 9px;
  padding-left: 15px;
}
.listNumber > li > .list > li::before {
  width: 4px;
  height: 4px;
  border-radius: 2px;
}
.listNumber > li > .list > li:last-child {
  margin-bottom: 0;
}
.listDesc dd .list > li {
  margin: 0 0 9px;
}
@media only screen and (max-width: 767px) {
  .list > li > ul, .list > li ol {
    margin-top: 12px;
  }
  .list > li > ul > li, .list > li ol > li {
    font-size: 1.2rem;
  }
}

/* .listNumber
----------------------------------------------- */
.listNumber {
  counter-reset: number;
}
.listNumber > li {
  display: table;
  margin: 0 0 15px;
  counter-increment: number;
}
.listNumber > li::before {
  display: table-cell;
  padding: 0 .5em 0 0;
  min-width: 1.5em;
  content: counter(number) '.';
  text-align: right;
  font-size: 1.8rem;
  /* 出力結果 -> 'n.' */
}
.listNumber > li:last-child {
  margin-bottom: 0;
}
.listNumber > li > :last-child {
  margin-bottom: 0;
}
.listNumber > li > ul, .listNumber > li ol {
  margin-top: 15px;
}
.listNumber > li > ul > li, .listNumber > li ol > li {
  font-size: 1.4rem;
}
.listNumber > li > .listNumber > li {
  margin: 0 0 9px;
}
.listNumber > li > .listNumber > li::before {
  font-size: 1.6rem;
}
.listNumber > li > .listNumber > li:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .listNumber > li::before {
    font-size: 1.6rem;
  }
  .listNumber > li > ul > li, .listNumber > li ol > li {
    font-size: 1.2rem;
  }
  .listNumber > li > .listNumber > li::before {
    font-size: 1.2rem;
  }
}

/* .listNote
----------------------------------------------- */
.listNote {
  margin: -10px 0 30px;
}
.listNote > li {
  display: table;
  margin: 0 0 12px;
  font-size: 1.4rem;
}
.listNote > li:last-child {
  margin-bottom: 0;
}
.listNote > li > .listMark, .listNote > li > .listBody {
  display: table-cell;
  vertical-align: top;
}
.listNote > li > .listMark {
  padding: 0 5px 0 0;
  white-space: nowrap;
}
.listNote > li > .listBody > :last-child {
  margin-bottom: 0;
}
.listNote > li > .listBody p, .listNote > li > .listBody ul, .listNote > li > .listBody ol {
  margin-bottom: 12px;
}
.listNote > li._normalSize {
  font-size: inherit;
}
.listNote._em {
  color: #c7000d;
}
.panelTel + .listNote {
  margin-top: 0;
}
@media only screen and (max-width: 767px) {
  .listNote > li {
    font-size: 1.2rem;
  }
}

/* .listOther
----------------------------------------------- */
.listOther > li {
  display: table;
  margin: 0 0 15px;
}
.listOther > li:last-child {
  margin-bottom: 0;
}
.listOther > li > .listMark, .listOther > li > .listBody {
  display: table-cell;
  vertical-align: top;
}
.listOther > li > .listMark {
  padding: 0 5px 0 0;
  white-space: nowrap;
}
.listOther > li > .listBody > :last-child {
  margin-bottom: 0;
}
.listOther > li > .listBody > ul, .listOther > li > .listBody ol {
  margin-top: 15px;
}
.listOther > li > .listBody > ul > li, .listOther > li > .listBody ol > li {
  font-size: 1.4rem;
}
.listOther > li > .listBody > .listOther > li {
  margin: 0 0 9px;
}
.listOther > li > .listBody > .listOther > li:last-child {
  margin-bottom: 0;
}

/* .listDesc
----------------------------------------------- */
.listDesc dt {
  margin: 30px 0 10px;
  color: #000;
  font-size: 1.8rem;
}
.listDesc dt:first-child {
  margin-top: 0;
}
.listDesc dd > :last-child {
  margin-bottom: 0;
}
.listDesc dd p, .listDesc dd ul, .listDesc dd ol dl {
  margin: 0 0 9px;
}
@media only screen and (max-width: 767px) {
  .listDesc dt {
    margin: 22px 0 4px;
    font-size: 1.5rem;
  }
}

/* .listInfo
----------------------------------------------- */
.listInfo{
  margin-bottom:20px;
}
.listInfo li {
  margin: 0 0 20px;
  padding: 0 0 14px;
  border-bottom: 1px solid #e1ddd3;
}
.listInfo li > :last-child {
  margin-bottom: 0;
}
.listInfo .listDate {
  display: inline-block;
  margin: 0 20px 0 0;
  font-size: 1.4rem;
}
.listInfo .listLabel {
  display: inline-block;
  margin: 0 0 0 -3px;
  font-size: 0;
  /* inline-block 特有の隙間削除 */
}
.listInfo .listLabel li {
  position: relative;
  top: -1px;
  display: inline-block;
  box-sizing: border-box;
  margin: 2px 0 0 3px;
  padding: 3px 10px 2px;
  min-width: 108px;
  color: #fff;
  text-align: center;
  font-size: 1.3rem;
  opacity: .8;
}
.listInfo .listLabel .-csr {
  background: rgb(191,171,194);
  opacity: 1;
  color:#4f3b1a !important;
}
.listInfo .listLabel .-ir {
  background: rgb(140,163,192);
  opacity: 1;
  color:#4f3b1a !important;
}
.listInfo .listLabel .-recruit {
  background: rgb(228,185,205);
  opacity: 1;
  color:#4f3b1a !important;
}
.listInfo .listLabel .-goods {
  background: rgb(172,210,230);
  opacity: 1;
  color:#4f3b1a !important;
}
.listInfo .listLabel .-management {
  background: rgb(203,214,145);
  opacity: 1;
  color:#4f3b1a !important;
}
.listInfo .listLabel .-other {
  background: rgb(235,215,141);
  opacity: 1;
  color:#4f3b1a !important;
}
.listInfo .listLabel .-asset {
  background: rgb(231,191,131);
  opacity: 1;
  color:#4f3b1a !important;
}
.listInfo .listLabel .-company {
  min-width: 193px;
  background: #645947;
}
.listInfo .listLabel .-company02 {
  background: #645947;
}
.listInfo p {
  margin-top: 5px;
}
.listInfo a {
  text-decoration: none;
}
.listInfo a:hover, .listInfo a:active, .listInfo a:focus {
  text-decoration: underline;
}
@media only screen and (max-width: 767px) {
  .listInfo li {
    margin: 0 0 13px;
    padding: 0 10px 10px;
    font-size: 1.5rem;
  }
  .listInfo .listLabel li {
    padding: 1px 6px 0;
    min-width: 95px;
    font-size: 1.2rem;
  }
  .listInfo .listLabel .-company {
    min-width: 165px;
  }
}

/* .listInfo02
----------------------------------------------- */
.listInfo02{
  margin-bottom: 20px;
}
.listInfo02 > li {
  position: relative;
  margin: 0 0 12px;
  padding: 16px 0 3px 10em;
  border-top: 1px solid #dedad3;
}
.listInfo02 > li:first-child {
  padding-top: 0;
  border-top: 0;
}
.listInfo02 > li:last-child {
  border-bottom: 1px solid #dedad3;
  padding-bottom: 15px;
}
.listInfo02 > li > .listDate {
  position: absolute;
  left: 0;
  font-size: 1.4rem;
}
.listInfo02 > li > * {
  margin: 0;
}
.listInfo02 a {
  text-decoration: none;
}
.listInfo02 a:hover, .listInfo02 a:active, .listInfo02 a:focus {
  text-decoration: underline;
}
@media only screen and (max-width: 767px) {
  .listInfo02 > li {
    padding-right: 15px;
    padding-left: 15px;
  }
  .listInfo02 > li > .listDate {
    position: static;
    display: block;
    margin: 0 0 7px;
  }
}

/* .listInfo03
----------------------------------------------- */
.listInfo03 li {
  padding: 13px 20px 11px 20px;
  border: 1px solid #e2ddd4;
  border-bottom: 0;
  /* 下ボーダーは非表示 */
}
.listInfo03 li:last-child {
  border-bottom: 1px solid #e2ddd4;
}
.listInfo03 li > :last-child {
  margin-bottom: 0;
}
.listInfo03 li > .listDate {
  font-weight: bold;
  font-size: 1.4rem;
}
.contentSecondary .listInfo03 {
  margin-bottom: 0;
}

/* .listInfo04
----------------------------------------------- */
.listInfo04 {
  width: 100%;
  margin-bottom: 20px;
}
.listInfo04 > li {
  display: table;
  box-sizing: border-box;
  width: 100%;
  padding: 16px 0 15px;
  border-bottom: 1px solid #dedad3;
}
.listInfo04 > li:first-child {
  padding-top: 0;
}
.listInfo04 > li > .listDate {
  display: table-cell;
  white-space: nowrap;
  width: 12rem;
  font-size: 1.4rem;
}
.listInfo04 > li > .listLabel {
  display: table-cell;
  width: 11rem;
  padding: 0 1rem 0 0;
  vertical-align: top;
  text-align: center;
}
.listInfo04 > li > .listLabel span {
  display: inline-block;
  box-sizing: border-box;
  width: 100px;
  margin: 5px 0 0;
  padding: 3px 8px 2px;
  text-align: center;
  font-size: 1.3rem;
  background: #D9E1E9;
}
.listInfo04 > li > .listLabel span:first-child {
  margin: 0;
}
.listInfo04 > li > p {
  display: table-cell;
}
.listInfo04 > li > * {
  margin: 0;
}
.listInfo04 a {
  text-decoration: none;
}
.listInfo04 a:hover, .listInfo04 a:active, .listInfo04 a:focus {
  text-decoration: underline;
}
@media only screen and (max-width: 767px) {
  .listInfo04 > li {
    display: block;
    padding: 16px 15px 15px;
  }
  .listInfo04 > li > .listDate {
    display: block;
    width: 100%;
    margin: 0 0 2px;
  }
  .listInfo04 > li > .listLabel {
    display: block;
    width: 100%;
    margin: 0 0 5px;
    padding: 0;
    text-align: left;
  }
  .listInfo04 > li > .listLabel span {
    margin: 0 5px 5px 0;
    padding: 1px 6px 0;
    min-width: 95px;
    width: auto;
    font-size: 1.2rem;
    vertical-align: top;
  }
  .listInfo04 > li > .listLabel span:first-child {
    margin: 0 5px 5px 0;
  }
  .listInfo04 > li > p {
    display: block;
  }
}

/* .listInfo04_en
----------------------------------------------- */
.listInfo04_en {
  width: 100%;
  margin-bottom: 20px;
}
.listInfo04_en > li {
  display: table;
  box-sizing: border-box;
  width: 100%;
  padding: 16px 0 15px;
  border-bottom: 1px solid #dedad3;
}
.listInfo04_en > li:first-child {
  padding-top: 0;
}
.listInfo04_en > li > .listDate {
  display: table-cell;
  white-space: nowrap;
  width: 13rem;
  font-size: 1.4rem;
}
.listInfo04_en > li > .listLabel {
  display: table-cell;
  width: 11rem;
  padding: 0 1rem 0 0;
  vertical-align: top;
  text-align: center;
}
.listInfo04_en > li > .listLabel span {
  display: inline-block;
  box-sizing: border-box;
  word-break: break-all;
  width: 10rem;
  margin: 5px 0 0;
  padding: 3px 8px 2px;
  text-align: center;
  font-size: 1.3rem;
  background: #D9E1E9;
}
.listInfo04_en > li > .listLabel span:first-child {
  margin: 0;
}
.listInfo04_en > li > p {
  display: table-cell;
}
.listInfo04_en > li > * {
  margin: 0;
}
.listInfo04_en a {
  text-decoration: none;
}
.listInfo04_en a:hover, .listInfo04_en a:active, .listInfo04_en a:focus {
  text-decoration: underline;
}
@media only screen and (max-width: 767px) {
  .listInfo04_en > li {
    display: block;
    padding: 16px 15px 15px;
  }
  .listInfo04_en > li > .listDate {
    display: block;
    width: 100%;
    margin: 0 0 2px;
  }
  .listInfo04_en > li > .listLabel {
    display: block;
    width: 100%;
    margin: 0 0 5px;
    padding: 0;
    text-align: left;
  }
  .listInfo04_en > li > .listLabel span {
    margin: 0 5px 5px 0;
    padding: 1px 6px 0;
    min-width: 95px;
    width: auto;
    font-size: 1.2rem;
    vertical-align: top;
  }
  .listInfo04_en > li > .listLabel span:first-child {
    margin: 0 5px 5px 0;
  }
  .listInfo04_en > li > p {
    display: block;
  }
}

/* .listInfo05
----------------------------------------------- */
.listInfo05{
  margin-bottom:20px;
}
.listInfo05 li {
  margin: 0 0 20px;
  padding: 0 0 14px;
  border-bottom: 1px solid #e1ddd3;
}
.listInfo05 li > :last-child {
  margin-bottom: 0;
}
.listInfo05 .listDate {
  display: inline-block;
  margin: 0 5px 0 0;
  font-size: 1.4rem;
}
.listInfo05 .listLabel {
  display: inline-block;
  margin: 0 0 0 -3px;
  font-size: 0;
  /* inline-block 特有の隙間削除 */
}
.listInfo05 .listLabel li {
  position: relative;
  top: -1px;
  display: inline-block;
  box-sizing: border-box;
  margin: 2px 0 0 3px;
  padding: 3px 10px 2px;
  min-width: 108px;
  color: #fff;
  text-align: center;
  font-size: 1.3rem;
  opacity: .8;
}
.listInfo05 .listLabel .-mediumterm {
  background: rgb(172,210,230);
  opacity: 1;
  color:#4f3b1a !important;
}
.listInfo05 .listLabel .-return {
  background: rgb(203,214,145);
  opacity: 1;
  color:#4f3b1a !important;
}
.listInfo05 .listLabel .-settlement {
  background: rgb(140,163,192);
  opacity: 1;
  color:#4f3b1a !important;
}
.listInfo05 .listLabel .-event {
  background: rgb(228,185,205);
  opacity: 1;
  color:#4f3b1a !important;
}
.listInfo05 .listLabel .-generalmeeting {
  background: rgb(231,191,131);
  opacity: 1;
  color:#4f3b1a !important;
}
.listInfo05 .listLabel .-sustainability {
  background: rgb(191,171,194);
  opacity: 1;
  color:#4f3b1a !important;
}
.listInfo05 .listLabel .-other {
  background: rgb(235,215,141);
  opacity: 1;
  color:#4f3b1a !important;
}
.listInfo05 p {
  margin-top: 5px;
}
.listInfo05 a {
  text-decoration: none;
}
.listInfo05 a:hover, .listInfo a:active, .listInfo a:focus {
  text-decoration: underline;
}
.side05 {
  width: 12rem;
}
@media only screen and (max-width: 767px) {
  .listInfo05 li {
    margin: 0 0 13px;
    padding: 0 10px 10px;
    font-size: 1.5rem;
  }
  .listInfo05 .listLabel li {
    padding: 1px 6px 0;
    min-width: 95px;
    font-size: 1.2rem;
  }
}

/* .listFlow
----------------------------------------------- */
.listFlow > li {
  position: relative;
  display: table;
  margin: 0 0 66px;
  width: 100%;
  border-collapse: collapse;
}
.listFlow > li::before {
  position: absolute;
  bottom: -46px;
  left: 50%;
  margin-left: -35px;
  width: 0;
  height: 0;
  border-top: 26px solid #92846e;
  border-right: 35px solid transparent;
  border-left: 35px solid transparent;
}
.listFlow > li:last-child {
  margin-bottom: 0;
}
.listFlow > li:last-child::before {
  display: none;
}
.listFlow > li > .listCol, .listFlow > li > .listCol02 {
  display: table-cell;
  border: 1px solid #c3baae;
  vertical-align: middle;
}
.listFlow > li > .listCol > :last-child, .listFlow > li > .listCol02 > :last-child {
  margin-bottom: 0;
}
.listFlow > li > .listCol {
  box-sizing: border-box;
  padding: 30px;
  min-width: 258px;
  background: #f9f8f5;
}
.listFlow > li > .listCol .listHdg {
  color: #4f3b1a;
  font-weight: bold;
  font-size: 1.6rem;
}
.listFlow > li > .listCol02 {
  padding: 16px 20px 14px;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .listFlow > li > .listCol, .listFlow > li > .listCol02 {
    padding: 8px 13px;
  }
  .listFlow > li > .listCol {
    min-width: 110px;
  }
  .listFlow > li > .listCol .listHdg {
    font-size: 1.4rem;
  }
}

/* .listFlow02
----------------------------------------------- */
.listFlow02 {
  margin-left: -7.1%;
}
.listFlow02 > li {
  margin-left: 6.62932%;
  width: 26.70401%;
}
.listFlow02 > li:nth-child(3n+1) {
  clear: both;
}
.listFlow02 li {
  position: relative;
  float: left;
  text-align: center;
}
.listFlow02 li::before {
  position: absolute;
  top: 50%;
  left: -14.28571%;
  margin: -9px 0 0;
  width: 0;
  height: 0;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 11px solid #92846e;
}
.listFlow02 li:first-child::before {
  display: none;
}
.listFlow02 span, .listFlow02 b {
  display: block;
  box-sizing: border-box;
  padding: 12px 15px 11px;
  border: 1px solid #c3baae;
  font-weight: normal;
}
.listFlow02 span {
  background: #f3f1ed;
  color: #999;
}
.listFlow02 b {
  background: #fff;
  color: #4f3b1a;
}
@media only screen and (max-width: 767px) {
  .listFlow02 {
    margin: 0 0 22px;
    margin-left: -8.33333%;
    font-size: 1.2rem;
  }
  .listFlow02 li {
    margin-left: 7.69231%;
    width: 25.53846%;
  }
  .listFlow02 li::before {
    left: -19.44444%;
    margin-top: -8px;
    border-top-width: 8px;
    border-bottom-width: 8px;
  }
  .listFlow02 li:nth-child(3n+1) {
    clear: none;
  }
  .listFlow02 span, .listFlow02 b {
    padding: 6px 5px 4px;
  }
}

/* .listRanking
----------------------------------------------- */
.listRanking {
  counter-reset: number;
}
.listRanking li {
  display: table;
  box-sizing: border-box;
  width: 100%;
  border: 1px solid #e2ddd4;
  border-bottom: 0;
  color: #fff;
  /* 下ボーダーは非表示 */
  counter-increment: number;
  font-style: italic;
  font-size: 2.2rem;
}
.listRanking li:last-child {
  border-bottom: 1px solid #e2ddd4;
}
.listRanking li::before {
  display: table-cell;
  padding: 3px 0 0;
  width: 2em;
  background: #92846e;
  content: counter(number);
  vertical-align: middle;
  text-align: center;
}
.listRanking a, .listRanking span {
  position: relative;
  display: block;
  padding: 8px 20px 6px;
  color: #444;
  text-decoration: none;
  font-style: normal;
  font-size: 1.6rem;
}
.listRanking a {
  padding-left: 40px;
}
.listRanking a::before {
  position: absolute;
  top: 15px;
  left: 17px;
  width: 7px;
  height: 7px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.listRanking a:hover, .listRanking a:active, .listRanking a:focus {
  color: #7c7c7c;
}
.listRanking a:hover::before, .listRanking a:active::before, .listRanking a:focus::before {
  -webkit-transform: rotate(45deg) translate(2px, -2px);
  transform: rotate(45deg) translate(2px, -2px);
}
.contentSecondary .listRanking {
  margin-bottom: 40px;
}

/* ----------------------------------------------------------------
    Tables
----------------------------------------------------------------- */
/* .tbl
----------------------------------------------- */
.tbl {
  margin: 0 0 30px;
  width: 100%;
  border: 1px solid #c3baae;
}
.tbl caption {
  text-align: left;
}
.tbl th, .tbl td {
  padding: 15px 19px;
  border: 1px solid #c3baae;
  vertical-align: top;
}
.tbl th > :last-child, .tbl td > :last-child {
  margin-bottom: 0;
}
.tbl th p, .tbl th ul, .tbl th ol, .tbl th dl, .tbl td p, .tbl td ul, .tbl td ol, .tbl td dl {
  /* テーブル内用に基本マージンを再定義 */
  margin-bottom: 15px;
}
.tbl th, .tbl thead td {
  background: #f8f7f4;
  font-weight: normal;
}
.tbl .tblCellEm {
  background: #f7e1d5;
}
.tbl .tblCellIndent {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
}
.tbl .tblCellIndent > .tblInner {
  position: relative;
  display: block;
  margin-left: 10px;
  padding: 15px 19px 15px 30px;
}
.tbl .tblCellIndent > .tblInner > :last-child {
  margin-bottom: 0;
}
.tbl .tblCellIndent > .tblInner::before {
  position: absolute;
  top: 15px;
  left: -6px;
  display: block;
  content: '\2517';
}
.tbl .tblCellIndent._nest > .tblInner {
  margin-left: 25px;
}
.tbl .tblCellIcon > .tblInner {
  position: relative;
  padding: 0 85px 0 0;
}
@media only screen and (max-width: 767px) {
  .tbl {
    margin: 0 0 22px;
  }
  .tbl th, .tbl td {
    padding: 8px 13px;
  }
  .tbl th p, .tbl th ul, .tbl th ol, .tbl th dl, .tbl td p, .tbl td ul, .tbl td ol, .tbl td dl {
    /* テーブル内用に基本マージンを再定義 */
    margin-bottom: 10px;
  }
  .tbl .tblCellIndent > .tblInner {
    padding: 8px 13px 8px 26px;
  }
  .tbl._break {
    display: block;
    border: 0;
    border-collapse: separate;
  }
  .tbl._break caption, .tbl._break tbody, .tbl._break tr, .tbl._break th, .tbl._break td {
    display: block;
  }
  .tbl._break tr + tr {
    margin-top: -1px;
  }
  .tbl._break td {
    border-top: 0;
  }
}

/* .tblLytScroll
----------------------------------------------- */
.tblLytScroll {
  margin: 0 0 30px;
}
.tblLytScroll > :last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 1060px) {
  .tblLytScroll {
    position: relative;
    overflow: auto;
  }
  .tblLytScroll::-webkit-scrollbar {
    overflow: hidden;
    width: 5px;
    border-radius: 3px;
    background: #efefef;
  }
  .tblLytScroll::-webkit-scrollbar:horizontal {
    height: 5px;
  }
  .tblLytScroll::-webkit-scrollbar-button {
    display: none;
  }
  .tblLytScroll::-webkit-scrollbar-piece, .tblLytScroll::-webkit-scrollbar-piece:start {
    background: #efefef;
  }
  .tblLytScroll::-webkit-scrollbar-thumb, .tblLytScroll::-webkit-scrollbar-corner {
    overflow: hidden;
    border-radius: 3px;
    background: #c3baae;
  }
  .tblLytScroll .tbl {
    width: 780px;
  }
}
@media only screen and (max-width: 767px) {
  .tblLytScroll {
    margin: 0 0 22px;
  }
  .tblLytScroll .tbl {
    width: 767px;
  }
}

/* ----------------------------------------------------------------
    Links
----------------------------------------------------------------- */
/* link クラスの共通設定
----------------------------------------------- */
.link, .linkList > li a {
  text-decoration: none;
}
.link:hover, .linkList > li a:hover, .link:active, .linkList > li a:active, .link:focus, .linkList > li a:focus {
  text-decoration: underline;
}

/* .link
----------------------------------------------- */
.link {
  position: relative;
  display: inline-block;
  padding-left: 15px;
  color: inherit;
}
.link::before {
  position: absolute;
  top: 7px;
  left: -3px;
  width: 7px;
  height: 7px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.link:hover, .link:active, .link:focus {
  color: #7c7c7c;
}
.link:hover::before, .link:active::before, .link:focus::before {
  -webkit-transform: rotate(45deg) translate(2px, -2px);
  transform: rotate(45deg) translate(2px, -2px);
}

/* .linkList
----------------------------------------------- */
.linkList > li {
  margin: 0 0 10px;
}
.linkList > li:last-child {
  margin-bottom: 0;
}
.linkList > li a {
  position: relative;
  display: inline-block;
  padding-left: 15px;
  color: inherit;
}
.linkList > li a::before {
  position: absolute;
  top: 7px;
  left: -3px;
  width: 7px;
  height: 7px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.linkList > li a:hover, .linkList > li a:active, .linkList > li a:focus {
  color: #7c7c7c;
}
.linkList > li a:hover::before, .linkList > li a:active::before, .linkList > li a:focus::before {
  -webkit-transform: rotate(45deg) translate(2px, -2px);
  transform: rotate(45deg) translate(2px, -2px);
}
.linkList > li ul, .linkList > li ol {
  margin: 10px 0 0 15px;
}
.linkList._inline {
  margin-top: -15px;
}
.linkList._inline > li {
  float: left;
  margin: 15px 30px 0 0;
}
.contentSecondary .linkList {
  margin-bottom: 15px;
}

/* .linkList02
----------------------------------------------- */
.linkList02 > li {
  border-width: 1px 1px 0 1px;
  border-style: solid;
  border-color: #e2ddd4;
}
.linkList02 > li:last-child {
  border-bottom: 1px solid #e2ddd4;
}
.linkList02 > li > a {
  position: relative;
  display: block;
  padding: 13px 20px 11px 43px;
  color: #444;
  text-decoration: none;
}
.linkList02 > li > a::before {
  position: absolute;
  top: 20px;
  left: 20px;
  width: 7px;
  height: 7px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.linkList02 > li > a:hover, .linkList02 > li > a:active, .linkList02 > li > a:focus {
  color: #7c7c7c;
}
.linkList02 > li > a:hover::before, .linkList02 > li > a:active::before, .linkList02 > li > a:focus::before {
  -webkit-transform: rotate(45deg) translate(2px, -2px);
  transform: rotate(45deg) translate(2px, -2px);
}
.linkList02 > li.isCurrent > a {
  color: #c7000d;
}
.listInfo03 + .linkList02 {
  margin-top: -1px;
}

/* ----------------------------------------------------------------
    Icons
----------------------------------------------------------------- */
/* .iconFile
----------------------------------------------- */
.iconFile {
  position: relative;
  top: -1px;
  display: inline-block;
  box-sizing: border-box;
  margin: 0 2px;
  padding: 2px 5px 0;
  min-width: 30px;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 1.1rem;
}
.iconFile._excel {
  background: #0f6f39;
}
.iconFile._pdf {
  background: #cb0f0f;
}
.iconFile._zip {
  background: #808080;
}

/* .iconBlank, iconMovie, iconModal
----------------------------------------------- */
.iconBlank, .iconMovie, .iconModal {
  position: relative;
  top: -6px;
  display: inline-block;
  margin: 0 2px;
}
.hdgL3 .iconBlank, .hdgL3 .iconMovie, .hdgL3 .iconModal {
  top: -8px;
}
.navPanel .navHdg .iconBlank, .navPanel .navHdg .iconMovie, .navPanel .navHdg .iconModal {
  top: -12px;
}
@media only screen and (max-width: 767px) {
  .hdgL3 .iconBlank, .hdgL3 .iconMovie, .hdgL3 .iconModal {
    top: -5px;
  }
  .navPanel .navHdg .iconBlank, .navPanel .navHdg .iconMovie, .navPanel .navHdg .iconModal {
    top: -8px;
  }
}

/* .iconLabel
----------------------------------------------- */
.iconLabel {
  display: inline-block;
  box-sizing: border-box;
  padding: 6px 15px 5px;
  min-width: 145px;
  background: #91836d;
  color: #fff;
  font-size: 1.4rem;
}
.iconLabel._health, .iconLabel._society, .iconLabel._environment {
  position: relative;
  min-width: 50px;
  min-height: 38px;
  vertical-align: middle;
  text-align: center;
  font-size: 1.6rem;
}
.iconLabel._health {
  background: #6db3d4;
}
.iconLabel._society {
  background: #d59533;
}
.iconLabel._environment {
  background: #5d9784;
}
.hdgL3 .iconLabel {
  margin: -2px 0 2px;
}
.txtLead .iconLabel {
  margin: 0 0 17px;
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .iconLabel {
    font-size: 1.2rem;
  }
  .iconLabel._health, .iconLabel._society, .iconLabel._environment {
    padding: 0 8px 5px;
    min-width: 26px;
    min-height: 19px;
  }
  .iconLabel._health img, .iconLabel._society img, .iconLabel._environment img {
    zoom: .5;
  }
  .hdgL3 .iconLabel {
    margin: -3px 0 0;
  }
  .txtLead .iconLabel {
    margin: 0 0 14px;
  }
}

/* .iconLabel02
----------------------------------------------- */
.iconLabel02 {
  display: inline-block;
  box-sizing: border-box;
  padding: 3px 5px 1px;
  min-width: 66px;
  font-size: 1.3rem;
  line-height: 1;
}
.iconLabel02._require {
  background: #c7000d;
  color: #fff;
  text-align: center;
  font-weight: normal;
}
.tblCellIcon > .tblInner .iconLabel02 {
  position: absolute;
  top: 3px;
  right: 0;
}

/* .iconMark
----------------------------------------------- */
.iconMark {
  position: relative;
  display: inline-block;
  overflow: hidden;
  color: transparent;
  line-height: 1;
}
.iconMark._minus {
  width: 1em;
  height: 1em;
}
.iconMark._minus::before {
  position: absolute;
  top: 3px;
  left: 0;
  display: block;
  color: #444;
  content: '\0025b3';
}

/* ----------------------------------------------------------------
    Forms
----------------------------------------------------------------- */
/* .formTxt
----------------------------------------------- */
.formTxt {
  box-sizing: border-box;
  padding: 5px;
  max-width: 240px;
  width: 100%;
}
.formTxt._small {
  max-width: 100px;
}
.formTxt._full {
  max-width: none;
}
@media only screen and (max-width: 767px) {
  .formTxt {
    max-width: none;
  }
  .formTxt._small {
    max-width: 64px;
  }
}

/* .formTxtErr
----------------------------------------------- */
.formTxtErr {
  position: relative;
  display: inline-block;
  padding: 0 0 0 28px;
  font-weight: normal;
  font-size: 1.4rem;
}
.formTxtErr::before {
  position: absolute;
  top: 1px;
  left: 0;
  width: 20px;
  height: 17px;
  background-position: -174px -89px;
  background-size: 215px auto;
}

/* .formList
----------------------------------------------- */
.formList {
  margin-top: -10px;
  margin-left: -20px;
}
.formList > li {
  float: left;
  margin: 10px 0 0 20px;
  max-width: 240px;
  width: 100%;
}
.formList._nature {
  margin-top: 0;
}
.formList._nature > li {
  margin: 5px 0 5px 20px;
  max-width: none;
  width: auto;
}
@media only screen and (max-width: 767px) {
  .formList {
    margin: 0 0 10px;
  }
  .formList > li {
    float: none;
    margin: 0 0 10px;
    max-width: none;
  }
  .formList > li:last-child {
    margin-bottom: 0;
  }
  .formList._nature > li {
    margin-left: 0;
  }
}

/* .formCheck
----------------------------------------------- */
.formCheck {
  position: relative;
  top: 1px;
  margin: 0 4px 0 0;
}

/* .formSelect
----------------------------------------------- */
.formSelect {
  box-sizing: border-box;
  padding: 5px;
}
@media only screen and (max-width: 767px) {
  .formSelect {
    width: 100%;
  }
}

/* .formLytComplete
----------------------------------------------- */
.formLytComplete {
  margin: 100px 0;
  text-align: center;
}
.formLytComplete > :last-child {
  margin-bottom: 0;
}
.formLytComplete .formTxtLead {
  margin: 0 0 8px;
  color: #4f3b1a;
  font-size: 3rem;
  line-height: 1.2;
}
@media only screen and (max-width: 767px) {
  .formLytComplete {
    margin: 50px 0;
  }
  .formLytComplete .formTxtLead {
    font-size: 2.2rem;
  }
}

/* ----------------------------------------------------------------
    Buttons
----------------------------------------------------------------- */
/* ボタンのベーススタイル
----------------------------------------------- */
[class*='btn']._setBase {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 13px 20px 11px;
  min-width: 273px;
  border-radius: 24px;
  text-align: center;
  text-decoration: none;
  transition: background .7s cubic-bezier(.23, 1, .32, 1), color .7s cubic-bezier(.23, 1, .32, 1);
}
[class*='btn']._setBase:not(._icon)::before {
  position: relative;
  top: -2px;
  left: -2px;
  margin: 0 12px 0 0;
  width: 8px;
  height: 8px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
[class*='btn']._setBase:hover, [class*='btn']._setBase:active, [class*='btn']._setBase:focus {
  text-decoration: none;
}
[class*='btn']._setBase:hover:not(._icon)::before, [class*='btn']._setBase:active:not(._icon)::before, [class*='btn']._setBase:focus:not(._icon)::before {
  -webkit-transform: rotate(45deg) translate(2px, -2px);
  transform: rotate(45deg) translate(2px, -2px);
}
[class*='btn']._setBase._thin {
  padding: 5px 20px 3px;
  min-width: 167px;
  border-radius: 15px;
  font-size: 1.4rem;
}
[class*='btn']._setBase._thin::before {
  top: -1px;
}
@media only screen and (max-width: 767px) {
  [class*='btn']._setBase {
    left: 50%;
    min-width: 260px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .center [class*='btn']._setBase {
    /* 調整モジュールで中央寄せにされている場合は無効化 */
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

/* .btn
----------------------------------------------- */
.btn {
  border: 0;
  background: #e1ddd3;
  color: #4f3b1a;
}
.btn:hover, .btn:active, .btn:focus {
  background: rgba(225, 221, 211, .7);
  color: inherit;
}
.uniListHistory > li:last-child > :last-child .btn {
  margin-top: 90px;
}
@media only screen and (max-width: 767px) {
  .uniListHistory > li:last-child > :last-child .btn {
    margin-top: 60px;
  }
}

/* .btn02
----------------------------------------------- */
.btn02 {
  border: 1px solid #c3baae;
  background: white;
  color: #4f3b1a;
}
.btn02._noBorder {
  border: 0;
}
.btn02:hover, .btn02:active, .btn02:focus {
  border-color: rgba(195, 186, 174, .7);
  background: rgba(255, 255, 255, .7);
  color: inherit;
}
.btn02._back::before {
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.btn02._back:hover::before, .btn02._back:active::before, .btn02._back:focus::before {
  -webkit-transform: rotate(225deg) translate(2px, -2px);
  transform: rotate(225deg) translate(2px, -2px);
}
.btn02._icon._glossary::before {
  position: relative;
  top: 4px;
  margin: 0 12px 0 0;
  width: 12px;
  height: 19px;
  background-position: -198px -48px;
  background-size: 215px auto;
}
.btn02._icon._mail::before {
  position: relative;
  top: 3px;
  margin: 0 12px 0 0;
  width: 19px;
  height: 15px;
}

/* .btnClose
----------------------------------------------- */
.btnClose {
  border: 1px solid #c3baae;
  background: white;
  color: #4f3b1a;
}
.btnClose::before {
  /* 閉じるボタンでは'>'マークは不要 */
  display: none !important;
}
.btnClose span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 25px;
}
.btnClose span::before, .btnClose span::after {
  position: absolute;
  left: 13px;
  box-sizing: border-box;
  margin: 0 0 0 -12px;
  width: 18px;
  height: 3px;
  border: 1px solid #c7000d;
  border-radius: 3px;
  background: #c7000d;
  -webkit-transform-origin: left center;
  transform-origin: left center;
}
.btnClose span::before {
  top: 3px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.btnClose span::after {
  top: 16px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/* .btnPrint
----------------------------------------------- */
.btnPrint {
  margin: -20px 0 10px;
  text-align: right;
}
.btnPrint button {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 2px 20px 1px;
  min-width: 134px;
  border: 0;
  border-radius: 11px;
  background: #e1ddd3;
  color: #4f3b1a;
  text-align: center;
  font-size: 1.4rem;
  transition: background .7s cubic-bezier(.23, 1, .32, 1), color .7s cubic-bezier(.23, 1, .32, 1);
}
.btnPrint button::before {
  position: relative;
  top: 1px;
  left: 0;
  margin: 0 12px 0 0;
  width: 16px;
  height: 13px;
  background-position: -198px -69px;
  background-size: 215px auto;
}
.btnPrint button:hover, .btnPrint button:active, .btnPrint button:focus {
  background: #f1ece4;
  color: #4f3b1a;
  text-decoration: none;
}
@media only screen and (max-width: 767px) {
  .btnPrint {
    display: none;
  }
  .btnList02 .btnPrint {
    display: none;
  }
}
@media print {
  .btnPrint {
    display: none;
  }
  .btnList02 .btnPrint {
    display: none;
  }
}

/* .btnList
----------------------------------------------- */
.btnList {
  margin: -15px 0 30px;
  text-align: center;
  letter-spacing: -.4em;
}
.btnList li {
  display: inline-block;
  margin: 15px 11px 0;
  letter-spacing: normal;
}
@media only screen and (max-width: 767px) {
  .btnList {
    margin-bottom: 22px;
  }
}

/* .btnList02
----------------------------------------------- */
.btnList02 {
  margin: -20px 0 10px;
  text-align: right;
  letter-spacing: -.4em;
}
.btnList02 li {
  display: inline-block;
  margin: 0 0 0 10px;
  letter-spacing: normal;
}

/* ----------------------------------------------------------------
    Navigations
----------------------------------------------------------------- */
/* .navToc
----------------------------------------------- */
.navToc {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 1px;
  /* 子要素をネガティブマージンで引き上げている分を調整 */
  border-left: 1px solid #e2ddd4;

  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}
.navToc li {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  /* 左線だけ非表示 */
  box-sizing: border-box;
  margin: -1px 0 0;
  width: 33.33%;
  /* 上の要素の線と結合 */
  border: 1px solid #e2ddd4;
  border-left: 0;
}
.navToc a {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  box-sizing: border-box;
  padding: 13px 20px 12px 51px;
  width: 100%;
  color: #444 !important;
  text-decoration: none;

  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.navToc a::before {
  position: absolute;
  top: 50%;
  left: 22px;
  margin-top: -8px;
  width: 8px;
  height: 8px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.navToc a:hover, .navToc a:active, .navToc a:focus {
  color: #7c7c7c;
  text-decoration: underline;
}
.navToc a:hover::before, .navToc a:active::before, .navToc a:focus::before {
  -webkit-transform: translateY(3px) rotate(135deg);
  transform: translateY(3px) rotate(135deg);
}
.navToc span {
  display: inline-block;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .navToc li {
    width: calc(100% / 2);
  }
  .navToc a {
    padding-right: 10px;
    padding-left: 33px;
  }
  .navToc a::before {
    left: 11px;
  }
}

/* .navTocBack
----------------------------------------------- */
.navTocBack {
  text-align: right;
}
.navTocBack a {
  position: relative;
  display: inline-block;
  padding-left: 24px;
  color: #444 !important;
  text-decoration: none;
}
.navTocBack a::before {
  position: absolute;
  top: 50%;
  left: 2px;
  margin: -2px 0 0;
  width: 8px;
  height: 8px;
  border: 1px solid #91836d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(315deg);
  transform: rotate(315deg);
}
.navTocBack a:hover, .navTocBack a:active, .navTocBack a:focus {
  color: #7c7c7c;
  text-decoration: underline;
}
.navTocBack a:hover::before, .navTocBack a:active::before, .navTocBack a:focus::before {
  -webkit-transform: translateY(-3px) rotate(315deg);
  transform: translateY(-3px) rotate(315deg);
}

/* .navRelated
----------------------------------------------- */
.navRelated {
  margin: 0 0 30px;
  padding: 14px 20px;
  border: 1px solid #c3baae;
}
.navRelated > :last-child {
  margin-bottom: 0 !important;
}
.navRelated > .navHdg {
  margin: 0 0 10px;
  color: #4f3b1a;
  font-size: 1.6rem;
}
.navRelated > .navList {
  margin: -16px 0 0 -20px;
}
.navRelated > .navList li {
  float: left;
  margin: 16px 0 0 20px;
}
.navRelated > .navList a {
  position: relative;
  display: inline-block;
  padding-left: 15px;
  color: #444;
  text-decoration: none;
}
.navRelated > .navList a::before {
  position: absolute;
  top: 7px;
  left: -3px;
  width: 7px;
  height: 7px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.navRelated > .navList a:hover, .navRelated > .navList a:active, .navRelated > .navList a:focus {
  color: #7c7c7c;
  text-decoration: underline;
}
.navRelated > .navList a:hover::before, .navRelated > .navList a:active::before, .navRelated > .navList a:focus::before {
  -webkit-transform: rotate(45deg) translate(2px, -2px);
  transform: rotate(45deg) translate(2px, -2px);
}
.navRelated > .navList02 {
  margin-top: -10px;
  margin-left: -2.92453%;
}
.navRelated > .navList02 > li {
  margin-left: 2.84143%;
  width: 29.88084%;
}
.navRelated > .navList02 > li:nth-child(3n+1) {
  clear: both;
}
.navRelated > .navList02 > li {
  float: left;
  margin-top: 10px;
}
.navRelated > .navList02 a {
  display: table;
  color: #444;
  text-decoration: none;
}
.navRelated > .navList02 a .navMedia {
  display: table-cell;
  padding: 0 20px 0 0;
}
.navRelated > .navList02 a .navMedia img {
  max-width: none;
  transition: opacity .5s cubic-bezier(.23, 1, .32, 1);
}
.navRelated > .navList02 a .navTxt {
  display: table-cell;
  vertical-align: middle;
}
.navRelated > .navList02 a .navTxt span {
  position: relative;
  display: block;
  padding-left: 20px;
}
.navRelated > .navList02 a .navTxt span::before {
  position: absolute;
  top: 50%;
  left: -3px;
  margin: -5px 0 0;
  width: 7px;
  height: 7px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.navRelated > .navList02 a:hover, .navRelated > .navList02 a:active, .navRelated > .navList02 a:focus {
  color: #7c7c7c;
  text-decoration: underline;
}
.navRelated > .navList02 a:hover .navMedia img, .navRelated > .navList02 a:active .navMedia img, .navRelated > .navList02 a:focus .navMedia img {
  opacity: .65;
}
.navRelated > .navList02 a:hover .navTxt span::before, .navRelated > .navList02 a:active .navTxt span::before, .navRelated > .navList02 a:focus .navTxt span::before {
  -webkit-transform: rotate(45deg) translate(2px, -2px);
  transform: rotate(45deg) translate(2px, -2px);
}
@media only screen and (max-width: 767px) {
  .navRelated {
    padding: 16px 13px;
  }
  .navRelated > .navHdg {
    margin: 0 0 15px;
    font-size: 1.4rem;
    line-height: 1.42;
  }
  .navRelated > .navList02 {
    margin-top: 0;
    margin-left: 0;
  }
  .navRelated > .navList02 > li {
    float: none;
    margin: 0 0 25px;
    width: auto;
  }
  .navRelated > .navList02 > li:last-child {
    margin-bottom: 0;
  }
  .navRelated > .navList02 a .navMedia {
    padding-right: 15px;
  }
  .navRelated > .navList02 a .navTxt {
    padding-left: 18px;
  }
}

/* .navPanel
----------------------------------------------- */
.navPanel {
  margin: 0 0 30px;
  padding: 0 0 30px;
  border-bottom: 1px solid #e2ddd4;
}
.navPanel > :last-child, .navPanel > a > :last-child, .navPanel .navInner > :last-child {
  margin-bottom: 0;
}
.navPanel .navHdg {
  position: relative;
  margin: 0 0 17px;
  padding-left: 27px;
  color: #4f3b1a;
  font-weight: normal;
  font-size: 2.2rem;
}
.navPanel .navHdg::before, .navPanel .navHdg::after {
  position: absolute;
}
.navPanel .navHdg::before {
  top: 6px;
  left: 0;
  width: 16px;
  height: 16px;
  border-radius: 2px;
  background: #6f6351;
}
.navPanel .navHdg::after {
  top: 11px;
  left: 4px;
  width: 5px;
  height: 5px;
  border: 1px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.navPanel .navInner {
  margin-top: 30px;
}
.navPanel a {
  display: block;
  color: #444;
  text-decoration: none;
  transition: opacity .7s cubic-bezier(.23, 1, .32, 1), color .7s cubic-bezier(.23, 1, .32, 1), text-decoration .7s cubic-bezier(.23, 1, .32, 1);
}
.navPanel a:hover, .navPanel a:active, .navPanel a:focus {
  color: #7c7c7c;
  text-decoration: none;
  opacity: .7;
}
@media only screen and (max-width: 767px) {
  .navPanel .navHdg {
    margin-bottom: 9px;
    font-size: 1.7rem;
  }
  .navPanel .navHdg::before {
    top: 4px;
  }
  .navPanel .navHdg::after {
    top: 9px;
  }
}

/* .navPagination
----------------------------------------------- */
.navPagination li {
  box-sizing: border-box;
  width: calc(100% / 2);
  font-weight: bold;
  font-size: 1.4rem;
  line-height: 1.78571;
}
.navPagination li a {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 9px 0 0;
  min-height: 38px;
  color: #4f3b1a;
  text-decoration: none;
  transition: opacity .7s cubic-bezier(.23, 1, .32, 1), text-decoration .7s cubic-bezier(.23, 1, .32, 1);
}
.navPagination li a::before {
  position: absolute;
  top: 0;
  box-sizing: border-box;
  width: 38px;
  height: 38px;
  border: 1px solid #c3baae;
  background: #fff;
}
.navPagination li a::after {
  position: absolute;
  top: 15px;
  width: 7px;
  height: 7px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.navPagination li a:hover, .navPagination li a:active, .navPagination li a:focus {
  text-decoration: underline;
  opacity: .7;
}
.navPagination .navPrev {
  float: left;
  padding: 0 40px 0 0;
}
.navPagination .navPrev a {
  padding-left: 52px;
}
.navPagination .navPrev a::before {
  left: 0;
}
.navPagination .navPrev a::after {
  left: 17px;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.navPagination .navNext {
  float: right;
  padding: 0 0 0 40px;
  text-align: right;
}
.navPagination .navNext a {
  padding-right: 52px;
}
.navPagination .navNext a::before {
  right: 0;
}
.navPagination .navNext a::after {
  right: 17px;
}
@media only screen and (max-width: 767px) {
  .navPagination li {
    margin: 0 0 20px;
    font-size: 1.2rem;
  }
  .navPagination li a {
    padding-top: 3px;
    min-height: 25px;
  }
  .navPagination li a::before {
    width: 25px;
    height: 25px;
  }
  .navPagination li a::after {
    top: 9px;
  }
  .navPagination .navPrev, .navPagination .navNext {
    padding: 0;
    width: auto;
  }
  .navPagination .navPrev {
    float: none;
  }
  .navPagination .navPrev a {
    padding-left: 36px;
  }
  .navPagination .navPrev a::after {
    left: 11px;
  }
  .navPagination .navNext {
    text-align: left;
  }
  .navPagination .navNext a {
    padding-right: 36px;
  }
  .navPagination .navNext a::after {
    right: 11px;
  }
}

/* ----------------------------------------------------------------
    Grid
----------------------------------------------------------------- */
/* .gridCol[data-col="2"]
----------------------------------------------- */
.grid[data-col='2'] {
  margin-left: -3.77358%;
}
.grid[data-col='2'] > .gridCol {
  margin-left: 3.63636%;
  width: 46.36364%;
}
.grid[data-col='2'] > .gridCol:nth-child(2n+1) {
  clear: both;
}
.content._col2 .grid[data-col='2'] {
  /* サイドナビありのパターン */
  margin-left: -2.5641%;
}
.content._col2 .grid[data-col='2'] > .gridCol {
  margin-left: 2.5%;
  width: 47.5%;
}

/* .gridCol[data-col="3"]
----------------------------------------------- */
.grid[data-col='3'] {
  margin-left: -2.83019%;
}
.grid[data-col='3'] > .gridCol {
  margin-left: 2.75229%;
  width: 30.55046%;
}
.grid[data-col='3'] > .gridCol:nth-child(3n+1) {
  clear: both;
}
.content._col2 .grid[data-col='3'] {
  /* サイドナビありのパターン */
  margin-left: -2.69231%;
}
.content._col2 .grid[data-col='3'] > .gridCol {
  margin-left: 2.62172%;
  width: 30.71161%;
}
.uniGrid._related .grid[data-col='3'] {
  /* 関連リンクのパターン */
  margin-left: -2.47191%;
}
.uniGrid._related .grid[data-col='3'] > .gridCol {
  margin-left: 2.41228%;
  width: 30.92105%;
}

/* .gridCol[data-col="4"]
----------------------------------------------- */
.grid[data-col='4'] {
  margin-left: -3.01887%;
}
.grid[data-col='4'] > .gridCol {
  margin-left: 2.9304%;
  width: 22.0696%;
}
.grid[data-col='4'] > .gridCol:nth-child(4n+1) {
  clear: both;
}
.content._col2 .grid[data-col='4'] {
  /* サイドナビありのパターン */
  margin-left: -2.5641%;
}
.content._col2 .grid[data-col='4'] > .gridCol {
  margin-left: 2.5%;
  width: 22.5%;
}

/* .grid
----------------------------------------------- */
.grid {
  margin-top: -30px;
  margin-bottom: 30px;
}
.grid > .gridCol {
  float: left;
  margin-top: 30px;
}
.grid > .gridCol > :last-child {
  margin-bottom: 0;
}
.grid.linkList {
  margin-top: -17px;
}
.grid.linkList > .gridCol {
  margin-top: 17px;
  margin-bottom: 0;
}
@media only screen and (max-width: 1060px) {
  .grid._tablet[data-col-break='1'] {
    margin: 0 !important;
  }
  .grid._tablet[data-col-break='1'] > .gridCol {
    float: none !important;
    margin-top: 0 !important;
    margin-bottom: 30px;
    margin-left: 0 !important;
    width: auto !important;
  }
}
@media only screen and (max-width: 767px) {
  .grid[data-col-break='1'] {
    margin-top: 0 !important;
    margin-bottom: 22px;
    margin-left: 0 !important;
  }
  .grid[data-col-break='1'] > .gridCol {
    float: none !important;
    margin-top: 0 !important;
    margin-bottom: 22px;
    margin-left: 0 !important;
    width: auto !important;
  }
  .grid[data-col-break='1'] > .gridCol:last-child {
    margin-bottom: 0;
  }
}

/* ----------------------------------------------------------------
    Panels
----------------------------------------------------------------- */
/* .panel
----------------------------------------------- */
.panel {
  margin: 0 0 30px;
  padding: 26px 20px 24px;
  border: 1px solid #d3cec5;
  background: #fff;
}
.panel > :last-child {
  margin-bottom: 0;
}
.panel > .panelHdg {
  margin: -26px -20px 20px;
  padding: 14px 20px 11px;
  background: #f7f7f3;
  color: #4f3b1a;
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .panel {
    margin: 0 0 22px;
    padding: 16px 14px 14px;
  }
  .panel > .panelHdg {
    margin: -16px -14px 12px;
    font-size: 1.4rem;
  }
}

/* .panelVal
----------------------------------------------- */
.panelVal {
  box-sizing: border-box;
  margin: 0 0 30px;
  padding: 0 10px 14px;
  min-width: 246px;
  background: #f6f5f2;
  text-align: center;
}
.panelVal > :last-child {
  margin-bottom: 0;
}
.panelVal .panelList dt {
  margin: 0 -10px 12px;
  padding: 12px 10px 10px;
  background: #92846e;
  color: #fff;
}
.panelVal .panelList dd {
  font-size: 1.4rem;
}
.panelVal .panelList dd strong {
  font-weight: normal;
  font-size: 2.8rem;
}
@media only screen and (max-width: 767px) {
  .panelVal {
    margin: 0 0 22px;
    padding-bottom: 10px;
  }
  .panelVal .panelList dd {
    font-size: 1.2rem;
  }
}

/* .panelPoint
/* 紙がめくれている部分を表現するため若干複雑
----------------------------------------------- */
.panelPoint {
  position: relative;
  overflow: hidden;
  /* 擬似要素で作成したボーダーの余りを隠す */
  margin: 0 0 30px;
  padding: 0 30px 0 0;
}
.panelPoint::before {
  /* 擬似要素でボーダー（右）を作成 */
  position: absolute;
  top: 30px;
  right: 0;
  box-sizing: border-box;
  width: 30px;
  height: 100%;
  border-right: 1px solid #d3cec5;
}
.panelPoint::after {
  /* 擬似要素でボーダー（下）を作成 */
  position: absolute;
  right: 0;
  bottom: 0;
  width: 30px;
  border-bottom: 1px solid #d3cec5;
}
.panelPoint > .panelInner {
  box-sizing: border-box;
  padding: 18px 0 16px 20px;
  border: 1px solid #d3cec5;
  border-right: 0;
}
.panelPoint > .panelInner::after {
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  /* 紙がめくれている部分を表現 */
  height: 0;
  border-right: 30px solid transparent;
  border-bottom: 30px solid #e2ddd4;
}
.panelPoint > .panelInner > :last-child {
  margin-bottom: 0;
}
.panelPoint > .panelInner > .panelHdg {
  color: #4f3b1a;
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .panelPoint {
    margin: 0 0 22px;
    padding: 0 15px 0 0;
  }
  .panelPoint::before {
    /* 擬似要素のボーダー（右）のサイズ */
    top: 15px;
  }
  .panelPoint::after {
    /* 擬似要素でボーダー（下）を作成 */
    width: 15px;
  }
  .panelPoint > .panelInner {
    padding: 17px 0 15px 15px;
  }
  .panelPoint > .panelInner::after {
    /* 紙がめくれている部分を表現 */
    border-right-width: 15px;
    border-bottom-width: 15px;
  }
  .panelPoint > .panelInner > .panelHdg {
    font-size: 1.4rem;
  }
}

/* .panelDesc
----------------------------------------------- */
.panelDesc {
  margin: 0 0 30px;
  padding: 20px;
  background: #f0eee9;
}
.panelDesc > :last-child {
  margin-bottom: 0;
}
.panelDesc .panelList dt {
  margin: 0 0 4px;
  color: #000;
  font-weight: bold;
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .panelDesc {
    margin: 0 0 22px;
  }
  .panelDesc .panelList {
    margin: 0 0 9px;
  }
  .panelDesc .panelList dt {
    margin: 0 0 7px;
    font-size: 1.4rem;
  }
}

/* .panelPlugin
----------------------------------------------- */
.panelPlugin {
  display: table;
  box-sizing: border-box;
  margin: 0 0 30px;
  padding: 20px;
  width: 100%;
  background: #f8f7f4;
}
.panelPlugin .panelCol, .panelPlugin .panelCol02 {
  display: table-cell;
  vertical-align: middle;
}
.panelPlugin .panelCol {
  font-size: 1.4rem;
}
.panelPlugin .panelCol > :last-child {
  margin-bottom: 0;
}
.panelPlugin .panelCol02 {
  padding-left: 20px;
}
.panelPlugin .panelCol02 img {
  max-width: none;
}
.panelPlugin .panelCol02 a {
  transition: opacity .5s cubic-bezier(.23, 1, .32, 1);
}
.panelPlugin .panelCol02 a:hover, .panelPlugin .panelCol02 a:active, .panelPlugin .panelCol02 a:focus {
  opacity: .7;
}
@media only screen and (max-width: 767px) {
  .panelPlugin {
    display: block;
    padding: 15px;
  }
  .panelPlugin .panelCol, .panelPlugin .panelCol02 {
    display: block;
  }
  .panelPlugin .panelCol {
    margin: 0 0 20px;
  }
  .panelPlugin .panelCol02 {
    padding-left: 0;
    text-align: center;
  }
  .panelPlugin .panelCol02 img {
    max-width: 100%;
  }
}

/* .panelTel
----------------------------------------------- */
.panelTel {
  margin: 0 0 5px;
  color: #4f3b1a;
}
.panelTel > .panelCol {
  margin: 0 0 5px;
  font-size: 1.8rem;
  line-height: 1;
}
.panelTel > .panelCol img {
  margin: -15px 8px 0 0;
  vertical-align: middle;
}
.panelTel > .panelCol b {
  font-weight: normal;
  font-size: 3.5rem;
}
.panelTel > .panelCol02 {
  margin: 0;
  letter-spacing: -.4em;
  font-size: 1.4rem;
}
.panelTel > .panelCol02 dt, .panelTel > .panelCol02 dd {
  display: inline-block;
  letter-spacing: normal;
}
.panelTel > .panelCol02 dt {
  margin: 0 6px 0 0;
}
.panelTel._col2 {
  display: table;
  margin: 0 0 16px;
  width: 100%;
}
.panelTel._col2 > .panelCol, .panelTel._col2 > .panelCol02 {
  display: table-cell;
  vertical-align: middle;
}
.panelTel._col2 > .panelCol {
  white-space: nowrap;
}
.panelTel._col2 > .panelCol02 {
  padding: 0 0 0 55px;
  letter-spacing: normal;
}
.panelTel._col2 > .panelCol02 dt, .panelTel._col2 > .panelCol02 dd {
  display: block;
}
.panelTel._col2 > .panelCol02 dt {
  margin: 0 0 3px;
}
.panelTel._contact > .panelCol, .panelTel._contact > .panelCol02 {
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .panelTel {
    margin: 0 0 7px !important;
  }
  .panelTel > .panelCol {
    margin: 0 0 9px;
    font-size: 1.5rem;
  }
  .panelTel > .panelCol img {
    margin-right: 4px;
  }
  .panelTel > .panelCol b {
    font-size: 3rem;
  }
  .panelTel > .panelCol02 {
    font-size: 1.2rem;
  }
  .panelTel > .panelCol02 dt {
    margin: 0;
  }
  .panelTel._col2 {
    display: block;
  }
  .panelTel._col2 > .panelCol, .panelTel._col2 > .panelCol02 {
    display: block;
  }
  .panelTel._col2 > .panelCol {
    white-space: normal;
  }
  .panelTel._col2 > .panelCol02 {
    padding: 0;
  }
  .panelTel._contact > .panelCol, .panelTel._contact > .panelCol02 {
    width: auto;
  }
}

/* .panelContact
----------------------------------------------- */
.panelContact {
  margin: 0 0 30px;
  padding: 23px 20px;
  background: #f7f7f3;
}
.panelContact > :last-child {
  margin-bottom: 0 !important;
}
.panelContact > .panelHdg {
  margin: 0 0 19px;
  padding: 0 0 4px;
  border-bottom: 1px solid #d3cdc5;
  color: #4f3b1a;
  font-size: 1.8rem;
}
.panelContact > .panelHdg02 {
  margin: 0 0 10px;
  padding: 3px 0 0 13px;
  border-left: 2px solid #c7000d;
  color: #4f3b1a;
  font-size: 1.8rem;
  line-height: 1.2;
}
.panelContact > .panelHdg03 {
  margin: 0 0 9px;
  color: #4f3b1a;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .panelContact {
    padding: 18px 15px 20px;
  }
  .panelContact > .panelHdg {
    font-size: 1.5rem;
  }
  .panelContact > .panelHdg02 {
    font-size: 1.5rem;
  }
  .panelContact > .panelHdg03 {
    font-size: 1.4rem;
  }
}

/* .panelPresident
----------------------------------------------- */
.panelPresident {
  position: relative;
  margin: 0 0 30px;
  min-height: 335px;
  background: #fbfdff;
}
.panelPresident .panelImg {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  text-align: right;
}
.panelPresident .panelInner {
  position: relative;
  z-index: 2;
  display: table-cell;
  box-sizing: border-box;
  padding: 30px 300px 40px 30px;
  width: 780px;
  height: 335px;
  vertical-align: bottom;
}
.panelPresident .panelInner > :last-child {
  margin-bottom: 0;
}
.panelPresident .panelTxt {
  color: #444;
  font-size: 2.2rem;
  line-height: 1.4;
}
.panelPresident .panelTxt02 {
  color: #444;
  font-size: 1.6rem;
}
.panelPresident a {
  color: #444;
  text-decoration: none;
}
.panelPresident a:hover .panelImg img, .panelPresident a:active .panelImg img, .panelPresident a:focus .panelImg img {
  opacity: .7;
}
@media only screen and (max-width: 1060px) {
  .panelPresident {
    min-height: 0;
  }
  .panelPresident .panelImg {
    position: relative;
  }
  .panelPresident .panelInner {
    display: block;
    padding: 25px 30px;
    width: auto;
    height: auto;
  }
}
@media only screen and (max-width: 767px) {
  .panelPresident .panelInner {
    padding: 12px 15px 10px;
  }
  .panelPresident .panelTxt {
    margin: 0 0 15px;
    font-size: 1.4rem;
  }
  .panelPresident .panelTxt02 {
    margin: 0 0 15px;
    font-size: 1.2rem;
  }
}

/* .panelStock
----------------------------------------------- */
.panelStock {
  margin: 0 0 30px;
  padding: 0 14px 14px;
  border: 1px solid #e2ddd4;
  border-top: 0;
  /* 上ボーダーは非表示 */
  background: #fff;
}
.panelStock > :last-child {
  margin-bottom: 0;
}
.panelStock > .panelHdg {
  margin: 0 -15px 20px;
  padding: 10px 10px 9px;
  background: #92846e;
  color: #fff;
  text-align: center;
  font-weight: normal;
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .contentPrimary .panelStock {
    margin-right: 15px;
    margin-left: 15px;
  }
}

/* .panelStrategy
----------------------------------------------- */
.panelStrategy {
  margin: 0 0 30px;
  padding: 20px;
  color: #fff;
}
.panelStrategy > :last-child {
  margin-bottom: 0;
}
.panelStrategy > .panelHdg {
  margin: 0 0 10px 0;
  color: #fff;
  font-weight: normal;
  font-size: 1.6rem;
}
.panelStrategy .panelHdg02 {
  margin: 0 0 17px 0;
  padding: 15px 10px 13px;
  background: #fff;
  color: #444;
  text-align: center;
  font-size: 1.8rem;
}
.panelStrategy .panelHdg02._img {
  padding: 18px 10px;
}
.panelStrategy .panelTxt {
  font-weight: bold;
}
.panelStrategy._ds {
  background: #d189a9;
}
.panelStrategy._os {
  background: #35719b;
}
.panelStrategy._asset {
  background: #9a789b;
}
.media + .panelStrategy {
  margin-top: -30px;
}
@media only screen and (max-width: 767px) {
  .panelStrategy > .panelHdg {
    font-size: 1.4rem;
  }
  .panelStrategy .panelHdg02 {
    font-size: 1.6rem;
  }
  .panelStrategy .panelHdg02._img {
    padding: 15px 10px;
  }
}

/* ----------------------------------------------------------------
    Media
----------------------------------------------------------------- */
/* .media
----------------------------------------------- */
.media {
  margin: 0 0 30px;
  text-align: center;
}
.media > .mediaItem {
  margin: 0;
}
.media > .mediaItem a {
  display: block;
  background: #fff;
}
.media > .mediaItem a img {
  transition: opacity .7s cubic-bezier(.23, 1, .32, 1);
}
.media > .mediaItem a:hover img, .media > .mediaItem a:active img, .media > .mediaItem a:focus img {
  opacity: .6;
}

/* .mediaItem
----------------------------------------------- */
.mediaItem._iframe > .mediaItemInner {
  position: relative;
  overflow: hidden;
  height: 0;
}
.mediaItem._iframe > .mediaItemInner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.mediaItem._iframe02 {
  margin: 0 auto;
  max-width: 640px;
}
.mediaItem._iframe02 > .mediaItemInner {
  position: relative;
  overflow: hidden;
  padding: 0 0 56.25%;
}
.mediaItem._iframe02 > .mediaItemInner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* .mediaCaption
----------------------------------------------- */
.mediaCaption {
  display: block;
  margin: 7px 0 0;
  text-align: center;
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .mediaCaption {
    font-size: 1.2rem;
  }
}

/* .mediaLyt
----------------------------------------------- */
.mediaLyt {
  overflow: hidden;
  margin: 0 0 30px;
}
.mediaLyt > .mediaCol {
  overflow: hidden;
}
.mediaLyt > .mediaCol > :first-child, .mediaLyt > .mediaCol > :first-child > :first-child {
  margin-top: 0;
}
.mediaLyt > .mediaCol > :last-child {
  margin-bottom: 0;
}
.mediaLyt._left > .mediaItem {
  float: left;
  margin: 0 20px 0 0;
}
.mediaLyt._right > .mediaItem {
  float: right;
  margin: 0 0 0 20px;
}
@media only screen and (max-width: 910px) {
  .mediaLyt > .mediaItem {
    max-width: 50%;
  }
}
@media only screen and (max-width: 767px) {
  .mediaLyt {
    margin: 0 0 22px;
  }
  .mediaLyt:not(._keep) {
    /* _keep が付与されている場合以外はカラム落ちする */
  }
  .mediaLyt:not(._keep) > .mediaItem {
    max-width: 100%;
  }
  .mediaLyt:not(._keep)._left > .mediaItem, .mediaLyt:not(._keep)._right > .mediaItem {
    float: none;
    margin-bottom: 22px;
    text-align: center;
  }
  .mediaLyt:not(._keep)._left > .mediaItem {
    margin-right: 0;
  }
  .mediaLyt:not(._keep)._right > .mediaItem {
    margin-left: 0;
  }
}

/* ----------------------------------------------------------------
    Layout
----------------------------------------------------------------- */
/* .lytOrder
----------------------------------------------- */
.lytOrder {
  position: relative;
  padding: 65px 0 0 0;
}
.lytOrder::before {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -49px;
  width: 0;
  height: 0;
  border-top: 35px solid #92846e;
  border-right: 49px solid transparent;
  border-left: 49px solid transparent;
}
@media only screen and (max-width: 767px) {
  .lytOrder {
    padding-top: 55px;
  }
}

/* ----------------------------------------------------------------
    Function Toggle (JavaScript)
----------------------------------------------------------------- */
/* .fnToggle
----------------------------------------------- */
.fnToggle .fnToggleContent {
  display: none;
  opacity: 0;
  transition: all .6s cubic-bezier(.23, 1, .32, 1) .2s;
  -webkit-transform: translateY(-20px);
  transform: translateY(-20px);
}
.fnToggle .fnToggleContent[aria-hidden='false'] {
  display: block;
}
.fnToggle .fnToggleContent.isShow {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}
.fnToggle.isCollapse .fnToggleContent {
  transition: all .3s cubic-bezier(.23, 1, .32, 1);
}

/* .fnToggle02
----------------------------------------------- */
@media only screen and (max-width: 767px) {
  .fnToggle02 .fnToggleContent {
    display: none;
    opacity: 0;
    transition: all .6s cubic-bezier(.23, 1, .32, 1) .2s;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
  .fnToggle02 .fnToggleContent[aria-hidden='false'] {
    display: block;
  }
  .fnToggle02 .fnToggleContent.isShow {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  .fnToggle02.isCollapse .fnToggleContent {
    transition: all .3s cubic-bezier(.23, 1, .32, 1);
  }
}

/* .fnToggleMenu
----------------------------------------------- */
@media only screen and (max-width: 767px) {
  .fnToggleMenu .fnToggleContent {
    display: none;
    opacity: 0;
    transition: all .6s cubic-bezier(.23, 1, .32, 1) .2s;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
  .fnToggleMenu .fnToggleContent[aria-hidden='false'] {
    display: block;
  }
  .fnToggleMenu .fnToggleContent.isShow {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  .fnToggleMenu.isCollapse .fnToggleContent {
    transition: all .3s cubic-bezier(.23, 1, .32, 1);
  }
}

/* JavaScript Off
----------------------------------------------- */
.noJs .fnToggleContent {
  display: block;
}
.noJs .fnToggle .fnToggleContent, .noJs .fnToggle02 .fnToggleContent {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}
@media only screen and (max-width: 767px) {
  .noJs .fnToggleMenu .fnToggleContent {
    display: none;
  }
}

/* ----------------------------------------------------------------
    Function Modal (JavaScript)
----------------------------------------------------------------- */
/* .fnModalOverlay
----------------------------------------------- */
.fnModalOverlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
  transition: opacity .5s cubic-bezier(.23, 1, .32, 1);

  will-change: transform;
}
.fnModalOverlay.isOverlayRender {
  opacity: 0;
}
.fnModalOverlay.isOverlayShow {
  opacity: .6;
}
.fnModalOverlay.isOverlayHide {
  transition-delay: .2s;
}

/* .fnModalContent
----------------------------------------------- */
.fnModalContent {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 500;
  display: none;
  -webkit-overflow-scrolling: touch;
  opacity: 0;
  transition: all .5s cubic-bezier(.23, 1, .32, 1) .2s;

  will-change: transform;
}
.fnModalContent.isModalRender {
  display: block;
  overflow-x: hidden;
  overflow-y: auto;
}
.fnModalContent.isModalShow {
  opacity: 1;
}
.fnModalContent.isModalHide {
  transition-delay: 0s;
}
@media only screen and (max-width: 1060px) {
  .fnModalContent.isModalRender {
    padding: 0 15px;
  }
}

/* .fnModalInner
----------------------------------------------- */
.fnModalInner {
  position: relative;
  box-sizing: border-box;
  max-width: 1060px;
  transition: all .5s cubic-bezier(.23, 1, .32, 1) .2s;
  -webkit-transform: translateY(-30px);
  transform: translateY(-30px);

  will-change: transform;
}
.isModalOpen .fnModalInner {
  overflow-y: auto;
}
.isModalRender .fnModalInner {
  margin: 95px auto;
}
.isModalShow .fnModalInner {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}
.isModalHide .fnModalInner {
  transition-delay: 0s;
}
@media only screen and (max-width: 767px) {
  .fnModalInner {
    width: auto;
  }
  .isModalRender .fnModalInner {
    margin: 15px auto;
  }
}

/* .isModalOpen
----------------------------------------------- */
.isModalOpen, .isModalOpen body {
  overflow: hidden;
}

/* .isModalPage
----------------------------------------------- */
.isModalPage {
  margin: 0 auto;
  max-width: 1060px;
}

/* ----------------------------------------------------------------
    Function Tab (JavaScript)
----------------------------------------------------------------- */
/* .fnTab
----------------------------------------------- */
.fnTab .fnTabItem {
  opacity: 0;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: translateY(7px);
  transform: translateY(7px);
}
.fnTab .fnTabItem[aria-hidden='true'] {
  display: none;
}
.fnTab .fnTabItem[aria-hidden='false'] {
  display: block;
}
.fnTab .fnTabItem.isShow {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

/* .fnTabList
----------------------------------------------- */
.fnTabList.fnToggleList[aria-hidden='true'] {
  display: none;
}

/* JavaScript Off
----------------------------------------------- */
.noJs .fnTabItem {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

/* ----------------------------------------------------------------
    Function Form (JavaScript)
----------------------------------------------------------------- */
/* .fnFormItem
----------------------------------------------- */
.fnFormItem[aria-hidden='true'] {
  display: none;
}

/* ----------------------------------------------------------------
    Function Pulldown Switcher (JavaScript)
----------------------------------------------------------------- */
/* .fnPulldownContent
----------------------------------------------- */
.fnPulldownContent {
  opacity: 0;
  transition: opacity .4s cubic-bezier(.23, 1, .32, 1), -webkit-transform .4s cubic-bezier(.23, 1, .32, 1);
  transition: opacity .4s cubic-bezier(.23, 1, .32, 1), transform .4s cubic-bezier(.23, 1, .32, 1);
  transition: opacity .4s cubic-bezier(.23, 1, .32, 1), transform .4s cubic-bezier(.23, 1, .32, 1), -webkit-transform .4s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: translateY(-7px);
  transform: translateY(-7px);
}
.fnPulldownContent.isShow {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

/* ----------------------------------------------------------------
    Function None (JavaScript)
----------------------------------------------------------------- */
/* Transition Off
----------------------------------------------- */
.noTrans * {
  transition: none !important;
}

/* ----------------------------------------------------------------
    Toggle
----------------------------------------------------------------- */
/* .toggle
----------------------------------------------- */
.toggle {
  margin: 40px 0 30px;
}
.toggle > .toggleHdg > .toggleHdgInner {
  position: relative;
  box-sizing: border-box;
  padding: 0 58px 12px 0;
  width: 100%;
  border: 0;
  /* 下線以外のボーダーは非表示 */
  border-bottom: 1px solid #6f6351;
  background: none;
  color: #4f3b1a;
  text-align: left;
  font-weight: normal;
  font-size: 3rem;
  line-height: 1.3;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.toggle > .toggleHdg > .toggleHdgInner::before, .toggle > .toggleHdg > .toggleHdgInner::after {
  position: absolute;
  z-index: 1;
  background: #c7000d;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.toggle > .toggleHdg > .toggleHdgInner::before {
  top: 13px;
  right: 28px;
  width: 2px;
  height: 10px;
}
.toggle > .toggleHdg > .toggleHdgInner::after {
  top: 17px;
  right: 24px;
  width: 10px;
  height: 2px;
}
.toggle > .toggleHdg > .toggleHdgInner span {
  position: absolute;
  top: 9px;
  right: 20px;
  z-index: 0;
  overflow: hidden;
  width: 18px;
  height: 18px;
  border-radius: 2px;
  background: #e1ddd3;
  color: transparent;
}
.toggle > .toggleHdg > .toggleHdgInner:hover, .toggle > .toggleHdg > .toggleHdgInner:active, .toggle > .toggleHdg > .toggleHdgInner:focus {
  opacity: .7;
}
.toggle > .toggleContent > .toggleInner {
  margin: 25px 0 0;
}
.toggle > .toggleContent > .toggleInner > :last-child {
  margin-bottom: 0;
}
.toggle:not(.isCollapse) > .toggleHdg > .toggleHdgInner[aria-expanded='true']::after, .toggle:not(.isCollapse) > .toggleHdg > .toggleHdgInner[aria-expanded='true']::before {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.toggle:not(.isCollapse) > .toggleHdg > .toggleHdgInner[aria-expanded='true']::after {
  opacity: 0;
}
@media only screen and (max-width: 767px) {
  .toggle {
    margin: 30px 0 22px;
  }
  .toggle > .toggleHdg > .toggleHdgInner {
    padding: 0 38px 3px 0;
    font-size: 2.2rem;
  }
  .toggle > .toggleHdg > .toggleHdgInner::before {
    top: 8px;
    right: 18px;
  }
  .toggle > .toggleHdg > .toggleHdgInner::after {
    top: 12px;
    right: 14px;
  }
  .toggle > .toggleHdg > .toggleHdgInner span {
    top: 4px;
    right: 10px;
  }
  .toggle > .toggleContent > .toggleInner {
    margin-top: 12px;
  }
}

/* JavaScript Off
----------------------------------------------- */
.noJs .toggle > .toggleHdg > .toggleHdgInner {
  padding-right: 0;
}
.noJs .toggle > .toggleHdg > .toggleHdgInner::before, .noJs .toggle > .toggleHdg > .toggleHdgInner::after {
  display: none;
}

/* .toggleFaq
----------------------------------------------- */
.toggleFaq {
  margin: 0 0 30px;
  padding: 13px 19px 0;
  border: 1px solid #c3baae;
  background: #fff;
}
.toggleFaq > .toggleHdg {
  position: relative;
  z-index: 1;
  margin: -13px -19px 0;
}
.toggleFaq > .toggleHdg > .toggleHdgInner {
  position: relative;
  display: block;
  box-sizing: border-box;
  padding: 13px 56px 12px 51px;
  width: 100%;
  border: 0;
  background: #fff;
  color: #4f3b1a;
  text-align: left;
  font-size: 1.6rem;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);

  will-change: transform;
}
.toggleFaq > .toggleHdg > .toggleHdgInner::before, .toggleFaq > .toggleHdg > .toggleHdgInner::after {
  position: absolute;
  z-index: 3;
  background: #c7000d;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);

  will-change: transform;
}
.toggleFaq > .toggleHdg > .toggleHdgInner::before {
  top: 21px;
  right: 27px;
  width: 2px;
  height: 10px;
}
.toggleFaq > .toggleHdg > .toggleHdgInner::after {
  top: 25px;
  right: 23px;
  width: 10px;
  height: 2px;
}
.toggleFaq > .toggleHdg > .toggleHdgInner:hover, .toggleFaq > .toggleHdg > .toggleHdgInner:active, .toggleFaq > .toggleHdg > .toggleHdgInner:focus {
  opacity: .7;
}
.toggleFaq > .toggleHdg .toggleMark {
  position: absolute;
  top: 11px;
  left: 25px;
  color: #c7000d;
  font-weight: normal;
  font-size: 1.8rem;
}
.toggleFaq > .toggleHdg span {
  position: absolute;
  top: 17px;
  right: 19px;
  z-index: 2;
  overflow: hidden;
  width: 18px;
  height: 18px;
  border-radius: 2px;
  background: #e1ddd3;
  color: transparent;
}
.toggleFaq > .toggleContent > .toggleInner {
  position: relative;
  padding: 11px 0 19px 2em;
  border-top: 1px solid #e1ddd3;
}
.toggleFaq > .toggleContent > .toggleInner > :last-child {
  margin-bottom: 0;
}
.toggleFaq > .toggleContent > .toggleInner > .toggleMark {
  position: absolute;
  top: 7px;
  left: 6px;
  color: #c7000d;
  font-weight: normal;
  font-size: 1.8rem;
}
.toggleFaq:not(.isCollapse) > .toggleHdg > .toggleHdgInner[aria-expanded='true']::after, .toggleFaq:not(.isCollapse) > .toggleHdg > .toggleHdgInner[aria-expanded='true']::before {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.toggleFaq:not(.isCollapse) > .toggleHdg > .toggleHdgInner[aria-expanded='true']::after {
  opacity: 0;
}
.toggleFaq + .toggleFaq {
  margin-top: -30px;
  border-top: 0;
}
@media only screen and (max-width: 767px) {
  .toggleFaq {
    margin: 0 0 22px;
    padding: 19px 14px 0;
  }
  .toggleFaq > .toggleHdg {
    margin: -19px -14px 0;
  }
  .toggleFaq > .toggleHdg > .toggleHdgInner {
    padding: 19px 48px 18px 32px;
    font-size: 1.4rem;
  }
  .toggleFaq > .toggleHdg > .toggleHdgInner::before {
    top: 24px;
    right: 22px;
  }
  .toggleFaq > .toggleHdg > .toggleHdgInner::after {
    top: 28px;
    right: 18px;
  }
  .toggleFaq > .toggleHdg .toggleMark {
    top: 18px;
    left: 14px;
    font-size: 1.5rem;
  }
  .toggleFaq > .toggleHdg span {
    top: 20px;
    right: 14px;
  }
  .toggleFaq > .toggleContent > .toggleInner {
    padding: 11px 0 19px 1.2em;
  }
  .toggleFaq > .toggleContent > .toggleInner > .toggleMark {
    top: 12px;
    left: 0;
    font-size: 1.5rem;
  }
  .toggleFaq + .toggleFaq {
    margin-top: -22px;
  }
}

/* JavaScript Off
----------------------------------------------- */
.noJs .toggleFaq > .toggleHdg > .toggleHdgInner {
  padding-right: 19px;
}
.noJs .toggleFaq > .toggleHdg > .toggleHdgInner::before, .noJs .toggleFaq > .toggleHdg > .toggleHdgInner::after {
  display: none;
}

/* .tab._toToggle（タブトグル）
----------------------------------------------- */
@media only screen and (max-width: 767px) {
  .tab._toToggle .toggleItem {
    margin: 18px 0 0;
    opacity: 1;
  }
  .tab._toToggle .toggleItem .toggleHdg {
    position: relative;
    color: #4f3b1a;
    text-align: center;
    font-weight: normal;
    font-size: 1.8rem;
    line-height: 1.3;
  }
  .tab._toToggle .toggleItem .toggleHdg button {
    box-sizing: border-box;
    padding: 0 38px 15px;
    width: 100%;
    border: 0;
    /* 下線以外のボーダーは非表示 */
    border-bottom: 2px solid #e2ddd4;
    background: none;
    color: inherit;
    transition: all .5s cubic-bezier(.23, 1, .32, 1);
  }
  .tab._toToggle .toggleItem .toggleHdg button::before, .tab._toToggle .toggleItem .toggleHdg button::after {
    position: absolute;
    z-index: 1;
    background: #c7000d;
    transition: all .5s cubic-bezier(.23, 1, .32, 1);
  }
  .tab._toToggle .toggleItem .toggleHdg button::before {
    top: 3px;
    right: 18px;
    width: 2px;
    height: 10px;
  }
  .tab._toToggle .toggleItem .toggleHdg button::after {
    top: 7px;
    right: 14px;
    width: 10px;
    height: 2px;
  }
  .tab._toToggle .toggleItem .toggleHdg button:hover, .tab._toToggle .toggleItem .toggleHdg button:active, .tab._toToggle .toggleItem .toggleHdg button:focus {
    opacity: .7;
  }
  .tab._toToggle .toggleItem .toggleHdg .toggleHdgInner {
    position: absolute;
    top: -1px;
    right: 10px;
    z-index: 0;
    overflow: hidden;
    width: 18px;
    height: 18px;
    border-radius: 2px;
    background: #e1ddd3;
    color: transparent;
  }
  .tab._toToggle .toggleItem .toggleContent {
    padding: 25px 0 0;
  }
  .tab._toToggle .toggleItem:not(.isCollapse) .toggleHdg button[aria-expanded='true'] {
    border-bottom-color: #c7000d;
    color: #c7000d;
  }
  .tab._toToggle .toggleItem:not(.isCollapse) .toggleHdg button[aria-expanded='true']::after, .tab._toToggle .toggleItem:not(.isCollapse) .toggleHdg button[aria-expanded='true']::before {
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
  }
  .tab._toToggle .toggleItem:not(.isCollapse) .toggleHdg button[aria-expanded='true']::after {
    opacity: 0;
  }
}

/* ----------------------------------------------------------------
    Carousel
----------------------------------------------------------------- */
/* .carouselFade
----------------------------------------------- */
.carouselFade {
  position: relative;
  text-align: center;
}
.carouselFade .carouselItem {
  position: relative;
  margin: 0 auto;
  max-width: 1920px;
  height: 536px;
}
.carouselFade .carouselItem li {
  position: relative;
  display: none;
  float: none;
  width: 100%;
  height: 100%;
  opacity: 0;
}
.carouselFade .carouselItem img {
  position: absolute;
  top: 0;
  left: 50%;
  max-width: none;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.carouselFade .carouselItem .isHidden {
  z-index: 1;
  display: block;
  opacity: 0;
  transition: all 2.5s ease-out;
}
.carouselFade .carouselItem .isCurrent {
  z-index: 2;
  display: block;
  opacity: 1;
}
.carouselFade .carouselItem .isShow {
  position: absolute;
  top: 0;
  z-index: 3;
  display: block;
  transition: all 2.5s ease-out;
}
.carouselFade .carouselControl {
  position: absolute;
  right: 0;
  bottom: 56px;
  left: 0;
  z-index: 10;
  margin: 0 auto;
  max-width: 1060px;
  width: 100%;
}
.carouselFade .carouselControl .carouselNext, .carouselFade .carouselControl .carouselPrev {
  position: absolute;
  top: 0;
  z-index: 10;
  margin: -236px 0 0 0;
}
.carouselFade .carouselControl .carouselNext button, .carouselFade .carouselControl .carouselPrev button {
  overflow: hidden;
  padding: 0;
  width: 28px;
  height: 53px;
  border: 0;
  background: none;
  opacity: 1;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.carouselFade .carouselControl .carouselNext button::before, .carouselFade .carouselControl .carouselPrev button::before {
  position: absolute;
}
.carouselFade .carouselControl .carouselNext button span, .carouselFade .carouselControl .carouselPrev button span {
  position: absolute;
  top: 0;
  left: 0;
  color: transparent;
}
.carouselFade .carouselControl .carouselNext button:hover, .carouselFade .carouselControl .carouselNext button:active, .carouselFade .carouselControl .carouselNext button:focus, .carouselFade .carouselControl .carouselPrev button:hover, .carouselFade .carouselControl .carouselPrev button:active, .carouselFade .carouselControl .carouselPrev button:focus {
  opacity: .8;
}
.carouselFade .carouselControl .carouselNext {
  right: 0;
}
.carouselFade .carouselControl .carouselNext button::before {
  top: 7px;
  left: -20px;
  width: 38px;
  height: 38px;
  border: 1px solid #e1ddd3;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.carouselFade .carouselControl .carouselNext button:hover, .carouselFade .carouselControl .carouselNext button:active, .carouselFade .carouselControl .carouselNext button:focus {
  -webkit-transform: translateX(5px);
  transform: translateX(5px);
}
.carouselFade .carouselControl .carouselPrev {
  left: 0;
}
.carouselFade .carouselControl .carouselPrev button::before {
  top: 7px;
  left: 9px;
  width: 38px;
  height: 38px;
  border: 1px solid #e1ddd3;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.carouselFade .carouselControl .carouselPrev button:hover, .carouselFade .carouselControl .carouselPrev button:active, .carouselFade .carouselControl .carouselPrev button:focus {
  -webkit-transform: translateX(-5px);
  transform: translateX(-5px);
}
.carouselFade .carouselControl img {
  vertical-align: top;
}
.carouselFade .carouselIndicator {
  position: relative;
  z-index: 10;
  display: inline-block;
  margin: 0;
  vertical-align: middle;
}
.carouselFade .carouselPlayer {
  z-index: 10;
  display: inline-block;
  margin: 0 0 0 42px;
  vertical-align: middle;
}
@media only screen and (max-width: 1060px) {
  .carouselFade .carouselControl .carouselNext {
    right: 15px;
  }
  .carouselFade .carouselControl .carouselPrev {
    left: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .carouselFade .carouselItem {
    max-width: none;
    height: auto;
  }
  .carouselFade .carouselItem img {
    position: static;
    width: 100%;
    -webkit-transform: none;
    transform: none;
  }
  .carouselFade .carouselControl {
    bottom: 26px;
  }
  .carouselFade .carouselControl .carouselNext, .carouselFade .carouselControl .carouselPrev {
    display: none;
  }
  .carouselFade .carouselPlayer {
    margin-left: 38px;
  }
}

/* .carouselFade02
----------------------------------------------- */
.carouselFade02 {
  position: relative;
  text-align: center;
}
.carouselFade02 .carouselItem {
  position: relative;
  margin: 0 auto;
  max-width: 1920px;
  height: 412px;
}
.carouselFade02 .carouselItem li {
  position: relative;
  display: none;
  float: none;
  width: 100%;
  height: 100%;
  opacity: 0;
}
.carouselFade02 .carouselItem img {
  position: absolute;
  top: 0;
  left: 50%;
  max-width: none;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.carouselFade02 .carouselItem .isHidden {
  z-index: 1;
  display: block;
  opacity: 0;
  transition: all 2.5s ease-out;
}
.carouselFade02 .carouselItem .isCurrent {
  z-index: 2;
  display: block;
  opacity: 1;
}
.carouselFade02 .carouselItem .isShow {
  position: absolute;
  top: 0;
  z-index: 3;
  display: block;
  transition: all 2.5s ease-out;
}
.carouselFade02 .carouselControl {
  position: absolute;
  right: 0;
  bottom: 20px;
  left: 0;
  z-index: 10;
  margin: 0 auto;
  max-width: 1060px;
  width: 100%;
}
.carouselFade02 .carouselControl .carouselNext, .carouselFade02 .carouselControl .carouselPrev {
  position: absolute;
  top: 0;
  z-index: 10;
  margin: -186px 0 0 0;
}
.carouselFade02 .carouselControl .carouselNext button, .carouselFade02 .carouselControl .carouselPrev button {
  overflow: hidden;
  padding: 0;
  width: 28px;
  height: 53px;
  border: 0;
  background: none;
  opacity: 1;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.carouselFade02 .carouselControl .carouselNext button::before, .carouselFade02 .carouselControl .carouselPrev button::before {
  position: absolute;
}
.carouselFade02 .carouselControl .carouselNext button span, .carouselFade02 .carouselControl .carouselPrev button span {
  position: absolute;
  top: 0;
  left: 0;
  color: transparent;
}
.carouselFade02 .carouselControl .carouselNext button:hover, .carouselFade02 .carouselControl .carouselNext button:active, .carouselFade02 .carouselControl .carouselNext button:focus, .carouselFade02 .carouselControl .carouselPrev button:hover, .carouselFade02 .carouselControl .carouselPrev button:active, .carouselFade02 .carouselControl .carouselPrev button:focus {
  opacity: .8;
}
.carouselFade02 .carouselControl .carouselNext {
  right: 0;
}
.carouselFade02 .carouselControl .carouselNext button::before {
  top: 7px;
  left: -20px;
  width: 38px;
  height: 38px;
  border: 1px solid #e1ddd3;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.carouselFade02 .carouselControl .carouselNext button:hover, .carouselFade02 .carouselControl .carouselNext button:active, .carouselFade02 .carouselControl .carouselNext button:focus {
  -webkit-transform: translateX(5px);
  transform: translateX(5px);
}
.carouselFade02 .carouselControl .carouselPrev {
  left: 0;
}
.carouselFade02 .carouselControl .carouselPrev button::before {
  top: 7px;
  left: 9px;
  width: 38px;
  height: 38px;
  border: 1px solid #e1ddd3;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.carouselFade02 .carouselControl .carouselPrev button:hover, .carouselFade02 .carouselControl .carouselPrev button:active, .carouselFade02 .carouselControl .carouselPrev button:focus {
  -webkit-transform: translateX(-5px);
  transform: translateX(-5px);
}
.carouselFade02 .carouselControl img {
  vertical-align: top;
}
.carouselFade02 .carouselIndicator {
  position: relative;
  z-index: 10;
  display: inline-block;
  margin: 0;
  vertical-align: middle;
}
.carouselFade02 .carouselPlayer {
  z-index: 10;
  display: inline-block;
  margin: 0 0 0 42px;
  vertical-align: middle;
}
@media only screen and (max-width: 1060px) {
  .carouselFade02 .carouselControl .carouselNext {
    right: 15px;
  }
  .carouselFade02 .carouselControl .carouselPrev {
    left: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .carouselFade02 .carouselItem {
    max-width: none;
    height: auto;
  }
  .carouselFade02 .carouselItem img {
    position: static;
    width: 100%;
    -webkit-transform: none;
    transform: none;
  }
  .carouselFade02 .carouselControl {
    bottom: 5px;
  }
  .carouselFade02 .carouselControl .carouselNext, .carouselFade02 .carouselControl .carouselPrev {
    display: none;
  }
  .carouselFade02 .carouselPlayer {
    margin-left: 38px;
  }
}

/* .carouselFade03
----------------------------------------------- */
.carouselFade03 {
  position: relative;
  text-align: center;
}
.carouselFade03 .carouselItem {
  position: relative;
  margin: 0 auto;
  max-width: 780px;
  height: 335px;
}
.carouselFade03 .carouselItem li {
  position: relative;
  display: none;
  float: none;
  width: 100%;
  height: 100%;
  opacity: 0;
}
.carouselFade03 .carouselItem img {
  position: absolute;
  top: 0;
  left: 50%;
  max-width: none;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.carouselFade03 .carouselItem .isHidden {
  z-index: 1;
  display: block;
  opacity: 0;
  transition: all 2.5s ease-out;
}
.carouselFade03 .carouselItem .isCurrent {
  z-index: 2;
  display: block;
  opacity: 1;
}
.carouselFade03 .carouselItem .isShow {
  position: absolute;
  top: 0;
  z-index: 3;
  display: block;
  transition: all 2.5s ease-out;
}
.carouselFade03 .carouselControl {
  position: absolute;
  right: 0;
  bottom: 20px;
  left: 0;
  z-index: 10;
  margin: 0 auto;
  max-width: 1060px;
  width: 100%;
}
.carouselFade03 .carouselControl .carouselNext, .carouselFade03 .carouselControl .carouselPrev {
  position: absolute;
  top: 0;
  z-index: 10;
  margin: -155px 0 0 0;
}
.carouselFade03 .carouselControl .carouselNext button, .carouselFade03 .carouselControl .carouselPrev button {
  overflow: hidden;
  padding: 0;
  width: 28px;
  height: 81px;
  border: 0;
  background: none;
  opacity: 1;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.carouselFade03 .carouselControl .carouselNext button::before, .carouselFade03 .carouselControl .carouselPrev button::before {
  position: absolute;
}
.carouselFade03 .carouselControl .carouselNext button span, .carouselFade03 .carouselControl .carouselPrev button span {
  position: absolute;
  top: 0;
  left: 0;
  color: transparent;
  height: 100%;
}
.carouselFade03 .carouselControl .carouselNext button:hover, .carouselFade03 .carouselControl .carouselNext button:active, .carouselFade03 .carouselControl .carouselNext button:focus, .carouselFade03 .carouselControl .carouselPrev button:hover, .carouselFade03 .carouselControl .carouselPrev button:active, .carouselFade03 .carouselControl .carouselPrev button:focus {
  opacity: .8;
}
.carouselFade03 .carouselControl .carouselNext {
  right: 0;
  top: 130;
}
.carouselFade03 .carouselControl .carouselNext button::before {
  top: 20px;
  left: -20px;
  width: 38px;
  height: 38px;
  border: 1px solid #e1ddd3;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.carouselFade03 .carouselControl .carouselNext button:hover, .carouselFade03 .carouselControl .carouselNext button:active, .carouselFade03 .carouselControl .carouselNext button:focus {
  -webkit-transform: translateX(5px);
  transform: translateX(5px);
}
.carouselFade03 .carouselControl .carouselPrev {
  left: 0;
}
.carouselFade03 .carouselControl .carouselPrev button::before {
  top: 20px;
  left: 9px;
  width: 38px;
  height: 38px;
  border: 1px solid #e1ddd3;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.carouselFade03 .carouselControl .carouselPrev button:hover, .carouselFade03 .carouselControl .carouselPrev button:active, .carouselFade03 .carouselControl .carouselPrev button:focus {
  -webkit-transform: translateX(-5px);
  transform: translateX(-5px);
}
.carouselFade03 .carouselControl img {
  vertical-align: top;
}
.carouselFade03 .carouselIndicator {
  position: relative;
  z-index: 10;
  display: inline-block;
  margin: 0;
  vertical-align: middle;
}
.carouselFade03 .carouselPlayer {
  z-index: 10;
  display: inline-block;
  margin: 0 0 0 42px;
  vertical-align: middle;
}
@media only screen and (max-width: 1060px) {
  .carouselFade03 .carouselControl .carouselNext {
    right: 15px;
  }
  .carouselFade03 .carouselControl .carouselPrev {
    left: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .carouselFade03 .carouselItem {
    max-width: none;
    height: auto;
  }
  .carouselFade03 .carouselItem img {
    position: static;
    width: 100%;
    -webkit-transform: none;
    transform: none;
  }
  .carouselFade03 .carouselControl {
    bottom: 5px;
  }
  .carouselFade03 .carouselControl .carouselNext, .carouselFade03 .carouselControl .carouselPrev {
    display: none;
  }
  .carouselFade03 .carouselPlayer {
    margin-left: 38px;
  }
}

/* .carouselInner
----------------------------------------------- */
.carouselInner {
  overflow: hidden;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  .carouselInner {
    float: none;
    width: auto;
  }
}

/* .carouselBody
----------------------------------------------- */
.carouselBody {
  position: relative;
  overflow: hidden;
  margin: 0;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;

  -webkit-perspective: 1000;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

/* .carouselItem
----------------------------------------------- */
.carouselItem {
  overflow: hidden;
}
.carouselItem li {
  float: left;
}
.carouselItem.isAnimate {
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.carouselItem.isUpdate {
  transition: all 0 ease-out;
}
.carouselItem.isSwipe {
  transition-duration: 0;
}
@media only screen and (max-width: 767px) {
  .carouselItem {
    position: relative;
    z-index: 1;
  }
}

/* .carouselPlayer
----------------------------------------------- */
.carouselPlayer {
  margin: 0;
  width: 12px;
  height: 14px;
}
.carouselPlayer button {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 0;
  width: 100%;
  height: 100%;
  border: none;
  background: none;
  color: #fff;
  opacity: 1;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.carouselPlayer button::before, .carouselPlayer button::after {
  position: absolute;
  top: 0;
  width: 3px;
  height: 14px;
  background: #fff;
  opacity: 1;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.carouselFade02 .carouselPlayer button::before, .carouselFade02 .carouselPlayer button::after {
  position: absolute;
  top: 0;
  width: 3px;
  height: 14px;
  background: #e1ddd3;
  opacity: 1;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.carouselPlayer button::before {
  left: 0;
}
.carouselPlayer button::after {
  right: 0;
}
.carouselPlayer button span {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 100%;
  color: transparent;
}
.carouselPlayer button span::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 12px solid #fff;
  opacity: 0;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.carouselFade02 .carouselPlayer button span::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 12px solid #e1ddd3;
  opacity: 0;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.carouselPlayer button:hover, .carouselPlayer button:active, .carouselPlayer button:focus {
  opacity: .8;
}
.carouselPlayer.isPause button::before, .carouselPlayer.isPause button::after {
  opacity: 0;
}
.carouselPlayer.isPause button span::after {
  opacity: 1;
}
@media only screen and (max-width: 767px) {
  .carouselPlayer {
    width: 9px;
    height: 11px;
  }
  .carouselPlayer button::before, .carouselPlayer button::after {
    height: 11px;
  }
  .carouselPlayer button span::after {
    border-width: 5px 8px;
  }
  .carouselFade02 .carouselPlayer button::before, .carouselFade02 .carouselPlayer button::after {
    height: 11px;
  }
  .carouselFade02 .carouselPlayer button span::after {
    border-width: 5px 8px;
  }
}

/* .carouselControl
----------------------------------------------- */
.carouselControl .carouselNext, .carouselControl .carouselPrev {
  opacity: 1;
  transition: all .7s cubic-bezier(.23, 1, .32, 1);
}
.carouselControl .carouselNext button, .carouselControl .carouselPrev button {
  position: relative;
  display: block;
}
.carouselControl .carouselNext button span, .carouselControl .carouselPrev button span {
  position: absolute;
  top: 0;
  left: 0;
  color: transparent;
}
.carouselControl .carouselNext.isDisabled, .carouselControl .carouselPrev.isDisabled {
  opacity: .3;
}
.carouselControl .carouselNext.isDisabled button, .carouselControl .carouselPrev.isDisabled button {
  cursor: default;
}

/* .carouselIndicator
----------------------------------------------- */
.carouselIndicator {
  text-align: center;
}
.carouselIndicator li {
  display: inline-block;
  overflow: hidden;
  margin: 0 0 0 23px;
  width: 10px;
  height: 10px;
  border-radius: 5px;
}
.carouselIndicator li:first-child {
  margin-left: 0;
}
.carouselIndicator button {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 5px;
  background: #fff;
  color: transparent;
  transition: background 2.5s ease-out;
}
.carouselFade02 .carouselIndicator button {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 5px;
  background: #e1ddd3;
  color: transparent;
  transition: background 2.5s ease-out;
}
.carouselIndicator .isCurrent button {
  background: #948670;
}
.carouselFade02 .carouselIndicator .isCurrent button {
  background: #948670;
}
@media only screen and (max-width: 767px) {
  .carouselIndicator li {
    margin-left: 15px;
    width: 8px;
    height: 8px;
    border-radius: 4px;
  }
  .carouselIndicator button {
    border-radius: 4px;
  }
  .carouselFade02 .carouselIndicator button {
    border-radius: 4px;
  }
 }

/* JavaScript Off
----------------------------------------------- */
.noJs .carouselItem li:first-child {
  display: block;
  opacity: 1;
}

/* ----------------------------------------------------------------
    Tabs
----------------------------------------------------------------- */
/* .tab
----------------------------------------------- */
.tab {
  margin: 0 0 30px;
}
.tab > :last-child {
  margin-bottom: 0;
}
.tab .tabList {
  display: table;
  margin: 0 0 30px;
  width: 100%;
  table-layout: fixed;
}
.tab .tabList li {
  display: table-cell;
  padding: 0 3px 0 0;
  vertical-align: middle;
  text-align: center;
  line-height: 1.25;
}
.tab .tabList li:last-child {
  padding-right: 0;
}
.tab .tabList a {
  display: table;
  box-sizing: border-box;
  padding: 14px 10px;
  width: 100%;
  border-bottom: 2px solid #e2ddd4;
  color: #4f3b1a;
  text-decoration: none;
  transition: opacity .5s cubic-bezier(.23, 1, .32, 1);
}
.tab .tabList a span {
  display: table-cell;
  vertical-align: middle;
}
.tab .tabList a:hover, .tab .tabList a:active, .tab .tabList a:focus {
  opacity: .7;
}
.tab .tabList b a, .tab .tabList [aria-selected='true'] {
  border-bottom-color: #c7000d;
  color: #c7000d;
  font-weight: normal;
}
.tab .tabList b a:hover, .tab .tabList b a:active, .tab .tabList b a:focus, .tab .tabList [aria-selected='true']:hover, .tab .tabList [aria-selected='true']:active, .tab .tabList [aria-selected='true']:focus {
  opacity: 1;
}
.tab .tabItem > :last-child {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------
    Modal
----------------------------------------------------------------- */
/* .modal
----------------------------------------------- */
.modal .modalInner {
  background: #fff;
}
.modal .modalInner iframe {
  height: 500px;
}
@media only screen and (max-width: 767px) {
  .modal .modalInner iframe {
    height: auto;
  }
}

/* .modalHeader
----------------------------------------------- */
.modalHeader {
  padding: 36px 40px;
  text-align: center;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .modalHeader {
    padding: 16px 20px;
  }
}

/* .modalBody
----------------------------------------------- */
.modalBody {
  padding: 14px 40px 63px;
  text-align: left;
}
.modalBody > :first-child {
  margin-top: 0;
}
.modalBody > :last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .modalBody {
    padding: 4px 20px 53px;
  }
}

/* .modalFooter
----------------------------------------------- */
.modalFooter {
  padding: 26px 40px 20px;
  border-top: 1px solid #dedad3;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .modalFooter {
    padding: 16px 20px 10px;
  }
}

/* .modalLogo
----------------------------------------------- */
.modalLogo {
  margin: 0 auto;
  width: 313px;
}
@media only screen and (max-width: 767px) {
  .modalLogo {
    width: 206px;
  }
}

/* .modalCopyright
----------------------------------------------- */
.modalCopyright {
  margin: 0;
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  .modalCopyright {
    font-size: 1rem;
  }
}

/* .modalBtnClose
----------------------------------------------- */
.modalBtnClose {
  margin: 0;
  padding: 0 20px 16px;
  text-align: right;
}
.modalBtnClose button {
  position: relative;
  display: inline-block;
  padding: 0 0 0 25px;
  border: 0;
  background: none;
  color: #4f3b1a;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.modalBtnClose button::before, .modalBtnClose button::after {
  position: absolute;
  left: 13px;
  box-sizing: border-box;
  margin: 0 0 0 -12px;
  width: 20px;
  height: 3px;
  border: 1px solid #c7000d;
  border-radius: 3px;
  background: #c7000d;
  -webkit-transform-origin: left center;
  transform-origin: left center;
}
.modalBtnClose button::before {
  top: 3px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.modalBtnClose button::after {
  top: 17px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.modalBtnClose button:hover, .modalBtnClose button:active, .modalBtnClose button:focus {
  opacity: .7;
}
@media only screen and (max-width: 767px) {
  .modalBtnClose {
    padding: 0 10px 16px;
  }
  .modalBtnClose button::before {
    top: 2px;
  }
  .modalBtnClose button::after {
    top: 16px;
  }
}

/* .modalOverlay
----------------------------------------------- */
.modalOverlay {
  background: #000;
}

/* ----------------------------------------------------------------
    Pulldown
----------------------------------------------------------------- */
/* .pulldown
----------------------------------------------- */
.pulldown {
  margin: 0 0 30px;
}
@media only screen and (max-width: 767px) {
  .pulldown {
    margin-bottom: 22px;
  }
}

/* .pulldownList
----------------------------------------------- */
.pulldownList {
  margin: 0 0 30px;
}
@media only screen and (max-width: 767px) {
  .pulldownList {
    margin-bottom: 22px;
  }
}

/* .pulldownContent
----------------------------------------------- */
.pulldownContent > :last-child {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------
    Top
----------------------------------------------------------------- */
/* .tEmergency
----------------------------------------------- */
.tEmergency {
  background: #ebe7df;
}
.tEmergency .contentInner {
  padding-top: 18px;
  padding-bottom: 18px;
}
@media only screen and (max-width: 767px) {
  .tEmergency .contentInner {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}

/* .tAttention
----------------------------------------------- */
.tAttention {
  background: #ebe7df;
}
.tAttention .contentInner {
  padding-top: 18px;
  padding-bottom: 18px;
}
.tEmergency + .tAttention .contentInner {
  padding-top: 0;
}
@media only screen and (max-width: 767px) {
  .tAttention .contentInner {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}

/* .tHeader
----------------------------------------------- */
.tHeader {
  position: relative;
  display: table;
  margin: 0 0 30px;
  width: 100%;
}
.tHeader .headerContainer {
  display: table-row-group;
}
.tHeader .headerHero {
  display: table-header-group;
}
@media only screen and (max-width: 767px) {
  .tHeader {
    margin: 0;
  }
  .tHeader .headerContainer, .tHeader .headerHero {
    display: block;
  }
}

/* .tContentFluid
----------------------------------------------- */
.tContentFluid {
  background: url(../../images/index_bg_01.jpg) no-repeat #fff 50% bottom;
}
.tContentFluid > .contentInner {
  padding-top: 55px;
  padding-bottom: 88px;
}
@media only screen and (max-width: 767px) {
  .tContentFluid > .contentInner {
    padding-top: 10px;
    padding-bottom: 30px;
  }
}

/* .tContentFluid02
----------------------------------------------- */
.tContentFluid02 {
  background: url(../../images/index_bg_02.jpg) no-repeat #f0f0f0 right bottom;
}
.tContentFluid02 > .contentInner {
  padding-top: 55px;
  padding-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  .tContentFluid02 > .contentInner {
    padding-top: 10px;
    padding-bottom: 30px;
  }
}

/* .tContentFluid03
----------------------------------------------- */
.tContentFluid03 {
  background: url(../../images/index_bg_03.jpg) no-repeat #fff 0 bottom;
}
.tContentFluid03 > .contentInner {
  padding-top: 65px;
  padding-bottom: 92px;
}
@media only screen and (max-width: 767px) {
  .tContentFluid03 > .contentInner {
    padding-top: 10px;
    padding-bottom: 30px;
  }
}

/* .tContentFluid04
----------------------------------------------- */
.tContentFluid04 {
  background: #f9f8f6;
}
@media only screen and (max-width: 767px) {
  .tContentFluid04 > .contentInner {
    padding-top: 10px;
  }
}

/* .tHdgL2
----------------------------------------------- */
.tHdgL2 {
  margin: 0 0 12px;
  font-weight: normal;
  font-size: 2rem;
}

/* .tListGroup
----------------------------------------------- */
.tListGroup {
  margin: -36px 0 0;
}
.tListGroup li {
  float: left;
  box-sizing: border-box;
  margin: 36px 0 0;
  padding: 0 5px;
  width: 25%;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .tListGroup li {
    width: 50%;
  }
}

/* .tLinkList
----------------------------------------------- */
.tLinkList {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: -2px 0 30px;

  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}
.tLinkList li {
  box-sizing: border-box;
  margin: 2px 0 0;
  width: 50%;
}
.tLinkList li:nth-child(odd) {
  border-right: 1px solid transparent;
}
.tLinkList li:nth-child(even) {
  border-left: 1px solid transparent;
}
.tLinkList a {
  display: table;
  width: 100%;
  background: #fff;
  table-layout: fixed;
  text-align: right;
}
.tLinkList a .linkTxt, .tLinkList a .linkMedia {
  display: table-cell;
  vertical-align: middle;
  transition: opacity .5s cubic-bezier(.23, 1, .32, 1);
}
.tLinkList a .linkTxt {
  padding: 0 5px 0 11.68478%;
  text-align: left;
}
.tLinkList a .linkTxt span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 22px;
  color: #444;
}
.tLinkList a .linkTxt span::before {
  position: absolute;
  top: 50%;
  left: -3px;
  margin: -6px 0 0;
  width: 8px;
  height: 8px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.tLinkList a .linkMedia {
  width: 98px;
  text-align: right;
}
.tLinkList a:hover .linkTxt, .tLinkList a:hover .linkMedia, .tLinkList a:active .linkTxt, .tLinkList a:active .linkMedia, .tLinkList a:focus .linkTxt, .tLinkList a:focus .linkMedia {
  opacity: .7;
}
.tLinkList a:hover .linkTxt span::before, .tLinkList a:active .linkTxt span::before, .tLinkList a:focus .linkTxt span::before {
  -webkit-transform: rotate(45deg) translate(2px, -2px);
  transform: rotate(45deg) translate(2px, -2px);
}
@media only screen and (max-width: 767px) {
  .tLinkList {
    display: block;
    margin-top: 0;
    padding: 0 15px;
  }
  .tLinkList li {
    width: 100%;
  }
  .tLinkList li:nth-child(odd) {
    border-right: none;
  }
  .tLinkList li:nth-child(even) {
    border-left: none;
  }
  .tLinkList a .linkTxt {
    padding-left: 15px;
  }
}

/* .tLinkList02
----------------------------------------------- */
.tLinkList02 li {
  display: table;
  margin: 0 0 13px;
  width: 100%;
}
.tLinkList02 li > :last-child {
  margin-bottom: 0;
}
.tLinkList02 li:last-child {
  margin-bottom: 0;
}
.tLinkList02 li._noIcon .linkTxt {
  padding-left: 203px;
}
.tLinkList02 .linkIcon, .tLinkList02 .linkTxt {
  display: table-cell;
  vertical-align: top;
}
.tLinkList02 .linkIcon span {
  display: inline-block;
  box-sizing: border-box;
  padding: 5px 15px 2px;
  min-width: 182px;
  background: #c7000d;
  color: #fff;
  text-align: center;
}
.tLinkList02 .linkTxt {
  padding: 3px 0 0;
  width: 100%;
}
.tLinkList02 .linkIcon + .linkTxt {
  padding-left: 21px;
}
.tLinkList02 a {
  text-decoration: none;
}
.tLinkList02 a:hover, .tLinkList02 a:active, .tLinkList02 a:focus {
  text-decoration: underline;
}
.tLinkList02._emergency {
  padding: 15px;
  border: 1px solid #c7000d;
}
.tLinkList02._emergency .linkIcon span {
  position: relative;
  padding-left: 48px;
}
.tLinkList02._emergency .linkIcon span::before {
  position: absolute;
  top: 50%;
  left: 17px;
  margin-top: -10px;
  width: 22px;
  height: 19px;
  background-position: -174px -48px;
  background-size: 215px auto;
}
.tLinkList02._attention {
  padding: 0 16px;
}
@media only screen and (max-width: 767px) {
  .tLinkList02 {
    font-size: 1.3rem;
  }
  .tLinkList02 li {
    display: block;
    margin-bottom: 10px;
  }
  .tLinkList02 li._noIcon .linkTxt {
    padding-left: 0;
  }
  .tLinkList02 .linkIcon, .tLinkList02 .linkTxt {
    display: block;
  }
  .tLinkList02 .linkIcon span {
    padding: 4px 10px 3px;
    min-width: 147px;
  }
  .tLinkList02 .linkTxt {
    margin: 8px 0 0;
    padding: 0;
    width: auto;
  }
  .tLinkList02 .linkIcon + .linkTxt {
    padding-left: 0;
  }
  .tLinkList02._emergency {
    padding: 10px;
  }
  .tLinkList02._emergency .linkIcon span {
    padding-left: 36px;
  }
  .tLinkList02._emergency .linkIcon span::before {
    left: 14px;
  }
  .tLinkList02._attention {
    padding: 0 11px;
  }
}

/* .tGrid
----------------------------------------------- */
.tGrid {
  margin: 0 0 30px;
}
.tGrid > .gridCol, .tGrid > .gridCol02 {
  float: left;
}
.tGrid > .gridCol > :last-child, .tGrid > .gridCol02 > :last-child {
  margin-bottom: 0;
}
.tGrid[data-col='2'] {
  margin-left: -.28302%;
}
.tGrid[data-col='2'] > .gridCol {
  float: left;
  margin-left: .28222%;
  width: 28.03387%;
}
.tGrid[data-col='2'] > .gridCol02 {
  float: left;
  margin-left: .28222%;
  width: 71.40169%;
}
@media only screen and (max-width: 767px) {
  .tGrid[data-col='2'] > .gridCol, .tGrid[data-col='2'] > .gridCol02 {
    float: none;
    margin: 0;
    width: 100%;
  }
}

/* .tGrid02
----------------------------------------------- */
.tGrid02 {
  display: table;
  margin: 0 0 30px;
  width: 100%;
}
.tGrid02 > .gridCol, .tGrid02 > .gridCol02 {
  display: table-cell;
  box-sizing: border-box;
  vertical-align: middle;
}
.tGrid02 > .gridCol > :last-child, .tGrid02 > .gridCol02 > :last-child {
  margin-bottom: 0;
}
.tGrid02 > .gridCol {
  padding-right: 16px;
  width: 19.62264%;
}
.tGrid02 > .gridCol02 {
  padding-left: 16px;
  width: 78.77358%;
  border-left: 1px solid #e2ddd4;
}
@media only screen and (max-width: 767px) {
  .tGrid02 {
    display: block;
  }
  .tGrid02 > .gridCol, .tGrid02 > .gridCol02 {
    display: block;
    width: 100%;
  }
  .tGrid02 > .gridCol {
    margin: 0 0 30px;
    padding-right: 0;
  }
  .tGrid02 > .gridCol02 {
    padding: 30px 0 0;
    border-top: 1px solid #e2ddd4;
    border-left: none;
  }
  .tGrid02 .tHdgL2 {
    text-align: center;
    font-size: 1.8rem;
  }
}

/* ----------------------------------------------------------------
    Uniques
----------------------------------------------------------------- */
/* .uniTxtLead
----------------------------------------------- */
.uniTxtLead {
  margin: 43px 0 25px;
  text-align: center;
  font-size: 3.3rem;
  line-height: 1.39394;
}
.uniTxtLead strong {
  color: #4f3b1a;
  font-weight: normal;
}
.uniTxtLead span {
  display: block;
  margin: 5px 0 0;
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .uniTxtLead {
    margin: 22px 0 10px;
    font-size: 2.6rem;
    line-height: 1.25;
  }
}

/* .uniListOutline
----------------------------------------------- */
.uniListOutline > li {
  display: table;
  margin: 0 0 45px;
  width: 100%;
}
.uniListOutline > li:last-child {
  margin-bottom: 0;
}
.uniListOutline > li .listCol, .uniListOutline > li .listCol02 {
  display: table-cell;
  vertical-align: top;
}
.uniListOutline > li .listCol > :last-child, .uniListOutline > li .listCol02 > :last-child {
  margin-bottom: 0;
}
.uniListOutline > li .listCol {
  box-sizing: border-box;
  padding: 0 30px 0 0;
  width: 180px;
}
.uniListOutline > li .listHdg {
  box-sizing: border-box;
  padding: 20px 10px 15px;
  min-width: 150px;
  background: #91836d;
  color: #fff;
  text-align: center;
  font-weight: normal;
  font-size: 1.8rem;
  line-height: 1.33333;
}
.uniListOutline > li .listHdg::before {
  margin: 0 auto 17px;
}
.uniListOutline > li .listHdg._health {
  background: #6db3d4;
}
.uniListOutline > li .listHdg._health::before {
  width: 60px;
  height: 55px;
  background-position: -68px 0;
  background-size: 215px auto;
}
.uniListOutline > li .listHdg._society {
  background: #d59533;
}
.uniListOutline > li .listHdg._society::before {
  width: 42px;
  height: 56px;
  background-position: -130px 0;
  background-size: 215px auto;
}
.uniListOutline > li .listHdg._environment {
  background: #5d9784;
}
.uniListOutline > li .listHdg._environment::before {
  width: 66px;
  height: 60px;
  background-position: 0 0;
  background-size: 215px auto;
}
.uniListOutline > li .listLead {
  margin: 0 0 12px;
  color: #000;
  font-size: 1.8rem;
  line-height: 1.33333;
}
.uniListOutline > li .listLead b {
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .uniListOutline > li {
    margin-bottom: 15px;
  }
  .uniListOutline > li .listCol {
    padding-right: 15px;
    width: 90px;
  }
  .uniListOutline > li .listHdg {
    padding: 10px 5px;
    min-width: 75px;
    font-size: .9rem;
    line-height: 1.33333;
  }
  .uniListOutline > li .listHdg::before {
    margin-bottom: 10px;
  }
  .uniListOutline > li .listHdg._health::before {
    width: 30px;
    height: 27.5px;
    background-position: -34px 0;
    background-size: 107.5px auto;
  }
  .uniListOutline > li .listHdg._society::before {
    width: 21px;
    height: 28px;
    background-position: -65px 0;
    background-size: 107.5px auto;
  }
  .uniListOutline > li .listHdg._environment::before {
    width: 33px;
    height: 30px;
    background-position: 0 0;
    background-size: 107.5px auto;
  }
  .uniListOutline > li .listLead {
    margin-bottom: 9px;
    font-size: 1.5rem;
  }
}

/* .uniListHistory
----------------------------------------------- */
.uniListHistory {
  padding: 12px 0 0 6px;
}
.uniListHistory > li {
  position: relative;
  padding: 0 0 55px 60px;
  border-left: 2px solid #8e8069;
}
.uniListHistory > li:last-child {
  padding-bottom: 0;
}
.uniListHistory > li:last-child::before {
  position: absolute;
  bottom: -3px;
  left: -6px;
  width: 0;
  height: 0;
  border-top: 16px solid #8e8069;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
}
.uniListHistory > li > :last-child {
  margin-bottom: 0;
}
.uniListHistory > li > .listHdg {
  margin: 0 0 10px;
  color: #4f3b1a;
  font-weight: normal;
  font-size: 2rem;
  line-height: 1;
  -webkit-transform: translateY(-12px);
  transform: translateY(-12px);
}
.uniListHistory > li > .listHdg::before {
  position: absolute;
  top: 12px;
  left: -60px;
  width: 57px;
  height: 2px;
  background: #8e8069;
}
.uniListHistory > li > .listHdg::after {
  position: absolute;
  top: 6px;
  left: -68px;
  width: 14px;
  height: 14px;
  border-radius: 7px;
  background: #4f3b1a;
}
.uniListHistory > li > .listHdg span {
  font-size: 3rem;
}
.uniListHistory > li > .listHdg b {
  display: block;
  margin: 20px 0 0;
}
.uniListHistory > li > .listHdg02 {
  margin: 0 0 20px;
  color: #4f3b1a;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .uniListHistory {
    padding-left: 0;
  }
  .uniListHistory > li {
    padding: 0 0 45px 15px;
  }
  .uniListHistory > li:last-child::before {
    bottom: -3px;
    left: -5px;
    border-top-width: 14px;
    border-right-width: 4px;
    border-left-width: 4px;
  }
  .uniListHistory > li > .listHdg {
    font-size: 1.6rem;
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
  .uniListHistory > li > .listHdg::before {
    top: 10px;
    left: -17px;
    width: 14px;
  }
  .uniListHistory > li > .listHdg::after {
    top: 6px;
    left: -21px;
    width: 10px;
    height: 10px;
    border-radius: 5px;
  }
  .uniListHistory > li > .listHdg span {
    font-size: 2.2rem;
  }
  .uniListHistory > li > .listHdg b {
    margin-top: 15px;
  }
  .uniListHistory > li > .listHdg02 {
    font-size: 1.6rem;
  }
}

/* .uniListAction
----------------------------------------------- */
.uniListAction {
  position: relative;
  padding: 26px 24px;
  border: 3px solid #e1ddd3;
}
.uniListAction::before {
  position: absolute;
  top: 4px;
  right: 4px;
  bottom: 4px;
  left: 4px;
  border: 1px solid #e1ddd3;
}
.uniListAction dt {
  margin: 19px 0 0;
  padding: 21px 0 0;
  border-top: 1px solid #e1ddd3;
  color: #4f3b1a;
  font-weight: bold;
  font-size: 1.8rem;
}
.uniListAction dt:first-child {
  margin-top: 0;
  padding-top: 0;
  border: 0;
}
.uniListAction dd {
  margin: 4px 0 0;
}
@media only screen and (max-width: 767px) {
  .uniListAction dt {
    font-size: 1.5rem;
  }
}

/* .uniPanelOfficer
----------------------------------------------- */
.uniPanelOfficer {
  display: table;
  box-sizing: border-box;
  margin: 0 0 30px;
  padding: 20px 30px;
  width: 100%;
  border: 1px solid #c3baae;
  font-size: 1.4rem;
}
.uniPanelOfficer .panelHdg, .uniPanelOfficer .panelInner, .uniPanelOfficer .panelCol, .uniPanelOfficer .panelCol02 {
  display: table-cell;
  vertical-align: top;
}
.uniPanelOfficer .panelHdg > :last-child, .uniPanelOfficer .panelInner > :last-child, .uniPanelOfficer .panelCol > :last-child, .uniPanelOfficer .panelCol02 > :last-child {
  margin-bottom: 0;
}
.uniPanelOfficer .panelHdg {
  padding: 19px 30px 19px 0;
  width: 37%;
  border-right: 1px solid #c3baae;
}
.uniPanelOfficer .panelHdg .panelHdgItem {
  font-weight: normal;
  font-size: 1.8rem;
  line-height: 1.7;
}
.uniPanelOfficer .panelHdg02 {
  margin: 23px 0 15px;
  padding: 3px 10px 2px;
  background: #edeae7;
  color: #4f3b1a;
  font-size: 1.4rem;
}
.uniPanelOfficer .panelBody {
  display: table;
  margin: 0 0 20px;
  width: 100%;
}
.uniPanelOfficer .panelCol {
  padding: 21px 0 21px 20px;
}
.uniPanelOfficer .panelCol02 {
  padding-left: 20px;
  width: 90px;
  text-align: right;
}
.uniPanelOfficer .panelTxt {
  margin: 0 0 5px;
  font-size: 1.8rem;
}
.uniPanelOfficer .panelTxt span {
  margin-left: 22px;
  font-size: 1.2rem;
}
.uniPanelOfficer .panelTxt02 {
  font-size: 1.4rem;
}
.uniPanelOfficer + .uniPanelOfficer {
  margin-top: -30px;
  border-top: 0;
}
@media only screen and (max-width: 860px) {
  .uniPanelOfficer .panelTxt span {
    display: block;
    margin-left: 0;
  }
}
@media only screen and (max-width: 767px) {
  .uniPanelOfficer {
    display: block;
    padding: 10px 14px 14px;
    font-size: 1.2rem;
  }
  .uniPanelOfficer .panelHdg, .uniPanelOfficer .panelInner, .uniPanelOfficer .panelCol, .uniPanelOfficer .panelCol02 {
    display: block;
  }
  .uniPanelOfficer .panelHdg {
    margin: 0 0 15px;
    padding: 0;
    width: auto;
    border-right: 0;
    border-bottom: 1px solid #c3baae;
  }
  .uniPanelOfficer .panelHdg .panelHdgItem {
    padding: 0 0 8px;
    font-size: 1.5rem;
  }
  .uniPanelOfficer .panelHdg02 {
    margin: 9px 0 11px;
    padding-top: 4px;
    padding-bottom: 4px;
    font-size: 1.2rem;
  }
  .uniPanelOfficer .panelCol {
    float: left;
    padding: 0;
  }
  .uniPanelOfficer .panelCol02 {
    float: right;
  }
  .uniPanelOfficer .panelTxt {
    font-size: 1.5rem;
  }
  .uniPanelOfficer .panelTxt span {
    margin: 0;
    font-size: 1.2rem;
  }
  .uniPanelOfficer .panelTxt02 {
    font-size: 1.2rem;
  }
}

/* .uniLytBio
----------------------------------------------- */
.uniLytBio {
  margin: 0 0 30px;
}
.uniLytBio .lytHdg {
  position: relative;
  box-sizing: border-box;
  margin: 0 0 25px;
  padding: 33px 0 0 205px;
  min-height: 196px;
}
.uniLytBio .lytHdg .lytHdgItem {
  font-weight: normal;
  font-size: 3rem;
}
.uniLytBio .lytHdg .lytHdgItem .-hat {
  display: block;
  margin-bottom: 16px;
  font-size: 1.8rem;
}
.uniLytBio .lytHdg .lytHdgItem .-ruby {
  display: inline-block;
  margin-left: 10px;
  font-size: 1.6rem;
}
.uniLytBio .lytHdg img {
  position: absolute;
  top: 0;
  left: 0;
}
.uniLytBio .lytHdg02 {
  margin: 0 0 15px;
  padding: 3px 10px 2px;
  background: #edeae7;
  color: #4f3b1a;
  font-weight: normal;
  font-size: 1.4rem;
}
.uniLytBio .lytInner {
  margin-left: 205px;
}
.uniLytBio .lytInner > :last-child {
  margin-bottom: 0;
}
.uniLytBio .lytList li {
  margin: 0 0 13px;
  padding: 0 0 13px;
  border-bottom: 1px solid #c3baae;
}
.uniLytBio .lytList li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border: 0;
}
.uniLytBio .lytList .listInner {
  position: relative;
  padding-left: 6.5em;
}
.uniLytBio .lytList .listInner .-date {
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 860px) {
  .uniLytBio .lytInner {
    margin-left: 0;
  }
}
@media only screen and (max-width: 767px) {
  .uniLytBio .lytHdg {
    margin-bottom: 15px;
    padding: 0 0 0 105px;
    min-height: 107px;
  }
  .uniLytBio .lytHdg .lytHdgItem {
    font-size: 2.2rem;
  }
  .uniLytBio .lytHdg .lytHdgItem .-hat {
    font-size: 1.5rem;
  }
  .uniLytBio .lytHdg .lytHdgItem .-ruby {
    display: block;
    margin-left: 0;
    font-size: 1.4rem;
  }
  .uniLytBio .lytHdg img {
    width: 90px;
  }
  .uniLytBio .lytHdg02 {
    padding-top: 5px;
    padding-bottom: 3px;
    font-size: 1.2rem;
  }
}

/* .uniLytExternal
----------------------------------------------- */
.uniLytExternal {
  text-align: center;
}
.uniLytExternal .lytTxt {
  font-size: 2rem;
}
.uniLytExternal .lytTitle {
  display: block;
}
.uniLytExternal .lytBtn {
  margin-top: 100px;
}
@media only screen and (max-width: 767px) {
  .uniLytExternal {
    text-align: left;
  }
  .uniLytExternal .lytTxt {
    text-align: center;
    font-size: 1.6rem;
  }
  .uniLytExternal .lytBtn {
    margin-top: 60px;
  }
}

/* .uniLytSitemap
----------------------------------------------- */
.uniLytSitemap {
  margin: 60px 0 0;
  padding: 30px 0 0;
  border-top: 1px solid #4f3b1a;
}
.uniLytSitemap > :last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .uniLytSitemap {
    margin-top: 44px;
    padding-top: 22px;
  }
}

/* .uniHdgL2
----------------------------------------------- */
.uniHdgL2 {
  margin: 60px 0 20px;
  color: #c7000d;
  text-align: center;
  font-weight: normal;
  font-size: 3rem;
}
.uniHdgL2 a {
  position: relative;
  padding: 0 0 0 32px;
  color: inherit;
  text-decoration: none;
  transition: opacity .7s cubic-bezier(.23, 1, .32, 1);
}
.uniHdgL2 a::before, .uniHdgL2 a::after {
  position: absolute;
}
.uniHdgL2 a::before {
  top: 12px;
  left: 0;
  width: 19px;
  height: 19px;
  border-radius: 2px;
  background: #c7000d;
}
.uniHdgL2 a::after {
  top: 17px;
  left: 3px;
  width: 7px;
  height: 7px;
  border: 1px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.uniHdgL2 a:hover, .uniHdgL2 a:active, .uniHdgL2 a:focus {
  opacity: .7;
}
.uniHdgL2 span {
  font-size: 2rem;
}
.uniHdgL2._news {
  margin: 0 0 37px;
  padding: 0 0 11px;
  border-bottom: 1px solid #92846e;
}
:lang(en) .uniHdgL2 a::before {
  top: 7px;
}
:lang(en) .uniHdgL2 a::after {
  top: 12px;
}
@media only screen and (max-width: 767px) {
  .uniHdgL2 {
    margin: 50px 0 20px;
    font-size: 2.2rem;
  }
  .uniHdgL2 a {
    padding-left: 25px;
  }
  .uniHdgL2 a::before {
    top: 6px;
    width: 16px;
    height: 16px;
  }
  .uniHdgL2 a::after {
    top: 11px;
    width: 6px;
    height: 6px;
  }
  .uniHdgL2 span {
    font-size: 1.6rem;
  }
  .uniHdgL2._news {
    margin-bottom: 27px;
    padding-bottom: 5px;
  }
  :lang(en) .uniHdgL2 a::before {
    top: 5px;
  }
  :lang(en) .uniHdgL2 a::after {
    top: 9px;
  }
}

/* .uniHdgL202
----------------------------------------------- */
.uniHdgL202 {
  margin: 0 0 30px;
}
.uniHdgL202 a {
  display: table;
  width: 100%;
  text-decoration: none;
  font-weight: normal;
  transition: opacity .5s cubic-bezier(.23, 1, .32, 1);
}
.uniHdgL202 a:hover, .uniHdgL202 a:active, .uniHdgL202 a:focus {
  opacity: .7;
}
.uniHdgL202 .hdgMedia, .uniHdgL202 .hdgTxt {
  display: table-cell;
  vertical-align: middle;
}
.uniHdgL202 .hdgMedia {
  padding: 0 37px 0 0;
  width: 188px;
}
.uniHdgL202 .hdgTxt span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 32px;
  color: #c7000d;
  font-size: 2.2rem;
  line-height: 1.54545;
}
.uniHdgL202 .hdgTxt span::before, .uniHdgL202 .hdgTxt span::after {
  position: absolute;
  top: 50%;
  line-height: 1;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.uniHdgL202 .hdgTxt span::before {
  left: 0;
  width: 19px;
  height: 19px;
  border-radius: 2px;
  background: #6f6351;
}
.uniHdgL202 .hdgTxt span::after {
  left: 3px;
  margin: -4px 0 0;
  width: 7px;
  height: 7px;
  border: 1px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media only screen and (max-width: 1060px) {
  .uniHdgL202 .hdgMedia, .uniHdgL202 .hdgTxt {
    display: block;
    text-align: center;
  }
  .uniHdgL202 .hdgMedia {
    padding: 0 0 15px 0;
    width: auto;
  }
}
@media only screen and (max-width: 767px) {
  .uniHdgL202 .hdgMedia, .uniHdgL202 .hdgTxt {
    display: table-cell;
    text-align: left;
  }
  .uniHdgL202 .hdgMedia {
    padding: 0 20px 0 0;
    width: 125px;
  }
  .uniHdgL202 .hdgTxt span {
    padding: 0 0 0 32px;
    font-size: 1.8rem;
  }
}

/* .uniHdgRelated
----------------------------------------------- */
.uniHdgRelated {
  margin: 68px 0 0;
  color: #706451;
  font-weight: normal;
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .uniHdgRelated {
    margin: 0;
    text-align: center;
    font-size: 1.7rem;
  }
}

/* .uniLinkList
----------------------------------------------- */
.uniLinkList {
  display: table;
  width: 100%;
  border-spacing: 2px;
  border-collapse: separate;
  table-layout: fixed;
}
.uniLinkList li {
  display: table-cell;
  vertical-align: top;
}
.uniLinkList a {
  display: block;
  color: inherit;
  text-decoration: none;
}
.uniLinkList a b {
  display: block;
  margin: 0 0 10px;
  color: #4f3b1a;
  font-weight: normal;
  font-size: 1.8rem;
}
.uniLinkList a .listImg {
  background: #fff;
}
.uniLinkList a .listInner {
  margin: 1px 0 0;
  padding: 13px 10px 10px;
  background: #fff;
  text-align: center;
}
.uniLinkList a .listInner > :last-child {
  margin-bottom: 0;
}
.uniLinkList a .listInner span {
  position: relative;
  display: inline-block;
  margin: 0 0 15px;
  padding: 0 0 0 16px;
}
.uniLinkList a .listInner span::before {
  position: absolute;
  top: 7px;
  left: -3px;
  width: 8px;
  height: 8px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.uniLinkList a .listInner p {
  font-size: 1.4rem;
}
.uniLinkList a .listImg img, .uniLinkList a .listInner span {
  transition: opacity .5s cubic-bezier(.23, 1, .32, 1);
}
.uniLinkList a:hover .listImg img, .uniLinkList a:hover .listInner span, .uniLinkList a:hover .listInner p, .uniLinkList a:active .listImg img, .uniLinkList a:active .listInner span, .uniLinkList a:active .listInner p, .uniLinkList a:focus .listImg img, .uniLinkList a:focus .listInner span, .uniLinkList a:focus .listInner p {
  opacity: .7;
}
.uniLinkList a:hover span::before, .uniLinkList a:active span::before, .uniLinkList a:focus span::before {
  -webkit-transform: rotate(45deg) translate(2px, -2px);
  transform: rotate(45deg) translate(2px, -2px);
}
.uniLinkList._color li a .listImg, .uniLinkList._color li a .listInner {
  background: #f9f8f6;
}
@media only screen and (max-width: 767px) {
  .uniLinkList {
    display: block;
    box-sizing: border-box;
    padding: 0 15px;
    text-align: center;
  }
  .uniLinkList li {
    display: block;
    margin: 0 0 15px 0;
  }
  .uniLinkList a b {
    margin: 0 0 2px;
    font-size: 1.5rem;
  }
  .uniLinkList a span::before {
    top: 5px;
  }
  .uniLinkList a .listInner {
    margin-top: 0;
    padding: 13px 10px 10px;
  }
}

/* .uniLinkList02
----------------------------------------------- */
.uniLinkList02 {
  margin: -30px 0 30px -12px;
}
.uniLinkList02 li {
  float: left;
  margin: 30px 0 0 12px;
  color: #4f3b1a;
  text-align: center;
  font-weight: bold;
  line-height: 1;
}
.uniLinkList02 a {
  display: table-cell;
  width: 62px;
  height: 50px;
  background: #e2ddd4;
  color: inherit;
  vertical-align: middle;
  text-decoration: none;
  transition: background .5s cubic-bezier(.23, 1, .32, 1);
}
.uniLinkList02 a:hover, .uniLinkList02 a:active, .uniLinkList02 a:focus {
  background: #f1ece4;
}
.uniLinkList02 a:not([href]) {
  background: #f6f6f6;
  color: #777;
}
.uniLinkList02 .-thick a {
  width: 136px;
}
@media only screen and (max-width: 767px) {
  .uniLinkList02 {
    margin-top: -22px;
    margin-bottom: 22px;
  }
  .uniLinkList02 li {
    margin-top: 22px;
  }
  .uniLinkList02 a {
    width: 48px;
    height: 48px;
  }
  .uniLinkList02 .-thick a {
    width: 108px;
  }
}

/* .uniLinkMedia
----------------------------------------------- */
.uniLinkMedia {
  display: block;
  color: inherit;
  text-align: center;
  text-decoration: none;
  font-size: 1.6rem;
  transition: opacity .5s cubic-bezier(.23, 1, .32, 1), color .5s cubic-bezier(.23, 1, .32, 1);
}
.uniLinkMedia span {
  position: relative;
  display: inline-block;

  padding: 0 0 0 16px;
  line-height: 1.375;
}
.uniLinkMedia span::before {
  position: absolute;
  top: 6px;
  left: -3px;
  width: 8px;
  height: 8px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .7s cubic-bezier(.23, 1, .32, 1);
  transition: transform .7s cubic-bezier(.23, 1, .32, 1);
  transition: transform .7s cubic-bezier(.23, 1, .32, 1), -webkit-transform .7s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.uniLinkMedia:hover, .uniLinkMedia:active, .uniLinkMedia:focus {
  color: inherit;
  opacity: .7;
}
.uniLinkMedia:hover span::before, .uniLinkMedia:active span::before, .uniLinkMedia:focus span::before {
  -webkit-transform: rotate(45deg) translate(2px, -2px);
  transform: rotate(45deg) translate(2px, -2px);
}
@media only screen and (max-width: 767px) {
  .uniLinkMedia {
    padding: 0 15px;
    font-size: 1.5rem;
  }
  .uniLinkMedia img {
    display: block;
    margin: 0 auto;
  }
}

/* .uniLinkFile
----------------------------------------------- */
.uniLinkFile {
  padding: 0 26px;
  text-align: center;
}
.uniLinkFile a {
  display: inline-block;
  color: inherit;
  text-decoration: none;
  transition: opacity .5s cubic-bezier(.23, 1, .32, 1);
}
.uniLinkFile a .linkTitle {
  display: block;
  margin: 20px 0 0;
  font-weight: normal;
  font-size: 1.8rem;
}
.uniLinkFile a .linkMark {
  position: relative;
  padding: 0 0 0 15px;
}
.uniLinkFile a .linkMark::before {
  position: absolute;
  top: 7px;
  left: -3px;
  width: 8px;
  height: 8px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.uniLinkFile a:hover, .uniLinkFile a:active, .uniLinkFile a:focus {
  opacity: .7;
}
.uniLinkFile a:hover .linkMark::before, .uniLinkFile a:active .linkMark::before, .uniLinkFile a:focus .linkMark::before {
  -webkit-transform: rotate(45deg) translate(2px, -2px);
  transform: rotate(45deg) translate(2px, -2px);
}
.uniLinkFile a:not([href]) {
  opacity: 1;
}
@media only screen and (max-width: 767px) {
  .uniLinkFile a .linkTitle {
    margin: 10px 0 0;
    font-size: 1.5rem;
  }
  .uniLinkFile a .linkMark::before {
    top: 5px;
  }
}

/* .uniGrid
----------------------------------------------- */
.uniGrid {
  position: relative;
  margin: 0 0 30px;
}
.uniGrid > .gridCol, .uniGrid > .gridCol02 {
  float: left;
}
.uniGrid > .gridCol > :last-child, .uniGrid > .gridCol02 > :last-child {
  margin-bottom: 0;
}
.uniGrid[data-col='2'] {
  margin-left: -2.83019%;
}
.uniGrid[data-col='2'] > .gridCol {
  float: left;
  margin-left: 2.75229%;
  width: 67.15596%;
}
.uniGrid[data-col='2'] > .gridCol02 {
  float: left;
  margin-left: 2.75229%;
  width: 27.33945%;
}
.uniGrid._related[data-col='2'] {
  margin-left: -2.83019%;
}
.uniGrid._related[data-col='2'] > .gridCol {
  float: left;
  margin-left: 2.75229%;
  width: 12.84404%;
}
.uniGrid._related[data-col='2'] > .gridCol02 {
  float: left;
  margin-left: 2.75229%;
  width: 81.65138%;
}
.uniLinkList + .uniGrid {
  margin-top: 50px;
}
@media only screen and (max-width: 767px) {
  .uniGrid {
    margin-left: 0 !important;
  }
  .uniGrid > .gridCol, .uniGrid > .gridCol02 {
    float: none;
    margin-left: 0 !important;
    width: 100% !important;
  }
  .uniGrid > .gridCol {
    margin: 0 0 25px;
  }
  .uniLinkList + .uniGrid {
    margin-top: 43px;
  }
}

/* .uniMedia
----------------------------------------------- */
.uniMedia {
  margin: 0 0 30px;
}
.uniMedia._stockDetail iframe {
  height: 959px;
}
.uniMedia._highlight iframe {
  width: 100%;
  height: 100%;
}
.contentSecondary .uniMedia {
  margin-bottom: 20px;
}

/* ----------------------------------------------------------------
    Site Search
----------------------------------------------------------------- */
/* .uniLytSearch
----------------------------------------------- */
.uniLytSearch {
  margin: 0 0 30px;
  text-align: center;
}
.uniLytSearch > * {
  margin-bottom: 0;
}
.uniLytSearch._error {
  text-align: left;
}
.uniLytSearch .uniTxt {
  margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  .uniLytSearch {
    margin-bottom: 22px;
  }
}

/* .uniLytToolbar
----------------------------------------------- */
.uniLytToolbar {
  display: table;
  margin: 0 0 37px;
  width: 100%;
}
.uniLytToolbar .lytCol, .uniLytToolbar .lytCol02 {
  display: table-cell;
}
.uniLytToolbar .lytCol > :last-child, .uniLytToolbar .lytCol02 > :last-child {
  margin-bottom: 0;
}
.uniLytToolbar .lytCol02 {
  text-align: right;
}
.uniLytToolbar .lytTool {
  letter-spacing: -.4em;
}
.uniLytToolbar .lytTool dt, .uniLytToolbar .lytTool dd {
  display: inline-block;
  letter-spacing: normal;
}
.uniLytToolbar .lytTool dd {
  margin: 0 0 0 20px;
}
.uniLytToolbar .lytTool dt + dd {
  margin: 0;
}
:lang(en) .uniLytToolbar .lytTool dt + dd {
  margin: 0 0 0 5px;
}
.uniLytToolbar .lytTool b {
  font-weight: normal;
}
.uniLytToolbar .lytTool a:not([href]) {
  color: inherit;
}
@media only screen and (max-width: 767px) {
  .uniLytToolbar {
    margin-bottom: 22px;
  }
  .uniLytToolbar .lytCol, .uniLytToolbar .lytCol02 {
    display: block;
    text-align: left;
  }
  .uniLytToolbar .lytCol {
    margin-bottom: 5px;
  }
}

/* .uniListSearch
----------------------------------------------- */
.uniListSearch li {
  display: table;
  padding: 21px 0 18px;
  width: 100%;
  border-bottom: 1px solid #dedad3;
}
.uniListSearch li:first-child {
  border-top: 1px solid #dedad3;
}
.uniListSearch .listBody, .uniListSearch .listBtn {
  display: table-cell;
}
.uniListSearch .listBody > :last-child, .uniListSearch .listBtn > :last-child {
  margin-bottom: 0;
}
.uniListSearch .listBody {
  padding: 0 30px 0 0;
}
.uniListSearch .listBtn {
  width: 15.75472%;
  text-align: right;
}
@media only screen and (max-width: 767px) {
  .uniListSearch .listBody, .uniListSearch .listBtn {
    display: block;
    padding: 0;
    width: auto;
    text-align: left;
  }
  .uniListSearch .listBody {
    margin-bottom: 22px;
  }
}

/* .uniListResult
----------------------------------------------- */
.uniListResult > li {
  display: table;
  margin: 0 0 40px;
}
.uniListResult > li:last-child {
  margin-bottom: 0;
}
.uniListResult li {
  display: table;
  table-layout: fixed;
  direction: rtl;
}
.uniListResult .listBody, .uniListResult .listImg {
  display: table-cell;
  vertical-align: top;
  direction: ltr;
}
.uniListResult .listBody > :last-child, .uniListResult .listImg > :last-child {
  margin-bottom: 0;
}
.uniListResult .listBody {
  padding: 0 0 0 50px;
}
.uniListResult .listHdg {
  position: relative;
  margin: 0 0 12px;
  font-weight: normal;
  font-size: 1.6rem;
}
.uniListResult .listHdg span {
  position: absolute;
  left: -3.5em;
  min-width: 3em;
  text-align: right;
}
.uniListResult .listImg {
  width: 242px;
}
.uniListResult .listImg img {
  border: 1px solid #c3baae;
}
@media only screen and (max-width: 767px) {
  .uniListResult li {
    margin-bottom: 22px;
  }
  .uniListResult .listBody {
    display: block;
    padding: 0;
  }
  .uniListResult .listHdg {
    margin-bottom: 6px;
    font-size: 1.4rem;
  }
  .uniListResult .listHdg span {
    position: static;
  }
  .uniListResult .listImg {
    display: none;
  }
}

/* .uniFormSearch
----------------------------------------------- */
.uniFormSearch {
  box-sizing: border-box;
  margin: 0 5px 14px 0;
  padding: 0 15px;
  min-height: 48px;
  max-width: 450px;
  width: 100%;
  border: 0;
  background: #edeceb;
}

/* .uniBtnSearch
----------------------------------------------- */
.uniBtnSearch {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  margin: 0 0 14px;
  padding: 12px 20px 11px;
  min-width: 150px;
  border: 0;
  border-radius: 30px;
  background: #e1ddd3;
  color: #4f3b1a;
  text-align: center;
  text-decoration: none;
  transition: background .7s cubic-bezier(.23, 1, .32, 1), color .7s cubic-bezier(.23, 1, .32, 1);
}
.uniBtnSearch::before {
  position: relative;
  top: 3px;
  margin: 0 8px 0 0;
  width: 22px;
  height: 18px;
  background-position: -174px -69px;
  background-size: 215px auto;
}
.uniBtnSearch:hover, .uniBtnSearch:active, .uniBtnSearch:focus {
  background: rgba(225, 221, 211, .7);
  color: inherit;
}

/* .uniNavPagination
----------------------------------------------- */
.uniNavPagination {
  margin: 60px 0 30px;
  text-align: center;
  letter-spacing: -.4em;
  font-size: 1.4rem;
}
.uniNavPagination li {
  display: inline-block;
  margin: 0 0 0 10px;
  vertical-align: top;
  letter-spacing: normal;
  line-height: 1;
}
.uniNavPagination li:first-child {
  margin: 0;
}
.uniNavPagination a {
  position: relative;
  display: table;
  box-sizing: border-box;
  padding: 14px;
  width: 44px;
  height: 44px;
  border: 1px solid #c3baae;
  color: #4f3b1a;
  text-decoration: none;
  transition: opacity .5s cubic-bezier(.23, 1, .32, 1);
}
.uniNavPagination a:hover, .uniNavPagination a:active, .uniNavPagination a:focus {
  opacity: .7;
}
.uniNavPagination a span {
  display: table-cell;
  vertical-align: middle;
}
.uniNavPagination a b {
  color: #c7000d;
  font-weight: normal;
}
.uniNavPagination a:not([href]) {
  opacity: 1;
}
.uniNavPagination ul {
  margin: 0;
}
.uniNavPagination ul li {
  display: block;
  float: left;
}
.uniNavPagination .navPrev a::before, .uniNavPagination .navNext a::before {
  position: absolute;
  top: 50%;
  margin: -4px 0 0;
  width: 6px;
  height: 6px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.uniNavPagination .navPrev a::before {
  /* 一部だけ左向きに */
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.uniNavPagination .navPrev a {
  padding-left: 30px;
  width: 80px;
}
.uniNavPagination .navPrev a::before {
  left: 16px;
}
.uniNavPagination .navPrev a:not([href]) {
  opacity: .4;
}
.uniNavPagination .navNext a {
  padding-right: 18px;
  width: 80px;
}
.uniNavPagination .navNext a::before {
  right: 16px;
}
.uniNavPagination .navNext a:not([href]) {
  opacity: .4;
}
@media only screen and (max-width: 767px) {
  .uniNavPagination {
    position: relative;
    margin: 30px 0 22px;
    padding-bottom: 54px;
  }
  .uniNavPagination li {
    margin: 0 0 0 5px;
  }
  .uniNavPagination .navPrev, .uniNavPagination .navNext {
    position: absolute;
    bottom: 0;
    margin: 0;
  }
  .uniNavPagination .navPrev a, .uniNavPagination .navNext a {
    overflow: hidden;
    width: 44px;
    height: 44px;
    color: transparent;
  }
  .uniNavPagination .navPrev a span, .uniNavPagination .navNext a span {
    position: absolute;
    top: 0;
    left: 0;
  }
  .uniNavPagination .navPrev {
    left: 0;
  }
  .uniNavPagination .navPrev a::before {
    left: 21px;
  }
  .uniNavPagination .navNext {
    right: 0;
  }
  .uniNavPagination .navNext a::before {
    right: 21px;
  }
}

/* ----------------------------------------------------------------
    Uniques About
----------------------------------------------------------------- */
/* .abtMediaHero
----------------------------------------------- */
.abtMediaHero {
  background: #fbfdff;
}
.abtMediaHero > .mediaInner {
  margin: 0 auto;
  max-width: 1300px;
  text-align: center;
}
.abtMediaHero > .mediaInner > :last-child {
  margin-bottom: 0;
}

/* .abtContentFluid
----------------------------------------------- */
.abtContentFluid {
  background: url(../../about/images/index_bg_01.jpg) no-repeat #f1f3f5 50% bottom;
}
.abtContentFluid > .contentInner {
  padding-top: 55px;
  padding-bottom: 24.53846vw;
}
@media only screen and (max-width: 767px) {
  .abtContentFluid > .contentInner {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

/* .abtPanel
----------------------------------------------- */
.abtPanel {
  margin: 52px 0 30px;
}
.abtPanel .panelHdg {
  padding: 24px 10px 21px;
  border-bottom: 1px solid #f1f3f5;
  background: #fff;
  color: #444;
  text-align: center;
  font-weight: normal;
  font-size: 2.4rem;
}
.abtPanel .panelHdg span {
  position: relative;
  padding-left: 26px;
}
.abtPanel .panelHdg span::before {
  position: absolute;
}
.abtPanel .panelHdg span::before {
  top: 12px;
  left: -3px;
  width: 9px;
  height: 9px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.abtPanel .media img {
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.abtPanel a {
  text-decoration: none;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.abtPanel a:hover .media img, .abtPanel a:active .media img, .abtPanel a:focus .media img {
  opacity: .7;
}
:lang(en) .abtPanel .panelHdg span::before {
  top: 9px;
}
@media only screen and (max-width: 767px) {
  .abtPanel {
    margin-bottom: 22px;
  }
  .abtPanel .panelHdg {
    padding: 20px 10px 17px;
    font-size: 2rem;
  }
  .abtPanel .panelHdg span::before {
    top: 10px;
  }
  :lang(en) .abtPanel .panelHdg span::before {
    top: 6px;
  }
}

/* ----------------------------------------------------------------
    Uniques About
----------------------------------------------------------------- */
/* .irMediaHero
----------------------------------------------- */
.irMediaHero {
  background: #f5f7f6;
}
.irMediaHero > .mediaInner {
  margin: 0 auto;
  max-width: 1300px;
}
.irMediaHero > .mediaInner > :last-child {
  margin-bottom: 0;
}

/* .irContentFluid
----------------------------------------------- */
.irContentFluid {
  background: url(../../investor/images/index_bg_01.jpg) no-repeat #fafafa right 0;
}
.irContentFluid > .contentInner {
  padding-top: 55px;
  padding-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  .irContentFluid > .contentInner {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

/* .irContentFluid02
----------------------------------------------- */
.irContentFluid02 {
  background: url(../../investor/images/index_bg_02.jpg) no-repeat #d3d4d2 0 0;
  background-size: cover;
}
.irContentFluid02 > .contentInner {
  padding-top: 66px;
  padding-bottom: 64px;
}
@media only screen and (max-width: 767px) {
  .irContentFluid02 > .contentInner {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

/* .irContentFluid03
----------------------------------------------- */
.irContentFluid03 {
  background: #f9f8f6;
}
.irContentFluid03 > .contentInner {
  padding-top: 0;
  padding-bottom: 0;
}
.irContentFluid03 + .irContentFluid03 {
  border-top: 1px solid #e2ddd4;
}
@media only screen and (max-width: 767px) {
  .irContentFluid03 > .contentInner {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

/* .irTxtLead
----------------------------------------------- */
.irTxtLead {
  margin: 0 0 19px;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.71429;
}
.irTxtLead b {
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .irTxtLead {
    margin-bottom: 22px;
    font-size: 1.3rem;
  }
}

/* .irLinkList
----------------------------------------------- */
.irLinkList {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: -4px 0 30px;

  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}
.irLinkList li {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  box-sizing: border-box;
  margin: 4px 0 0;
  width: 50%;
}
.irLinkList li::before {
  min-width: 92px;
  background: #92846e;
}
.irLinkList li::after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.irLinkList li:nth-child(odd) {
  border-right: 2px solid transparent;
}
.irLinkList li:nth-child(even) {
  border-left: 2px solid transparent;
}
.irLinkList a {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  box-sizing: border-box;
  padding: 8px 40px 6px 50px;
  min-height: 89px;
  width: 100%;
  background: #fff;
  color: #444;
  text-decoration: none;

  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.irLinkList a::before {
  position: absolute;
  top: 50%;
  left: 27px;
  margin: -4px 0 0;
  width: 7px;
  height: 7px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.irLinkList a:hover, .irLinkList a:active, .irLinkList a:focus {
  color: #7c7c7c;
}
.irLinkList a:hover::before, .irLinkList a:active::before, .irLinkList a:focus::before {
  -webkit-transform: rotate(45deg) translate(2px, -2px);
  transform: rotate(45deg) translate(2px, -2px);
}
.irLinkList span {
  display: inline-block;
  width: 100%;
}
.irLinkList .-market::after {
  left: 19px;
  width: 52px;
  height: 48px;
  background-position: -54px -62px;
  background-size: 215px auto;
}
.irLinkList .-strength::after {
  left: 25px;
  width: 41px;
  height: 50px;
  background-position: -130px -58px;
  background-size: 215px auto;
}
.irLinkList .-position::after {
  left: 26px;
  width: 41px;
  height: 46px;
  background-position: -174px 0;
  background-size: 215px auto;
}
.irLinkList .-grow::after {
  left: 18px;
  width: 57px;
  height: 39px;
  background-position: 0 -118px;
  background-size: 215px auto;
}
.irLinkList .-dividend::after {
  left: 23px;
  width: 52px;
  height: 54px;
  background-position: 0 -62px;
  background-size: 215px auto;
}
.irLinkList .-report::after {
  left: 23px;
  width: 52px;
  height: 54px;
  background-image: url(../../investor/individual/images/com_report.gif);
  background-size:contain;
  background-repeat:no-repeat;
}
.irLinkList .-highlight::after {
  left: 23px;
  width: 52px;
  height: 54px;
  background-image: url(../../investor/individual/images/com_hilight.gif);
  background-size:contain;
  background-repeat:no-repeat;
}

@media only screen and (max-width: 767px) {
  .irLinkList {
    display: block;
    margin-bottom: 22px;
    padding: 0 15px;
  }
  .irLinkList li {
    width: auto;
  }
  .irLinkList li::before {
    min-width: 67px;
  }
  .irLinkList li:nth-child(odd), .irLinkList li:nth-child(even) {
    border: 0;
  }
  .irLinkList a {
    padding-right: 20px;
    padding-left: 30px;
    min-height: 64px;
  }
  .irLinkList a::before {
    left: 10px;
  }
  .irLinkList .-market::after {
    width: 26px;
    height: 24px;
    background-position: -27px -31px;
    background-size: 107.5px auto;
  }
  .irLinkList .-strength::after {
    width: 20.5px;
    height: 25px;
    background-position: -65px -29px;
    background-size: 107.5px auto;
  }
  .irLinkList .-position::after {
    width: 20.5px;
    height: 23px;
    background-position: -87px 0;
    background-size: 107.5px auto;
  }
  .irLinkList .-grow::after {
    width: 28.5px;
    height: 19.5px;
    background-position: 0 -59px;
    background-size: 107.5px auto;
  }
  .irLinkList .-dividend::after {
    width: 26px;
    height: 27px;
    background-position: 0 -31px;
    background-size: 107.5px auto;
  }
  .irLinkList .-report::after {
    width: 26px;
    height: 27px;
  }
  .irLinkList .-highlight::after {
    width: 26px;
    height: 27px;
  }
}

/* .irLinkList02
----------------------------------------------- */
.irLinkList02 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  border-top: 1px solid #e2ddd4;
  border-left: 1px solid #e2ddd4;

  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}
.irLinkList02 li {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  box-sizing: border-box;
  width: 25%;
  border-right: 1px solid #e2ddd4;
  border-bottom: 1px solid #e2ddd4;
}
.irLinkList02 a {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  box-sizing: border-box;
  padding: 13px 50px 12px;
  min-height: 70px;
  width: 100%;
  color: #444;
  text-decoration: none;

  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.irLinkList02 a::before {
  position: absolute;
  top: 50%;
  left: 22px;
  margin-top: -6px;
  width: 8px;
  height: 8px;
  border: 1px solid #c7000d;
  border-bottom: transparent;
  border-left: transparent;
  transition: -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1);
  transition: transform .5s cubic-bezier(.23, 1, .32, 1), -webkit-transform .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.irLinkList02 a:hover, .irLinkList02 a:active, .irLinkList02 a:focus {
  color: #7c7c7c;
  text-decoration: underline;
}
.irLinkList02 a:hover::before, .irLinkList02 a:active::before, .irLinkList02 a:focus::before {
  -webkit-transform: translateX(3px) rotate(45deg);
  transform: translateX(3px) rotate(45deg);
}
.irLinkList02 span {
  display: inline-block;
  width: 100%;
  text-align: center;
}
.uniGrid + .irLinkList02 {
  margin-top: 55px;
}
@media only screen and (max-width: 767px) {
  .irLinkList02 li {
    width: calc(100% / 2);
  }
  .irLinkList02 a {
    padding-right: 10px;
    padding-left: 33px;
    min-height: 0;
  }
  .irLinkList02 a::before {
    left: 11px;
  }
  .uniGrid + .irLinkList02 {
    margin-top: 30px;
  }
}

/* .irGrid
----------------------------------------------- */
.irGrid {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;

  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}
.irGrid > .gridCol {
  box-sizing: border-box;
  padding: 50px 50px 46px 0;
  width: 50%;
}
.irGrid > .gridCol:nth-child(even) {
  padding: 50px 0 46px 50px;
  border-left: 1px solid #e2ddd4;
}
.irGrid > .gridCol > :last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .irGrid {
    display: block;
    margin: 0 -15px 22px;
  }
  .irGrid > .gridCol {
    margin: 0 0 40px;
    padding: 0 15px;
    width: auto;
  }
  .irGrid > .gridCol:nth-child(even) {
    margin: 0;
    padding: 43px 15px 0;
    border: 0;
    border-top: 1px solid #e2ddd4;
  }
}

/* ----------------------------------------------------------------
    Uniques Sustainability
----------------------------------------------------------------- */
/* .sstMediaHero
----------------------------------------------- */
.sstMediaHero {
  background: #fafafa;
}
.sstMediaHero > .mediaInner {
  margin: 0 auto;
  max-width: 1300px;
}
.sstMediaHero > .mediaInner > :last-child {
  margin-bottom: 0;
}

/* .sstContentFluid
----------------------------------------------- */
.sstContentFluid {
  background: url(../../sustainability/images/index_bg_01.jpg) no-repeat #fff 0 bottom;
}
.sstContentFluid > .contentInner {
  padding-top: 65px;
  padding-bottom: 92px;
}
@media only screen and (max-width: 767px) {
  .sstContentFluid {
    background-image: none;
  }
  .sstContentFluid > .contentInner {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

/* .sstContentFluid02
----------------------------------------------- */
.sstContentFluid02 {
  background: #f9f8f6;
}
.sstContentFluid02 > .contentInner {
  padding-top: 50px;
  padding-bottom: 35px;
}
.sstContentFluid02 + .sstContentFluid02 {
  border-top: 1px solid #e2ddd4;
}
@media only screen and (max-width: 767px) {
  .sstContentFluid02 > .contentInner {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

/* .sstContentFluid03
----------------------------------------------- */
.sstContentFluid03 {
  border-top: 1px solid #e2ddd4;
}
.sstContentFluid03 > .contentInner {
  padding-top: 44px;
  padding-bottom: 58px;
}
@media only screen and (max-width: 767px) {
  .sstContentFluid03 > .contentInner {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

/* .sstGrid
----------------------------------------------- */
.sstGrid {
  position: relative;
  margin: 0 0 30px;
}
.sstGrid > .gridCol, .sstGrid > .gridCol02 {
  float: left;
}
.sstGrid > .gridCol > :last-child, .sstGrid > .gridCol02 > :last-child {
  margin-bottom: 0;
}
.sstGrid[data-col='2'] {
  margin-left: -5.66038%;
}
.sstGrid[data-col='2'] > .gridCol {
  float: left;
  margin-left: 5.35714%;
  width: 41.96429%;
}
.sstGrid[data-col='2'] > .gridCol02 {
  float: left;
  margin-left: 5.35714%;
  width: 47.32143%;
}
@media only screen and (max-width: 767px) {
  .sstGrid {
    margin-left: 0 !important;
  }
  .sstGrid > .gridCol, .sstGrid > .gridCol02 {
    float: none;
    margin-left: 0 !important;
    width: 100% !important;
  }
  .sstGrid > .gridCol {
    margin: 0 0 25px;
  }
}

/* .sstTxtLead
----------------------------------------------- */
.sstTxtLead {
  text-align: center;
  font-size: 2rem;
}
.sstTxtLead strong {
  color: inherit;
}
@media only screen and (max-width: 767px) {
  .sstTxtLead {
    font-size: 1.6rem;
  }
}

/* .sstLinkDesc
----------------------------------------------- */
.sstLinkDesc a {
  display: table;
  width: 100%;
  text-decoration: none;
  transition: opacity .5s cubic-bezier(.23, 1, .32, 1);
}
.sstLinkDesc a:hover, .sstLinkDesc a:active, .sstLinkDesc a:focus {
  opacity: .7;
}
.sstLinkDesc dd {
  margin: 13px 0 0;
}
.sstLinkDesc .linkMedia, .sstLinkDesc .linkTxt {
  display: table-cell;
  vertical-align: middle;
}
.sstLinkDesc .linkMedia {
  padding: 0 48px 0 0;
  width: 188px;
}
.sstLinkDesc .linkTxt span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 32px;
  color: #4f3b1a;
  font-size: 2.2rem;
}
.sstLinkDesc .linkTxt span::before, .sstLinkDesc .linkTxt span::after {
  position: absolute;
  top: 50%;
  line-height: 1;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.sstLinkDesc .linkTxt span::before {
  left: 0;
  width: 16px;
  height: 16px;
  border-radius: 2px;
  background: #6f6351;
}
.sstLinkDesc .linkTxt span::after {
  left: 4px;
  margin: -3px 0 0;
  width: 5px;
  height: 5px;
  border: 1px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media only screen and (max-width: 767px) {
  .sstLinkDesc .linkMedia {
    padding-right: 20px;
    width: 125px;
  }
  .sstLinkDesc .linkTxt span {
    font-size: 1.8rem;
  }
  .sstLinkDesc .linkTxt span::before {
    margin: -2px 0 0;
  }
  .sstLinkDesc .linkTxt span::after {
    margin: -5px 0 0;
  }
}

/* ----------------------------------------------------------------
    Uniques Newsroom
----------------------------------------------------------------- */
/* .nrMediaHero
----------------------------------------------- */
.nrMediaHero {
  background: #fafafa;
}
.nrMediaHero > .mediaInner {
  margin: 0 auto;
  max-width: 1300px;
}
.nrMediaHero > .mediaInner > :last-child {
  margin-bottom: 0;
}

/* .nrContentFluid
----------------------------------------------- */
.nrContentFluid > .contentInner {
  padding-top: 62px;
  padding-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .nrContentFluid > .contentInner {
    padding-top: 30px;
  }
}

/* .nrContentFluid02
----------------------------------------------- */
.nrContentFluid02 > .contentInner {
  padding-top: 37px;
  padding-bottom: 67px;
}
:lang(en) .nrContentFluid02 > .contentInner {
  padding-bottom: 37px;
}
:lang(en) .nrContentFluid02 + .nrContentFluid02 > .contentInner {
  padding-top: 0;
}
@media only screen and (max-width: 767px) {
  .nrContentFluid02 > .contentInner {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  :lang(en) .nrContentFluid02 + .nrContentFluid02 > .contentInner {
    padding-top: 37px;
    border-top: 1px solid #e2ddd4;
  }
}

/* .nrListInfo
----------------------------------------------- */
.nrListInfo li {
  margin: 0 0 20px;
  padding: 0 0 20px;
  border-bottom: 1px solid #e1ddd3;
}
.nrListInfo li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0;
}
.nrListInfo li > :last-child {
  margin-bottom: 0;
}
.nrListInfo .listDate {
  margin: 0 0 10px;
  color: #434343;
  font-size: 1.4rem;
}
.nrListInfo .mediaLyt > .mediaItem {
  width: 188px;
}
.nrListInfo .mediaLyt._noImg > .mediaCol {
  margin: 0 0 0 208px;
}
.nrListInfo a {
  text-decoration: none;
}
.nrListInfo a:hover, .nrListInfo a:active, .nrListInfo a:focus {
  text-decoration: underline;
}
@media only screen and (max-width: 767px) {
  .nrListInfo li {
    margin: 0 0 15px;
    padding: 0 10px 15px;
  }
  .nrListInfo .listDate {
    margin-bottom: 7px;
  }
  .nrListInfo .mediaLyt > .mediaItem {
    margin-bottom: 6px !important;
    width: auto;
  }
  .nrListInfo .mediaLyt._noImg > .mediaCol {
    margin-left: 0;
  }
}

/* .nrGrid
----------------------------------------------- */
.nrGrid {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;

  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  /* EN の場合
  ----------------------------------------------- */
}
.nrGrid > .gridCol {
  box-sizing: border-box;
  padding: 50px 50px 46px 0;
  width: 50%;
}
.nrGrid > .gridCol:nth-child(even) {
  padding: 50px 0 46px 50px;
  border-left: 1px solid #e2ddd4;
}
.nrGrid > .gridCol > :last-child {
  margin-bottom: 0;
}
:lang(en) .nrGrid > .gridCol:nth-child(even) {
  padding-right: 50px;
  border-left: none;
}
:lang(en) .nrGrid > .gridCol:nth-child(odd) {
  padding: 50px 50px 46px 0;
  border-right: 1px solid #e2ddd4;
}
@media only screen and (max-width: 767px) {
  .nrGrid {
    display: block;
    margin: 0 -15px 22px;
    /* EN の場合
      ----------------------------------------------- */
  }
  .nrGrid > .gridCol {
    margin: 0 0 40px;
    padding: 0 15px;
    width: auto;
  }
  .nrGrid > .gridCol:nth-child(even) {
    margin: 0;
    padding: 43px 15px 0;
    border-top: 1px solid #e2ddd4;
    border-left: 0;
  }
  :lang(en) .nrGrid > .gridCol:nth-child(even) {
    margin: 0;
  }
  :lang(en) .nrGrid > .gridCol:nth-child(odd) {
    margin: 0 0 40px;
    padding: 0 15px;
    border-right: 0;
  }
}

/* ----------------------------------------------------------------
    Uniques Recruit
----------------------------------------------------------------- */
/* .rctMediaHero
----------------------------------------------- */
.rctMediaHero {
  background: #ebe7e1;
}
.rctMediaHero > .mediaInner {
  margin: 0 auto;
  max-width: 1300px;
}
.rctMediaHero > .mediaInner > :last-child {
  margin-bottom: 0;
}

/* .rctLinkDesc
----------------------------------------------- */
.rctLinkDesc a {
  display: table;
  width: 100%;
  text-decoration: none;
  transition: opacity .5s cubic-bezier(.23, 1, .32, 1);
}
.rctLinkDesc a:hover, .rctLinkDesc a:active, .rctLinkDesc a:focus {
  opacity: .7;
}
.rctLinkDesc dd {
  margin: 13px 0 0;
}
.rctLinkDesc .linkMedia, .rctLinkDesc .linkTxt {
  display: table-cell;
  vertical-align: middle;
}
.rctLinkDesc .linkMedia {
  padding: 0 48px 0 0;
  width: 188px;
}
.rctLinkDesc .linkTxt span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 32px;
  color: #4f3b1a;
  font-size: 2.2rem;
}
.rctLinkDesc .linkTxt span::before, .rctLinkDesc .linkTxt span::after {
  position: absolute;
  top: 50%;
  line-height: 1;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.rctLinkDesc .linkTxt span::before {
  left: 0;
  width: 16px;
  height: 16px;
  border-radius: 2px;
  background: #6f6351;
}
.rctLinkDesc .linkTxt span::after {
  left: 4px;
  margin: -3px 0 0;
  width: 5px;
  height: 5px;
  border: 1px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media only screen and (max-width: 767px) {
  .rctLinkDesc .linkMedia {
    padding-right: 20px;
    width: 125px;
  }
  .rctLinkDesc .linkTxt span {
    font-size: 1.8rem;
  }
  .rctLinkDesc .linkTxt span::before {
    margin: -2px 0 0;
  }
  .rctLinkDesc .linkTxt span::after {
    margin: -5px 0 0;
  }
}

/* ----------------------------------------------------------------
    Content
----------------------------------------------------------------- */
/* .content
----------------------------------------------- */
.content._col2, .content._form, .content._external, .content._search {
  background-color: #fff;
  background-image: linear-gradient(to top,#fff 0, #f4f2ee 100%);
  background-size: 100% 319px;
  background-repeat: no-repeat;
}
@media only screen and (max-width: 767px) {
  .content:not(._top):not(._form):not(._external) {
    margin: 30px 0 0;
  }
  .content._col2 {
    margin-top: 0 !important;
  }
}

/* .contentFluid
----------------------------------------------- */
.contentFluid {
  background: #fff;
}
.content._col2 .contentFluid, .content._form .contentFluid, .content._external .contentFluid, .content._search .contentFluid {
  background: transparent;
}

/* .contentFluid02
----------------------------------------------- */
.contentFluid02 {
  background: #f9f8f6;
}

/* .contentInner
----------------------------------------------- */
.contentInner {
  margin: 0 auto;
  padding-top: 60px;
  padding-bottom: 56px;
  max-width: 1060px;
  text-align: left;
}
@media only screen and (max-width: 860px) {
  .contentInner {
    width: auto;
  }
}
@media only screen and (max-width: 1060px) {
  .contentInner {
    padding-right: 15px;
    padding-left: 15px;
  }
}
.contentInner > :first-child:not(.grid) {
  margin-top: 0;
}
.contentInner > :last-child {
  margin-bottom: 0;
}
.content._form .contentInner {
  box-sizing: border-box;
  padding: 40px 30px 66px;
}
.content._external .contentInner {
  padding-top: 150px;
}
@media only screen and (max-width: 767px) {
  .contentInner {
    padding: 30px 15px;
  }
  .content._form .contentInner {
    padding: 20px 15px 33px;
  }
  .content._external .contentInner {
    padding-top: 70px;
  }
}

/* ----------------------------------------------------------------
    Content (2 column)
----------------------------------------------------------------- */
/* .contentPrimary
----------------------------------------------- */
.contentPrimary > :first-child:not(.grid):not(.btnPrint):not(.btnList02) {
  margin-top: 0;
}
.contentPrimary > :last-child {
  margin-bottom: 0;
}
.content._col2 .contentPrimary {
  float: left;
  width: 73.58491%;
}
@media only screen and (max-width: 767px) {
  .content._col2 .contentPrimary {
    float: none;
    width: auto;
  }
}
@media print {
  .content._col2 .contentPrimary {
    float: none;
    width: 100%;
  }
}

/* .contentSecondary
----------------------------------------------- */
.contentSecondary > :first-child {
  margin-top: 0;
}
.contentSecondary > :last-child {
  margin-bottom: 0;
}
.content._col2 .contentSecondary {
  float: right;
  width: 23.58491%;
}
@media only screen and (max-width: 767px) {
  .contentSecondary {
    margin-top: 20px;
  }
  .content._col2 .contentSecondary {
    float: none;
    width: auto;
  }
}
@media print {
  .contentSecondary {
    display: none;
  }
}

/* .news
----------------------------------------------- */
.tab .tabList li.current a {
opacity:1;
}
.non {
display: none;
}

.tab .tabList.categoryTab{
margin-bottom:15px;

}
.tab .tabList.companyTab{
margin-bottom:40px;
}

.tab .tabList.categoryTab li a,
.tab .tabList.companyTab li a {
background: #f0f0f0;
color: #4f3b1a !important;
}
.tab .tabList.categoryTab li a{
	padding: 10px 5px;
	font-size: 0.8em;
}
.tab .tabList.companyTab li a {
	font-size:0.8em;
	padding: 11px 5px 8px;
}
.tab .tabList.categoryTab li.-all a{
background: rgb(194,183,168);
}
.tab .tabList.categoryTab li.-all.current a{
border-bottom-color: rgb(146,132,110);
}
.tab .tabList.categoryTab li.-goods a{
background: rgb(172,210,230);
}
.tab .tabList.categoryTab li.-goods.current a{
border-bottom-color: rgb(109,179,212);
}
.tab .tabList.categoryTab li.-management a{
background: rgb(203,214,145);
}
.tab .tabList.categoryTab li.-management.current a{
border-bottom-color: rgb(159,194,56);
}
.tab .tabList.categoryTab li.-ir a{
background: rgb(140,163,192);
}
.tab .tabList.categoryTab li.-ir.current a{
border-bottom-color: rgb(53,113,155);
}
.tab .tabList.categoryTab li.-csr a{
background: rgb(191,171,194);
}
.tab .tabList.categoryTab li.-csr.current a{
border-bottom-color: rgb(154,120,155);
}
.tab .tabList.categoryTab li.-recruit a{
background: rgb(228,185,205);
}
.tab .tabList.categoryTab li.-recruit.current a{
border-bottom-color: rgb(209,137,169);
}
.tab .tabList.categoryTab li.-asset a{
background: rgb(231,191,131);
}
.tab .tabList.categoryTab li.-asset.current a{
border-bottom-color: rgb(213,149,51);
}
.tab .tabList.categoryTab li.-other a{
background: rgb(235,215,141);
}
.tab .tabList.categoryTab li.-other.current a{
border-bottom-color: rgb(219,189,54);
}
.tab .tabList.companyTab li.current a {
border-bottom-color: #c7000d;
}

@media only screen and (max-width: 767px) {
  .tab .tabList.categoryTab ,
  .tab .tabList.companyTab {
    display: block;
  }
  .tab .tabList.categoryTab{
    margin-bottom:10px;
  }
  .tab .tabList.categoryTab li,
  .tab .tabList.companyTab li {
    display: inline-block;
    padding-right: 0;
    margin-bottom: 5px;
  }
  .tab .tabList.categoryTab li a,
  .tab .tabList.companyTab li a {
    padding: 5px 15px;
  }
  .tab .tabList.companyTab{
    margin-bottom:0px;
  }
}

/* footerSns
----------------------------------------------- */
.footerSns{
  border-bottom: 1px solid #e2ddd4;
  background-color: #fff;
  padding: 40px 15px;
}
.footerSns_title{
  font-size: 2.2rem;
  font-weight: bold;
  text-align: center;
  color: #4f3b1a;
}
.footerSns_title span{
  font-size: 2.6rem;
}
.footerSns_listInner{
  max-width: 300px;
  margin: 0 auto;
}
.footerSns_list{
  margin-top: 40px;
  margin-bottom: 0;
  display: flex;
  justify-content: space-between;
}
.footerSns_list li a{
  display: block;
  transition: 0.3s;
}
.footerSns_list li a:hover{
  opacity: 0.7;
}
.footerSns_link{
  margin-top: 40px;
  text-align: center;
}
.footerSns_link a{
  position: relative;
  display: inline-block;
  padding-left: 1.2em;
  text-decoration: none;
  color: #444;
}
.footerSns_link a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 6px;
  height: 6px;
  border-top: 1px solid #c7000d;
  border-right: 1px solid #c7000d;
  transform: rotate(45deg);
  margin: auto 0;
  transition: all 0.5s;
}
.footerSns_link a:hover{
  text-decoration: underline;
}
.footerSns_link a:hover::before {
  left: 3px;
}

@media only screen and (max-width: 767px) {
  .footerSns{
    padding: 40px 10px 10px;
    border-bottom: none;
  }
  .footerSns_inner{
    max-width: 200px;
  }
  .footerSns_title{
    font-size: 1.6rem;
  }
  .footerSns_title span{
    font-size: 2rem;
  }
}


/* ----------------------------------------------------------------
    Helpers
----------------------------------------------------------------- */
/* Control Align
----------------------------------------------- */
.left {
  text-align: left !important;
}

.center {
  margin-right: auto !important;
  margin-left: auto !important;
  text-align: center !important;
}

.right {
  text-align: right !important;
}

.top {
  vertical-align: top !important;
}

.middle {
  vertical-align: middle !important;
}

.bottom {
  vertical-align: bottom !important;
}

/* Control Width
----------------------------------------------- */
.w5 {
  width: 5% !important;
}

.w10 {
  width: 10% !important;
}

.w15 {
  width: 15% !important;
}

.w20 {
  width: 20% !important;
}

.w25 {
  width: 25% !important;
}

.w30 {
  width: 30% !important;
}

.w35 {
  width: 35% !important;
}

.w40 {
  width: 40% !important;
}

.w45 {
  width: 45% !important;
}

.w50 {
  width: 50% !important;
}

.w55 {
  width: 55% !important;
}

.w60 {
  width: 60% !important;
}

.w65 {
  width: 65% !important;
}

.w70 {
  width: 70% !important;
}

.w75 {
  width: 75% !important;
}

.w80 {
  width: 80% !important;
}

.w85 {
  width: 85% !important;
}

.w90 {
  width: 90% !important;
}

.w95 {
  width: 95% !important;
}

.w100 {
  width: 100% !important;
}

/* Control Margin and Padding
----------------------------------------------- */
.pTop0 {
  padding-top: 0 !important;
}

.pRight0 {
  padding-right: 0 !important;
}

.pBottom0 {
  padding-bottom: 0 !important;
}

.pLeft0 {
  padding-left: 0 !important;
}

.mTop0 {
  margin-top: 0 !important;
}

.mRight0 {
  margin-right: 0 !important;
}

.mBottom0 {
  margin-bottom: 0 !important;
}

.mLeft0 {
  margin-left: 0 !important;
}

.pTop5 {
  padding-top: 5px !important;
}

.pRight5 {
  padding-right: 5px !important;
}

.pBottom5 {
  padding-bottom: 5px !important;
}

.pLeft5 {
  padding-left: 5px !important;
}

.mTop5 {
  margin-top: 5px !important;
}

.mRight5 {
  margin-right: 5px !important;
}

.mBottom5 {
  margin-bottom: 5px !important;
}

.mLeft5 {
  margin-left: 5px !important;
}

.pTop10 {
  padding-top: 10px !important;
}

.pRight10 {
  padding-right: 10px !important;
}

.pBottom10 {
  padding-bottom: 10px !important;
}

.pLeft10 {
  padding-left: 10px !important;
}

.mTop10 {
  margin-top: 10px !important;
}

.mRight10 {
  margin-right: 10px !important;
}

.mBottom10 {
  margin-bottom: 10px !important;
}

.mLeft10 {
  margin-left: 10px !important;
}

.pTop15 {
  padding-top: 15px !important;
}

.pRight15 {
  padding-right: 15px !important;
}

.pBottom15 {
  padding-bottom: 15px !important;
}

.pLeft15 {
  padding-left: 15px !important;
}

.mTop15 {
  margin-top: 15px !important;
}

.mRight15 {
  margin-right: 15px !important;
}

.mBottom15 {
  margin-bottom: 15px !important;
}

.mLeft15 {
  margin-left: 15px !important;
}

.pTop20 {
  padding-top: 20px !important;
}

.pRight20 {
  padding-right: 20px !important;
}

.pBottom20 {
  padding-bottom: 20px !important;
}

.pLeft20 {
  padding-left: 20px !important;
}

.mTop20 {
  margin-top: 20px !important;
}

.mRight20 {
  margin-right: 20px !important;
}

.mBottom20 {
  margin-bottom: 20px !important;
}

.mLeft20 {
  margin-left: 20px !important;
}

.pTop25 {
  padding-top: 25px !important;
}

.pRight25 {
  padding-right: 25px !important;
}

.pBottom25 {
  padding-bottom: 25px !important;
}

.pLeft25 {
  padding-left: 25px !important;
}

.mTop25 {
  margin-top: 25px !important;
}

.mRight25 {
  margin-right: 25px !important;
}

.mBottom25 {
  margin-bottom: 25px !important;
}

.mLeft25 {
  margin-left: 25px !important;
}

.pTop30 {
  padding-top: 30px !important;
}

.pRight30 {
  padding-right: 30px !important;
}

.pBottom30 {
  padding-bottom: 30px !important;
}

.pLeft30 {
  padding-left: 30px !important;
}

.mTop30 {
  margin-top: 30px !important;
}

.mRight30 {
  margin-right: 30px !important;
}

.mBottom30 {
  margin-bottom: 30px !important;
}

.mLeft30 {
  margin-left: 30px !important;
}

.pTop35 {
  padding-top: 35px !important;
}

.pRight35 {
  padding-right: 35px !important;
}

.pBottom35 {
  padding-bottom: 35px !important;
}

.pLeft35 {
  padding-left: 35px !important;
}

.mTop35 {
  margin-top: 35px !important;
}

.mRight35 {
  margin-right: 35px !important;
}

.mBottom35 {
  margin-bottom: 35px !important;
}

.mLeft35 {
  margin-left: 35px !important;
}

.pTop40 {
  padding-top: 40px !important;
}

.pRight40 {
  padding-right: 40px !important;
}

.pBottom40 {
  padding-bottom: 40px !important;
}

.pLeft40 {
  padding-left: 40px !important;
}

.mTop40 {
  margin-top: 40px !important;
}

.mRight40 {
  margin-right: 40px !important;
}

.mBottom40 {
  margin-bottom: 40px !important;
}

.mLeft40 {
  margin-left: 40px !important;
}

.bold {
  font-weight: bold !important;
}

/* .Wba
----------------------------------------------- */
.Wba{
word-break: break-all;
}

/* .Of-scroll
----------------------------------------------- */
.Of-scroll{
overflow-x:scroll}

.Of-scroll-tlf{
table-layout: fixed;
}

/* Control OverFlow-Size
----------------------------------------------- */
.Of-scroll-50{
width: 50px;
}
.Of-scroll-75{
width: 75px;
}
.Of-scroll-100{
width: 100px;
}
.Of-scroll-150{
width: 150px;
}
.Of-scroll-200{
width: 200px;
}
.Of-scroll-250{
width: 250px;
}
.Of-scroll-300{
width: 300px;
}
.Of-scroll-350{
width: 350px;
}
.Of-scroll-400{
width: 400px;
}
.Of-scroll-450{
width: 450px;
}
.Of-scroll-500{
width: 500px;
}
.Of-scroll-550{
width: 550px;
}
.Of-scroll-600{
width: 600px;
}
.Of-scroll-650{
width: 650px;
}
.Of-scroll-700{
width: 700px;
}
.Of-scroll-800{
width: 800px;
}
.Of-scroll-850{
width: 850px;
}
.Of-scroll-1700{
width: 1700px;
}

/* initiative social_contribution
----------------------------------------------- */
.initiative {
  background: #f8f7f4;
  padding-top: 15px;
  margin-left: 15px;
  margin-right: 15px;
  height: 100%;
}

.initiative-heading_2row {
  display: flex;
  justify-content: center;
  text-align: center;
  margin-top: 10px;
  margin-bottom: 10px;
  height: 0 auto;
}

.initiative-heading_3row {
  display: flex;
  justify-content: center;
  text-align: center;
  margin-top: 10px;
  margin-bottom: 10px;
  height: 80px;
}

.initiative-heading_4row {
display: flex;
justify-content: center;
text-align: center;
margin-top: 10px;
margin-bottom: 10px;
height: 100px;
}

.initiative-col {
  height: 180px;
  margin-bottom: 20px;
}

.initiative-img {
  display: flex;
  justify-content: center;
  width: 100%;
  height: 100%;
  max-height: 180px;
  max-width: 90%;
  margin: auto auto;
}

.initiative-text {
  vertical-align:baseline;
  display: flex;
  margin-left: 20px;
  margin-right: 20px;
}

/* ボーダー削除
----------------------------------------------- */
.borderT-n {
  border-top: none !important;
}
.borderB-n {
  border-bottom: none !important;
}
.borderL-n {
  border-left: none !important;
}
.borderR-n {
  border-right: none !important;
}
