@charset "utf-8";
.index-contents {
    margin-bottom: -90px;
}

body{
    font-family: "游ゴシック", YuGothic, "游ゴシック体","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ";
}

img {
  max-width:100%;
  height:auto;
}
a img {
    transition: 0.5s;
}

a:hover img {
    opacity: 0.5;
    transition: 0.5s;
}

p {
    margin-top: 0;
    margin-bottom: 0.6rem;
}

.page-ttl {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: url(/system_panel/uploads/images/h1.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top;
    flex-wrap: wrap;
    margin-bottom: 70px;
    padding-top: 70px;
    height: 220px;
    color: #fff;
}

.main-ttl-box {
    margin-bottom: 40px;
}

.main-ttl-box h2 {
    color: #006eb0;
    font-size: 270%;
    font-weight: 600;
    letter-spacing: 2px;
    margin-bottom: 5px;
}

.main-ttl-box p {
    font-size: 110%;
    font-weight: 500;
    letter-spacing: 1px;
}

.page-ttl h1 {
    width: 100%;
    letter-spacing: 4px;
}

.main-contents h3 {
    border-left: 5px solid #8c3737;
    color: #8c3737;
    font-size: 145%;
    font-weight: bold;
    letter-spacing: 0.05em;
    margin-bottom: 20px;
    padding: 5px 12px 5px;
}

/* table */

.table-style .row {
    border-bottom: 1px solid #cacaca;
    padding: 0.7em 0;
}

.table-style .row .table-th {
    color: #01306b;
    font-weight: bold;
}

.table-style .row .table-th p,.table-style .row .table-td p {
    margin-bottom: 0;
}

/* index */

.top-box01 {
    background-image: url(/system_panel/uploads/images/top_box01_bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    font-family: 'Noto Sans JP', sans-serif;
    padding: 95px 0 100px;
}

.top-box01 .top-box01-row {
    align-items: center;
}

.top-box01 .top-greeting-ttl {
    color: #006eb0;
    font-size: 48px;
    font-weight: 600;
    line-height: 72px;
    margin-bottom: 27px;
    position: relative;
}

.top-box01 .top-greeting-ttl::before {
    content: "";
    background-image: url(/system_panel/uploads/images/top_greeting_ttl.png);
    height: 60px;
    width: 312px;
    display: block;
    position: absolute;
    top: -29px;
    left: -30px;
}

.top-box01 .txt01 {
    font-weight: 500;
    letter-spacing: 0.07em;
    line-height: 30px;
    max-width: 95%;
}

.top-box01 .top-greeting-btn {
    border: 1px solid #006eb0;
    color: #006eb0;
    display: inline-block;
    font-weight: 500;
    letter-spacing: 0.1em;
    margin-top: 15px;
    padding: 0.6em 0.7em 0.8em;
    position: relative;
    text-align: center;
    transition: 0.5s;
    width: 68%;
}

.top-box01 .top-greeting-btn::before {
    content: "";
    background-color: #006eb0;
    height: 1px;
    width: 30px;
    display: block;
    position: absolute;
    top: 50%;
    right: -15px;
}

.top-box01 .top-greeting-btn p {
    margin: 0;
}

.top-box01 .top-greeting-btn:hover {
    opacity: 0.5;
    text-decoration: none;
    transition: 0.5s;
}

.top-box02 {
    padding: 80px 0;
    margin: 0 auto;
    background-color: #dee7ed;
}

.top-box02 .box02-con {
    max-width: 1100px;
}

.top-box02 .box02-con .box01 {
    padding: 0;
}

.top-box02 .box02-con .box02 {
    padding: 0;
    padding-top: 50px;
}

.top-box03 {
    background-image: url(/system_panel/uploads/images/top_box03_bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 90px 0 80px;
}

.top-box03 .box03-con {
    padding: 0;
    max-width: 1100px;
}

.top-box03 .box03-con .box01 {
    font-family: 'Noto Sans JP', sans-serif;
    margin: auto;
}

.top-box03 .box03-con .box01 img {
    margin-bottom: 10px;
}

.top-box03 .box03-con .box01 .top-blog-txt {
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 0.1em;
    margin-bottom: 35px;
    padding-left: 3px;
}

.top-box03 .box03-con .box01 .top-blog-btn {
    border: 1px solid #fff;
    color: #fff;
    display: inline-block;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.1em;
    padding: 0.6em 0.7em 0.8em;
    position: relative;
    text-align: center;
    transition: 0.5s;
    width: 75%;
}

.top-box03 .box03-con .box01 .top-blog-btn::before {
    content: "";
    background-color: #fff;
    height: 1px;
    width: 30px;
    display: block;
    position: absolute;
    top: 50%;
    right: -15px;
}

.top-box03 .box03-con .box01 .top-blog-btn p {
    margin: 0;
}

.top-box03 .box03-con .box01 .top-blog-btn:hover {
    opacity: 0.5;
    text-decoration: none;
    transition: 0.5s;
}

.top-box03 .box03-con .box02 {
    margin: auto;
}

.top-box03 .box03-con .box02 .blog-item {
    background-color: #fff;
    border-left: 5px solid #dcdcdc;
    font-weight: 500;
    display: flex;
    align-items: center;
    letter-spacing: 0.05em;
    margin-bottom: 15px;
    padding: 0.7em;
}

.top-box03 .box03-con .box02 .blog-link {
    display: flex;
    align-items: center;
}

.top-box03 .box03-con .box02 p, .top-box03 .box03-con .box02 .blog-link h3 {
    margin-bottom: 0;
}

.top-box03 .box03-con .box02 .blog-day {
    color: #6d6d6d;
    margin-right: 30px;
    padding-left: 15px;
}

.top-box03 .box03-con .box02 .blog-ttl {
    color: #3367a8;
    font-size: 16px;
}

.top-box04 {
    padding: 90px 0;
    margin: 0 auto;
    background-color: #dee7ed;
}

.top-box04 .top-box04-row {
    justify-content: center;
}

.top-box04 .box04-con .box01 {
    padding: 0 15px 0 0;
    text-align: right;
}

.top-box04 .box04-con .box02 {
    padding: 0 0 0 15px;
}

.top-box05 {
    background-image: url(/system_panel/uploads/images/top_box05_bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    font-family: 'Noto Sans JP', sans-serif;
    padding: 120px 0 110px;
}

.top-box05 .top-contact-bg {
    background-color: #fff;
    max-width: 800px;
    margin: 0 auto;
    padding: 34px 20px 33px;
    position: relative;
    text-align: center;
}

.top-box05 .top-contact-bg::before {
  content: "";
  background-image: url(/system_panel/uploads/images/top_contact_ttl.png);
  background-size: contain;
  background-repeat: no-repeat;
  height: 46px;
  width: 291px;
  display: block;
  position: absolute;
  top: -37px;
  left: 0;
  right: 0;
  margin: 0 auto;
}

.top-box05 .top-contact-bg .txt01 {
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0.05em;
    margin-bottom: 22px;
}

.top-box05 .top-tel-link {
    display: inline-block;
    margin-bottom: 30px;
}

.top-box05 .top-contact-bg .top-contact-btn {
    background-color: #8c3737;
    color: #fff;
    display: inline-block;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.1em;
    padding: 0.9em 0.7em 1.1em;
    position: relative;
    text-align: center;
    transition: 0.5s;
    width: 55%;
}

.top-box05 .top-contact-bg .top-contact-btn::before {
  content: "";
  background-image: url(/system_panel/uploads/images/top_mail_ico.png);
  background-size: cover;
  background-repeat: no-repeat;
  height: 21px;
  width: 30px;
  display: block;
  position: absolute;
  top: 18px;
  left: 45px;
}

.top-box05 .top-contact-bg .top-contact-btn::after {
    content: "";
    background-image: url(/system_panel/uploads/images/top_contact_line.png);
    background-repeat: no-repeat;
    background-size: cover;
    height: 1px;
    width: 30px;
    display: block;
    position: absolute;
    top: 50%;
    right: -15px;
}

.top-box05 .top-contact-bg .top-contact-btn p {
    margin: 0;
    padding-left: 35px;
}

.top-box05 .top-contact-bg .top-contact-btn:hover {
    opacity: 0.5;
    text-decoration: none;
    transition: 0.5s;
}


/*greeting*/

.greeting-name {
    font-weight: bold;
    letter-spacing: 1px;
    margin-top: 12px;
    text-align: center;
}

.greeting-txt {
    font-weight: 500;
    line-height: 30px;
}

.container.greeting-main-box {
    margin-bottom: 7%;
}

/* facility */

.facility-box-last {
    margin-bottom: 6rem;
}

.facility-item .txt {
    margin: 20px 0 30px;
}

.facility-tb {
    margin-bottom: 100px;
}

.tb-top {
    background-color: #e2e7ea;
    padding: 13px 20px 0 20px;
    border-top: 1px solid #cacaca;
    border-left: 1px solid #cacaca;
}

.facility-tb .tb-top:last-child {
    border-right: 1px solid #cacaca;
}

.tb-left {
    background-color: #f6f6f6;
    padding: 13px 20px 0 20px;
    border-left: 1px solid #cacaca;
    border-top: 1px solid #cacaca;
}

.facility-tb .row:last-child .tb-left {
    border-bottom: 1px solid #cacaca;
}

.tb-content {
    padding: 13px 20px 0 20px;
    border-top: 1px solid #cacaca;
    border-left: 1px solid #cacaca;
}

.tb-content.bottom {
    border-bottom: 1px solid #cacaca;
}

.tb-content.right {
    border-right: 1px solid #cacaca;
}

img.faci-photo {
    margin-bottom: 30px;
}

/* works */

.works-box {
    margin-bottom: 60px;
}

.works-box-last {
    margin-bottom: 6rem;
}

.works-item .txt {
    margin-top: 20px;
}

/* blog */

.blog-box,.blogdetail-box {
    margin-bottom: 10%;
}

.col-md-4 .blog-ttl {
    margin-top: 40px;
}

.blog-box .main-ttl-box,.blogdetail-box .main-ttl-box {
    margin-bottom: 20px;
}

.blog-box .main-ttl-box h2,.blogdetail-box .main-ttl-box h2 {
    color: #006eb0;
    font-size: 200%;
    font-weight: 600;
    letter-spacing: 2px;
    margin: 0 0 3px !important;
}

.blog-box .main-ttl-box p,.blogdetail-box .main-ttl-box p {
    font-size: 100%;
    font-weight: 500;
    letter-spacing: 1px;
}

.blog-box .webgene-item .webgene-item-info {
    display: flex;
}

.blog-box .webgene-item .webgene-item-info .blog-date {
    margin-right: 30px;
}

.blog-box .webgene-item,.detail-box .webgene-item {
    border-left: 5px solid #8c3737;
    background-color: #f3f3f3;
    padding: 0.7em 20px;
    margin: 15px 0;
}

.blog-box .col-md-8 .webgene-item {
    max-width: 95%;
}

.blog-box .webgene-item p {
    margin-bottom: 0;
}

/* blogdetail */

.blogdetail-box .webgene-item-info {
    border-bottom: 2px solid #dadada;
    display: flex;
    align-items: center;
    padding-bottom: 15px;
    margin-bottom: 25px;
    max-width: 95%;
}

.blogdetail-box .webgene-item-info .blog-day {
    font-weight: bold;
}

.blogdetail-box .webgene-item-info .category {
    background-color: #01306b;
    color: #fff;
    font-size: 90%;
    font-weight: bold;
    margin-left: 10px;
    padding: 0.2em 0.8em;
}

.blogdetail-box .webgene-item h2 {
    color: #8c3737;
    font-size: 160%;
    font-weight: bold;
    letter-spacing: 1px;
    margin-bottom: 20px;
}

/* company */

.company-box {
    margin: 50px auto 6rem;
}

img.about-photo {
    height: auto;
    max-width: 100%;
}

/* recruit */

.container.recruit-box {
    margin-bottom: 7%;
}
.recruit-box .text-link a {
    border: 1px solid #006eb0;
    color: #006eb0;
    font-weight: 500;
    letter-spacing: 0.1em;
    margin-top: 15px;
    padding: 0.6em 0.7em 0.8em;
    position: relative;
    text-align: center;
    transition: 0.5s;
    width: calc(100% - 20px);
    margin: 25px auto;
    max-width: 420px;
    display: block;
}

.recruit-box .text-link a::before {
    content: "";
    background-color: #006eb0;
    height: 1px;
    width: 30px;
    display: block;
    position: absolute;
    top: 50%;
    right: -15px;
}

.recruit-box .text-link a:hover {
    text-decoration: none;
    opacity: .5;
}
/* google-map */
.google-map {
    width: 100%;
    height: 350px;
}

.google-map iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

/* recruit */

 
.instagram-link a {
    display: block;
    max-width: 320px;
    text-align: center;
    padding: 20px;
    box-sizing: border-box;
    background-color: #c25a80;
    color: #fff;
    margin: 40px auto;
    font-weight: bold;
    font-size: 120%;
    letter-spacing: 2px;
}

.instagram-link a:hover {
    opacity: 0.5;
    text-decoration: none;
}

/* privacy */

.privacy-main-box {
    margin-bottom: 40px;
}

.privacy-main-box .main-ttl-box {
    margin-bottom: 25px;
}

.privacy-box {
    margin-bottom: 30px;
}

.privacy-box-last {
    margin-bottom: 70px;
}

/* contact */
.contact-txt a {
    font-size: 160%;
    font-weight: 600;
    color: #006eb0 !important;
}

.contact-txt br {
    display: none;
}

.form-box {
    margin: 30px 0 100px;
}

.formWrap {
    max-width: 750px;
    margin-bottom: 30px;
}

.formWrap input,.formWrap textarea {
    border: none;
    background-color: #e6e6e6;
    padding: 0.7em;
    width: 100%;
}

.formWrap textarea {
    height: 200px;
}

.formWrap .formTh {
    padding: 20px 10px;
}
.formWrap .formTh,.formWrap .formTd {
    padding: 25px 15px;
}
.formWrap .row:first-child .formTh, .formWrap  .row:first-child .formTd {
    border-top: 1px solid #cacaca;
}

.row.formRow {
    border-bottom: 1px solid #cacaca;
}

.row.formRow:last-child {
    border: none;
}

.formWrap .formTh.Th-center {
    display: flex;
    align-items: center;
}

.formWrap p {
    margin-bottom: 0;
    color: #2d2d2d;
}
.formWrap .privacy-link {
    display: block;
    background-color: #dacab5;
    text-align: center;
    max-width: 350px;
    margin: 20px -15px 20px;
    padding: 10px;
    color: #2d2d2d;
}
.formWrap .label {
    color: #01306b;
    font-weight: 600;
    margin-bottom: 0;
}

.formWrap p.requiredText {
    font-size: 70%;
    margin-left: 10px;
    background-color: #8c3737;
    color: #ffffff;
    padding: 5px 9px;
    letter-spacing: 1px;
    font-weight: bold;
}

.formWrap .formSend {
    background-color: #8c3737;
    color: #fff;
    font-weight: bold;
    letter-spacing: 2px;
    padding: 20px 40px;
    cursor: pointer;
    border: none;
    width: 500px;
    max-width: 100%;
    transition: 0.5s;
}

.formBtnTd {
    padding: 0;
    margin-top: 40px;
}

.formWrap .formSend:hover {
    opacity: 0.5;
    transition: 0.5s;
}

.form-box .privacy-link a {
    color: #006eb0;
    font-weight: 600;
}

@media (min-width: 1200px) {
  .greeting-name br {
    display: none;
}
}

@media (min-width: 751px) {
a[href*="tel:"] {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
  color: #212529;
  }
  
.footer a[href*="tel:"] {
  color: #ffffff;
  }
}
@media (width: 1024px) {
.top-box03 .box03-con .box02 {
    margin: auto;
    max-width: 50%;
}
  
.top-box03 .box03-con .box01 {
    font-family: 'Noto Sans JP', sans-serif;
    margin: auto;
    margin-left: 100px;
}
  
  .row.top-box03-row {
    margin-right: 0;
}
}

@media (max-width: 992px) {
/*works*/
.main-contents .works-item h3{
  font-size: 154%;
}
}


@media (max-width: 959px) {

  /* index */

  .top-box01 {
    padding: 10% 3%;
}
  
  .top-box01 .container {
    max-width: 100%;
}

.top-box01 .top-box01-row {
    align-items: center;
    display: block;
}

.top-box01 .top-box01-row .box01, .top-box01 .top-box01-row .box02 {
    max-width: 100%;
}
  
  .top-box01 .top-greeting-ttl::before {
    left: 0;
}

.top-box01 .txt01 {
    max-width: 100%;
}

.top-box01 .top-greeting-btn {
    margin: 3% 0 5%;
    width: 45%;
}
  
  .top-box02 {
    padding: 10% 5%;
}

.top-box02 .box02-con .box01 {
    text-align: center;
}

.top-box02 .box02-con .box02 {
    padding-top: 7%;
    text-align: center;
}
  
  .top-box03 {
    padding: 10% 5%;
}

.top-box03 .top-box03-row {
    display: block;
    margin: 0;
    width: 100%;
}
  
  .top-box03 .box03-con .box01 {
    margin: 0 0 5%;
    max-width: 100%;
}

.top-box03 .box03-con .box01 .top-blog-btn {
    width: 50%;
}

.top-box03 .box03-con .box02 {
    margin: 0;
    max-width: 100%;
}

.top-box03 .box03-con .box02 .blog-item {
    margin-bottom: 2%;
}
  
  .top-box04 {
    padding: 10% 4%;
}

.top-box04 .box04-con .box01 {
    padding: 0 1%;
    margin-bottom: 7%;
    text-align: center;
}

.top-box04 .box04-con .box02 {
    padding: 0 1%;
    text-align: center;
}
  
  .top-box05 {
    padding: 10% 5% 20%;
}

.top-box05 .container {
    max-width: 100%;
}

.top-box05 .top-contact-bg {
    max-width: 100%;
    padding: 5%;
}
  
  .top-box05 .top-contact-bg .top-contact-btn {
    width: 80%;
}
  
  /* table */
  
  .table-td a {
    color: #212529;
}
  
  /* greeting */
  
    .container.greeting-main-box {
    margin-bottom: 13%;
}
  
  /* facility */
  
  .facility-img {
    margin-bottom: 20px;
}
  
  .facility-box-last {
    margin-bottom: 18%;
}
  
  /* works */
  
  .works-item {
    margin-bottom: 8%;
}
  
  .works-main-box {
    margin-bottom: 15%;
}
  
  /* blog */
  
  .blog-box .col-md-8, .blogdetail-box .col-md-8 {
    margin-bottom: 8%;
}
  
  .blog-box,.blogdetail-box {
    margin-bottom: 20%;
}

/* company */

.company-box {
    margin: 50px auto 20%;
}
  
  /* recruit */
  
  .recruit-box .col-md-6 {
    margin: 5% 0 10% !important;
}
  
  .container.recruit-box {
    margin-bottom: 15%;
}
  /* privacy */
  
  .privacy-box-last {
    margin-bottom: 15%;
}
  
  /* contact */
  
  .contact-txt a {
    color: #212529;
}
  
  .form-box {
    margin: 30px 0 30%;
}
  
}

@media (max-width: 768px) {
.form.formWrap .formRow {
    background-color: #e2e7ea;
}

.form .container {
    width: 90%;
    margin: auto;
}

.form .container input,.form .container textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 10px;
    background-color: #fff;
    border: 1px solid #ccc;
}

.formWrap .row .formTh {
    background-color: #e2e7ea;
    padding: 15px;
}

.formWrap .row .formTd {
    background-color: #f6f6f6;
}
  
}

@media (max-width: 640px) {
  
  .page-ttl h1 {
    width: 100%;
    font-size: 170%;
    letter-spacing: 0.5vw;
}
  
  .page-ttl {
    max-height: 180px;
    margin-bottom: 8%;
}
  
  .main-ttl-box h2 {
    color: #01306b;
    font-size: 7vw;
    font-weight: 600;
    letter-spacing: 0.5vw;
    margin-bottom: 1vw;
}
  
  .main-contents h3 {
    border-left: 5px solid #8c3737;
    color: #8c3737;
    font-size: 5vw;
    font-weight: bold;
    letter-spacing: 0.2vw;
    margin-bottom: 5%;
    padding: 2vw 0 2vw 3vw;
}

.main-ttl-box p {
    font-size: 4.3vw;
    font-weight: 500;
    letter-spacing: 0.3vw;
}
  
  .main-ttl-box {
    margin-bottom: 5%;
}
  
  /* index */
  
  .top-box01 {
    background-image: none;
    background-color: #f3f3f3;
    padding: 13% 3% 10%;
    position: relative;
}

.top-box01::before {
    content: "";
    background-color: #01306b;
    display: block;
    width: 80vw;
    height: 47vw;
    transform: scale(-1,1) skew(-30deg, 0deg);
    position: absolute;
    bottom: 0;
    left: -15vw;
}
  
.top-box01 .top-greeting-ttl::before {
    background-size: contain;
    background-repeat: no-repeat;
    height: 49%;
    width: 55%;
    top: -25%;
}
  
  .top-box01 .top-greeting-ttl {
    color: #01306b;
    font-size: 150%;
    font-weight: 600;
    line-height: 40px;
    margin-bottom: 4%;
    position: relative;
}
  
  .top-box01 .top-greeting-btn {
    margin: 3% 0 5%;
    padding: 0.4em 0.5em 0.6em;
    width: 65%;
}

.top-box01 .top-greeting-btn::before {
    content: "";
    width: 20px;
    right: -10px;
}

  .top-box03 {
    background-image: none;
    background-color: #f3f3f3;
    position: relative;
}

  .top-box03::before {
    content: "";
    background-color: #01306b;
    display: block;
    width: 55vw;
    height: 42vw;
    transform: skew(-30deg, 0deg);
    position: absolute;
    top: 0;
    left: -15vw;
}
  
  .top-box03 .box03-con .box01 img {
    width: 30%;
    margin-bottom: 2%;
}
  
  .top-box03 .box03-con .box01 .top-blog-txt {
    font-size: 120%;
    font-weight: bold;
    letter-spacing: 0.1em;
    margin-bottom: 8%;
    padding-left: 0;
}
  
  .top-box03 .box03-con .box01 .top-blog-btn {
    border: 1px solid #01306b;
    color: #01306b;
    position: absolute;
    top: 5vw;
    right: 6vw;
    width: 45%;
}

  .top-box03 .box03-con .box01 .top-blog-btn::before {
    background-color: #01306b;
    width: 20px;
    right: -10px;
}
  
  .top-box03 .box03-con .box02 .blog-item {
    display: block;
    margin-bottom: 4%;
    padding: 0.8em 1em;
}
  
  .top-box03 .box03-con .box02 .blog-day {
    color: #6d6d6d;
    margin-right: 0;
    margin-bottom: 2%;
    padding-left: 0;
}
  
  .top-box05 {
    padding: 15% 5% 25%;
}
  
  .top-box05 .top-contact-bg .txt01 {
    font-size: 3.7vw;
    font-weight: 500;
    letter-spacing: 0.03em;
    margin-bottom: 5%;
}
  
  .top-box05 .top-contact-bg::before {
    height: 30px;
    width: 160px;
    display: block;
    position: absolute;
    top: -21px;
    left: 0;
    right: 0;
    margin: 0 auto;
}
  
  .top-box05 .top-tel-link {
    display: inline-block;
    margin-bottom: 5%;
}

.top-box05 .top-tel-link img {
    width: 80%;
}

.top-box05 .top-contact-bg .top-contact-btn {
    font-size: 3.5vw;
    width: 100%;
}
  
  .top-box05 .top-contact-bg .top-contact-btn::before {
    background-size: contain;
    background-repeat: no-repeat;
    height: 5vw;
    width: 5vw;
    display: block;
    position: absolute;
    top: 34%;
    left: 6%;
}
  
  .top-box05 .top-contact-bg .top-contact-btn::after {
    background-repeat: no-repeat;
    background-size: contain;
    height: 1px;
    width: 18px;
    display: block;
    position: absolute;
    top: 50%;
    right: -9px;
}
  
  .top-box05 .top-contact-bg .top-contact-btn p {
    margin: 0;
    padding-left: 9%;
}
  
  /* table */
  
  .table-style .row .table-th {
    margin-bottom: 2%;
}
  
  /* google-map */
  
  .google-map {
    width: 100%;
    height: 60vw;
}
  
  /* greeting */
  
  .greeting-md-4 {
    margin-bottom: 8%;
}
  
  .container.greeting-main-box {
    margin-bottom: 23%;
}
  
  /* facility */
  
  .facility-box-last {
    margin-bottom: 23%;
}
  
  /* works */
  
  .works-main-box {
    margin-bottom: 22%;
}
  
  /* blog */
  
  .blog-box,.blogdetail-box {
    margin-bottom: 28%;
}
  
  .blog-box .webgene-item .webgene-item-info {
    display: block;
}

.blog-box .webgene-item .webgene-item-info .blog-date {
    margin-right: 0;
    margin-bottom: 0.3em;
}
  
  .blogdetail-box .webgene-item h2 {
    font-size: 5vw;
    margin-bottom: 5%;
}

.blog-box .main-ttl-box h2, .blogdetail-box .main-ttl-box h2 {
    font-size: 7vw;
}

/* company */

.company-box {
    margin: 50px auto 30%;
}
  
  /* recruit */
  
    .container.recruit-box {
    margin-bottom: 20%;
}
  
  /* privacy */
  
  .privacy-box-last {
    margin-bottom: 25%;
}
  
  /* contact */
  
  .contact-txt br {
    display: block;
}
  
  .formWrap .row:first-child .formTd {
    border: none;
}
  
  .formWrap .formTh, .formWrap .formTd {
    padding: 5% 15px;
}

  .formWrap .formTh {
    padding-bottom: 0;
}
  
  .formBtnTd {
    padding: 0;
    margin-top: 10%;
    text-align: center;
}
  
  .formWrap .formSend {
    width: 80%;
    padding: 5%;
    margin: 0 auto;
}

.privacy-link {
    text-align: center;
}  
}

@media (max-width: 330px) {
.greeting-name p{
  font-size: 96%;
}
}
