@charset "utf-8";


.message__image {margin-bottom: 20px;}
.message__image img {
  display: block;
  border-radius: 8px;
  width: 100%;
  margin: 0 auto;
}
.text--indent {
  text-indent: -12px;
  padding-left: 12px;
}
@media screen and (min-width: 768px) {
  .message__image {margin-bottom: 30px; }
  .message__image img { width: 520px;}
}

/* ------------------------------------------------------
FLEX
------------------------------------------------------ */
.logo__list,
.about__nav {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.about__nav li a {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: center!important;
  align-items: center!important;
  -ms-flex-pack: center!important;
  justify-content: center!important;
}

/* ------------------------------------------------------
MAIN
------------------------------------------------------ */
.container--page {padding: 0 15px;}
.logo__list {
  margin: 0 -3px -4px;
}
.logo__list li {
  padding: 0 3px 3px;
  width: 20%;
}
.logo__list li img {
  display: block;
  width: 100%;
  border: 1px solid #e0e2e4;
  border-radius: 3px;
}
@media screen and (max-width: 767px) {
  .logo__list li {width: 33.333%;}
}
.about__nav {
  border-radius: 10px;
  -moz-box-shadow: 4px 4px 7px rgba(0, 0, 0, 0.03);
  -webkit-box-shadow: 4px 4px 7px rgba(0, 0, 0, 0.03);
  box-shadow: 4px 4px 7px rgba(0, 0, 0, 0.03);
  background-color: #fff;
  position: relative;
  z-index: 1;
  margin: -35px 10px 50px;
}
.about__nav li {
  width: 50%;
  line-height: 1.3;
}
.about__nav li a {
  height: 70px;
  border-right: 1px solid #e0e2e4;
  padding: 0 5px;
  font-size: 12px;
  letter-spacing: 0;
}
.about__nav li:last-child a {border:none;}
.about__nav li a span {
  display: inline-block;
  position: relative;
  padding: 0 0 0 28px;
}
.about__nav li a span:before {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  background: url(../img/common/arrow04.png) no-repeat 0 0 / 100% 100%;
  left: 0;
  top: 50%;
  margin-top: -9px;
}
.about__nav li.active a {color: #0078c8;}
.about__text p {
  font-weight: 500;
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 28px;
}
.about__text .about__author {
  line-height: 1;
  font-size: 16px;
  margin-top: 40px;
  text-align: center;
}
.about__text .about__author strong {
  display: block;
  font-size: 24px;
  font-weight: 500;
  margin-top: 8px;
}
.table--style {
  width: 100%;
}
.table--style th {
  color: #787d82;
  font-weight: 500;
  line-height: 1;
  font-size: 16px;
  text-align: left;
}
.table--style td {
  font-size: 14px;
  line-height: 1.85;
}
.privacy--content .note,
.table--style td .note {
  font-size: 12px;
}
.privacy--content .note {
  text-indent: -12px;
  padding-left: 12px;
  line-height: 1.6;
  margin-top: 5px;
}
.table--style em {font-style: normal;}
.table--style td a {
  color: #0078c8;
  text-decoration: underline;
}
.privacy--content dl dt {
  font-weight: 500;
  font-size: 16px;
  margin-bottom: 3px;
}
.privacy--content dl dd {
  color: #505050;
  font-size: 14px;
}
.privacy--content a {
  color: #0078c8;
  text-decoration: underline;
}
.privacy--content ol li h3 {
  font-weight: 500;
  font-size: 15px;
  margin-bottom: 7px;
  text-indent: -24px;
  padding-left: 24px;
}
.privacy--content ol li h3 span {
  margin-right: 10px;
  font-size: 16px;
  color: #0078c8;
}
.privacy--content > dl, .privacy--content > .privacy__author,
.privacy__notes, .privacy--content > ol {padding-left: 27px;}
.privacy__contact {margin: 0 27px;}
.privacy--content > p {
  padding-left: 27px;
}
.privacy--content > ol li p {
  color: #505050;
}
.privacy--content > ol li {margin-bottom: 15px;}
.privacy--content > ol li:last-child {margin-bottom: 0px;}
.privacy__author {margin-top: 20px;}
.privacy__author p {
  font-size: 15px;
  margin-bottom: 20px;
}
.privacy__author p:last-child {margin-bottom: 0;}
.privacy__author p strong {display: block;}
.privacy--content .table__scroll {margin: 0 0 0 27px;margin-bottom: 30px;padding-bottom: 10px;}
.privacy--content .table__scroll table {
  width: 100%;
}
.privacy--content .table__scroll table thead th {
  color: #fff;
  line-height: 1;
  font-size: 16px;
  font-weight: 500;
  border-right: 1px solid #e0e2e4;
}
.privacy--content .table__scroll table thead th.w174 {width: 174px;}
.privacy--content .table__scroll table thead th.w222 {width: 222px;}
.privacy--content .table__scroll table thead th.w375 {width: 375px;}
.privacy--content .table__scroll table thead th span {
  display: block;
  background-color: #737d8c;
  padding: 15px 5px;
  border-left: 1px solid #fff;
  border-right: 1px solid #fff;
}
.privacy--content .table__scroll table thead th:first-child span {border-left: none;}
.privacy--content .table__scroll table thead th:last-child,.privacy--content table thead th:last-child span {border-right: none;}
.privacy--content .table__scroll table tbody td {
  border-right: 1px solid #e0e2e4;
  border-bottom: 1px solid #e0e2e4;
  padding: 16px 10px 17px 18px;
}
.privacy--content .table__scroll table tbody td:last-child {border-right: none;}
.privacy--content .table__scroll table tbody td:first-child {padding-left: 0;}
.privacy__contact {
  border: 1px solid #e8ecf0;
  background-color: #f6f8fa;
  text-align: center;
  line-height: 1.4;
  padding: 30px 10px;
  margin: 35px 0 35px 27px;
}
.privacy__contact p {
  font-size: 14px;
  margin-bottom: 10px;
}
.privacy__contact h4 {
  font-weight: 500;
  font-size: 16px;
  margin-bottom: 10px;
}
.privacy__contact ul {
  font-size: 0;
}
.privacy__contact ul li {
  margin-bottom: 10px;
}
.privacy__contact ul li:last-child {margin-bottom: 0;}
.privacy__contact ul li strong {
  font-size: 19px;
  font-weight: 500;
}
.privacy__contact ul li span {
  display: block;
  font-size: 12px;
  margin-top: 3px;
}
.privacy__notes {
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 60px;
}
.dot__list {margin-bottom: 20px;}
.dot__list li {
  border-bottom: 1px solid #e0e2e4;
  padding: 0 0 20px 27px;
  position: relative;
  margin-bottom: 18px;
}
.dot__list li:before {
  content: "";
  width: 8px;
  height: 8px;
  background-color: #0078c8;
  border-radius: 4px;
  position: absolute;
  left: 0;
  top: 10px;
}
.dot__list li h3 {
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 7px;
}

h3.ttl_dot:before {
  content: "";
  width: 8px;
  height: 8px;
  background-color: #0078c8;
  border-radius: 4px;
  position: absolute;
  left: 0;
  top: 10px;
}
h3.ttl_dot {
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 7px;
}
.dot__list li p {
  font-size: 14px;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .table--style td, .table--style th {display: block;}
  .table--style th {border-top: 1px solid #eff0f1;padding-top: 15px;padding-bottom: 5px;}
  .table--style td {padding-bottom: 7px;}
/*.privacy--content .table__scroll {overflow-x: scroll;}*/
  .about__nav li:nth-child(1), .about__nav li:nth-child(2) {border-bottom: 1px solid #e0e2e4;}
  .about__nav li:nth-child(even) a {border-right: none;}
  .privacy--content .table__scroll table thead th {
    width: 50%;
    white-space: nowrap;
    font-size: 14px;
    letter-spacing: 0;
  }
  .privacy--content .table__scroll table tbody td {
    vertical-align: top;
    font-size: 14px;
    padding-left: 10px;
    letter-spacing: 0;
  }
  .privacy--content .table__scroll table tbody td:first-child {padding-left: 0;}
}
@media screen and (min-width: 375px) {
  .about__text p {font-size: 16px;}
}
@media screen and (min-width: 768px) {
  .about__nav {margin: -35px 40px 70px;}
  .about__nav li {width: 25%;}
  .about__nav li a {font-size: 18px;}
  .about__nav li a span {padding-left: 32px;}
  .about__text p {font-size: 18px;text-align: center; line-height: 2.1;}
  .container--page {
    margin: 0 auto;
    max-width: 950px;
    padding: 0;
  }
  .table--style {
    border-bottom: 1px solid #eff0f1;
  }
  .table--style th {width: 145px;}
  .table--style th, .table--style td {
    padding: 16px 0 14px;
    vertical-align: top;
    border-top: 1px solid #eff0f1;
  }
  .privacy--content .table__scroll {margin: 0;padding: 0 0 10px 27px;margin-bottom: 40px;}
  .table--style td {
    padding: 12px 0 16px;
  }
  .privacy--content .table__scroll table {width: 100%;}
  .privacy__contact ul li {
    display: inline-block;
    padding: 0 45px;
    margin: 0;
  }
  .privacy--content ol li h3 {font-size: 16px;}
  .privacy--content ol li h3 span {font-size: 18px;}
}

/* security */
.security--content ol li {
  display: flex;
}

/* About */
.ourmap {line-height: 0;}
.ourmap iframe {
  width: 100%;
  height: 320px;
  -webkit-filter: grayscale(1);
　filter: grayscale(1);
}
.ourmap img {
  display: block;
  width: 100%;
}
.ourmap__link {
  text-align: right;
  padding: 25px 30px;
  line-height: 1;
}
.ourmap__link a {
  text-decoration: underline;
  font-size: 14px;
  color: #0078c8;
  letter-spacing: 0.06em;
}
.ouritem {
  margin-bottom: 65px;
}
.ouritem:last-child {
  margin-bottom: 0;
}
.ouritem h2 {
  line-height: 1;
  border-bottom: 1px solid #e0e2e4;
  padding: 0 0 25px;
  font-size: 31px;
  letter-spacing: 0.08em;
  font-weight: bold;
}
.ouritem dt {
  color: #0078c8;
  letter-spacing: 0.12em;
  font-weight: 500;
  line-height: 1.24;
}
.ouritem dd {
  font-size: 18px;
  color: #787d82;
  border-bottom: 1px solid #e0e2e4;
}
.ourmission dt {
  font-size: 41px;
  text-transform: uppercase;
  margin-bottom: 6px;
  padding-top: 25px;
}
.ourmission dd {padding-bottom: 25px;}
.ourvision dl {padding-top: 5px;}
.ourvision dt {
  font-size: 41px;
  margin-bottom: 6px;
  padding-top: 25px;
}
.ourvision dd {padding-bottom: 25px;}
.ourvalue dl {padding-top: 24px;}
.ourvalue dt {
  font-size: 31px;
  margin-bottom: 6px;
  padding-top: 25px;
}
.ourvalue dt span {
  display: block;
  margin: 10px 0 10px;
  font-size: 18px;
  font-weight: bold;
  color: #333;
}
.ourvalue dd {
  font-size: 14px;
  padding-bottom: 25px;
}
.ourvalue dd span {
  color: #333;
  font-weight: bold;
  font-size: 18px;
  display: block;
  margin: 10px 0 5px;
}
@media screen and (max-width: 767px) {
  .ourvision dt, .ourmission dt {font-size: 30px;}
  .ourvalue dt {font-size: 26px;}
  .ourmap iframe {height: 50vw;}
}
@media screen and (min-width: 768px) {
  .ourvalue dt {margin-bottom: 0;padding: 0;}
  .ourvalue dd {
    margin: -2.9em 0 24px 0;
    padding: 0 0 35px 380px;
  }
}
@media screen and (min-width: 768px) {
  .ourvalue dt span {margin-bottom: 0;}
  .ourvalue dd {
    margin-top: -4.5em;
    height: 120px;
  }
}

/* Form */
.form__wrap {
  background-color: #e4e8ee;
  padding-top: 30px;
}
@media screen and (min-width: 768px) {
  .form__wrap {padding-top: 15px;}
}

/* Accordion */
.accordion h3 {
  background-color: #f6f8fa;
  line-height: 1;
  font-size: 23px;
  font-weight: 500;
  border: 1px solid #e0e2e4;
  padding: 18px 25px;
  position: relative;
  margin: 15px 0 0 0;
  cursor: pointer;
}
.accordion h3 span {
  position: absolute;
  width: 40px;
  height: 40px;
  right: 9px;
  top: 50%;
  margin-top: -20px;
  background: url(../img/common/accord01.png) no-repeat 0 0 / 100% 100%;
}
.accordion h3.active span {background-image: url(../img/common/accord02.png);}
.accordion__content {
  border: 1px solid #e0e2e4;
  border-top: none;
  display: none;
}
.accordion__content dl {padding-top: 20px;}
.accordion__content dt {
  line-height: 1.3;
  font-weight: 500;
  font-size: 16px;
  padding: 0 25px;
  margin-bottom: 6px;
}
.accordion__content dd {
  color: #787d82;
  font-size: 14px;
  border-bottom: 1px solid #e0e2e4;
  line-height: 1.7;
  padding: 0 25px 16px;
  margin-bottom: 20px;
}
.accordion__content dd:last-child {border-bottom: none;margin-bottom: 0;}

/* Culture */
.culture li {
  margin-bottom: 10px;
}
.culture__box {
  background-color: #f6f8fa;
  text-align: center;
  padding: 36px 20px 40px;
  height: 100%;
  border-radius: 8px;
}
.culture li h3, .culture__item h3 {
  color: #0078c8;
  line-height: 1;
  font-size: 49px;
  letter-spacing: 0.08em;
  margin-bottom: 20px;
}
.culture li h3 span, .culture__item h3 span {
  font-size: 36px;
  vertical-align: top
}
.culture li h4, .culture__item h4 {
  line-height: 1.3;
  font-size: 18px;
  margin-bottom: 5px;
}
.culture li p, .culture__item p {
  font-size: 13px;
  text-align: left;
}
@media screen and (min-width: 465px) {
  .culture {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -5px;
  }
  .culture li {
    width: 50%;
    padding: 0 5px;
  }
}
@media screen and (min-width: 768px) {
  .culture li {
    width: 20%;
    margin: 0;
  }
  .culture__box {padding-left: 15px;padding-right: 12px;}
  .culture li h4, .culture__item h4 {font-size: 16px;}
  .culture li p, .culture__item p {font-feature-settings: "palt" 1;}
}

/* Thing */
.thing__item {
  border-bottom: 1px solid #e0e2e4;
  text-align: center;
  padding: 0 15px;
  margin-bottom: 45px;
}
.thing__item:last-child {
  border-bottom: none;
  margin-bottom: 0;
}
.thing__item h3 {
  line-height: 1.3;
  font-size: 48px;
  margin-bottom: 17px;
}
.thing__item p {
  font-size: 18px;
  line-height: 2.1;
}
.thing__item .thing__item__img img{
  max-width: 100%;
  height: auto;
}
.button__thing a {
  background: -webkit-linear-gradient(135deg,#0078c8 0%,#00d2f0 100%);
  background: linear-gradient(135deg,#0078c8 0%,#00d2f0 100%);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  width: 380px;
  height: 70px;
  margin: 0 auto;
  display: block;
  color: #fff;
  font-weight: 500;
  font-size: 19px;
  text-align: center;
  border-radius: 35px;
  position: relative;
  text-decoration: none !important;
}
.button__thing a span {
  display: block;
  line-height: 64px;
}
.button__thing a span:before,
.button__thing a span:after {
  content: '';
  position: absolute;
  height: 2px;
  right: 25px;
  top: 50%;
  margin-top: -1px;
  background-color: #fff;
}
.button__thing a span:before {
  width: 28px;
}
.button__thing a span:after {
  width: 14px;
  -webkit-transform: rotate(40deg);
  -moz-transform: rotate(40deg);
  transform: rotate(40deg);
  margin-top: -6px;
}
@media screen and (max-width: 767px) {
  .button__thing a {
    font-size: 14px;
    width: 85%;
  }
  .button__thing a:before {
    left: 15px;
  }
  .button__thing a span:before, .button__thing a span:after {right: 15px;}
  .thing__item h3 {
    font-size: 8.75vw;
  }
  .thing__item p {font-size: 15px;}
}

/* media */
.media__content {
  max-width: 950px;
  margin: -36px auto 55px;
  padding: 15px;
  position: relative;
  z-index: 1;
  border-radius: 10px;
}
.media__content .youtube {
  line-height: 0;
  margin-bottom: 0px;
}
.media__content .youtube iframe {
  width: 100%;
  height: 518px;
  border: 0;
}
.media__content p {
  text-align: center;
  font-size: 18px;
  line-height: 1.9;
}
@media screen and (max-width: 767px) {
  .media__content .youtube iframe {
    height: 66vw;
  }
  .media__content p {font-size: 15px;}
  .accordion h3 {
    font-size: 4.2vw;
  }
}

/* ------------------------------------------------------
HOVER
------------------------------------------------------ */
@media screen and (min-width: 768px) {
  .about__nav li a {
    -webkit-transition: color 0.3s ease-out;
	-moz-transition: color 0.3s ease-out;
	transition: color 0.3s ease-out;
  }
  .button__thing a {
    -webkit-transition: opacity 0.3s ease-out;
	-moz-transition: opacity 0.3s ease-out;
	transition: opacity 0.3s ease-out;
  }
  .button__thing a:hover {
    opacity: 0.7;
  }
  .about__nav li a:hover {
    color: #0078c8;
  }
  .privacy--content a:hover, .ourmap__link a:hover,
  .table--style td a:hover {text-decoration: none;}
}

.form__wrap {
  background-color: #e4e8ee;
  padding: 30px 0 60px;
}
.form__wrap .container {padding: 0;}
@media screen and (max-width: 767px) {
  .form__wrap .container {padding: 0 15px;}
  .contact__lead {
    text-align: left;
    font-size: 15px;
  }
  .contact__lead span { font-size: 13px;}
}
@media screen and (min-width: 768px) {
  .form__wrap {padding: 40px 0 60px;}
  .form__wrap .container {
    padding: 0;
    margin: 0 auto;
    max-width: 950px;
  }
}

.form__btn {text-align: center;}
.form__btn button {display: inline-block;margin: 0 10px;}
.back__btn {width: 180px !important;background: #737d8c !important;}
@media screen and (max-width: 767px) {
  .form__btn button {font-size: 17px;height: 60px;margin: 0 5px 5px;}
  .form__btn button[type="button"] {width: 100px !important;}
  .form__btn button[type="submit"] {width: 240px;}
}

.mw_wp_form_confirm .form__privacy,
.mw_wp_form_confirm .form__link {
  display: none;
}

/* .casual__wrap{
  margin: 0 auto;
  max-width: 950px;
  position: relative;
  padding: 0 10px 20px;
} */
.casual__list .casual__item img{
  max-width: 100%;
  height: auto;
}
.casual__content{
  text-align: left;
}

.sp--indent--15{
  text-indent: 15px;
}
.casual__content h4{
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 30px;
}
/* .casual__content p:not(:last-child){
  margin-bottom: 25px;
} */
.casual__des{
  text-align: left;
  margin-top: 30px;
  color: #1a76c6;
}
.casual__des .list-casual li{
  position: relative;
  padding-left: 40px;
  font-weight: bold;
}
.casual__des .list-casual li:not(:last-child){
  margin-bottom: 15px;
}
.casual__des .list-casual li:before{
  position: absolute;
  content: "";
  width: 27px;
  height: 27px;
  background-image: url('../img/recruit/ic03.png');
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  left: 0px;
  top: 50%;
  transform: translateY(-50%);
}
.box_notice {
  background: #f6f8fa;
  padding: 20px;
  border-radius: 8px;
}
@media screen and (min-width: 768px){
  .casual__list {
    width: 1080px;
    margin: auto;
  }
  .what__body .casual__list {
      display: flex;
      flex-wrap: wrap;
  }
  .casual__list .employee__flex{
    position: relative;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    /* -ms-flex-wrap: wrap;
    flex-wrap: wrap; */
  }
  .casual__list .casual__item{
    padding: 0 10px;
  }
  .casual__list .casual__item:nth-child(1){
    position: -webkit-sticky;
    position: sticky;
    top: 70px;
    right: 0;
    width: 50%;
    height: 100vh;
  }
  .casual__list .casual__item:nth-child(2){
    margin: 0 0 0 auto;
    width: 45%;
  }
  .casual__list .casual__item:nth-child(4){
      width: 100%;
  }
  .casual__content h4{
    font-size: 22px;
  }
  .pc--indent--25{
    text-indent: 25px;
  }
  .casual__des .list-casual li{
    padding-left: 60px;
    font-size: 18px;
  }
  .casual__des .list-casual li:before{
    left: 20px;
    top: 20px;
  }
  .casual__des .list-casual li:not(:last-child){
    margin-bottom: 5px;
  }
  .box_notice {
    padding: 30px;
  }
  .pc-txt--indent{
    display: inline-block;
  }
}
@media screen and (max-width: 375px){
  .box_notice p{
    font-size: 13px;
  }
}
/* @media screen and (max-width: 767px){
  .casual__list .casual__item:not(:last-child){
    margin-bottom: 30px;
  }
} */
.container--page--culture{
  padding: 0 15px;
}
@media screen and (min-width: 768px){
  .container--page--culture {
    margin: 0 auto;
    max-width: 1200px;
    padding: 0;
  }
}
.culture--slides{
  margin-left: 10px;
  margin-top: 50px;
}
.culture--slides .culture__item{
  margin-left: 10px;
}
.culture--slides .slick-track{
  display: flex !important;
}
.culture--slides .culture__item{
  height: inherit !important;
}
.culture--slides .slick-prev, .culture--slides .slick-next {
  width: 28px;
  height: 12px;
  font-size: 0;
  border: none;
  cursor: pointer;
  background: none;
  padding: 0;
  position: absolute;
  bottom: -25px;
  outline: none;
}
.culture--slides .slick-prev, .culture--slides .slick-next{
  bottom: -30px;
}
.culture--slides .slick-prev{
  right: 50px;
}
.culture--slides .slick-next{
  right: 0;
}

@media screen and (min-width: 768px){
  .culture--slides{
    margin-left: -10px;
  }
  .culture--slides .slick-prev, .culture--slides .slick-next {
    -webkit-transition: all .5s cubic-bezier(.165,.84,.44,1);
    transition: all .5s cubic-bezier(.165,.84,.44,1);
  }
  .culture--slides .slick-prev, .culture--slides .slick-next{
    top: 50%;
    transform: translateY(-50%);
  }
  .culture--slides .slick-prev{
    left: -35px;
  }
  .culture--slides .slick-next{
    right: -45px;
  }
  .culture--slides .culture__item .culture__img img{
    max-width: 100%;
    height: auto;
    width: 100%;
  }
}
.culture--slides .slick-prev {
  background: url(../img/common/prev.png) no-repeat left top / auto 12px;
}
.culture--slides .slick-next {
  background: url(../img/common/next.png) no-repeat right top / auto 12px;
}
.culture--slides .culture__item .culture__img img{
  max-width: 100%;
  height: auto;
}
