@charset "utf-8";
/*
Template:birth_tcd057
Theme Name:birth_tcd057 child
Version:1.4.6
*/

/* common */
body {
  background-color: #fbfbfb;
  font-family: "Gothic Medium BBB"!important;
}
body, input, textarea,
.rich_font, .p-vertical {
/*  font-family: a-otf-ud-shin-maru-go-pr6n, sans-serif!important;
  font-display: swap;*/
}

@font-face {
  font-family: "design_plus_woff_16";
  font-style: normal;
  font-weight: 400;
  src: url("https://sei-ryu-kai.or.jp/wp-content/themes/birth_tcd057/fonts/design_plus.woff?v=1.6") format("woff");
  font-display: swap;
}

@font-face {
  font-family: "design_plus_woff_15";
  font-style: normal;
  font-weight: 400;
  src: url("https://sei-ryu-kai.or.jp/wp-content/themes/birth_tcd057/fonts/design_plus.woff?v=1.5") format("woff");
  font-display: swap;
}

@font-face {
  font-family: "ab_woff";
  font-style: normal;
  font-weight: 400;
  src: url("https://webfonts.sakura.ne.jp/ab.woff") format("woff");
  font-display: swap;
}
#main_contents {
  background-color: #fbfbfb;
}
body:not(.home) #main_contents {
  padding-bottom: 90px;
}
#main_col {
  margin-bottom: 50px;
}
.post_content > *:first-child {
  margin-top: 0!important;
}
.post_content .style3a:not(.mt0),
.post_content .style3b:not(.mt0),
.post_content .style4a:not(.mt0),
.post_content .style4b:not(.mt0),
.post_content .style5a:not(.mt0),
.post_content .style5b:not(.mt0),
.post_content .style6:not(.mt0) {
  margin-bottom: 30px!important;
}
.post_content h2.typeSmall {
  line-height: 1;
  margin-bottom: 15px;
  padding-top: 0;
  font-weight: normal;
}
.post_content h3 {
  margin-top: 50px!important;
}
.post_content h4:not(.mt0) {
  margin-top: 30px!important;
}
body .post_content .style3b {
  padding: .7em .9em .6em;
  background-color: #b0cfd2!important;
  font-size: 20px;
  color: #FFF;
}
body.page .post_content {
  font-size: 14px;
}
.post_content p {
  line-height: 2;
}
.post_content img {
  vertical-align: bottom;
}
a.button.line {
  display: block;
  line-height: 1.4;
  padding: 5px 0;
  border: solid 4px #b0cfd2;
  background-color: #b0cfd2;
  text-align: center;
  text-decoration: none;
  color: #FFF;
}
a.button.line:hover {
  text-decoration: none;
}
p.short_desc {
  line-height: 1.8!important;
}
.post_col table {
  margin-bottom: 0;
}
.post_content td,
.post_content th {
  line-height: 1.8;
  border: solid 1px #6698A1;
}
.post_content table:not(.list) th {
  background-color: #b0cfd2;
  color: #FFF;
}
table.list tr.bg th,
table.list tr.bg td {
  background-color: #b0cfd2;
}
table.list tr th {
  border-right: none;
  background-color: transparent;
}
table.list tr td {
  border-left: none;
}
table.type1 th {
  width: 150px;
}
table.type2 th:first-child {
  width: 150px;
}
table.type2 th,
table.type2 td {
  text-align: center;
  vertical-align: middle;
}
table.type2 tr:first-child th:first-child {
/*  width: 150px; */
}
table.type3 th {
  width: 33%;
}
table.type3 th:nth-child(1) {

}
.mt0 {
  margin-top: 0!important;
}
.post_content .linkType1,
.post_content .linkType1:hover {
  display: block;
  width: 100%;
  padding: .5em .8em .3em 1em;
  background-color: #f5f5f5;
  box-shadow: 0px 2px 0px 0px #f2f2f2;
  box-sizing: border-box;
  text-decoration: none;
  color: #666;
  font-size: 14px;
}

/* header */
#header {
  margin-top: 25px;
  margin-bottom: 80px;
}
#header_inner {
  height: 125px;
}
.pc #logo_text,
.pc #logo_image {
  top: 45px;
  left: calc(50% - 83px);
}
#header .subTitle {
  position: absolute;
  top: 5px;
  left: 0;
  letter-spacing: 1px;
  font-size: 11.2px;
}
#header_button {
  margin: 18px 0 0 36px;
}
#header_button a:not(:hover) {
  background-color: #00b9ef!important;
}
.pc #global_menu ul ul a:not(:hover) {
  background-color: #00b9ef!important;
}
.pc #global_menu > ul > li {
  margin: 0 0 0 30px;
}
#menu_button {
  
}
#menu_button span {
  /*background-color: #17BBEF;*/
}
#menu_button:before {
  content: ""!important;
  top: 2px!important;
  left: 0!important;
  background-image: url(./images/common/menu.png);
  background-repeat: no-repeat;
  background-position: center center;
  height: 56px!important;
  width: 56px!important;
  color: #FFF;
}
#menu_button:after {
/*  content: "MENU";
  position: absolute;
  bottom: -15px;
  display: block;
  width: 100%;
  font-family: "Jun 501", "M PLUS Rounded 1c", a-otf-ud-shin-maru-go-pr6n, sans-serif;
  color: #FFF;*/
}
.pc #global_menu > ul > li {
  position: relative;
  margin-left: 15px;
}
.pc #global_menu > ul > li > a {
  letter-spacing: 1px;
  font-size: 12px;
}
.pc .single-work #global_menu,
.pc .single-hangout #global_menu {
  display: none!important;
}
/*
.pc .category-work #global_menu > ul > li:nth-child(1) > a:after,
.pc .category-hangout #global_menu > ul > li:nth-child(2) > a:after,
.pc .single-work #global_menu > ul > li:nth-child(1) > a:after,
.pc .single-hangout #global_menu > ul > li:nth-child(2) > a:after,
.pc .about #global_menu > ul > li:nth-child(3) > a:after {
  position: absolute;
  top: 30px;
  left: calc(50% - 14px);
  display: block;
  content: "";
  width: 31px;
  height: 28px;
  background-image: url("./images/common/ic_check.png");
  background-repeat: no-repeat;
  background-position: 0 0;
}*/
#header #logoSub {
  position: absolute;
  left: 0;
  top: 25px;
}
#header .backLink {
  position: absolute;
  top: 26px;
  left: -60px;
}
#header .backLink img {
  width: 20px;
}
#header .catName {
  position: absolute;
  top: 25px;
  left: 75px;
  padding: 14px 25px;
  border-left: solid 2px #B3B3B3;
  letter-spacing: 1px;
  font-size: 12px;
}
/*
#header .catName:after {
  position: absolute;
  top: 6px;
  left: calc(50% - 14px);
  display: block;
  content: "";
  width: 31px;
  height: 28px;
  background-image: url("./images/common/ic_check.png");
  background-repeat: no-repeat;
  background-position: 0 0;
}*/
#header #sns {
  position: absolute;
  left: calc(50% - 45px);
  bottom: 0;
}
#header #sns ul {
  display: flex;
}
#header #sns ul li {
  margin-right: 10px;
}
#header #sns ul li:last-child {
  margin-right: 0;
}
#header #sns ul li a {
  display: inline-block;
  width: 18px;
  height: 18px;
  border-radius: 9px;
  background-color: #FFF;
  text-align: center;
}
#header #sns ul li a i {
  line-height: 18px;
  color: #FFF;
}

/* footer */
body:not(.home) #copyright {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 90px;
  line-height: 90px;
  border-top: none;
  font-size: 12px;
  z-index: 10;
}
#copyright {
  letter-spacing: 1px;
}

/* TOP */
.home #topMenu {
  display: flex;
  width: 1180px;
  margin: 0 auto 90px;
  flex-wrap: wrap;
  align-items: center;
}
.home #topMenu li {
  display: table;
  width: calc(1180px / 3);
  border: solid 1px #FFF;
  box-sizing: border-box;
  background-color: #17BBEF;
}
.home #topMenu li.menuInfoCell {
  /*width: 100%;*/
  background-color: #FAA520;
}
.home #topMenu li.menuRecruit {
  background-color: #7AC943;
}
.home #topMenu li a,
.home #topMenu li span {
  display: table-cell;
  height: 100px;
  vertical-align: middle;
  text-align: center;
  line-height: 1.6;
  letter-spacing: 2px;
  font-size: 18px;
  font-family: "Jun 501", "M PLUS Rounded 1c", a-otf-ud-shin-maru-go-pr6n, sans-serif;
  font-display: swap;
  color: #FFF;
}
.home #main_contents .headline {
  margin-left: 8px;
  margin-bottom: 30px;
  letter-spacing: 12px;
}
.index_content {
  padding-top: 45px;
  background-color: #FBFBFB;
}
.index_content:last-of-type {
  margin-bottom: 0;
}
.home #index_intro {
  top: 0;
}
.home #index_intro p {
  margin-bottom: 15px;
  letter-spacing: 1px;
}
.home #index_intro .desc {
  line-height: 1.8;
}
.home #main_contents #index_course_list {
  margin-top: 0;
}
.home #main_contents #index_course_list span {
  display: block;
  padding: 38px 38px 28px;
  background: #fff;
  height: 100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
.home #main_contents #index_blog .headline,
.home #main_contents #index_gmap .headline {
  margin-bottom: 0;
}
.home .fullWidth {
  padding-top: 100px;
  overflow: hidden;
}
.home .fullWidth img {
  width: 100%;
  height: auto;
}
.home #menuInfoArea {
  position: fixed;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  background-color: rgba(0,0,0,0.6);
  text-align: center;
}
.home #menuInfoArea .menuInfoAreaInner {
  position: relative;
  background-color: #fff;
  width: 600px;
  height: 500px;
  margin: 100px auto 0;
  padding: 50px;
  overflow-y: scroll;
}
.home #menuInfoArea h2 {
  margin-bottom: 50px;
  font-family: "Jun 501", "M PLUS Rounded 1c", a-otf-ud-shin-maru-go-pr6n, sans-serif;
  font-size: 29px;
}
.home #menuInfoArea p {
  line-height: 2.5;
  margin-bottom: 100px;
  font-family: "Jun 501", "M PLUS Rounded 1c", a-otf-ud-shin-maru-go-pr6n, sans-serif;
  font-weight: bold;
  font-size: 20px;
}
.home #menuInfoArea .image {
  margin-bottom: 50px;
  font-family: "Jun 501", "M PLUS Rounded 1c", a-otf-ud-shin-maru-go-pr6n, sans-serif;
}
.home #menuInfoArea .close {
  position: absolute;
  top: 0;
  right: 0;
  padding: 10px 15px;
  background-color: #444;
  cursor: pointer;
  font-size: 14px;
  color: #FFF;
}

/* 固定ページ */
body.page #article .post_content b,
body.page #article .post_content strong {
  font-weight: normal;
}
#page_header {
  display: none;
}

/* ABOUT */
body.about #main_contents {
  border-top: solid 1px #fbfbfb;
}
body.about #main_contents #main_col {
  margin-top: 65px;
}
body.about .post_content h1 {
  position: relative;
  margin-bottom: 60px;
  letter-spacing: 1px;
  font-size: 14px;
}
/*
body.about .post_content h1:after {
  position: absolute;
  top: 5px;
  left: 10px;
  display: block;
  content: "";
  width: 31px;
  height: 28px;
  background-image: url("./images/common/ic_check.png");
  background-repeat: no-repeat;
  background-position: 0 0;
}*/
body.about .post_content h2 {
  font-size: 14px;
}
body.about .post_content p {
  margin-bottom: 20px;
}
body.about .post_content ul,
body.about .post_content ul li {
  margin-left: 0;
  list-style: none;
}
body.about .post_content {
  position: relative;
}
body.about .post_content #conten1 {
  margin-bottom: 50px;
}
body.about .post_content #conten2 {
  position: absolute;
  top: 0;
  right: 0;
  width: 275px;
}
body.about .post_content #conten3 {
  margin-bottom: 80px;
}
body.about .post_content #conten3 li span:first-child {
  margin-right: 50px;
}

/* archive */
body.archive #main_contents h1 {
  text-align: center;
}
body.archive #main_contents #main_col {
  margin-top: 50px;
}
body.archive #main_contents #blog_list {
  margin-top: 50px;
}
body.archive #main_contents .page-numbers .page-numbers.current {
  background-color: #CCC!important;
  color: #FFF;
}

/* single */
/*
.single-post #main_col #article p {
    line-height: 3.4;
    font-weight: bold;
    font-size: 120%;
}*/
.single #main_col {
  margin-bottom: 120px;
}
#post_title {
  margin-bottom: 60px;
}
#post_title img {
  /*width: 100%;
  height: auto;*/
  vertical-align: bottom;
}
#blog_list .item {
  width: calc((100% - 150px) / 4);
  height: auto;
  margin-right: 50px;
  margin-bottom: 50px;
  padding: 0;
  border: none;
}
#blog_list .item:nth-child(4n) {
  margin-right: 0;
}
.itemThumbs {
  margin-bottom: 60px;
}
.itemThumbs ul {
  display: flex;
  flex-wrap: wrap;
}
.itemThumbs ul li {
  width: 152px;
}
.itemThumbs ul img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
.textContent {
  display: flex;
  padding-top: 20px;
  border-top: solid 1px #B3B3B3;
  line-height: 2.2;
}
.textContent .date {
  width: 80px;
  margin-right: 20px;
  line-height: 1.9;
  font-size: 13px;
}
.textContent .text {
  width: calc(100% - 100px);
}
.textContent p {
  line-height: 1.9;
  font-family: "Gothic Medium BBB","Jun 501";
  font-size: 14px;
}

@media only screen and (max-width:1280px) {
  /* footer */
  #footerContent2 #footerContent2Inner {
    display: block;
    width: 100%;
    padding: 80px 0;
  }
  #footerNav {
    margin-bottom: 80px;
  }
  #footerNav .footerNavList {
    width: calc(100% / 3);
  }
  #fotterInfo {
    text-align: center;
  }
}

@media only screen and (max-width:600px) {
  /* common */
  .pc {
    display: none;
  }
  .spFloatLeft {
      margin-bottom: 30px;
  }
  .spFloatLeft.img {
      text-align: center;
  }
  table.type1 th {
    width: 80px;
  }
  table.type2 th:first-child {
    width: auto;
  }
  .col2.noSpace ul {
    margin-left: 0;
  }
  .col2.noSpace li {
    margin-right: 0;
    list-style: none;
  }

  /* footer */
  #footerContent2 #footerContent2Inner {
    display: block;
    width: 100%;
    padding: 80px 0;
  }
  #footerNav {
    flex-wrap: wrap;
    margin-bottom: 80px;
  }
  #footerNav .footerNavList {
    width: 50%;
    padding: 0 10px;
    box-sizing: border-box;
  }
  #footerNav #footerNavList2 {
    border-right: none;
  }
  #footerNav #footerNavList3 {
    border-right: solid 1px #FFF;
  }
  #fotterInfo {
    text-align: center;
  }
  #fotterLogo img {
    width: 190px;
    height: auto;
  }

  /* top */
  .home #main_contents #index_course_list span {
    padding: 20px 20px 20px;
  }
  .home #topMenu {
    margin-bottom: 30px;
  }
  .home #topMenu li {

  }
  .home #topMenu li a {
    height: 60px;
    font-size: 14px;
  }
  .home #menuInfoArea .menuInfoAreaInner {
    width: 80%;
    height: 400px;
    margin: 100px auto 0;
    padding: 50px 25px;
  }
  .home #menuInfoArea h2 {
    margin-bottom: 30px;
    line-height: 1.4;
    font-size: 20px;
  }
  .home #menuInfoArea p {
    line-height: 2;
    margin-bottom: 70px;
    font-size: 14px;
  }

  /* ABOUT */
  body.about .post_content ul,
  body.about .post_content ul li {

  }
  body.about .post_content {

  }
  body.about .post_content #conten2 {
    position: static;
    width: 100%;
  }
  body.about .post_content #conten3 ul li {
    display: flex;
  }
  body.about .post_content #conten3 li span:first-child {
    margin-right: 10px;
  }

  /* single */
  .textContent {
    display: block;
    padding-top: 25px;
  }
  .textContent .date {
    width: auto;
    margin-bottom: 20px;
  }
  .textContent .text {
    width: auto;
  }
}
@media only screen and (min-width:600px) {
    /* common*/
    .sp {
      display: none;
    }
    .spFloatLeft {
      float: left;
    }
    .spFloatRight {
      float: right;
    }
    .col2 li {
      float: left;
      width: 49%;
      margin-right: 2%;
    }
    .col2.noSpace ul {
      margin-left: 0;
    }
    .col2.noSpace li {
      width: 50%;
      margin-right: 0;
      list-style: none;
    }
    .col2 li:nth-child(2n) {
      margin-right: 0;
    }
    .col3 li {
      float: left;
      width: 32%;
      margin-right: 2%;
    }
    .col3 li:nth-child(3n) {
      margin-right: 0;
    }
    .spWidth20 {
      width: 20%;
    }
    .spWidth25 {
      width: 25%;
    }
    .spWidth30 {
      width: 30%;
    }
    .spWidth35 {
      width: 35%;
    }
    .spWidth40 {
      width: 40%;
    }
    .spWidth45 {
      width: 45%;
    }
    .spWidth50 {
      width: 50%;
    }
    .spWidth55 {
      width: 55%;
    }
    .spWidth60 {
      width: 60%;
    }
    .spWidth65 {
      width: 65%;
    }
    .spWidth70 {
      width: 70%;
    }
    .spWidth75 {
      width: 75%;
    }
    .spWidth80 {
      width: 80%;
    }

    /* side */
    #side_col {
      margin-top: 0;
    }
    #left_col {
      float: none;
      width: 912px;
      margin-right: auto;
      margin-left: auto;
    }

    /* about */
  body.about .post_content #conten2 .aboutImage li {
    margin-bottom: 20px;
  }
}

@media only screen and (max-width:1280px) {
  /* common */

  /* header */
  #header {
    height: auto!important;
    padding: 20px 0;
  }
  #header #logo_image {
    top: 59%;
  }
  .single #header #logo_image {
    left: 60px;
  }
  #header #logo_image img.mobile_logo_image {
    /*width: 260px;
    height: auto;*/
  }
  #header .subTitle {
    top: 8px;
    left: 20px;
    font-size: 10px;
  }
  #header #menu_button {
    top: -4px;
    right: 10px;
  }
  #menu_button:before {
    color: #666666;
  }
  #header #logoSub {
    display: none;
  }
  #header #sns {
    bottom: 20px;
  }
  #header #logo_image {
    top: 25px;
  }
  #mobile_menu #global_menu a:hover {
    color: #666!important;
  }
  #header .backLink {
    top: 6px;
    left: 10px;
  }
  #header .backLink img {
    /*width: 30px;*/
  }

  /* top */
  .home .index_content,
  .home .index_content:first-of-type {
    padding-top: 50px;
  }
  .home #main_contents .headline {
    font-size: 30px;
  }
  .home #main_contents #index_wide_content .headline {
    margin-left: 20px;
    letter-spacing: 10px;
    font-size: 16px;
  }
  .home #main_contents #index_blog {
    margin-top: 50px;
  }
  .home #main_contents #index_blog_inner {

  }
  .home #main_contents .sub_title {
    margin-bottom: 30px;
  }
  .home #main_contents #index_blog_list {
    margin-top: 30px;
  }
  #index_company .left_area {
    text-align: center;
  }
  #index_company .left_area img {
    display: inline-block;
  }
  #index_company .left_area p {
    text-align: left;
  }
  .home .fullWidth {
    padding-top: 100px;
  }
  .home .fullWidth img {
    width: auto;
    height: 308px;/* 440 * 0.7 */
    margin-left: calc((100vw - 1015px) / 2); /* 1450 * 0.7 */
    margin-left: -webkit-calc((100vw - 1015px) / 2); /* 1450 * 0.7 */
  }
  .home #topMenu {
    width: 100%;
    margin-bottom: 60px;
  }
  .home #topMenu li {
    width: 50%;
  }

  /* single */
  #header .catName {
    display: none;
  }
  .itemThumbs {
    margin-bottom: 40px;
  }
}

@media only screen and (min-width:1001px) {
  #footer_content .item:nth-child(4),
  #footer_content .item:nth-child(5) {
    margin-bottom: 0;
  }
}

@media only screen and (max-width:1001px) {
  #post_title img {
    max-width: 100%;
    height: auto;
  }
}

@media only screen and (max-width:530px) {
  .itemThumbs ul li {
    width: 50%;
  }
  .itemThumbs ul li img {
    width: 100%;
    height: auto;
  }
}