/*gnav*/
@media print, screen and (min-width: 768px) {
    #gnav li a img {
        display: block;
        text-align: center;
        max-width: 35px;
        max-height: 35px;
        margin:auto auto 10px;
    }
}

/*f_nav*/
@media print, screen and (min-width: 768px) {
    .f_nav li {
        margin-left: 1em!important;
        margin-right:1em!important;
    }
}


/*input*/
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
select,
textarea,
.field {
  display: block;
  width: 90%;
  height: 45px;
  margin-bottom: 0;
  padding: 0 12px;
  border: 0;
  border-radius: 3px;
  background-color: #eff1f5;
  box-shadow: none;
  color: #5c6b80;
  font-size: 1em;
  vertical-align: middle;
  line-height: 45px;
  transition: background-color 0.24s ease-in-out;
}
textarea {
  max-width: 100%;
  min-height: 120px;
  line-height: 1.5em;
  padding: 0.5em;
  overflow: auto;
}
@media(max-width:500px) {
    .inquiry td,
    .inquiry th {
        display: block !important;
        width: 100% !important;
        border-top: none !important;
        -webkit-box-sizing: border-box !important;
        -moz-box-sizing: border-box !important;
        box-sizing: border-box !important
    }
    .inquiry tr:first-child th {
        border-top: 1px solid #d7d7d7 !important
    }
    .inquiry .any,
    .inquiry .haveto {
        font-size: 10px
    }
}
.inquiry th {
    text-align: left;
    font-size: 14px;
    color: #444;
    padding-right: 5px;
    width: 30%;
    background: #f7f7f7;
    border: solid 1px #d7d7d7
}
.inquiry td {
    font-size: 13px;
    border: solid 1px #d7d7d7
}
.entry-content .inquiry tr,
.entry-content table {
    border: solid 1px #d7d7d7
}
.haveto {
    font-size: 7px;
    padding: 5px;
    background: #b30b0b;
    color: #fff;
    border-radius: 2px;
    margin-right: 5px;
    position: relative;
    bottom: 1px
}
.any {
    font-size: 7px;
    padding: 5px;
    background: #93c9ff;
    color: #fff;
    border-radius: 2px;
    margin-right: 5px;
    position: relative;
    bottom: 1px
}
.verticallist .wpcf7-list-item {
    display: block
}
#formbtn {
    display: block;
    padding: 15px;
    width: 350px;
    background: #b30b0b;
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    border-radius: 2px;
    margin: 25px auto 0
}
#formbtn:hover {
    background: #fff;
    color: #b30b0b;
    border: 2px solid #b30b0b;
}
th {
    font-weight: 700;
    text-transform: uppercase;
    padding: 13px
}
td {
    border-top: 1px solid #ededed;
    padding: 12px
}
input,
select,
textarea {
    border: 1px solid #dfdfdf;
    letter-spacing: 1px;
    margin: 0;
    max-width: 100%;
    resize: none
}

.inquiry {
  margin-left: auto;
  margin-right: auto;
}

/* テーブルの見出しテキストのセンタリング */
table th, table td {
    text-align: center;
    vertical-align: middle;
}

/* リクルートテーブルのセンタリングとサイズ制限*/
#content_area > div > table {
 margin-left: auto;
 margin-right: auto;
 max-width: 800px;
}

#content_area > div > table > tbody > tr > td {
background: #fffcf5;
    padding: 8px
      border: solid 2px #fff;
}

#content_area > div > table > tbody > tr > th
{
  padding: 10px;
 background: #b30b0b;
 color: #fff;
  border: solid 2px #fff;
}

/* TOP 獣医師勤務表カレンダー */

#calender_h2 {
  margin-top: 50px;
  margin-bottom: 20px;
}

.calender {
  text-align: center;
  margin-bottom: 30px;
}

.calender iframe {
  width: 100%;
  height: 600px;
}

@media all and (min-width: 768px) {
  .calender iframe {
  height: 800px;
  }
}


.text_red {
  color: red;
}

.center {
    text-align: center;
}

/*breadcrumbs*/
.breadcrumbs {
    text-align: center;
    margin: auto;
}


/*case*/
#sec_cases {
    padding-top: 0;
    margin-top: 2.5em!important;
}

@media print, screen and (max-width: 767px) {
    #sec_cases {
        margin-top:1.25em!important;
    }

}

/*case_list*/
.case_list {
    display: flex;
    flex-wrap: wrap;
    justify-content:flex-start;
    align-items: top;
    margin-top: -1.5em;

}

.case_list li {
    flex-basis: 31%;
    margin: 0 1.5% 2em;
    position: relative;
}

.case_list li:nth-child(3n-2) {
    margin-left: 0;
}

.case_list li:nth-child(3n) {
    margin-right: 0;

}

.case_list li img {
    width: 100%;
    height: auto;
}

.case_list li .img_box {
    margin-bottom: 0.5em;
    z-index: 1;
}

.case_list li .img_box img {
    object-fit: cover;
    width: 100%;
    height: 200px;
}

.case_list li .text_box {
    text-align: left;
    margin:0 ;
}

.case_list li .cat_box {
    position: absolute;
    top: 0.75em;
    left: 0.5em;
    z-index: 123;
}

.case_list li .cat_box span.tag {
    font-size: 1.1rem;
    background: rgba(30, 35, 42, 1.0);
    line-height: 1;
    margin-right:0.75em;
    color: #fff;
    padding: 4.5px 11.5px;
    transition: 0.2s all;
}

    .case_list li .cat_box span.tag:hover ,
    .case_list li .cat_box span.tag:focus {
        background: rgba(30, 35, 42, 0.75);
    }

.case_list li .text_box p.elp {
    margin:0;
    font-size: 2rem;
}

@media print, screen and (max-width: 767px) {
    .case_list {
        margin-top: -1.5em;
    }

    .case_list li {
        flex-basis: 48.5%;
        margin: 0 1.25% 2em;
    }

    .case_list li:nth-child(3n-2) ,
    .case_list li:nth-child(3n) {
        margin-left: auto;
        margin-right: auto;
    }

    .case_list li:nth-child(odd) {
        margin-left: 0;
    }

    .case_list li:nth-child(even) {
        margin-right: 0;
    }
    
    .case_list li .img_box {
        margin-bottom: calc(0.5em / 1.5);
    }

    .case_list li .img_box img {
        height: 150px;
    }

    .case_list li .cat_box {
        top: calc(1em / 1);
        left: calc(0.5em / 1.5);
    }

    .case_list li .cat_box span.tag {
        font-size: calc(1.25rem / 1.25);
        padding:calc(4.5px / 1) calc(11.5px / 1);
    }

    .case_list li .text_box p.elp {
        font-size: calc(2rem / 1.2);
    }

}

/*case_nav_list*/
.case_nav_list {
    padding: 0 0 2.5em;
    margin:auto;
}

.case_nav_list ul {
    display: flex;
    flex-wrap: wrap;
    justify-content:flex-start;
    align-items: top;
}

.case_nav_list ul li {
    margin: 0 0.5em 0.5em 0;
}

.case_nav_list ul li a {
    display: block;
    text-decoration: none;

    font-size: 1.45rem;
    background: rgba(153, 8, 12, 1.0);
    line-height: 1;
    color: #fff;
    padding: 9px 45px;
    transition: 0.2s all;
}

.case_nav_list ul li a:hover ,
.case_nav_list ul li a:focus {
    background: rgba(153, 8, 12, 0.75);
}

@media print, screen and (max-width: 767px) {
    .case_nav_list {
        padding: 0 0 calc(2.5em / 2);
    }

    .case_nav_list ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: top;
        box-sizing: border-box;
    }

    .case_nav_list ul li {
        margin: 0.25em 1.5%;
        flex-basis: 48%;
    }

    .case_nav_list ul li:nth-child(odd) {
        margin-left: 0;
    }

    .case_nav_list ul li:nth-child(even) {
        margin-right: 0;
    }

    .case_nav_list ul li a {
        font-size:calc(1.45rem / 1.05) ;
        padding: calc(9px * 1.25) 18px;
        width: 100%;
        box-sizing: border-box;
    }
}


/*case_btn*/
.case_btn {
    margin: 2em auto auto;
    text-align: center;
    width: 365px;
    box-sizing: border-box;
}

.case_btn a {
    display: block;
    text-align: center;
    background: rgba(153, 8, 12, 1.0);
    color: #fff;
    font-size: initial;
    padding: 7.25px 18px;
    transition: 0.2s all;
    box-sizing: border-box;
}

@media print, screen and (max-width: 767px) {
    .case_btn {
        margin: 2em auto auto;
        text-align: center;
        width: 100%;
        box-sizing: border-box;
    }

}

