@charset "UTF-8";
/* COMPASS
 * ----------------------------------------------- */
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;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

/* BASE
 * ----------------------------------------------- */
/* ADDITIONAL RESET
 * ----------------------------------------------- */
*,
*:before,
*:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body * {
  max-height: 99999em;
}

body img {
  max-height: none;
  max-width: 100%;
}

input,
label,
select,
button,
textarea {
  margin: 0;
  border: 0;
  padding: 0;
  display: inline-block;
  vertical-align: middle;
  white-space: normal;
  background: none;
  font: inherit;
  line-height: 1;
}

input:focus,
button:focus,
select:focus {
  outline: 0;
}

/* Make webkit render the search input like a normal text field */
input[type=search] {
  -webkit-appearance: textfield;
}

/* Turn off the recent search for webkit. It adds about 15px padding on the left */
::-webkit-search-decoration {
  display: none;
}

/* Turn off scroll bars in IE unless needed */
textarea {
  overflow: auto;
  white-space: pre-line;
}

/* PRINTING
 * ----------------------------------------------- */
@media print {
  body {
    -webkit-print-color-adjust: exact;
    color-adjust: exact;
  }

  html,
  body {
    margin: 0;
  }

  @page {
    margin: 0;
  }
  @page :left {
    margin: 0;
  }
  @page :right {
    margin: 0;
  }
  @page :first {
    margin-top: 0;
  }
}
/* GENERAL
 * ----------------------------------------------- */

@font-face{
  font-family: "NotoSansJP-Medium";
  src: url(./NotoSansJP-Medium.otf);
}

html {
  font-size: 16px;
}

body {
  color: #333333;
  font-family: "Noto Sans JP", "NotoSansJP-Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
  font-size: 0.94rem;
  font-weight: 400;
  line-height: 1.4;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
  width: 100%;
}
.ie body {
  font-family: "Noto Sans JP", "NotoSansJP-Medium", "メイリオ", "ヒラギノ角ゴ", "MS Pゴシック", Meiryo;
}

.ftSerif {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Times New Roman", "游明朝", YuMincho, "メイリオ", Meiryo, Georgia, serif;
}
.rubik {
  font-family: "Rubik", sans-serif;
}
.lato {
  font-family: "Lato", sans-serif;
}
.latoB {
  font-family: "Lato", sans-serif;
  font-weight: 700;
}
.nunito{
  font-family: 'Nunito', sans-serif;
}
.m_plus{
  font-family: 'M PLUS 1p', sans-serif;
}
.nikomoji{
  font-family: "Nico Moji", sans-serif;
}

/* HELPERS
 * ----------------------------------------------- */
a {
  color: #333333;
  text-decoration: none;
}

.trans {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
  -moz-transition: opacity 0.26s ease;
  -o-transition: opacity 0.26s ease;
  -webkit-transition: opacity 0.26s ease;
  transition: opacity 0.26s ease;
}
.trans:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}

.clearfix {
  *zoom: 1;
}
.clearfix:after {
  content: " ";
  display: table;
  clear: both;
}

.hidden {
  display: none;
}

.invisible {
  visibility: hidden;
}

.textLeft {
  text-align: left;
}

.textCenter {
  text-align: center !important;
}

.textRight {
  text-align: right;
}

.textJustify {
  text-align: justify;
  text-justify: distribute;
}

.textNowrap {
  white-space: nowrap;
}

.textLowercase {
  text-transform: lowercase;
}

.textUppercase {
  text-transform: uppercase;
}

.textCapitalize {
  text-transform: capitalize;
}

.container {
  min-width: 1000px;
  overflow: hidden;
  position: relative;
}

.wrapper {
  width: 990px;
  margin-left: auto;
  margin-right: auto;
}

.des {
  line-height: 1.86667;
}

.blue {
  color: #008aff;
}

.mb5 {
  margin-bottom: 5px !important;
}
.mb10 {
  margin-bottom: 10px !important;
}
.mb20 {
  margin-bottom: 20px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.fwn {
  font-weight: normal !important;
}

/* RESPONSIVE
 * ----------------------------------------------- */
.sm,.sm_table {
  display: none !important;
}

@media (min-width: 769px) {
  html {
    overflow: auto !important;
  }

  body.ovl {
    position: static !important;
    overflow: auto !important;
  }

  a.udl:hover {
    text-decoration: underline;
  }
}
@media (max-width: 768px) {
  .md {
    display: none !important;
  }

  .sm {
    display: block !important;
  }

  .trans,
  .trans:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
  }

  body {
    font-size: 0.88rem;
  }

  .container {
    width: auto;
    min-width: 320px;
  }

  .wrapper {
    width: auto;
    margin: 0;
    padding: 0 20px;
  }

  .des {
    line-height: 1.78571;
  }

  body.ovl {
    overflow: hidden;
  }
}
@media (max-width: 374px) {
  .wrapper {
    padding: 0 12.5px;
  }
}
/* PARTS
 * ----------------------------------------------- */
/* COMMON HEADER
 * ----------------------------------------------- */
header {
  padding: 9px 0 2px;
  position: relative;
  z-index: 4;
}
header .headerLogo {
  float: left;
  width: 217px;
}
header .navHeader {
  float: right;
  position: relative;
  margin-top: 11px;
  display: flex;
}
header .navHeader .login {
  background: #FFFFFF;
  border: 1px solid #C7C7C7;
  border-radius: 4px;
  width: 110px;
  height: 40px;
  font-size: 14px;
  font-weight: 400;
}
header .navHeader .login:hover{
  border: 1px solid #008AFF;
  border-radius: 4px;
}
header .navHeader .login a{
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
header .navHeader .login:hover a{
  text-decoration: underline;
}
header .navHeader .menu {
  margin-top: 10px;
  margin-right: 70px;
}
header .navHeader .menu li {
  display: inline-block;
  margin-left: 21px;
}
header .navHeader .menu li a {
  font-size: 0.75rem;
  color: #333;
  position: relative;
}
header input[type=search] {
  padding: 0 35px 0 10px;
  height: 36px;
  width: 55px;
  -webkit-border-radius: 10em;
  -moz-border-radius: 10em;
  border-radius: 10em;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  transition: all 0.5s;
}
header input:-moz-placeholder, header input::-webkit-input-placeholder {
  color: #999;
}
header input.buttonSearch {
  background: url("../img/common/ico_search.png") no-repeat center;
  width: 20px;
  height: 20px;
  position: absolute;
  right: 9px;
  top: 7px;
  cursor: pointer;
  z-index: 9;
}
header .searchForm {
  float: right;
  position: absolute;
  right: -7px;
  top: 4px;
}
header .searchForm input[type=search] {
  width: 15px;
  padding-left: 10px;
  color: transparent;
  float: right;
  -webkit-appearance: none;
  -moz-appearance: none;
  box-shadow: none;
  visibility: hidden;
  opacity: 0;
}
header .searchForm input[type=search]:hover {
  background-color: #fff;
}
header .searchForm input:-moz-placeholder, header .searchForm input::-webkit-input-placeholder {
  color: transparent;
}
header .searchForm.active input[type=search] {
  border: solid 1px #333333;
  width: 280px;
  padding-left: 9px;
  color: #000;
  background-color: #fff;
  cursor: auto;
  box-shadow: 0px 1px 6px 0px rgba(50, 50, 50, 0.4);
  opacity: 1;
  visibility: visible;
}
header .areaSM {
  position: relative;
  width: 100%;
  background: #fff;
  float: left;
  display: none;
}
header .areaSM.active {
  right: 0;
}
header .areaSM .closeMenu {
  position: absolute;
  top: 15px;
  right: 15px;
}
header .areaSM .closeMenu img {
  display: block;
}
header .areaSM .topLink a {
  background: url("../img/common/sp/ico_home.png") no-repeat left 19px center;
  background-size: 28px;
}
header .areaSM .bgArea {
  padding: 30px 25px;
  background: url("../img/common/sp/bg_nav.jpg") no-repeat center;
  background-size: cover;
  position: relative;
  /*&:before
   * position: absolute
   * content: ''
   * background: url('../img/common/sp/lin_rainbow.jpg') no-repeat
   * background-size: cover
   * height: 4px
   * width: 100%
   * top: 0
   * left: 0 */
}
header .areaSM .bgArea .navSm {
  background: #fff;
  box-shadow: 0px 0px 20px 0px rgba(50, 50, 50, 0.1);
}
header .areaSM .bgArea .navSm li {
  border-bottom: 1px solid #e5e5e5;
}
header .areaSM .bgArea .navSm li:last-child {
  border-bottom: none;
}
header .areaSM .bgArea .navSm li a {
  display: block;
  font-size: 0.88rem;
  font-weight: 500;
  padding: 20px 0 20px 70px;
}
header .areaSM .bgArea .navSm li.mn01 a {
  background: url("../img/common/sp/ico_nav01.jpg") no-repeat left 20px center;
  background-size: 30px;
}
header .areaSM .bgArea .navSm li.mn02 a {
  background: url("../img/common/sp/ico_nav02.jpg") no-repeat left 20px center;
  background-size: 30px;
}
header .areaSM .bgArea .navSm li.mn03 a {
  background: url("../img/common/sp/ico_nav03.jpg") no-repeat left 20px center;
  background-size: 30px;
}
header .areaSM .subN {
  padding: 0 25px;
  margin-top: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
header .areaSM .subN li {
  border-bottom: 1px solid #e5e5e5;
  width: 47%;
}
header .areaSM .subN li a {
  display: block;
  padding: 10px 0;
}
header .areaSM .btnCall {
  padding: 0 25px;
  margin: 30px 0;
}
header .areaSM .btnCall a {
  display: block;
  text-align: center;
  height: 60px;
  line-height: 60px;
  border-radius: 30px;
  background: #ed7987;
}
header .areaSM .btnCall a span {
  display: inline-block;
  height: 100%;
  font-weight: 500;
  color: #fff;
  font-size: 0.94rem;
  padding-left: 25px;
  background: url("../img/common/sp/ico_phone.png") no-repeat left center;
  background-size: 20px;
}
header .areaSM .searchSm {
  padding: 0 25px 30px;
  margin-top: 25px;
}
header .areaSM .searchSm input {
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  box-shadow: none;
  border: 1px solid #333;
  border-radius: 5px;
  height: 50px;
  padding: 0 33px 0 12px;
  background: #fff url("../img/common/sp/ico_searchmenu.png") no-repeat right 13px center;
  background-size: 19px 19px;
}
header .areaSM .searchSm input::-webkit-input-placeholder {
  color: #999999;
}
header .btnMenu {
  position: absolute;
  width: 25px;
  top: 17px;
  right: 15px;
  text-align: center;
}
header .btnMenu img.nor {
  display: block;
}
header .btnMenu img.act {
  display: none;
}
header .btnMenu.active img.nor {
  display: none;
}
header .btnMenu.active img.act {
  display: inline-block;
  height: 19px;
}
/*
header.tablAct .wrapper {
  width: 100%;
}
header.tablAct .searchForm {
  right: 65px;
  top: 15px;
}
header.tablAct .btnMenu {
  display: block !important;
  width: 35px;
  top: 30px;
}
header.tablAct .btnMenu img.act {
  height: 21px !important;
}
header.tablAct .navHeader {
  margin-top: 0;
}
header.tablAct .navHeader .menu {
  display: none;
}
header.tablAct .overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.7);
  z-index: 2;
  opacity: 0;
  visibility: hidden;
  transition: 0.2s;
}
header.tablAct .overlay.show {
  opacity: 1;
  visibility: visible;
}
*/

@media (min-width: 960px) {
  .desktop header .areaSM {
    display: none !important;
  }
  .desktop .overlay {
    display: none !important;
  }
}

@media (min-width: 769px) {
  header .navHeader .menu li a:after {
    content: "";
    height: 1px;
    background: #333;
    display: block;
    position: absolute;
    bottom: -9px;
    right: 100%;
    left: 0;
    transition: right 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition-delay: 0.08s;
  }
  header .navHeader .menu li a:hover:after {
    right: 0;
  }
}

/*
@media screen and (max-width: 959px) and (min-width: 769px) {
  header .searchForm {
    right: 65px;
    top: 15px;
  }
  header .btnMenu {
    display: block !important;
    width: 35px;
    top: 30px;
  }
  header .btnMenu img.act {
    height: 21px !important;
  }
  header .navHeader {
    margin-top: 0;
  }
  header .navHeader .menu {
    display: none;
  }
  header .overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.7);
    z-index: 2;
    opacity: 0;
    visibility: hidden;
    transition: 0.2s;
  }
  header .overlay.show {
    opacity: 1;
    visibility: visible;
  }
}
*/

@media (max-width: 768px) {
  header {
    padding: 7px 0 5px;
  }
  header .wrapper {
    padding: 0;
  }
  header .headerLogo {
    margin-left: 12px;
    padding-bottom: 7px;
    width: auto;
  }
  header .headerLogo img {
    height: 38px;
    display: block;
  }
  header .navHeader {
    margin-top: 0;
    margin-right: 48px;
  }
  header .navHeader .login {
    position: relative;
    top: 3px;
    left: 5px;
    background: #FFFFFF;
    border: 1px solid #C7C7C7;
    border-radius: 4px;
    width: 80px;
    height: 30px;
    font-size: 12px;
    margin-right: 55px;
  }
  header .navHeader .login:hover{
    border: 1px solid #008AFF;
    border-radius: 4px;
  }
  header .navHeader .login a{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  header .searchForm {
    top: 2px;
    right: 5px;
  }
  header input.buttonSearch {
    background: url("../img/common/sp/ico_search.png") no-repeat;
    background-size: 20px;
  }
  header input[type=search] {
    height: 33px;
    line-height: 33px;
  }
  header .searchForm.active input[type=search] {
    width: 150px;
    font-size: 0.75rem;
  }
}
/* OVERLAY */
.overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  top: 57px;
  left: 0;
  z-index: 3;
  display: none;
}

.tablet .overlay {
  top: 77px;
}

/* COMMON FOOTER
 * ----------------------------------------------- */
footer {
  padding-top: 70px;
  border-top: 1px solid #ccc;
  position: relative;
}
footer .upperFooter {
  padding-bottom: 40px;
  border-bottom: 1px solid #ccc;
}
footer .upperFooter .listContact {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
  border-radius: 50px;
  overflow: hidden;
}
footer .upperFooter .listContact li {
  width: 50%;
}
footer .upperFooter .listContact li a {
  display: block;
  text-align: center;
  height: 100px;
  line-height: 100px;
  font-size: 1.38rem;
  color: #fff;
}
footer .upperFooter .listContact li a span {
  display: inline-block;
  height: 100%;
  padding-left: 44px;
}
footer .upperFooter .listContact li.phone {
  border-right: 1px solid #fff;
}
footer .upperFooter .listContact li.phone a {
  background: #ed7987;
  border-radius: 50px 0 0 50px;
}
footer .upperFooter .listContact li.phone a span {
  background: url("../img/common/ico_phone.png") no-repeat left center;
}
footer .upperFooter .listContact li.sub a {
  background: #f3994f;
  border-radius: 0 50px 50px 0;
}
footer .upperFooter .listContact li.sub a span {
  background: url("../img/common/ico_sub.png") no-repeat left center;
}
footer .upperFooter .txtUpper {
  margin-top: 28px;
}
footer .upperFooter .bannerUp {
  margin-top: 25px;
}
footer .upperFooter .bannerUp img {
  display: block;
}
footer .upperFooter .bannerList {
  text-align: center;
  letter-spacing: -1em;
  margin-top: 30px;
}
footer .upperFooter .bannerList li {
  display: inline-block;
  width: 186px;
  margin: 6px;
  vertical-align: top;
  font-size: 12px;
  letter-spacing: normal;
}
footer .upperFooter .bannerList li img {
  max-width: 100%;
  height: auto;
}

footer .lowerFooter {
  padding-top: 27px;
}
footer .lowerFooter .gtMenu {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 30px;
}
footer .lowerFooter .gtMenu .blockMenu {
  width: 312px;
}
footer .lowerFooter .gtMenu .blockMenu li {
  padding-left: 23px;
  background: url("../img/common/ico_ft.png") no-repeat left 10px;
  margin-bottom: 9px;
}
footer .lowerFooter .gtMenu .blockMenu li a {
  font-size: 0.81rem;
  line-height: 1.38462;
  display: inline-block;
}
footer .lowerFooter .logFooter {
  text-align: center;
}
footer .lowerFooter .logFooter img {
  width: 217px;
}
footer .lowerFooter .logFooter p {
  font-size: 0.81rem;
  margin-top: 9px;
}
footer .copyRight {
  text-align: center;
  font-size: 0.81rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  background: url("../img/common/bg_ft.jpg") no-repeat center;
  background-size: cover;
  position: relative;
  padding: 21px 0;
  margin-top: 43px;
}
footer .copyRight:before {
  position: absolute;
  content: "";
  background: url("../img/common/lin_rainfooter.jpg") no-repeat;
  background-size: cover;
  width: 100%;
  height: 4px;
  left: 0;
  bottom: 0;
}
footer .copyRight .wrapper {
  position: relative;
}
footer .panda {
  position: absolute;
  right: 25px;
  bottom: -20px;
}
footer .panda img {
  display: block;
}
footer .toTop {
  position: fixed;
  left: 50%;
  margin-left: 455px;
  bottom: 42px;
  cursor: pointer;
  z-index: 10;
}
footer .toTop img {
  display: block;
}

@media (min-width: 769px) {
  footer .lowerFooter .gtMenu .blockMenu li a:hover {
    text-decoration: underline;
  }
}
@media screen and (max-width: 1020px) and (min-width: 769px) {
  footer .toTop {
    left: auto;
    right: 0;
    margin-left: 0;
  }
}
@media (max-width: 768px) {
  .pageTop footer {
    padding-top: 30px;
    border-top: none;
  }

  footer .upperFooter {
    padding-bottom: 35px;
  }
  footer .upperFooter .listContact {
    border-radius: 0;
  }
  footer .upperFooter .listContact li {
    width: 100%;
    margin-bottom: 11px;
  }
  footer .upperFooter .listContact li a {
    height: 50px;
    line-height: 50px;
    font-size: 0.94rem;
    border-radius: 25px !important;
  }
  footer .upperFooter .listContact li a span {
    padding-left: 24px;
  }
  footer .upperFooter .listContact li.phone {
    border-right: none;
  }
  footer .upperFooter .listContact li.phone a span {
    background: url("../img/common/sp/ico_phone.png") no-repeat left center;
    background-size: 25px;
    padding-left: 32px;
  }
  footer .upperFooter .listContact li.sub a span {
    padding-left: 35px;
    background: url("../img/common/sp/ico_sub.png") no-repeat left center;
    background-size: 30px;
  }
  footer .upperFooter .txtUpper {
    margin-top: 24px;
  }
  footer .upperFooter .bannerUp {
    margin-top: 23px;
  }
  footer .lowerFooter {
    padding-top: 27px;
  }
  footer .lowerFooter .gtMenu {
    margin-bottom: 25px;
    padding-left: 15px;
  }
  footer .lowerFooter .gtMenu .blockMenu {
    width: 100%;
  }
  footer .lowerFooter .gtMenu .blockMenu li {
    background: url("../img/common/sp/ico_ft.png") no-repeat left 10px;
    background-size: 10px;
    margin-bottom: 18px;
  }
  footer .lowerFooter .gtMenu .blockMenu li a {
    line-height: 1.15385;
    color: #555;
  }
  footer .lowerFooter .logFooter img {
    margin: 0 auto;
    width: 170px;
  }
  footer .lowerFooter .logFooter p {
    font-size: 0.75rem;
    margin-top: 8px;
  }
  footer .copyRight {
    font-size: 0.69rem;
    background: url("../img/common/sp/bg_ft.jpg") no-repeat center;
    padding: 19px 0;
    margin-top: 53px;
  }
  footer .copyRight:before {
    background: url("../img/common/sp/lin_rainbow.jpg") no-repeat;
    background-size: cover;
  }
  footer .copyRight .wrapper {
    position: unset;
    padding: 0 10px;
  }
  footer .panda {
    position: absolute;
    right: 52px;
    bottom: 47px;
    width: 42px;
  }
  footer .toTop {
    left: auto;
    margin-left: 0;
    right: 10px;
    bottom: 49px;
    background: #fff;
    border-radius: 40px;
  }
  footer .upperFooter .bannerList {
  	margin-top: 30px;
    width: 100%;
  }
  footer .upperFooter .bannerList li {
    width: 49%;
    margin: 0 2% 0 0!important;
    padding: 0;
    text-align: center;
  }
  footer .upperFooter .bannerList li:nth-child(2n) {
      margin-right: 0!important;
  }    
  footer .upperFooter .bannerList li img {
    width: 100%;
    height: auto;
    max-width: 186px;
  }
}
/* COMMON TITLES
 * ----------------------------------------------- */
.ttlSec {
  font-size: 2.12rem;
  background: url("../img/common/lin_rainbow.png") no-repeat bottom center;
  padding-bottom: 12px;
}

.ttlPage {
  font-size: 2.12rem;
  border-bottom: 1px solid #ccc;
  padding-bottom: 30px;
  position: relative;
  color: #111;
}
.ttlPage:before {
  position: absolute;
  content: "";
  background: url("../img/common/lin_title.png") no-repeat;
  width: 140px;
  height: 4px;
  bottom: -4px;
  left: 50%;
  margin-left: -70px;
  z-index: 1;
}

.ttlBlock {
  font-size: 1.25rem;
  font-weight: 500;
  border: 1px solid #e6e5e0;
  background: #f9f7ee;
  border-radius: 5px;
  position: relative;
  padding: 15px 28px;
}
.ttlBlock span {
  font-size: 1.13rem;
  font-weight: 400;
  margin-left: 20px;
}
.ttlBlock:before {
  position: absolute;
  content: "";
  width: 8px;
  height: calc(100% + 2px);
  background: #878787;
  left: -1px;
  top: -1px;
  border-radius: 6px 0 0 6px;
}
.ttlBlock.dFlex {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  padding: 12px 28px;
}
.ttlBlock.dFlex .ico img {
  display: block;
}
.ttlBlock.dFlex .ttx {
  flex: 1;
  padding-left: 9px;
  margin-top: 2px;
  line-height: 1.5;
  letter-spacing: -0.02em;
}
.ttlBlock.dFlex:before {
  background: #7ecef4;
}
.ttlBlock.hasLink {
  padding: 0;
}
.ttlBlock.hasLink a {
  padding: 15px 28px;
  display: block;
  padding-left: 49px;
  background: url("../img/common/ico_arrow13.png") no-repeat 25px center;
}
.ttlBlock.indent {
  text-indent: -1em;
  padding-left: 50px;
}
.ttlBlock.indent span {
  font-weight: 700;
}

.ttlBd {
  color: #111;
  padding-left: 20px;
  font-size: 1.13rem;
  font-weight: 500;
  position: relative;
}
.ttlBd:before {
  position: absolute;
  content: "";
  width: 4px;
  height: 100%;
  border-radius: 2px;
  background: #abcd03;
  left: 4px;
  top: 0;
}
.ttlBd.indent {
  padding-left: 42px;
  text-indent: -1em;
}

.ttlLine {
  border-bottom: 1px solid #333333;
  line-height: 0.1em;
}
.ttlLine span {
  font-weight: 500;
  font-size: 1.75rem;
  padding: 0 50px;
  background: #fff;
  position: relative;
  top: 4px;
}

@media (max-width: 768px) {
  .ttlSec {
    font-size: 1.81rem;
    background: url("../img/common/sp/lin_rainbowttl.jpg") no-repeat bottom center;
    background-size: 120px;
    padding-bottom: 8px;
  }

  .ttlPage {
    font-size: 1.56rem;
    padding: 0 20px 20px;
    margin: 0 -20px;
  }
  .ttlPage:before {
    background: url("../img/common/sp/lin_rainbowttl02.png") no-repeat;
    background-size: 100%;
    width: 120px;
    height: 4px;
    bottom: -5px;
    margin-left: -60px;
  }

  .ttlBlock {
    font-size: 1.13rem;
    padding:12px 12px 12px 22px;
  }
  .ttlBlock span {
    font-size: 1rem;
  }
  .ttlBlock.dFlex {
    padding: 10px 16px;
  }
  .ttlBlock.dFlex .ttx {
    padding-left: 9px;
    line-height: 1.47059;
    margin-top: 0;
    font-size: 1.06rem;
  }
  .ttlBlock.hasLink {
    padding: 0;
  }
  .ttlBlock.hasLink a {
    padding: 12px 22px;
    padding-left: 40px;
    background: url("../img/common/sp/ico_arrow13.png") no-repeat 18px center;
    background-size: 14px;
  }
  .ttlBlock.indent {
    padding-left: 40px;
  }

  .ttlBd {
    padding-left: 13px;
    font-size: 1rem;
  }
  .ttlBd:before {
    left: 2px;
  }
  .ttlBd.indent {
    padding-left: 35px;
  }

  .ttlLine span {
    font-size: 1.38rem;
    padding: 0 20px;
  }
}
@media (max-width: 374px) {
  .ttlPage {
    margin: 0 -12.5px;
  }
}
/* COMMON BUTTONS
 * ----------------------------------------------- */
.btnCm01 {
  text-align: center;
}
.btnCm01 input {
  width: 360px;
  height: 50px;
  line-height: 46px;
  border: 2px solid #333;
  border-radius: 25px;
  display: inline-block;
  background: url("../img/common/ico_arrow01.png") no-repeat right 17px center;
  font-size: 1rem;
}
.btnCm01 a {
  width: 360px;
  height: 50px;
  line-height: 46px;
  border: 2px solid #333;
  border-radius: 25px;
  display: inline-block;
  background: url("../img/common/ico_arrow01.png") no-repeat right 17px center;
  font-size: 1rem;
}
.btnCm01.rotate input {
  background: url("../img/common/ico_arrow05.png") no-repeat right 17px center;
}
.btnCm01.rotate a {
  background: url("../img/common/ico_arrow05.png") no-repeat right 17px center;
}
.btnCm01.backBtn {
  text-align: left;
  margin-top: 58px;
  width: 990px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 60px;
}
.btnCm01.backBtn a {
  width: 200px;
  background: url("../img/common/ico_arrow07.png") no-repeat left 20px center;
  text-align: center;
}

.btnDownload {
  margin-bottom: 20px;
}
.btnDownload a {
  display: inline-block;
  width: 400px;
  height: 50px;
  line-height: 50px;
  border-radius: 25px;
  font-size: 1rem;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.02em;
  box-shadow: inset 0 -1px 0 0 #cd5c51;
  padding-left: 20px;
  background-color: #f46e60;
  background-image: url("../img/common/ico_dl.png");
  background-repeat: no-repeat;
  background-position: right 20px center;
  position: relative;
  text-align: center;
}
.btnDownload a:before {
  position: absolute;
  content: "";
  background: url("../img/item/ico_pdf.png") no-repeat;
  width: 46px;
  height: 64px;
  left: 26px;
  top: -7px;
}
.btnDownload p {
  margin-top: 5px;
  letter-spacing: 0.02em;
}

.btnComp {
  text-align: center;
  margin-top: 36px;
}
.btnComp a {
  display: inline-block;
  width: 360px;
  height: 50px;
  line-height: 50px;
  font-size: 1rem;
  font-weight: 500;
  color: #fff;
  border-radius: 25px;
  background: #f3994f url("../img/common/ico_arrow09.png") no-repeat right 20px center;
  box-shadow: 0 1px 0 0 #cc8042;
}
.btnComp.w01 a {
  width: 300px;
}
.btnComp.blueCl {
  margin-top: 40px;
}
.btnComp.blueCl a {
  background: #7fcef4 url("../img/common/ico_arrow01.png") no-repeat right 20px center;
  box-shadow: 0 1px 0 0 #6badcd;
  color: #333;
  font-weight: 700;
  height: 60px;
  line-height: 60px;
  border-radius: 30px;
}

.ext {
  color: #008aff;
  padding-left: 28px;
  background: url("../img/common/ico_arrow06.png") no-repeat 2px 2px;
  position: relative;
  margin-top: 17px;
  display: inline-block;
}
.ext:before {
  position: absolute;
  content: "";
  background: url("../img/common/ico_ext.png") no-repeat;
  width: 10px;
  height: 10px;
  right: -17px;
  top: 6px;
}
.ext.noIco:before {
  display: none;
}

.linkPdf {
  padding-left: 30px;
  background: url("../img/common/ico_arrow12.png") no-repeat 4px 2px;
  position: relative;
}
.linkPdf .ico {
  position: relative;
  top: 1px;
  margin-left: 6px;
}

@media (max-width: 768px) {
  .btnCm01 a {
    width: 300px;
    background: url("../img/common/sp/ico_arrow01.png") no-repeat right 20px center;
    background-size: 8px;
    font-size: 0.88rem;
  }
  .btnCm01 input {
    width: 300px;
    background: url("../img/common/sp/ico_arrow01.png") no-repeat right 20px center;
    background-size: 8px;
    font-size: 0.88rem;
  }
  .btnCm01.rotate input {
    background: url("../img/common/sp/ico_arrow05.png") no-repeat right 20px center;
    background-size: 12px;
  }
  .btnCm01.backBtn {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 63px;
  }
  .btnCm01.backBtn a {
    width: 150px;
    background: url("../img/common/sp/ico_arrow07.png") no-repeat left 25px center;
    background-size: 8px;
    padding-left: 20px;
  }

  .btnDownload {
    margin-bottom: 15px;
  }
  .btnDownload a {
    display: block;
    width: 100%;
    font-size: 0.88rem;
    background-image: url("../img/common/sp/ico_dl.png");
    background-size: 14px;
    background-repeat: no-repeat;
    background-position: right 18px center;
  }
  .btnDownload a:before {
    background: url("../img/item/sp/ico_pdf.png") no-repeat;
    background-size: 100%;
    width: 23px;
    height: 32px;
    top: 7px;
  }
  .btnDownload p {
    font-size: 0.81rem;
  }

  .btnComp {
    margin-top: 20px;
  }
  .btnComp a {
    display: block;
    width: 100%;
    font-size: 0.88rem;
    background: #f3994f url("../img/common/sp/ico_arrow09.png") no-repeat right 18px center;
    background-size: 8px;
  }
  .btnComp.blueCl {
    margin-top: 30px;
  }
  .btnComp.blueCl a {
    background: #7fcef4 url("../img/common/sp/ico_arrow01.png") no-repeat right 18px center;
    background-size: 8px;
    height: 50px;
    line-height: 50px;
  }

  .ext {
    padding-left: 20px;
    background: url("../img/common/sp/ico_arrow06.png") no-repeat 0 3px;
    background-size: 14px;
    margin-top: 15px;
  }
  .ext:before {
    background: url("../img/common/sp/ico_ext.png") no-repeat;
    background-size: 100%;
    top: 5px;
  }

  .linkPdf {
    padding-left: 23px;
    background: url("../img/common/sp/ico_arrow12.png") no-repeat 2px 4px;
    background-size: 14px;
  }
}
@media (max-width: 374px) {
  .btnCm01 a {
    width: 100%;
  }

  .btnDownload a {
    font-size: 0.75rem;
  }

  .btnComp a {
    font-size: 0.69rem;
    background-position: 10px center;
  }
}
/* COMMON NAVIGATION
 * ----------------------------------------------- */
.commonNav {
  background: url("../img/common/bg_nav.jpg") no-repeat center;
  background-size: cover;
  position: relative;
  padding: 4px 0 6px;
}
.commonNav:before {
  position: absolute;
  content: "";
  background: url("../img/common/lin_rainfooter.jpg") no-repeat;
  background-size: cover;
  width: 100%;
  height: 4px;
  top: 0;
  left: 0;
}
.commonNav .inNav {
  background: #fff;
  border-bottom: 1px solid #e5e5e5;
}
.commonNav .inNav ul {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
}
.commonNav .inNav ul li {
  flex: 1;
  border-left: 1px solid #e5e5e5;
}
.commonNav .inNav ul li a {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: 500;
  padding: 16px 5px;
}
.commonNav .inNav ul li a .inLink div {
  display: inline-block;
  vertical-align: middle;
}
.commonNav .inNav ul li a .inLink .ico {
  position: relative;
  top: 2px;
  margin-right: 9px;
}
.commonNav .inNav ul li:last-child {
  border-right: 1px solid #e5e5e5;
}

@media (max-width: 768px) {
  .commonNav {
    height: 15px;
    background: url("../img/common/sp/bg_navcommon.jpg") no-repeat center;
    background-size: cover;
    padding: 0;
  }
  .commonNav:before {
    background: url("../img/common/sp/lin_rainbow.jpg") no-repeat;
    background-size: cover;
  }
}
/* COMMON BREADCRUMBS
 * ----------------------------------------------- */
.breadcrumb {
  padding: 8px 0;
}
.breadcrumb .listBread li {
  display: inline-block;
  font-size: 0.75rem;
  position: relative;
  padding-right: 18px;
  margin-right: 8px;
}
.breadcrumb .listBread li.home {
  padding-left: 23px;
}
.breadcrumb .listBread li.home:before {
  position: absolute;
  content: "";
  background: url("../img/common/ico_breadcrumb.png") no-repeat;
  width: 12px;
  height: 13px;
  left: 2px;
  top: 1px;
}
.breadcrumb .listBread li:after {
  position: absolute;
  content: "";
  background: url("../img/common/ico_arrow02.png") no-repeat;
  width: 5px;
  height: 9px;
  right: 0;
  top: 4px;
}
.breadcrumb .listBread li:last-child {
  padding: 0;
  margin: 0;
}
.breadcrumb .listBread li:last-child:after {
  display: none;
}

@media (min-width: 769px) {
  .breadcrumb .listBread li a:hover {
    text-decoration: underline;
  }
}
@media (max-width: 768px) {
  .breadcrumb {
    padding: 8px 0;
  }
  .breadcrumb .listBread li {
    font-size: 0.69rem;
    padding-right: 14px;
    margin-right: 7px;
  }
  .breadcrumb .listBread li.home {
    padding-left: 19px;
  }
  .breadcrumb .listBread li.home:before {
    background: url("../img/common/sp/ico_breadcrumb.png") no-repeat;
    background-size: 100%;
    width: 10px;
    height: 11px;
    left: 2px;
    top: 2px;
  }
  .breadcrumb .listBread li:after {
    background: url("../img/common/sp/ico_arrow02.png") no-repeat;
    background-size: 100%;
    width: 4px;
    height: 7px;
    right: 0;
    top: 4px;
  }
}
/* COMMON TABS
 * ----------------------------------------------- */
.mainTab {
  margin-top: 45px;
}
.mainTab ul.tabs {
  margin: 0px;
  padding: 0px;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
  border-bottom: 3px solid #666666;
}
.mainTab ul.tabs:before {
  position: absolute;
  content: "";
  height: 3px;
  width: 100vw;
  background: #666;
  bottom: -3px;
  right: 100%;
}
.mainTab ul.tabs:after {
  position: absolute;
  content: "";
  height: 3px;
  width: 100vw;
  background: #666;
  bottom: -3px;
  left: 100%;
}
.mainTab ul.tabs li {
  background: #f9f7ee;
  padding: 14px 15px;
  cursor: pointer;
  width: 243px;
  text-align: center;
  border-radius: 6px 6px 0 0;
  border: 1px solid #ccc;
  border-bottom: none;
  font-weight: 500;
}
.mainTab ul.tabs li.current {
  background: #fff;
  border: 1px solid #666;
  border-bottom: none;
  margin-bottom: -3px;
}
.mainTab .tab-content {
  display: none;
}
.mainTab .tab-content.current {
  display: inherit;
}

@media (max-width: 768px) {
  .mainTab {
    margin-top: 33px;
  }
  .mainTab ul.tabs {
    border-bottom: none;
    background: #ebe7d7;
    padding: 16px 20px 9px;
    margin: 0 -20px;
  }
  .mainTab ul.tabs:before {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 7.5px 0 7.5px;
    border-color: #ebe7d7 transparent transparent transparent;
    bottom: auto;
    top: 100%;
    right: 50%;
    margin-right: -7.5px;
    background: none;
  }
  .mainTab ul.tabs:after {
    display: none;
  }
  .mainTab ul.tabs li {
    background: #f9f7ee;
    padding: 10px 5px;
    width: 49%;
    border-radius: 3px;
    border: none;
    font-size: 0.81rem;
    margin-bottom: 5px;
  }
  .mainTab ul.tabs li.current {
    background: #fff;
    border: 1px solid #333;
    margin-bottom: 5px;
  }
}
@media (max-width: 374px) {
  .mainTab ul.tabs {
    margin: 0 -12.5px;
    padding: 16px 12.5px 9px;
  }
}




/* COMMON FORM
 * ----------------------------------------------- */
input[type='text'],
#searchForm input[type='search'],
#search_box input.q{
  width: 100%;
  border-radius: 3px;
  border: 1px solid #60a7ff;
  height: 40px;
  font-size: 1rem;
  padding: 0 5px;
  box-shadow: inset 1px 1px 3px 0 rgba(50, 50, 50, 0.2);
  -webkit-appearance: none;
  -moz-appearance: none;
}

.formContact {
  box-shadow: 0 0 70px 0 rgba(50, 50, 50, 0.2);
  border-radius: 20px;
  overflow: hidden;
  margin-top: 42px;
  margin-bottom: 70px;
}
.formContact.confirm .confirmBtn input {
  margin: 0 8px;
  width: 300px;
}
.formContact .upperBlock {
  padding: 40px 60px 54px;
}
.formContact .noteForm {
  font-size: 0.81rem;
}
.formContact .warning {
  font-size: 0.81rem;
  display: inline-block;
  height: 22px;
  line-height: 22px;
  color: #fff;
  border-radius: 3px;
  background: #c00;
  padding: 0 9px;
  margin-right: 7px;
}
.formContact .tableForm {
  margin-top: 28px;
  width: 100%;
  table-layout: fixed;
}
.formContact .tableForm th {
  width: 260px;
  padding: 24px 14px;
  padding-right: 60px;
  border-top: 1px solid #d2d2d2;
  border-bottom: 1px solid #d2d2d2;
  background: #f4f4f4;
  vertical-align: top;
}
.formContact .tableForm th .frame {
  position: relative;
}
.formContact .tableForm th .warning {
  position: absolute;
  right: -48px;
  top: 0;
  margin-right: 0;
}
.formContact .tableForm td {
  padding: 15px 45px 15px 24px;
  border-top: 1px solid #d2d2d2;
  border-bottom: 1px solid #d2d2d2;
}
.formContact .tableForm td .rowInput {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 12px;
}
.formContact .tableForm td .rowInput:last-child {
  margin-bottom: 0;
}
.formContact .tableForm td .rowInput .blockInput {
  width: 255px;
  margin-right: 19px;
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.formContact .tableForm td .rowInput .blockInput .textInp {
  width: 32px;
  text-align: right;
  white-space: nowrap;
}
.formContact .tableForm td .rowInput .blockInput .Inp {
  width: 215px;
}
.formContact .tableForm td .rowInput .blockInput:last-child {
  margin-right: 0;
}
.formContact .tableForm td .rowInput .txt {
  font-size: 0.81rem;
  margin-bottom: 4px;
}
.formContact .tableForm td .rowInput .txt02 {
  margin-top: 9px;
  margin-bottom: 17px;
}
.formContact .tableForm td .rowInput textarea {
  display: block;
  width: 100%;
  height: 142px;
  padding: 10px;
  border-radius: 3px;
  border: 1px solid #60a7ff;
  font-size: 1rem;
  box-shadow: inset 1px 1px 3px 0 rgba(50, 50, 50, 0.2);
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.formContact .tableForm td .rowRadio {
  padding: 9px 0;
}
.formContact .tableForm td .listRadio li {
  display: inline-block;
  margin-right: 20px;
}
.formContact .tableForm td .listRadio li label {
  cursor: pointer;
  line-height: 1.86667;
}
.formContact .tableForm td .listRadio li input {
  display: inline-block;
  padding-left: 20px;
  background-image: url("../img/contact/ico_check.png");
  background-repeat: no-repeat;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 16px;
  height: 16px;
  vertical-align: middle;
  position: relative;
  top: -2px;
  cursor: pointer;
}
.formContact .tableForm td .listRadio li input::-ms-check {
  display: none;
}
.formContact .tableForm td .listRadio li input:checked {
  background-image: url("../img/contact/ico_checked.png");
  background-repeat: no-repeat;
}
.formContact .privacyNote {
  margin-top: 55px;
}
.formContact .privacyNote .text {
  font-size: 0.81rem;
  line-height: 1.53846;
  margin-top: 16px;
}
.formContact .privacyNote .checkAccept {
  margin-top: 20px;
}
.formContact .privacyNote .checkAccept label {
  cursor: pointer;
}
.formContact .privacyNote .checkAccept input {
  display: inline-block;
  padding-left: 40px;
  background-image: url("../img/contact/ico_checkbox.png");
  background-repeat: no-repeat;
  background-size: contain;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 24px;
  height: 24px;
  vertical-align: middle;
  position: relative;
  top: -2px;
  cursor: pointer;
}
.formContact .privacyNote .checkAccept input::-ms-check {
  display: none;
}
.formContact .privacyNote .checkAccept input:checked {
  background-image: url("../img/contact/ico_checkbox_checked.png");
  background-repeat: no-repeat;
  background-size: contain;
}
.formContact .confirmBtn {
  padding: 32px 0 38px;
  background: #f5f8e6;
  text-align: center;
}
.formContact .confirmBtn input {
  display: inline-block;
  width: 360px;
  height: 50px;
  line-height: 46px;
  border: 2px solid #333;
  border-radius: 25px;
  background: url("../img/common/ico_arrow01.png") no-repeat right 17px center;
  font-size: 1rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  box-shadow: none;
  cursor: pointer;
}

@media (max-width: 768px) {
  input[type='text'],
  #searchForm input[type='search'],
  #search_box input.q{
    width: 100%;
    border-radius: 2px;
    height: 42px;
    font-size: 0.81rem;
  }

  .formContact {
    box-shadow: 0 0 40px 0 rgba(50, 50, 50, 0.2);
    border-radius: 10px;
  }
  .formContact .upperBlock {
    padding: 20px 20px 37px;
  }
  .formContact .noteForm {
    font-size: 0.69rem;
  }
  .formContact .warning {
    font-size: 0.69rem;
    height: 20px;
    line-height: 20px;
    padding: 0 7px;
    margin-right: 4px;
  }
  .formContact .tableForm {
    margin-top: 26px;
  }
  .formContact .tableForm th {
    display: block;
    width: 100%;
    padding: 10px 13px;
    padding-right: 50px;
    border-top: 1px solid #d2d2d2;
    border-bottom: none;
    margin-top: -1px;
    font-size: 0.81rem;
  }
  .formContact .tableForm th .warning {
    right: -40px;
  }
  .formContact .tableForm td {
    display: block;
    width: 100%;
    padding: 15px 10px;
    border-top: none;
    border-bottom: 1px solid #d2d2d2;
    font-size: 0.81rem;
  }
  .formContact .tableForm td .rowInput .blockInput {
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
    padding-left: 30px;
  }
  .formContact .tableForm td .rowInput .blockInput .textInp {
    width: 30px;
    position: absolute;
    left: 0;
    top: 12px;
    padding-right: 6px;
  }
  .formContact .tableForm td .rowInput .blockInput .Inp {
    width: 100%;
  }
  .formContact .tableForm td .rowInput .blockInput:last-child {
    margin-bottom: 0;
  }
  .formContact .tableForm td .rowInput .txt {
    font-size: 0.69rem;
    line-height: 1.18182;
  }
  .formContact .tableForm td .rowInput .txt02 {
    font-size: 0.69rem;
    margin-top: 0;
    margin-bottom: 5px;
  }
  .formContact .tableForm td .rowInput textarea {
    height: 200px;
    padding: 5px;
    border-radius: 2px;
    font-size: 0.81rem;
  }
  .formContact .tableForm td .rowRadio {
    padding: 0;
  }
  .formContact .tableForm td .listRadio li {
    display: block;
    margin-right: 0;
    padding: 2px 0;
  }
  .formContact .tableForm td .listRadio li label {
    cursor: pointer;
    line-height: 1.86667;
  }
  .formContact .tableForm td .listRadio li input {
    display: inline-block;
    padding-left: 0;
    background-image: url("../img/contact/sp/ico_check.png");
    background-repeat: no-repeat;
    background-size: 100%;
    width: 12px;
    height: 12px;
    top: -1px;
    margin-right: 5px;
  }
  .formContact .tableForm td .listRadio li input:checked {
    background-image: url("../img/contact/sp/ico_checked.png");
    background-repeat: no-repeat;
    background-size: 100%;
  }
  .formContact .privacyNote {
    margin-top: 33px;
  }
  .formContact .privacyNote .text {
    font-size: 0.69rem;
    line-height: 1.81818;
    margin-top: 11px;
  }
  .formContact .privacyNote .checkAccept input {
    font-size: 0.81rem;
    padding-left: 30px;
  }
  .formContact .confirmBtn {
    padding: 40px 32px;
  }
  .formContact .confirmBtn input {
    display: block;
    width: 100%;
    background: url("../img/common/sp/ico_arrow01.png") no-repeat right 20px center;
    background-size: 8px;
    font-size: 0.88rem;
  }
  .formContact.confirm .confirmBtn input {
    margin: 10px 0;
    width: 100%;
  }
}
.ie .formContact .tableForm td .listRadio li input {
  margin-right: 4px;
}
.ie .formContact .privacyNote .checkAccept input {
  margin-right: 15px;
}

/* COMMON TABLE
 * ----------------------------------------------- */
.tableCm01 {
  width: 100%;
  table-layout: fixed;
  margin-top: 30px;
}
.tableCm01 th, .tableCm01 td {
  line-height: 1.86667;
  border: 1px solid #ccc;
}
.tableCm01 th {
  width: 260px;
  vertical-align: top;
  background: #f9f7ee;
  padding: 10px 20px;
}
.tableCm01 td {
  padding: 10px 13px;
}

.wrapTable {
  margin-top: 10px;
}
.wrapTable table {
  width: 100%;
  table-layout: fixed;
}
.wrapTable table thead th {
  text-align: center;
  background: #dbe79d;
  border: 1px solid #cccccc;
  border-bottom: none;
  font-weight: 700;
  padding: 14px 5px;
}
.wrapTable table thead th.w01 {
  width: 260px;
}
.wrapTable table thead th.w02 {
  width: 185px;
}
.wrapTable table tbody td {
  border: 1px solid #cccccc;
  text-align: center;
  padding: 14px 18px;
}
.wrapTable table tbody tr:first-child td {
  border-top: none;
}
.wrapTable table tbody tr td.bgCl {
  text-align: left;
  font-weight: 500;
  background: #f9f7ee;
}

@media (max-width: 768px) {
  .tableCm01 {
    margin-top: 20px;
    font-size: 0.69rem;
  }
  .tableCm01 th, .tableCm01 td {
    line-height: 1.54545;
  }
  .tableCm01 th {
    width: 90px;
    padding: 9px 5px;
  }
  .tableCm01 td {
    padding: 9px 5px;
  }

  .wrapTable {
    width: 100%;
    margin-top: 10px;
  }
  .wrapTable .frameScroll {
    width: 100%;
    overflow-y: scroll;
  }
  .wrapTable table {
    width: 440px;
    font-size: 0.69rem;
  }
  .wrapTable table thead th {
    padding: 9px 0;
  }
  .wrapTable table thead th.w01 {
    width: 113px;
  }
  .wrapTable table thead th.w02 {
    width: auto;
  }
  .wrapTable table tbody td {
    padding: 9px 5px;
  }
}
/* COMMON LIST
 * ----------------------------------------------- */
.listDot {
  margin-top: 15px;
}
.listDot li {
  margin-bottom: 12px;
  padding-left: 30px;
  background: url("../img/contact/ico_dot.png") no-repeat 16px 7px;
}
.listDot li strong {
  display: block;
  font-weight: 700;
  margin-bottom: 10px;
}
.listDot li .link {
  margin-top: 5px;
}
.listDot.blackDot li {
  background: url("../img/common/ico_dot.png") no-repeat 16px 7px;
}

.listStar li {
  font-size: 0.81rem;
  padding-left: 25px;
  text-indent: -1em;
  margin-bottom: 11px;
}
.listStar li:last-child {
  margin-bottom: 0;
}
.listStar li strong {
  font-weight: 700;
}
.listStar.numB li {
  padding-left: 40px;
  text-indent: -1.7em;
}

.listStar2 { margin-top: 30px!important; }
.listStar2 li {
  font-size: 0.81rem;
  padding-left: 30px;
  text-indent: -2em;
  margin-bottom: 11px;
}

.linkShared {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 20px;
}
.linkShared li {
  width: 48%;
  margin-bottom: 20px;
}
.linkShared li a {
  display: block;
  height: 100%;
  font-size: 1.25rem;
  background: #f9f7ee url(../img/common/ico_arrow03.png) no-repeat 10px 20px;
  padding: 15px 15px 15px 35px;
  border: 1px solid #ddd;
  border-radius: 10px;
}

@media (max-width: 768px) {
  .listDot {
    margin-top: 20px;
    margin-bottom: 30px;
  }
  .listDot li {
    background: url("../img/contact/sp/ico_dot.png") no-repeat 16px 7px;
    background-size: 7px;
    line-height: 1.57143;
  }
  .listDot.blackDot li {
    background: url("../img/common/sp/ico_dot.png") no-repeat 14px 8px;
    background-size: 7px;
  }

  .listStar li {
    font-size: 0.69rem;
    padding-left: 20px;
    margin-bottom: 10px;
    line-height: 1.54545;
  }
  .listStar.numB li {
    padding-left: 25px;
  }

  .linkShared li {
    width: 100%;
    margin-bottom: 15px;
  }
  .linkShared li a {
    font-size: 1rem;
    background: #f9f7ee url(../img/common/sp/ico_arrow03.png) no-repeat 9px center;
    background-size: 14px;
    padding: 10px 10px 10px 30px;
  }
  .linkShared li:last-child {
    margin-bottom: 0;
  }
}
/* COMMON BLOCK */
.rowArti {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 30px;
}
.rowArti .blockArti {
  width: 49%;
  margin-bottom: 30px;
}
.rowArti .blockArti .text {
  margin-top: 15px;
}

@media (max-width: 768px) {
  .rowArti {
    margin-top: 20px;
  }
  .rowArti .blockArti {
    width: 100%;
  }
  .rowArti .blockArti:last-child {
    margin-bottom: 0;
  }
}
/* PAGES
 * ----------------------------------------------- */
/* NOITFICATION */
.notiArea {
  background: #ffe6e7;
  padding: 20px 0;
}
.notiArea .listNoti {
  background: #fff;
  border-radius: 7px;
  border: 1px solid #ec3323;
  padding: 18px 18px 8px 20px;
}
.notiArea .listNoti li {
  margin-bottom: 13px;
}
.notiArea .listNoti li a {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
.notiArea .listNoti li a .date.lato {
  font-weight: 500;
  letter-spacing: 0.02em;
}
.notiArea .listNoti li a .ctNoti {
  flex: 1;
  padding-left: 20px;
  line-height: 1.46667;
}
.notiArea .listNoti li a .ctNoti p {
  color: #f00;
  display: inline;
}
.notiArea .listNoti li a .ctNoti .ico {
  margin-left: 7px;
}

.notiArea .listNoti li {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
.notiArea .listNoti li .date.lato {
  font-weight: 500;
  letter-spacing: 0.02em;
}
.notiArea .listNoti li .ctNoti {
  flex: 1;
  padding-left: 20px;
  line-height: 1.46667;
}
.notiArea .listNoti li .ctNoti p {
  display: inline;
}
.notiArea .listNoti li .ctNoti .ico {
  margin-left: 7px;
}


/* KEYVISUAL */
.keyvisual {
  position: relative;
}
.keyvisual .slick-slide {
  outline: none;
}
.keyvisual .slick-slide img {
  margin: 0 auto;
}
.keyvisual .slideNav {
  position: absolute;
  z-index: 1;
  height: 40px;
  background: rgba(0, 0, 0, 0.15);
  border-radius: 25px;
  padding: 6px 10px 2px;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  left: 50%;
  bottom: -70px;
}
.keyvisual .slideNav .arrowSlide {
  display: inline-block;
  vertical-align: middle;
  margin-top: 4px;
}
.keyvisual .slideNav .arrowSlide div {
  text-indent: -9999px;
  width: 8px;
  height: 12px;
  bottom: 0;
  left: 50%;
  display: inline-block;
  margin: 0 9px;
  cursor: pointer;
}
.keyvisual .slideNav .arrowSlide div.next {
  background: url("../img/common/ico_next.png") no-repeat;
  background-size: 100%;
}
.keyvisual .slideNav .arrowSlide div.prev {
  background: url("../img/common/ico_prev.png") no-repeat;
  background-size: 100%;
}
.keyvisual .slideNav .dotSlide {
  display: inline-block;
  vertical-align: middle;
}
.keyvisual .slideNav .dotSlide .slick-dots li {
  display: inline-block;
  margin: 0 10px;
}
.keyvisual .slideNav .dotSlide .slick-dots li button {
  width: 10px;
  height: 10px;
  border-radius: 10px;
  background: #fff;
  text-indent: -9999px;
  cursor: pointer;
}
.keyvisual .slideNav .dotSlide .slick-dots li button:hover {
  background: #333;
}
.keyvisual .slideNav .dotSlide .slick-dots li.slick-active button {
  background: #333;
}
.keyvisual .slideNav .btnplay {
  display: inline-block;
  vertical-align: middle;
  margin: 2px 29px 0;
  margin-left: 25px;
  width: 11px;
  height: 12px;
  background: url("../img/common/ico_pause.png") no-repeat;
  background-size: 100%;
  cursor: pointer;
}
.keyvisual .slideNav .btnplay.pause {
  background: url("../img/common/ico_play.png") no-repeat;
  background-size: 100%;
}
.keyvisual .slideNav .slideCountWrap {
  display: inline-block;
  vertical-align: middle;
  font-size: 0.81rem;
  color: #fff;
  position: relative;
  top: 1px;
  width: 70px;
  text-align: center;
  margin-left: 33px;
}
.keyvisual .slideNav .slideCountWrap span {
  padding: 0 4px;
}

/* NAVIGATION TOP */
.navTop {
  height: 230px;
  background: url("../img/top/bg_nav.jpg") no-repeat center;
  background-size: cover;
  position: relative;
}
.navTop:before {
  position: absolute;
  content: "";
  background: url("../img/top/lin_border.jpg") no-repeat;
  background-size: cover;
  width: 100%;
  height: 4px;
  top: 0;
  left: 0;
}
.navTop .listNav {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  background: url("../img/top/bg_navhover.png") no-repeat center;
  background-size: cover;
  height: 180px;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
  top: 100px;
  box-shadow: 0 0 70px 0 rgba(50, 50, 50, 0.2);
}
.navTop .listNav li {
  width: 25%;
  border-right: 1px solid #e5e5e5;
}
.navTop .listNav li:last-child {
  border-right: none;
}
.navTop .listNav li a {
  background-color: #fff;
  position: relative;
  height: 100%;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
  transition: 0.3s;
  font-weight: 500;
}
.navTop .listNav li a:before {
  position: absolute;
  content: "";
  background: url("../img/top/ico_arrowblue.png") no-repeat;
  height: 11px;
  width: 11px;
  right: 16px;
  bottom: 16px;
  transition: 0.3s;
}
.navTop .listNav li a .sRound {
  width: 100%;
}
.navTop .listNav li a .sRound .ico {
  margin-bottom: 10px;
}

/* INTRO TOP */
.intro {
  padding-top: 147px;
  padding-bottom: 77px;
  color: #111;
}
.intro .ttlIntro {
  font-weight: 500;
  font-size: 1.69rem;
  letter-spacing: 0.04em;
}
.intro .listLogo {
  text-align: center;
  margin-top: 15px;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.intro .listLogo li {
  padding: 0 80px;
  position: relative;
}
.intro .listLogo li:first-child:before {
  position: absolute;
  content: "";
  width: 1px;
  height: 122px;
  background: #ccc;
  right: 0;
  top: 43px;
}
.intro .textIntro {
  padding: 0 110px;
  margin-bottom: 36px;
}

.topType {
  background: #f9f7ee;
  padding: 50px 0 60px;
}
.topType .logoType {
  margin-top: 25px;
  margin-bottom: 27px;
}
.topType .ttl {
  font-weight: 700;
  letter-spacing: 0.04em;
  margin-bottom: 12px;
  font-size: 1.25rem;
}
.topType .textType {
  padding: 0 95px;
}
.topType .listType {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
  border-radius: 30px;
  background: #fff;
  box-shadow: 0 0 50px 0 rgba(50, 50, 50, 0.1);
  overflow: hidden;
  margin: 42px 0 60px;
}
.topType .listType .blockType {
  width: 50%;
  padding: 16px 20px 40px;
  position: relative;
}
.topType .listType .blockType:before {
  position: absolute;
  content: "";
  background: #eaeaea;
  height: 100%;
  right: 0;
  top: 0;
  width: 1px;
}
.topType .listType .blockType:after {
  position: absolute;
  content: "";
  background: #eaeaea;
  width: 100%;
  height: 1px;
  bottom: -1px;
  left: 0;
}
.topType .listType .blockType.bl01 {
  background: url("../img/top/bg_type01.png") no-repeat left top;
}
.topType .listType .blockType.bl01 .ttlBl {
  border-color: #a4ddf7;
}
.topType .listType .blockType.bl01 .btnType a {
  background: #a4ddf7;
  box-shadow: 0 1px 0 0 #8ab9cf;
}
.topType .listType .blockType.bl02 {
  background: url("../img/top/bg_type02.png") no-repeat left top;
}
.topType .listType .blockType.bl02 .ttlBl {
  border-color: #f6cc47;
}
.topType .listType .blockType.bl02 .btnType a {
  background: #f6cc47;
  box-shadow: 0 1px 0 0 #ceab3c;
}
.topType .listType .blockType.bl03 {
  background: url("../img/top/bg_type03.png") no-repeat left top;
}
.topType .listType .blockType.bl03 .ttlBl {
  border-color: #90d3d1;
}
.topType .listType .blockType.bl03 .btnType a {
  background: #90d3d1;
  box-shadow: 0 1px 0 0 #79b1af;
}
.topType .listType .blockType.bl04 {
  background: url("../img/top/bg_type04.png") no-repeat left top;
}
.topType .listType .blockType.bl04 .ttlBl {
  border-color: #f2a1ab;
}
.topType .listType .blockType.bl04 .btnType a {
  background: #f2a1ab;
  box-shadow: 0 1px 0 0 #cb8790;
}
.topType .listType .blockType .ttlBl {
  font-size: 1.25rem;
  font-weight: 500;
  border-bottom: 1px solid;
  padding-bottom: 18px;
  color: #111;
}
.topType .listType .blockType .inner {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  padding: 23px 20px 0;
}
.topType .listType .blockType .inner .imgType {
  width: 210px;
  margin-top: 8px;
}
.topType .listType .blockType .inner .rightType {
  width: 185px;
}
.topType .listType .blockType .inner .rightType p {
  font-size: 0.81rem;
  line-height: 1.69231;
  padding: 0 4px;
}
.topType .listType .blockType .inner .rightType .btnType {
  margin-top: 27px;
}
.topType .listType .blockType .inner .rightType .btnType a {
  display: block;
  text-align: center;
  height: 44px;
  line-height: 44px;
  border-radius: 22px;
  font-weight: 500;
  letter-spacing: 0.09em;
  font-size: 0.88rem;
}

/* NEWS SECTION */
.newsComp {
  padding: 74px 0 50px;
}
.newsComp .newsBlock {
  padding-bottom: 80px;
}
.newsComp .compInfo {
  padding-top: 55px;
}
.newsComp .compInfo .listInfo {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 50px;
}
.newsComp .compInfo .listInfo .blockInfo {
  width: 225px;
}
.newsComp .compInfo .listInfo .blockInfo a {
  display: block;
}
.newsComp .compInfo .listInfo .blockInfo a .imgInfo {
  border-radius: 10px;
  overflow: hidden;
}
.newsComp .compInfo .listInfo .blockInfo a .imgInfo img {
  display: block;
}
.newsComp .compInfo .listInfo .blockInfo a p {
  margin-top: 18px;
}

.listNews {
  margin: 57px 0;
}
.listNews li {
  margin-bottom: 38px;
}
.listNews li a {
  display: block;
}
.listNews li a .dateTime {
  display: inline-block;
  font-weight: 500;
  letter-spacing: 0.02em;
  position: relative;
  padding-right: 26px;
  margin-right: 19px;
}
.listNews li a .dateTime:after {
  position: absolute;
  content: "";
  height: 20px;
  width: 1px;
  top: 0;
  right: 0;
  background: #939393;
}
.listNews li a .tag {
  font-size: 0.81rem;
  font-weight: 700;
}
.listNews li a .text {
  line-height: 2;
  margin-top: 13px;
}

@media (min-width: 769px) {
  .notiArea .listNoti li a:hover .ctNoti p {
    border-bottom: 1px solid;
  }

  .navTop .listNav li a:hover {
    background: transparent;
  }
  .navTop .listNav li a:hover:before {
    right: -15px;
    bottom: -15px;
  }

  .newsComp .compInfo .listInfo .blockInfo a:hover p {
    text-decoration: underline;
  }

  .listNews li a:hover .text {
    text-decoration: underline;
  }
}
@media (max-width: 768px) {
  /* NOITFICATION */
  .notiArea {
    padding: 10px 0;
  }
  .notiArea .listNoti {
    border-radius: 5px;
    padding: 16px 15px 5px 15px;
  }
  .notiArea .listNoti li {
    margin-bottom: 11px;
    -ms-flex-flow: row wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .notiArea .listNoti li a {
    -ms-flex-flow: row wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .notiArea .listNoti li a .date.lato {
    width: 100%;
  }
  .notiArea .listNoti li .lato {
    width: 100%;
  }
  .notiArea .listNoti li a .ctNoti {
    flex: auto;
    width: 100%;
    padding-left: 0;
    line-height: 1.42857;
    margin-top: 4px;
  }
  .notiArea .listNoti li .ctNoti {
    flex: auto;
    width: 100%;
    padding-left: 0;
    line-height: 1.42857;
    margin-top: 4px;
    text-align: left;
  }

  .notiArea .listNoti li a .ctNoti .ico {
    margin-left: 7px;
  }

  /* KEYVISUAL */
  .keyvisual .slideNav {
    width: 84%;
    bottom: -65px;
  }
  .keyvisual .slideNav .arrowSlide {
    margin-top: 4px;
  }
  .keyvisual .slideNav .arrowSlide div {
    width: 8px;
    height: 12px;
    bottom: 0;
    left: 50%;
    margin: 0 9px;
    cursor: pointer;
  }
  .keyvisual .slideNav .arrowSlide div.next {
    background: url("../img/common/sp/ico_next.png") no-repeat;
    background-size: 9px;
  }
  .keyvisual .slideNav .arrowSlide div.prev {
    background: url("../img/common/sp/ico_prev.png") no-repeat;
    background-size: 9px;
  }
  .keyvisual .slideNav .dotSlide {
    display: inline-block;
    vertical-align: middle;
    margin-top: 2px;
  }
  .keyvisual .slideNav .dotSlide .slick-dots li {
    margin: 0 7px;
  }
  .keyvisual .slideNav .btnplay {
    width: 9px;
    margin: 3px 7% 0;
    background: url("../img/common/sp/ico_pause.png") no-repeat;
    background-size: 8px;
  }
  .keyvisual .slideNav .btnplay.pause {
    background: url("../img/common/sp/ico_play.png") no-repeat center;
    background-size: 9px;
  }
  .keyvisual .slideNav .slideCountWrap {
    width: 40px;
    margin-left: 4%;
    top: 3px;
  }

  /* NAVIGATION TOP */
  .navTop {
    height: 310px;
    background: url("../img/top/sp/bg_nav.jpg") no-repeat center;
    background-size: cover;
  }
  .navTop:before {
    background: url("../img/top/sp/lin_border.jpg") no-repeat;
    background-size: cover;
  }
  .navTop .listNav {
    background: url("../img/top/bg_navhover.png") no-repeat center;
    background-size: cover;
    height: auto;
    border-radius: 15px;
    top: 110px;
    -ms-flex-flow: row wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .navTop .listNav li {
    width: 50%;
    border-right: 1px solid #e5e5e5;
    border-top: 1px solid #e5e5e5;
  }
  .navTop .listNav li:nth-child(even) {
    border-right: none;
  }
  .navTop .listNav li:first-child {
    border-top: none;
  }
  .navTop .listNav li:nth-child(2) {
    border-top: none;
  }
  .navTop .listNav li a {
    padding: 32px 13px 27px;
  }
  .navTop .listNav li a:before {
    background: url("../img/top/sp/ico_arrowblue.png") no-repeat;
    background-size: 100%;
    height: 10px;
    width: 10px;
    right: 13px;
    bottom: 13px;
  }
  .navTop .listNav li a .sRound .ico {
    margin-bottom: 11px;
  }
  .navTop .listNav li a .sRound .ico img {
    margin: 0 auto;
    height: 33px;
  }

  /* INTRO TOP */
  .intro {
    padding-top: 102px;
    padding-bottom: 70px;
  }
  .intro .ttlIntro {
    font-size: 1.31rem;
    line-height: 1.52381;
  }
  .intro .listLogo li {
    padding: 0 40px;
  }
  .intro .listLogo li img {
    height: 107px;
  }
  .intro .listLogo li:first-child:before {
    height: 80px;
    top: 13px;
  }
  .intro .textIntro {
    padding: 0 18px;
    line-height: 1.78571;
    margin-top: 18px;
    margin-bottom: 23px;
  }

  .topType {
    padding: 54px 0 60px;
  }
  .topType .ttlType img {
    margin: 0 auto;
  }
  .topType .logoType {
    margin-top: 13px;
    margin-bottom: 28px;
  }
  .topType .logoType img {
    margin: 0 auto;
  }
  .topType .ttl {
    font-size: 1.13rem;
    letter-spacing: 0;
    margin-bottom: 16px;
    line-height: 1.66667;
  }
  .topType .textType {
    padding: 0 18px;
    line-height: 1.78571;
  }
  .topType .listType {
    border-radius: 15px;
    margin: 36px 0 50px;
  }
  .topType .listType .blockType {
    width: 100%;
    border-bottom: 1px solid #d6d6d6;
  }
  .topType .listType .blockType:before, .topType .listType .blockType:after {
    display: none;
  }
  .topType .listType .blockType:last-child {
    border: none;
  }
  .topType .listType .blockType.bl01 {
    background: url("../img/top/sp/bg_type01.png") no-repeat left top;
    background-size: cover;
  }
  .topType .listType .blockType.bl02 {
    background: url("../img/top/sp/bg_type02.png") no-repeat left top;
    background-size: cover;
  }
  .topType .listType .blockType.bl03 {
    background: url("../img/top/sp/bg_type03.png") no-repeat left top;
    background-size: cover;
  }
  .topType .listType .blockType.bl04 {
    background: url("../img/top/sp/bg_type04.png") no-repeat left top;
    background-size: cover;
  }
  .topType .listType .blockType .ttlBl {
    font-size: 1.38rem;
    padding-bottom: 20px;
    text-align: center;
  }
  .topType .listType .blockType .inner {
    -ms-flex-flow: row wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 21px 22px 0;
  }
  .topType .listType .blockType .inner .imgType {
    width: 100%;
    margin-top: 8px;
  }
  .topType .listType .blockType .inner .imgType img {
    margin: 0 auto;
  }
  .topType .listType .blockType .inner .rightType {
    width: 100%;
    margin-top: 40px;
  }
  .topType .listType .blockType .inner .rightType p {
    font-size: 0.75rem;
    line-height: 1.69231;
    padding: 0 4px;
  }
  .topType .listType .blockType .inner .rightType .btnType {
    margin-top: 17px;
    text-align: center;
  }
  .topType .listType .blockType .inner .rightType .btnType a {
    display: inline-block;
    width: 210px;
  }
  .topType .btnCm01 a {
    width: 270px;
  }

  /* NEWS SECTION */
  .newsComp {
    padding: 70px 0 0;
  }
  .newsComp .wrapper {
    padding: 0;
  }
  .newsComp .newsBlock {
    padding: 0 20px 70px;
    border-bottom: 1px solid #e4e6e7;
  }
  .newsComp .listNews {
    margin: 50px 0;
  }
  .newsComp .listNews li a {
    display: block;
  }
  .newsComp .listNews li a .dateTime {
    padding-right: 23px;
    margin-right: 20px;
  }
  .newsComp .listNews li a .dateTime:after {
    height: 22px;
  }
  .newsComp .listNews li a .tag {
    font-size: 0.88rem;
  }
  .newsComp .listNews li a .text {
    line-height: 1.78571;
    margin-top: 10px;
  }
  .newsComp .compInfo {
    padding: 64px 20px 20px;
  }
  .newsComp .compInfo .listInfo {
    margin-top: 59;
  }
  .newsComp .compInfo .listInfo .blockInfo {
    width: 47%;
    margin-bottom: 22px;
  }
  .newsComp .compInfo .listInfo .blockInfo a p {
    margin-top: 7px;
  }
}
@media (max-width: 374px) {
  .keyvisual .slideNav {
    padding-right: 0;
  }
  .keyvisual .slideNav .btnplay {
    margin: 3px 3% 0;
  }
  .keyvisual .slideNav .slideCountWrap {
    margin-left: 0;
  }
  .keyvisual .slideNav .slideCountWrap span {
    padding: 0;
  }

  .newsComp .newsBlock {
    padding: 0 12.5px 70px;
  }
  .newsComp .compInfo {
    padding: 64px 12.5px 20px;
  }
}
/* FAQ PAGE */
.mainContain {
  margin-top: 15px;
}
.mainContain.show {
  padding-bottom: 10px;
}

.textUnder {
  margin-top: 20px;
}

.textUnder p {
  display: block;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
}

.textUnder strong {
  font-weight: bold;
}

.textUnder em {
  font-style: italic;
}

.textUnder u {

}
.textUnder s {
  text-decoration: line-through;
}
.textUnder ol {
  display: block;
  list-style-type: decimal;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  padding-inline-start: 40px;
}
.textUnder li {
  display: list-item;
  text-align: -webkit-match-parent;
}
.textUnder ul {
  display: block;
  list-style-type: disc;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  padding-inline-start: 40px;
}
.textUnder blockquote {
  font-style: italic;
  font-family: Georgia, Times, "Times New Roman", serif;
  padding: 2px 0;
  border-style: solid;
  border-color: #ccc;
  border-width: 0;
  padding-left: 20px;
  padding-right: 8px;
  border-left-width: 5px;
  display: block;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 40px;
  margin-inline-end: 40px;
}

.textUnder blockquote:before, .textUnder  blockquote:after {
  content: open-quote;
  content: close-quote;
}

.textUnder a {
  color: #0782C1;
  text-decoration: underline;
}
.textUnder table {
  border: 1px double gray;
  margin: 1px;
  vertical-align: baseline;
  border-collapse: separate;
  border-spacing: 1px;
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}
.textUnder tbody {
  border: 1px double  gray;
  margin: 1px;
  border-collapse: separate;
  border-spacing: 1px;
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}
.textUnder tr {
  border: 1px double  gray;
  border-collapse: separate;
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}
.textUnder td {
  border: 1px double  gray;
  border-collapse: separate;
  text-align: left;
  padding-left: 2px;
  font-weight: normal;
  vertical-align: middle;
}
.textUnder hr {

}

/* FORM FAQ */
.formFaq {
  border-radius: 20px;
  box-shadow: 0 0 70px 0 rgba(50, 50, 50, 0.2);
  margin: 27px 0 60px;
  overflow: hidden;
}
.formFaq .upForm {
  padding: 40px 60px;
}
.formFaq .upForm .rowInput {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 20px;
}
.formFaq .upForm .rowInput:last-child {
  margin-bottom: 0;
}
.formFaq .upForm .rowInput .ttlInput {
  width: 128px;
  color: #111;
  padding-left: 15px;
  font-size: 1rem;
  position: relative;
}
.formFaq .upForm .rowInput .ttlInput:before {
  position: absolute;
  content: "";
  width: 4px;
  height: 24px;
  border-radius: 2px;
  background: #abcd03;
  left: 0;
  top: 0;
}
.formFaq .upForm .rowInput .formInput {
  width: 740px;
}
.formFaq .upForm .rowInput .formInput .textInput input[type='text'] {
  width: 100%;
  border-radius: 3px;
  border: 1px solid #60a7ff;
  height: 40px;
  font-size: 1rem;
  padding: 0 5px;
  box-shadow: inset 1px 1px 3px 0 rgba(50, 50, 50, 0.2);
  -webkit-appearance: none;
  -moz-appearance: none;
}
.formFaq .upForm .rowInput .formInput .grSelect::after {
  content:"";
  width: 235px;
  margin-right: 10px;
}
.formFaq .upForm .rowInput .formInput .grSelect {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
}
.formFaq .upForm .rowInput .formInput .grSelect .blockSelect {
  width: 235px;
  margin-right: 10px;
  margin-top: 10px;
}
.formFaq .upForm .rowInput .formInput .grSelect .blockSelect select {
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  height: 40px;
  padding: 0 26px 0 12px;
  border: 1px solid #d4d4d4;
  border-radius: 3px;
  box-shadow: inset -1px -1px 2px 0px rgba(50, 50, 50, 0.1);
  background: #fff url("../img/common/ico_select.png") no-repeat right 13px center;
}
.formFaq .upForm .rowInput .formInput .grSelect .blockSelect select::-ms-expand {
  display: none;
}
.formFaq .upForm .rowInput .formInput .grSelect .blockSelect select[disabled] {
  background: #f2f2f2 url("../img/common/ico_select.png") no-repeat right 13px center;
  border: none;
  box-shadow: none;
}
.formFaq .lowerForm {
  background: #f5f8e6;
  padding: 31px 10px;
}
.formFaq .lowerForm .listButton {
  text-align: center;
}
.formFaq .lowerForm .listButton li {
  display: inline-block;
  margin: 0 3px;
}
.formFaq .lowerForm .listButton li input {
  display: block;
  width: 200px;
  text-align: center;
  height: 50px;
  line-height: 50px;
  border-radius: 25px;
  background: #fff;
  border: 1px solid #cdcdcd;
  cursor: pointer;
  font-size: 1rem;
  -webkit-appearance: none;
}
.formFaq .lowerForm .listButton li.search input {
  background: #abcd03;
  box-shadow: inset 0 -1px 0 0 #90ac03;
  border: none;
  color: #fff;
}

.blockFaq {
  margin-bottom: 60px;
}
.blockFaq .listQus {
  margin-top: 30px;
}
.blockFaq .listQus li {
  padding-left: 39px;
  position: relative;
  margin-bottom: 18px;
}
.blockFaq .listQus li:before {
  position: absolute;
  content: "";
  background: url("../img/common/ico_q.png") no-repeat;
  width: 26px;
  height: 26px;
  left: 4px;
  top: -1px;
}
.blockFaq .listQus li a {
  color: #008aff;
  line-height: 1.46667;
}

.faqCate {
  padding-bottom: 70px;
}
.faqCate .grCate {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 30px;
}
.faqCate .grCate .blockCate {
  width: 290px;
  margin-right: 60px;
  padding-top: 20px;
  border-top: 1px solid #ccc;
  margin-bottom: 18px;
}
.faqCate .grCate .blockCate:nth-child(3n) {
  margin-right: 0;
}
.faqCate .grCate .blockCate .ttlCate {
  font-weight: 500;
  font-size: 1.25rem;
  color: #008aff;
  padding-left: 26px;
  background: url("../img/common/ico_arrow03.png") no-repeat 2px 6px;
}
.faqCate .grCate .blockCate .listCate {
  margin-top: 20px;
}
.faqCate .grCate .blockCate .listCate li {
  margin-bottom: 10px;
}
.faqCate .grCate .blockCate .listCate li a {
  padding-left: 28px;
  line-height: 1.46667;
  color: #008aff;
  background: url("../img/common/ico_arrow04.png") no-repeat 9px 6px;
}
/* 候補検索エリア用 */
.formFaq .upForm .rowInput .formInput .hp-gen_box{
    position: absolute;
    width: 740px;
    border-radius: 3px;
    border: 1px solid #60a7ff;
    background: #fff;
    height: 120px;
    font-size: 1rem;
    padding: 0 5px;
    box-shadow: inset 1px 1px 3px 0 rgba(50, 50, 50, 0.2);
    z-index: 100;
    -webkit-appearance: none;
    -moz-appearance: none;
}

@media (min-width: 769px) {
  .blockFaq .listQus li a:hover {
    text-decoration: underline;
  }

  .faqCate .grCate .blockCate .listCate li a:hover {
    text-decoration: underline;
  }
}
@media (max-width: 768px) {
  .formFaq {
    border-radius: 10px;
    box-shadow: 0 0 40px 0 rgba(50, 50, 50, 0.2);
    margin: 32px 0 70px;
  }
  .formFaq .upForm {
    padding: 25px 20px;
  }
  .formFaq .upForm .rowInput .ttlInput {
    width: 100%;
    padding-left: 13px;
    font-size: 0.94rem;
    margin-bottom: 19px;
  }
  .formFaq .upForm .rowInput .ttlInput:before {
    width: 3px;
    height: 100%;
    border-radius: 1px;
    left: 0;
    top: 0;
  }
  .formFaq .upForm .rowInput .formInput {
    width: 100%;
    position: relative;
  }
  .formFaq .upForm .rowInput .formInput .grSelect .blockSelect {
    width: 100%;
    margin-bottom: 11px;
  }
  .formFaq .upForm .rowInput .formInput .grSelect .blockSelect select {
    height: 42px;
    padding: 0 25px 0 14px;
    border: 1px solid #d4d4d4;
    border-radius: 2px;
    background: #fff url("../img/common/sp/ico_select.png") no-repeat right 15px center;
    background-size: 9px;
  }
  .formFaq .upForm .rowInput .formInput .grSelect .blockSelect select[disabled] {
    background: #f2f2f2 url("../img/common/sp/ico_select.png") no-repeat right 15px center;
    background-size: 9px;
  }
  .formFaq .upForm .rowInput .formInput .grSelect .blockSelect:last-child {
    margin-bottom: 0;
  }
  .formFaq .lowerForm {
    background: #f5f8e6;
    padding: 30px 0;
  }
  .formFaq .lowerForm .listButton {
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .formFaq .lowerForm .listButton li {
    display: inherit;
    margin: 0 5px;
  }
  .formFaq .lowerForm .listButton li input {
    width: 140px;
    font-size: 0.88rem;
  }

  .blockFaq {
    margin-bottom: 63px;
  }
  .blockFaq .listQus {
    margin-top: 26px;
  }
  .blockFaq .listQus li:before {
    background: url("../img/common/sp/ico_q.png") no-repeat;
    background-size: 100%;
    width: 25px;
    height: 25px;
    left: 5px;
    top: -2px;
  }
  .blockFaq .listQus li a {
    line-height: 1.57143;
  }

  .faqCate {
    padding-bottom: 60px;
  }
  .faqCate .grCate {
    margin-top: 20px;
  }
  .faqCate .grCate .blockCate {
    width: 100%;
    margin-right: 0;
    padding-top: 0;
    padding-bottom: 15px;
    margin-bottom: 20px;
    border-top: none;
    border-bottom: 1px solid #ccc;
  }
  .faqCate .grCate .blockCate:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
  }
  .faqCate .grCate .blockCate .ttlCate {
    font-size: 1.13rem;
    background: url("../img/common/sp/ico_arrow03.png") no-repeat 2px 6px;
    background-size: 14px;
  }
  .faqCate .grCate .blockCate .listCate {
    margin-top: 20px;
  }
  .faqCate .grCate .blockCate .listCate li {
    margin-bottom: 10px;
  }
  .faqCate .grCate .blockCate .listCate li a {
    padding-left: 26px;
    background: url("../img/common/sp/ico_arrow04.png") no-repeat 9px 8px;
    background-size: 5px;
  }
  /* 候補検索エリア用 */
  .formFaq .upForm .rowInput .formInput .hp-gen_box{
    position: absolute;
    width: 100%;
    border-radius: 2px;
    height: 110px;
    font-size: 0.94rem;
  }

}
@media (max-width: 374px) {
  .formFaq .lowerForm .listButton li input {
    width: 110px;
  }
}
/* RESULT SEARCH */
.searchResult {
  padding-bottom: 70px;
}
.searchResult .result {
  margin: 30px 0 60px;
  width: 100%;
}
.searchResult .result thead th {
  font-size: 0.88rem;
  border: 1px solid #ccc;
  font-weight: 500;
  padding: 15px 11px;
  background: #dbe79d;
}
.searchResult .result thead th.w01 {
  width: 300px;
}
.searchResult .result tbody tr {
  display: none;
}
.searchResult .result tbody td {
  border: 1px solid #ccc;
  padding: 20px 13px;
  word-break: break-all;
}
.searchResult .result tbody td a {
  color: #008aff;
  word-break: break-all;
}

@media (max-width: 768px) {
  .searchResult .result {
    margin: 15px 0 10px;
  }
  .searchResult .result thead th {
    font-size: 0.94rem;
    padding: 10px 8px;
  }
  .searchResult .result thead th.w01 {
    width: 135px;
  }
  .searchResult .result tbody td {
    font-size: 0.94rem;
    padding: 12px 11px;
  }
  .searchResult .countResult {
    font-size: 0.69rem;
    margin-bottom: 50px;
  }
}
/* FAQ SHOW */
.mainShow {
  padding-top: 15px;
  margin-bottom: 65px;
}
.mainShow .codeFaq {
  padding-right: 9px;
}
.mainShow .codeFaq .tagNo {
  display: inline-block;
  margin-left: 31px;
}
.mainShow .codeFaq .tagNo strong {
  font-weight: 700;
  letter-spacing: -0.02em;
}
.mainShow .codeFaq .tagNo a {
  color: #008aff;
}
.mainShow .innerShow {
  margin-top: 29px;
}
.mainShow .innerShow .question {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-bottom: 10px;
  border-bottom: 1px solid #ccc;
}
.mainShow .innerShow .question .icon img {
  display: block;
}
.mainShow .innerShow .question .textQus {
  flex: 1;
  padding-left: 15px;
  font-weight: 500;
  font-size: 1.25rem;
}
.mainShow .innerShow .answer {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  margin-top: 30px;
}
.mainShow .innerShow .answer .icon img {
  display: block;
}
.mainShow .innerShow .answer .ctAns {
  padding-left: 21px;
  padding-top: 15px;
  flex: 1;
}
.mainShow .innerShow .answer .ctAns .blockAns {
  margin-bottom: 25px;
}
.mainShow .innerShow .answer .ctAns .blockAns ul {
  margin-top: 12px;
}
.mainShow .innerShow .answer .ctAns .blockAns ul li {
  margin-bottom: 15px;
}
.mainShow .innerShow .answer .ctAns .blockAns ul li a {
  padding-left: 28px;
  color: #008aff;
  position: relative;
}
.mainShow .innerShow .answer .ctAns .blockAns ul li a:before {
  position: absolute;
  content: "";
  background: url("../img/common/ico_arrow06.png") no-repeat;
  width: 18px;
  height: 18px;
  left: 0;
  top: 2px;
}
.mainShow .innerShow .timeFaq {
  margin-top: -5px;
}
.mainShow .innerShow .timeFaq .time {
  display: inline-block;
  margin-left: 26px;
  font-size: 0.81rem;
}

@media (max-width: 768px) {
  .mainShow {
    padding-top: 25px;
  }
  .mainShow .codeFaq {
    padding-right: 0;
  }
  .mainShow .codeFaq .tagNo {
    margin-left: 12px;
  }
  .mainShow .innerShow {
    margin-top: 29px;
  }
  .mainShow .innerShow .question {
    padding-bottom: 13px;
  }
  .mainShow .innerShow .question .textQus {
    padding-left: 15px;
    font-size: 1.13rem;
  }
  .mainShow .innerShow .answer {
    margin-top: 30px;
  }
  .mainShow .innerShow .answer .ctAns {
    margin-left: -50px;
    padding-left: 64px;
    padding-top: 0;
  }
  .mainShow .innerShow .answer .ctAns .blockAns {
    margin-bottom: 25px;
  }
  .mainShow .innerShow .answer .ctAns .blockAns ul {
    margin-top: 7px;
  }
  .mainShow .innerShow .answer .ctAns .blockAns ul li {
    margin-bottom: 7;
  }
  .mainShow .innerShow .answer .ctAns .blockAns ul li a {
    padding-left: 22px;
    word-break: break-all;
    display: block;
  }
  .mainShow .innerShow .answer .ctAns .blockAns ul li a:before {
    background: url("../img/common/sp/ico_arrow06.png") no-repeat;
    background-size: 100%;
    width: 14px;
    height: 14px;
    top: 3px;
  }
  .mainShow .innerShow .timeFaq {
    margin-top: 10px;
  }
  .mainShow .innerShow .timeFaq .time {
    display: block;
    margin-left: 0;
    font-size: 0.75rem;
  }
}
/* PAGE ITEM */
.pageItem .mainContain {
  padding-bottom: 60px;
}

.grUnder {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 23px;
}
.grUnder .text.des {
  flex: 1;
  padding-left: 30px;
}

.feature {
  padding-top: 15px;
}
.feature .ttlFea {
  letter-spacing: 0.04em;
}
.feature .ttlFea .ttlBg {
  display: inline-block;
  position: relative;
  font-size: 3.18rem;
  padding: 0 23px;
  color: #454545;
}
.feature .ttlFea .ttlBg:before {
  position: absolute;
  content: "";
  background: #666;
  height: 1px;
  width: 60px;
  top: 50%;
  margin-top: 10px;
  right: 100%;
}
.feature .ttlFea .ttlBg:after {
  position: absolute;
  content: "";
  background: #666;
  height: 1px;
  width: 60px;
  top: 50%;
  margin-top: 10px;
  left: 100%;
}
.feature .ttlFea .ttlBg .cl {
  color: #f56e7f;
}
.feature .ttlFea .ttlBg .cl span {
  font-weight: 700;
  font-size: 5.06rem;
}
.feature .linkFea {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 20px;
}
.feature .linkFea .linkC {
  width: 290px;
  padding-bottom: 35px;
  position: relative;
}
.feature .linkFea .linkC:before {
  position: absolute;
  content: "";
  width: 1px;
  height: 100%;
  background: url("../img/item/lin_bor.png") repeat-y;
  right: -30px;
  top: 0;
}
.feature .linkFea .linkC:last-child:before {
  display: none;
}
.feature .linkFea .linkC a {
  display: block;
}
.feature .linkFea .linkC a .icoFe img {
  margin: 0 auto;
  display: block;
}
.feature .linkFea .linkC a .boxText {
  background: #69bde9;
  border-radius: 10px;
  padding: 18px 18px 35px;
  position: relative;
  margin-top: -25px;
}
.feature .linkFea .linkC a .boxText:before {
  position: absolute;
  content: "";
  background: url("../img/item/ico_arrow.png") no-repeat;
  width: 57px;
  height: 57px;
  left: 50%;
  margin-left: -29px;
  bottom: -31px;
}
.feature .linkFea .linkC a .boxText p {
  font-size: 1.13rem;
  color: #fff;
  line-height: 1.44444;
  font-weight: 500;
  letter-spacing: -0.02em;
}
.feature .linkFea .linkC a .boxText p span {
  font-size: 0.904rem;
  font-weight: 400;
}
.feature .linkFea .linkC a .boxText p small {
  font-size: 0.81rem;
  font-weight: 400;
}
.feature .grFeature {
  margin-top: 60px;
}
.feature .grFeature .blockFea {
  margin-bottom: 30px;
}
.feature .grFeature .blockFea .blockChild {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 30px 0;
  border-bottom: 1px solid #ddd;
}
.feature .grFeature .blockFea .blockChild:last-child {
  border: 0;
}
.feature .grFeature .blockFea .blockChild .img {
  width: 300px;
}
.feature .grFeature .blockFea .blockChild .img img {
  display: block;
}
.feature .grFeature .blockFea .blockChild .text {
  width: 660px;
  color: #111;
  margin-top: -5px;
}
.feature .grFeature .blockFea .chartBlock {
  margin-top: 30px;
  padding-bottom: 30px;
}
.feature .grFeature .blockFea .chartBlock .img img {
  display: block;
}
.feature .grFeature .blockFea .chartBlock .text {
  margin-top: 25px;
}
.feature .grFeature .blockFea .blockMulti {
  margin-top: 30px;
  padding-bottom: 25px;
  border-bottom: 1px solid #ddd;
}
.feature .grFeature .blockFea .blockMulti .imgGr {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -25px;
}
.feature .grFeature .blockFea .blockMulti .imgGr .img {
  width: 50%;
  padding: 0 25px;
  margin-bottom: 25px;
}
.feature .grFeature .blockFea .blockMulti .imgGr .img img {
  display: block;
}
.feature .grFeature .blockFea .blockDownload {
  padding-top: 26px;
}
.feature .grFeature .blockFea .blockDownload .listNote li {
  font-size: 0.81rem;
  line-height: 1.53846;
  text-indent: -23px;
  padding-left: 23px;
  margin-bottom: 9px;
}
.feature .grFeature .blockFea .blockDownload .frameDownload {
  border-radius: 10px;
  text-align: center;
  background: #f9f7ee;
  padding: 50px 0 30px;
  margin: 50px 0 60px;
}
.feature .grFeature .fBlock {
  margin-bottom: 55px;
}
.feature .grFeature .fBlock .inner {
  margin-top: 25px;
}

@media (max-width: 768px) {
  .pageItem .mainContain {
    padding-bottom: 70px;
  }

  .grUnder {
    margin-top: 40px;
  }
  .grUnder .imgUd {
    width: 100%;
  }
  .grUnder .imgUd img {
    margin: 0 auto;
  }
  .grUnder .text.des {
    width: 100%;
    flex: auto;
    padding-left: 0;
    margin-top: 37px;
  }

  .feature {
    padding-top: 30px;
  }
  .feature .ttlFea .ttlBg {
    font-size: 2.18rem;
    padding: 0 20px;
  }
  .feature .ttlFea .ttlBg:before {
    width: 42px;
    top: 50%;
    margin-top: 6px;
  }
  .feature .ttlFea .ttlBg:after {
    width: 42px;
    top: 50%;
    margin-top: 6px;
  }
  .feature .ttlFea .ttlBg .cl span {
    font-size: 3.488rem;
  }
  .feature .linkFea {
    margin-top: 15px;
  }
  .feature .linkFea .linkC {
    width: 100%;
    padding-bottom: 9px;
  }
  .feature .linkFea .linkC:before {
    display: none;
  }
  .feature .linkFea .linkC a .boxText {
    border-radius: 8px;
    padding: 13px 60px 13px 18px;
    margin-top: 0;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
  }
  .feature .linkFea .linkC a .boxText:before {
    background: url("../img/item/sp/ico_arrow.png") no-repeat;
    background-size: 100%;
    width: 48px;
    height: 48px;
    left: auto;
    right: 7px;
    margin-left: auto;
    bottom: auto;
    top: 50%;
    margin-top: -24px;
  }
  .feature .linkFea .linkC a .boxText p {
    flex: 1;
    font-size: 0.88rem;
    line-height: 1.64286;
    padding-left: 15px;
  }
  .feature .linkFea .linkC a .boxText p span {
    font-size: 0.704rem;
  }
  .feature .linkFea .linkC a .boxText p small {
    font-size: 0.88rem;
  }
  .feature .grFeature {
    margin-top: 51px;
  }
  .feature .grFeature .blockFea .blockChild {
    padding: 20px 0 16px;
    border-bottom: 1px solid #ddd;
  }
  .feature .grFeature .blockFea .blockChild .img {
    order: 1;
    width: 100%;
  }
  .feature .grFeature .blockFea .blockChild .img img {
    width: 100%;
  }
  .feature .grFeature .blockFea .blockChild .text {
    order: 2;
    width: 100%;
    margin-top: 14px;
  }
  .feature .grFeature .blockFea .chartBlock {
    margin-top: 20px;
  }
  .feature .grFeature .blockFea .chartBlock .text {
    margin-top: 15px;
  }
  .feature .grFeature .blockFea .blockMulti {
    margin-top: 20px;
  }
  .feature .grFeature .blockFea .blockMulti .imgGr {
    margin: 0;
  }
  .feature .grFeature .blockFea .blockMulti .imgGr .img {
    width: 100%;
    padding: 0;
    margin-bottom: 20px;
  }
  .feature .grFeature .blockFea .blockMulti .imgGr .img:last-child {
    margin-bottom: 15px;
  }
  .feature .grFeature .blockFea .blockMulti .imgGr .img img {
    display: block;
  }
  .feature .grFeature .blockFea .blockDownload {
    padding-top: 37px;
  }
  .feature .grFeature .blockFea .blockDownload .listNote li {
    font-size: 0.69rem;
    line-height: 1.55;
    text-indent: -20px;
    padding-left: 20px;
  }
  .feature .grFeature .blockFea .blockDownload .frameDownload {
    border-radius: 0;
    padding: 50px 20px 20px;
    margin: 60px -20px 70px;
  }
  .feature .grFeature .fBlock {
    margin-bottom: 25px;
  }
  .feature .grFeature .fBlock .inner {
    margin-top: 10px;
  }
}
@media (max-width: 374px) {
  .feature .grFeature .blockFea .blockDownload .frameDownload {
    padding-left: 12.5px;
    padding-right: 12.5px;
    margin-left: -12.5px;
    margin-right: -12.5px;
  }
}
/* PAGE CONTACT */
.pageContact .btnCt {
  margin-top: 45px;
}

.blockContact {
  margin-top: 50px;
  margin-bottom: 60px;
}
.blockContact .text {
  margin-top: 26px;
}
.blockContact .redFrame {
  border: 2px solid #e53700;
  border-radius: 10px;
  text-align: center;
  padding: 33px 0 66px;
  margin-top: 28px;
}
.blockContact .redFrame .red {
  color: #e53700;
  margin-bottom: 8px;
}
.blockContact .redFrame .btnCm01 a {
  position: relative;
}
.blockContact .redFrame .btnCm01 a:before {
  position: absolute;
  content: "";
  background: url("../img/contact/ico_panda.png") no-repeat;
  width: 58px;
  height: 90px;
  left: -9px;
  top: -30px;
}
.blockContact .childBlock {
  margin-top: 40px;
}
.blockContact .childBlock .boxPhone {
  width: 760px;
  margin: 0 auto;
  border-radius: 20px;
  box-shadow: 0 0 70px 0 rgba(50, 50, 50, 0.2);
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  padding: 28px 60px 28px 65px;
  margin-top: 48px;
}
.blockContact .childBlock .boxPhone .phoneNumb {
  font-size: 2.62rem;
  font-weight: 700;
  padding-left: 70px;
  background: url("../img/common/ico_free.png") no-repeat left center;
}
.blockContact .childBlock .boxPhone .phoneNumb span {
  font-weight: 300;
}
.blockContact .childBlock .boxPhone .rightBox {
  flex: 1;
  padding-left: 60px;
}
.blockContact .childBlock .boxPhone .rightBox .ttl {
  font-weight: 700;
  margin-bottom: 13px;
}
.blockContact .childBlock .boxPhone .rightBox p {
  margin-bottom: 3px;
}
.blockContact .childBlock .boxPhone .rightBox .note {
  font-size: 0.81rem;
  margin-top: 7px;
}
.blockContact .childBlock.timeBlock .descripton {
  margin-top: -20px;
}
.blockContact .childBlock.timeBlock .note {
  font-size: 0.81rem;
  margin-top: 15px;
}
.blockContact .childBlock.timeBlock .note span {
  color: #f00;
}
.blockContact.web .text {
  margin-bottom: 30px;
}

@media (max-width: 768px) {
  .pageContact .btnCt {
    margin-top: 35px;
  }

  .blockContact {
    margin-top: 55px;
    margin-bottom: 70px;
  }
  .blockContact .text {
    margin-top: 16px;
  }
  .blockContact .redFrame {
    padding: 20px 15px 65px;
  }
  .blockContact .redFrame .red {
    font-size: 0.81rem;
    margin-bottom: 23px;
  }
  .blockContact .redFrame .btnCm01 a {
    position: relative;
  }
  .blockContact .redFrame .btnCm01 a:before {
    background: url("../img/contact/sp/ico_panda.png") no-repeat;
    background-size: 100%;
    width: 47px;
    height: 72px;
    left: -10px;
    top: -13px;
  }
  .blockContact .childBlock {
    margin-top: 27px;
  }
  .blockContact .childBlock .boxPhone {
    width: 100%;
    border-radius: 15px;
    padding: 30px 0 35px 10%;
    margin-top: 35px;
    box-shadow: 0 0 25px 0 rgba(50, 50, 50, 0.2);
  }
  .blockContact .childBlock .boxPhone .phoneNumb {
    width: 100%;
    font-size: 1.75rem;
    padding-left: 47px;
    background: url("../img/common/sp/ico_free.png") no-repeat left center;
    background-size: 37px;
  }
  .blockContact .childBlock .boxPhone .rightBox {
    flex: auto;
    width: 100%;
    padding-left: 34%;
    position: relative;
  }
  .blockContact .childBlock .boxPhone .rightBox .ttl {
    position: absolute;
    left: 9%;
    top: 0;
    margin-bottom: 0;
  }
  .blockContact .childBlock .boxPhone .rightBox p {
    margin-bottom: 3px;
  }
  .blockContact .childBlock .boxPhone .rightBox .note {
    font-size: 0.81rem;
    margin-top: 7px;
  }
  .blockContact .childBlock.timeBlock .descripton {
    margin-top: 15px;
    font-size: 0.69rem;
  }
  .blockContact .childBlock.timeBlock .note {
    font-size: 0.69rem;
    line-height: 1.81818;
    margin-top: 5px;
  }
  .blockContact .childBlock.timeBlock .note span {
    display: block;
  }
}
@media (max-width: 374px) {
  .blockContact .childBlock .boxPhone {
    padding-left: 6%;
  }
}
/* CONTACT FORM */
.navForm {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  margin-top: 27px;
  margin-bottom: 30px;
}
.navForm .blockNav {
  width: 33.3333%;
  text-align: center;
  padding: 17px 10px;
  border-radius: 10px;
  position: relative;
}
.navForm .blockNav:before {
  position: absolute;
  content: "";
  background: #878787;
  height: 2px;
  width: 100%;
  left: 0;
  top: 34px;
}
.navForm .blockNav:first-child:before {
  left: 50%;
}
.navForm .blockNav:last-child:before {
  right: 50%;
  left: auto;
}
.navForm .blockNav.active {
  background: #ddeb9a;
}
.navForm .blockNav.active .stepID {
  background: #abcd03;
}
.navForm .blockNav .stepID {
  display: inline-block;
  font-size: 1.25rem;
  font-style: italic;
  height: 34px;
  line-height: 34px;
  border-radius: 17px;
  padding: 0 32px;
  color: #fff;
  background: #878787;
  position: relative;
  z-index: 1;
}
.navForm .blockNav span {
  display: block;
  margin-top: 11px;
}

@media (max-width: 768px) {
  .navForm {
    margin: 30px -20px 20px;
  }
  .navForm .blockNav {
    padding: 12px 5px;
    border-radius: 0;
    border: 1px solid #eaeaea;
    border-left: none;
  }
  .navForm .blockNav:before {
    top: 23px;
    width: calc(100% + 2px);
    left: -1px;
  }
  .navForm .blockNav:last-child {
    border-right: none;
  }
  .navForm .blockNav.active {
    border: 1px solid #ddeb9a;
  }
  .navForm .blockNav .stepID {
    font-size: 0.75rem;
    height: 22px;
    line-height: 22px;
    border-radius: 11px;
    padding: 0 22px;
  }
  .navForm .blockNav span {
    font-size: 0.69rem;
    margin-top: 7px;
  }
}
@media (max-width: 374px) {
  .navForm {
    margin-left: -12.5px;
    margin-right: -12.5px;
  }
}
/* PAGE THANKS */
.thanksBlock {
  margin-bottom: 70px;
}
.thanksBlock p {
  margin-bottom: 55px;
}

@media (max-width: 768px) {
  .thanksBlock p {
    margin-bottom: 40px;
  }
}
/* PAGE COMPANY */
.pageCompany .bannerComp {
  margin-top: 25px;
}
.pageCompany .bannerComp img {
  display: block;
  border-radius: 15px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  height: 380px;
  max-width: inherit;
}
.pageCompany .faqCate {
  margin-top: 50px;
}
.pageCompany .faqCate.info {
  padding-top: 60px;
  margin-top: 60px;
  border-top: 1px solid #ccc;
}
.pageCompany .faqCate .grCate .blockCate {
  padding-top: 0;
  border: none;
}
.pageCompany .faqCate .grCate .blockCate .imgComp {
  margin-bottom: 15px;
}
.pageCompany .faqCate .grCate .blockCate .imgComp img {
  display: block;
}
.pageCompany .faqCate .grCate .blockCate .ttlCate {
  background: url("../img/common/ico_arrow08.png") no-repeat 2px 6px;
  color: #333;
}
.pageCompany .faqCate .grCate .blockCate .ttlCate a {
  color: #333;
}
.pageCompany .faqCate .grCate .blockCate .listCate li a {
  color: #111;
}
.pageCompany .mainTab {
  margin-top: 50px;
}
.pageCompany .mainTab .listNews {
  margin-top: 60px;
}
.pageCompany .mainTab .listNews li {
  display: none;
}
.pageCompany .mainTab .tabs {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.pageCompany .mainTab .tabs .tab-link {
  width: 180px;
  margin-right: 6px;
}

@media (max-width: 768px) {
  .pageCompany .bannerComp {
    margin: 30px -20px 0;
  }
  .pageCompany .bannerComp img {
    border-radius: 0;
    height: 160px;
  }
  .pageCompany .faqCate.info {
    padding-top: 50px;
    margin-top: 70px;
  }
  .pageCompany .faqCate .grCate .blockCate .imgComp {
    margin-bottom: 17px;
  }
  .pageCompany .faqCate .grCate .blockCate .ttlCate {
    background: url("../img/common/sp/ico_arrow08.png") no-repeat 2px 6px;
    background-size: 14px;
  }
  .pageCompany .mainTab {
    margin-top: 35px;
  }
  .pageCompany .mainTab .listNews {
    margin-top: 25px;
  }
  .pageCompany .mainTab .tabs {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .pageCompany .mainTab .tabs .tab-link {
    width: 49%;
    margin-right: 0;
  }
}
@media (max-width: 374px) {
  .pageCompany .bannerComp {
    margin: 30px -12.5px 0;
  }
}
/* COMPANY RINEN */
.rinenInner {
  margin-top: 30px;
}

.blockRinen {
  margin-bottom: 60px;
}
.blockRinen .imgAdr img {
  display: block;
}
.blockRinen img.imgAdr2 {
  display: block;
  margin: 50px auto;
  max-width: 100%;
  height: auto;
}
.blockRinen .insider {
  margin-top: 30px;
}
.blockRinen .text {
  margin-top: 26px;
}
.blockRinen .listIndent {
  margin-top: 23px;
}
.blockRinen .listIndent li {
  padding-left: 40px;
  position: relative;
  margin-bottom: 11px;
}
.blockRinen .listIndent li span {
  font-weight: 700;
  position: absolute;
  left: 15px;
}
.blockRinen .boxAction {
  margin-top: 30px;
  background: url("../img/company/bg_newrinen.jpg") repeat-y center;
  background-size: 100% auto;
  border-radius: 10px;
  padding: 30px;
}
.blockRinen .boxAction .listAction {
  background: #fff;
  box-shadow: 0 0 20px 0 rgba(50, 50, 50, 0.15);
  border-radius: 5px;
  padding: 30px 70px 50px;
}
.blockRinen .boxAction .listAction li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 20px 0;
  padding-left: 140px;
}
.blockRinen .boxAction .listAction li a .mark {
  width: 117px;
  font-weight: 700;
  font-size: 1.13rem;
  border-right: 1px solid #ccc;
  padding: 2px 0;
}
.blockRinen .boxAction .listAction li a .ct {
  width: 533px;
  padding-left: 25px;
  padding-top: 4px;
}
.blockRinen .boxAction .listAction li.l01 {
  background: url("../img/company/lin_border01.png") no-repeat bottom center;
}
.blockRinen .boxAction .listAction li.l01 .mark {
  color: #ed7987;
}
.blockRinen .boxAction .listAction li.l02 {
  background: url("../img/company/lin_border02.png") no-repeat bottom center;
}
.blockRinen .boxAction .listAction li.l02 .mark {
  color: #f3994f;
}
.blockRinen .boxAction .listAction li.l03 {
  background: url("../img/company/lin_border03.png") no-repeat bottom center;
}
.blockRinen .boxAction .listAction li.l03 .mark {
  color: #abcd03;
}
.blockRinen .boxAction .listAction li.l04 {
  background: url("../img/company/lin_border04.png") no-repeat bottom center;
}
.blockRinen .boxAction .listAction li.l04 .mark {
  color: #61c1be;
}
.blockRinen .boxAction .listAction li.l05 {
  background: url("../img/company/lin_border05.png") no-repeat bottom center;
}
.blockRinen .boxAction .listAction li.l05 .mark {
  color: #62bfeb;
}
.blockRinen .messBlock {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 30px 0 0;
}
.blockRinen .boxAction .boxVision {
  background: #fff;
  box-shadow: 0 0 20px 0 rgba(50, 50, 50, 0.15);
  border-radius: 5px;
  padding: 50px 70px 50px;
}
.blockRinen .boxAction .boxVision h3 {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.8888em;
    text-align: center;
}
.visionDl {
    margin-top: 20px;
    font-size: 0.9375rem;
}
.visionDl dt {
    float: left;
    font-weight: 700;
}
.visionDl dd {
    margin-left: 150px; 
    margin-bottom: 6px;
}
.blockRinen .messBlock .imgMess img {
  display: block;
}
.blockRinen .messBlock .leftMess {
  margin-top: -6px;
  flex: 1;
  padding-right: 28px;
}
.blockRinen .messBlock .leftMess p {
  margin-bottom: 10px;
}
.blockRinen .signature {
  margin-top: 40px;
}

@media (max-width: 768px) {
  .blockRinen {
    margin-bottom: 70px;
  }
  .blockRinen .imgAdr {
    margin-top: 20px;
  }
  .blockRinen img.imgAdr2 {
    margin: 20px auto;
  }
  .blockRinen .text {
    margin-top: 18px;
  }
  .blockRinen .listIndent li {
    padding-left: 35px;
    line-height: 1.57143;
  }
  .blockRinen .listIndent li span {
    left: 10px;
  }
  .blockRinen .boxAction {
    margin-top: 20px;
    background: url("../img/company/sp/bg_newrinen.jpg") repeat-y center;
    background-size: 100% auto;
    border-radius: 5px;
    padding: 15px;
  }
  .blockRinen .boxAction .listAction {
    box-shadow: 0 0 10px 0 rgba(50, 50, 50, 0.15);
    padding: 8px 0px 30px;
  }
  .blockRinen .boxAction .listAction li a {
    padding: 19px 35px;
    text-align: center;
  }
  .blockRinen .boxAction .listAction li a .mark {
    width: 100%;
    font-size: 1rem;
    border-right: none;
    padding: 0;
    margin-bottom: 5px;
  }
  .blockRinen .boxAction .listAction li a .ct {
    width: 100%;
    padding: 0;
    line-height: 1.64286;
  }
  .blockRinen .boxAction .listAction li.l01 {
    background: url("../img/company/sp/lin_border01.png") no-repeat bottom center;
    background-size: 100%;
  }
  .blockRinen .boxAction .listAction li.l02 {
    background: url("../img/company/sp/lin_border02.png") no-repeat bottom center;
    background-size: 100%;
  }
  .blockRinen .boxAction .listAction li.l03 {
    background: url("../img/company/sp/lin_border03.png") no-repeat bottom center;
    background-size: 100%;
  }
  .blockRinen .boxAction .listAction li.l04 {
    background: url("../img/company/sp/lin_border04.png") no-repeat bottom center;
    background-size: 100%;
  }
  .blockRinen .boxAction .listAction li.l05 {
    background: url("../img/company/sp/lin_border05.png") no-repeat bottom center;
    background-size: 100%;
  }
  .visionMainsm { margin-top: 30px;}
  .blockRinen .boxAction .boxVision {
    box-shadow: 0 0 20px 0 rgba(50, 50, 50, 0.15);
    padding: 30px 30px 30px;
  }
  .blockRinen .boxAction .boxVision h3 {
    font-size: 0.9375rem;
    text-align: left;
  }
  .visionDl {
    margin-top: 20px;
    font-size: 0.9375rem;
  }
  .visionDl dt {
    float: none;
    margin-bottom: 4px;
  }
  .visionDl dd {
    margin-left: 0px; 
  }

  .blockRinen .messBlock {
    margin: 18px 0 0;
  }
  .blockRinen .messBlock .imgMess {
    order: 1;
    width: 100%;
  }
  .blockRinen .messBlock .imgMess img {
    margin: 0 auto;
  }
  .blockRinen .messBlock .leftMess {
    order: 2;
    margin-top: 21px;
    flex: auto;
    padding-right: 0;
  }
  .blockRinen .messBlock .leftMess p {
    margin-bottom: 15px;
  }
  .blockRinen .signature {
    margin-top: 25px;
  }
  .blockRinen .signature img {
    margin-right: 0;
    margin-left: auto;
  }
}
.blockRinenFusoku .ttlBlock {
	margin-top: 50px;
	margin-bottom: 30px;
}

/* COMPANY OUTLINE */
.blockRinen .listHistory {
  margin-top: 30px;
  padding-bottom: 20px;
}
.blockRinen .listHistory li {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  margin-top: -1px;
}
.blockRinen .listHistory li .inHis {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 11px 0;
}
.blockRinen .listHistory li .inHis .time {
  width: 200px;
  font-weight: 500;
  padding-left: 32px;
  position: relative;
  margin-top: 4px;
}
.blockRinen .listHistory li .inHis .time:before {
  position: absolute;
  content: "";
  width: 2px;
  height: 20px;
  background: #cfa7cd;
  left: 14px;
  top: 0;
}
.blockRinen .listHistory li .inHis .ct {
  width: 790px;
}

@media (max-width: 768px) {
  .blockRinen .listHistory {
    margin-top: 20px;
    padding-bottom: 0;
  }
  .blockRinen .listHistory li {
    margin-top: 0;
    border-bottom: none;
  }
  .blockRinen .listHistory li .inHis {
    padding: 13px 15px;
  }
  .blockRinen .listHistory li .inHis .time {
    width: 100%;
    padding-left: 10px;
    font-size: 0.75rem;
    margin-top: 0;
  }
  .blockRinen .listHistory li .inHis .time:before {
    height: 16px;
    border-radius: 2px;
    left: 0;
    top: 0;
  }
  .blockRinen .listHistory li .inHis .ct {
    width: 100%;
    font-size: 0.75rem;
    line-height: 1.5;
    margin-top: 4px;
  }
}
/* PAGE EVOLUTION */
.listEvo {
  margin-top: 35px;
}
.listEvo .blockEvo {
  margin-bottom: 50px;
}
.listEvo .blockEvo .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 20px;
  margin-bottom: 30px;
}
.listEvo .blockEvo .inner .ctEvo {
  width: 630px;
}
.listEvo .blockEvo .inner .ctEvo p {
  font-size: 0.88rem;
}
.listEvo .blockEvo .inner .imgEvo {
  width: 330px;
}

@media (max-width: 768px) {
  .listEvo {
    margin-top: 35px;
  }
  .listEvo .blockEvo {
    margin-bottom: 45px;
  }
  .listEvo .blockEvo:last-child {
    margin-bottom: 0;
  }
  .listEvo .blockEvo .inner {
    margin-top: 15px;
    margin-bottom: 0;
  }
  .listEvo .blockEvo .inner .ctEvo {
    width: 100%;
  }
  .listEvo .blockEvo .inner .imgEvo {
    width: 100%;
    margin-top: 15px;
  }
}
/* PAGE INFORMATION DETAIL */
.infoDetail .blockDetail {
  margin-top: 30px;
}
.infoDetail .blockDetail .des {
  margin-bottom: 20px;
}
.infoDetail .mainContain {
  padding-bottom: 60px;
}

@media (max-width: 768px) {
  .infoDetail .blockDetail {
    margin-top: 20px;
  }
  .infoDetail .mainContain {
    padding-bottom: 70px;
  }
}
/* PAGE CUSTOMER */
.pageCustomer .mainContain {
  padding-bottom: 60px;
}

.boxComputer {
  border-radius: 10px;
  background: #f9f7ee;
  padding: 67px 115px 40px;
  margin-top: 36px;
}
.boxComputer .innerComp {
  background: #fff;
  border-radius: 10px;
  position: relative;
  box-shadow: 0px 0px 25px 0px rgba(50, 50, 50, 0.1);
}
.boxComputer .innerComp:before {
  position: absolute;
  content: "";
  background: url("../img/customer/ico_circle.png") no-repeat;
  width: 132px;
  height: 132px;
  left: 50%;
  margin-left: -66px;
  top: -60px;
}
.boxComputer .innerComp:after {
  position: absolute;
  content: "";
  background: url("../img/customer/ico_computer.png") no-repeat;
  width: 30px;
  height: 28px;
  left: 50%;
  margin-left: -15px;
  top: -22px;
}
.boxComputer .innerComp .frame {
  padding: 20px 20px 40px;
  position: relative;
  background: #fff;
  border-radius: 10px;
}
.boxComputer .innerComp .frame .ttl {
  text-align: center;
  color: #f3994f;
  font-weight: 700;
  font-size: 1rem;
  border-bottom: 1px solid #f3994f;
  padding-bottom: 11px;
}

.innerCustomer {
  margin-top: 60px;
  margin-bottom: 40px;
}
.innerCustomer .grCustomer {
  margin-top: 30px;
}
.innerCustomer .blockCus {
  padding-bottom: 50px;
  margin-bottom: 50px;
  border-bottom: 1px solid #ccc;
}
.innerCustomer .blockCus.service {
  border: none;
  padding-bottom: 0;
}
.innerCustomer .blockCus.service .childBlock {
  margin-bottom: 50px;
}
.innerCustomer .blockCus.service .childBlock .txt01 {
  margin-top: 15px;
}
.innerCustomer .blockCus.service .childBlock:last-child {
  margin-bottom: 0;
}
.innerCustomer .blockCus .listInfo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 18px;
}
.innerCustomer .blockCus .listInfo .blockInfo {
  width: 485px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 5px;
  border: 1px solid #ccc;
  background: #f6f6f6;
  overflow: hidden;
  margin-bottom: 20px;
  min-height: 120px;
  position: relative;
}
.innerCustomer .blockCus .listInfo .blockInfo:before {
  position: absolute;
  content: "";
  width: 363px;
  height: 100%;
  top: 0;
  right: 0;
  background: #fff;
}
.innerCustomer .blockCus .listInfo .blockInfo a.linkOut {
  position: absolute;
  top: 0;
  left: 0;
  width: 120px;
  height: 100%;
  transition: 0.26s;
}
.innerCustomer .blockCus .listInfo .blockInfo a.linkOut:hover {
  background: rgba(255, 255, 255, 0.4);
}
.innerCustomer .blockCus .listInfo .blockInfo .iconIf {
  width: 120px;
}
.innerCustomer .blockCus .listInfo .blockInfo .iconIf img {
  display: block;
  margin: 0 auto;
}
.innerCustomer .blockCus .listInfo .blockInfo .ctIf {
  flex: 1;
  background: #fff;
  padding: 18px 17px 15px;
  position: relative;
  z-index: 1;
  height: 100%;
}
.innerCustomer .blockCus .listInfo .blockInfo .ctIf .ttlIn {
  font-size: 1rem;
  font-weight: 500;
  padding-left: 24px;
  background: url("../img/common/ico_arrow10.png") no-repeat 0 4px;
  display: inline-block;
}
.innerCustomer .blockCus .listInfo .blockInfo .ctIf p {
  line-height: 1.73333;
  margin-top: 10px;
}
.innerCustomer .blockCus .listNote {
  margin-top: 20px;
}
.innerCustomer .blockCus .listNote li {
  font-size: 0.81rem;
  padding-left: 25px;
  text-indent: -25px;
  margin-bottom: 11px;
}
.innerCustomer .blockCus .listNote li:last-child {
  margin-bottom: 0;
}
.innerCustomer .listSubs .blockSub {
  padding: 30px 0;
  border-bottom: 1px solid #ccc;
}
.innerCustomer .listSubs .blockSub:last-child {
  border: none;
}
.innerCustomer .listSubs .blockSub .inner {
  margin-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.innerCustomer .listSubs .blockSub .inner .imgSubs {
  width: 300px;
}
.innerCustomer .listSubs .blockSub .inner .imgSubs img {
  display: block;
}
.innerCustomer .listSubs .blockSub .inner .ctSubs {
  width: 660px;
}
.innerCustomer .listSubs .blockSub .inner .ctSubs p {
  margin-top: -7px;
}

@media (max-width: 768px) {
  .boxComputer {
    border-radius: 0;
    padding: 50px 20px 20px;
    margin: 26px -20px 0;
  }
  .boxComputer .innerComp {
    border-radius: 10px;
    position: relative;
    box-shadow: 0px 0px 25px 0px rgba(50, 50, 50, 0.1);
  }
  .boxComputer .innerComp:before {
    background: url("../img/customer/sp/ico_circle.png") no-repeat;
    background-size: 100%;
    width: 104px;
    height: 104px;
    margin-left: -52px;
    top: -51px;
  }
  .boxComputer .innerComp:after {
    background: url("../img/customer/sp/ico_computer.png") no-repeat;
    background-size: 100%;
    width: 30px;
    height: 29px;
    top: -20px;
  }
  .boxComputer .innerComp .frame {
    padding: 18px 20px 28px;
  }
  .boxComputer .innerComp .frame .ttl {
    font-size: 0.94rem;
    padding-bottom: 17px;
  }

  .innerCustomer {
    margin-top: 70px;
  }
  .innerCustomer .grCustomer {
    margin-top: 19px;
  }
  .innerCustomer .blockCus {
    padding-bottom: 40px;
    margin-bottom: 40px;
  }
  .innerCustomer .blockCus.service {
    border: none;
    padding-bottom: 0;
  }
  .innerCustomer .blockCus.service .childBlock {
    margin-bottom: 40px;
  }
  .innerCustomer .blockCus.service .childBlock .txt01 {
    margin-top: 10px;
  }
  .innerCustomer .blockCus .listInfo {
    margin-top: 13px;
  }
  .innerCustomer .blockCus .listInfo .blockInfo {
    width: 100%;
    margin-bottom: 15px;
    min-height: auto;
  }
  .innerCustomer .blockCus .listInfo .blockInfo:before {
    display: none;
  }
  .innerCustomer .blockCus .listInfo .blockInfo:last-child {
    margin-bottom: 0;
  }
  .innerCustomer .blockCus .listInfo .blockInfo a.linkOut {
    width: 90px;
  }
  .innerCustomer .blockCus .listInfo .blockInfo .iconIf {
    width: 90px;
  }
  .innerCustomer .blockCus .listInfo .blockInfo .ctIf {
    padding: 15px 10px 15px 13px;
    border-radius: 0 5px 5px 0;
  }
  .innerCustomer .blockCus .listInfo .blockInfo .ctIf .ttlIn {
    font-size: 0.94rem;
    padding-left: 20px;
    background: url("../img/common/sp/ico_arrow10.png") no-repeat 0 4px;
    background-size: 14px;
    display: inline-block;
  }
  .innerCustomer .blockCus .listInfo .blockInfo .ctIf p {
    font-size: 0.81rem;
    line-height: 1.53846;
    margin-top: 9;
  }
  .innerCustomer .blockCus .listNote {
    margin-top: 13px;
  }
  .innerCustomer .blockCus .listNote li {
    font-size: 0.69rem;
    padding-left: 20px;
    text-indent: -20px;
    margin-bottom: 10px;
    line-height: 1.54545;
  }
  .innerCustomer .listSubs .blockSub {
    padding: 25px 0;
  }
  .innerCustomer .listSubs .blockSub:first-child {
    padding-top: 20px;
  }
  .innerCustomer .listSubs .blockSub .inner .imgSubs {
    width: 100%;
  }
  .innerCustomer .listSubs .blockSub .inner .ctSubs {
    width: 100%;
    margin-top: 17px;
  }
  .innerCustomer .listSubs .blockSub .inner .ctSubs p {
    margin-top: 0;
  }
}
@media (max-width: 374px) {
  .boxComputer {
    margin-left: -12.5px;
    margin-right: -12.5px;
  }
}
/* PAGE POLICY */
.listPolicy {
  margin-top: 55px;
  margin-bottom: 70px;
}
.listPolicy .blockPolicy {
  margin-bottom: 54px;
}
.listPolicy .blockPolicy .inner {
  margin-top: 23px;
}
.listPolicy .blockPolicy .inner .textPolc {
  margin-bottom: 20px;
}
.listPolicy .blockFlash {
  margin-top: 36px;
  margin-bottom: 20px;
}
.listPolicy .blockFlash .inneFlash {
  display: flex;
  flex-wrap: wrap;
}
.listPolicy .blockFlash .inneFlash .ico {
  margin-top: 4px;
}
.listPolicy .blockFlash .inneFlash .ico a, .listPolicy .blockFlash .inneFlash .ico img {
  display: block;
}
.listPolicy .blockFlash .inneFlash .rightFlash {
  flex: 1;
  padding-left: 24px;
}

@media (max-width: 768px) {
  .listPolicy {
    margin-top: 45px;
    margin-bottom: 65px;
  }
  .listPolicy .blockPolicy {
    margin-bottom: 45px;
  }
  .listPolicy .blockPolicy .inner {
    margin-top: 17px;
  }
  .listPolicy .blockPolicy .inner .textPolc {
    margin-bottom: 17px;
  }
  .listPolicy .blockPolicy .wrapTable table {
    table-layout: auto;
  }
  .listPolicy .blockPolicy .wrapTable table th.w01 {
    width: 103px;
  }
  .listPolicy .blockFlash {
    margin-top: 15px;
    margin-bottom: 20px;
  }
  .listPolicy .blockFlash .inneFlash .ico {
    width: 100%;
    margin-top: 0;
  }
  .listPolicy .blockFlash .inneFlash .rightFlash {
    width: 100%;
    flex: 1;
    padding-left: 0;
    margin-top: 14px;
  }
  .listPolicy .listDot li {
    padding-left: 25px;
    background-position: 8px 7px;
  }
}
/* PAGE SECURITY */
.mainSecu {
  margin-top: 33px;
  margin-bottom: 65px;
}
.mainSecu .blockSecu {
  margin-top: 60px;
}
.mainSecu .blockSecu .inner {
  margin-top: 30px;
}

.noteSecu {
  margin-bottom: 30px;
}
.noteSecu .title {
  font-weight: 700;
  font-size: 1rem;
  padding-left: 35px;
  position: relative;
  margin-bottom: 16px;
}
.noteSecu .title:before {
  position: absolute;
  content: "";
  background: url("../img/common/ico_warning.png") no-repeat;
  width: 24px;
  height: 22px;
  left: 0;
  top: 0;
}
.noteSecu .ext {
  margin-top: 0;
}

@media (max-width: 768px) {
  .mainSecu {
    margin-top: 20px;
  }
  .mainSecu .blockSecu {
    margin-top: 45px;
  }
  .mainSecu .blockSecu .inner {
    margin-top: 20px;
  }

  .noteSecu {
    margin-bottom: 34px;
  }
  .noteSecu .title {
    padding-left: 32px;
    margin-bottom: 14px;
  }
  .noteSecu .title:before {
    background: url("../img/common/sp/ico_warning.png") no-repeat;
    background-size: 100%;
    width: 19px;
    height: 17px;
    top: 2px;
    left: 2px;
  }
}
/* PAGE MISCONCEPTION */
.innerConcep {
  margin-top: 45px;
}
.innerConcep .listDot {
  margin-top: 0;
}

.pageConcep .mainContain {
  padding-bottom: 70px;
}
.pageConcep .boxComputer .innerComp .frame {
  padding-bottom: 33px;
}
.pageConcep .boxComputer .innerComp:after {
  background: url("../img/common/ico_mobile.png") no-repeat;
  width: 23px;
  height: 32px;
  margin-left: -12px;
}
.pageConcep .boxComputer .innerComp .ttl {
  color: #12a73b;
  border-bottom: 1px solid #12a73b;
}
.pageConcep .boxComputer .innerComp .boxPhone {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-left: 195px;
  padding-top: 18px;
}
.pageConcep .boxComputer .innerComp .boxPhone .leftBox {
  width: 100%;
  margin-bottom: 4px;
}
.pageConcep .boxComputer .innerComp .boxPhone .leftBox .ttlPhone {
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 8px;
}
.pageConcep .boxComputer .innerComp .boxPhone .leftBox .phoneNumb {
  font-size: 2.18rem;
  font-weight: 700;
  padding-left: 60px;
  background: url("../img/common/ico_free.png") no-repeat left center;
  background-size: 47px;
}
.pageConcep .boxComputer .innerComp .boxPhone .leftBox .phoneNumb span {
  font-weight: 400;
}
.pageConcep .boxComputer .innerComp .boxPhone .rightBox {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 0.88rem;
}
.pageConcep .boxComputer .innerComp .boxPhone .rightBox .title {
  font-weight: 700;
}
.pageConcep .boxComputer .innerComp .boxPhone .rightBox .timeW {
  flex: 1;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.pageConcep .boxComputer .innerComp .boxPhone .rightBox .timeW .note {
  width: 100%;
  margin-top: 5px;
}

.redFrame {
  margin-top: 60px;
  padding: 32px 40px 20px;
  border: 1px solid #ff0000;
  border-radius: 10px;
}
.redFrame .redArea {
  color: #f00;
}
.redFrame .redArea .upText {
  font-weight: 700;
  font-size: 1.13rem;
  border-bottom: 1px solid #ff0000;
  padding-bottom: 15px;
  margin-bottom: 12px;
}
.redFrame .redArea .upText span {
  font-weight: 400;
  font-size: 0.94rem;
}
.redFrame .redArea .lower p strong {
  font-weight: 700;
}

@media (max-width: 768px) {
  .innerConcep {
    margin-top: 60px;
  }
  .innerConcep .listDot {
    margin-top: 15px;
  }

  .pageConcep .boxComputer .innerComp .frame {
    padding-bottom: 20px;
  }
  .pageConcep .boxComputer .innerComp:after {
    background: url("../img/common/sp/ico_mobile.png") no-repeat;
    background-size: 100%;
    margin-left: -12px;
  }
  .pageConcep .boxComputer .innerComp .boxPhone {
    padding-left: 15px;
    padding-top: 13px;
  }
  .pageConcep .boxComputer .innerComp .boxPhone .leftBox {
    width: 100%;
    margin-bottom: 4px;
  }
  .pageConcep .boxComputer .innerComp .boxPhone .leftBox .ttlPhone {
    font-size: 0.88rem;
    margin-bottom: 8px;
  }
  .pageConcep .boxComputer .innerComp .boxPhone .leftBox .phoneNumb {
    font-size: 1.75rem;
    padding-left: 45px;
    background: url("../img/common/sp/ico_free.png") no-repeat left center;
    background-size: 38px;
  }
  .pageConcep .boxComputer .innerComp .boxPhone .rightBox {
    padding-left: 28px;
  }
  .pageConcep .boxComputer .innerComp .boxPhone .rightBox .timeW {
    flex: 1;
  }
  .pageConcep .boxComputer .innerComp .boxPhone .rightBox .timeW p {
    width: 100%;
  }
  .pageConcep .boxComputer .innerComp .boxPhone .rightBox .timeW .note {
    font-size: 0.69rem;
    margin-top: 3px;
    margin-left: -5px;
  }

  .redFrame {
    margin-top: 30px;
    padding: 17px 20px 10px;
  }
  .redFrame .redArea .upText {
    font-size: 1rem;
    letter-spacing: -0.02em;
    padding-bottom: 15px;
    margin-bottom: 14px;
    text-align: center;
  }
  .redFrame .redArea .upText span {
    display: block;
    font-size: 0.81rem;
  }
  .redFrame .redArea .lower p {
    font-size: 0.88rem;
    line-height: 1.64286;
    margin-bottom: 10px;
  }
  .redFrame .redArea .lower p span {
    display: block;
  }
}
@media (max-width: 374px) {
  .pageConcep .boxComputer .innerComp .boxPhone {
    padding-left: 0;
  }
  .pageConcep .boxComputer .innerComp .boxPhone .rightBox {
    padding-left: 10px;
  }
}
/* PAGE DISASTER */
.innerDst {
  margin-top: 34px;
}
.innerDst .blockDst {
  margin-bottom: 60px;
}
.innerDst .blockDst .boxBg {
  border-radius: 10px;
  background: #fffbe3;
  padding: 33px 40px 20px;
  margin-top: 20px;
}
.innerDst .blockDst .boxBg p {
  margin-bottom: 20px;
}
.innerDst .blockDst .boxBg .signt {
  margin-bottom: 0;
  margin-top: 35px;
}
.innerDst .listInner {
  margin-top: 30px;
}
.innerDst .listInner .blockChild {
  margin-bottom: 33px;
}
.innerDst .listInner .blockChild p {
  margin-top: 15px;
}

.listScroll {
  text-align: center;
  margin-top: 55px;
}
.listScroll li {
  display: inline-block;
  margin: 0 8px;
}
.listScroll li a {
  padding-left: 26px;
  background: url("../img/common/ico_arrow11.png") no-repeat left 2px;
}

@media (max-width: 768px) {
  .innerDst {
    margin-top: 37px;
  }
  .innerDst .blockDst {
    margin-bottom: 40px;
  }
  .innerDst .blockDst .boxBg {
    padding: 20px 20px 25px;
  }
  .innerDst .blockDst .boxBg .signt {
    margin-top: 20px;
  }
  .innerDst .blockDst:last-child {
    margin-bottom: 0;
  }
  .innerDst .listInner {
    margin-top: 23px;
  }
  .innerDst .listInner .blockChild {
    margin-bottom: 25px;
  }
  .innerDst .listInner .blockChild:last-child {
    margin-bottom: 0;
  }

  .listScroll {
    text-align: left;
    margin-top: 42px;
  }
  .listScroll li {
    display: block;
    margin: 15px 0;
  }
  .listScroll li a {
    padding-left: 21px;
    background: url("../img/common/sp/ico_arrow11.png") no-repeat left 4px;
    background-size: 14px;
  }
}
/* PAGE PAYMENT */
.innerPayment {
  margin-top: 30px;
  margin-bottom: 70px;
}
.innerPayment .blockPayment {
  margin-bottom: 60px;
}
.innerPayment .blockPayment .inner {
  margin-top: 25px;
}
.innerPayment .blockPayment .btnDownload {
  margin-top: 45px;
}
.innerPayment .blockPayment .boxPay {
  padding: 30px 40px 40px;
  background: #f9f7ee;
  border-radius: 10px;
  margin-top: 20px;
}
.innerPayment .blockPayment .boxPay .imgPay {
  background: #fff;
}
.innerPayment .blockPayment .boxPay .imgPay img {
  display: block;
}
.innerPayment .blockPayment .boxPay .ctBox {
  margin-top: 30px;
}
.innerPayment .blockPayment .boxPay .ctBox .ttlCt {
  text-align: center;
  background: #dbe79d;
  font-weight: 500;
  font-size: 1.13rem;
  padding: 12px 5px;
}

.listPay .blockPay {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 26px 0 20px;
  border-bottom: 1px solid #ddd;
  position: relative;
}
.listPay .blockPay:before {
  position: absolute;
  content: "";
  background: url("../img/payment/bg_step01.jpg") no-repeat;
  background-size: auto 100%;
  width: 4px;
  height: 100%;
  top: 60px;
  left: 40px;
}
.listPay .blockPay .ctPay {
  flex: 1;
  padding: 0px 0 0 11px;
}
.listPay .blockPay .stt {
  width: 86px;
  height: 36px;
  line-height: 36px;
  border-radius: 18px;
  font-size: 1rem;
  text-align: center;
  font-style: italic;
  font-weight: 700;
  background: #abcd03;
  color: #fff;
  letter-spacing: 0.04em;
  position: relative;
  z-index: 1;
}
.listPay .blockPay .stt span {
  font-size: 1.25rem;
}
.listPay .blockPay .ctPay .ttlPay {
  font-size: 1.13rem;
  font-weight: 700;
  margin-bottom: 22px;
}
.listPay .blockPay.bl02:before {
  background: url("../img/payment/bg_step02.jpg") no-repeat;
  background-size: auto 100%;
}
.listPay .blockPay.bl02 .stt {
  background: #fabe00;
}
.listPay .blockPay.bl03:before {
  background: url("../img/payment/bg_step03.jpg") no-repeat;
  background-size: auto 100%;
}
.listPay .blockPay.bl03 .stt {
  background: #f3994f;
}
.listPay .blockPay.bl04 .stt {
  background: #ed7987;
}
.listPay .blockPay.bl04:before {
  display: none;
}

.paymentTtl {
    display: flex;
    align-items: center;
    width: 570px;
    margin: 50px auto 30px;
    font-size: 1.85rem;
    color: #454545;
}
.paymentTtl:before,
.paymentTtl:after {
    border-top: 1px solid;
    content: "";
    flex-grow: 1;
}
.paymentTtl:before {
    margin-right: 2rem;
}
.paymentTtl:after {
    margin-left: 2rem;
}

.boxCompTel {
  border-radius: 10px;
  background: #f9f7ee;
  padding: 30px 40px;
  margin-top: 20px;
}
.boxCompTel .innerComp {
  width: 435px;
  min-height: 234px;
  float: left;
  background: #fff;
  border-radius: 10px;
  position: relative;
  box-shadow: 0px 0px 25px 0px rgba(50, 50, 50, 0.1);
  margin-top: 60px;
}
.boxCompTel .innerComp:before {
  position: absolute;
  content: "";
  background: url("../img/customer/ico_circle.png") no-repeat;
  width: 132px;
  height: 132px;
  left: 50%;
  margin-left: -66px;
  top: -60px;
}
.boxCompTel .innerComp:after {
  position: absolute;
  content: "";
  background: url("../img/customer/ico_computer.png") no-repeat;
  width: 30px;
  height: 28px;
  left: 50%;
  margin-left: -15px;
  top: -22px;
}
.boxCompTel .innerComp .frame {
  padding: 20px 20px 30px;
  position: relative;
  background: #fff;
  border-radius: 10px;
}
.boxCompTel .innerComp .frame .ttl {
  text-align: center;
  color: #f3994f;
  font-weight: 700;
  font-size: 1rem;
  border-bottom: 1px solid #f3994f;
  padding-bottom: 11px;
    margin-bottom: 16px;
}
.innerComp p {
    font-size: 0.8125rem;
    line-height: 1.538em;
    margin-bottom: 6px;
    color: #333333;
}
.innerComp p.indent_1 {
    padding-left:1em;
    text-indent:-1em;
    font-size: 0.8125rem;
}
.innerComp .btnComp {
    margin-top: 20px;
    margin-bottom: 0;
}

.boxCompTel .innerTel {
  width: 435px;
  min-height: 234px;
  float: right;
  background: #fff;
  border-radius: 10px;
  position: relative;
  box-shadow: 0px 0px 25px 0px rgba(50, 50, 50, 0.1);
  margin-top: 60px;
}
.boxCompTel .innerTel:before {
  position: absolute;
  content: "";
  background: url("../img/customer/ico_circle.png") no-repeat;
  width: 132px;
  height: 132px;
  left: 50%;
  margin-left: -66px;
  top: -60px;
}
.boxCompTel .innerTel:after {
  position: absolute;
  content: "";
  background: url("../img/customer/ico_tel.png") no-repeat;
  width: 23px;
  height: 32px;
  left: 50%;
  margin-left: -15px;
  top: -26px;
}
.boxCompTel .innerTel .frame {
  padding: 20px 20px 20px;
  position: relative;
  background: #fff;
  border-radius: 10px;
}
.boxCompTel .innerTel .frame .ttl {
  text-align: center;
  color: #12a73b;
  font-weight: 700;
  font-size: 1rem;
  border-bottom: 1px solid #12a73b;
  padding-bottom: 11px;
  margin-bottom: 16px;
}

.boxCompTel .innerTelTtl {
    text-align: center;
    font-size: 0.875rem;
    font-weight: 700;
    margin-bottom: 10px;
}
.boxCompTel .innerTelTel {
    font-size: 0.875rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 12px;
}
.boxCompTel .innerTelTel img {
    margin-right: 8px;
}
.boxCompTel .innerTelTel span {
  font-family: "Lato", sans-serif;
  font-size: 2.25rem;
    line-height: 1em;
}

.boxCompTel .innerTelTime {
    font-size: 0.875rem;
    padding-left: 5em;
    text-indent: -5em;
}
.boxCompTel .innerTelTime span {
    font-weight: 700;
}

.boxCompTel .innerTelLink {
    display: inline-block;
    font-size: 0.8125rem;
    color: #333333;
    background: url("../img/payment/ico_arr.png") no-repeat;
    background-position: 0 3px;
    padding-left: 14px;
}
.boxCompTel .innerTelLink:hover {
    text-decoration: underline;
}
.icoPayCustmer {
    background: #ff0000 url("../img/payment/ico_customer.png") no-repeat;
    background-position: 9px 8px;
    padding: 7px 10px 7px 30px;
    font-size: 0.9375rem;
    font-weight: 500;
    border-radius: 4px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
    color: #fff;
}
.icoPayLogo {
    background: #f9f7ee;
    border: 2px solid #fabe00;
    border-radius: 4px;
    padding: 4px 8px 0px;
    vertical-align: middle;
    display: inline-block;
    margin-right: 10px;
}
.blockPayment .red {
      color: #e53700;
}

.payOpenBox,
.payOpenBox2 { display: none; }
.payOpenIco,
.payOpenIco2 {
    float:left;
    background: #ea6175;
    color: #fff;
    font-size: 0.875rem;
    font-weight: 700;
    padding: 2px 4px;
    border-radius: 4px;
    margin-right: 8px;
    text-decoration: none;

}
.payOpenIco:hover,
.payOpenIco2:hover {
    cursor: pointer;
}

.payOpenBtn,
.payOpenBtn2 {
    font-size: 0.9375rem;
    font-weight: 700;
    text-indent: 2em;
    padding-left: -2em;
}
.payOpenBtn:hover,
.payOpenBtn2:hover {
    text-decoration: underline;
    cursor: pointer;
}
.bl01_p {
    margin-bottom: 20px;
}

.payOpenBox,
.payOpenBox2 {
    margin-top: 16px;
}
.payBoxIn {
    background: #f6f6f6;
    padding: 20px 20px 30px 30px;
    width: 422px;
    display: inline-block;
    vertical-align: top;
    margin-left: 22px;
}
.payBoxIn1 { min-height: 310px; }
.payBoxIn2 { min-height: 260px; }
.payBoxIn h3 {
    position: relative;
    padding: .5em 1em .5em .7em;
    font-size: 1.125rem;
}
.payBoxIn h3::after {
  position: absolute;
  top: .5em;
  left: 0;
  content: '';
  width: 5px;
  height: -webkit-calc(100% - 1em);
  height: calc(100% - 1em);
}
.payBoxIn h3.payBoxTtlG::after {
  background-color: #abcd03;
  border-radius: 4px;
}
.payBoxIn h3.payBoxTtlP::after {
  background-color: #f3994f;
  border-radius: 4px;
}
.payBoxIn ul {
    margin-top:10px;
    padding-left: 30px;
    font-size: 0.9375rem;
    font-weight: 500;
}
.payBoxIn ul li {
  position: relative;
  margin-bottom: 10px;
}
.payBoxIn ul li::after {
  display: block;
  content: '';
  position: absolute;
  top: .5em;
  left: -1em;
  width: 6px;
  height: 6px;
  background-color: #abcd03;
  border-radius: 100%;
}
.payBoxUlG li::after {
  background-color: #abcd03!important;
}
.payBoxUlP li::after {
  background-color: #f3994f!important;
}

.payBoxIn ul {
    font-size: 0.875rem;
    font-weight: 400;
}
.payBoxInS {
    font-size: 0.8125rem;
    line-height: 1.6em;
    text-indent: -1em;
    padding-left: 1em;
}
.payCc {
    margin-bottom: 50px;
}
.payCc2 {
    margin-bottom: 30px;
}

@media (max-width: 768px) {
  .innerPayment {
    margin-top: 35px;
  }
  .innerPayment .listDot {
    margin-bottom: 0;
  }
  .innerPayment .blockPayment {
    margin-bottom: 70px;
  }
  .innerPayment .blockPayment .inner {
    margin-top: 21px;
  }
  .innerPayment .blockPayment .btnDownload {
    margin-top: 35px;
  }
  .innerPayment .blockPayment .boxPay {
    padding: 20px;
    margin-top: 20px;
  }
  .innerPayment .blockPayment .boxPay .ctBox {
    margin-top: 20px;
  }
  .innerPayment .blockPayment .boxPay .ctBox .ttlCt {
    font-size: 0.69rem;
    padding: 17px 5px;
  }

  .listPay .blockPay {
    padding: 10px 0 17px;
  }
  .listPay .blockPay:before {
    position: absolute;
    content: "";
    background: url("../img/payment/bg_step01.jpg") no-repeat;
    background-size: auto 100%;
    width: 5px;
    height: 100%;
    top: 55px;
    left: 23px;
  }
  .listPay .blockPay .ctPay {
    padding: 11px 0 0 10px;
  }
  .listPay .blockPay .stt {
    width: 50px;
    height: 50px;
    line-height: inherit;
    border-radius: 50px;
    font-size: 0.81rem;
    padding-top: 5px;
  }
  .listPay .blockPay .stt span {
    font-size: 1rem;
    display: block;
    line-height: 1;
    margin-top: 2px;
  }
  .listPay .blockPay .ctPay .ttlPay {
    font-size: 1rem;
    margin-bottom: 14px;
  }


    .boxCompTel {
        padding: 20px;
    }
    .boxCompTel .innerComp,
    .boxCompTel .innerTel {
        float: none;
        width: 100%;
    }

    .boxCompTel .innerComp .indent_1 {
        font-size:  0.6875rem;
    }
    .boxCompTel .innerTel .innerTelTel img {
        width: 32px;
        height: auto;
    }
    .boxCompTel .innerTel .innerTelTel span {
        font-size: 1.75rem;
    }
    .boxCompTel .innerTel .innerTelTime {
        margin-bottom: 14px;
    }

    .paymentTtl {
        width: 100%;
        margin: 50px auto 30px;
        font-size: 1.375rem;
        text-align: center;
    }
    .paymentTtl:before,
    .paymentTtl:after {
        border-top: 1px solid;
        content: "";
        flex-grow: 1;
    }
    .paymentTtl:before {
        margin-right: 2rem;
    }
    .paymentTtl:after {
        margin-left: 2rem;
    }
    p.indent_1 {
        font-size: 0.6875rem;
        line-height: 1.5em;
    }

    .payBoxIn ul { padding-left: 14px; }

    .payBoxIn {
        width: 100%;
        margin: 0 0 10px;
        padding: 10px 14px;
        }
    .payBoxIn1,
    .payBoxIn2 { min-height: inherit; }    


.icoPayCustmer {
    background-size: auto 14px;
    padding: 7px 10px 7px 30px;
    font-size: 0.750rem;
}
    .icoPayLogo img { width: 90px; height: auto; }

}


.listCount dt{
  float: left;
  margin-bottom: 14px;
}

.listCount dd{
  margin-left: 30px;
  margin-bottom: 14px;
}




/* PAYMENT TABS */



.payTabs {
  margin: 0px auto;
  padding: 0px;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
  border-bottom: 3px solid #666666;
  width: 660px;

}
.payTabs:before {
  position: absolute;
  content: "";
  height: 3px;
  width: 100vw;
  background: #666;
  bottom: -3px;
  right: 100%;
}
.payTabs:after {
  position: absolute;
  content: "";
  height: 3px;
  width: 100vw;
  background: #666;
  bottom: -3px;
  left: 100%;
}
.payTabs li {
  position: relative;
  background: #f9f7ee;
  padding: 14px 15px;
  cursor: pointer;
  width: 326px;
  text-align: center;
  border-radius: 6px 6px 0 0;
  border: 1px solid #ccc;
  border-bottom: none;
  font-weight: 500;
}
.payTabs li.current {
  background: #fff;
  border: 1px solid #666;
  border-bottom: none;
  margin-bottom: -3px;
}
.payTabs li a {
    position: absolute;
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
}

.payTabsBtm {
  margin: 0px auto 70px;
  padding: 0px;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
  border-top: 3px solid #666666;
  width: 660px;

}
.payTabsBtm:before {
  position: absolute;
  content: "";
  height: 3px;
  width: 100vw;
  background: #666;
  top: -3px;
  right: 100%;
}
.payTabsBtm:after {
  position: absolute;
  content: "";
  height: 3px;
  width: 100vw;
  background: #666;
  top: -3px;
  left: 100%;
}
.payTabsBtm li {
  position: relative;
  background: #f9f7ee;
  padding: 14px 15px;
  cursor: pointer;
  width: 326px;
  text-align: center;
  border-radius: 0 0 6px 6px;
  border: 1px solid #ccc;
  border-top: none;
  font-weight: 500;
}
.payTabsBtm li.current {
  background: #fff;
  border: 1px solid #666;
  border-top: none;
  margin-top: -3px;
}
.payTabsBtm li a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


@media (max-width: 768px) {
  .payTabs,
  .payTabsBtm
    {
    border-bottom: none;
    border-top: none;
    background: #ebe7d7;
    padding: 16px 20px 9px;
    margin: 0 -20px;
    width: auto;
  }
  .payTabs:before {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 7.5px 0 7.5px;
    border-color: #ebe7d7 transparent transparent transparent;
    bottom: auto;
    top: 100%;
    right: 50%;
    margin-right: -7.5px;
    background: none;
  }
  .payTabsBtm:before {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 7.5px 12px 7.5px;
    border-color: transparent transparent #ebe7d7 transparent;
    bottom: 100%;
    top: auto;
    right: 50%;
    margin-right: -7.5px;
    background: none;
  }
  .payTabs:after,
  .payTabsBtm:after {
    display: none;
  }
  .payTabs li,
  .payTabsBtm li {
    background: #f9f7ee;
    padding: 10px 5px;
    width: 49%;
    border-radius: 3px;
    border: none;
    font-size: 0.81rem;
    margin-bottom: 5px;
  }
  .payTabs li.current,
  .payTabsBtm li.current {
    background: #fff;
    border: 1px solid #333;
    margin-bottom: 5px;
  }
}
@media (max-width: 374px) {
  .payTabs {
    margin: 0 -12.5px;
    padding: 16px 12.5px 9px;
  }
}




/* REQUEST */

.requestBox .boxCompTel {
    margin-bottom: 70px;
    position: relative;
}
.requestBox .requestGuide {
    position: absolute;
    right: 127px;
    top: 30px;
}

.requestBox .redFrame .title {
    color: red;
    font-size: 1.125rem;
}
.requestBox .redFrame {
    margin-top:30px;
    margin-bottom: 70px;
}
.requestBox .btnDownload {
    margin-top: 50px;
}
.requestBox .btnDownload a{
    font-size: 0.9375rem;
}
.reqestPtag {
    margin: 30px 0;
}
.requestList {
    margin-bottom: 70px;
}

.requestList li a {
    padding-bottom: 3px;
    display: inline-block;
}
.requestList li {
    margin-bottom: 10px;
}
.requestTxt {
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 20px;
    line-height: 1.56;
}
.requestUl {
    margin-top:10px;
    padding-left: 20px;
    font-size: 0.9375rem;
    font-weight: 400;
    line-height: 1.866em;
    width: 450px;
}
.requestUl li {
  position: relative;
  margin-bottom: 10px;
}
.requestUl li::after {
  display: block;
  content: '';
  position: absolute;
  top: .7em;
  left: -1em;
  width: 6px;
  height: 6px;
  background-color: #cfa7cd;
  border-radius: 100%;
}
.requestBox .boxCompTel .linkPdf {
    display: inline-block;
    margin-top: 20px;
    margin-bottom: 74px;
}


@media (max-width: 768px) {
    .requestBox .redFrame .title {
        font-size: 1rem;
        font-weight: 400;
    }
    .requestBox .btnDownload {
        margin-top: 30px;
    }
    .requestBox .btnDownload a{
        font-size: 0.8125rem;
    }
    .requestBox .requestGuide {
        position: relative;
        right: auto;
        top: auto;
        margin: 20px auto;
        display: block;
    }
    .requestUl {
        width: 100%;
    }
    .requestBox .boxCompTel .linkPdf {
        margin-top: 10px;
        margin-bottom: 10px;
    }
}




/* PAGE SITEMAP */
.innerSitemap {
  margin-top: 30px;
  margin-bottom: 20px;
}

.rowSite {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.rowSite .colSite {
  width: 465px;
}
.rowSite .colSite .blockSite {
  margin-bottom: 50px;
}
.rowSite .colSite .blockSite .listSite {
  margin-top: 15px;
  padding-left: 30px;
}
.rowSite .colSite .blockSite .listSite li {
  margin-bottom: 10px;
}
.rowSite .colSite .blockSite .listSite li a {
  display: inline-block;
  padding-left: 20px;
  line-height: 1.46667;
  background: url("../img/common/ico_arrow04.png") no-repeat left 6px;
}

@media (max-width: 768px) {
  .innerSitemap {
    margin-top: 33px;
    margin-bottom: 35px;
  }

  .rowSite .colSite {
    width: 100%;
  }
  .rowSite .colSite .blockSite {
    margin-bottom: 25px;
  }
  .rowSite .colSite .blockSite .listSite {
    margin-top: 20px;
    padding-left: 23px;
  }
  .rowSite .colSite .blockSite .listSite li a {
    padding-left: 17px;
    line-height: 1.57143;
    background: url("../img/common/sp/ico_arrow04.png") no-repeat left 8px;
    background-size: 5px;
  }
}
/* PAGE ERROR */
.ttlError {
  font-size: 1.5rem;
  margin: 30px 0;
  font-weight: 700;
}

.pageError .ttlStrong {
  font-size: 1.5rem;
  margin: 30px 0;
}
.pageError .btnCm01 {
  margin-bottom: 60px;
}

@media (max-width: 768px) {
  .ttlError {
    font-size: 1.3rem;
  }

  .pageError .ttlStrong {
    font-size: 1.3rem;
  }
  .pageError .btnCm01 {
    margin-bottom: 70px;
  }
}
/* PAGE MAINTENANCE */
.boxError {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 60px 0;
}
.boxError p.text {
  flex: 1;
  padding-left: 30px;
}
.boxError .ico img {
  display: block;
}

@media (max-width: 768px) {
  .boxError p.text {
    padding-left: 20px;
  }
  .boxError .ico img {
    height: 60px;
  }
}
/* PAGE RECRUIT */
.bannerRecruit {
  margin-top: 25px;
}
.bannerRecruit img {
  display: block;
  border-radius: 15px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  height: 380px;
  max-width: inherit;
}

.introRecruit {
  margin-top: 70px;
}
.introRecruit p {
  padding: 0px 93px;
  color: #111;
  margin-top: 30px;
}

.designNBB {
  margin-top: 105px;
}
.designNBB .text {
  margin-top: 45px;
}
.designNBB .linkNBB {
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 35px;
}
.designNBB .linkNBB .blockLink {
  width: 480px;
}
.designNBB .linkNBB .blockLink a {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  display: block;
}
.designNBB .linkNBB .blockLink a img {
  display: block;
}
.designNBB .linkNBB .blockLink .overlayLink {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.45);
  background-image: url("../img/common/ico_arrow14.png");
  background-repeat: no-repeat;
  background-position: right 20px bottom 18px;
}
.designNBB .linkNBB .blockLink .overlayLink span {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-weight: bold;
  font-size: 1.75rem;
  color: #fff;
  letter-spacing: 0.1em;
}

.applyRecruit {
  margin-top: 106px;
}
.applyRecruit .listApply {
  box-shadow: 0 0 70px 0 rgba(50, 50, 50, 0.2);
  border-radius: 10px;
  margin-top: 48px;
  margin-bottom: 80px;
}
.applyRecruit .listApply ul {
  width: 100%;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-flow: row wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  flex-wrap: wrap;
}
.applyRecruit .listApply ul li {
  width: 50%;
  border-right: 1px solid #e5e5e5;
  border-top: 1px solid #e5e5e5;
}
.applyRecruit .listApply ul li:nth-child(even) {
  border-right: 0;
}
.applyRecruit .listApply ul li:first-child, .applyRecruit .listApply ul li:nth-child(2) {
  border-top: 0;
}
.applyRecruit .listApply ul li a {
  display: block;
  font-weight: 700;
  padding: 14px 22px;
  padding-right: 30px;
  font-size: 1rem;
  background: url("../img/common/ico_arrow15.png") no-repeat right 20px center;
}
.applyRecruit .listApply ul li a span {
  font-weight: 400;
  display: inline;
  margin-left: 18px;
  font-size: 0.88rem;
}

.tableRecruit {
  margin-bottom: 60px;
}
.tableRecruit:last-child {
  margin-bottom: 70px;
}
.tableRecruit .inner {
  margin-top: 30px;
}
.tableRecruit .inner table {
  margin-top: 20px;
}
.tableRecruit .inner table td span {
  font-size: 0.81rem;
  display: block;
}

@media (max-width: 768px) {
  .bannerRecruit {
    margin: 30px -20px 0;
  }
  .bannerRecruit img {
    border-radius: 0;
    height: 160px;
  }

  .introRecruit {
    margin-top: 44px;
  }
  .introRecruit p {
    padding: 0;
    margin-top: 18px;
  }

  .designNBB {
    margin-top: 40px;
  }
  .designNBB .text {
    margin-top: 28px;
  }
  .designNBB .linkNBB {
    margin-top: 28px;
  }
  .designNBB .linkNBB .blockLink {
    width: 100%;
    margin-bottom: 11px;
  }
  .designNBB .linkNBB .blockLink a {
    border-radius: 5px;
  }
  .designNBB .linkNBB .blockLink .overlayLink {
    background-image: url("../img/common/sp/ico_arrow14.png");
    background-size: 20px;
    background-position: right 10px bottom 10px;
  }
  .designNBB .linkNBB .blockLink .overlayLink span {
    font-size: 1.38rem;
  }

  .applyRecruit {
    margin-top: 75px;
  }
  .applyRecruit .listApply {
    border-radius: 5px;
    margin-top: 40px;
    margin-bottom: 70px;
    box-shadow: 0 0 25px 0 rgba(50, 50, 50, 0.2);
  }
  .applyRecruit .listApply ul li {
    width: 100%;
    border-right: 0;
  }
  .applyRecruit .listApply ul li:nth-child(2) {
    border-top: 1px solid #e5e5e5;
  }
  .applyRecruit .listApply ul li a {
    padding: 15px 20px;
    padding-right: 30px;
    font-size: 0.88rem;
    background: url("../img/common/sp/ico_arrow15.png") no-repeat right 18px center;
    background-size: 12px;
  }
  .applyRecruit .listApply ul li a em {
    margin-right: 13px;
  }
  .applyRecruit .listApply ul li a span {
    display: inline-block;
    margin-left: 0;
    font-size: 0.75rem;
  }

  .tableRecruit {
    margin-bottom: 70px;
  }
  .tableRecruit .inner {
    margin-top: 20px;
  }
  .tableRecruit .inner table td span {
    font-size: 0.69rem;
  }
}
@media (max-width: 374px) {
  .bannerRecruit {
    margin: 30px -12.5px 0;
  }
}
/* PAGE INTRODUCTION RECRUIT */
.txtStrong {
  display: block;
  font-weight: 500;
  font-size: 1.25rem;
  margin-top: 25px;
}

.scrollIntro {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 30px;
  margin-bottom: 80px;
}
.scrollIntro li {
  width: 210px;
}
.scrollIntro li a {
  display: block;
  text-align: center;
  padding-bottom: 20px;
  background: url("../img/common/arw_recruit.png") no-repeat bottom center;
}
.scrollIntro li .img {
  border-radius: 50%;
  overflow: hidden;
}
.scrollIntro li .img img {
  display: block;
}
.scrollIntro li .name {
  font-size: 1.13rem;
  font-weight: 500;
  margin-top: 15px;
}
.scrollIntro li .name span {
  display: block;
  font-size: 0.88rem;
  font-weight: 400;
  margin-bottom: 3px;
}

.listIntroRec {
  padding-bottom: 30px;
}
.listIntroRec .blockIntro {
  margin-top: 40px;
}
.listIntroRec .blockIntro .bannerIntro {
  position: relative;
  border-radius: 15px;
  overflow: hidden;
  margin-bottom: 40px;
}
.listIntroRec .blockIntro .bannerIntro img {
  display: block;
}
.listIntroRec .blockIntro .infoIntro {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  text-align: right;
  width: 100%;
  padding-right: 50px;
  color: #fff;
}
.listIntroRec .blockIntro .infoIntro .time {
  font-size: 1rem;
  margin-bottom: 3px;
}
.listIntroRec .blockIntro .infoIntro .name {
  font-size: 1.5rem;
  font-weight: 500;
}
.listIntroRec .qaBlock {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.listIntroRec .qaBlock .leftQa {
  width: 700px;
}
.listIntroRec .qaBlock .leftQa .childBlock {
  margin-bottom: 40px;
}
.listIntroRec .qaBlock .leftQa .childBlock .ttlqA {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-bottom: 25px;
  border-bottom: 1px solid #ccc;
}
.listIntroRec .qaBlock .leftQa .childBlock .ttlqA em {
  flex: 1;
  padding-left: 8px;
  font-size: 1.13rem;
  font-weight: 500;
  padding-top: 3px;
}
.listIntroRec .qaBlock .leftQa .childBlock .ttlqA span {
  width: 70px;
  font-weight: 700;
  text-align: center;
  height: 30px;
  line-height: 30px;
  color: #fff;
  font-size: 1.13rem;
  background: #7fcef4;
  border-radius: 15px;
}
.listIntroRec .qaBlock .leftQa .childBlock .ttlqA span.red {
  background: #f0919a;
}
.listIntroRec .qaBlock .leftQa .childBlock .ttlqA span.green {
  background: #70c494;
}
.listIntroRec .qaBlock .leftQa .childBlock .ttlqA span.purple {
  background: #cfa7cd;
}
.listIntroRec .qaBlock .rightQa {
  width: 210px;
  border-radius: 10px;
  overflow: hidden;
}
.listIntroRec .qaBlock .rightQa img {
  display: block;
}

@media (max-width: 768px) {
  .txtStrong {
    font-size: 1.13rem;
  }

  .scrollIntro {
    margin-top: 14px;
    margin-bottom: 0;
  }
  .scrollIntro li {
    width: 50%;
    margin-bottom: 25px;
  }
  .scrollIntro li a {
    padding-bottom: 15px;
    background: url("../img/common/sp/arw_recruit.png") no-repeat bottom center;
    background-size: 16px;
  }
  .scrollIntro li .img {
    border-radius: 60px;
  }
  .scrollIntro li .img img {
    margin: 0 auto;
    width: 120px;
  }
  .scrollIntro li .name {
    font-size: 0.88rem;
    margin-top: 5px;
  }
  .scrollIntro li .name span {
    font-size: 0.75rem;
  }

  .listIntroRec {
    padding-bottom: 40px;
  }
  .listIntroRec .blockIntro .bannerIntro {
    border-radius: 0;
    margin: 0 -20px 20px;
  }
  .listIntroRec .blockIntro .infoIntro {
    position: absolute;
    top: auto;
    bottom: 0;
    transform: none;
    text-align: center;
    width: 100%;
    padding: 9px 0;
    background: rgba(0, 0, 0, 0.5);
  }
  .listIntroRec .blockIntro .infoIntro .time {
    font-size: 0.88rem;
    margin-bottom: 6px;
  }
  .listIntroRec .blockIntro .infoIntro .name {
    font-size: 1.19rem;
  }
  .listIntroRec .qaBlock .leftQa {
    width: 100%;
  }
  .listIntroRec .qaBlock .leftQa .childBlock {
    margin-bottom: 25px;
  }
  .listIntroRec .qaBlock .leftQa .childBlock .ttlqA {
    padding-bottom: 10px;
  }
  .listIntroRec .qaBlock .leftQa .childBlock .ttlqA span {
    width: 50px;
    font-size: 0.88rem;
    height: 25px;
    line-height: 25px;
    border-radius: 12.5px;
  }
  .listIntroRec .qaBlock .leftQa .childBlock .ttlqA em {
    padding-top: 0;
  }
  .listIntroRec .qaBlock .leftQa .childBlock p.ct {
    margin-top: 10px;
  }
  .listIntroRec .qaBlock .leftQa .imgSm {
    width: 157px;
    border-radius: 10px;
    overflow: hidden;
    margin: 0 auto 25px;
  }
  .listIntroRec .qaBlock .leftQa .imgSm img {
    display: block;
  }
  .listIntroRec .qaBlock .rightQa {
    width: 157px;
    margin: 0 auto 25px;
  }
}
@media (max-width: 374px) {
  .listIntroRec .blockIntro .bannerIntro {
    margin: 0 -12.5px 20px;
  }
}
/* WORKPLACE RECRUIT */
.listWork {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 34px;
  padding-bottom: 35px;
}
.listWork .blockWork {
  width: 465px;
  margin-bottom: 35px;
}
.listWork .blockWork .imgWork {
  border-radius: 15px;
  overflow: hidden;
}
.listWork .blockWork .imgWork img {
  display: block;
}
.listWork .blockWork .ttlWork {
  font-weight: 500;
  font-size: 1.13rem;
  margin-top: 15px;
}
.listWork .blockWork p {
  margin-top: 8px;
}

@media (max-width: 768px) {
  .listWork {
    margin-top: 35px;
  }
  .listWork .blockWork {
    width: 100%;
    margin-bottom: 20px;
  }
  .listWork .blockWork .imgWork {
    border-radius: 10px;
  }
  .listWork .blockWork .ttlWork {
    font-size: 1.06rem;
    margin-top: 10px;
  }
}

/*# sourceMappingURL=style.css.map */

/* add 2018/11/30~ */

.formContact.confirm .confirmBtn input, .formContact.confirm .confirmBtn button {
    margin: 0 8px;
    width: 300px;
}

.formContact .confirmBtn input, .formContact .confirmBtn button  {
    display: inline-block;
    width: 360px;
    height: 50px;
    line-height: 46px;
    border: 2px solid #333;
    border-radius: 25px;
    background: url("../img/common/ico_arrow01.png") no-repeat right 17px center;
    font-size: 1rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    box-shadow: none;
    cursor: pointer;
}

.pageContact .underline {
    text-decoration: underline;
}

.pageContact .underline:hover {
    text-decoration: none;
}

input[type='tel'], input[type='email'] {
    width: 100%;
    border-radius: 3px;
    border: 1px solid #60a7ff;
    height: 40px;
    font-size: 1rem;
    padding: 0 5px;
    box-shadow: inset 1px 1px 3px 0 rgba(50, 50, 50, 0.2);
    -webkit-appearance: none;
    -moz-appearance: none;
}

@media (max-width: 767px) {
    .formContact .tableForm td .rowInput .blockInput {
        padding-left: 0;
    }
}

.ext-news_detail {
    margin-top: 58px;
    color: #333;
    text-decoration: none !important;
}

.ext-news_detail:hover span {
    border-bottom: 1px solid;
}

.ext-news_detail:before {
    content: none;
}

.ext-news_detail .ico {
    margin-left: 7px;
}


/* add original style */
.faq-rtarea {
  font-size: medium;
  width: 100%;
}
.faq-rtarea a{
  vertical-align: baseline;
  text-decoration: underline;
  color: #333435;
}
.faq-rtarea b{
  font-weight: bold;
}
.faq-rtarea i{
  font-style: italic;
}
.faq-rtarea table{
  display: table;
  border-collapse: collapse;
  border-style: solid;
  border-spacing: 0;
  margin-bottom: 1em;
  border-top-width: 3px;
  border-right-width: 3px;
  border-bottom-width: 3px;
  border-left-width: 3px;
  word-break: break-all;
}
.faq-rtarea thead{
  display: table-header-group;
  vertical-align: middle;
  border-color: inherit;
  border-style: ridge
}
.faq-rtarea tbody{
  display: table-row-group;
  vertical-align: middle;
  border-color: inherit;
  border-style: ridge
}
.faq-rtarea tr{
  display: table-row;
  vertical-align: inherit;
  border-color: inherit;
  border: solid 1px black
}
.faq-rtarea th{
  font-weight: bold;
  text-align: center;
  font-style: normal;
  vertical-align: inherit;
  border: solid 1px black
}
.faq-rtarea td{
  text-align: center;
  border-color: #000;
  padding: 5px;
  margin: 0;
  border: solid 1px black
}
.faq-rtarea ul{
  list-style-type: disc;
  margin: 1em;
  margin-left: 40px;
}
.faq-rtarea ol{
  list-style-type: decimal;
  margin: 1em;
  margin-left: 40px;
}
.faq-rtarea h1{
  font-size: 138.5%;
  display: block;
  font-weight: bold;
  margin: 1em 0;
  padding: 0;
}
.faq-rtarea h2{
  font-size: 123.1%;
  display: block;
  font-weight: bold;
  margin: 1em 0;
  padding: 0;
}
.faq-rtarea h3{
  font-size: 108%;
  display: block;
  font-weight: bold;
  margin: 1em 0;
  padding: 0;
}
.faq-rtarea h4{
  font-size: 100%;
  display: block;
  font-weight: bold;
  margin: 1em 0;
  padding: 0;
}
.faq-rtarea h5{
  font-size: 92%;
  display: block;
  font-weight: bold;
  margin: 1em 0;
  padding: 0;
}
.faq-rtarea h6{
  font-size: 84%;
  display: block;
  font-weight: bold;
  margin: 1em 0;
  padding: 0;
}
.faq-rtarea pre{
  white-space: pre-wrap;
  word-wrap: break-word;
  display: block;
  font-family: monospace;
}
.faq-rtarea address{
  display: block;
  font-style: italic;
  font-weight: normal;
}
.boxError_01 {
    margin: 10px 0;
    padding: 15px 20px;
    border: 2px solid #ed3b3b;
    border-radius: 4px;
}

@media (max-width: 768px) {
  .faq-rtarea table{
    width: 100%!important;
  }
  .faq-rtarea iframe, img{
    max-width: 100%;
  }
}