@charset "UTF-8";
/*
Theme Name:bluetec
Theme URI:
Description:nano_tcd065子テーマ
Template:nano_tcd065
Version:1.3
*/

/*===================================================
親テーマcss 再設定
===================================================*/
img {
  max-width: 100%;
}

/* ------------------
base
------------------ */
.p-entry__body table,
.p-entry__body table {
  border: 0;
  border-top: 1px solid #ddd;
  border-left: 1px solid #ddd;
}
.p-entry__body table td,
.p-entry__body table th {
  border: 0;
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}
.p-entry__body table th {
  text-align: left;
}


/* header */
.p-megamenu02::before {
	background-color: #e83a37 !important;
}
#js-megamenu44 .p-article13:first-child .p-article13__img img {
	object-position: bottom center;
}
.l-header__nav {
  border-bottom: 1px solid #d2d2d2;
}
.l-header__nav {
  border-bottom: 1px solid #d2d2d2;
}
.p-global-nav {
  border-right: 1px solid #d2d2d2;
}
.p-global-nav .menu-item {
  margin-left: 0;
  border-left: 1px solid #d2d2d2;
  border-right: 0;
}
.l-header__search {
  color: #003ca0;
}
.l-header__form-input {
  font-size: 16px;
}
.c-menu-btn::before {
  color: #003ca0;
}
@media only screen and (max-width: 1199px) {
  .l-header__search::after {
    background: #85b4cc;
  }
}


/* footer */
.p-footer-nav {
  font-size: 14px;
}
#custom_html-2 {
  width: 100%;
  padding: 0;
}

/* home */
@media screen and (min-width: 768px) {
  .p-header-slider__item {
    width: 100%;
    height: 700px;
    overflow: hidden;
    position: relative;
  }
}

/* main */
.l-contents {
  margin-bottom: 0;
}

.p-index-content01,
.l-contents--no-border .l-contents__inner {
	background-color: rgba(255, 255, 255, .7);
}

.p-news-tab-list__tabs-item.is-active a, .p-news-tab-list__tabs-item a:hover {
  background-color: #003ca0;
}
.p-news-tab-list__tabs-item.is-active a, .p-news-tab-list__tabs-item a:hover,
.p-news-tab-list__tabs-item.is-active + .p-news-tab-list__tabs-item a {
  border-color: #b2c1da;
}


/* ------------------
HOME
------------------ */
.p-index-content02 .p-index-content02__list .p-three-box__item:last-child {
	display: none;
}

.p-article12__img {
	transform: translateY(0);
}
.p-article04 {
	background-color: #fff;
}

@media screen and (min-width: 768px) {
  .p-three-box__item {
    width: 50%;
  }
}


/* ------------------
company
------------------ */
.p-article05__content {
  right: 15px;
  left: auto;
}
.p-article05--rev .p-article05__content {
  right: auto;
  left: 15px;
}



/*===================================================
contents
===================================================*/
/* ------------------
base
------------------ */
figure {
  margin: 0 0 2em;
}
iframe {
  max-width: 100% !important;
}


/* ------------------
header
------------------ */
@media screen and (max-width: 767px) {
  .l-header__logo {
    width: 45vw;
  }
}


/* ------------------
footer
------------------ */
.footer_nav .navlv0 {
  margin: 0;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
}
.footer_nav .navlv0 li {
  list-style: none;
  font-size: 16px;
}
.footer_nav .navlv0 > li {
  width: 25%;
  margin: 0;
  padding: 50px 3% 40px;
  border-right: 1px solid #d2d2d2;
}
.footer_nav .navlv0 > li:last-of-type {
  border-right: 0;
}
.footer_nav .navlv0 ul {
  width: auto;
  margin: 0 0 0 1em;
  padding-top: 20px;
}
.footer_nav .navlv0 ul li {
  margin: 0 0 12px;
}
.footer_nav .navlv0 li a:link,
.footer_nav .navlv0 li a:visited {
  color: #003ca0;
}
.footer_nav .navlv0 li a:hover {
  text-decoration: underline;
}
.footer_nav .navlv0 li li a:link,
.footer_nav .navlv0 li li a:visited {
  color: #000;
}

@media screen and (max-width: 767px) {
  .p-copyright {
    padding-left: 1em;
    text-align: left;
    font-size: 10px;
  }
}

/* ------------------
CMN
------------------ */
/* font */
html {
  font-size: 21px
}
html .p-entry__body {
  font-size: 18px
}
.fMin {
  font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

@media screen and (max-width: 767px) {
  html {
    font-size: 14px
  }
  html .p-entry__body {
    font-size: 14px
  }
}

/* button */
.btnSt1 a {
  color: #ffffff;
  background: #e83a37;
}
.btnSt1 a:hover {
  background: #a40000;
}

/* form */
.wpcf7 {
  font-size: 16px;
  background-color: transparent;
  border: 0;
}
.wpcf7 form {
  margin: 0;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
  margin: 0;
  padding: 5px 0;
  color: #e83a37;
  border-color: #e83a37;
}


/* Setting */
.red1 {
  color: #e83a37;
}
.liSt1 li {
  padding-left: 1em !important;
  text-indent: -1em !important;
  list-style: none !important;
}
.liSt1 li:before {
  content: '\02022';
  margin-right: .5em;
}

.sec {
  margin: 0 1em;
  padding: 0 0 5em;
}
.page_content .sec:last-of-type {
  padding-bottom: 0;
}
.sec .secTtl {
  margin: 0 0 2em;
  padding: 0 0 1.5em;
  text-align: center;
  color: #003ca0;
  font-size: 26px;
  font-weight: 500;
  border-bottom: 1px solid #ccc;
}

.sec table th {
  color: #000;
  font-size: 16px;
  background-color: #f5f5f5;
}

@media screen and (max-width: 767px) {
  .sec {
    margin: 0;
  }
}


/* ------------------
PAGES
------------------ */
/* HOME */
.home_sec {
  text-align: center;
}
.home_sec .home_sec_inner {
  margin: 0 auto;
  padding: 0 5%;
  text-align: left;
}

#home_sec_businessInformation {
  margin: 0;
  padding: 100px 0;
  text-align: center;
  background-color: #e9eaea;
}
#home_sec_businessInformation .secTtl {
  margin: 0 0 40px;
  text-align: center;
  font-size: 42px;
  font-weight: 500;
}
#home_sec_businessInformation .sec_cont {
  margin: 0 0 50px;
  padding: 45px 0 0;
  text-align: center;
  border: 2px solid #d0d0d0;
  background-color: #fff;
}
#home_sec_businessInformation .sec_cont .txtarea1 .ul1 {
  margin: 0 1em 30px;
  padding: 0;
  text-align: left;
  display: inline-block;
}
#home_sec_businessInformation .sec_cont .txtarea1 .ul1 li {
  margin: 0 0 .5em;
}
#home_sec_businessInformation figure {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  #home_sec_businessInformation {
    padding: 3em 0;
  }
  #home_sec_businessInformation .secTtl {
    font-size: 28px;
  }
}


/* company */
.post-type-archive-company .p-article05__content {
  padding-right: 2%;
}
.post-type-archive-company .p-article05__desc {
  font-weight: normal;
}


/* company message-philosophy */
#company-message_philosophy .name {
  text-align: right;
  font-size: 19px;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  #company-message_philosophy .name {
    text-align: center;
    font-size: 105%;
  }
}

/* company profile-outline */
#company-profile_outline .table1 {
  width: 100%;
}
#company-profile_outline .table1 .map {
  text-align: center;
}
#company-profile_outline .table1 .map p {
  margin-bottom: 0;
}
#company-profile_outline .table1 .mapBlock {
  text-align: right;
  display: inline-block;
}
#company-profile_outline .table1 .btn_map {
  text-align: right;
  display: inline-block;
}
#company-profile_outline .table1 .btn_map a {
  margin: 10px 0;
  padding: 10px 30px;
  text-align: center;
  color: #000;
  font-size: 15px;
  border: 1px solid #cfcfcf;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  -ms-align-items: center;
  align-items: center;
}
#company-profile_outline .table1 .btn_map a:before {
  content: '';
  width: 12px;
  height: 16px;
  margin-right: .5em;
  background: url(./images/icon_btn_map.png) no-repeat center;
  display: inline-block;
}
#company-profile_outline .table1 .btn_map a:hover {
  color: #fff;
  text-decoration: none;
  background-color: #e83a37;
}
#company-profile_outline .tableSec2 tr th[rowspan] {
  background-color: #dbdbdb;
}

@media screen and (min-width: 768px) {
  #company-profile_outline .tableSec1 th {
    width: 7em;
  }
}
@media screen and (max-width: 767px) {
  #company-profile_outline .table1 th,
  #company-profile_outline .table1 td {
    display: block;
  }
}


/* service business_information */
#service-business_information #sec1 {
  padding-bottom: 2em;
}
#service-business_information #sec1 .txtarea1 {
  margin-bottom: 1.5em;
  padding: 0;
  border-bottom: 1px solid #ccc;
}
#service-business_information #sec1 .txtarea2 {
  border-bottom: 1px solid #ccc;
}
#service-business_information #sec2 .secTtl {
  color: #000;
  padding-bottom: .5em;
  font-size: 18px;
  font-weight: 600;
}
#service-business_information #sec2 .txt1 {
  margin-bottom: 1.5em;
}
#service-business_information #sec2 .txt1 a {
  text-decoration: underline;
}
#service-business_information #sec2 .txt1 a:hover {
  text-decoration: none;
}
#service-business_information #sec2 .txtarea1 {
  border-bottom: 1px solid #ccc;
}
#service-business_information #sec2 .txtarea1 .txt2 {
  margin-bottom: .5em;
}
#service-business_information #sec2 .mainFunction {
  margin: 0 0 1em;
  padding: 0;
}
#service-business_information #sec2 .mainFunction dd {
  margin: 0 0 .2em;
  padding: 0 0 0 1em;
  text-indent: -1em;
  line-height: 1.48;
}
#service-business_information #sec2 .mainFunction dd:before {
  content: '・';
  margin: 0 0 .5em;
  display: inline;
}


/* contact */
.page-id-59 .p-cover {
  height: 100px;
}
.page-id-59 .p-cover .p-cover__title {
  margin-bottom: 0;
  padding-top: 5px;
}

#contact .contactForm {
  margin: 0;
  text-align: center;
  font-size: 16px;
  background-color: #e9eaea;
}
#contact .contactForm .secTitle {
  margin: 0;
  padding: 20px 0;
  background-color: #003ca0;
}
#contact .contactForm .secTitle h3 {
  margin: 0;
  color: #fff;
  font-size: 16px;
}
#contact .contactForm .formArea {
  margin: 0 10%;
  padding: 60px 0;
}
#contact .contactForm .formArea .txtarea {
  margin: 0;
  padding: 0 0 30px;
}
#contact .contactForm .wpcf7 p {
  margin-bottom: 0;
}
#contact .contactForm .must {
  margin-left: .5em;
  color: #e83a37;
}
#contact .contactForm .wpcf7-not-valid-tip {
  font-size: 12px;
  font-weight: 600;
  position: absolute;
  bottom: -1.2em;
  left: 0;
}


#contact .formArea_top {
  padding-bottom: 30px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
}
#contact .formArea_top .formAreaL,
#contact .formArea_top .formAreaR {
  width: 50%;
  margin: 0;
}
#contact .formArea_top .formAreaL {
  width: 47%;
  margin-right: 3%;
}
#contact .formArea_top .inputBlock {
  margin: 0 0 45px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: flex-end;
  -ms-align-items: center;
  align-items: center;
}
#contact .formArea_top .inputBlock .ttl {
  width: 10em;
  margin: 0 .5em 0 0;
  text-align: right;
}
#contact .formArea_top .inputBlock .inputArea {
  width: 300px;
  position: relative;
}
#contact .formArea_top .inputBlock .inputArea .point {
  font-size: 11px;
  position: absolute;
  top: -1.5em;
  left: 0;
}
#contact .formArea_top .inputBlock .inputArea .input {
  position: relative;
}
#contact .formArea_top .inputBlock .inputArea .input .wpcf7-form-control-wrap {
  display: block;
  position: relative;
}
#contact .formArea_mid {
  margin: 0;
  text-align: left;
}
#contact .formArea_mid p {
  margin-bottom: 0;
}
#contact .formArea_mid .inputBlock {
  margin: 0;
  text-align: left;
}
#contact .formArea_mid .inputBlock .ttl {
  margin: 0 0 10px;
}

#contact .formArea_mid {
  margin-bottom: 50px;
}

#contact .formArea_bottom .quiz {
  margin-bottom: 40px;
  text-align: center;
}
#contact .formArea_bottom .quiz .quiz_txt {
  margin-bottom: 10px;
}
#contact .formArea_bottom .quiz .quiz_area {
  width: 120px;
  margin: 0 auto;
}
#contact .formArea_bottom .quiz .quiz_area .wpcf7-form-control-wrap {
  display: block;
  position: relative;
}
#contact .formArea_bottom .quiz .quiz_area .wpcf7-quiz-label {
  margin-bottom: 15px;
  padding: 10px;
  display: block;
  background-color: #fff;
  border: 1px solid #ccc;
}
#contact .formArea_bottom .quiz .quiz_area input {
  text-align: center;
}

#contact .formArea_bottom .quiz .quiz_area .wpcf7-not-valid-tip {
  white-space: nowrap;
}

#contact .formArea_bottom .btn_submit .wpcf7-submit {
  height: 60px;
  font-size: 16px;
  background-color: #e83a37;
}
#contact .formArea_bottom .btn_submit .wpcf7-submit:hover {
  background-color: #a40000;
}
@media screen and (max-width: 767px) {
  #contact .contactForm .formArea {
    margin: 0 5%;
    padding: 3em 0;
  }
  #contact .formArea_top {
    display: block;
  }
  #contact .formArea_top .formAreaL,
  #contact .formArea_top .formAreaR {
    width: 100%;
  }
  #contact .formArea_top .inputBlock {
    margin-bottom: 2em;
    display: block;
  }
  #contact .formArea_top .inputBlock .ttl {
    margin-bottom: .5em;
    text-align: left;
  }
  #contact .formArea_top .inputBlock .inputArea .point {
    margin-bottom: .5em;
    text-align: left;
    position: static;
  }
}


