@charset "UTF-8";
/* common color
----------------------------------------------------------------------------*/
/* border
----------------------------------------------------------------------------*/
/* media query mixin
----------------------------------------------------------------------------*/
/*≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡

container

≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡*/
/*==default==*/
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

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

ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

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

input,
select {
  vertical-align: middle;
}

select::-ms-expand {
  display: none;
}

/*---------------------------------------------
basic style
---------------------------------------------*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  word-break: break-word;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

ol,
ul {
  list-style: none;
}

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

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

a img {
  border: none;
}

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

dl,
dt,
dd,
ol,
ul,
li,
p,
th,
td,
a,
li p {
  /*	font-size: 1.4rem;*/
  line-height: 1.7;
}

html,
body {
  width: 100%;
  margin: auto;
  min-height: 100%;
}

html {
  font-size: 0.625rem;
  position: relative;
  height: 100%;
  /*     overflow: hidden;*/
}

body {
  min-width: 320px;
  min-height: 100%;
  font-size: 88%;
  position: relative;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Helvetica Neue",
    YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial,
    "メイリオ", Meiryo, sans-serif;
  /*	line-height: 1.0;*/
  color: #000000;
  -webkit-text-size-adjust: 100%;
  font-size: 1.6rem;
}

input[type="text"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="number"],
textarea,
select,
button {
  line-height: 1.5 !important;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic,
    "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo,
    sans-serif;
  display: inline-block;
  vertical-align: middle;
  background: #fff;
  border: none;
}

input[type="submit"],
input[type="reset"],
input[type="button"],
button {
  line-height: 1.5 !important;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic,
    "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo,
    sans-serif;
  border-radius: 0;
  cursor: pointer;
}

*[type="button"]:hover,
*[type="submit"]:hover {
  cursor: pointer;
  opacity: 0.6;
}

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

/* input type="button" input type="submit"  */
a {
  color: #000000;
  text-decoration: none;
  transition: all 0.5s;
}

a:hover {
  color: #005c9c !important;
  cursor: pointer;
  transition: all 0.5s;
}
a:hover img {
  opacity: 0.6;
}

a:focus {
  outline: none;
}

*:active {
  opacity: 1 !important;
}

*:hover {
  transition: all 0.5s;
}

/* clearfix */
.cf:before,
.cf:after {
  content: "";
  display: table;
}

.cf:after {
  clear: both;
}

.cf {
  *zoom: 1;
}

img {
  margin: 0;
  padding: 0;
  vertical-align: middle;
  max-width: 100%;
  width: 100%;
  height: auto;
}

img.auto {
  width: auto;
}

* {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

@font-face {
  font-family: "icomoon";
  src: url("fonts/icomoon.eot?x51xcc");
  src: url("fonts/icomoon.eot?x51xcc#iefix") format("embedded-opentype"),
    url("fonts/icomoon.ttf?x51xcc") format("truetype"),
    url("fonts/icomoon.woff?x51xcc") format("woff"),
    url("fonts/icomoon.svg?x51xcc#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}
[class^="link"]::before,
[class^="link"]::after,
[class*="link"]::before,
[class*="link"]::after,
[class^="icon-"],
[class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-other01:before {
  content: "\e900";
}

/*==header==*/
/*============================================================================
header
============================================================================*/
@media screen and (max-width: 980px) {
  header {
    padding: 0;
  }
}
div.ccm-page header .innerWrap {
  display: table;
  width: 100%;
  padding: 15px;
  box-sizing: border-box;
}
@media screen and (max-width: 980px) {
  header .innerWrap {
    padding: 15px 0 0;
  }
}
header .innerWrap > .elem {
  display: table-cell;
}
@media screen and (max-width: 980px) {
  header .innerWrap > .elem {
    display: block;
  }
}
header .innerWrap > .elem.otherLink {
  text-align: right;
  /*
      padding-right: 70px;
	  */
}
header .innerWrap .logo {
  width: 30%;
}
@media screen and (max-width: 980px) {
  header .innerWrap .logo {
    width: 50%;
    padding-left: 15px;
  }
}
header .innerWrap .mainNav {
  padding: 0 50px;
}
@media screen and (max-width: 980px) {
  header .innerWrap .mainNav {
    padding: 10px 0 0;
    margin-top: 10px;
    width: 100%;
    /*
        overflow-x: scroll;
		*/
  }
}
header .innerWrap .mainNav ul {
  display: flex;
}
@media screen and (max-width: 980px) {
  header .innerWrap .mainNav ul {
    width: 150%;
    border-top: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
    padding: 10px 0;
  }
}
header .innerWrap .mainNav ul li {
  text-align: center;
  display: inline-block;
  width: calc(100% / 4);
}
header .innerWrap .mainNav ul li a {
  display: block;
  padding-bottom: 5px;
  position: relative;
  font-size: 1.4rem;
}
header .innerWrap .mainNav ul li a.active::before {
  content: "";
  width: 10px;
  height: 1px;
  background: #333;
  /*
			background:#d99300;
			*/

  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
header .innerWrap .linkList {
  display: inline-block;
}
@media screen and (max-width: 980px) {
  header .innerWrap .linkList {
    display: none;
  }
}
header .innerWrap .linkList > .elem {
  display: inline-block;
  margin-right: 25px;
  position: relative;
  text-align: right;
}
header .innerWrap .linkList > .elem a {
  color: #666666;
  font-size: 1.4rem;
}
header .innerWrap .linkList > .elem .langBox {
  display: none;
  position: absolute;
  text-align: center;
  background-color: black;
  top: auto;
  left: -20px;
  width: 180%;
  text-align: center;
  background-color: black;
  z-index: 99;
}
header .innerWrap .linkList > .elem .langBox ul li {
  border-bottom: 1px solid #fff;
}
header .innerWrap .linkList > .elem .langBox ul li:last-of-type {
  border-bottom: 0;
}
header .innerWrap .linkList > .elem .langBox ul li a {
  display: block;
  color: #fff;
  padding: 5px;
  text-align: center;
}
header .innerWrap .linkList > .elem .langBox.open {
  display: block;
}

.menu-trigger {
  position: absolute;
  display: none;
  width: 48px;
  height: 19px;
  vertical-align: middle;
  cursor: pointer;
  top: 20px;
  right: 30px;
  z-index: 100;
  transform: translateX(0);
  transition: 0.2s;
}
@media screen and (max-width: 980px) {
  .menu-trigger {
    display: inline-block;
    position: absolute;
    right: 15px;
  }
}
.menu-trigger span {
  display: inline-block;
  box-sizing: border-box;
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #666666;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 9px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}
.menu-trigger.-active {
  width: 38px;
  height: 25px;
  transition: 0.2s;
}
.menu-trigger.-active span {
  background-color: #fff;
}
.menu-trigger.-active span:nth-of-type(1) {
  transform: translateY(12px) rotate(-45deg);
}
.menu-trigger.-active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.-active span:nth-of-type(3) {
  transform: translateY(-12px) rotate(45deg);
}

.overlay {
  content: "";
  display: block;
  width: 0;
  height: 0;
  background-color: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  opacity: 0;
  transition: opacity 0.5s;
}
.overlay.open {
  width: 100%;
  height: 100%;
  opacity: 1;
}

.subNav {
  width: 300px;
  height: 100%;
  padding-top: 100px;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10;
  transform: translate(300px);
  transition: all 0.5s;
  background-color: rgba(0, 0, 0, 0.8);
  color: #fff;
  padding: 110px 20px 20px;
  box-sizing: border-box;
}
.subNav.open {
  transform: translateZ(0);
}
.subNav a {
  color: #fff;
  font-size: 1.4rem;
}
.subNav a.home {
  font-size: 1.6rem;
}
.subNav .elem {
  display: block;
}
.subNav .elem dt {
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid #fff;
}
.subNav .fixed {
  margin-top: 40px;
}

/*==main.wrapper==*/
body {
  overflow-y: scroll;
}
body .open {
  overflow-y: hidden;
}

.container {
  height: 100%;
  min-height: 100vh;
  padding: 0;
  transition: all 0.5s;
  margin: auto;
}

.contents {
  width: 100%;
  padding-bottom: 60px;
  line-height: 2;
}
.contents > section {
  margin-bottom: 100px;
}

.innerWrap {
  width: 980px;
  margin: auto;
}
@media screen and (max-width: 980px) {
  .innerWrap {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
  }
}

.lag {
  padding: 15px;
}
.lag.-bg {
  padding: 40px 0;
}
.lag.-beige {
  background: #f6f5f1;
}

.leadArea {
  text-align: center;
}

/*-----breadCrumbs------*/
.breadCrumbs {
  background-color: #f5f5f5;
  margin-bottom: 30px !important;
}
.breadCrumbs .innerWrap {
  padding-top: 10px;
  padding-bottom: 10px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.breadCrumbs .innerWrap .links li,
#bread_ecofur .links li {
  float: left;
  font-size: 1.2rem;
  color: #666666;
}
.breadCrumbs .innerWrap .links li:after,
#bread_ecofur .links li:after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 1px #666666;
  border-right: solid 1px #666666;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  margin: -3px 10px 0;
}
.breadCrumbs .innerWrap .links li:last-of-type:after,
#bread_ecofur .links li:last-of-type:after {
  display: none;
}
.breadCrumbs .innerWrap .links li a,
#bread_ecofur .links li a {
  font-size: 1.2rem;
  text-decoration: none;
  color: #666666;
}
.breadCrumbs
  .innerWrap
  .links
  li.home
  a
  img.#bread_ecofur
  .links
  li.home
  a
  img {
  width: 14px;
  vertical-align: text-top;
}

/*-mq-*/
@media screen and (max-width: 768px) {
  #breadCrumbs .inner {
    width: 100%;
    padding: 10px 20px;
  }
}
/*線*/
.line.-colorBlk {
  border-color: #000000;
}
.line.colorGray {
  border-color: #cccccc;
}
.line.colorBlue {
  border-color: #005c9c;
}

/*テキストカラー*/
.letter.-colorRed {
  color: #d53030;
}
.letter.-colorBlue {
  color: #005c9c;
}

/*見出し*/
.title {
  font-weight: bold;
  line-height: 1.5;
}
* + .title {
  margin-top: 50px;
}
.title + * {
  margin-top: 0;
}
.title.-center {
  text-align: center;
}
.title.-line {
  display: block;
  padding-bottom: 20px;
  border-bottom: 1px solid #000000;
}
.title.-xlarge01 {
  font-size: 3.2rem;
  text-align: center;
  margin-bottom: 50px;
}
@media screen and (max-width: 980px) {
  .title.-xlarge01 {
    font-size: 2.4rem;
    letter-spacing: 4px;
    margin-bottom: 30px;
  }
}
.title.-xlarge01.-line {
  display: inline-block;
  padding-bottom: 20px;
  border-bottom: 2px solid #000000;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
.title.-xlarge01 .blue {
  color: #005c9c;
  font-size: 3.2rem;
}

.title.-xlarge01 .blue-ja-en {
  border-bottom: 2px solid #005c9c;
}

.title.-xlarge01 .black {
  color: #000000;
  border-bottom: 2px solid #000000;
  font-size: 3.2rem;
}

.title.-large01 {
  font-size: 2.8rem;
  margin-bottom: 30px;
}
@media screen and (max-width: 980px) {
  .title.-large01 {
    font-size: 2rem;
    letter-spacing: 4px;
    margin-bottom: 20px;
  }
}
.title.-mid01 {
  font-size: 2rem;
  margin-bottom: 20px;
  /*追加
	color:#d99300;
	*/
}
* + .title.-mid01 {
  margin-top: 20px;
}
@media screen and (max-width: 980px) {
  .title.-mid01 {
    font-size: 1.8rem;
  }
}
.title.-sml01 {
  font-size: 1.6rem;
  margin-bottom: 20px;
}
* + .title.-sml01 {
  margin-top: 20px;
}
@media screen and (max-width: 980px) {
  .title.-sml01 {
    font-size: 1.4rem;
  }
}
.title + .lead {
  text-align: center;
}
.title.-center {
  text-align: center;
}
.title.-line01 {
  font-size: 2.4rem;
  padding-left: 15px;
  padding-bottom: 0;
  border-left: 4px solid #e3592e;
  border-bottom: none;
}
.title.-line01:not(:first-child) {
  margin-top: 60px;
}
@media screen and (max-width: 980px) {
  .title.-line01 {
    font-size: 2rem;
  }
}

.tits {
  color: #000000;
  font-size: 2rem;
}
.tits.-sizeS {
  font-size: 1.6rem;
}

/*link*/
.link {
  line-height: 1;
  position: relative;
  text-decoration: none;
}
.link.txt {
  display: initial;
  padding-left: 18px;
}
.link.txt:not(.-other):before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 50%;
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 2px #d53030;
  border-right: solid 2px #d53030;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
  vertical-align: middle;
}
.link.txt.-other::before {
  content: "\e900";
  display: inline-block;
  width: 17px;
  height: 14px;
  margin-right: 10px;
}
.link.btn {
  display: block;
  padding: 10px;
  box-sizing: border-box;
  text-align: center;
  color: #fff;
  background-color: #000000;
  font-size: 1.4rem;
}
* + .link.btn {
  margin-top: 30px;
}
.link.btn.prev {
  padding: 10px 10px 10px 20px;
}
.link.btn.prev:before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 15px;
  top: 32%;
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 2px #000000;
  border-right: solid 2px #000000;
  -webkit-transform: rotate(-135deg) translateY(-50%);
  transform: rotate(-135deg) translateY(-50%);
  vertical-align: middle;
}
.link.btn.-line {
  color: #000000;
  border: 1px solid #000000;
  background-color: #fff;
}
.link.btn.-line:hover {
  color: #fff !important;
  background-color: #000000;
}
.link.btn.-lineWh {
  color: #fff;
  border: 1px solid #fff;
  background: none;
}
.link.btn.-lineWh:hover {
  color: #000000;
  background-color: #fff;
}
.link.btn.-lineGray {
  color: #000000;
  border: 1px solid #cccccc;
  background-color: #fff;
}
.link.btn.-lineGray:hover {
  color: #000000;
  background-color: #cccccc;
}
.link.btn.-blue {
  color: #fff;
  background-color: #005c9c;
  border: 1px solid #005c9c;
}
.link.btn.-blue:hover {
  color: #005c9c;
  background-color: #fff;
}
.link.btn.-blue.-other::before {
  content: "\e900";
  display: inline-block;
  width: 17px;
  height: 14px;
  margin-right: 10px;
}
.link.btn.-red {
  color: #fff;
  background-color: #d53030;
}
.link.btn.size-mid01 {
  width: 50%;
  max-width: 250px;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  font-size: 1.6rem;
}
.link.btn.size-sml01 {
  width: 100%;
  max-width: 140px;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  font-size: 1.2rem;
}
.link.btn.-block {
  display: block;
}
.linkbox {
  margin-top: 30px;
}
.linkbox.-center {
  text-align: center;
}
.linkbox li {
  display: inline-block;
  margin: 0 10px;
}
@media screen and (max-width: 768px) {
  .linkbox li {
    width: 40%;
  }
}
.linkbox li a.btn {
  min-width: 160px;
}
@media screen and (max-width: 768px) {
  .linkbox li a.btn {
    min-width: inherit;
    display: block;
  }
}

/*grid*/
.grid {
  letter-spacing: -0.6em;
}
.grid.-widSizeM {
  width: 80%;
  max-width: 770px;
  margin-left: auto;
  margin-right: auto;
}
.grid + .grid {
  margin-top: 35px;
}
.grid > * {
  letter-spacing: normal;
}
.grid > .elem {
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
  line-height: 1.8;
}
.grid > .elem .picBox + .title {
  margin-bottom: 5px;
}
.grid.noLetter {
  letter-spacing: normal;
}
.grid.noLetter.-col03 > * {
  width: calc(100% / 3);
}
/*追加*/
.grid.noLetter.-col05 > * {
  width: calc(100% / 5);
}
.grid.noLetter.-col07 > * {
  width: calc(100% / 7);
}
@media screen and (max-width: 1024px) {
  /*追加*/
  .grid.noLetter.-col05 > * {
    width: 100%;
  }
  .grid.noLetter.-col07 > * {
    width: 100%;
  }
}
.grid.-col02 > .elem {
  letter-spacing: normal;
  display: inline-block;
  width: calc((100% - 40px) / 2);
  margin: 40px 40px 0 0;
}
.grid.-col02 > .elem:nth-of-type(2n) {
  margin-right: 0;
}
.grid.-col02 > .elem:nth-of-type(-n + 2) {
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  .grid.-col02 > .elem {
    margin-right: 0;
    width: 100%;
    display: block;
  }
  .grid.-col02 > .elem:nth-of-type(-n + 2) {
    margin-top: 20px;
  }
  .grid.-col02 > .elem:first-of-type {
    margin-top: 0;
  }
}
.grid.-col02 > .elem.-right {
  float: right;
  margin-right: 0;
}
@media screen and (max-width: 768px) {
  .grid.-col02 > .elem.-right {
    float: none;
  }
}
.grid.-col03 > .elem {
  display: inline-block;
  width: calc((100% - 74px) / 3);
  margin-right: 37px;
  margin-top: 20px;
}
.grid.-col03 > .elem:nth-of-type(3n) {
  margin-right: 0;
}
.grid.-col03 > .elem:nth-of-type(-n + 3) {
  margin-top: 0px;
}
@media screen and (max-width: 768px) {
  .grid.-col03 > .elem:nth-of-type(-n + 3) {
    margin-top: 30px;
  }
}
@media screen and (max-width: 1024px) {
  .grid.-col03 > .elem:not(.withLabel01) {
    width: 100%;
    margin: 10px 0 0;
    display: block;
  }
}
.grid.-col03.collection > .elem {
  padding: 20px;
  border: 1px solid #cccccc;
}
.grid.-col03.collection > .elem .text {
  margin-top: 10px;
}
.grid.-col03.collection > .elem .text .title {
  margin-bottom: 10px;
}
.grid.-col03.collection > .elem .text .title + p {
  font-size: 1.4rem;
  line-height: 1.5;
}
.grid.-col03.collection > .elem .detail {
  margin-top: 15px;
  padding-top: 10px;
  border-top: 1px solid #f5f5f5;
  font-size: 1.4rem;
  line-height: 1.5;
}
.grid.-col03.collection .lightboxBtn {
  position: relative;
  display: block;
}
.grid.-col03.collection .lightboxBtn::before {
  content: "\e901";
  font-family: "icomoon";
  font-size: 1.8rem;
  position: absolute;
  display: block;
  vertical-align: middle;
  text-align: center;
  width: 28px;
  height: 28px;
  bottom: 0;
  right: 0;
  box-sizing: border-box;
  background: rgba(255, 255, 255, 0.2);
}

.grid.-col04 .elem {
  width: calc((100% - 99px) / 4);
  margin: 33px 33px 0 0;
  vertical-align: top;
}
/* IE崩れ */
*::-ms-backdrop,
.grid.-col04 .elem {
  width: 20%; /* IE11 */
  margin: 10px 2.5%;
  box-sizing: border-box;
}

.grid.-col04 .elem:nth-of-type(4n) {
  margin-right: 0;
}
.grid.-col04 .elem:nth-of-type(-n + 4) {
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  .grid.-col04 .elem {
    width: calc((100% - 20px) / 2);
    margin-right: 20px;
  }
  /*IE崩れ*/
  *::-ms-backdrop,
  .grid.-col04 .elem {
    width: 46%; /* IE11 */
    margin: 10px 2%;
    box-sizing: border-box;
  }

  .grid.-col04 .elem:nth-of-type(2n) {
    margin-right: 0;
  }
  .grid.-col04 .elem:nth-of-type(-n + 4) {
    margin-top: 15px;
  }
  .grid.-col04 .elem:nth-of-type(-n + 2) {
    margin-top: 0;
  }
}
.grid.-col04.spaceNone.-col04 .elem {
  width: calc(100% / 4);
  margin: 0;
  vertical-align: top;
}
.grid.-col04.spaceNone.-col04 .elem:nth-of-type(4n) {
  margin-right: 0;
}
.grid.-col04.spaceNone.-col04 .elem:nth-of-type(-n + 4) {
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  .grid.-col04.spaceNone.-col04 .elem {
    width: calc((100% - 0) / 2);
    margin-right: 0;
  }
  .grid.-col04.spaceNone.-col04 .elem:nth-of-type(2n) {
    margin-right: 0;
  }
  .grid.-col04.spaceNone.-col04 .elem:nth-of-type(-n + 2) {
    margin-top: 0;
  }
}
.grid.-col04.widAuto.-col04 {
  flex: auto;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .grid.-col04.widAuto.-col04 {
    display: block;
  }
}
.grid.-col04.widAuto.-col04 .elem {
  margin-right: 23px;
  width: auto;
}
.grid.-col04.widAuto.-col04 .elem:nth-of-type(4n) {
  margin-right: 0;
}
.grid.-col04.widAuto.-col04 .elem:nth-of-type(-n + 4) {
  margin-top: 0;
}
@media screen and (max-width: 980px) {
  .grid.-col04.widAuto.-col04 .elem {
    width: calc((100% - 20px) / 2);
    margin: 20px 20px 0 0;
  }
  .grid.-col04.widAuto.-col04 .elem:nth-of-type(-n + 4) {
    margin-top: 20px;
  }
  .grid.-col04.widAuto.-col04 .elem:nth-of-type(2n) {
    margin-right: 0;
  }
  .grid.-col04.widAuto.-col04 .elem:nth-of-type(-n + 2) {
    margin-top: 0;
  }
}
@media screen and (max-width: 768px) {
  .grid.-col04.widAuto.-col04 .elem {
    margin-right: 0;
    margin-top: 40px;
    width: 100%;
    display: block;
  }
  .grid.-col04.widAuto.-col04 .elem:nth-of-type(-n + 2) {
    margin-top: 40px;
  }
  .grid.-col04.widAuto.-col04 .elem:nth-of-type(-n + 4) {
    margin-top: 40px;
  }
  .grid.-col04.widAuto.-col04 .elem:first-of-type {
    margin-top: 0;
  }
}

.flexBox {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
}

.horizBox {
  display: table;
  width: 100%;
}
.horizBox > .elem {
  display: table-cell;
  vertical-align: top;
}
.horizBox > .elem.-sizeSml {
  width: 30%;
}
.horizBox > .elem:first-of-type {
  padding-right: 15px;
}

.textBox + .textBox {
  margin-top: 40px;
}
.textBox.-center {
  text-align: center;
}

.wrapBox {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px;
}
* + .wrapBox {
  margin-top: 40px;
}
.wrapBox.-borderBlk {
  background-color: #fff;
  border: solid 1px #000000;
}
.wrapBox.-borderRed {
  background-color: #fff;
  border: solid 1px #d53030;
}
.wrapBox.-bg {
  padding: 50px 0;
  background-color: #f5f5f5;
}
.innerWrap .wrapBox.-bg {
  padding: 50px 20px;
}
.wrapBox.-bgBlk {
  background-color: black;
}
.wrapBox.-bgWhOpacity {
  background-color: rgba(255, 255, 255, 0.2);
}
.wrapBox.-bg.-hair_lineup {
  position: relative;
  background: url("/hair/assets/top/images/lineup_bg_pic01.jpg") no-repeat
    center top/100%;
  color: #fff;
}
.wrapBox.-bg.-hair_lineup::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
}
.wrapBox.-bg.-hair_lineup .innerWrap {
  position: relative;
}
.wrapBox.-bg.-hair_lineup .wrapBox.-bgWhOpacity .title.-line {
  border-color: #fff;
  padding-bottom: 10px;
}
.wrapBox.-bg.-hair_lineup .wrapBox.-bgWhOpacity .elem {
  text-align: center;
  flex-grow: 2;
}
.wrapBox.-bg.-hair_lineup .wrapBox.-bgWhOpacity .elem:first-of-type {
  flex-grow: 3;
}
.wrapBox.-btnBlock {
  background-color: rgba(102, 102, 102, 0.2);
  text-align: center;
}
.wrapBox.-btnBlock.-foot {
  margin-top: 50px;
}

.picBlock a:hover img {
  opacity: 0.6;
}

.textBox + .intro {
  margin-top: 20px;
}

.introBox .picBlock {
  position: relative;
  margin-bottom: 10px;
}
@media screen and (max-width: 980px) {
  .introBox .picBlock img {
    width: 100%;
  }
}
.introBox .icon {
  display: inline-block;
  position: absolute;
  right: 0;
  top: 0;
  padding: 3px 7px;
  background: #fff;
  font-size: 1.2rem;
}
.introBox .icon.-new {
  background: #fff843;
}
.introBox .articleName {
  margin-bottom: 10px;
  font-weight: normal;
}
.articleDate {
  color: #e3592e;
}
.introBox.-stacking .elem {
  border-bottom: 1px solid #cccccc;
  padding-bottom: 20px;
  margin-bottom: 25px;
}
.introBox.-stacking .elem:last-of-type {
  border-bottom: none;
  padding-bottom: 0;
}
.introBox.-stacking .picBlock {
  display: inline-block;
  float: left;
  margin-bottom: 0;
  width: 204px;
}
@media screen and (max-width: 980px) {
  .introBox.-stacking .picBlock {
    width: 25%;
  }
}
@media screen and (max-width: 480px) {
  .introBox.-stacking .picBlock {
    display: block;
    float: none;
    margin-bottom: 20px;
    width: 100%;
  }
}
.introBox.-stacking .textBlock {
  display: inline-block;
  float: right;
  width: 590px;
}
@media screen and (max-width: 980px) {
  .introBox.-stacking .textBlock {
    width: 70%;
  }
}
@media screen and (max-width: 480px) {
  .introBox.-stacking .textBlock {
    display: block;
    float: none;
    width: 100%;
  }
}
.introBox.-stacking .textBlock > a {
  display: block;
}
.introBox.-stacking .textBlock > a:hover .articleName {
  color: #e3592e;
}
.introBox.-stacking .textBlock > a:hover p {
  color: #000000;
}
.introBox.-stacking .textBlock .articleName {
  font-size: 2rem;
  font-weight: bold;
}
.introBox.-stacking .textBlock .lead {
  margin-bottom: 15px;
}
.introBox.-stacking .textBlock .tagArea {
  display: inline-block;
  margin: 0 10px 0 0;
}
.introBox.-stacking .textBlock .articleDate {
  display: inline-block;
}

.tagArea {
  margin-bottom: 10px;
}
.tagArea > li {
  display: inline-block;
  margin-right: 5px;
}
.tagArea > li a {
  display: block;
  padding: 1px 10px;
  background: #fff;
  border: 1px solid #cccccc;
  border-radius: 100px;
  font-size: 1.4rem;
  position: relative;
}
.tagArea > li a::before {
  content: "#";
  display: inline-block;
}
.tagArea > li a:hover {
  background: #e3592e;
  color: #fff;
}

.categoryListArea > li {
  display: inline-block;
  margin-right: 5px;
  margin-bottom: 15px;
}
.categoryListArea > li a {
  display: block;
  font-size: 1.4rem;
  position: relative;
}
.categoryListArea > li a::before {
  font-size: 3rem;
  vertical-align: middle;
  margin-right: 10px;
}
.categoryListArea > li a.icon-taiken01:before {
  font-size: 4rem !important;
}

/*注意*/
.-note {
  font-size: 1.2rem;
}

/*リスト*/
.list.-default > li {
  margin-left: 1.4rem;
  text-indent: -1.4rem;
}
.list.-num {
  counter-reset: number;
  /* 名前を付けたカウンターをリセット */
  list-style: none;
  /* olが数字を付けることをキャンセル */
  margin: 0;
  padding: 0;
}
.list.-num li {
  position: relative;
  padding-left: 30px;
}
.list.-num li::before {
  counter-increment: number;
  content: counter(number, decimal-leading-zero) ".";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
  color: #000000;
}
.list.-deta {
  width: 100%;
  margin-bottom: 10px;
  display: table;
}
.list.-deta:last-of-type {
  margin-bottom: 0;
}
.list.-deta .cell {
  display: table-cell;
  vertical-align: top;
  color: #000000;
}
@media screen and (max-width: 768px) {
  .list.-deta.spBlock .cell {
    display: block;
    width: auto;
    padding-left: 0;
  }
}
.list.-deta.spBlock dt {
  margin-top: 10px;
}
.list.-deta dt {
  width: 15%;
  padding-right: 10px;
  font-weight: bold;
}
.list.-deta dd {
  width: 85%;
}

/* -- pager -- */
.pager {
  overflow: hidden;
  margin-top: 60px;
}
.pager ul {
  list-style: none;
  position: relative;
  left: 50%;
  float: left;
}
.pager ul li {
  margin-right: 10px;
  position: relative;
  left: -50%;
  float: left;
}
@media screen and (max-width: 480px) {
  .pager ul li {
    margin-right: 5px;
  }
}
.pager ul li:last-of-type {
  margin-right: 0;
}
.pager ul li .num {
  display: block;
  font-size: 1.4rem;
  padding: 0.6em 1em;
  padding: 5px 11px;
}
.pager ul li a {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  font-size: 1.4rem;
  width: 40px;
  height: 40px;
  border: solid 1px #cccccc;
  color: #cccccc;
  text-decoration: none;
  border-radius: 100px;
}
.pager ul li a:hover {
  border-color: #e3592e;
  color: #e3592e;
}
.pager ul li a.prev:before,
.pager ul li a.next:after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border: 0px;
  border-top: solid 2px #cccccc;
  border-right: solid 2px #cccccc;
  vertical-align: middle;
  margin: auto;
  position: relative;
}
.pager ul li a.prev:before {
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  margin: -2px -2px auto auto;
}
.pager ul li a.next:after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin: -2px auto auto -2px;
}
.pager ul li a:hover.prev:before,
.pager ul li a:hover.next:after {
  border-color: #e3592e;
}
.pager ul li.current a {
  background: #e3592e;
  color: #fff;
  border: solid 1px #e3592e;
}
@media screen and (max-width: 480px) {
  .pager ul li:not(.control):not(.current):not(.ellipsis):not(.last) {
    display: none;
  }
  .pager ul li.current .num span {
    display: initial;
  }
}

/* -- tab -- */
.tabs .selectOuter {
  display: none;
}
@media screen and (max-width: 768px) {
  .tabs .selectOuter {
    display: block;
  }
}
.tabs .buttonOuter {
  display: block;
  padding-bottom: 0;
}
@media screen and (max-width: 768px) {
  .tabs .buttonOuter {
    display: none;
  }
}
.tabs .buttonOuter > .tabButton {
  display: block;
  position: relative;
}
.tabs .buttonOuter > .tabButton::before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 18px;
  background: #cccccc;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.tabs .buttonOuter > .tabButton > li {
  display: inline-block;
  position: relative;
}
.tabs .buttonOuter > .tabButton > li::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 18px;
  background: #cccccc;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.tabs .buttonOuter > .tabButton > li a {
  display: block;
  text-align: center;
  text-decoration: none;
  padding: 10px 30px;
  border-bottom: 4px solid #fff;
  color: #cccccc;
  font-size: 2rem;
  line-height: 1.4;
}
.tabs .buttonOuter > .tabButton > li.-active a {
  border-bottom: 4px solid #e3592e;
  position: relative;
  color: #e3592e;
}
.tabs .tabContents {
  padding: 40px 0;
}

.contents .cf main,
.contents .cf article {
  width: 820px;
  float: left;
}
@media screen and (max-width: 980px) {
  .contents .cf main,
  .contents .cf article {
    width: 100%;
    float: none;
  }
}

/*記事*/
article p {
  color: #000000;
}
article > section {
  margin-bottom: 100px;
}
article .spotDataBox {
  margin: 40px auto 0;
  padding: 20px;
  border: 4px solid #f6f5f1;
  box-sizing: border-box;
}
article .spotDataBox .tits {
  color: #e3592e;
  margin-bottom: 20px;
}
article .-writer {
  background: #f6f5f1;
  margin-top: 40px;
}
article .-writer .name {
  color: #e3592e;
  font-weight: bold;
  float: left;
  width: 590px;
}
@media screen and (max-width: 768px) {
  article .-writer .name {
    float: none;
    width: auto;
    display: inline-block;
  }
}
article .-writer .pic {
  float: right;
  width: 18%;
}
@media screen and (max-width: 768px) {
  article .-writer .pic {
    width: 40%;
    padding: 0 0 10px 10px;
  }
}
article .-writer .comment {
  float: left;
  width: 80%;
  margin-top: 20px;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  article .-writer .comment {
    float: none;
    width: 100%;
  }
}
article .articleInfo {
  margin-top: 40px;
}
article .articleInfo .list dt,
article .articleInfo .list dd {
  font-weight: normal;
  display: inline-block;
  width: auto;
}
article .share {
  margin-top: 20px;
}
article .share ul li {
  display: inline-block;
  float: left;
  width: calc((100% - 25px) / 2);
  margin-right: 25px;
}
article .share ul li:nth-of-type(even) {
  margin-right: 0;
}
@media screen and (max-width: 480px) {
  article .share ul li {
    display: block;
    float: none;
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }
}
article .share ul li a {
  display: block;
  color: #fff;
  text-align: center;
  padding: 15px;
}
article .share ul li a::before {
  margin-right: 10px;
  font-size: 2rem;
  vertical-align: middle;
}
article .share ul li a.fb {
  background-color: #31508b;
}
article .share ul li a.tw {
  background-color: #55a1e3;
}
article .share ul li a:hover {
  opacity: 0.6;
}

.articleHead {
  display: block;
  margin-top: 30px;
}
@media screen and (max-width: 980px) {
  .articleHead {
    margin-bottom: 30px !important;
  }
}
.articleHead .title {
  margin-top: 70px;
  font-size: 3.2rem;
}
@media screen and (max-width: 768px) {
  .articleHead .title {
    margin-top: 40px;
    font-size: 2.6rem;
  }
}
.articleHead .title .sub {
  font-size: 2rem;
  display: block;
}
.articleHead .tagArea {
  display: inline-block;
}
.articleHead .articleDate {
  display: inline-block;
}

.text + .text {
  margin-top: 40px;
}

.text + .pic {
  margin-bottom: 20px;
}

.relationArea {
  margin-top: 40px;
}

/*slide*/
.picSlideWrap {
  position: relative;
  margin-bottom: 170px;
}
@media screen and (max-width: 980px) {
  .picSlideWrap {
    margin-bottom: 70px;
  }
}
.picSlideWrap .slick-dots {
  position: absolute;
  bottom: -100px;
}
@media screen and (max-width: 980px) {
  .picSlideWrap .slick-dots {
    bottom: -50px;
  }
}
.picSlideWrap .slick-dots li {
  width: 160px;
}
@media screen and (max-width: 980px) {
  .picSlideWrap .slick-dots li {
    width: auto;
  }
}
.picSlideWrap .slick-dots li.slick-active button:before {
  /*
        background: #e3592e;
*/
  background: #333;
}

.slick-dots li.slick-active button:before {
  /*
  background: #e3592e;
  border-color: #e3592e;
*/
  background: #333;
  border-color: #333;
}

.slide-arrow {
  position: absolute;
  z-index: 2;
  width: 100%;
  top: 50%;
  left: 0;
  right: 0;
  margin: auto;
  transform: translateY(-50%);
}

.slick-prev,
.slick-next {
  width: 40px;
  height: 64px;
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: #000;
}
.slick-prev::before,
.slick-next::before {
  width: 15px;
  height: 15px;
}

.slick-prev {
  left: 0;
}
.slick-prev::before {
  margin-left: 5px;
}

.slick-next {
  right: 0;
}
.slick-next::before {
  margin-right: 5px;
}

.pageTitleWrap {
  position: relative;
  /* 追加 */
  margin-bottom: 30px !important;
}
.pageTitleWrap .logo {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90%;
  max-width: 510px;
  opacity: 0.6;
}
.pageTitleWrap .picBox {
  position: relative;
  z-index: 1;
}
.pageTitleWrap .txtBox {
  display: table;
  position: absolute;
  top: 0;
  left: 0;
  width: 40%;
  height: 100%;

  background: rgba(51, 51, 51, 0.8);

  z-index: 2;
  padding: 10px;
  /*
    padding: 20px;
    */
  color: #fff;

  text-align: center;
}
@media screen and (max-width: 980px) {
  .pageTitleWrap .txtBox {
    position: relative;
    width: 100%;
    background: rgba(51, 51, 51, 0.8);
    text-align: left;
  }
}
.pageTitleWrap .txtBox.-bgNone {
  background: none;
  color: #000000;
}
@media screen and (max-width: 980px) {
  .pageTitleWrap .txtBox.-bgNone {
    position: relative;
    width: 100%;
    background: rgba(0, 0, 0, 0.1);
  }
}
.pageTitleWrap .txtBox .inner {
  vertical-align: middle;
  display: table-cell;
}
.pageTitleWrap .txtBox .pageTitle_text,
.pageTitle_text {
  /*
      font-size: 4.8rem;
    */
  font-size: 4rem;
  font-weight: bold;
  /*
      line-height: 0.7;
*/
  line-height: 1;
  margin: 20px 0;
}
@media screen and (max-width: 980px) {
  .pageTitleWrap .txtBox .pageTitle_text,
  .pageTitle_text {
    font-size: 3rem;
    /*
          margin: 20px 0;
*/
    margin: 10px 0;
  }
}
.pageTitleWrap .txtBox .pageTitle_text .en,
.en {
  font-size: 2rem;
}
@media screen and (max-width: 980px) {
  .pageTitleWrap .txtBox .pageTitle_text .en,
  .en {
    font-size: 1.4rem;
  }
}
.pageTitleWrap .txtBox p {
  line-height: 1.6;
}
.pageTitleWrap .txtBox .subTitle {
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1.2;
  margin: 60px 0 20px;
}
@media screen and (max-width: 980px) {
  .pageTitleWrap .txtBox .subTitle {
    margin: 20px 0 20px;
  }
}
.pageTitleWrap .txtBox .subTitle.-colorBlue {
  color: #005c9c;
}
.pageTitleWrap.article {
  display: table;
  border-bottom: 1px solid #005c9c;
  padding-bottom: 10px;
  margin-bottom: 30px !important;
}
.pageTitleWrap.article .pageTitle_text {
  display: table-cell;
  font-size: 2.8rem;
  font-weight: bold;
  width: 80%;
  vertical-align: middle;
}
@media screen and (max-width: 980px) {
  .pageTitleWrap.article .pageTitle_text {
    font-size: 3rem;
    margin: 20px;
  }
}
.pageTitleWrap.article .pageTitle_text .en {
  font-size: 2rem;
}
@media screen and (max-width: 980px) {
  .pageTitleWrap.article .pageTitle_text .en {
    font-size: 1.4rem;
  }
}
.pageTitleWrap.article .pageTitle_text .logo {
  display: table-cell;
  vertical-align: middle;
  text-align: right;
}

.lowerPage .pageTitleWrap:not(.article) {
  /*
  height: 200px;
*/
  height: 300px;
  overflow: hidden;
  margin-bottom: 0 !important;
}
@media screen and (max-width: 980px) {
  .lowerPage .pageTitleWrap:not(.article) {
    height: auto;
  }
}
@media screen and (max-width: 980px) {
  .lowerPage .pageTitleWrap:not(.article) .picBox {
    overflow: hidden;
    height: 100px;
  }
}

.caption {
  margin-top: 5px;
  font-size: 1.4rem;
}
.caption.-bold {
  font-weight: bold;
}

.pageTitleWrap + .ancNav {
  margin-top: -90px;
}

.ancNav {
  height: 58px;
}

/**20190903追記**/
@media screen and (max-width: 980px) {
  .ancNav {
    height: auto;
  }
}

.ancNav .linkList {
  text-align: center;
}
@media screen and (max-width: 980px) {
  .ancNav .linkList {
    padding: 0 10px;
    flex: auto;
    display: flex;
    flex-wrap: wrap;
  }
}
.ancNav .linkList .elem {
  position: relative;
  display: inline-block;
  padding: 0 40px;
  border-right: 1px solid #cccccc;
  line-height: 0.8;
  box-sizing: border-box;
}
.ancNav .linkList .elem:last-of-type {
  border-right: none;
}
@media screen and (max-width: 980px) {
  .ancNav .linkList .elem {
    padding: 5px;
    /*
        float: left;
        width: 50%;
        */
    border-right: none;
  }
  .ancNav .linkList .elem:nth-of-type(2n) {
    border-right: none;
  }
  .ancNav .linkList .elem:nth-child(n + 3) {
    border-top: none;
  }
}
.ancNav .linkList .elem a {
  font-size: 1.4rem;
  line-height: 1;
}
@media screen and (max-width: 980px) {
  .ancNav .linkList .elem a {
    display: block;
    padding: 10px;
    border: 1px solid #005c9c;
    height: 100%;
  }
}
.ancNav .ancNav_child {
  display: none;
  position: absolute;
  text-align: center;
  background-color: black;
  top: 20px;
  left: 0;
  width: 100%;
  text-align: center;
  background-color: black;
  z-index: 99;
}
.ancNav .ancNav_child li {
  border-bottom: 1px solid #fff;
}
.ancNav .ancNav_child li:last-of-type {
  border-bottom: 0;
}
.ancNav .ancNav_child li a {
  display: block;
  color: #fff;
  padding: 5px;
  text-align: center;
}
.ancNav .ancNav_child.open {
  display: block;
}

.other .linkList {
  text-align: center;
}

.tblBox {
  display: table;
}
.tblBox .intro {
  margin-top: 30px;
}
.tblBox .elem {
  display: table-cell;
  box-sizing: border-box;
  vertical-align: middle;
  font-size: 1.4rem;
}
@media screen and (max-width: 980px) {
  .tblBox .elem {
    display: block;
    margin-bottom: 20px;
  }
}
.tblBox .elem * + .title.-mid01 {
  margin-top: 90px;
}
.tblBox .elem.-sizeSml {
  width: 20%;
}
.tblBox.-rightLarge .elem:nth-of-type(1) {
  width: 40%;
  padding: 0 60px 0 180px;
}
@media screen and (max-width: 980px) {
  .tblBox.-rightLarge .elem:nth-of-type(1) {
    width: 100%;
    padding: 0 20px;
  }
}
.tblBox.-rightLarge .elem:nth-of-type(2) {
  width: 60%;
}
@media screen and (max-width: 980px) {
  .tblBox.-rightLarge .elem:nth-of-type(2) {
    width: 100%;
    padding: 0 20px;
  }
}
.tblBox.-leftLarge .elem:nth-of-type(1) {
  width: 60%;
}
@media screen and (max-width: 980px) {
  .tblBox.-leftLarge .elem:nth-of-type(1) {
    width: 100%;
    padding: 0 20px;
  }
}
.tblBox.-leftLarge .elem:nth-of-type(2) {
  width: 40%;
  padding: 0 180px 0 60px;
}
@media screen and (max-width: 980px) {
  .tblBox.-leftLarge .elem:nth-of-type(2) {
    width: 100%;
    padding: 0 20px;
  }
}

.other .btn {
  margin-top: 10px;
}

.topics,
.archives {
  color: #666666;
}
.topics .elem,
.archives .elem {
  border-right: 1px solid #cccccc;
}
@media screen and (max-width: 980px) {
  .topics .elem,
  .archives .elem {
    width: 100% !important;
    padding: 0 20px;
    margin: 0 0 20px !important;
    display: block;
    float: none;
  }
}
.topics .elem .text,
.archives .elem .text {
  padding: 10px 30px;
}
.topics .elem .text p,
.archives .elem .text p {
  font-size: 1.4rem;
}

.news {
  margin-bottom: 0;
}
.news .newsBox {
  display: table;
  width: 100%;
  margin-bottom: 20px;
}
.news .newsBox dt,
.news .newsBox dd {
  display: table-cell;
  vertical-align: top;
  text-align: left;
  font-size: 1.4rem;
}
@media screen and (max-width: 980px) {
  .news .newsBox dt,
  .news .newsBox dd {
    display: block;
  }
}
.news .newsBox dt a,
.news .newsBox dd a {
  font-size: 1.4rem;
}
.news .newsBox dt {
  width: 17%;
}
@media screen and (max-width: 980px) {
  .news .newsBox dt {
    width: 100%;
  }
}
.news .newsBox dd {
  width: 83%;
}
@media screen and (max-width: 980px) {
  .news .newsBox dd {
    width: 100%;
  }
}
.effectElm {
  opacity: 0;
  /**20200605追記**/
  pointer-events: none;
}
.effectElm.fadeIn {
  -webkit-animation: fadeIn 0.5s ease 0.5s 1 forwards;
  animation: fadeIn 0.5s ease 0.5s 1 forwards;
}

.effectElm.fadeIn a {
  pointer-events: auto;
}

@-webkit-keyframes fadeIn {
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  100% {
    opacity: 1;
  }
}

/* top --*/
/*---------------------------------------------
top
---------------------------------------------*/
.topPage .breadCrumbs {
  display: none;
}

/* form --*/
.wrapBox.-bg.form {
  padding: 50px 0;
}

/*---------------------------------------------
table
---------------------------------------------*/
/*左見出し*/
[class^="tblBlock_"] {
  width: 100%;
}

table {
  width: 100%;
}
table th,
table td {
  vertical-align: top;
  font-size: 1.4rem;
}
table th.-size_half,
table td.-size_half {
  width: 50%;
}
table th.-sizeL01,
table td.-sizeL01 {
  width: 30%;
}
table th.-sizeM01,
table td.-sizeM01 {
  width: 20%;
}
table th.-sizeS01,
table td.-sizeS01 {
  width: 10%;
}
table th.type.-date,
table td.type.-date {
  text-align: center;
}
table th.type.-decision,
table td.type.-decision {
  text-align: center;
}
table th.type.-link,
table td.type.-link {
  text-align: center;
}
table th.type.-value,
table td.type.-value {
  text-align: right;
}
table th.type.-left,
table td.type.-left {
  text-align: left;
}
@media screen and (max-width: 768px) {
  table:not(.noBlock) th,
  table:not(.noBlock) td {
    display: block;
    width: 100%;
  }
}
table.default th,
table.default td {
  background: none !important;
  padding: 10px 0 !important;
}
@media screen and (max-width: 480px) {
  table.default th,
  table.default td {
    padding: 10px 0 0 !important;
  }
}
table.formTblBlock_thL01 > tbody > tr > th,
table.formTblBlock_thL01 tbody > tr > th {
  font-weight: 700;
  padding: 10px 30px 20px 0;
  border-left: none;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
table.formTblBlock_thL01 > tbody > tr > th:before,
table.formTblBlock_thL01 tbody > tr > th:before {
  content: "";
  width: 100%;
  height: 5px;
  display: block;
  position: absolute;
  left: 0;
}
table.formTblBlock_thL01 > tbody > tr > th:before,
table.formTblBlock_thL01 tbody > tr > th:before {
  top: 0;
}
table.formTblBlock_thL01 > tbody > tr > td,
table.formTblBlock_thL01 tbody > tr > td {
  padding: 0 0 20px 20px;
  text-align: left;
}
table.tblBlock {
  /*上見出し*/
}
table.tblBlock_thL01 > tbody,
table.tblBlock_thL01 tbody {
  border-left: 1px solid #cccccc;
}
table.tblBlock_thL01 > tbody > tr > th,
table.tblBlock_thL01 tbody > tr > th {
  font-weight: 700;
  padding: 15px;
  background: #f5f5f5;
  border: 1px solid #cccccc;
  border-left: none;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
table.tblBlock_thL01 > tbody > tr > td,
table.tblBlock_thL01 tbody > tr > td {
  padding: 15px;
  border: 1px solid #cccccc;
  border-left: none;
  text-align: left;
}
table.tblBlockthT01 th {
  padding: 5px 10px;
  background-color: #cccccc;
  border-top: 1px solid #666666;
  border-bottom: 1px solid #666666;
  border-right: 1px dotted #666666;
  text-align: center;
  vertical-align: middle;
}
table.tblBlockthT01 th:last-of-type {
  border-right: none;
}
table.tblBlockthT01 td {
  padding: 5px 10px;
  border-bottom: 1px solid #666666;
  border-right: 1px dotted #666666;
  border-top: none;
  text-align: left;
  vertical-align: middle;
  font-size: 1.4rem;
}
table.tblBlockthT01 td:last-of-type {
  border-right: none;
}
@media screen and (max-width: 768px) {
  table.tblBlock tr:not(:first-child):before {
    content: "";
    height: 15px;
    display: block;
  }
}
table.-borderOnly > tbody > tr > th,
table.-borderOnly > tbody > tr > td {
  border: 1px solid #cccccc;
  padding: 15px;
}
@media screen and (max-width: 768px) {
  table.-borderOnly > tbody > tr > th,
  table.-borderOnly > tbody > tr > td {
    display: block;
    width: 100%;
  }
}
table.-borderOnly > tbody > tr > th {
  color: #666666;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  table.-borderOnly > tbody > tr > th {
    border-top: 2px solid #cccccc;
  }
}

/*Media-queries-------------*/
@media screen and (max-width: 768px) {
  .tblBlock_normal01,
  .tblBlock_thL01,
  .formTblBlock_thL01 {
    margin-top: 15px;
  }

  .tblBlock_normal01 th,
  .tblBlock_normal01 td {
    display: block;
    width: 100%;
    border-top: none;
  }

  :not(.tblScroll01) > .tblBlock_thL01 th,
  :not(.noBlock) > .tblBlock_thL01 th,
  :not(.noBlock) > .formTblBlock_thL01 th {
    display: block;
    width: 100% !important;
  }
  :not(.tblScroll01) > .tblBlock_thL01 td,
  :not(.noBlock) > .tblBlock_thL01 td,
  :not(.noBlock) > .formTblBlock_thL01 td {
    display: block;
    width: 100%;
    border-top: none;
    border-top: none;
    border-bottom: none;
    padding: 15px;
  }
  :not(.tblScroll01) > .tblBlock_thL01 tr:first-of-type th,
  :not(.noBlock) > .tblBlock_thL01 tr:first-of-type th,
  :not(.noBlock) > .formTblBlock_thL01 tr:first-of-type th {
    border-top: none;
  }
  :not(.tblScroll01) > .tblBlock_thL01.gray01 td,
  :not(.noBlock) > .tblBlock_thL01.gray01 td,
  :not(.noBlock) > .formTblBlock_thL01.gray01 td {
    border-bottom: none;
  }
  :not(.tblScroll01) > .tblBlock_thL01.gray01 tr:last-child td:last-child,
  :not(.noBlock) > .tblBlock_thL01.gray01 tr:last-child td:last-child,
  :not(.noBlock) > .formTblBlock_thL01.gray01 tr:last-child td:last-child {
    border-bottom: 1px solid #666666;
  }

  :not(.noBlock) > .tblBlock_thL01 tbody {
    border-top: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
  }

  /*SP幅時 横スクロール*/
  .tblScroll01 {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    position: relative;
  }
  .tblScroll01:after {
    content: "";
    display: inline-block;
    width: 60px;
    height: 60px;
    background-size: contain;
    position: absolute;
    left: 0;
    /* 初期位置 */
    margin: -25px 0 0 -25px;
    top: 50%;
    opacity: 0;
    /* 透明度100%で実質非表示 */
  }
  .tblScroll01.show:after {
    opacity: 1;
    /* 透明度の変化で表示させる */
    -webkit-transition: 0.8s;
    transition: 0.8s;
    /* アニメーション */
    left: 50%;
    /* 移動 */
  }
  .tblScroll01.del:after {
    /* 矢印を隠す */
    display: none;
  }
  .tblScroll01::-webkit-scrollbar {
    /*tableにスクロールバーを追加*/
    height: 5px;
  }
  .tblScroll01::-webkit-scrollbar-track {
    /*tableにスクロールバーを追加*/
    background: #f1f1f1;
  }
  .tblScroll01::-webkit-scrollbar-thumb {
    /*tableにスクロールバーを追加*/
    background: #bcbcbc;
  }
  .tblScroll01 table {
    width: 980px;
  }
  .tblScroll01 table th,
  .tblScroll01 table td {
    padding: 12px;
    display: table-cell;
  }

  .noBlock th,
  .noBlock td {
    display: table-cell;
    width: auto;
  }
}
/*---------------------------------------------
form
---------------------------------------------*/
/* input type="radio" のみ */
form {
  /* input type="text" のみ */
  /* textarea のみ */
  /* input type="button" input type="submit"  */
  /* プルダウン */
}
form .title.-tits {
  margin-top: 50px;
}
form .txt.-error {
  margin-top: 10px;
  position: relative;
  color: #d53030;
}
form .txt.-error.-top {
  margin-bottom: 10px;
}
form .label.-required01 {
  font-size: smaller;
  display: inline-block;
  position: absolute;
  top: 10px;
  right: 0px;
  margin-top: 0;
  line-height: 1;
}
@media screen and (max-width: 480px) {
  form .label.-required01 {
    margin-top: -5px;
  }
}
form .label.-required01 i {
  background: #d53030;
  font-style: normal;
  padding: 3px 5px;
  color: #fff;
}
form .label.-required02 {
  font-size: smaller;
  display: inline-block;
  bottom: 0;
  margin-left: 10px;
}
form .label.-required02 i {
  background: #d53030;
  font-style: normal;
  padding: 3px 5px;
  color: #fff;
}
form .label01.-left {
  margin-right: 10px;
}
form .label01.-right {
  margin-left: 10px;
}
form input[type="radio"] {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  overflow: hidden;
  padding: 0;
  clip: rect(0, 0, 0, 0);
}
form input[type="radio"]:checked + label::before {
  background: #fff;
  border: 1px solid #cccccc;
}
form input[type="radio"]:checked + label::after {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}
form .normal input[type="checkbox"] {
  margin: 0 5px 0 0;
  background: initial;
  border: initial;
  border-radius: initial;
  outline: initial;
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  appearance: checkbox;
  font-size: 1.4rem;
  width: auto;
}
form .checkbox01 + .hideElem {
  margin-top: 10px;
}
form .checkbox01.-list li {
  display: inline-block;
}
form .checkbox01 input[type="checkbox"] {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  overflow: hidden;
  padding: 0;
  clip: rect(0, 0, 0, 0);
}
form .checkbox01 label {
  position: relative;
  display: inline-block;
  padding: 0 0 0 25px;
  margin-right: 15px;
  cursor: pointer;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
form .checkbox01 label::before,
form .checkbox01 label::after {
  position: absolute;
  content: "";
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
form .checkbox01 label::before {
  top: 50%;
  left: 0;
  width: 16px;
  height: 16px;
  margin-top: -7px;
  background: #fff;
  border: 1px solid #cccccc;
  border-radius: 0;
}
form .checkbox01 label::after {
  opacity: 0;
  top: 50%;
  left: 4px;
  width: 8px;
  height: 4px;
  margin-top: -2px;
  border-left: 2px solid #666666;
  border-bottom: 2px solid #666666;
  -webkit-transform: rotate(-45deg) scale(0.5);
  transform: rotate(-45deg) scale(0.5);
}
form .checkbox01 label:hover::before {
  background: #fff;
}
form .checkbox01 input[type="checkbox"]:checked + label::before {
  background: #fff;
}
form .checkbox01 input[type="checkbox"]:checked + label::after {
  opacity: 1;
  -webkit-transform: rotate(-45deg) scale(1);
  transform: rotate(-45deg) scale(1);
}
form input[type="text"],
form input[type="password"] {
  property: value;
  border: 1px solid #cccccc;
  padding: 10px;
  resize: vertical;
  width: auto;
  letter-spacing: 0.1em;
  -webkit-appearance: textfield;
  /* 1 */
  -webkit-box-sizing: border-box;
  /* 2 */
  box-sizing: border-box;
  resize: vertical;
}
form input[type="text"]:not(.wAuto),
form input[type="password"]:not(.wAuto) {
  width: 100%;
}
@media screen and (max-width: 768px) {
  form input[type="text"]:not(.wAuto),
  form input[type="password"]:not(.wAuto) {
    width: 100%;
  }
}
form #maypage_name input[type="text"] {
  width: 80%;
  margin-left: 20px;
}
form #maypage_name_kana input[type="text"] {
  width: 80%;
  margin-left: 5px;
}
form textarea {
  property: value;
  border: 1px solid #ccc !important;
  padding: 10px 10px;
  font-size: 1.6rem;
  width: 100%;
  display: block;
  -webkit-appearance: textfield;
  /* 1 */
  -webkit-box-sizing: border-box;
  /* 2 */
  box-sizing: border-box;
  resize: vertical;
}
form * button {
  text-align: center;
  margin-top: 40px;
}
form *[type="button"],
form *[type="submit"] {
  display: block;
  property: value;
  background: #000000;
  font-weight: bold;
  margin: auto;
  padding: 10px 10px 10px;
  color: #fff;
  border: none;
  border-radius: 0;
  -webkit-appearance: none;
  min-width: 200px;
}
form *[type="button"].other01,
form *[type="submit"].other01 {
  background: #000000;
}
form *[type="button"]:hover,
form *[type="submit"]:hover {
  cursor: pointer;
  opacity: 0.6;
}
form *[type="button"].white01 {
  background-color: #fff;
  border: 1px solid #cccccc;
  color: #d53030;
}
form .radioBtn01.-list li {
  display: inline-block;
  margin: 0 10px 10px 0;
}
form .radioBtn01 label {
  position: relative;
  display: inline-block;
  padding: 0 0 0 20px;
  cursor: pointer;
  font-weight: normal;
}
form .radioBtn01 label::before,
form .radioBtn01 label::after {
  position: absolute;
  content: "";
  top: 50%;
  border-radius: 100%;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
form .radioBtn01 label::before {
  left: 0;
  width: 16px;
  height: 16px;
  margin-top: -9px;
  background: #fff;
  border: 1px solid #cccccc;
}
form .radioBtn01 label:hover::before {
  background: #fff;
}
form .radioBtn01 label::after {
  opacity: 0;
  left: 4px;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  background: #666666;
  -webkit-transform: scale(2);
  transform: scale(2);
}
form .select01 {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  z-index: 1;
  background: #fff;
}
form .select01:not(.wAuto) {
  width: 100%;
}
@media screen and (max-width: 768px) {
  form .select01:not(.wAuto) {
    width: 100%;
  }
}
form .select01 select {
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  display: block;
  margin: 0;
  padding: 10px 50px 10px 15px;
  line-height: 1.5;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #cccccc;
  font-size: 1.4rem;
  width: 100%;
  border-radius: 0;
  z-index: 3;
  background: none;
}
form .select01:after {
  content: "";
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-top: 8px solid #000000;
  position: absolute;
  z-index: 1;
  top: 50%;
  right: 12px;
  margin-top: -5px;
}
@media screen and (max-width: 768px) {
  form .select01:after {
    right: 10px;
  }
}
form .select01 select option {
  margin-bottom: 1px;
}
form input::-webkit-input-placeholder,
form input:-ms-input-placeholder,
form input::placeholder,
form option::-webkit-input-placeholder,
form option:-ms-input-placeholder,
form option::placeholder {
  color: rgba(102, 102, 102, 0.3);
}
form .linkbox {
  text-align: center;
  margin-top: 50px;
}
form .linkbox li {
  display: inline-block;
  margin: 0 10px;
}
form .linkbox li a,
form .linkbox li button {
  min-width: 320px;
  vertical-align: middle;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  form .linkbox li a,
  form .linkbox li button {
    min-width: inherit;
  }
}
form .fileUp {
  display: block;
  width: 100%;
  overflow: hidden;
  position: relative;
  margin-bottom: 10px;
  padding: 10px;
  border: 1px solid #cccccc;
  background-color: #fff;
}
form .fileUp input[type="file"] {
  opacity: 0 !important;
  height: 100%;
  width: 100%;
  position: absolute;
  right: 0;
  top: 0;
  margin: 0;
  cursor: pointer;
}
form .fileUp .pseudo {
  position: absolute;
  padding: 10px;
  right: 0;
  top: 0;
  background: #d53030;
  color: #fff;
}

/**/
[class*="form_grid"] {
  display: table;
  width: 100%;
}
[class*="form_grid"] dt,
[class*="form_grid"] dd {
  display: table-cell;
  vertical-align: middle;
}
[class*="form_grid"] dt.-half,
[class*="form_grid"] dd.-half {
  width: 50%;
}
[class*="form_grid"] dt {
  padding-right: 15px;
}
@media screen and (max-width: 480px) {
  [class*="form_grid"] li.-spWide {
    width: 100%;
  }
}
[class*="form_grid"].-phone01 li {
  display: table-cell;
  width: 30%;
}
[class*="form_grid"].-phone01 li.txt-hyphen01 {
  width: 5%;
  text-align: center;
}
[class*="form_grid"].-auto01 li {
  display: inline-block;
  margin: 0 10px 10px 0;
}
[class*="form_grid"].-auto01 li:last-of-type {
  margin-right: 0;
}
[class*="form_grid"].-auto01 li.-sizeS {
  width: 10%;
}
@media screen and (max-width: 480px) {
  [class*="form_grid"].-auto01 li.-sizeS {
    width: 15%;
  }
}
[class*="form_grid"].-col2 li {
  width: calc((100% - 10px) / 2);
  display: table-cell;
  padding-right: 10px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: middle;
}
[class*="form_grid"].-col2 li:nth-of-type(2n) {
  padding-right: 0;
}
[class*="form_grid"].-col3 li {
  width: calc((100% - 20px) / 3);
  display: table-cell;
  padding-right: 10px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: middle;
}
[class*="form_grid"].-col2 li:nth-of-type(3n) {
  padding-right: 0;
}
[class*="form_grid"].-post01 li {
  display: table-cell;
  width: 47%;
}
[class*="form_grid"].-post01 li.txt-hyphen01 {
  width: 6%;
  text-align: center;
}

input::-webkit-input-placeholder,
input:-ms-input-placeholder,
input::placeholder {
  color: rgba(102, 102, 102, 0.3);
}

/* フォーカス */
.main input[type="text"]:focus,
.main textarea:focus,
.main select:focus,
.main :focus + label:before {
  /*	box-shadow: 0 0 5px #1589ee;*/
  background-color: #fcfaed !important;
}

input,
select,
textarea {
  max-width: 100%;
  font-size: 1.6rem;
  letter-spacing: 1;
}

/*==footer==*/
/*============================================================================
footer
============================================================================*/
footer {
  /*
  position: absolute;
  */
  bottom: 0;
  left: 0;
  width: 100%;
}
footer.lag.-bg {
  padding: 40px 0 80px;
}
@media screen and (max-width: 980px) {
  footer .innerWrap .footerLink .elem {
    width: 100% !important;
    margin: 0 0 30px !important;
    display: block;
    float: none;
  }
}
footer .innerWrap .footerLink dl {
  display: inline-block;
  float: left;
}
footer .innerWrap .footerLink dl dt {
  font-size: 1.6rem;
  font-weight: bold;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid #005c9c;
}
footer .innerWrap .footerLink dl dd li {
  margin-bottom: 10px;
}
footer .innerWrap .footerLink a {
  color: #666666;
}
footer .copy {
  border-top: 1px solid #f5f5f5;
  font-size: 1.2rem;
  line-height: 1.4;
  margin-top: 40px;
  padding: 15px 0;
  text-align: center;
  color: #005c9c;
}
footer .pagetop {
  display: block;
  position: absolute;
  right: 40px;
  z-index: 99;
}
footer .pagetop a {
  position: relative;
  display: block;
  width: 20px;
  height: 20px;
}
footer .pagetop a:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  border: 0px;
  border-top: solid 2px #005c9c;
  border-right: solid 2px #005c9c;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: absolute;
  left: 50%;
  top: 60%;
  margin: auto;
}
footer .pagetop.fixedF {
  position: fixed;
}
footer .pagetop:hover {
  opacity: 0.7;
}

/*------------------------ 追加変更 ------------------------*/
.logo_kanekaL:before {
  content: "";
  display: inline-block;
  width: 256px;
  height: 26px;
  background-image: url(../images/logo_kanecaron.svg);
  background-repeat: no-repeat;

  background-size: contain;
  /*
  vertical-align: middle;
*/
}

.logo_kanekaS:before {
  content: "";
  display: inline-block;
  width: 128px;
  height: 13px;
  background-image: url(../images/logo_kanecaron.svg);
  background-size: contain;
  background-repeat: no-repeat;
  /*
  vertical-align: middle;
*/
}

/*------------------------ パンくず ------------------------*/
/* ul.listは従来の設定個所に追加*/
#bread_ecofur {
  background-color: #f5f5f5;
  padding: 5px 5px 5px 5%;
}
/*------------------------ トップ画像 ------------------------*/
/* h1.pageTitle_text,.enは従来の設定個所に追加 */
#ecofur.ecofurTitleWrap {
  margin-bottom: 30px !important;
}

#ecofur.ecofurTitleWrap h1 {
  text-align: center;
}
.picEcofur {
  height: 100vh;
  line-height: 100vh;
  overflow: hidden !important;
  width: 50%;
  float: right;
}
.picEcofur img {
  margin: 0;
  padding: 0;
  vertical-align: top;
}

.txtEcofur {
  float: left;
  width: 50%;
  height: 100vh;
  line-height: 100vh;
  overflow: auto;
}
.txtEcofur .inner_fur {
  line-height: 1.7 !important;
  padding: 20px 10%;
  /*
	vertical-align:middle;
*/
}

#ecofur.ecofurTitleWrap .movieEcofur {
  height: auto !important;
  line-height: normal !important;
}

.txtEcofur .inner_fur p {
  text-align: left;
}

@media screen and (max-width: 980px) {
  #ecofur.ecofurTitleWrap {
    margin-bottom: 30px !important;
    height: auto;
    line-height: 0;
  }
  .picEcofur {
    height: 40vh;
    line-height: 40vh;
    overflow: hidden;
    width: 100%;
  }
  .picEcofur img {
    margin: 0;
    padding: 0;
    float: none;
  }

  .txtEcofur {
    float: none;
    width: 100%;
    overflow: auto;
    height: auto;
  }

  .txtEcofur .inner_fur {
    padding: 0 10px;
  }
}

/* フェードイン */
#ecofur {
  animation: fadeIn 4s ease 0s 1 normal;
  -webkit-animation: fadeIn 4s ease 0s 1 normal;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/*-------------- font rayout -------------*/
.txt_m {
  font-size: 1.4rem !important;
}

p.intro {
  margin-bottom: 30px;
}
div .t_right {
  text-align: right;
}

sup {
  font-size: 12px;
}
/*-------------- table -------------*/
table caption {
  font-weight: bold;
  font-size: 100%;
  margin-bottom: 0;
}

table caption.Left30 {
  margin-left: 30%;
}
@media screen and (max-width: 980px) {
  table caption.Left30 {
    margin-left: 0;
  }
}

/*-------------- development -------------*/
/*
section.bg_fur{
	background-image:url(../../development/images/bg_fur.jpg);
	background-repeat:repeat-x;
	background-size:30%;
}
*/

section.bg_fur {
  position: relative;
}
section.bg_fur:before {
  display: block;
  width: 100%;
  height: 100%;
  content: " ";
  position: absolute;
  background-image: url(../../development/images/bg_fur.jpg);
  background-size: 30%;
  background-repeat: repeat-x;
  background-position: top center;
  background-attachment: fixed;
  opacity: 0.9;
  z-index: -1;
  /*
    padding: 20px;
    */
  moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
}

div.inner_fur {
  padding: 30px 10px;
  /*
	margin:30px 0;
	*/
  background: rgba(255, 255, 255, 0.6);
}

/*-------------- kanekaron -------------*/

video {
  width: 100%;
}

/* modal */
* {
  box-sizing: border-box;
}
body {
  font-family: "Avenir", "Helvetica, Neue", "Helvetica", "Arial";
}

/* モーダルCSS */
.modalArea,
.modalArea02 {
  display: none;
  position: fixed;
  z-index: 10; /*サイトによってここの数値は調整 */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modalBg,
.modalBg02 {
  width: 100%;
  height: 100%;
  background-color: rgba(30, 30, 30, 0.9);
}

.modalWrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 70%;
  height: 100%;
  max-width: 500px;
  padding: 0;
  background-color: #fff;
}

.closeModal,
.closeModal02 {
  position: absolute;
  top: 0.5rem;
  right: 1rem;
  cursor: pointer;
}
f .slide01 .slick-list {
  min-height: 260px;
}
.area_txt {
  padding: 20px;
}

@media screen and (max-width: 980px) {
  .modalWrapper {
    height: 80%;
    overflow: auto;
  }
}
