@charset "UTF-8";

.endoscopyLayout .h2wrap {
	background-image: url(../img/h2_bg.jpg);
}
.endoscopyLayout .h2wrap h2 span {
    line-height: 1.2;
    font-size: 0.9rem;
}
.endoscopyLayout .h2wrap h2 {
    display: flex;
    align-items: center;
    font-size: 1.6rem;
}
.endoscopyLayout #main .title .jp {
    line-height: 1.5;
}
.endoscopyLayout #main img {
    max-width: 100%;
}
.endoscopyLayout .flex {
    display: flex;
    flex-direction: column;
    gap: 30px 2%;
}


			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .endoscopyLayout .h2wrap h2 {
                    font-size: 2.8rem;
                }
                .endoscopyLayout .h2wrap h2 span {
                    font-size: 1.6rem;
                }
                .endoscopyLayout .flex {
                    flex-direction: row;
                }
                .endoscopyLayout .flex.rev {
                    flex-direction: row-reverse;
                }
                .endoscopyLayout .flex > div {
                    width: 48%;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1170px) {
                #gNavi > ul > .endoscopy a:after{
					opacity: 1;
				}
			}


.endoscopyIndexLayout #main #c01 .titleIcon {
    display: flex;
  align-items: center;
}
.endoscopyIndexLayout #main #c01 .titleIcon span {
    padding-left: 5px;
    display: inline-block;
}
.endoscopyIndexLayout #c01 tr:nth-child(1) th:nth-child(2) {
    width: 20%;
}
.endoscopyIndexLayout #c01 tr:nth-child(1) th:nth-child(1) {
    width: 10%;
}
.endoscopyIndexLayout #c01 tr th:nth-child(1) {
    line-height: 1.2;
}
.endoscopyIndexLayout #c01 tr:nth-child(1) th:nth-child(3),
.endoscopyIndexLayout #c01 tr:nth-child(1) th:nth-child(4),
.endoscopyIndexLayout #c01 tr:nth-child(1) th:nth-child(5),
.endoscopyIndexLayout #c01 tr:nth-child(1) th:nth-child(6),
.endoscopyIndexLayout #c01 tr:nth-child(1) th:nth-child(7),
.endoscopyIndexLayout #c01 tr:nth-child(1) th:nth-child(8) {
    width: calc(70% / 6);
}
.endoscopyIndexLayout #c01 th {
    padding: 10px 2%;
    text-align: center;
}
.endoscopyIndexLayout #c01 td {
    padding: 10px 2%;
    color: #44baff;
    text-align: center;
}
.endoscopyIndexLayout #c01 .no_data {
    color: #000;
}
.endoscopyIndexLayout #c01 table {
    border-top: 1px solid #9d9d9d;
}
.endoscopyIndexLayout #c01 th, .endoscopyIndexLayout #c01 td {
    display: table-cell;
    vertical-align: middle;
    border-bottom: 1px solid #9d9d9d;
}
.endoscopyIndexLayout #c01 .borderBox img {
    height: 18px;
    display: inline-block;
    margin: 0 10px 0 0;
    vertical-align: middle;
}
.endoscopyIndexLayout #c01 .borderBox {
  text-align: center;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
}
.endoscopyIndexLayout #c01 .borderBox .o {
  color: #44baff;
}
.endoscopyIndexLayout #c01 .borderBox .s {
  font-size: 1.4rem;
  display: inline-block;
  margin: 0 0 0 5px;
}
.endoscopyIndexLayout #c01 .borderBox {
  background-color: #f2f9ff;
}
.endoscopyIndexLayout #c01 .borderBox h4 {
    text-align: left;
}
.endoscopyIndexLayout #c01 .closed span {
    display: inline-block;
  padding: 2px 10px;
  color: #fff;
  font-weight: 500;
  background-color: #44baff;
  margin: 0 10px 0 0;
}



			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .endoscopyIndexLayout #c01 .flex {
                    flex-direction: column;
                    gap: 30px 4%;
                }
                .endoscopyIndexLayout #c01 .flex > div {
                    width: 100%;
                }
                .endoscopyIndexLayout #c01 th, .endoscopyIndexLayout #c01 td {
                    padding: 20px 2%;
                    font-size: 1.6rem;
                }
                .endoscopyIndexLayout #c01 .borderBox img {
                    height: 24px;
                }
                .endoscopyIndexLayout #c01 .borderBox {
                  font-size: 2.4rem;
                    letter-spacing: 0.12em;
                }
                .endoscopyIndexLayout #c01 .borderBox .s {
                    font-size: 1.8rem;
                }
			}
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1170px) {
                .endoscopyIndexLayout #c01 .flex {
                    flex-direction: row;
                }
                .endoscopyIndexLayout #c01 .flex > div:first-child, .endoscopyIndexLayout #c01 .flex > div:last-child {
                    width: 48%;
                }
			}


.endoscopyIndexLayout #c02 .title_ca {
    padding-bottom: 0;
}
.endoscopyIndexLayout #c02 .ex_bg {
    position: relative;
    margin-bottom: 40px;
}
.endoscopyIndexLayout #c02 .ex_bg .bg {
    background: url("../img/endoscopy_c02_img01.png")no-repeat center center/cover;
    height: 300px;
    width: 100%;
    margin-bottom: 30px;
}
.endoscopyIndexLayout #main #c02 .ex_bg .cassette {
    padding-bottom: 0;
}
.endoscopyIndexLayout #c02 .img {
    margin-top: 20px;
}
.endoscopyIndexLayout #c02 .img > p:last-child {
    margin-bottom: 20px;
}
.endoscopyIndexLayout #c02 .img_s {
    max-width: 300px;
}


			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .endoscopyIndexLayout #c02 .ex_bg {
                    margin-bottom: 65px;
                }
                .endoscopyIndexLayout #c02 .ex_bg .bg {
                    margin-bottom: 0;
                    position: absolute;
                    width: 48%;
                    right: 0;
                    top: 0;
                    height: calc(100% - 65px);
                }
                .endoscopyIndexLayout #c02 .ex_bg .cassette > div {
                    width: 48%;
                    min-height: 500px;
                }
			}
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1170px) {
			}



.endoscopyIndexLayout #c03, .endoscopyIndexLayout #c05 {
    background-color: #f2f9ff;
    padding-top: 65px;
    padding-bottom: 65px;
}
.endoscopyIndexLayout #c03 {
    margin-bottom: 65px;
}
.endoscopyIndexLayout #c03 .flex {
    margin-top: 40px;
}
.endoscopyIndexLayout #c03 .flex > div {
    background-color: #fff;
    padding: 40px 20px;
    border-radius: 20px;
}
.endoscopyIndexLayout #c03 .flex h4 {
    color: #44bbff;
    border-left: 3px solid #44bbff;
    padding-left: 10px;
    padding-bottom: 0;
    margin-bottom: 20px;
}
.endoscopyIndexLayout #c03 .text {
    margin-bottom: 20px;
}



			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .endoscopyIndexLayout #c03 {
                    padding-top: 125px;
                    padding-bottom: 125px;
                }
                .endoscopyIndexLayout #c03 {
                    margin-bottom: 125px;
                }
                .endoscopyIndexLayout #c03 .flex {
                    flex-wrap: wrap;
                }
                .endoscopyIndexLayout #c03 .flex > div {
                    padding: 40px 30px;
                    width: 100%;
                }
                .endoscopyIndexLayout #c03 .flex > div:not(:last-child) {
                    width: calc(98% / 2 - 60px);
                }
			}
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1170px) {
                .endoscopyIndexLayout #c03 .flex {
                    flex-wrap: nowrap;
                }
                .endoscopyIndexLayout #c03 .flex > div, .endoscopyIndexLayout #c03 .flex > div:not(:last-child) {
                    width: calc(96% / 3 - 60px);
                }
                .endoscopyIndexLayout #c03 .text {
                    min-height: 190px;
                }
			}

.endoscopyIndexLayout #c04 {
    padding-bottom: 65px;
}
.endoscopyIndexLayout #c04 .flow_box {
    background-color: #f2f9ff;
    border-radius: 20px;
    padding: 40px 20px;
}
.endoscopyIndexLayout #c04 .flow_box:not(:last-of-type) {
    margin-bottom: 60px;
}
.endoscopyIndexLayout #c04 .flow_box p {
    padding: 0;
}
.endoscopyIndexLayout #c04 .flow_box .ttl {
    padding: 0 10px;
    border: 2px solid #44baff;
    color: #44baff;
    text-align: center;
    display: inline-block;
    margin-bottom: 10px;
    font-size: 120%;
    font-weight: bold;
    max-width: 60px;
}
.endoscopyIndexLayout #c04 .flow_box h5 {
    color: #44baff;
}
.endoscopyIndexLayout #c04 .flow_box > div:not(:last-child) {
    margin-bottom: 30px;
}
.endoscopyIndexLayout #c04 .flow_box .flex:not(:last-of-type) {
    position: relative;
    margin-bottom: 90px;
}
.endoscopyIndexLayout #c04 .flow_box .flex::before {
    position: absolute;
    content: '';
    left: 50%;
    transform: translateX(-50%);
    border-top: 20px solid #44baff;
    border-right: 30px solid transparent;
    border-bottom: 20px solid transparent;
    border-left: 30px solid transparent;
    bottom: -75px;
}
.endoscopyIndexLayout #c04 .flow_box .flex {
    gap: 0 2%;
}


			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .endoscopyIndexLayout #c04 .flow_box {
                    border-radius: 30px;
                    padding: 60px 40px;
                }
                .endoscopyIndexLayout #c04 .flow_box .ttl {
                    width: 10%;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    padding: 20px 10px;
                    margin-bottom: 0;
                    max-width: none;
                }
                .endoscopyIndexLayout #c04 .flow_box .flex > div {
                    width: 86%;
                }
			}
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1170px) {
                .endoscopyIndexLayout #c04 .flow_box {
                    padding: 100px;
                }
			}



.endoscopyIndexLayout #main .faq_cassette .b_box p {
    padding-bottom: 0;
}
.endoscopyIndexLayout #main .faq_cassette .b_box {
    background-color: #fff;
    border-radius: 20px;
} 
.endoscopyIndexLayout #main .faq_cassette .b_box > div {
    padding: 40px 20px;
}
.endoscopyIndexLayout #main .faq_cassette .b_box .q_txt,
.endoscopyIndexLayout #main .faq_cassette .b_box .a_txt {
    position: relative;
    padding-left: 40px;
}
.endoscopyIndexLayout #main .faq_cassette .b_box .q_txt::before,
.endoscopyIndexLayout #main .faq_cassette .b_box .a_txt::before {
    position: absolute;
    content: "";
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    left: 0;
}
.endoscopyIndexLayout #main .faq_cassette .b_box .q_txt::before {
    background-image: url("/recruit/common/img/common_icon12.png");
    width: 25px;
    height: 33px;
    top: 0;
}
.endoscopyIndexLayout #main .faq_cassette .b_box .a_txt::before {
    background-image: url("/recruit/common/img/common_icon13.png");
    width: 19px;
    height: 24px;
    top: 10px;
}
.endoscopyIndexLayout #main .faq_cassette .b_box .q_txt {
    color: #44baff;
    border-bottom: 1px solid #44baff;
    font-size: 18px;
    margin-bottom: 20px;
    font-weight: bold;
    padding-bottom: 15px;
}
.endoscopyIndexLayout #main .faq_cassette .b_box ol li {
    list-style-type: decimal;
    margin-left: 25px;
}
.endoscopyIndexLayout #main .faq_cassette .b_box:not(:last-child) {
    margin-bottom: 30px;
}


			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .endoscopyIndexLayout #main .faq_cassette .b_box > div {
                    padding: 60px 40px;
                }
                .endoscopyIndexLayout #main .faq_cassette .b_box .q_txt {
                    font-size: 24px;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1170px) {
                .endoscopyIndexLayout #main .faq_cassette .cassette {
                  padding-top: 65px;
                    padding-bottom: 140px;
                }
			}

/* clearfix
------------------------------------*/

.clearfix:after {
content: ".";
display: block;
clear: both;
height: 0;
visibility: hidden;
overflow:hidden;
}

.clearfix {
display: inline-block;
}

/* exlude MacIE5 \*/
* html .clearfix {
height: 1%
}

.clearfix {
display:block;
}
/* end MacIE5 */