@charset "UTF-8";
/*====================================
　早見表
  $conts-width
  $color-yellow  $color-blue
  $font-color-black
  $font-family-gothic  $font-family-mincho

  full-width
  flex-column  flex-center
  media(320px ＝ xs   480px ＝ s   768px ＝ m   1000px ＝ l)
  fs(max,1000～768px,768～480px,480～320px,min)  fs2(max,min)
  mt(max,min) mb mtb  pt pb ptb

====================================*/
/*====================================

/*----------------------------------
  Structure
----------------------------------
0. 共通
1. トップ
  1.1	メインイメージ
  1.2 トップナビ
2. 
3. 

====================================*/
/* 共通
--------------------------------------------------- */
table.sukitto_01 {
  border-collapse: collapse;
  width: 100%;
  margin: 0 0 10px;
}

table.sukitto_01 td,
table.sukitto_01 th {
  border-bottom: 2px dotted #DDD;
  padding: 10px 0 10px;
  text-align: left;
}

table.sukitto_01 th {
  width: 25%;
}

table.sukitto_01 td {
  width: 75%;
}

@media only screen and (max-width: 480px) {
  table.sukitto_01 th {
    width: 100%;
    display: block;
    border-bottom: none;
    padding: 10px 0 0;
    font-weight: bold;
  }
  table.sukitto_01 td {
    width: 100%;
    display: block;
    padding: 5px 0 10px;
  }
}
table.recruit_table input,
table.recruit_table button,
table.recruit_table textarea {
  padding: 4px 4px;
  font-size: 110%;
}

table.recruit_table td,
table.recruit_table th {
  padding: 15px 0;
  vertical-align: top;
}

.recruit_submit {
  padding: 15px 0;
  text-align: center;
}

.recruit_submit input {
  font-size: 110%;
  padding: 8px 12px;
}

.entry-form-thanks {
  padding: 30px 0;
}

a.textbtn_type_a {
  display: inline-block;
  background: url(../images/marker_link_blue.png) no-repeat left center;
  padding: 5px 10px 5px 15px;
  color: #023a80;
  text-decoration: none;
  font-size: 120%;
}

a.textbtn_type_a:hover {
  color: #2684DC;
}

.service_menu_more {
  margin: 15px 0 0;
}

.wrapper > main > section header > h1 {
  padding: 20px 0 20px 80px;
  background: url(../images/marker_big.png) no-repeat left center;
  font-size: 160%;
  line-height: 1;
  color: #333;
}

/* 左よせバージョン */
.wrapper > main > section header > h1.entry-title_type1 {
  font-weight: normal;
  font-size: 210%;
  line-height: 1.1;
}

.wrapper > main > section header > h1.entry-title_type1 span {
  font-size: 70%;
  line-height: 1;
  color: #00618e;
  font-weight: bold;
}

/* メインカラムが１カラム */
.wrapper > main > section .single {
  padding-top: 50px;
}

.wrapper > main > section .sub-title {
  padding: 20px 0 20px 50px;
  background: url(../images/marker_mid.png) no-repeat left center;
  font-size: 140%;
  line-height: 1;
  color: #816143;
  margin: 0 0 40px;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
}

.wrapper > main > section .sub-title-s {
  padding: 10px 0 8px 32px;
  background: url(../images/marker_small.png) no-repeat left center;
  font-size: 120%;
  line-height: 1;
  color: #816143;
  margin: 0 0 20px;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
}

.wrapper > main > section .sub-title-sg {
  padding: 10px 0 8px 32px;
  background: url(../images/marker_small.png) no-repeat left center;
  font-size: 120%;
  line-height: 1;
  color: #00618e;
  margin: 0 0 20px;
}

.wrapper > main > section .sub-title-ss {
  padding: 0px;
  font-size: 110%;
  line-height: 1;
  color: #00618e;
  margin: 0 0 10px;
}

.wrapper > main > section .single .cell {
  margin-bottom: 60px;
}

.wrapper > main > section .single .cell p {
  padding: 0 20px;
  margin-bottom: 20px;
}

.wrapper > main > section .single .cell_in {
  padding: 0 20px;
  margin-bottom: 20px;
}

/* メインカラムが２カラム */
.wrapper > main > section .double {
  padding-top: 50px;
  overflow: hidden;
}

.wrapper > main > section .double .cell {
  margin: 0 2% 60px;
  width: 46%;
  float: left;
}
@media only screen and (max-width: 480px) {
  .wrapper > main > section .double .cell {
    width: 96%;
    float: none;
  }
}

.wrapper > main > section .cell_recruit_in {
  padding: 0 20px;
  margin-bottom: 40px;
}

.wrapper > main > section p.p-end {
  margin-bottom: 20px;
}

.wrapper > main > section ol {
  margin-bottom: 20px;
  margin-left: 0;
  padding-left: 30px;
}

.wrapper > main > section ol li {
  margin-bottom: 10px;
  margin-left: 0;
  padding-left: 0;
}

.wrapper > main > section header#service_print {
  background: url(../images/tc-img01.png) no-repeat right top;
  background-size: auto 120%;
}

.wrapper > main > section header#service_sports {
  background: url(../images/tc-img02.png) no-repeat right center;
  background-size: auto 100%;
}

/* トップページ
--------------------------------------------------- */
.top-contents {
  border-bottom: solid 1px #4d4d4d;
}
@media only screen and (max-width: 480px) {
  .top-contents__business {
    margin-bottom: 20px;
  }
}
@media only screen and (min-width: 481px) {
  .top-contents__business > div {
    border-right: solid 1px #4d4d4d;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
.top-contents__business .small {
  font-size: 80%;
}
.top-contents__business a {
  display: block;
  color: #000;
  font-size: clamp(20px, 2.604vw, 27px);
  text-align: center;
  font-weight: normal;
  line-height: 1.5em;
  background: url(../images/tc-bg01.png) no-repeat center center;
  background-size: 100% auto;
  padding: 30px 0;
}
@media only screen and (max-width: 480px) {
  .top-contents__business a {
    max-width: 330px;
    margin: auto;
    padding: 15px 0;
  }
}
.top-contents__business a:hover {
  text-decoration: none;
  opacity: 0.7;
}
.top-contents__img01 {
  background: url(../images/tc-img01.png) no-repeat center center;
}
.top-contents__img02 {
  background: url(../images/tc-img02.png) no-repeat center center;
}
.top-contents__img03 {
  background: url(../images/tc-img03.png) no-repeat center center;
}
.top-contents__img01, .top-contents__img02, .top-contents__img03 {
  background-size: contain;
  aspect-ratio: 390/290;
  margin: auto;
  width: 70%;
  margin-bottom: 20px;
}
.top-contents__aboutus > div {
  min-height: clamp(160px, 16vw, 210px);
}
.top-contents__aboutus > div:nth-child(1) {
  background: url(../images/tc-img04-2.jpg) no-repeat right 30% center;
  background-size: auto 120%;
}
@media only screen and (max-width: 480px) {
  .top-contents__aboutus > div:nth-child(1) {
    background-position: left center;
  }
}
.top-contents__aboutus > div:nth-child(2) {
  background: url(../images/tc-img05.jpg) no-repeat right 30% center;
  background-size: auto 120%;
}
@media only screen and (max-width: 480px) {
  .top-contents__aboutus > div:nth-child(2) {
    background-position: left center;
  }
}
.top-contents__aboutus > div:nth-child(3) {
  background: url(../images/tc-img06.jpg) no-repeat right 30% center;
  background-size: auto 120%;
}
@media only screen and (max-width: 480px) {
  .top-contents__aboutus > div:nth-child(3) {
    background-position: left center;
  }
}
.top-contents__aboutus > div a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  position: relative;
}
.top-contents__aboutus > div a:hover {
  text-decoration: none;
}
.top-contents__aboutus > div a::before {
  content: "";
  display: inline-block;
  -webkit-clip-path: polygon(30% 0, 100% 0, 100% 100%, 30% 100%, 0 50%);
          clip-path: polygon(30% 0, 100% 0, 100% 100%, 30% 100%, 0 50%);
  background-color: #fff;
  position: absolute;
  width: 45%;
  height: 100%;
  right: 0;
}
.top-contents__bg {
  width: 40%;
  color: #000;
  font-size: clamp(20px, 2vw, 24px);
  font-weight: normal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  z-index: 1;
}
@media only screen and (max-width: 768px) {
  .top-contents__bg {
    font-size: clamp(18px, 3.75vw, 20px);
  }
}

.top-info .column-box__baseright {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .top-info .column-box__baseright {
    border-left: solid 1px #4d4d4d;
  }
}
.top-info__note {
  padding: 5%;
  border-bottom: solid 1px #4d4d4d;
}
@media only screen and (max-width: 480px) {
  .top-info__note {
    padding: 10% 8%;
  }
}
.top-info__note .inner {
  max-width: 1200px;
  margin: auto;
}
.top-info__news {
  padding: 5%;
  border-bottom: solid 1px #4d4d4d;
}
@media only screen and (max-width: 480px) {
  .top-info__news {
    padding: 10% 8%;
  }
}
.top-info__insta {
  padding: 10%;
}
@media only screen and (max-width: 480px) {
  .top-info__insta {
    padding: 10% 8%;
  }
}
.top-info__insta .insta-test {
  max-width: 100%;
  margin-bottom: 50px;
}

.note-rss-feed {
  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-bottom: 20px;
}
.note-rss-feed .note-item {
  width: 31%;
}
@media only screen and (max-width: 480px) {
  .note-rss-feed .note-item {
    width: 100%;
    margin-bottom: 20px;
  }
}
.note-rss-feed .note-item img {
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 28/19;
}
.note-rss-feed .note-item a {
  color: #000;
  font-size: 16px;
}
.note-rss-feed .note-item a:hover img {
  opacity: 0.8;
}
.note-rss-feed .note-item h3 {
  font-size: 16px;
  font-weight: 500;
}
.note-rss-feed .note-item h3 small {
  font-size: 80%;
  color: #4d4d4d;
  display: block;
}

.post-news-list {
  margin-bottom: 20px;
}
.post-news-list li {
  font-size: clamp(15px, 3.125vw, 18px);
  list-style: none;
  margin-bottom: 1em;
  font-weight: normal;
  color: #000;
}
.post-news-list li .news-date {
  display: inline-block;
  width: 130px;
}
@media only screen and (max-width: 480px) {
  .post-news-list li .news-date {
    display: block;
    margin-bottom: 0.5em;
  }
}
.post-news-list li a {
  color: #000;
}

.top-bnr {
  max-width: 370px;
  margin: 30px auto 0;
}

.bnr-mitumori {
  container-type: inline-size;
  border: solid 1px #4d4d4d;
  border-radius: 15px;
  margin-bottom: 20px;
  padding: 0.7em 1em;
}
.bnr-mitumori .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}
.bnr-mitumori img {
  width: 36%;
  height: auto;
  max-width: 100%;
}
.bnr-mitumori .btn-style01 {
  text-align: center;
  display: inline-block;
}
.bnr-mitumori .btn-style01 a {
  font-size: 15px;
  padding: 0.5em 0.7em;
}
.bnr-mitumori .btn-style01 a::before {
  margin-right: 0.5em;
}
@container (width <= 300px) {
  .bnr-mitumori .inner {
    display: block;
  }
  .bnr-mitumori img {
    max-width: 100px;
    width: 80%;
  }
  .bnr-mitumori .btn-style01 {
    display: block;
  }
  .bnr-mitumori .btn-style01 a {
    font-size: 18px;
    display: block;
  }
}

.bnr-kumiai {
  display: block;
  border: solid 1px #4d4d4d;
  text-align: center;
  border-radius: 15px;
  padding: 0.7em 1em;
}
.bnr-kumiai img {
  max-width: 100%;
  vertical-align: bottom;
}

/* おしらせ
------------------------------------------------------------- */
.wrapper > main > section .news_list {
  padding: 80px 0 20px;
}

.wrapper > main > section .cate_list_body {
  padding: 0 0 0px;
  margin: 0 0 80px;
}

.wrapper > main > section .cate_list_body .cate_list_haed {
  font-size: 140%;
}

.wrapper > main > section .cate_list_body .cate_list_haed span {
  font-size: 70%;
}

.wrapper > main > section .news_list .textlink-return {
  border-top: 1px dotted #CCC;
  margin-top: 20px;
  text-align: right;
}

.wrapper > main > section .news_list .cate_list_haed {
  margin: 0 0 20px;
  padding: 0 0 5px;
  border-bottom: 1px dotted #CCC;
}

.wrapper > main > section .news_list .cate_list_content {
  border: 1px dotted #DDD;
  padding: 25px 30px 50px;
}

/* 会社案内
------------------------------------------------------------- */
.daihyou_name {
  display: block;
  text-align: right;
  /*  font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif; */
}

.photo_position_r {
  float: right;
  padding: 0 0 10px 10px;
}

.company.photo_position_r {
  width: 28%;
  height: auto;
}

@media only screen and (max-width: 480px) {
  .company.photo_position_r {
    width: 50%;
  }
}
/* 採用情報
------------------------------------------------------------- */
.cell_recruit_in .photo_position_r {
  width: 28%;
  height: auto;
}

@media only screen and (max-width: 480px) {
  .cell_recruit_in .photo_position_r {
    width: 50%;
  }
}
/* サービス
------------------------------------------------------------- */
.wrapper > main > section > header#service_print {
  background: url(../images/contents/icon_print.jpg) no-repeat right center;
}

.wrapper > main > section > header#service_sports {
  background: url(../images/contents/icon_sports.jpg) no-repeat right center;
}

.wrapper > main > section > header#service_solution {
  background: url(../images/contents/icon_solution.jpg) no-repeat right center;
}

.service_menu_list {
  margin: 15px 0 0;
  color: #00618e;
  list-style-type: none;
}