@charset "utf-8";
/*-----------------------------------------------------

	共通

------------------------------------------------------*/

.ttlTxt {
    display: inline-block;
    position: relative;
    font-size: 28px;
    line-height: 1.4;
    font-family: "Noto Sans Japanese";
}

.ttlTxt02 {
    display: inline-block;
    position: relative;
    margin-bottom: 32px;
    font-size: 28px;
    line-height: 1.6;
    font-family: "Noto Sans Japanese";
}

.ttlTxt03 {
    margin-bottom: 20px;
    color: #35a4bb;
    font-size: 30px;
    font-family: "Noto Sans Japanese";
}

.ttlTxt04 {
    display: inline-block;
    position: relative;
    padding: 15px 0 23px;
    font-size: 20px;
    font-family: "Noto Sans Japanese";
}

.ttlTxt04:after {
    display: inline;
    position: absolute;
    right: 0;
    bottom: 13px;
    left: 0;
    width: 23%;
    margin: auto;
    border-bottom: 3px #0071c3 dotted;
    content: " ";
}

.ttlTxt span {
    display: block;
    color: #0071c1;
    font-style: normal;
    font-weight: 800;
    font-size: 16px;
    font-family: "Montserrat", sans-serif;
}

.ttlTxt:before,
.ttlTxt:after {
    display: block;
    position: absolute;
    top: 32%;
    width: 28%;
    height: 1px;
    border-top: solid 1px black;
    content: "";
}

.ttlTxt:before {
    left: -40%;
}

.ttlTxt:after {
    right: -40%;
}

#top #sec_03 .ttlTxt,
#top #sec_04 .ttlTxt {
    margin-bottom: 30px;
}

.detialBtn a {
    padding: 15px 120px;
    background: #0071c1;
    color: #ffffff;
    font-weight: bold;
}

.detialBtn a:hover {
    background: #00b2d6;
}

/*-----------------------------------------------------

	TOP MAINIMAGE　トップページ

------------------------------------------------------*/

#top #mainimage {
    position: relative;
    width: 100%;
    padding-top: 40%;
    overflow: hidden;
}

#top #mainimage video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: top;
}

.slick-slide img {
    width: 100%;
}

.slick-dotted.slick-slider {
    margin-bottom: 25px;
}

.slick-dots {
    background: #f3f4ef;
}

#top #mainimage .slider img {
    width: 100%;
}

#top #mainimage .mvTxt {
    position: absolute;
    top: 82%;
    right: 7%;
    transform: translateY(-50%);
}

#top #mainimage .mvTxt02 {
    position: absolute;
    top: 50%;
    right: 0;
    left: 0;
    transform: translateY(-50%);
}

/*-----------------------------------------------------

	TOP　トップページ

------------------------------------------------------*/

/*SECTION01*/
#top #sec_01 {
    position: relative;
    padding: 80px 0;
    background: #f3f4ef;
}

#top #sec_01:after {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    z-index: 100;
    width: 0;
    height: 0;
    margin: 0 auto;
    border-width: 36px 124px 0;
    border-style: solid;
    border-color: #f3f4ef transparent;
    content: "";
}

#top #sec_01 .secInner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 1200px;
    margin: auto;
}

#top #sec_01 .ttlTxt:before,
#top #sec_01 .ttlTxt:after {
    border: none;
}

#top #sec_01 .lBox {
    width: 566px;
}

#top #sec_01 .rBox {
    width: 600px;
    text-align: left;
}

#top #sec_01 .rBox .ttlTxt {
    margin-bottom: 23px;
    font-size: 28px;
    font-family: "Noto Sans Japanese";
}

#top #sec_01 .rBox ul {
    display: flex;
    justify-content: space-between;
    margin-top: 43px;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
}

#top #sec_01 .rBox li {
    width: 122px;
    height: 122px;
    padding: 21px 0;
    border-radius: 50%;
    box-sizing: border-box;
    background: #ffffff;
    text-align: center;
}

#top #sec_01 .rBox li:nth-child(4) {
    padding: 16px 0;
}

#top #sec_01 .rBox li:after {
    display: block;
    margin-bottom: 0;
    padding-top: 75px;
    background: url(../Image/top/about_01.png) no-repeat center center;
    content: "";
}

#top #sec_01 .rBox li:nth-child(2):after {
    background: url(../Image/top/about_02.png) no-repeat center center;
}

#top #sec_01 .rBox li:nth-child(3):after {
    background: url(../Image/top/about_03.png) no-repeat center center;
}

#top #sec_01 .rBox li:nth-child(4):after {
    background: url(../Image/top/about_04.png) no-repeat center center;
}

#top #sec_01 .rBox h3 {
    position: relative;
    font-weight: bold;
    font-size: 15px;
}

#top #sec_01 .rBox li:nth-child(4) h3 {
    padding-bottom: 4px;
    font-size: 14px;
    line-height: 1.1;
    letter-spacing: -1px;
}

#top #sec_01 .rBox h3:before {
    display: block;
    position: absolute;
    right: 0;
    bottom: -3px;
    left: 0;
    width: 32%;
    margin: auto;
    border-bottom: solid 1px #dadac9;
    content: " ";
}

#top #sec_01 .rBox h3:after {
    display: block;
    position: absolute;
    right: 0;
    bottom: -12px;
    left: 0;
    width: 20%;
    margin: auto;
    border-bottom: solid 1px #dadac9;
    content: " ";
}

/*SECTION02*/

#top #sec_02 {
    padding: 80px 0;
    background: #0071c1;
}

#top #sec_02 .secInner {
    width: 1200px;
    margin: auto;
    color: #ffffff;
}

#top #sec_02 .ttlTxt {
    margin-bottom: 20px;
    color: #ffffff;
}

#top #sec_02 .ttlTxt:before,
#top #sec_02 .ttlTxt:after {
    border-top: solid 1px #ffffff;
}

#top #sec_02 .ttlTxt img {
    padding: 0 5px 0 0;
}

#top #sec_02 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    margin: 40px 0;
    color: #000000;

    -ms-flex-pack: distribute;
}

#top #sec_02 li {
    position: relative;
    width: 30%;
}

#top #sec_02 li:nth-child(4) {
    margin-top: 80px;
    margin-left: 150px;
}

#top #sec_02 li:nth-child(5) {
    margin-top: 80px;
    margin-right: 150px;
}

#top #sec_02 li .imgArea {
    text-align: left;
}

#top #sec_02 li img {
    width: 90%;
}

#top #sec_02 li h3 {
    margin-bottom: 12px;
    color: #e1002a;
    font-weight: bold;
    font-size: 18px;
    font-family: "Noto Sans Japanese";
}

#top #sec_02 li:nth-child(2) h3 {
    color: #fcc800;
}

#top #sec_02 li:nth-child(3) h3 {
    color: #006c6a;
}

#top #sec_02 li:nth-child(4) h3 {
    color: #83a80b;
}

#top #sec_02 li:nth-child(5) h3 {
    color: #0071c1;
}

#top #sec_02 li h3:before {
    display: inline-block;
    width: 36px;
    height: 36px;
    margin-bottom: 0;
    background: url(../Image/top/icon_efforts01.png) no-repeat center center;
    vertical-align: bottom;
    content: "";
}

#top #sec_02 li:nth-child(2) h3:before {
    background: url(../Image/top/icon_efforts02.png) no-repeat center center;
}

#top #sec_02 li:nth-child(3) h3:before {
    background: url(../Image/top/icon_efforts03.png) no-repeat center center;
}

#top #sec_02 li:nth-child(4) h3:before {
    background: url(../Image/top/icon_efforts04.png) no-repeat center center;
}

#top #sec_02 li:nth-child(5) h3:before {
    background: url(../Image/top/icon_efforts05.png) no-repeat center center;
}

#top #sec_02 li .txtArea {
    position: absolute;
    right: -25px;
    bottom: -66px;
}

#top #sec_02 li .txtArea a {
    display: block;
    width: 230px;
    height: 230px;
    padding: 37px;
    border-radius: 50%;
    box-sizing: border-box;
    background: #ffffff;
}

#top #sec_02 li .txtArea p {
    font-size: 13px;
}

/*hover*/
@media only screen and (min-width:768px) {
    #top #sec_02 li .txtArea a:hover {
        background: #e1002a;
        color: #ffffff;
    }

    #top #sec_02 li:nth-child(2) .txtArea a:hover {
        background: #fcc800;
    }

    #top #sec_02 li:nth-child(3) .txtArea a:hover {
        background: #006c6a;
    }

    #top #sec_02 li:nth-child(4) .txtArea a:hover {
        background: #83a80b;
    }

    #top #sec_02 li:nth-child(5) .txtArea a:hover {
        background: #0071c1;
    }

    #top #sec_02 li .txtArea a:hover h3,
    #top #sec_02 li:nth-child(2) .txtArea a:hover h3,
    #top #sec_02 li:nth-child(3) .txtArea a:hover h3,
    #top #sec_02 li:nth-child(4) .txtArea a:hover h3,
    #top #sec_02 li:nth-child(5) .txtArea a:hover h3 {
        color: #ffffff;
    }

    #top #sec_02 li .txtArea a:hover h3:before {
        background: url(../Image/top/icon_efforts01_on.png) no-repeat center center;
    }

    #top #sec_02 li:nth-child(2) .txtArea a:hover h3:before {
        background: url(../Image/top/icon_efforts02_on.png) no-repeat center center;
    }

    #top #sec_02 li:nth-child(3) .txtArea a:hover h3:before {
        background: url(../Image/top/icon_efforts03_on.png) no-repeat center center;
    }

    #top #sec_02 li:nth-child(4) .txtArea a:hover h3:before {
        background: url(../Image/top/icon_efforts04_on.png) no-repeat center center;
    }

    #top #sec_02 li:nth-child(5) .txtArea a:hover h3:before {
        background: url(../Image/top/icon_efforts05_on.png) no-repeat center center;
    }
}

/*SECTION03*/

#top #sec_03 {
    padding: 80px 0;
    padding-right: 4%;
    padding-left: 4%;
}

#top #sec_03 .secInner {
    min-width: 1200px;
    max-width: 1500px;
    margin: auto;
}

#top #sec_03 ul {
    display: flex;
    margin-bottom: 40px;
}

#top #sec_03 li {
    position: relative;
    width: 23%;
    margin: 0 1%;
    line-height: 1.3;
}

#top #sec_03 li a {
    display: block;
}

#top #sec_03 li .badge {
    position: absolute;
    top: -9px;
    left: 17px;
    padding: 5px;
    background: #e1002a;
    color: #ffffff;
    font-weight: bold;
    font-size: 12px;
}

#top #sec_03 .imgArea {
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding-top: 70%;
    overflow: hidden;
}

#top #sec_03 .imgArea img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 180%;
    max-height: 180%;

    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

#top #sec_03 .txtArea {
    padding: 20px;
    background: #f9f9f4;
    transition-duration: .3s;
}

#top #sec_03 .txtArea .ttl {
    margin-bottom: 11px;
    font-weight: bold;
    font-size: 18px;
    line-height: 1.4;
    letter-spacing: -1px;
    text-align: left;
}

#top #sec_03 .txtArea .date {
    color: #7ca7c5;
    font-weight: bold;
    font-size: 16px;
    text-align: left;
}

/*hover*/
@media only screen and (min-width:768px) {
    #top #sec_03 li a:hover .txtArea {
        background: #0071c1;
        color: #ffffff;
    }

    #top #sec_03 li a:hover .date {
        color: #ffffff;
    }
}

/*SECTION04*/

#top #sec_04 {
    padding: 80px 0;
    background: #f3f3ef;
}

#top #sec_04 .secInner {
    width: 1200px;
    margin: auto;
}

#top #sec_04 ul {
    max-width: 980px;
    margin: 0 auto 40px;
    text-align: left;
}

#top #sec_04 li {
    margin-bottom: 5px;
    background: #ffffff;
}

#top #sec_04 li:last-child {
    margin: 0;
}

#top #sec_04 li a {
    display: flex;
    justify-content: space-between;
    position: relative;
    padding: 16px 25px;
    box-sizing: border-box;
}

#top #sec_04 li .date {
    position: relative;
    width: 20%;
    color: #0071c1;
    font-weight: 800;
    font-size: 18px;
    font-family: "Noto Sans Japanese";
}

#top #sec_04 li .date:after {
    display: block;
    position: absolute;
    top: 0;
    right: 37px;
    bottom: 0;
    width: 36%;
    height: 103%;
    margin: auto;
    border-right: solid 1px #e9e9e7;
    content: " ";
}

#top #sec_04 li .txt {
    width: 80%;
    line-height: 2.4;
    transition: .5s;
}

/*hover*/
@media only screen and (min-width:768px) {
    #top #sec_04 li:hover .txt {
        color: #0071c1;
        text-decoration: none;
    }

    #top #sec_04 li a:hover .txt::after {
        width: 100%;
    }

    #top #sec_04 li .txt:after {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 0;
        height: 2px;
        background-color: #0071c1;
        content: "";
        transition: .5s;
    }
}

/*--------------------------------------------
  MV
--------------------------------------------*/

.under #mainimage {
    padding: 74px 0;
    background-position: center;
    background-size: cover;
}

.under .pageTtl {
    color: #ffffff;
    font-weight: bold;
    font-size: 28px;
    line-height: 1.4;
    font-family: "Noto Sans Japanese";
}

.under .pageTtl span {
    display: block;
    font-size: 20px;
}

.under .pageTtl02 {
    position: relative;
    margin-bottom: 55px;
    color: #222222;
    font-weight: 800;
    font-size: 30px;
    font-family: "Noto Sans Japanese";
}

.under .pageTtl02 span {
    color: #0071c1;
}

.under .pageTtl02:after {
    display: inline;
    position: absolute;
    right: 0;
    bottom: -9px;
    left: 0;
    width: 6%;
    margin: auto;
    border-bottom: 3px #0071c3 dotted;
    content: " ";
}

/*-----------------------------------------------------

	about　　代表あいさつ

------------------------------------------------------*/

#about #mainimage,
#store #mainimage,
#outline #mainimage,
#efforts #mainimage,
#not-found #mainimage {
    background-image: url(../Image/about/mv.png);
}

#about #sec_01 {
    padding: 80px 0;
}

#about #sec_01 .secInner {
    margin: auto;
}

#about #sec_01 .pageTtl02 {
    margin-bottom: 80px;
}

#about #sec_01 .box01 {
    position: relative;
}

#about #sec_01 .box01 .imgArea {
    position: absolute;
    width: 41%;
    background: linear-gradient(rgb(255, 0, 0, 0) 30%, #b6dee6 28%);
    text-align: right;
}

#about #sec_01 .box01 .txtArea {
    float: right;
    width: 64%;
    padding: 80px 80px 80px 120px;
    box-sizing: border-box;
    background: #eff4f5;
    text-align: left;
}

#about #sec_01 .box01 .txtArea h4 {
    position: relative;
    margin-bottom: 24px;
    font-weight: 800;
    font-size: 30px;
    line-height: 1.4;
}

#about #sec_01 .box01 .txtArea p {
    margin-bottom: 30px;
}

#about #sec_01 .box01 .txtArea .ttl01 {
    margin-bottom: 0;
    color: #0071c1;
    font-weight: bold;
    font-size: 20px;
    line-height: 1;
}

#about #sec_01 .box01 .txtArea ul {
    width: 85%;
    counter-reset: number 0;
}

#about #sec_01 .box01 .txtArea li {
    display: inline-flex;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px dotted #b1cfe4;
    font-size: 16px;
    line-height: 1.5;
}

#about #sec_01 .box01 .txtArea li:before {
    padding-right: 15px;
    color: #0071c1;
    font-style: normal;
    font-weight: 700;
    font-size: 56px;
    font-family: montserrat, sans-serif;
    letter-spacing: -2px;
    content: counter(number) ". ";
    counter-increment: number 1;
}

#about #sec_01 .box01 .txtArea li:last-child {
    margin-bottom: 0;
}

#about #sec_01 .box01 .txtArea p:last-child {
    margin-bottom: 0;
}

#about #sec_01 .box01 .txtArea h4 span {
    display: block;
    color: #35a4bb;
    font-size: 16px;
    line-height: 1;
}

#about #sec_01 .box01 .txtArea h4:after {
    display: inline;
    position: absolute;
    right: 0;
    bottom: -8px;
    left: 0;
    width: 23%;
    border-bottom: 3px #0071c3 dotted;
    content: " ";
}

#about #sec_02 {
    padding: 80px 0 120px;
    background: url(../Image/about/bg_about.png) no-repeat;
}

#about #sec_02 .secInner {
    max-width: 1100px;
    margin: auto;
}

#about #sec_02 .secInner p {
    max-width: 800px;
    margin: auto;
    font-size: 17px;
    line-height: 2.4;
    text-align: left;
}

/*-----------------------------------------------------

	store　　店舗紹介

------------------------------------------------------*/

#store #sec_01 {
    padding: 80px 0 80px;
}

#store #sec_01 .secInner {
    max-width: 1100px;
    margin: auto;
}

#store #sec_01 .box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 60px;
}

#store #sec_01 .box .imgArea {
    width: 500px;
}

#store #sec_01 .box ul {
    text-align: left;
}

#store #sec_01 .box li {
    display: flex;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #c2ccd5;
}

#store #sec_01 .box li:last-child {
    margin-bottom: 0;
}

#store #sec_01 .box li .lBox {
    width: 30%;
    font-weight: bold;
}

#store #sec_01 .box li .rBox {
    width: 70%;
}

#store #sec_01 table {
    width: 1100px;
    margin: 0 auto 30px;
}

#store #sec_01 table tr {
    border: 1px solid #c2ccd5;
}

#store #sec_01 table th {
    padding: 10px;
    border: 1px solid #c2ccd5;
    background: #0071c1;
    color: #ffffff;
}

#store #sec_01 table th:first-child {
    width: 30%;
}

#store #sec_01 table td {
    width: 10%;
    border: 1px solid #c2ccd5;
    font-weight: bold;
}

#store #sec_01 .box02 {
    display: flex;
    justify-content: space-between;
}

#store #sec_01 .box02 h4 {
    margin-bottom: 10px;
    color: #0071c1;
    font-size: 20px;
}

#store #sec_01 .box02 .inner {
    width: 49%;
    padding: 20px;
    border: 1px solid #0071c1;
    box-sizing: border-box;
}

#store #sec_01 .box02 .inner ul {
    display: flex;
    justify-content: space-between;
    /* border-bottom: dashed 1px #0071c1; */
    /* padding-bottom: 10px; */
}

#store #sec_01 .box02 .inner li {
    color: #0071c1;
    font-weight: bold;
    font-size: 14px;
    font-family: "Noto Sans Japanese";
}

#store #sec_01 .box02 .inner li:before {
    display: block;
    margin-bottom: 0;
    padding-top: 45px;
    background: url(../Image/store/icon_service_01.png) no-repeat center center;
    content: "";
}

#store #sec_01 .box02 .inner li:nth-child(2):before {
    padding: 45px 42px 0;
    background: url(../Image/store/icon_service_02.png) no-repeat center center;
}

#store #sec_01 .box02 .inner li:nth-child(3):before {
    background: url(../Image/store/icon_service_03.png) no-repeat center center;
}

#store #sec_01 .box02 .inner li:nth-child(4):before {
    background: url(../Image/store/icon_service_04.png) no-repeat center center;
}

#store #sec_01 .box02 .inner .inbound {
    padding-top: 10px;
    color: #0071c1;
    font-weight: bold;
    font-size: 18px;
    font-family: "Noto Sans Japanese";
}

#store #sec_01 .box02 .inner02 {
    width: 49%;
    padding: 20px;
    border: 1px solid #0071c1;
    box-sizing: border-box;
}

#store #sec_01 .box02 .inner02 ul {
    display: flex;
    flex-wrap: wrap;
}

#store #sec_01 .box02 .inner02 li {
    margin: 0 0 8px 8px;
    padding: 5px 10px;
    background: #0071c1;
    color: #ffffff;
    font-weight: bold;
    font-size: 14px;
}

/*section02*/

#store #sec_02 {
    padding: 80px 0 80px;
    background: #eff4f5;
}

#store #sec_02 .secInner {
    max-width: 1100px;
    margin: auto;
}

#store #sec_02 .gmap {
    margin-bottom: 20px;
}

#store #sec_02 .gmap iframe {
    width: 100%;
}

#store #sec_02 ul {
    display: flex;
    justify-content: space-between;
}

#store #sec_02 li {
    width: 49%;
    padding: 15px;
    border: 1px solid #0071c1;
    box-sizing: border-box;
    font-size: 16px;
    line-height: 1.6;
}

#store #sec_02 li .lBox {
    color: #0071c1;
    font-weight: 800;
    font-size: 20px;
}

/*section03*/

#store #sec_03 {
    padding: 80px 0 80px;
}

#store #sec_03 .secInner {
    max-width: 1100px;
    margin: auto;
}

#store #sec_03 .box {
    max-width: 1100px;
    margin: auto;
}

#store #sec_03 .box ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#store #sec_03 .box li {
    width: 30%;
    margin-top: 40px;
    font-size: 14px;
    line-height: 1.7;
    text-align: left;
}

#store #sec_03 .box li:nth-child(-n + 3) {
    margin-top: 0;
}

#store #sec_03 .box li h5 {
    padding: 17px 0 10px;
    color: #0071c1;
    font-weight: bold;
    font-size: 20px;
    line-height: 1;
    text-align: center;
}

/*-----------------------------------------------------

	outline　　企業情報

------------------------------------------------------*/

#outline #sec_01 {
    padding: 80px 0 80px;
}

#outline #sec_01 .secInner {
    text-align: center;
}

#outline #sec_01 .secInner .box {
    padding-top: 15%;
    background: url(../Image/outline/img_outline_01.png) no-repeat center top;
    background-size: 100%;
}

#outline #sec_01 .secInner .box .inner {
    max-width: 1100px;
    margin: auto;
    padding: 60px 30px;
    box-sizing: border-box;
    background: #eff4f5;
}

#outline #sec_01 .secInner .box .inner .info {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
}

#outline #sec_01 .secInner .box .inner h4 {
    width: 35%;
    color: #0071c1;
    font-size: 22px;
}

#outline #sec_01 .secInner .box .inner ul {
    width: 65%;
}

#outline #sec_01 .secInner .box .inner li {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #bfcdd0;
    text-align: left;
}

#outline #sec_01 .secInner .box .inner iframe {
    width: 100%;
}

#outline #sec_01 .secInner .box .inner .lBox {
    width: 30%;
}

#outline #sec_01 .secInner .box .inner .rBox {
    width: 70%;
}

/*-----------------------------------------------------

	efforts　　私たちの取り組み

------------------------------------------------------*/

#efforts #sec_01 {
    padding: 80px 0 80px;
}

#efforts #sec_01 .secInner {
    margin: auto;
}

#efforts #sec_01 .box {
    padding: 60px 0;
}

#efforts #sec_01 .box .boxInner {
    display: flex;
    justify-content: space-between;
    max-width: 1100px;
    margin: auto;
}

#efforts #sec_01 .box .imgArea {
    width: 397px;
    overflow: hidden;
}

#efforts #sec_01 .box .imgArea img {
    transform: translate(-32%, 0%);
    height: 100%;
}

#efforts #sec_01 .box:nth-child(odd) .imgArea img {
    transform: translate(0%, 0%);
}

#efforts #sec_01 .box .txtArea .inner {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #dddddd;
}

#efforts #sec_01 .box .txtArea .inner:last-child {
    margin-bottom: 0;
}

#efforts #sec_01 .box .txtArea {
    width: 660px;
    text-align: left;
}

#efforts #sec_01 .box:nth-child(odd) {
    background: #eff4f5;
}

#efforts #sec_01 .box:nth-child(odd) .imgArea {
    order: 1;
}

#efforts #sec_01 .box:nth-child(odd) .txtArea {
    order: 0;
}

#efforts #sec_01 .box .txtArea h4 {
    margin-bottom: 20px;
    color: #0071c1;
    font-weight: bold;
    font-size: 26px;
    line-height: 1;
}

#efforts #sec_01 .box .txtArea h5 {
    line-height: 1.6;
}

#efforts #sec_01 .box .txtArea>p {
    margin-bottom: 15px;
}

#efforts #sec_01 .box .txtArea h5 span {
    font-size: 12px;
}

#efforts #sec_01 .box:nth-child(2) .txtArea h5 {
    width: 25%;
    font-weight: bold;
}

#efforts #sec_01 .box:nth-child(3) .txtArea h5 {
    width: 30%;
}

#efforts #sec_01 .box .txtArea .lBox {
    width: 26%;
}

#efforts #sec_01 .box .txtArea .inner p {
    width: 70%;
    font-size: 14px;
}

#efforts #sec_01 .box:nth-child(3) .txtArea .inner p {
    width: 65%;
}

#efforts #sec_01 .box .txtArea ul {
    /* display: flex; */
    /* margin-top: 30px; */
}

#efforts #sec_01 .box .txtArea li img {
    width: 100%;
}

/*section02*/

#efforts #sec_02 {
    padding: 80px 0 80px;
}

#efforts #sec_02 .secInner {
    margin: auto;
}

#efforts #sec_02 .box {
    position: relative;
    padding: 70px 0;
    background: url(../Image/efforts/img_efforts_04.png) no-repeat;
    background-size: cover;
}

#efforts #sec_02 .box:nth-child(2) {
    background: url(../Image/efforts/img_efforts_05.png) no-repeat;
    background-size: cover;
}

#efforts #sec_02 .box:nth-child(3) {
    background: url(../Image/efforts/img_efforts_06.png) no-repeat;
    background-size: cover;
}

#efforts #sec_02 .box:nth-child(4) {
    background: url(../Image/efforts/img_efforts_07.png) no-repeat;
    background-size: cover;
}

#efforts #sec_02 .box:nth-child(5) {
    background: url(../Image/efforts/img_efforts_08.png) no-repeat;
    background-size: cover;
}

#efforts #sec_02 .box .inner {
    max-width: 1100px;
    margin: auto;
}

#efforts #sec_02 .box .txtArea {
    max-width: 800px;
    padding: 80px;
    box-sizing: border-box;
    background: #ffffff;
}

#efforts #sec_02 .box:nth-child(even) .txtArea {
    float: right;
}

#efforts #sec_02 .box .txtArea h4 {
    margin-bottom: 30px;
    color: #0071c1;
    font-weight: bold;
    font-size: 30px;
    line-height: 1;
    font-family: "Noto Sans Japanese";
}

#efforts #sec_02 .box .txtArea p {
    font-size: 16px;
    line-height: 2;
    text-align: left;
}

/*-----------------------------------------------------

	prescription　　処方箋調剤

------------------------------------------------------*/

#prescription #mainimage,
#home_care #mainimage,
#h-support #mainimage,
#self_medication #mainimage {
    background-image: url(../Image/prescription/mv.png);
}

#prescription #sec_01 {
    padding: 80px 0;
}

#prescription #sec_01 .secInner {
    max-width: 1100px;
    margin: auto;
}

#prescription #sec_01 .read {
    max-width: 900px;
    margin: 0 auto 80px;
    font-size: 18px;
    text-align: left;
}

#prescription #sec_01 .read p:nth-child(n+2) {
    margin-top: 1em;
}

#prescription #sec_01 .read p.ttl {
    font-weight: 600;
    font-size: 1.1em;
    line-height: 1.4;
    text-align: center;
}

#prescription #sec_01 .read_list {
    margin-top: .5em;
    padding: 1.5em;
    background: #f3f3ef;
}

#prescription #sec_01 .read_list li {
    position: relative;
    padding-left: .8em;
}

#prescription #sec_01 .read_list li:before {
    position: absolute;
    top: .7em;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #0071c1;
    content: "";
}

#prescription #sec_01 .secInner>ul {
    display: flex;
    justify-content: space-between;
    margin-bottom: 4em;
}

#prescription #sec_01 .secInner>ul>li {
    width: 318px;
}

#prescription #sec_01 .secInner>ul>li p {
    font-size: 16px;
    line-height: 1.7;
    text-align: left;
}


/*-----------------------------------------------------

	home_care　　在宅医療

------------------------------------------------------*/
#home_care #sec_01 {
    padding: 80px 0;
}

#home_care #sec_01 .secInner {
    max-width: 1100px;
    margin: auto;
}

#home_care #sec_01 .box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 80px;
}

#home_care #sec_01 .box .read {
    width: 680px;
    text-align: left;
}

#home_care #sec_01 ul {
    display: flex;
    justify-content: space-between;
}

#home_care #sec_01 li {
    width: 23%;
    padding: 30px;
    box-sizing: border-box;
    background: #eaedf1;
    font-size: 14px;
}

#home_care #sec_01 li h5 {
    padding: 0 0 20px 0;
    color: #0071c1;
    font-weight: bold;
    font-size: 18px;
    line-height: 0;
    font-family: "Noto Sans Japanese";
}

#home_care #sec_01 li p {
    text-align: left;
}

#home_care #sec_01 li h5:before {
    display: block;
    width: 130px;
    height: 130px;
    margin: 0 auto 30px;
    padding-top: 45px;
    border-radius: 50%;
    box-sizing: border-box;
    background: url(../Image/home_care/icon_01.png) no-repeat center #ffffff;
    content: "";
    transition-duration: .3s;
}

#home_care #sec_01 li:nth-child(2) h5:before {
    background: url(../Image/home_care/icon_02.png) no-repeat center #ffffff;
}

#home_care #sec_01 li:nth-child(3) h5:before {
    background: url(../Image/home_care/icon_03.png) no-repeat center #ffffff;
}

#home_care #sec_01 li:nth-child(4) h5:before {
    background: url(../Image/home_care/icon_04.png) no-repeat center #ffffff;
}

/*-----------------------------------------------------

	h_support　　健康サポート

------------------------------------------------------*/
#h-support #sec_01 {
    padding: 80px 0;
}

#h-support #sec_01 .secInner {
    max-width: 1100px;
    margin: auto;
}

#h-support #sec_01 .read {
    max-width: 900px;
    margin: 0 auto 60px;
    text-align: left;
}

#h-support #sec_01 .box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 60px;
    padding: 25px;
    border: 3px solid #d1e1ed;
    box-sizing: border-box;
    text-align: left;
}

#h-support #sec_01 .box .imgArea {
    width: 22%;
    text-align: center;
}

#h-support #sec_01 .box .txtArea {
    width: 78%;
}

#h-support #sec_01 .box .txtArea.-full {
    width: 100%;
}

#h-support #sec_01 .box h5 {
    position: relative;
    margin-bottom: 5px;
    padding-left: 30px;
    box-sizing: border-box;
    color: #0071c1;
    font-size: 22px;
}

#h-support #sec_01 .box h5:before {
    display: inline-block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    color: #0071c1;
    font-family: "Font Awesome 5 Free";
    content: "\f0a4";
}

#h-support #sec_01 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
}

#h-support #sec_01 li {
    width: 318px;
    margin-bottom: 40px;
}

#h-support #sec_01 li h4:before {
    display: inline-block;
    position: absolute;
    top: 22%;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding-left: 111%;
    box-sizing: border-box;
    color: #0071c1;
    font-family: "Font Awesome 5 Free";
    content: "\f35a";
    transition-duration: .3s;
}

#h-support #sec_01 li a {
    display: block;
}

#h-support #sec_01 li .imgArea {
    overflow: hidden;
}

#h-support #sec_01 li .txtArea {
    padding: 0 20px 20px;
}

#h-support #sec_01 li p {
    font-size: 16px;
    line-height: 1.7;
    text-align: left;
}

#h-support #sec_01 li img {
    transition: .5s;
}

/*hover*/
@media only screen and (min-width:768px) {
    #h-support #sec_01 li a:hover h4:before {
        padding-left: 120%;
    }

    #h-support #sec_01 li a:hover {
        background: #d1e1ed;
    }

    #h-support #sec_01 li a:hover img {
        transform: scale(1.1);
    }
}

/*-----------------------------------------------------

	self_medication　　セルフメディケーション

------------------------------------------------------*/
#self_medication #sec_01 {
    padding: 80px 0;
}

#self_medication #sec_01 .secInner {
    margin: auto;
}

#self_medication #sec_01 .read {
    margin-bottom: 80px;
    padding: 50px 0;
    background: #eff4f5;
    font-size: 18px;
    text-align: left;
}

#self_medication #sec_01 .read .inner {
    max-width: 1100px;
    margin: auto;
}

#self_medication #sec_01 .read .inner .txtArea {
    padding: 50px;
    box-sizing: border-box;
}

#self_medication #sec_01 .read h4 {
    text-align: center;
}

#self_medication #sec_01 .box li {
    padding: 40px;
    box-sizing: border-box;
    background: #f6f5f0;
    font-size: 14px;
}

#self_medication #sec_01 .box li .inner {
    display: flex;
    justify-content: space-between;
    max-width: 1100px;
    margin: auto;

    //align-items: center;
}

#self_medication #sec_01 .box li:nth-child(even) {
    background: #ffffff;
}

#self_medication #sec_01 .box .imgArea {
    width: 270px;
}

#self_medication #sec_01 .box .txtArea {
    width: 780px;
    text-align: left;
}

#self_medication #sec_01 .box h5 {
    margin-bottom: 15px;
    font-size: 29px;
    line-height: 1;
}

#self_medication #sec_01 .box h5 span {
    margin-left: 5px;
    font-size: 18px;
}

#self_medication #sec_01 .box .subTtl {
    margin-bottom: 10px;
    color: #35a4bb;
    font-weight: bold;
    font-size: 22px;
    line-height: 1.4;
}

#self_medication #sec_01 .box .intro {
    margin-bottom: 15px;
}

#self_medication #sec_01 .box .price {
    text-align: right;
}

#self_medication #sec_01 .box .price span {
    font-size: 24px;
}

#self_medication #sec_01 .box .ttlArea {
    margin-bottom: 30px;
}

#self_medication #sec_02 {
    padding: 0 0 80px;
}

#self_medication #sec_02 .secInner {
    max-width: 1100px;
    margin: auto;
}

#self_medication #sec_02 ul {
    display: flex;
    justify-content: space-between;
}

#self_medication #sec_02 li {
    width: 472px;
}

#self_medication #sec_02 li .imgArea {
    overflow: hidden;
}

#self_medication #sec_02 li .imgArea img {
    transition-duration: .3s;
}

#self_medication #sec_02 li .txtArea {
    padding: 30px;
    box-sizing: border-box;
    transition-duration: .3s;
}

#self_medication #sec_02 li a {
    display: block;
}

#self_medication #sec_02 li h5 {
    display: inline-block;
    position: relative;
    margin-bottom: 15px;
    font-weight: bold;
    font-size: 22px;
}

#self_medication #sec_02 li h5 span {
    display: block;
    color: #35a4bb;
    font-size: 16px;
    line-height: 1;
}

#self_medication #sec_02 li h5:before {
    display: inline-block;
    position: absolute;
    top: 22%;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding-left: 111%;
    box-sizing: border-box;
    color: #0071c1;
    font-family: "Font Awesome 5 Free";
    content: "\f35a";
    transition-duration: .3s;
}

#self_medication #sec_02 li h5:after {
    display: inline;
    position: absolute;
    right: 0;
    bottom: -5px;
    left: 0;
    width: 23%;
    margin: auto;
    border-bottom: 3px #0071c3 dotted;
    content: " ";
}

#self_medication #sec_02 li p {
    text-align: left;
}

#self_medication #sec_02 .box02 {
    padding: 30px 20px;
    background: #f6f5f0;
}

#self_medication #sec_02 .box03 {
    max-width: 430px;
    margin: 0 auto;
    margin-top: 20px;
    padding: 20px;
    border: 1px solid #0071c1;
    background: #ffffff;
    text-align: center;
}

#self_medication #sec_02 .box03 .box_in {
    display: inline-block;
    text-align: left;
}

#self_medication #sec_02 .box03 .box_in span {
    display: block;
    font-weight: bold;
}

#self_medication #sec_02 .box03 .box_in a {
    text-decoration: underline;
    word-break: break-all;
}

#self_medication #sec_02 .box03 .box_in a.rakuten {
    margin-bottom: 10px;
}

/*hover*/

#self_medication #sec_02 li a:hover .txtArea {
    background: #d1e1ed;
}

#self_medication #sec_02 li a:hover h5:before {
    padding-left: 116%;
}

#self_medication #sec_02 li a:hover .imgArea img {
    transform: scale(1.1);
}

/*-----------------------------------------------------

	blog　　ブログ

------------------------------------------------------*/

#blog #main-cts {
    display: flex;
    justify-content: space-between;
    max-width: 1100px;
    margin: auto;
}

#blog #mainimage {
    background-image: url(../Image/blog/mv.png);
}

#blog #sec_01 {
    width: 72%;
    padding: 80px 0;
}

#blog #sec_01 .secInner {
    margin: auto;
}

#blog #sec_01 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 50px;
}

#blog #sec_01 li {
    position: relative;
    width: 50%;
    padding: 40px;
    border-right: 1px dotted #c2ccd5;
    border-bottom: 1px dotted #c2ccd5;
    box-sizing: border-box;
    text-align: left;
}

#blog #sec_01 li:nth-child(-n + 2) {
    padding-top: 0;
}

#blog #sec_01 li:nth-child(even) {
    border-right: none;
}

#blog #sec_01 li:last-child,
#blog #sec_01 li:nth-last-child(2) {
    border-bottom: none;
}

#blog #sec_01 li a {
    display: block;
}

#blog #sec_01 li .imgArea {
    position: relative;
    width: 100%;
    margin: 0 auto 15px;
    padding-top: 70%;
    overflow: hidden;
}

#blog #sec_01 li img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 180%;
    max-height: 180%;

    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

#blog #sec_01 li .badge {
    position: absolute;
    top: 30px;
    left: 31px;
    padding: 5px;
    background: #000000;
    color: #ffffff;
    font-weight: bold;
    font-size: 12px;
}

#blog #sec_01 li:nth-child(-n + 2) .badge {
    top: -7px;
}

#blog #sec_01 li .title {
    position: relative;
    font-weight: bold;
    font-size: 18px;
    line-height: 1.5;
}

#blog #sec_01 li .title:after {
    display: block;
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    border-bottom: solid 2px #00b2d6;
    content: " ";
    transition: all .3s ease;

    -webkit-transition: all .3s ease;
}

#blog #sec_01 li a:hover .title:after {
    width: 100%;
}

#blog #sec_01 li .date {
    color: #686a6d;
    font-weight: bold;
    font-size: 14px;
}

#blog #sec_01 li .txtArea {
    margin-bottom: 15px;
    color: #37373c;
    font-size: 14px;
}

#blog #sec_01 li .detialBtn02 {
    width: 80%;
    margin: auto;
    padding: 7px 0;
    background: #0071c1;
    color: #ffffff;
    font-weight: bold;
    text-align: center;
    transition-duration: .3s;
}

#blog #sec_02 {
    width: 22%;
    padding: 80px 0;
}

#blog #sec_02 .secInner {
    margin: auto;
}

#blog #sec_02 .newArea {
    margin-bottom: 30px;
}

#blog #sec_02 h3 {
    position: relative;
    margin-bottom: 15px;
    font-size: 24px;
    font-family: "Noto Sans Japanese";
}

#blog #sec_02 h3:after {
    display: inline;
    position: absolute;
    right: 0;
    bottom: -6px;
    left: 0;
    width: 100%;
    margin: 0 auto 0;
    border-bottom: 3px #0071c3 dotted;
    content: " ";
}

#blog #sec_02 .newArea li {
    border-bottom: 1px dotted #c2ccd5;
    box-sizing: border-box;
    text-align: left;

    //height: 122px;
}

#blog #sec_02 .newArea li a {
    display: flex;
    justify-content: space-between;
    padding: 10px 0;
}

#blog #sec_02 .newArea li .imgArea {
    position: relative;
    width: 40%;
    height: 100px;
    margin: 0 auto;
    overflow: hidden;
}

#blog #sec_02 .newArea li img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 180%;
    max-height: 180%;

    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

#blog #sec_02 .newArea li .txtArea {
    width: 60%;
    padding-left: 11px;
    box-sizing: border-box;
}

#blog #sec_02 li .badge {
    display: inline-block;
    padding: 0 2px;
    background: #000000;
    color: #ffffff;
    font-size: 10px;
}

#blog #sec_02 li .ttleArea {
    color: #777777;
    font-size: 13px;
    line-height: 1.4;
}

#blog #sec_02 .dateArea {
    display: inline-block;
    font-size: 12px;
}

#blog #sec_02 .categoryArea li {
    border-bottom: 1px dotted #c2ccd5;
    text-align: center;
}

#blog #sec_02 .categoryArea li a {
    display: block;
    padding: 10px 0;
    color: #5e5f63;
    font-weight: bold;
}

#top #sec_03 li .badge.cate01,
#blog #sec_01 li .badge.cate01,
#blog #sec_02 li .badge.cate01 {
    background: #e1002a;
}

#top #sec_03 li .badge.cate02,
#blog #sec_01 li .badge.cate02,
#blog #sec_02 li .badge.cate02 {
    background: #fdc800;
}

#top #sec_03 li .badge.cate03,
#blog #sec_01 li .badge.cate03,
#blog #sec_02 li .badge.cate03 {
    background: #006d6a;
}

#top #sec_03 li .badge.cate04,
#blog #sec_01 li .badge.cate04,
#blog #sec_02 li .badge.cate04 {
    background: #00b4e3;
}

#top #sec_03 li .badge.cate05,
#blog #sec_01 li .badge.cate05,
#blog #sec_02 li .badge.cate05 {
    background: #ff6c00;
}

#top #sec_03 li .badge.cate06,
#blog #sec_01 li .badge.cate06,
#blog #sec_02 li .badge.cate06 {
    background: #46ab22;
}

#top #sec_03 li .badge.cate07,
#blog #sec_01 li .badge.cate07,
#blog #sec_02 li .badge.cate07 {
    background: #1f42a6;
}

#top #sec_03 li .badge.cate08,
#blog #sec_01 li .badge.cate08,
#blog #sec_02 li .badge.cate08 {
    background: #60307b;
}

#top #sec_03 li .badge.cate09,
#blog #sec_01 li .badge.cate09,
#blog #sec_02 li .badge.cate09 {
    background: #ff4594;
}

#top #sec_03 li .badge.cate10,
#blog #sec_01 li .badge.cate10,
#blog #sec_02 li .badge.cate10 {
    background: #00c3ae;
}

/*over*/
@media only screen and (min-width:768px) {
    #blog #sec_01 li a:hover .detialBtn02 {
        background: #00b2d6;
    }

    #blog #sec_02 .newArea li a:hover {
        background: #eaedf1;
    }

    #blog #sec_02 .newArea li a:hover .ttleArea {
        color: #0071c1;
    }

    #blog #sec_02 .categoryArea li a:hover {
        background: #eaedf1;
        color: #0071c1;
    }
}

/*ブログ　詳細*/

#blog .box {
    margin-bottom: 60px;
    text-align: left;
}

#blog .box .dateArea02 {
    margin-bottom: 25px;
    padding: 12px;
    border-top: 1px solid #aaaaaa;
    border-bottom: 1px solid #aaaaaa;
}

#blog .box .date {
    display: inline;
    color: #666666;
    font-size: 14px;
}

#blog .box .category {
    display: inline;
    padding: 0 0 0 10px;
    font-weight: bold;
    font-size: 14px;
}

#blog .box .category a {
    color: #0071c1;
}

#blog .box .category a:hover {
    text-decoration: underline;
}

#blog .box .txt_box {
    margin-bottom: 30px;
}

#blog .box img {
    max-width: 100%;
    height: auto;
    margin-bottom: 20px;
}

#blog .box .pageTtl02 {
    margin-bottom: 20px;
    line-height: 1.4;
}

#blog .box .pageTtl02:after {
    border: none;
}

#blog .box p {
    margin-bottom: 15px;
}

#blog .box h4 {
    margin-bottom: 15px;
    border-bottom: 3px dotted #0071c1;
    color: #0071c1;
    font-size: 22px;
    line-height: 1.4;
}

#blog .box h5 {
    margin-bottom: 15px;
    font-size: 20px;
    line-height: 1.4;
}

#blog .box .detialBtn {
    text-align: center;
}

/*-----------------------------------------------------

	news　　お知らせ

------------------------------------------------------*/

#news #mainimage {
    background-image: url(../Image/news/mv.png);
}

#news {
    background: #f3f3ef;
}

#news #sec_01 {
    padding: 80px 0;
}

#news #sec_01 .secInner {
    max-width: 1000px;
    margin: auto;
}

#news #sec_01 .news_list {
    max-width: 980px;
    margin: 0 auto 40px;
    text-align: left;
}

#news #sec_01 .news_list li {
    margin-bottom: 5px;
    background: #ffffff;
}

#news #sec_01 .news_list li a {
    display: flex;
    justify-content: space-between;
    position: relative;
    padding: 16px 25px;
    box-sizing: border-box;
}

#news #sec_01 .news_list li:last-child {
    margin: 0;
}

#news #sec_01 .news_list .date {
    position: relative;
    width: 20%;
    color: #0071c1;
    font-weight: 800;
    font-size: 18px;
    font-family: "Noto Sans Japanese";
}

#news #sec_01 .news_list .date:after {
    display: block;
    position: absolute;
    top: 0;
    right: 37px;
    bottom: 0;
    width: 36%;
    height: 103%;
    margin: auto;
    border-right: solid 1px #e9e9e7;
    content: " ";
}

#news #sec_01 .news_list .ttl {
    width: 80%;
    line-height: 2.4;
    transition: .5s;
}

/*hover*/
@media only screen and (min-width: 768px) {
    #news #sec_01 .news_list li:hover .ttl {
        color: #0071c1;
        text-decoration: none;
    }

    #news #sec_01 .news_list li a:hover .ttl::after {
        width: 100%;
    }
}

#news #sec_01 .news_list li .ttl:after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    background-color: #0071c1;
    content: "";
    transition: .5s;
}

/*新着情報　詳細ページ*/

#news #sec_01 .news_single .pageTtl02 {
    margin-bottom: 40px;
    line-height: 1.4;
    text-align: left;
}

#news #sec_01 .news_single .pageTtl02:after {
    width: 100%;
}

#news #sec_01 .news_single .txt_box {
    margin-bottom: 40px;
    text-align: left;
}

#news #sec_01 .news_single .date {
    font-weight: bold;
    text-align: left;
}

#news #sec_01 .news_single p {
    margin-bottom: 20px;
}

#news #sec_01 .news_single p:last-child {
    margin-bottom: 0;
}

/*-----------------------------------------------------

	sitemap　　サイトマップ

------------------------------------------------------*/

#sitemap #mainimage,
#privacy #mainimage {
    background-image: url(../Image/sitemap/mv.png);
}

#sitemap #sec_01 {
    padding: 80px 0;
}

#sitemap #sec_01 .secInner {
    max-width: 1100px;
    margin: auto;
}

#sitemap #sec_01 ul {
    display: flex;
    flex-wrap: wrap;
}

#sitemap #sec_01 li {
    width: 30%;
    margin-top: 25px;
    margin-right: 52px;
    border: 1px solid #00b2d6;
}

#sitemap #sec_01 li p {
    position: relative;
}

#sitemap #sec_01 li p:before {
    display: inline-flex;
    position: absolute;
    top: 0;
    right: -49px;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    color: #0071c1;
    font-family: "Font Awesome 5 Free";
    content: "\f35a";
    transition-duration: .3s;
}

#sitemap #sec_01 li:nth-child(-n + 3) {
    margin-top: 0;
}

#sitemap #sec_01 li:nth-child(3n) {
    margin-right: 0;
}

#sitemap #sec_01 li a {
    display: block;
    padding: 20px 0;
    box-sizing: border-box;
    color: #0071c1;
    font-weight: bold;
}

/*hover*/

#sitemap #sec_01 li a:hover {
    background: #00b2d6;
    color: #ffffff;
}

#sitemap #sec_01 li a:hover p:before {
    right: -55px;
    color: #ffffff;
}

/*-----------------------------------------------------

	privacy　　プライバシーポリシー

------------------------------------------------------*/

#privacy #sec_01 {
    padding: 80px 0;
}

#privacy #sec_01 .secInner {
    max-width: 1100px;
    margin: auto;
}

#privacy #sec_01 .lead {
    margin-bottom: 40px;
}

#privacy #sec_01 dl {
    max-width: 900px;
    margin: auto;
}

#privacy #sec_01 dt {
    position: relative;
    font-weight: bold;
    font-family: "Noto Sans Japanese";
    text-align: center;
}

#privacy #sec_01 dt:before {
    display: inline;
    position: absolute;
    right: 0;
    bottom: -4px;
    left: 0;
    width: 6%;
    margin: auto;
    border-bottom: 3px #35a4bb dotted;
    content: " ";
}

#privacy #sec_01 dd {
    margin-bottom: 30px;
    text-align: left;
}

#privacy #sec_01 dd:last-child {
    margin-bottom: 0;
}

#privacy #sec_01 dd .txt {
    margin-bottom: 20px;
}

#privacy #sec_01 li {
    display: flex;
    margin-bottom: 10px;
    margin-left: 25px;
    padding: 0 6px 10px 0;
    border-bottom: 1px dotted #a6ccd4;
}

#privacy #sec_01 li:last-child {
    margin-bottom: 0;
}

#privacy #sec_01 li span {
    display: block;
    padding-right: 12px;
    color: #6a6c73;
    font-weight: bold;
    font-size: 22px;
    line-height: 1;
}

/*-----------------------------------------------------

	contact　　お問い合わせ

------------------------------------------------------*/

#contact #mainimage,
#thanks #mainimage {
    background-image: url(../Image/contact/mv.png);
}

#contact #sec_01 {
    padding: 80px 0;
}

#contact #sec_01 .secInner {
    max-width: 1000px;
    margin: auto;
}

#contact .description p {
    margin: 0 0 20px 0;
    line-height: 1.7;
}

#contact #sec_01 table {
    font-size: 16px;
    line-height: 2.2;
    text-align: left;
}

#contact #sec_01 tbody {
    vertical-align: top;
}

#contact #sec_01 tr {
    border-bottom: 1px solid #d0cabf;
}

#contact #sec_01 th {
    width: 30%;
    padding: 15px 0;
    color: #312e2e;
    font-size: 15px;
    line-height: 1.7;
}

#contact #sec_01 th span {
    line-height: 2.1;
}

#contact #sec_01 td {
    width: 70%;
    padding: 15px 0 15px 30px;
    box-sizing: border-box;
    color: #312e2e;
    font-size: 15px;
    line-height: 2.2;
}

#contact #sec_01 .sheet_01 td li input,
#contact #sec_01 .sheet_01 td li select {
    margin: 0 0 0 15px;
}

#contact #sec_01 .sheet_01 td input,
#contact #sec_01 .sheet_01 td textarea,
#contact #sec_01 .sheet_01 td li select,
form#mailformpro label {
    color: #312e2e;
    line-height: 24px;
}

#contact #sec_01 .sheet_01 td input.long {
    width: 65%;
}

#contact #sec_01 .sheet_01 td input.middle {
    width: 45%;
}

#contact #sec_01 .sheet_01 td input.short {
    width: 30%;
}

/*#contact #sec_01 .sheet_01 td input[type="checkbox"] {
  display: inline-block;
  width: 1.1em;
  margin: 0 3px 0 3px;
  height: 28px;
}*/
#contact #sec_01 .sheet_01 td select {
    padding: 3px 8px;
    line-height: 24px;
    font-family: "メイリオ", Meiryo, sans-serif;
}

#contact #sec_01 .sheet_01 td textarea {
    width: 99% !important;
    height: 150px !important;
    box-sizing: border-box;
    font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    resize: none;
}

#contact #sec_01 .mfp_buttons {
    padding: 30px 0 0;
}

#contact #sec_01 .mfp_buttons button {
    display: block;
    width: 280px;
    margin: 0 auto;
    padding: 12px 0;
    border: 2px solid #ef647c;
    border-radius: 0 !important;
    background: #ef647c;
    color: #ffffff;
    font-weight: bold;
    font-size: 16px;
    line-height: 1;
    text-decoration: none;
    text-align: center;
    transition: .4s;
}

#contact #sec_01 .mfp_buttons button:hover {
    border: 2px solid #ef647c;
    background: #ffffff;
    color: #ef647c;
}

#contact .mfp_buttons {
    padding: 40px 0 0;
}

#contact input[type="radio"] {
    width: 1.1em;
    height: 1.1em;
}

#contact #sec_01 .sheet_01 td li {
    margin: 0 0 15px;
}

#contact #sec_01 .sheet_01 td li:last-child {
    margin: 0;
}

/*補助テキスト*/
#contact #sec_01 .sheet_01 td .support {
    margin: 0 0 0 8px;
    color: #737373;
    font-size: 12px;
    font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/*送信ボタン*/
#contact #sec_01 .mfp_buttons button,
#contact #sec_01 #mfp_button_send {
    display: block;
    width: 280px;
    margin: 0 auto;
    padding: 12px 0;
    border: 2px solid #e1002a;
    border-radius: 0 !important;
    background: #e1002a;
    color: #ffffff;
    font-weight: bold;
    font-size: 16px;
    line-height: 1;
    text-decoration: none;
    text-align: center;
    text-shadow: none;
    transition: .4s;
}

#contact #sec_01 .mfp_buttons button:hover,
#contact #sec_01 #mfp_button_send:hover {
    border: 2px solid #e1002a;
    background: #ffffff;
    color: #e1002a;
}

#contact #sec_01 .mfp_buttons button#mfp_button_cancel {
    border: 2px solid #adadad;
    background: #adadad;
}

#contact #sec_01 .mfp_buttons button#mfp_button_cancel:hover {
    border: 2px solid #adadad;
    background: #ffffff;
    color: #adadad;
}

div.prefcodeResult {
    position: static;
}

/*mailformproを使用する場合、エラーメッセージなどのエフェクトがうざい場合は以下を使ってください。must-fillはサイト毎に変更必要です。*/
/* フォーム部品のボックスシャドウ打消し */
.mfp_element_text,
.mfp_element_number,
.mfp_element_select-one,
.mfp_element_email,
.mfp_element_tel,
.mfp_element_textarea {
    padding: 5px 9px;
    border-radius: 0;
    box-shadow: none;
    font-size: 14px;
}

/* 入力エラーのチカチカなし、文字色 */
div.mfp_err {
    padding-left: 0;
    background: none;
    color: #a03535;
    font-weight: bold;
    font-size: 13px;
    font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/* エラー箇所のフォーム部品を色つきで強調 */
.problem {
    background-color: #efe3e3;
}

/* 入力OKのエフェクト */
div.mfp_ok {
    border-color: #ff7500;
    background-color: #ff7500;
    font-size: 12px;
}

/* チェックボックスのエフェクト打消し */
form#mailformpro label.mfp_not_checked {
    padding: 0;
    border: none;
}

form#mailformpro label.mfp_checked {
    padding: 0;
    border: none;
    background: none;
}

/* ボタンのエフェクト打消し */
.mfp_element_submit,
.mfp_element_reset,
.mfp_element_button {
    font-size: .8em;
    text-shadow: none;
}

/* 内容確認画面のテーブルを全幅 */
#mfp_confirm_table {
    width: 100% !important;
    margin: 0 auto;
}

/* 入力画面の「必須」のデザイン */
.must-fill {
    display: inline-block;
    float: right;
    margin: 7px 0 0 0;
    padding: 1px 8px;
    border-radius: 2px;
    background: #fb7358;
    color: #ffffff;
    font-size: .7em;
}

.not_must-fill {
    display: inline-block;
    float: right;
    margin: 7px 0 0 0;
    padding: 1px 8px;
    border-radius: 2px;
    background: #999999;
    color: #ffffff;
    font-size: .7em;
}

div.mfp_buttons {
    padding: 30px 0 10px;
}

/* 内容確認画面のテーブルのデザイン */

table#mfp_confirm_table tr th,
table#mfp_confirm_table tr td {
    font-size: 16px;
}

div#mfp_phase_confirm h4 {
    margin: 0 0 30px;
    color: #00b2d6;
    font-size: 24px;
}

table#mfp_confirm_table tr.mfp_achroma,
.mfp_achroma,
#contact #sec_01 tr {
    background: none;
}

/*ボタン装飾*/
input[type=radio],
input[type=checkbox] {
    display: none;
}

.radio,
.checkbox {
    display: inline-block;
    position: relative;
    margin: 0 20px 8px 0;
    padding: 12px 12px 12px 42px;
    border-radius: 8px;
    box-sizing: border-box;
    background-color: #ebf3f5;
    vertical-align: middle;
    cursor: pointer;
    transition: background-color .2s linear;

    -webkit-transition: background-color .2s linear;
}

.radio:hover,
.checkbox:hover {
    background-color: #98e3f3;
}

.radio:hover:after,
.checkbox:hover:after {
    border-color: #ffffff;
}

.radio:after,
.checkbox:after {
    display: block;
    position: absolute;
    top: 50%;
    left: 15px;
    width: 16px;
    height: 16px;
    margin-top: -10px;
    border: 2px solid #bbbbbb;
    border-radius: 6px;
    content: "";
    transition: border-color .2s linear;

    -webkit-transition: border-color .2s linear;
}

.radio:before {
    display: block;
    opacity: 0;
    position: absolute;
    top: 50%;
    left: 20px;
    width: 10px;
    height: 10px;
    margin-top: -5px;
    border-radius: 50%;
    background-color: #53b300;
    content: "";
    transition: opacity .2s linear;

    -webkit-transition: opacity .2s linear;
}

input[type=radio]:checked+.radio:before {
    opacity: 1;
}

.checkbox:before {
    display: block;
    opacity: 0;
    position: absolute;
    top: 50%;
    left: 21px;
    transform: rotate(45deg);
    width: 5px;
    height: 9px;
    margin-top: -7px;
    border-right: 3px solid #0071c3;
    border-bottom: 3px solid #0071c3;
    content: "";
    transition: opacity .2s linear;

    -webkit-transition: opacity .2s linear;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
}

input[type=checkbox]:checked+.checkbox:before {
    opacity: 1;
}

/*=======サンクスページ=======*/

.thanks_ctn {
    width: 1100px;
    margin: auto;
    padding: 80px 0;
    line-height: 1.7;
}

.thanks_ctn p {
    margin: 0 0 40px 0;
    line-height: 1.7;
}

/*-----------------------------------------------------

	recruit common 　リクルート

------------------------------------------------------*/
/*header・共通*/
#recruit header {
    position: relative;
    z-index: 10;
}

#recruit header .hNavi {
    margin-right: 30px;
}

#recruit header .hNavi li a {
    color: #ffffff;
}

#recruit header .hNavi li span {
    color: #fffc9d;
}

#recruit header .hNavi li:nth-child(1) a:before {
    background: url(../Image/recruit/navi01.png) no-repeat center center;
}

#recruit header .hNavi li:nth-child(2) a:before {
    background: url(../Image/recruit/navi02.png) no-repeat center center;
}

#recruit header .hNavi li:nth-child(3) a:before {
    background: url(../Image/recruit/navi03.png) no-repeat center center;
}

#recruit header .hNavi li:nth-child(4) a:before {
    background: url(../Image/recruit/navi03.png) no-repeat center center;
}

#recruit header .hNavi li:nth-child(5) a:before {
    background: url(../Image/recruit/navi03.png) no-repeat center center;
}

#recruit header .hNavi li:nth-child(6) a:before {
    background: url(../Image/recruit/navi04.png) no-repeat center center;
}

#recruit header .hNavi li:nth-child(5) a span:before,
#recruit header .hNavi li:nth-child(5) a span:after {
    content: none;
}

.for_recruit .hNavi {
    width: 865px;
}

#recruit header .hNavi li a:hover:before {
    background-position: top;
}

#recruit header .hdrLink a {
    background: #005794;
}

#recruit header .hdrLink a:hover {
    background: #00b2d6;
    letter-spacing: 2px;
}

#recruit header .hNavi li:nth-child(3) span::before,
#recruit header .hNavi li:nth-child(3) span::after,
#recruit header .hNavi li:nth-child(4) span::before,
#recruit header .hNavi li:nth-child(4) span::after {
    display: none;
}

#recruit #mainimage {
    min-width: 1250px;
}

#recruit section {
    padding: 80px 0;
}

#recruit .secInner {
    max-width: 1200px;
    margin: 0 auto;
}

#recruit .ttltxt_1 {
    margin-bottom: 30px;
    color: #0071c1;
    font-weight: bold;
    font-size: 30px;
    font-family: "Noto Sans Japanese";
}

#recruit .pageTtl {
    font-size: 18px;
    line-height: 1.2;
}

#recruit .pageTtl span {
    font-size: 100px;
    font-family: "Montserrat", sans-serif;
}

/*recruitTOP*/
#recruit .recruit #mainimage {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 250px 0 113px 0;
    background-image: url(../Image/recruit/mv_top.png);
    background-position: center;
    background-size: cover;
    color: #ffffff;
}

#recruit .recruit #contents {
    margin-top: 677px;
}

#recruit .recruit #sec_01 {
    background: url(../Image/recruit/bg01_top.png) no-repeat;
    background-size: cover;
}

#recruit .recruit #sec_01 .read p {
    line-height: 3;
}

#recruit .recruit #sec_02 .secInner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

#recruit .recruit #sec_02 .secInner .lBox {
    width: 50%;
}

#recruit .recruit #sec_02 .secInner .lBox img {
    width: 100%;
}

#recruit .recruit #sec_02 .secInner .rBox {
    width: 50%;
    padding-left: 80px;
    box-sizing: border-box;
    text-align: left;
}

#recruit .recruit #sec_02 .ttltxt_2 {
    display: inline-block;
    position: relative;
    padding-bottom: 35px;
    color: #0071c1;
    font-size: 97px;
    line-height: 1;
    font-family: "Montserrat", sans-serif;
}

#recruit .recruit #sec_02 .ttltxt_2 span {
    margin-left: 4px;
    color: #222222;
    font-weight: 500;
    font-size: 18px;
    font-family: "Noto Sans Japanese";
}

#recruit .recruit #sec_02 .ttltxt_2:after {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 94px;
    height: 10px;
    background: #0071c1;
    content: "";
}

#recruit .recruit #sec_02 .ttltxt_3 {
    margin-top: 19px;
    font-size: 24px;
}

#recruit .recruit #sec_02 .rBox p {
    margin-top: 15px;
}

#recruit .recruit #sec_02 .detialBtn {
    margin-top: 53px;
}

#recruit .recruit #sec_03 {
    background: url(../Image/recruit/bg02_top.jpg) no-repeat;
    background-size: contain;
}

#recruit .recruit #sec_03 .secInner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#recruit .recruit #sec_03 .secInner .Box {
    width: 570px;
}

#recruit .recruit #sec_03 .imgArea {
    overflow: hidden;
}

#recruit .recruit #sec_03 .imgArea img {
    transition-duration: .3s;
}

#recruit .recruit #sec_03 .txtArea {
    padding: 50px 0;
    background: #f3f3ef;
}

#recruit .recruit #sec_03 .txtArea .ttl {
    display: inline-block;
    position: relative;
    font-weight: bold;
    font-size: 30px;
}

#recruit .recruit #sec_03 .txtArea .ttl:before {
    display: inline-block;
    position: absolute;
    right: -43px;
    box-sizing: border-box;
    color: #0071c1;
    font-family: "Font Awesome 5 Free";
    content: "\f35a";
    transition-duration: .3s;
}

#recruit .recruit #sec_03 .txtArea p {
    font-weight: 500;
}

#recruit .recruit #sec_04 {
    background: url(../Image/recruit/bg03_top.png) no-repeat;
    background-size: cover;
}

#recruit .recruit #sec_04 .ttltxt_2 {
    color: #ffffff;
    font-size: 97px;
    line-height: 1;
    font-family: "Montserrat", sans-serif;
}

#recruit .recruit #sec_04 .secInner p {
    color: #ffffff;
    font-size: 24px;
    line-height: 1.9;
    font-family: "Noto Sans Japanese";
}

#recruit .recruit #sec_04 .entryBtn {
    margin-top: 40px;
}

#recruit .recruit #sec_04 .entryBtn a {
    position: relative;
    padding: 37px 115px 37px 87px;
    background: #ffffff;
    color: #0071c1;
    font-weight: bold;
    font-size: 28px;
    line-height: 1;
    font-family: "Noto Sans Japanese";
}

#recruit .recruit #sec_04 .entryBtn a:after {
    display: inline-block;
    position: absolute;
    right: 52px;
    box-sizing: border-box;
    color: #0071c1;
    font-family: "Font Awesome 5 Free";
    content: "\f35a";
    transition-duration: .3s;
}

@media only screen and (min-width:768px) {
    #recruit .recruit #sec_03 a:hover .txtArea .ttl:before {
        right: -53px;
    }

    #recruit .recruit #sec_03 a:hover .imgArea img {
        transform: scale(1.1);
    }

    #recruit .recruit #sec_04 .entryBtn a:hover {
        background: #00b2d6;
        color: #ffffff;
    }

    #recruit .recruit #sec_04 .entryBtn a:hover:after {
        right: 42px;
        color: #ffffff;
    }
}

/*-----------------------------------------------------

	recruit voice 　先輩の声

------------------------------------------------------*/

.voice #mainimage {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 150px 0 130px 0;
    background-image: url(../Image/recruit/voice/mv.png);
    background-position: center;
    background-size: cover;
    color: #ffffff;
}

.voice #contents {
    margin-top: 280px;
}

.voice #sec_01 {
    padding: 80px 0;
}

.voice #sec_01 .secInner {
    max-width: 1100px;
    margin: auto;
}

.voice #sec_01 .box01 {
    text-align: left;
}

.voice #sec_01 .box01 {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 40px;
}

.voice #sec_01 .box01 .leftBox {
    width: 40%;
}

.voice #sec_01 .box01 .rightBox {
    width: 60%;
}

.voice #sec_01 .box01 .rightBox .imgArea {
    height: 500px;
}

.voice #sec_01 .box01 .rightBox img {
    width: 100%;
    height: 100%;

    object-fit: contain;
}

.voice #sec_01 .box01 .ttlName {
    margin-bottom: 70px;
    font-size: 48px;
    line-height: 1.6;
    font-family: "Noto Sans Japanese";
}

.voice #sec_01 .box01 h3 {
    position: relative;
}

.voice #sec_01 .box01 h3:after {
    display: block;
    position: absolute;
    bottom: -27px;
    left: 0;
    width: 50%;
    border-bottom: dashed 1px #2d2524;
    content: " ";
}

.voice #sec_01 .box01 .ttlName span {
    display: block;
    color: #9e9a99;
    font-size: 15px;
}

.voice #sec_01 .box01 .txtBox {
    display: inline-block;
    max-width: 90%;
    padding: 10px;
    background: #0071c1;
    color: #ffffff;
    font-weight: bold;
    font-size: 18px;
}

.voice #sec_01 .box02 .txtArea .job {
    display: inline-block;
    margin-bottom: 5px;
    font-weight: bold;
}

.voice #sec_01 .box02 .txtArea .job:after {
    display: block;
    width: 100%;
    border-bottom: dashed 1px #2d2524;
    content: "";
}

.voice #sec_01 .box02 .comment {
    max-width: 900px;
    margin: 20px auto 0;
}

.voice #sec_01 .box02 .interview_list li {
    padding: 20px 0;
    border-bottom: 1px dotted #b1cfe4;
    text-align: left;
}

.voice #sec_01 .box02 .interview_list li .q {
    margin-bottom: 15px;
    padding-left: 1em;
    color: #0071c1;
    font-weight: bold;
    font-size: 20px;
    text-indent: -1em;
}

.voice #sec_01 .box02 .interview_list li .a {
    margin-left: 20px;
    padding-left: 1em;
    text-indent: -1em;
}

.voice #sec_01 .box02 .interview_list li .q:before {
    margin-right: 5px;
    content: "Q.";
}

.voice #sec_01 .box02 .interview_list li .a:before {
    margin-right: 5px;
    font-weight: bold;
    content: "A.";
}

.voice #sec_01 .secInner.second {
    margin-top: 60px;
}

/*-----------------------------------------------------

	recruit education 　教育制度

------------------------------------------------------*/

.education #mainimage {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 150px 0 130px 0;
    background-image: url(../Image/recruit/education/mv.png);
    background-position: center;
    background-size: cover;
    color: #ffffff;
}

.education #contents {
    margin-top: 280px;
}

.education #sec_01 {
    padding: 80px 0;
}

.education #sec_01 .secInner {
    max-width: 1000px;
    margin: auto;
}

.education #sec_01 .read {
    width: 80%;
    margin: 0 auto 40px;
    text-align: left;
}

.education #sec_01 ul {
    display: flex;
    justify-content: space-between;
}

.education #sec_01 li {
    width: 31%;
}

.education #sec_01 li img {
    width: 100%;
    margin-bottom: 15px;
}

.education #sec_01 li h4 {
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 20px;
    line-height: 1;
}

.education #sec_01 li p {
    font-size: 15px;
    text-align: left;
}

.education #sec_02 {
    padding: 80px 0;
    background: url(../Image/recruit/bg_education.png) no-repeat right bottom #f3f4ef;
    background-size: contain;
}

.education #sec_02 .secInner {
    max-width: 1000px;
    margin: auto;
}

.education #sec_03 {
    padding: 80px 0;
    background: url(../Image/recruit/bg_education02.png) no-repeat left bottom;
    background-size: contain;
}

.education #sec_03 .secInner {
    max-width: 1000px;
    margin: auto;
}

.education #sec_02 .read,
.education #sec_03 .read {
    width: 80%;
    margin: 0 auto 40px;
    text-align: left;
}

/*-----------------------------------------------------

	recruit requirements 　募集要項

------------------------------------------------------*/

.requirements #mainimage {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 150px 0 130px 0;
    background-image: url(../Image/recruit/requirements/mv.png);
    background-position: center;
    background-size: cover;
    color: #ffffff;
}

.requirements #contents {
    margin-top: 280px;
}

.requirements #sec_01 {
    padding: 80px 0;
}

.requirements #sec_01 .secInner {
    max-width: 1100px;
    margin: auto;
}

.requirements #sec_01 .read img {
    width: 100%;
    margin-bottom: 30px;
}

.requirements #sec_01 table {
    width: 80%;
    margin: auto;
    border: 1px solid #dddddd;
    text-align: left;
}

.requirements #sec_01 table th,
.requirements #sec_01 table td {
    padding: 12px 0 12px 35px;
    border-bottom: 1px solid #dddddd;
    box-sizing: border-box;
}

.requirements #sec_01 table th {
    width: 30%;
}

.requirements #sec_01 table td {
    width: 70%;
}

.requirements .anchor {
    display: flex;
    justify-content: center;
}

.requirements .anchor li:not(:last-child) {
    margin-right: 30px;
}

.requirements .anchor li a {
    padding: 0 10px;
    background: #0071c1;
    color: #ffffff;
    font-size: 18px;
    font-family: "Noto Sans Japanese";
}

.requirements .requirements_table {
    padding-top: 50px;
}

/*-----------------------------------------------------

	recruit entry 　エントリーフォーム

------------------------------------------------------*/
.entry #mainimage {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 150px 0 130px 0;
    background-image: url(../Image/recruit/entry/mv.png);
    background-position: center;
    background-size: cover;
    color: #ffffff;
}

.entry #contents {
    margin-top: 280px;
}

#recruit .entry .secInner {
    max-width: 1000px;
    margin: 0 auto;
}

.entry .lead {
    margin: 0 0 20px 0;
    line-height: 1.7;
}

.entry form table {
    line-height: 2.2;
    text-align: left;
}

.entry form table tbody {
    vertical-align: top;
}

.entry form table tr {
    border-bottom: 1px solid #d0cabf;
}

.entry form table th {
    width: 30%;
    padding: 15px 0;
    color: #312e2e;
    font-size: 15px;
    line-height: 1.7;
}

.entry form table th span {
    line-height: 2.1;
}

.entry form table td {
    width: 70%;
    padding: 15px 0 15px 30px;
    box-sizing: border-box;
    color: #312e2e;
    font-size: 15px;
    line-height: 2.2;
}

.entry form table td input,
.entry form table td textarea,
.entry form table td li select,
.entry form#mailformpro label {
    color: #312e2e;
    line-height: 24px;
}

.entry form table td li {
    margin: 0 0 15px;
}

.entry form table td input.ss {
    width: 10%;
}

.entry form table td input.short {
    width: 30%;
}

.entry form table td input.middle {
    width: 45%;
}

.entry form table td input.long {
    width: 65%;
}

.entry form table td .support {
    margin: 0 0 0 8px;
    color: #737373;
    font-size: 12px;
    font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.entry .mfp_buttons button,
.entry #mfp_button_send {
    display: block;
    width: 280px;
    margin: 0 auto;
    padding: 12px 0;
    border: 2px solid #e1002a;
    border-radius: 0 !important;
    background: #e1002a;
    color: #ffffff;
    font-weight: bold;
    font-size: 16px;
    line-height: 1;
    text-decoration: none;
    text-align: center;
    text-shadow: none;
    transition: .4s;
}

.entry .mfp_buttons button#mfp_button_cancel {
    border: 2px solid #adadad;
    background: #adadad;
}

.entry form table td textarea {
    width: 99% !important;
    height: 150px !important;
    box-sizing: border-box;
    font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    resize: none;
}


/*-----------------------------------------------------
  404
------------------------------------------------------*/

#not-found .detialBtn {
    margin-bottom: 30px;
}

#not-found #sec_01 {
    padding: 80px 0;
}

#not-found .txt {
    margin-bottom: 30px;
}

/*--------------------------------------------
  パンくず
--------------------------------------------*/

#breadcrumb {
    padding: 6px;
    border-bottom: 2px dotted #c2ccd5;
    line-height: 1;
    text-align: left;
}

#breadcrumb ul {
    width: 1200px;
    margin: 0 auto;
}

#breadcrumb li {
    display: inline-block;
    position: relative;
    padding-right: 25px;
    color: #444444;
    font-size: 12px;
}

#breadcrumb li:last-child {
    padding-right: 0;
}

#breadcrumb li a {
    color: #1a2c7e;
    text-decoration: underline;
}

#breadcrumb li a:hover {
    text-decoration: none;
}

#breadcrumb li:before {
    position: absolute;
    top: 0;
    right: 0;
    font-weight: bold;
    content: "＞";
}

#breadcrumb li:last-child:before {
    content: none;
}

/*-----------------------------------------------------
  ブログなどのページャー（Wordpress）
------------------------------------------------------*/
/* ナビゲーション全体のデザイン */
.wp-pagenavi {
    text-align: center;
}

/* ボタン<a>タグのデザイン */
.wp-pagenavi a {
    display: inline-block !important;
    margin-right: 8px !important;
    padding: 0 10px !important;
    border: 1px solid #0071c1 !important;
    background: #ffffff !important;
    color: #0071c1 !important;
    line-height: 1.8 !important;
    text-decoration: none !important;
}

/* ボタン<a>タグのホバー時のデザイン */
.wp-pagenavi a:hover {
    background: #0071c1 !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* 表示中のページ番号のデザイン */
.wp-pagenavi .current {
    display: inline-block !important;
    margin-right: 8px !important;
    padding: 0 10px !important;
    border: 1px solid #0071c1 !important;
    background: #0071c1 !important;
    color: #ffffff !important;
    line-height: 1.8 !important;
}

.wp-pagenavi .extend {
    margin-right: 8px !important;
}

/* 矢印（ < とか > ）のデザイン */
.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink {
    background: none !important;
    color: #444444 !important;
    font-weight: bold !important;
    line-height: 1.8 !important;
}




/* 20241015追加 */
.mw_zip {
    width: 200px;
}

/*送信ボタン*/
#contact .mfp_buttons,
#recruit .mfp_buttons {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column-reverse;
    gap: 15px;
}

#contact .mfp_buttons input,
#recruit .mfp_buttons input {
    display: block;
    width: 280px;
    padding: 12px 0;
    border-radius: 0 !important;
    font-weight: bold;
    font-size: 16px;
    line-height: 1;
    text-decoration: none;
    text-align: center;
    text-shadow: none;
    transition: .4s;
    cursor: pointer;
}

#contact .mfp_buttons .mw_submit_btn,
#recruit .mfp_buttons .mw_submit_btn {
    border: 2px solid #e1002a;
    background: #e1002a;
    color: #ffffff;

}

#contact .mfp_buttons .mw_submit_btn:hover,
#recruit .mfp_buttons .mw_submit_btn:hover {
    border: 2px solid #e1002a;
    background: #ffffff;
    color: #e1002a;
}

#contact .mfp_buttons .mw_back_btn,
#recruit .mfp_buttons .mw_back_btn {
    border: 2px solid #adadad;
    background: #adadad;
    color: #ffffff;
}

#contact .mfp_buttons .mw_back_btn:hover,
#recruit .mfp_buttons .mw_back_btn:hover {
    border: 2px solid #adadad;
    background: #ffffff;
    color: #adadad;
}

#contact .mw_wp_form_confirm h4,
#recruit .mw_wp_form_confirm h4 {
    margin: 0 0 30px;
    color: #00b2d6;
    font-size: 24px;
}

#recruit input[type=radio] {
    display: inline !important;
    margin-bottom: 3px;
}