/* common */
.navbar {
  box-shadow: none;
  -webkit-box-shadow: none;
}

.page-header-wrapper {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding-top: 150px;
  padding-bottom: 100px;
  color: #fff;
}

.page-header-wrapper h1 {
  font-size: 3.5rem;
  font-weight: 500;
  letter-spacing: .15rem;
}

.page-header-wrapper h1 .page-sub-title {
  font-weight: 300;
  font-size: 1.7rem;
  display: block;
}

/* footer */
footer {
  background-image: url(../images/footer_background.png);
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  padding-top: 150px;
  padding-bottom: 150px;
  position: relative;
  background-color: #fff;
}

footer img {
  width: 18%;
}

footer p {
  letter-spacing: .1rem;
  margin-top: 20px;
}

footer .copy-right {
  position: absolute;
  bottom: 5px;
  left: 10px;
  font-size: .9rem;
  margin: 0;
}

/* ABOUT */
.page-id-9 .page-header-wrapper {
  background-image: url(../images/about_title_background.jpg);
}

/* MAKERS */
.page-id-21 .page-header-wrapper {
  background-image: url(../images/product_header_background.jpg);
}

/* CONTACT */
.page-id-13 .page-header-wrapper {
  background-image: url(../images/contact_title_background.jpg);
}

/* NEWS-BLOG-LIST */
.page-id-225 .page-header-wrapper {
  background-image: url(../images/news_blog_list_title_background.jpg);
}

/* INFORMATION-LIST */
.page-id-223 .page-header-wrapper {
  background-image: url(../images/information_list_title_background.jpg);
}

.kana-links a {
  display: inline-block;
  color: #1357A4;
  font-size: 1.15rem;
  font-weight: 700;
  padding: 7px 25px;
  position: relative;
  margin-left: -6.5px;
}

.kana-links a:first-of-type {
  margin-left: 0px;
}

.kana-links a::before {
  content: "";
  position: absolute;
  border: 3px solid #1357A4;
  top: 50%;
  left: -9px;
  transform: skewX(-30deg) translateY(-50%);
  width: 100%;
  height: 100%;
}

.kana-links p {
  margin-top: 1.5rem;
  margin-bottom: 0;
  padding-right: 15%;
  font-size: .85rem;
  text-align: right;
}

.kana-links p img {
  width: 1em;
}

.maker-list>div {
  /* border-bottom: 1px solid #1357A4; */
  margin-bottom: 100px;
}

.maker-list h2 {
  color: #1357A4;
  font-size: 2.7rem;
  position: relative;
  background-color: #fff;
  font-weight: 500;
  margin-bottom: 30px;
}

.maker-list h2 span {
  font-size: 1rem;
  position: absolute;
  top: 2rem;
  left: 2.8rem;
}

.maker-list h2::after {
  content: "";
  position: absolute;
  width: 92%;
  height: 1px;
  top: 1.25rem;
  right: 0;
  background-color: #1357A4;
}

.maker-list ul {
  list-style: none;
  padding-left: 150px;
}

.maker-list ul li {
  display: inline-block;
  width: 49%;
  /* font-size: .8rem; */
  letter-spacing: .1rem;
  margin-bottom: 40px;
  font-weight: 500;
  /* padding-left: 1rem; */
}

/* .maker-list ul li:first-child {
  padding-left: 0;
} */
.catalog-ico {
  margin-left: 0.5rem;
}
.catalog-ico a:hover{
  opacity: 0.5 ;
}

.maker-list ul li:nth-child(2n) {
  padding-left: 1rem;
}

.maker-list ul li a {
  color: #212529;
}

.maker-list img {
  width: .8rem;
}

.post_body {
  padding-top: 10rem;
}

.post_body h1, .post_body h2, .widget h1, .widget h2{
  border-bottom:none;
}

.post_body h1>span, .post_body h2>span, .widget h1>span, .widget h2>span{
  border-bottom:none;
}

h2 .company-outline{
  background: no-repeat url("../images/company-outline.png")
}

h2.japanese{
  font-size:2.3em;
  margin-bottom:0px;
  font-weight:600;
  color:#ffffff;
  width:50%;
  text-align:center;
  line-height: 140px;
}

h2.japanese span {
  padding:0;
}

h2.english{
  margin-top:10px;
  font-weight:300;
  font-size:1.2em;
  margin-bottom:0px;
  color:#ffffff;
  width:50%;
  text-align:center;
}

h2.english span {
  padding:0;
}

.back-ideal{
  background: no-repeat url("../images/ideal.png");
  height:140px;
  margin-bottom:50px;
  margin-top: 100px;
  background-size: cover;
  background-position: center;
}

.section-ideal {
  text-align: center;
  padding-bottom: 12rem;
}

.section-ideal h3 {
  color: #114683;
}

.section-ideal p {
  margin-bottom: 50px;
  line-height: 2rem;
  letter-spacing: .05rem;
}

.president-thoughts .wp-block-group__inner-container {
  position: relative;
}

.president-thought-contents {
  position: absolute;
  text-align: left;
  width: 37%;
  top: 15.5%;
  left: 17%;
}

.president-thought-contents p {
  margin-bottom: 5px;
  font-size: 1rem;
  line-height: 2.5rem;
  text-indent: 1em;
}

.president-thought-contents p:first-of-type {
  max-width: 365px;
  margin: 0 auto;
  text-align: justify;
  text-justify: inter-character;
}

.president-thought-contents p:last-of-type {
  max-width: 365px;
  margin: 0 auto;
  margin-top: 30px;
  text-indent: .5em;
}

.president-thought-contents p:last-of-type span {
  margin-left: 1.8rem;
  font-size: 2em;
  font-family: shinryu, sans-serif;
}

.section-business-introduction {
  padding-bottom: 12.5rem;
}

.section-business-introduction p {
  width: 100%;
  margin: 0 auto;
  line-height: 2.5rem;
  letter-spacing: .05rem;
  font-size: .95rem;
  text-indent: 1em;
  text-align: justify;
}

.back-business-introduction{
  background: no-repeat url("../images/business_introduction.png");
  height:140px;
  margin-bottom:100px;
  margin-top: 200px;
  background-size: cover;
  background-position: center;
}

.business-introduction-contents {
  width: 95%;
  margin: 0 auto;
}


.section-company-outline {
  padding-bottom: 12rem;
}

.back-company-outline{
  background: no-repeat url("../images/company-outline.png");
  height:140px;
  margin-bottom:80px;
  margin-top: 200px;
  background-size: cover;
  background-position: center;
}

.back-concept{
  background: no-repeat url("../images/concept.png");
  height:140px;
  padding-top:17px;
  margin-bottom:50px;
}

.back-concept h2 {
  width: 35%;
}

.back-history{
  background: no-repeat url("../images/history.png");
  height:140px;
  margin-bottom:80px;
  margin-top: 200px;
  background-size: cover;
  background-position: center;
}

.section-group-companies {
  padding-bottom: 100px;
}

.section-group-companies p {
  font-size: 1.2rem;
  margin-left: 3rem;
  line-height: 2.5rem;
}

.section-group-companies p a {
  color: #114683;
  padding-bottom: 5px;
  transition: .2s;
}

.section-group-companies p a:hover {
  color: #114683;
  text-decoration: none;
  border-bottom: 2px solid #114683;
}

.back-group-companies{
  background: no-repeat url("../images/group-companies.png");
  height:140px;
  margin-bottom:80px;
  margin-top: 200px;
  background-size: cover;
  background-position: center;
}

.back-office{
  background: no-repeat url("../images/office.png");
  height:140px;
  margin-bottom:80px;
  margin-top: 200px;
  background-size: cover;
  background-position: center;
}

.office-text.office-text-sapporo {
  bottom: 110px;
}

.width{
  width:35%;
}

.concept-text {
  font-size: .9rem;
  line-height: 2.3rem;
  font-weight: 400;
}

.blue{
  color:#114683;
}

.hole-marigin-left span.big, .hk-margin-right span.big {
  color:#1357A4;
  font-size:1.8em;
  font-weight:500;
  margin-left:20px;
}

.hole-marigin-left p, .hk-margin-right p {
  margin-bottom: 2rem;
}

.small{
  color:#1357A4;
  font-size:1.1em!important;
}

.hole-hk{
  margin-bottom:30px!important;
}

.hk-margin-top{
  margin-top:70px!important;
}

.back-hole{
  background: no-repeat right url("../images/hole.png");
  margin-right:2em!important;
}

.back-hk{
  background: no-repeat left url("../images/hk.png");
  margin-left:60px!important;
}

.hole-marigin-left{
  margin-left:2em;
}

.hk-margin-right{
  margin-right:2em;
}

.address{
  font-size:0.9em;
  margin-bottom:50px;
}

.office-text{
  color:#114683;
  margin-bottom:20px!important;
  background-color:#ffffff;
  padding-right:20px;
  display:inline-block;
  position: absolute;
  bottom:90px;
  z-index:100;
}

.photo-map{
  max-width:480px!important;
}

.photo{
  margin-bottom:50px;
}

.a{
  color:#ffffff;
}

.eigyousyo{
  border-bottom:#114683 2px solid;
  max-width:480px;
}

.wp-block-group .photo-map{
  margin-bottom:40px;
}

.border-top{
  position: absolute;
  z-index:10;
}

.position-relative{
  position:relative;
}

.address{
  margin-top:20px;
}

.wp-block-column:not(:first-child){
  margin-left:0px!important;
}

.display-flex{
  justify-content:space-between!important;
}

.wp-block-columns{
  display:flex!important;
}

.tomakomai{
  margin-right:2em;
}

.sapporo{
  margin-left:2em;
}


.about-swiper-container {
  width: 600px;
  height: 300px;
  text-align: center;
}

.about-swiper-container img {
  width: 85%;
  object-fit: cover;
  aspect-ratio: 16 / 9;
}

/* table */
.under{
  border-bottom:#E2E2E2 1px solid;
  padding-top:1.3em;
  padding-bottom:1.3em;
  padding-right:0.5em;
  padding-left:0.5em;
}

.outline-table{
  max-width:800px!important;
  margin:0 auto;
}

.history-table{
  max-width:850px!important;
  margin:0 auto;
  padding-bottom: 12rem;
}

.wp-block-column .under{
  line-height:2em;
}

.wp-block-quote, .wp-block-gallery, .wp-block-list, .wp-block-cover, .wp-block-file, .wp-block-video, .wp-block-buttons, .wp-block-button, .wp-block-columns, .wp-block-media-text, .wp-block-more, .wp-block-nextpage{
  margin-bottom:0em!important;
}

.under p{
  margin-bottom:0!important;
}

.wp-block-group .concept-text{
  margin-right:0px;
}

.table-bold{
  font-size: 1em;
  line-height: 2rem;
}

.table-small{
  font-size: 0.85rem;
  font-weight: 500;
  line-height: 2rem;
}

.table-small.tel {
  line-height: 3.8rem;
}

.concept-text{
  margin-left:20px!important;
  margin-right:5px!important;
}

.concept-photo{
  margin-right:40px!important;
}

.wp-block-group .concept-text{
  margin-right:0!important;
}


/* Contact Form */
.contact{
  justify-content: center;
  margin-top:4em;
  margin-right:3.5em;
  margin-left:3.5em;
  margin-bottom:4em;
}

.page-id-13 .contact-form {
  padding-top: 12rem;
}


.contact-text{
  color:#1357A4;
  line-height:30px;
  letter-spacing:0.03em;
  font-weight: 500;
}

.row{
  justify-content: center;
}

h2.h2-contact{
  font-weight:600;
  font-size:1.8em;
  color:#1357A4;
  margin-top: 100px;
}

.red{
  color:#A41313;
}

.wpcf7-form>p {
  margin-top: 2rem;
}

.contact-name{
  margin-bottom:.7rem;
}

.wpcf7-form .form-control {
  color: #495057;
  background-color: #eaeaea;
  border: 1px solid #eaeaea;
}

input.contact-input, textarea.contact-input{
  margin-bottom:3rem;
  background-color:#F2F2F2;
  border:none;
  height:50px;
}

input.contact-input::placeholder{
  color:#AAAAAA;
}

textarea.contact-input::placeholder{
  color:#AAAAAA;
}

.submit_button{
  cursor:default;
  background-color:#265080;
  font-weight:100!important;
  height:50px;
  line-height:50px;
  width:170px;
  margin:0 auto;
  text-align:center;
  border: 2px solid #1357A4;
  transform: skewX(-30deg)!important;
  display:inline-block;
  position:absolute;
  left: 43%;
  transform: translateX(-50%);
}

.contact-submit-button>div {
  display: inline-block;
  position: relative;
  z-index: 1;
}

.contact-submit-button>div::before {
  content: "";
  z-index: -1;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  transform: skewX(-10deg);
  background-color: #1357A4;
  border: 3px solid transparent;
  transition: .2s;
}

.contact-submit-button>div:hover {
  cursor: pointer;
  background-color: transparent;
}

.contact-submit-button>div:hover input.contact-submit {
  color: #1357A4;
}

.contact-submit-button>div:hover::before {
  background-color: transparent;
  border: 3px solid #1357A4;
}

input.contact-submit {
  background: transparent;
  border: none;
  padding: .7rem 3rem;
}

input.contact-submit:hover {
  background-color: transparent;
  border: none;
}

.wpcf7-spinner {
  position: absolute;
  top: 50%;
  right: -3rem;
  transform: translateY(-50%);
  margin: 0;
}

.contact-table{
  max-width:600px!important;
  margin:0 auto;
  padding-left:2em;
  padding-right:2em;
}

/* post */
.post-template-single .page-header-wrapper {
  background-image: url(../images/toishi_top_1.jpg);
  position: relative;
  height: 300px;
}

.post-template-single .page-header-wrapper::after {
  content: "";
  width: 100%;
  height: 100%;
  z-index: 2;
  background-color: rgba(0, 0, 0, .4);
  position: absolute;
  top: 0;
  left: 0;
}

.post-template-single .page-header-wrapper h1 {
  z-index: 3;
  position: absolute;
  top: 50%;
  width: 100%;
  font-size: 2.3rem;
}

.post-template-single .page-header-wrapper h1 span {
  display: block;
  font-size: 1.2rem;
  margin-top: 1rem;
}

.photo-margin{
  margin-top:50px;
  margin-bottom:50px;
}

.sentence{
  line-height:1.5em;
}

.flex{
  display:flex;
}

.photo-flex{
  margin-bottom:24px;
}

/* リンクボタン */
.post-template-single a:not([href]):not([tabindex]):hover {
  background-color:#ffffff!important;
  color:#1357a4!important;
  border:2px solid #1357a4!important;
}
/* news&blogの一番上のページに反映されています */
/* リンクボタン */

/* news&blog */
.page-id-223 .information-news{
  padding-bottom:1.5em
}

.page-id-223 .text-information-news{
  margin-top:1.6em;
}

.page-id-223 .a-information-news{
  margin-left:0px;
  font-size:1.2em;
}

.page-id-223 .infor-padding{
  padding-bottom:1.5em;
  border-bottom:1px dotted #000;
}

.page-id-223 .under-dot .text-information-news span{
  background-color:#2E2E2E;
  color:#fff;
  font-size:0.8em;
  padding:0.2em 0.5em;
}

.page-id-223 .under-dot .text-information-news a{
  margin-left:0px;
}

.page-id-223 .text-information-news{
  padding-top:1.5em;
}
/* news&blog */


/* information */
.page-id-225 .information-news{
  padding-bottom:1.5em
}

.page-id-225 .text-information-news{
  margin-top:1.6em;
}

.page-id-225 .a-information-news{
  margin-left:0px;
  font-size:1.2em;
}

.page-id-225 .infor-padding{
  padding-bottom:1.5em;
}

.page-id-225 .under-dot .text-information-news span{
  background-color:#2E2E2E;
  color:#fff;
  font-size:0.8em;
  padding:0.2em 0.5em;
}

.page-id-225 .under-dot .text-information-news a{
  margin-left:0px;
}

.page-id-225 .text-information-news{
  padding-top:1.5em;
}

html :where([style*=border-width]) {
  border-style: inherit;
}
/* information */

/* single */
.normal-single-title {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 0.5rem;
  height: 35vh;
  padding-bottom: 3.5rem;
  background-image: url(../images/toishi_top_5_dark.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  text-align: center;
}

.normal-single-title h1 {
  color: #fff;
  font-size: 2rem;
}

.normal-single-title time {
  color: #fff;
  letter-spacing: .02rem;
  line-height: 1.2rem;
}

.normal-single-title time span:last-of-type {
  position: relative;
  margin-left: 3em;
}

.normal-single-title time span:last-of-type::before {
  content: "";
  position: absolute;
  left: -1.4em;
  top: 0.15rem;
  height: 1.5rem;
  width: 1.5rem;
  background-image: url(../images/update_icon.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.normal-single-container {
  margin-top: 3rem;
}
/* single */

@media screen and (max-width: 480px) {
  footer {
    padding-top: 50px;
    padding-bottom: 50px;
  }

  footer img {
    width: 30%;
  }

  footer .copy-right {
    font-size: .7rem;
  }

  .post_body {
    padding-top: 5rem;
  }

  .page-header-wrapper h1 {
    font-size: 2rem;
  }

  .page-header-wrapper {
    padding-top: 100px;
    padding-bottom: 50px;
  }

  .page-id-223 .text-information-news {
    padding-top: 0;
  }

  .under-dot li a {
    margin-top: 1em;
  }

  .page-id-223 .a-information-news {
    font-size: 1em;
  }

  .section-ideal {
    padding-bottom: 6rem;
  }

  .back-ideal {
    width: 90%;
    margin: 0 auto;
    margin-top: 50px;
    margin-bottom: 30px;
    height: 80px;
    background-size: 400%;
    background-position: center;
  }

  h2.japanese {
    margin: 0;
    width: 100%;
    font-size: 1.5em;
    text-align: center;
    line-height: 80px;
  }

  .section-ideal h3 {
    font-size: 1.5rem;
  }

  .section-ideal p {
    width: 90%;
    margin: 0 auto;
    margin-bottom: 50px;
    line-height: 1.7rem;
    font-size: .9rem;
  }

  .president-thought-contents {
    position: static;
    width: 100%;
    margin: 0 auto;
    top: 0;
    left: 0;
    transform: none;
    background-color: #CFDAE6;
    padding: 20px 1%;
  }

  .president-thought-contents p {
    margin-bottom: 20px;
  }

  .president-thoughts .wp-block-image {
    margin-bottom: 0;
  }

 .section-business-introduction {
    padding-bottom: 6rem;
}

  .back-business-introduction {
    width: 90%;
    margin: 0 auto;
    margin-top: 50px;
    margin-bottom: 30px;
    height: 80px;
    background-size: 400%;
    background-position: center;
  }

  .section-business-introduction img {
    margin-top: 30px;
    width: 90%;
  }

  .section-business-introduction p {
    font-size: .9rem;
    line-height: 2rem;
    width: 90%;
  }

  .section-company-outline {
    padding-bottom: 6rem;
  }

  .back-company-outline {
    width: 90%;
    margin: 0 auto;
    margin-top: 50px;
    margin-bottom: 30px;
    height: 80px;
    background-size: 400%;
    background-position: center;
  }

  .under {
    width: 85%;
    margin: 0 auto;
    padding-top: 1em;
    padding-bottom: 1em;
  }

  .outline-table .under .wp-block-column {
    margin-bottom: .5rem;
  }

  .history-table .under .wp-block-column {
    margin-bottom: .5rem;
  }

  .back-history {
    width: 90%;
    margin: 0 auto;
    margin-top: 50px;
    margin-bottom: 30px;
    height: 80px;
    background-size: 400%;
    background-position: center;
  }

  .history-table {
    padding-bottom: 6rem;
  }

  .history-table .table-bold {
    font-size: .9em;
  }

  .back-group-companies {
    width: 90%;
    margin: 0 auto;
    margin-top: 50px;
    margin-bottom: 30px;
    height: 80px;
    background-size: 400%;
    background-position: center;
  }

  .section-group-companies {
    padding-bottom: 50px;
  }

  .section-group-companies p {
    width: 90%;
    margin: 0 auto;
  }

  .back-office {
    width: 90%;
    margin: 0 auto;
    margin-top: 50px;
    margin-bottom: 30px;
    height: 80px;
    background-size: 400%;
    background-position: center;
  }

  .sapporo {
    margin-left: inherit;
  }

  .office-text {
    padding-left: 20px;
  }

  .address {
    width: 90%;
    margin: 0 auto;
    margin-top: 20px;
    margin-bottom: 30px;
  }

  .section-office .wp-block-image {
    width: 90%;
    margin: 0 auto;
  }

  .wp-block-group.map {
    width: 90%;
    margin: 0 auto;
    margin-top: 30px;
  }

  .eigyousyo {
    border-bottom: 0;
  }

  .tomakomai {
    margin-right: inherit;
  }

  .kana-links a {
    font-size: 1rem;
    padding: 5px 20px;
    margin-top: 20px;
  }

  .maker-list>div {
    padding: 0 10px;
  }

  .maker-list h2 {
    font-size: 2rem;
  }

  .maker-list h2::after {
    width: 83%;
  }

  .maker-list h2 span {
    top: 1.5rem;
    left: 2rem;
  }

  .maker-list ul {
    padding-left: 0;
  }

  .maker-list ul li {
    display: block;
    width: 100%;
    text-align: center;
    font-size: .8rem;
  }

  .maker-list ul li:nth-child(2n) {
    padding-left: 0rem;
  }

  h2.h2-contact {
    margin-top: 30px;
    font-size: 1.5rem;
  }

  .table-small.tel {
    line-height: 1rem;
  }

  .contact-table .under {
    padding: 10px 20px 0 20px;
    width: 100%;
  }

  .contact-table .wp-block-column {
    margin-bottom: .5rem;
  }

  .page-id-13 .contact-form {
    padding-top: 6rem;
  }

  .contact-text {
    width: 90%;
    margin: 0 auto;
    text-align: left;
  }

  .president-thought-contents p:last-of-type span {
    font-size: 1.6em;
  }

  /* single */
  .normal-single-title {
    padding-bottom: 4rem;
  }

  .normal-single-title h1 {
    width: 90%;
    margin: 0 auto;
    font-size: 1.5rem;
    line-height: 2.3rem;
  }

  .normal-single-title time {
    font-size: .9rem;
  }
  /* single */
}
