@charset "UTF-8";

.TopCategory,
.TopTag,
.TopGoals,
.Special {
	display: none;
}

.mainContent {
  /* CSS Document */
  /*-----------------------------------------------------------
reset
-------------------------------------------------------------*/
  /*-----------------------------------------------------------
layout
-------------------------------------------------------------*/
  /* -- layout -- */
  /* -- foundation -- */
  /* --------------------------- */
  /* main */
  /*-----------------------------------------------------------
transportation　parts
-------------------------------------------------------------*/
  /* Header */
  /* あえて langJp にしている */
  /*
#lang.-jp .langJp::after {
	content: '';
  position: absolute;
  bottom: -6px;
  left: -1px;
  display: block;
  width: 100%;
  height: 1px;
  background: #231815;
}
*/
  /*.contact-to,*/
  /*.pickup-links,
.pickup-links + hr,*/
  /*.upto-pagetop {
  display: none !important;
}*/
  /* .c-btn--back { */
  /* >>>>>>>>>>>>>>>>>>>>>> header */
  /* <<<<<<<<<<<<<<<<<<<<<< header */
  /*-----------------------------------------------------------
menu
-------------------------------------------------------------*/
  /*-----------------------------------------------------------
ftLink
-------------------------------------------------------------*/
  /*-----------------------------------------------------------
New_footer
-------------------------------------------------------------*/
}

.mainContent body, .mainContent h1, .mainContent h2, .mainContent h3, .mainContent h4, .mainContent h5, .mainContent h6, .mainContent pre, .mainContent ul, .mainContent ol, .mainContent li, .mainContent dl, .mainContent dt, .mainContent dd, .mainContent p, .mainContent img {
  color: #434343;
  margin: 0;
  padding: 0;
}

.mainContent a:link,
.mainContent a:visited {
  color: #000000;
  outline: 0;
  text-decoration: none;
}

.mainContent a:hover {
  opacity: 0.8;
  text-decoration: none;
}

.mainContent .nolink {
  pointer-events: none;
}

.mainContent p img, .mainContent h1 img, .mainContent h2 img, .mainContent h3 img, .mainContent h4 img, .mainContent a img {
  width: 100%;
}

.mainContent ul, .mainContent ol {
  list-style-type: none;
}

.mainContent p {
  line-height: 1.8;
}

.mainContent html {
  font-size: 62.5%;
  font-size: 62.5%;
  position: relative;
}

.mainContent body {
  background-color: #fff;
  /*font-family: "Noto Sans Japanese","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","HelveticaNeue","Helvetica Neue",Arial,sans-serif;*/
  font-family: 'Noto Sans', sans-serif , Roboto !important;
  font-size: 16px;
  margin: 0;
  min-width: 1197px;
  padding: 0;
  width: 100%;
}

.mainContent .wrap {
  width: 100%;
}

.mainContent .pc {
  display: block;
}

.mainContent .sp {
  display: none !important;
}

.mainContent .anchor {
  margin-top: -44px;
  padding-top: 44px;
}

.mainContent a.btn {
  -webkit-box-sizing: border-box;
  border: 1px solid #666666;
  border-radius: 3px;
  box-sizing: border-box;
  display: block;
  font-size: 13px;
  line-height: 1em;
  padding: 18px 0 14px 0;
  position: relative;
  text-align: center;
}

.mainContent a.btn:after {
  background: url(../images/new_index/ico_arrow.svg) no-repeat;
  content: "";
  height: 10px;
  margin-top: -5px;
  position: absolute;
  right: 10px;
  top: 50%;
  width: 6px;
}

.mainContent a[target=_blank].btn:after {
  background: url(../images/new_index/ico_next.png) no-repeat;
  content: "";
  height: 9px;
  margin-top: -5px;
  position: absolute;
  right: 10px;
  top: 50%;
  width: 10px;
}

@media only screen and (max-width: 768px) {
  .mainContent {
    /*img{
  	width: 100%;
  }*/
  }
  .mainContent .pc {
    display: none !important;
  }
  .mainContent .sp {
    display: block !important;
  }
  .mainContent body {
    font-size: 16px;
    min-width: 100%;
  }
  .mainContent a {
    display: block;
  }
}

.mainContent .main {
  display: block;
  margin-top: 77px;
  position: relative;
  width: 100%;
  /*margin-bottom: 15px;*/
}

.mainContent .mainInner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}

.mainContent .header {
  display: none;
}

.mainContent .l-header {
  -webkit-box-sizing: border-box;
  background: #fff;
  border-bottom: 1px solid #dddddd;
  box-sizing: border-box;
  height: 77px;
  left: 0;
  padding-left: 30px;
  padding-right: 30px;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
}

.mainContent .l-header__inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 100%;
  margin: 0 auto;
  padding-top: 22px;
  position: relative;
  width: 1244px;
}

.mainContent #lang {
  position: absolute;
  right: 105px;
  top: 26px;
}

.mainContent #lang ul {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  width: 78px;
}

.mainContent #lang .langJp,
.mainContent #lang .langEn {
  position: relative;
}

@media only screen and (min-width: 769px) {
  .mainContent #lang.-en .langJp, .mainContent #lang_bmenu.-en .langJp {
    cursor: pointer;
  }
  .mainContent #lang.-en .langJp:hover, .mainContent #lang_bmenu.-en .langJp:hover {
    opacity: 0.6;
  }
}

.mainContent #lang .langJp::before {
  -webkit-transform: rotate(124deg);
  -ms-transform: rotate(124deg);
  background: #ccc;
  bottom: 8px;
  content: '';
  display: block;
  height: 1px;
  left: -24px;
  position: absolute;
  transform: rotate(124deg);
  width: 13px;
}

.mainContent #lang.-en .langJp::after {
  background: #231815;
  bottom: -6px;
  content: '';
  display: block;
  height: 1px;
  left: -1px;
  position: absolute;
  width: 100%;
}

.mainContent .l-headerLogo {
  line-height: 0;
  width: 140px;
}

.mainContent .l-headerLogo img {
  position: absolute;
  width: 140px;
}

@media only screen and (max-width: 768px) {
  .mainContent .l-header {
    height: 45px;
    padding-left: 4.6875%;
    padding-right: 4.6875%;
    position: fixed;
  }
  .mainContent .l-header__inner {
    padding-top: 11px;
    width: 100%;
  }
  .mainContent .l-headerLogo,
  .mainContent .l-headerLogo img {
    width: 82px;
  }
}

.mainContent #pc-header img,
.mainContent #sp-header img {
  width: auto;
}

.mainContent #sp-header .drawer-content .drawer-content-inner .menu + div img,
.mainContent #sp-header .drawer-content .drawer-content-inner .menu + div + div img {
  width: 100%;
}

.mainContent .l-ftCommonLink {
  margin: 92px auto 15px auto;
  width: 960px;
}

.mainContent .l-ftCommonLink a .only {
  color: #000;
}

.mainContent .l-ftCommonLink__elem + .l-ftCommonLink__elem {
  margin-left: 20px;
}

.mainContent .l-ftCommonLink__btn {
  display: inline-block;
  font-size: 12px;
  margin-right: 12px;
  padding-left: 12px;
  position: relative;
}

.mainContent .l-ftCommonLink__btn:after {
  left: 0;
}

.mainContent .l-ftCommonLink__btn.second {
  background: url(../images/new_index/ico_arrow.svg) no-repeat right;
  background-size: 5px;
  font-size: 12px;
  margin-right: 0;
  padding-right: 9px;
}

@media only screen and (max-width: 768px) {
  .mainContent .l-ftCommonLink {
    margin-left: 18px;
    margin-top: 37px;
    width: auto;
  }
  .mainContent .l-ftCommonLink__elem {
    display: list-item;
    float: none;
  }
  .mainContent .l-ftCommonLink__elem + .l-ftCommonLink__elem {
    margin-left: 0;
    margin-top: 10px;
  }
  .mainContent .l-ftCommonLink__btn {
    font-size: 11px;
    padding-left: 12px;
  }
}

.mainContent .l-footer {
  -webkit-box-sizing: border-box;
  bottom: 0;
  box-sizing: border-box;
  height: 15px;
  padding: 0 30px;
  position: absolute;
  width: 100%;
}

.mainContent .l-footer__elem {
  margin: 0 auto;
  max-width: 960px;
  padding: 18px 0;
  width: 100%;
}

.mainContent .l-footer__grayarea {
  background-color: #f4f4f4;
  height: 50px;
  line-height: 50px;
  text-align: center;
}

.mainContent .l-footer__grayarea a {
  color: #787879;
}

.mainContent .l-footer__grayarea a:hover {
  text-decoration: none;
}

.mainContent .l-footer__link {
  float: left;
  position: relative;
}

.mainContent .l-footer__link li {
  float: left;
}

.mainContent .l-footer__link li + li {
  margin-left: 14px;
}

.mainContent .l-footer__link li a {
  background: url("../images/common/ft-icon-arrow.png") left center no-repeat;
  font-size: 12px;
  padding-left: 10px;
}

.mainContent .l-footer__copyright {
  float: right;
  font-size: 12px;
  position: relative;
}

@media only screen and (max-width: 768px) {
  .mainContent .l-footer {
    padding-left: 4.6875%;
    padding-right: 4.6875%;
  }
  .mainContent .l-footer__grayarea {
    font-size: 14px;
    height: 40px;
    line-height: 40px;
    margin-left: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-right: 0 !important;
  }
  .mainContent .l-footer__copyright {
    float: none;
    margin: 0 auto;
    width: 92px;
  }
  .mainContent .l-footer__link {
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    display: -webkit-box;
    display: -ms-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    float: none;
    justify-content: center;
  }
}

.mainContent #pc-footer img,
.mainContent #sp-footer img {
  width: auto;
}

@media only screen and (max-width: 768px) {
  .mainContent {
    /*.contact-links {
    display: none !important;
  }*/
  }
  .mainContent .l-footer {
    height: 15px;
  }
  .mainContent .pickup-links {
    display: block !important;
  }
}

.mainContent .c-btn--arrow {
  word-wrap: break-word;
  position: relative;
}

.mainContent .c-btn--arrow:after {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  border-right: 2px solid #004097;
  border-top: 2px solid #004097;
  bottom: 0;
  content: "";
  height: 6px;
  margin: auto;
  position: absolute;
  top: 0;
  transform: rotate(45deg);
  width: 6px;
}

.mainContent a.c-btn--arrow[target=_blank] {
  background: url(../images/new_index/ico_next.png) no-repeat right;
  padding-right: 12px;
}

.mainContent .c-btns {
  bottom: 0;
  display: block;
  position: fixed;
  right: 0;
  width: 75px;
  z-index: 999;
}

.mainContent .c-btns a {
  background: #eaeaea;
  display: block;
  height: 75px;
  width: 75px;
}

.mainContent .js-slide_btns {
  -webkit-box-sizing: border-box;
  background: #e0e0e0;
  bottom: 150px;
  box-sizing: border-box;
  display: none;
  height: 170px;
  padding: 16px 0;
  position: fixed;
  right: 0;
  width: 75px;
}

.mainContent .js-slide_btns a {
  background: #e0e0e0;
  display: block;
  height: 46px;
  position: relative;
}

.mainContent .js-slide_btns img {
  -webkit-transform: translate(50%, -50%);
  -ms-transform: translate(50%, -50%);
  height: 35px;
  position: absolute;
  right: 50%;
  top: 50%;
  transform: translate(50%, -50%);
  width: 35px;
}

.mainContent .sns-btns {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  background: rgba(17, 120, 188, 0.9);
  bottom: 0;
  display: block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  padding: 9px 0;
  position: fixed;
  right: 0;
  width: 100%;
  z-index: 999;
}

.mainContent body.-sclldown .sns-btns {
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  -webkit-transition: -webkit-transform 200ms;
  -o-transition: transform 200ms;
  transform: translateY(100%);
  transition: -webkit-transform 200ms;
  transition: transform 200ms;
  transition: transform 200ms, -webkit-transform 200ms;
}

.mainContent body.-scllup .sns-btns {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  -webkit-transition: -webkit-transform 200ms;
  -o-transition: transform 200ms;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  transform: translateY(0);
  transition: -webkit-transform 200ms;
  transition: transform 200ms;
  transition: transform 200ms, -webkit-transform 200ms;
}

.mainContent .sns-btns li:not(:first-child) {
  margin-left: 27px;
}

.mainContent .sns-btns a {
  display: block;
  width: 30px;
}

.mainContent .l-header .l-header__inner .l-header__link::before {
  -webkit-transform: translate(50%, -50%);
  -ms-transform: translate(50%, -50%);
  -webkit-transition: opacity .5s ease-out;
  -o-transition: opacity .5s ease-out;
  background: url("../images/common/header-thinkbenesse.png") no-repeat;
  background-position: center center;
  background-size: contain;
  content: '';
  height: 50%;
  opacity: 0;
  position: absolute;
  right: 50%;
  top: 50%;
  transform: translate(50%, -50%);
  transition: opacity .5s ease-out;
  /*width: 290px;
  height: 56px;*/
  width: 50%;
}

.mainContent .l-header--scrolled .l-header__inner .l-header__link::before {
  -webkit-transition: opacity .5s ease-out;
  -o-transition: opacity .5s ease-out;
  opacity: 1.0;
  transition: opacity .5s ease-out;
}

@media only screen and (max-width: 768px) {
  .mainContent {
    /* >>>>>>>>>>>>>>>>>>>>>> header */
    /* <<<<<<<<<<<<<<<<<<<<<< header */
  }
  .mainContent .c-btns {
    width: 40px;
  }
  .mainContent .c-btns a {
    height: 40px;
    width: 40px;
    /*right: 4.6875%;*/
  }
  .mainContent .js-slide_btns {
    display: none;
  }
  .mainContent .js-slide_btns.overlay {
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -ms-flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-sizing: border-box;
    background: rgba(0, 0, 0, 0.9);
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding-top: 72%;
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    z-index: 999;
  }
  .mainContent .js-slide_btns.overlay::before {
    color: #fff;
    content: 'SHARE ME';
    display: block;
    font-size: 16px;
    position: absolute;
    top: 32%;
  }
  .mainContent .js-slide_btns.overlay .c-btn--close {
    background: red;
    background: url(../images/common/closebtn.png) no-repeat;
    background-position: center center;
    background-size: 18px;
    content: '';
    display: block;
    height: 46px;
    position: absolute;
    right: 0;
    top: 0;
    width: 46px;
  }
  .mainContent .c-btns--slide {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    position: absolute;
    top: 48%;
    width: 188px;
  }
  .mainContent .c-btns--slide a {
    background: transparent;
    height: 39px;
    width: 39px;
  }
  .mainContent .sns-btns {
    padding: 11px 0;
  }
  .mainContent .sns-btns a {
    width: 27px;
  }
  .mainContent html.overlay,
  .mainContent body.overlay {
    height: auto;
    overflow: hidden;
  }
  .mainContent .l-header .l-header__inner .l-header__link::before {
    -webkit-transform: translate(50%, -50%);
    -ms-transform: translate(50%, -50%);
    -webkit-transition: opacity .5s ease-out;
    -o-transition: opacity .5s ease-out;
    background: url("../images/common/header-thinkbenesse.png") no-repeat;
    background-position: bottom center;
    background-size: contain;
    content: '';
    height: 50%;
    opacity: 0;
    position: absolute;
    right: 50%;
    top: 50%;
    transform: translate(50%, -50%);
    transition: opacity .5s ease-out;
    width: 50%;
  }
  .mainContent .l-header--scrolled .l-header__inner .l-header__link::before {
    -webkit-transition: opacity .5s ease-out;
    -o-transition: opacity .5s ease-out;
    opacity: 1.0;
    transition: opacity .5s ease-out;
  }
  .mainContent #lang {
    position: absolute;
    right: 31px;
    top: 7px;
  }
}

@media only screen and (max-width: 768px) and (max-width: 768px) {
  .mainContent #lang {
    z-index: 999;
  }
}

@media only screen and (max-width: 768px) {
  .mainContent #lang ul {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    width: 41px;
  }
  .mainContent #lang .langJp,
  .mainContent #lang .langEn {
    position: relative;
    width: 22%;
  }
  .mainContent .langJp img,
  .mainContent .langEn img {
    width: 100%;
  }
  .mainContent #lang .langJp::before {
    -webkit-transform: rotate(124deg);
    -ms-transform: rotate(124deg);
    background: #ccc;
    bottom: 4px;
    content: '';
    display: block;
    height: 1px;
    left: -14px;
    position: absolute;
    transform: rotate(124deg);
    width: 7px;
  }
  .mainContent #lang.-jp .langEn::after {
    background: #231815;
    bottom: -3px;
    content: '';
    display: block;
    height: 1px;
    left: -1px;
    position: absolute;
    width: 100%;
  }
}

.mainContent #menu {
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  position: absolute;
  right: 40px;
  top: 50%;
  transform: translateY(-50%);
}

@media only screen and (max-width: 768px) {
  .mainContent #menu {
    z-index: 999;
  }
}

.mainContent #menu .menu__close {
  display: none;
}

.mainContent #menu img {
  height: auto;
  width: 30px;
}

.mainContent body.no-scroll #menu .menu__open {
  display: none;
}

.mainContent body.no-scroll #menu .menu__close {
  display: block;
}

.mainContent #menuNav {
  -webkit-overflow-scrolling: touch;
  background: rgba(0, 0, 0, 0.8);
  bottom: 0;
  display: none;
  left: 0;
  overflow: auto;
  position: fixed;
  right: 0;
  text-align: left;
  top: 0;
}

.mainContent #menuNav .inner {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  background: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row-reverse;
  height: 100vh;
  padding: 97px 60px;
  position: fixed;
  right: 0;
}

.mainContent #menuNav .inner .category {
  width: 630px;
}

@media only screen and (max-width: 768px) {
  .mainContent #menuNav .inner .category {
    width: 100%;
  }
}

.mainContent #menuNav .inner .menuNav__about {
  width: 270px;
}

@media only screen and (min-width: 769px) {
  .mainContent #menuNav .inner .menuNav__about .about li {
    margin-left: 1em;
    text-indent: -1em;
  }
}

@media only screen and (max-width: 768px) {
  .mainContent #menuNav .inner .menuNav__about {
    width: 100%;
  }
}

.mainContent #menuNav .inner nav .title.-genre {
  font-family: 'Noto Sans JP', 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
  font-size: 21px;
  font-weight: 400;
  margin-top: 3px;
}

.mainContent #menuNav .inner nav.menuNav__about .listTitle {
  font-size: 24px;
}

.mainContent #menuNav .inner nav.category .listTitle {
  border-bottom: 1px solid #ddd;
  font-family: 'Noto Sans JP', 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
  font-size: 18px;
  font-weight: 300;
  margin-top: 16px;
  padding-bottom: 10px;
}

.mainContent #menuNav .inner nav.category .listTitle.-cat {
  margin-top: 44px;
}

.mainContent #menuNav .inner nav ul:not(.menuNav__archlinks) {
  display: inline-block;
  letter-spacing: 0.32px;
  margin-top: 18px;
}

@media only screen and (min-width: 769px) {
  .mainContent #menuNav .inner nav.category ul.menuNav__archlinks {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
  }
  .mainContent #menuNav .inner nav.category ul.menuNav__archlinks li {
    width: 47%;
  }
}

.mainContent #menuNav .inner nav.category ul.menuNav__archlinks li {
  border-bottom: 1px solid #dddddd;
  padding-left: 0;
  position: relative;
}

.mainContent #menuNav .inner nav.category ul.menuNav__archlinks li:after {
  -webkit-transform: translateY(-71%) rotate(45deg);
  -ms-transform: translateY(-71%) rotate(45deg);
  border-right: 1px solid #000;
  border-top: 1px solid #000;
  content: '';
  height: 6px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-71%) rotate(45deg);
  width: 6px;
}

.mainContent #menuNav .inner nav.category ul.menuNav__archlinks a {
  display: block;
  font-size: 21px;
  padding: 0 0 19px;
  width: 100%;
}

.mainContent #menuNav .inner nav.category ul.menuNav__genrelinks {
  -ms-flex-wrap: wrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  margin-top: 21px;
}

.mainContent #menuNav .inner nav.category ul.menuNav__genrelinks li {
  margin-bottom: 0;
  padding-left: 0;
  width: 49.8%;
}

.mainContent #menuNav .inner nav.category ul.menuNav__genrelinks li:nth-child(n+3) {
  margin-top: 24px;
}

@media only screen and (min-width: 769px) {
  .mainContent #menuNav .inner nav.category ul.menuNav__genrelinks li:nth-child(n+3) {
    margin-top: 24px;
  }
}

.mainContent #menuNav .inner nav.category ul.menuNav__genrelinks li a {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 14px;
  line-height: 1.2;
}

.mainContent #menuNav .inner nav.category ul.menuNav__genrelinks li a img {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  margin-right: 7px;
  width: auto;
}

.mainContent #menuNav .inner nav.category ul.menuNav__catlinks {
  -ms-flex-wrap: wrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
}

.mainContent #menuNav .inner nav.category ul.menuNav__catlinks li {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 0;
  margin-bottom: 0;
  width: 33.33%;
}

@media only screen and (min-width: 769px) {
  .mainContent #menuNav .inner nav.category ul.menuNav__catlinks li:nth-child(n+4) {
    margin-top: 24px;
  }
}

.mainContent #menuNav .inner nav.category ul.menuNav__catlinks li a {
  font-size: 14px;
}

@media only screen and (max-width: 768px) {
  .mainContent #menuNav .inner nav.category ul.menuNav__catlinks li {
    width: 50%;
  }
}

.mainContent #menuNav .inner nav ul li {
  margin-bottom: 23px;
  text-align: left;
}

.mainContent #menuNav .inner nav ul li a {
  font-family: 'Noto Sans JP', 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
  font-size: 16px;
  font-weight: 300;
}

@media only screen and (min-width: 769px) {
  .mainContent #menuNav .inner nav ul li.-exlink:after {
    background-image: url("../images/new_index/ico_next.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    content: '';
    display: inline-block;
    height: 10px;
    margin-left: 0.5em;
    width: 10px;
  }
}

.mainContent #menuNav .inner nav ul li:last-child {
  margin-bottom: 0;
}

@media only screen and (min-width: 769px) {
  .mainContent #menuNav .inner nav ul.about li:before {
    content: "-";
    font-size: 16px;
    padding-right: 10px;
  }
}

.mainContent #menuNav .inner nav.category {
  margin-left: 48px;
}

.mainContent #menuNav .inner nav.category ul li {
  font-size: 26px;
  line-height: 1;
  margin-bottom: 37px;
  padding-left: 23px;
  position: relative;
  vertical-align: middle;
}

.mainContent #menuNav .inner nav.category ul.menuNav__catlinks li:before {
  content: "";
  font-size: 16px;
  height: 9px;
  left: 0px;
  padding-right: 10px;
  position: absolute;
  top: 3px;
  width: 9px;
}

.mainContent #menuNav .inner nav.category ul li.education:before {
  background: url(../images/new_index/ico_education.png) no-repeat center;
}

.mainContent #menuNav .inner nav.category ul li.technology:before {
  background: url(../images/new_index/ico_technology.png) no-repeat center;
}

.mainContent #menuNav .inner nav.category ul li.care:before {
  background: url(../images/new_index/ico_care.png) no-repeat center;
}

.mainContent #menuNav .inner nav.category ul li.lifestyle:before {
  background: url(../images/new_index/ico_lifestyle.png) no-repeat center;
}

.mainContent #menuNav .inner nav.category ul li.contribution:before {
  background: url(../images/new_index/ico_contribution.png) no-repeat center;
}

.mainContent #menuNav .inner nav.category ul li.with_region:before {
  background: url(../images/new_index/ico_with_region.png) no-repeat center;
}

.mainContent #menuNav .inner .social {
  margin-top: 58px;
}

.mainContent #menuNav .inner .social .listTitle {
  font-size: 16px;
  font-weight: normal;
}

.mainContent #menuNav .inner .social ul {
  margin-top: 16px;
}

.mainContent #menuNav .inner .social ul li {
  display: inline-block;
  margin-left: 16px;
}

.mainContent #menuNav .inner .social ul li:before {
  content: none;
}

.mainContent #menuNav .inner .social ul li:first-child {
  margin-left: 0;
}

.mainContent #menuNav .inner .social ul li a img {
  height: 46px;
  width: 46px;
}

.mainContent #menuNav .menuNav__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  right: 40px;
  top: 27px;
}

@media only screen and (max-width: 768px) {
  .mainContent #menuNav .menuNav__box {
    background: #fff;
    right: 12px;
    top: 9px;
  }
  .mainContent #menuNav .menuNav__box img {
    width: 19px;
  }
}

.mainContent #menuNav #lang_bmenu {
  margin-right: 19px;
  margin-top: 3px;
}

.mainContent #menuNav #lang_bmenu ul {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  width: 63px;
}

.mainContent #menuNav #lang_bmenu .langJp,
.mainContent #menuNav #lang_bmenu .langEn {
  position: relative;
}

.mainContent #menuNav #lang_bmenu .langJp:before {
  -webkit-transform: rotate(117deg);
  -ms-transform: rotate(117deg);
  background: #ccc;
  bottom: 8px;
  content: '';
  display: block;
  height: 1px;
  left: -16px;
  position: absolute;
  transform: rotate(117deg);
  width: 14px;
}

.mainContent #menuNav #lang_bmenu.-en .langJp:after {
  background: #231815;
  bottom: -6px;
  content: '';
  display: block;
  height: 1px;
  left: -1px;
  position: absolute;
  width: 100%;
}

.mainContent #menuNav #close img {
  height: auto;
  width: 34px;
}

@media screen and (max-width: 768px) {
  .mainContent #menu {
    right: -5px;
  }
  .mainContent #menu img {
    width: 19px;
  }
  .mainContent #menuNav {
    background: none;
  }
  .mainContent #menuNav .inner {
    background: none;
    display: block;
    overflow: scroll;
    padding: 0;
    top: 45px;
    width: 100%;
  }
  .mainContent #menuNav .inner nav {
    -webkit-box-sizing: border-box;
    background: #fff;
    box-sizing: border-box;
    display: block;
    margin-top: 0;
    padding: 0 5% 15vh 5%;
  }
  .mainContent #menuNav .inner nav .listTitle {
    font-size: 22px;
  }
  .mainContent #menuNav .inner nav ul:not(.menuNav__archlinks) {
    display: block;
    margin-top: 15px;
    padding-top: 10px;
  }
  .mainContent #menuNav .inner ul li {
    border-bottom: 1px solid #e0e0e0;
    margin-bottom: 10px !important;
    padding-bottom: 10px;
  }
  .mainContent #menuNav .inner nav ul li:before {
    content: none;
  }
  .mainContent #menuNav nav ul li a,
  .mainContent #menuNav nav ul li span {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    margin-right: 13px;
  }
  .mainContent #menuNav nav ul li a[target=_blank] {
    background: url(../images/new_index/ico_next.png) no-repeat right;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .mainContent #menuNav .inner nav.category {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-left: 0;
    padding: 7% 5% 2% 5%;
  }
  .mainContent #menuNav .inner nav.category ul li {
    line-height: 1.4;
  }
  .mainContent #menuNav .inner nav.category ul li:before {
    height: 9px;
    top: 0.4em;
  }
  .mainContent #menuNav .inner nav .archive ul li {
    padding-left: 0;
  }
  .mainContent #menuNav .inner nav .archive ul li:before {
    content: none;
    padding-right: 0;
  }
  .mainContent #menuNav .inner nav ul.about {
    -ms-flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 10px;
  }
  .mainContent #menuNav .inner nav ul.about li {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    flex: 0 0 50%;
  }
  .mainContent #menuNav .inner nav ul.about li.-w100 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
  }
  .mainContent #menuNav .inner nav ul.about li a {
    background-size: 0.6rem;
    font-size: 1.2rem;
  }
  .mainContent #menuNav .inner nav ul.about li:first-child a {
    background-position: calc(100% - 13px);
    border-right: 1px solid #e0e0e0;
    margin-right: 0;
  }
  .mainContent #menuNav .inner nav ul.about li:nth-child(2) a {
    padding-left: 13px;
  }
  .mainContent #menuNav .inner nav ul.about li.-exlink a {
    background: url(../images/new_index/ico_next.png) no-repeat right;
  }
  .mainContent #menuNav .inner nav .social {
    background: #ffffff;
    margin-top: 0;
    width: 100%;
  }
}

@media only screen and (max-width: 768px) and (min-width: 769px) {
  .mainContent #menuNav .inner nav .social {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (max-width: 768px) {
  .mainContent #menuNav .inner nav .social ul {
    border-top: none;
    margin-left: 20px;
    margin-top: 0;
    padding-top: 0;
  }
  .mainContent #menuNav .inner nav .social ul li {
    border-bottom: none;
    margin-bottom: 0 !important;
    margin-left: 10px;
    padding-bottom: 0;
  }
  .mainContent #menuNav .inner nav .social ul li a {
    margin-right: 0;
  }
  .mainContent #menuNav nav ul li a[target=_blank] {
    background: none;
  }
  .mainContent #menuNav .inner {
    background: #fff;
  }
  .mainContent #menuNav .menuNav__box {
    right: 7px;
    top: 8px;
  }
  .mainContent #menuNav #close img {
    width: 25px;
  }
  .mainContent #menuNav .inner nav .title.-genre {
    font-size: 18px;
  }
  .mainContent #menuNav .inner nav.category {
    padding-bottom: 57px;
  }
  .mainContent #menuNav .inner nav.category .listTitle {
    font-size: 16px;
    margin-top: 21px;
  }
  .mainContent #menuNav .inner nav.category .listTitle.-cat {
    margin-top: 23px;
  }
  .mainContent #menuNav .inner nav.category ul li {
    border-bottom: none;
  }
  .mainContent #menuNav .inner nav.category ul.menuNav__archlinks a {
    font-size: 18px;
    padding: 0px 0 6px;
  }
  .mainContent #menuNav .inner nav.category ul.menuNav__genrelinks {
    margin-top: 12px;
  }
  .mainContent #menuNav .inner nav.category ul.menuNav__genrelinks li a {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-size: 12px;
  }
  .mainContent #menuNav .inner nav.category ul.menuNav__catlinks li {
    padding-bottom: 0;
  }
  .mainContent #menuNav .inner nav.category ul.menuNav__catlinks li a {
    font-size: 12px;
  }
  .mainContent #menuNav .inner nav.menuNav__about {
    border-top: 1px solid #ddd;
    padding-top: 26px;
  }
  .mainContent #menuNav .inner nav.menuNav__about .listTitle {
    font-size: 21px;
  }
  .mainContent #menuNav .inner nav.menuNav__about .social ul {
    margin: 19px 0 0;
  }
  .mainContent #menuNav .inner nav.menuNav__about .social ul li a img {
    height: 50px;
    width: 50px;
  }
}

.mainContent .ftLink {
  background: #f5f5f5;
  margin-top: 92px;
  padding: 20px 0;
}

.mainContent .ftLink .l-ftCommonLink {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #f5f5f5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 1200px;
  padding: 20px 41px;
  width: auto;
}

.mainContent .ftLink .l-ftCommonLink a {
  color: #0070cd;
}

.mainContent .ftLink .l-ftCommonLink .c-btn--arrow:after {
  content: none;
}

.mainContent .ftLink .l-ftCommonLink .l-ftCommonLink__btn {
  padding-left: 0;
}

.mainContent .ftLink .social,
.mainContent .ftLink .social ul {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.mainContent .ftLink .social h3 {
  font-size: 13px;
  margin-right: 12px;
}

.mainContent .ftLink .social ul li {
  margin-left: 11px;
}

.mainContent .ftLink .social ul li img {
  height: 24px;
  width: 24px;
}

@media screen and (max-width: 768px) {
  .mainContent .ftLink {
    margin-top: 35px;
    padding: 0;
  }
  .mainContent .ftLink .l-ftCommonLink {
    display: block;
    padding: 20px 0 !important;
    width: 90% !important;
  }
  .mainContent .ftLink .l-ftCommonLink__elem {
    padding-bottom: 10px;
  }
  .mainContent .ftLink .social {
    background: url(../images/new_index/line_articleList.png) no-repeat top center;
    padding-top: 17px;
  }
  .mainContent .ftLink .social h3 {
    font-size: 10px;
    margin-right: 5px;
  }
  .mainContent .ftLink .social ul li {
    line-height: 1em;
    margin-left: 5px;
  }
  .mainContent .ftLink .social ul li img {
    height: 18px;
    width: 18px;
  }
}

.mainContent .footer {
  background: #ffffff !important;
  padding-top: 33px !important;
}

.mainContent .footer-content {
  width: 100% !important;
}

.mainContent .pickup-links {
  margin: 29px auto 52px auto !important;
  /*width: 1200px !important;*/
  max-width: 1200px;
  padding: 0 41px !important;
}

.mainContent .footer-company-links {
  margin: 54px auto 38px auto !important;
  /*width: 1200px !important;*/
  max-width: 1200px;
  padding: 0 41px !important;
}

.mainContent .footer-company-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1200px;
  padding: 0 41px !important;
}

.mainContent .footer-company-block.-benehd {
  margin-top: 54px !important;
}

.mainContent .footer-company-block.-benehd .footer-company-links2 {
  margin-bottom: 0;
}

.mainContent .footer-company-block.-sustop {
  margin-bottom: 50px !important;
  margin-top: 32px !important;
}

.mainContent .footer-title {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 11em;
  flex: 0 0 11em;
  font-family: 'Noto Sans', sans-serif , Roboto !important;
  font-size: 12px;
  font-weight: bold;
}

.mainContent .footer-title a {
  font-size: 12px;
  padding-right: 15px;
  position: relative;
}

.mainContent .footer-title a:before {
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  background-image: url("../images/new_index/ico_next.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  height: 10px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
}

.mainContent .footer-company-links2 {
  /*width: 1200px;*/
  max-width: 1200px;
  padding: 0 30px !important;
}

.mainContent .footer-content.include---renew .footer-company-links li {
  border-right: 1px solid #cccccc;
  margin-right: 27px;
  padding-right: 30px;
}

.mainContent .footer-content.include---renew .footer-company-links li:last-child {
  border-right: none;
}

.mainContent .footer-company-block .footer-company-links2 li {
  display: inline-block;
}

.mainContent .footer-company-links2 li {
  font-family: 'Noto Sans', sans-serif , Roboto !important;
  font-size: 12px;
  font-weight: bold;
  margin-right: 37px;
}

.mainContent .footer-company-links2 li a {
  font-size: 12px;
  padding-right: 15px;
  position: relative;
}

.mainContent .footer-company-links2 li a:before {
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  background-image: url("../images/new_index/ico_next.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  height: 10px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
}

.mainContent .footer-company-links2 li:nth-child(16), .mainContent .footer-company-links2 li:nth-child(12), .mainContent .footer-company-links2 li:nth-child(9), .mainContent .footer-company-links2 li:nth-child(5), .mainContent .footer-company-links2 li:nth-child(1) {
  width: 19em;
}

.mainContent .footer-company-links2 li:nth-child(17), .mainContent .footer-company-links2 li:nth-child(13), .mainContent .footer-company-links2 li:nth-child(10), .mainContent .footer-company-links2 li:nth-child(6), .mainContent .footer-company-links2 li:nth-child(2) {
  width: 19em;
}

.mainContent .footer-company-links2 li:nth-child(14), .mainContent .footer-company-links2 li:nth-child(7), .mainContent .footer-company-links2 li:nth-child(3) {
  width: 18em;
}

.mainContent .footer-company-links2 li:nth-child(11) {
  width: 21em;
}

.mainContent .footer-company-links2 li:nth-child(n+5) {
  margin-top: 24px;
}

.mainContent .footer-copyright {
  border-top: 1px solid #eaeaea;
  padding-bottom: 65px;
  padding-top: 65px;
  text-align: center;
  width: 100%;
}

.mainContent .footer-content.include---renew .contact-to {
  margin: 0 auto !important;
  max-width: 900px;
}

@media screen and (max-width: 768px) {
  .mainContent .footer {
    padding-top: 0px !important;
  }
  .mainContent .footer-content {
    padding: 0 !important;
  }
  .mainContent .pickup-links,
  .mainContent .footer-links2,
  .mainContent .footer-company-name {
    margin: 34px auto 0 auto !important;
    padding: 0 !important;
    width: 92% !important;
  }
  .mainContent .footer-title-link img {
    margin-left: 0.5em;
  }
  .mainContent .list-box {
    background: #ffffff !important;
    border: none !important;
    border-radius: 0 !important;
    border-top: 1px solid #dddddd !important;
    margin: 24px auto 0 auto !important;
  }
  .mainContent .list-box li {
    border-bottom: 1px solid #dddddd !important;
  }
  .mainContent .footer-content.include---renew .pickup-links li a {
    padding: 11px 5px 12px 5px !important;
  }
  .mainContent .link-basic--after:after, .mainContent .link-basic--after--blue:after {
    background: url(../images/new_index/ico_arrow.svg) no-repeat right !important;
    background-size: 45% !important;
  }
  .mainContent .footer-content.include---renew .footer-company-name {
    text-align: center;
  }
  .mainContent .list-box--indent1 {
    -ms-flex-wrap: wrap;
    border-top: 1px solid #dddddd;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    margin-top: 11px;
  }
  .mainContent .list-box--indent1 li {
    border-bottom: 1px solid #dddddd;
    font-size: 10px;
    min-height: 1.6em;
    padding: 5px 0;
    text-align: left;
    width: 49%;
  }
  .mainContent .list-box--indent1 li a img {
    margin-left: 1.0em;
  }
  .mainContent .list-box--indent1 li:nth-child(odd) a {
    border-right: 1px solid #dddddd;
  }
  .mainContent .list-box--indent1 li:last-child a {
    border-right: none;
  }
  .mainContent .list-box--indent1 > li > a {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    padding: 0 5px !important;
  }
  .mainContent .link-blank--after:after {
    background: none !important;
  }
  .mainContent .footer-copyright {
    margin-top: 47px !important;
    padding-bottom: 0;
    padding-top: 27px;
  }
  .mainContent .footer-content.include---renew .contact-links {
    margin: 24.5px auto 0 auto;
    width: 92%;
  }
  .mainContent .footer-content.include---renew .contact-links li a {
    padding-bottom: 6px !important;
    padding-top: 6px !important;
  }
}
