@charset "UTF-8";

/*
	box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);	
*/
* {
    margin: 0;
    padding: 0;
}

body {
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 1.8em;
    color: #333333;
    font-size: 16px;
    letter-spacing: 0.05em;
    word-wrap: break-word;
    word-break: break-word;
    line-break: strict;
}


p {
    line-height: 1.7em;
    color: #333333;
    font-size: 16px;
}

a {
    text-decoration: none;
    color: #333333;
    -webkit-transition: all 0.s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    display: inline-block;
    max-width: 100%;
}

ul li {
    list-style-type: none;
}

img {
    border: 0;
    vertical-align: bottom;
}

a:hover {
    opacity: 0.7;
    -moz-opacity: 0.7;
    filter: alpha(opacity=70);

}

.b_line_a {
    height: 1px solid #24ADE2;
    width: 100%;
    border-top: 1px solid #24ADE2;
}

.indt_a {
    text-indent: 0 !important;
    line-height: 1.8em !important;
}


.youtube_box iframe {
    width: 100%;
    height: 100%;
    aspect-ratio: 30 / 17;
}

/**************/
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 600;
    letter-spacing: 0.08em;
}


.y_icon img {
    max-width: 22px !important;
}

/**************/

.fw_b {
    font-weight: 600;
}


/**************/


.c_01 {
    color: #FF0000;
    font-weight: 600;
}


.c_02 {
    color: #E95504;
    font-weight: 600;
}




.imw100 img {
    max-width: 100%;
    width: 100%;
}

.iw80 img {
    max-width: 80px;
    width: 100%;
    display: block;
    margin: 0 auto 15px;
}


.iw520 img {
    max-width: 520px;
    width: 100%;
    display: block;
    margin: auto;
}

.iw1000{
	text-align: center;
}
.iw1000 img {
    max-width: 1000px;
    width: 100%;
    display: block;
    margin: auto;
}

.iw600 img {
    max-width: 600px;
    width: 100%;
    display: block;
    margin: auto;
}
/**************/
.f10 {
    font-size: 10px !important;
}

.f11 {
    font-size: 11px !important;
}

.f12 {
    font-size: 12px !important;
}

.f13 {
    font-size: 13px !important;
}

.f14 {
    font-size: 14px !important;
}

.f15 {
    font-size: 15px !important;
}

.f16 {
    font-size: 16px !important;
}

.f17 {
    font-size: 17px !important;
}

.f18 {
    font-size: 18px !important;
}

.f19 {
    font-size: 19px !important;
}

.f20 {
    font-size: 20px !important;
}

.f21 {
    font-size: 21px !important;
}

.f22 {
    font-size: 22px !important;
}

.f23 {
    font-size: 23px !important;
}

.f24 {
    font-size: 24px !important;
}

.f25 {
    font-size: 25px !important;
}

.f26 {
    font-size: 26px !important;
}

.f27 {
    font-size: 27px !important;
}

/**************/
/**************/

.mb_xl {
    margin-bottom: 140px !important;
}

.mb_lg {
    margin-bottom: 100px !important;
}

.mb_md {
    margin-bottom: 80px !important;
}

.mb_sm {
    margin-bottom: 60px !important;
}

.mb_ss {
    margin-bottom: 40px !important;
}



/**************/

.pt10 {
    padding-top: 10px !important;
}

.pt20 {
    padding-top: 20px !important;
}

.pb0 {
    padding-bottom: 0 !important;
}

.pb10 {
    padding-bottom: 10px !important;
}

.pb20 {
    padding-bottom: 20px !important;
}
.mt5 {
    margin-top: 5px !important;
}
.mt10 {
    margin-top: 10px !important;
}

.mt20 {
    margin-top: 20px !important;
}

.mt30 {
    margin-top: 30px !important;
}

.mt40 {
    margin-top: 40px !important;
}

.mt50 {
    margin-top: 50px !important;
}
.mb0{
	margin-bottom: 0 !important;
}
.mb5 {
    margin-bottom: 5px !important;
}

.mb10 {
    margin-bottom: 10px !important;
}

.mb15 {
    margin-bottom: 15px !important;
}

.mb20 {
    margin-bottom: 20px !important;
}

.mb25 {
    margin-bottom: 25px !important;
}

.mb30 {
    margin-bottom: 30px !important;
}

.mb40 {
    margin-bottom: 40px !important;
}

.mb50 {
    margin-bottom: 50px !important;
}

.mb60 {
    margin-bottom: 60px !important;
}

.mb70 {
    margin-bottom: 70px !important;
}

.mb80 {
    margin-bottom: 80px !important;
}

.mb100 {
    margin-bottom: 100px !important;
}

/**************/
.txt_c {
    text-align: center !important;
}

.txt_r {
    text-align: right !important;
}

.txt_l {
    text-align: left !important;
}

/**************/

.float_sb {
    display: flex;
    justify-content: space-between;
}

.float_sa {
    display: flex;
    justify-content: space-around;
}

.float_ce {
    display: flex;
    justify-content: center;
}

.float_ft {
    display: flex;
    justify-content: flex-start;
}

.float_en {
    display: flex;
    justify-content: flex-end;
}


.type_01,
.type_02 {
    display: flex;
    justify-content: space-between;
}

.type_01 .l_box {
    max-width: 470px;
    width: 47%;
}

.type_01 .r_box {
    max-width: 470px;
    width: 47%;
}

.type_02 .l_box {
    max-width: 470px;
    width: 47%;
    order: 2;
}

.type_02 .r_box {
    max-width: 470px;
    width: 47%;
    order: 1;
}

.type_01 .r_box img,
.type_01 .l_box img,
.type_02 .r_box img,
.type_02 .l_box img {
    max-width: 470px;
    width: 100%;
}


.type_03 {
    display: flex;
    justify-content: space-between;
}

.type_03 .r_box {
    max-width: 700px;
    width: 71%;
}

.type_03 .l_box {
    max-width: 250px;
    width: 26%;
}

.type_03 img {
    max-width: 250px;
    width: 100%;
}





















.box_1260_2c {
    display: flex;
    justify-content: space-between;
}

.box_1260_2c > div {
    width: 47.7%;
}

.box_1260_2c > div img {
    width: 100%;
}


.box_1260_2c_a {
    display: flex;
    justify-content: space-between;
}

.box_1260_2c_a > div {
    width: 47.7%;
}

.box_1260_2c_a > div img {
    width: 100%;
}


.box_1260_2c_b {
    display: flex;
    justify-content: space-between;
}

.box_1260_2c_b > div {
    width: 47.7%;
}

.box_1260_2c_b .l_box {
    order: 2;
}

.box_1260_2c_b .r_box {
    order: 1;
}


.box_1260_2c_b > div img {
    width: 100%;
}





.box_1260_2c_c {
    display: flex;
    justify-content: space-between;
}

.box_1260_2c_c .l_box {
    width: 28%;
    max-width: 350px;
}

.box_1260_2c_c .r_box {
    width: 68%;
}

.box_1260_2c_c > div img {
    width: 100%;
}



.box_1260_2c_d {
    display: flex;
    justify-content: space-between;
}

.box_1260_2c_d > div {
    width: 47.7%;
}

.box_1260_2c_d .l_box {
    order: 2;
    width: 28%;
    max-width: 350px;
}

.box_1260_2c_d .r_box {
    order: 1;
    width: 68%;
}


.box_1260_2c_d > div img {
    width: 100%;
}







.box_1260_2c_e {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.box_1260_2c_e > li {
    width: 47.7%;
    background-color: #fff;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
    border-radius: 20px;
    margin-bottom: 60px;
    padding: 40px;
}

.box_1260_2c_e > li img {
    width: 100%;
    max-width: 100%;
    display: block;
    margin: auto;
}

.box_1260_2c_e > li .ttl_03 {
    margin-bottom: 15px;

}




.box_1260_2c_f {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.box_1260_2c_f > li {
    width: 47.7%;
    margin-bottom: 40px;
}

.box_1260_2c_f img {
    max-width: 600px;
    width: 100%;
    margin-bottom: 20px;
}







.box_1260_3c {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.box_1260_3c:after {
    content: "";
    display: block;
    width: 31.8%;
    height: 0;
}

.box_1260_3c > li {
    width: 31.8%;
    margin-bottom: 40px;
}

.box_1260_3c > li img {
    width: 100%;
    max-width: 400px;
}


.box_1260_4c {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.box_1260_4c > li {
    width: 23%;
    background-color: #fff;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
    border-radius: 20px;
    margin-bottom: 30px;
    padding: 40px;
}

.box_1260_4c > li img {
    width: 100%;
    max-width: 210px;
    display: block;
    margin: auto;
}

.box_1260_4c > li .ttl_03 {
    margin-bottom: 10px;

}



.box_1260_4c_a {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.box_1260_4c_a a {
    padding: 20px 15px;
    display: block;
    border-radius: 20px;
    background-color: #fff;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}

.box_1260_4c_a a:hover {
    background-color: #F5FAFD;
    opacity: 1;
    box-shadow: 0 3px 30px rgba(000, 000, 000, 0.16);
}

.box_1260_4c_a > li {
    width: 23%;
    text-align: center;

    border-radius: 20px;
    margin-bottom: 30px;

}

.box_1260_4c_a > li .ttl_03 {
    margin-bottom: 10px;

}

.box_1260_4c_a > li .icon_a img {
    max-width: 230px;
    width: 100%;
    margin-bottom: 15px;
}




.box_1260_4c_b {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.box_1260_4c_b > li {
    width: 23%;
    margin-bottom: 30px;
}

.box_1260_4c_b > li img {
    width: 100%;
    max-width: 100%;
    display: block;
    margin: 0 auto 15px;
}

.box_1260_4c_b > li .ttl_06 {
    margin-bottom: 20px;

}

.box_1260_4c_b > li p {
    font-size: 20px;
    line-height: 1.6em;
}









.box_1260_4c_up {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.box_1260_4c_up:after,
.box_1260_4c_up:before {
    content: "";
    display: block;
    width: 23%;
    height: 0;
}

.box_1260_4c_up:before {
    order: 1;
}

.box_1260_4c_up > li {
    width: 23%;
    position: relative;
    border-radius: 20px;
}

.box_1260_4c_up > li a {
    display: block;
    border-radius: 20px;
}

.box_1260_4c_up > li:hover a {
    background-color: #fff;
    box-shadow: 0 3px 30px rgba(000, 000, 000, 0.16);
    border-radius: 20px;
}

.box_1260_4c_up > li a:hover {
    opacity: 1;
}

.box_1260_4c_up .tag_b {
    position: absolute;
    top: 10px;
    left: 10px;
}

.box_1260_4c_up > li .inner {
    padding: 0 15px 15px;
}

.box_1260_4c_up > li p {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4em;
    margin-bottom: 15px;
}


.box_1260_4c_up > li img {
    width: 100%;
    margin-bottom: 20px;
    border-radius: 20px;
    /*box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);*/
}

.box_1260_4c_up > li .up_img {
    cursor: pointer;
    overflow: hidden;
    width: 100%;
    margin-bottom: 18px;
}

.box_1260_4c_up > li .up_img img {
    aspect-ratio: 145 / 109;
    width: 100%;
    object-fit: cover;
    height: auto;
    transition: transform .6s ease;
	margin-bottom: 0;
}

.box_1260_4c .float_sb > div {
    width: 48%;
}


.box_1260_4c .no_h {
    height: 28px;
}








.box_1260_5c {
    display: flex;
    justify-content: space-between;
}

.box_1260_5c > li {
    width: 18.3%;
}

.box_1260_5c > li img {
    width: 100%;
}



.box_1260_5c_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.box_1260_5c_list li {
    width: 18.3%;
    margin-bottom: 50px;
}

.box_1260_5c_list li .item_img img {
    width: 100%;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
    margin-bottom: 20px;
}

.box_1260_5c_list li.no_list img {
    width: 100%;
}
.box_1260_5c_list li .link_05_a span{
	font-size: 20px;
}

.box_1260_5c_list li .item_img img:hover {

    box-shadow: 0 3px 30px rgba(000, 000, 000, 0.16);

}


.box_1260_5c_list li a:hover{
	opacity: 1;
}



.box_1400_2c {
    display: flex;
    justify-content: space-between;
}


.box_1400_2c .l_box {
    width: 20%;
    max-width: 270px;
}

.box_1400_2c .l_box img {
    width: 100%;
}

.box_1400_2c .r_box {
    width: 76%;
}

.box_1400_2c .r_box .list_04 p {
    width: 22%;
}

.box_1400_2c .r_box .btn_07 {
    text-align: right;
}



.box_1400_2c_a {
    display: flex;
    justify-content: space-between;
}


.box_1400_2c_a .l_box {
    width: 25%;
    max-width: 350px;
}

.box_1400_2c_a .l_box img {
    width: 100%;
}

.box_1400_2c_a .r_box {
    width: 71%;
}








.box_full_2c {
    display: flex;
    justify-content: space-between;
}


.box_full_2c > .l_box {
    width: 58%;
}

.box_full_2c > .r_box {
    width: 39%;
}

.box_full_2c > div img {
    width: 100%;
}



.box_full_2c_d {
    display: flex;
    justify-content: space-between;
}


.box_full_2c_d > div {
    width: 48%;
}

.box_full_2c_d > div img {
    width: 100%;
}






.box_full_3c {
    display: flex;
    justify-content: space-between;
}

.box_full_3c li {
    width: 31.8%;
}

.box_full_3c li img {
    width: 100%;
}



.box_full_3c_a {
    display: flex;
    justify-content: space-between;
}

.box_full_3c_a li {
    width: 31.8%;
    background-color: #fff;
    border-radius: 50px;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}

.box_full_3c_a li img {
    width: 100%;
    border-radius: 50px 50px 0 0 / 50px 50px 0 0;
}

.box_full_3c_a li:hover {
    background-color: #F4F8FD;
    box-shadow: 0 3px 30px rgba(000, 000, 000, 0.16);
}


.box_full_3c_a .inner {
    margin-top: -30px;
    padding: 0 40px 70px;
    display: inline-block;
}







.box_full_2c_a {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.box_full_2c_a .l_box {
    width: 68.6%;
}

.box_full_2c_a .r_box {
    width: 31.4%;
    padding: 0 70px;
}

.box_full_2c_a .l_box img {
    width: 100%;
    border-radius: 0 50px 50px 0 / 0 50px 50px 0;
}



.box_full_2c_b {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.box_full_2c_b .l_box {
    width: 68.6%;
    order: 2;
}

.box_full_2c_b .r_box {
    width: 31.4%;
    order: 1;
    padding: 0 70px;
}

.box_full_2c_b .l_box img {
    width: 100%;
    border-radius: 50px 0 0 50px / 50px 0 0 50px;
}



.box_full_2c_c {
    display: flex;
    justify-content: space-between;
    overflow: hidden;
    align-items: flex-start;

}


.box_full_2c_c .l_box {
    width: 57%;
    order: 2;
    position: relative;
    z-index: 0;
    padding-bottom: 6%;
}


.box_full_2c_c .l_box::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: -10%;
    width: 110%;
    height: 85%;
    background-image: linear-gradient(180deg, rgba(216, 237, 250, 1), rgba(36, 173, 226, 1));
    border-radius: 100px 0 0 100px;
    z-index: -1;
}

.box_full_2c_c .r_box {
    width: 33.4%;
    order: 1;
    padding: 0 20px 0 140px;
}

.box_full_2c_c .l_box img {
    display: block;
    width: 100%;
    border-radius: 50px 0 0 50px;
    position: relative;
    z-index: 1;
}

.box_full_2c_d .l_box {
    width: 43%;
}

.box_full_2c_d .r_box {
    width: 45%;
}



/**************/

article {
    padding-top: 90px;
}

.frame {
    max-width: 1030px;
    padding: 0 15px;
    margin: auto;
    width: 100%;
}


.w_full {
    width: 100%;
    padding: 0 70px;
    margin: auto;
}

.w1400 {
    max-width: 1400px;
    margin: auto;
}


.w1400 .w_inner {
    margin: auto;
    padding: 0 70px;
}

.w1260 {
    max-width: 1260px;
    margin: auto;
}


.w1000 {
    max-width: 1000px;
    margin: auto;
}



.w900 {
    max-width: 900px;
    margin: auto;
}







.box_a {
    background-image: linear-gradient(0deg, rgba(229, 242, 250, 1), rgba(255, 255, 255, 1));
    width: 100%;
    padding: 140px 0;
}





.box_b {
    max-width: 1700px;
    width: 100%;
    margin: auto;
    background-color: #EDF3F7;
    border-radius: 100px;
    padding: 100px 50px;
}


.box_c {
    background-color: #E7F4FC;
}


.box_d_40 {
    background-color: #fff;
    padding: 40px;
    border-radius: 20px;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}

.box_d_40_a a {
    display: block;
    background-color: #fff;
    padding: 40px;
    border-radius: 20px;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}

.box_d_40_a a:hover {
    opacity: 1;
    box-shadow: 0 3px 30px rgba(000, 000, 000, 0.16);
    background-color: #F4F8FD;
}


.box_d_20 {
    background-color: #fff;
    padding: 20px;
    border-radius: 20px;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}

.box_d_30 {
    background-color: #fff;
    padding: 30px;
    border-radius: 20px;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}

.box_e_40 {
    background-color: #F4F8FD;
    padding: 40px;
    border-radius: 20px;
}

.box_e_20 {
    background-color: #F4F8FD;
    padding: 20px;
    border-radius: 20px;
}

.bg_a{
    background-color: #F4F8FD;
    padding: 40px;
}

.box_f {
    width: 100%;
    background-image: linear-gradient(0deg, rgba(229, 242, 250, 1), rgba(255, 255, 255, 1));
}


/**************/



.ttl_000{
	font-size: 60px;
	border: 10px solid #EBEBEB;
	font-weight: 600;
	padding: 5px 20px;
	line-height: 1.2em;
	display: inline-block;
	margin-bottom: 30px;
}



.ttl_00 {
    font-size: 60px;
    line-height: 1.3em;
    margin-bottom: 15px;
}

.ttl_00 span {
    color: #24ADE2;
}

.ttl_01 {
    color: #24ADE2;
    line-height: 1.6em;
    text-align: left;
    margin-bottom: 36px;
    font-size: 36px;
    font-weight: 600;
}



.ttl_02 {
    text-align: center;
    margin-bottom: 36px;
    font-size: 30px;
    line-height: 1.4em;
    padding-bottom: 25px;
    background-image: url("../images/common/icon_10.jpg");
    background-size: 60px;
    background-position: bottom center;
    font-weight: 600;
}

.ttl_03 {
    margin-bottom: 25px;
    font-size: 24px;
    line-height: 1.4em;
    padding-top: 20px;
    background-image: url("../images/common/icon_02.png");
    background-size: 32px;
    background-position: top left;
    font-weight: 600;
}

.ttl_04 {
    margin-bottom: 36px;
    font-size: 30px;
    line-height: 1.4em;
    padding: 20px 30px;
    background-image: url("../images/common/icon_ttl_04.png");
    background-size: 80px;
    background-position: left top;
    font-weight: 600;
}



.ttl_05 span {
    position: relative;
    font-size: 28px;
    text-align: left;
    margin-bottom: 45px;
    padding-bottom: 25px;
    border-bottom: 1px solid #9CC7E2;
    display: inline-block;
    font-weight: 600;
    line-height: 1.5em;
}

.ttl_05 span:before {
    content: "";
    position: absolute;
    width: 24px;
    height: 5px;
    border-bottom: 5px solid #24ADE2;
    bottom: -3px;
    display: inline-block;
}


.ttl_06 {
    font-size: 22px;
    line-height: 1.4em;
    border-left: 2px solid #24ADE2;
    padding-left: 12px;
    margin-bottom: 20px;
    font-weight: 600;
}


.ttl_07 {
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 1.6em;
    font-weight: 600;
    padding: 10px 15px;
    border: 1px solid #24ADE2;
}



.ttl_08 {
    display: flex;
    align-items: center;
    margin-bottom: 40px;
}

.ttl_08 img {
    max-width: 90px;
    width: 100%;
    margin-right: 20px;
}

.ttl_08 .ttl_08_in {
    font-size: 24px;
    font-weight: 600;
    line-height: 1.4em;
    padding-right: 30px;
    background-image: url("../images/common/icon_04_22.png");
    background-size: 22px;
    background-position: right center;

}

.ttl_08 .ttl_08_in a:hover {
    color: #00568B;
    opacity: 1;
}


.ttl_09 {
    position: relative;
    margin-bottom: 25px;
}

.ttl_09:before {
    content: "";
    position: absolute;
    height: 1px;
    width: 100%;
    left: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    border-top: 1px solid #B9B9B9;
    z-index: -1;

}

.ttl_09 span {
    display: inline-block;
    border-radius: 50px;
    font-size: 18px;
    line-height: 1.3em;
    background-color: #24ADE2;
    padding: 10px 20px;
    color: #fff;
}



.ttl_10 {
    color: #fff;
    font-size: 28px;
    line-height: 1.4em;

}


.ttl_11 {
    font-size: 24px;
    line-height: 1.3em;
    background-color: #24ADE2;
    color: #fff;
    border-radius: 50px;
    text-align: center;
    padding: 10px 15px;
    max-width: 390px;
    margin: auto;
}

.ttl_12 {
    font-size: 38px;
    line-height: 1.3em;
    margin-bottom: 25px;
}

.ttl_13 {
    font-size: 24px;
    line-height: 1.4em;
    margin-bottom: 15px;
    text-align: center;
}

.ttl_13_l {
    font-size: 24px;
    line-height: 1.4em;
    margin-bottom: 15px;
    text-align: left;
}

.ttl_13_s {
    font-size: 24px;
    line-height: 1.9em;
    margin-bottom: 30px;
	font-weight: 600;
}

.ttl_14 {
    text-align: center;
    font-size: 20px;
    line-height: 1.6em;
    margin-bottom: 20px;
    font-weight: 600;
    letter-spacing: 0;
}





.ttl_15 {
    font-size: 12px;
    font-weight: 400;
    margin-bottom: 15px;
    line-height: 1.3em;
}

.ttl_16 span {
    font-size: 50px;
    font-weight: 600;
    color: #24ADE2;
    padding: 35px 70px 35px 140px;
    background-color: #f8fcfe;
    border-radius: 0 30px 0 0 / 0 30px 0 0;
    display: inline-block;
}

.ttl_17 {
    font-size: 20px;
    line-height: 1.6em;
    margin-bottom: 10px;
    font-weight: 400;
}

.ttl_18 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 5px;
    line-height: 1.3em;
}

.ttl_19 {
    text-align: center;
    color: #24ADE2;
    font-size: clamp(46px, 4.6vw, 55px);
    font-weight: 600;
    line-height: 1em;
    margin-bottom: 6px;
    letter-spacing: 0;
}

.ttl_19 span {
    font-size: 28px;
    line-height: 1em;
}

.ttl_19_a {
    text-align: center;
    color: #24ADE2;
    font-size: clamp(30px, 4.6vw, 38px);
    font-weight: 600;
    line-height: 1.3em;
    margin-bottom: 20px;
    letter-spacing: 0;
}


.ttl_20 {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 5px;
    line-height: 1.2em;
    color: #24ADE2;
}


.ttl_21 {
    background-color: #F4F8FD;
    text-align: center;
    font-size: 20px;
    font-weight: 600;
    padding: 15px;
    line-height: 1.6em;
    border-radius: 20px;
}


.ttl_22 {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.2em;
    text-align: center;
}

.ttl_23 {
    font-size: 18px;
    color: #24ADE2;
    font-weight: 600;
    line-height: 1.4em;
}



.ttl_24 {
    font-size: 27px;
    color: #24ADE2;
    font-weight: 600;
    line-height: 1.4em;
}



.ttl_25{
    line-height: 1.6em;
    font-size: 50px;
    font-weight: 600;
    text-align: center;
}
/**************/





.ttl_a {
    color: #24ADE2;
    font-weight: 600;
    padding-left: 50px;
    background-image: url("../images/common/icon_09.png");
    background-position: left 5px;
    margin-bottom: 20px;
    background-size: 40px;
    padding: 5px 0 5px 45px;
    font-size: 20px;
    line-height: 1.6em;
}

.ttl_a_w {
    color: #fff;
    font-weight: 600;
    padding-left: 50px;
    background-image: url("../images/common/icon_09_w.png");
    background-position: left 5px;
    margin-bottom: 10px;
    background-size: 40px;
    padding: 5px 0 5px 45px;
    font-size: 20px;
    line-height: 1.6em;
}




/**************/

.tag_a span {
    font-size: 12px;
    line-height: 1em;
    border: 1px solid #24ADE2;
    display: inline-block;
    padding: 4px 10px;
    margin-right: 7px;
    font-weight: 700;
    border-radius: 50px;
    color: #24ADE2;
    background-color: #fff;
}

.tag_b span {
    font-size: 12px;
    line-height: 1em;
    border: 1px solid #24ADE2;
    display: inline-block;
    padding: 4px 10px;
    margin-right: 7px;
    font-weight: 700;
    border-radius: 50px;
    color: #fff;
    background-color: #24ADE2;
}


.tag_b_a a span {
    font-size: 12px;
    line-height: 1em;
    border: 1px solid #24ADE2;
    display: inline-block;
    padding: 4px 10px;
    margin-right: 7px;
    font-weight: 700;
    border-radius: 50px;
    color: #fff;
    background-color: #24ADE2;
}

.tag_b_a a {
    opacity: 1;
}

.tag_b_a a span:hover,
.tag_b_a a span.active {
    border: 1px solid #8FBECE;
    background-color: #8FBECE;
}


.tag_c span {
    font-size: 12px;
    line-height: 1em;
    border: 1px solid #8FBECE;
    display: inline-block;
    padding: 4px 10px;
    margin-right: 7px;
    font-weight: 700;
    border-radius: 50px;
    color: #fff;
    background-color: #8FBECE;
}



/**************/
.day_a {
    font-size: 12px;
    color: #24ADE2;
    font-weight: 400;
}


/**************/



.btn_01 {
    text-align: center;
}

.btn_01 a {
    background-color: #24ADE2;
    font-size: 16px;
    line-height: 1.4em;
    display: inline-block;
    padding: 10px 20px;
    border-radius: 5px;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
    color: #fff;
    font-weight: 600;
}

.btn_01 span {
    padding-right: 30px;
    background-image: url("../images/common/icon_right_16_y.png");
    background-size: 16px;
    background-position: right center;
}


.btn_01 a:hover {
    background-color: #00619D;
    opacity: 1;
    box-shadow: 0 3px 30px rgba(000, 000, 000, 0.16);
}









.btn_02 {
    text-align: center;
}

.btn_02 a {
    background-color: #F1F4F8;
    font-size: 16px;
    line-height: 1.4em;
    display: inline-block;

    border-radius: 50px;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
    color: #24ADE2;
    font-weight: 600;
}

.btn_02 span {
    position: relative;
    display: inline-block;
    padding: 20px 60px 20px 25px;
    padding-right: 80px;

}

.btn_02 span:after {
    content: "";
    position: absolute;
    right: 30px;
    bottom: 0;
    top: 0;
    margin: auto;
    width: 40px;
    height: 22px;
    background-size: 100%;
    background-image: url("../images/common/icon_03_w.png");
}


.btn_02 a:hover {
    background-color: #24ADE2;
    opacity: 1;
    color: #fff;
}




.btn_03 {
    text-align: center;
}

.btn_03 a {
    background-color: #24ADE2;
    font-size: 26px;
    line-height: 1.4em;
    display: inline-block;
    padding: 17px 35px;
    border-radius: 50px;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
    color: #fff;
    font-weight: 600;
	min-width: 280px;
}

.btn_03 a:hover {
    background-color: #fff;
    opacity: 1;
    color: #24ADE2;
    box-shadow: 0 3px 30px rgba(000, 000, 000, 0.16);
}

.btn_04 a {
    width: 100%;
    color: #fff;
    display: block;
    background-color: #24ADE2;
    padding: 40px 90px 40px 30px;
    position: relative;
    font-size: 26px;
    line-height: 1.3em;
    font-weight: 600;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
    border-radius: 10px;
    text-align: center;
}

.btn_04 a:before {
    content: "";
    position: absolute;
    width: 40px;
    height: 22px;
    top: 0;
    bottom: 0;
    right: 30px;
    margin: auto;
    background-image: url("../images/common/icon_03_w.png");
    background-size: 100%;
}

.btn_04 a:hover {
    background-color: #fff;
    color: #24ADE2;
    opacity: 1;
}


.btn_05 {
    display: flex;
    align-items: center;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
    border-radius: 10px;
    background-color: #60C3EA;
	word-break: normal;
}


.btn_05 a {
    width: 100%;
    color: #fff;
    display: flex;
    align-items: center;
    background-color: #24ADE2;
    padding: 12px 50px 12px 10px;
    position: relative;
    font-size: 16px;
    line-height: 1.5em;
    font-weight: 600;
    border-radius: 0 10px 10px 0 / 0 10px 10px 0;
	overflow-wrap: break-word;
}

.btn_05 span {
    background-color: #60C3EA;
    color: #fff;
    font-size: 24px;
    border-radius: 10px 0 0 10px / 10px 0 0 10px;
    padding: 10px;
}

.btn_05 a:before {
    content: "";
    position: absolute;
    width: 16px;
    height: 10px;
    top: 0;
    bottom: 0;
    right: 30px;
    margin: auto;
    background-image: url("../images/common/icon_under_16.png");
    background-size: 100%;
}

.btn_05 a:hover {
    background-color: #60C3EA;
    color: #fff;
    opacity: 1;

}

.btn_05:hover {
    box-shadow: 0 3px 30px rgba(000, 000, 000, 0.16);
}


.btn_06 a {
    width: 100%;
    color: #333;
    display: block;
    background-color: #fff;
    padding: 15px 90px 15px 30px;
    position: relative;
    font-size: 20px;
    line-height: 1.6em;
    font-weight: 600;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
    border-left: 4px solid #24ADE2;
}

.btn_06 a:before {
    content: "";
    position: absolute;
    width: 40px;
    height: 22px;
    top: 0;
    bottom: 0;
    right: 30px;
    margin: auto;
    background-image: url("../images/common/icon_03_w.png");
    background-size: 100%;
}

.btn_06 a:hover {
    background-color: #fff;
    color: #24ADE2;
    opacity: 1;
    box-shadow: 0 3px 30px rgba(000, 000, 000, 0.16);
}





.btn_07 {
    margin-top: 40px;
}

.btn_07 a {
    color: #24ADE2;
    font-weight: 600;
    letter-spacing: 0.05em;
    font-size: 16px;
    line-height: 1.3em;
    text-decoration: none !important;

}

.btn_07 a:hover {
    opacity: 1;
}

.btn_07 a span {
    position: relative;
    padding-right: 80px;
}

.btn_07 a span:before {
    content: "";
    position: absolute;
    background-image: url("../images/common/icon_btn07.png");
    width: 24px;
    height: 24px;
    background-size: 100%;
    bottom: 0;
    top: 0;
    right: 21px;
    z-index: 10;
    margin: auto;
}

.btn_07 a span:after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    border-radius: 100px;
    width: 70px;
    height: 70px;
    background-color: #fff;
    border: 1px solid #24ADE2;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

.btn_07 a:hover span:after {
    background-color: #24ADE2;
}


.btn_07 a:hover span:before {
    background-image: url("../images/common/icon_btn07_off.png");
}






.btn_07_a {
    margin-top: 40px;
}


.btn_07_a span {
    display: inline-block;
    cursor: pointer;
    color: #24ADE2;
    font-weight: 600;
    letter-spacing: 0.05em;
    font-size: 16px;
    line-height: 1.3em;
    text-decoration: none;
    position: relative;
    padding-right: 80px;
}


.btn_07_a span:hover {
    opacity: 1;
}


.btn_07_a span:before {
    content: "";
    position: absolute;
    background-image: url("../images/common/icon_btn07.png");
    width: 24px;
    height: 24px;
    background-size: 100%;
    bottom: 0;
    top: 0;
    right: 23px;
    z-index: 10;
    margin: auto;
}


.btn_07_a span:after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    border-radius: 100px;
    width: 70px;
    height: 70px;
    background-color: #fff;
    border: 1px solid #24ADE2;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
}


.btn_07_a span:hover:after {
    background-color: #24ADE2;
}


.btn_07_a span:hover:before {
    background-image: url("../images/common/icon_btn07_off.png");
}











.btn_tel {
    text-align: center;
}

.btn_tel span {
    background-image: url("../images/common/icon_tel.png");
    background-size: 50px;
    background-position: left center;
    display: inline-block;
    padding: 10px 0 10px 60px;
}

.btn_tel a {
    font-size: 24px;
    line-height: 1.3em;
    font-weight: 600;
}

/**************/



.link_01 a {
    color: #24ADE2;
    font-weight: 600;
    font-size: 16px;
    text-decoration: underline;
}

.link_01 a:hover {
    color: #00568B;
    opacity: 1;
}

.link_02 a {
    color: #24ADE2;
    font-weight: 600;
    font-size: 16px;
    text-decoration: underline;
}

.link_02 a:hover {
    color: #00568B;
    opacity: 1;
}

.link_02 span {
    position: relative;
    padding-right: 23px;
}

.link_02 span:after {
    position: absolute;
    content: "";
    background-image: url("../images/common/icon_11.png");
    background-size: 100%;
    width: 20px;
    height: 24px;
    right: 0;
    bottom: 2px;
}

.link_03 a {
    color: #24ADE2;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.4em;
    display: inline-block;
}

.link_03 a:hover {
    color: #00568B;
    opacity: 1;
}

.link_03 span {
    position: relative;
    padding-right: 48px;
}

.link_03 span:after {
    position: absolute;
    content: "";
    background-image: url("../images/common/icon_03.png");
    background-size: 100%;
    width: 40px;
    height: 22px;
    right: 0;
    bottom: 0px;
}



.link_03_a {
    font-weight: 600;
    font-size: 16px;
    line-height: 1.4em;
    display: block;
    position: relative;
    padding-right: 48px;
}

.link_03_a:hover {
    opacity: 1;
}

.link_03_a:after {
    position: absolute;
    content: "";
    background-image: url("../images/common/icon_03.png");
    background-size: 100%;
    width: 40px;
    height: 22px;
    right: 0;
    bottom: 0px;
    top: 0;
    margin: auto;
}









.link_04 a {
    color: #24ADE2;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.4em;
    display: inline-block;
}

.link_04 a:hover {
    color: #00568B;
    opacity: 1;
}

.link_04 span {
    position: relative;
    padding-right: 48px;
}

.link_04 span:after {
    position: absolute;
    content: "";
    background-image: url("../images/common/icon_06.png");
    background-size: 100%;
    width: 40px;
    height: 22px;
    right: 0;
    bottom: 0px;
}


.link_05 a {
    color: #24ADE2;
    font-weight: 600;
    font-size: 18px;
    text-decoration: underline;
    margin-right: 40px;
    display: inline-block;
    line-height: 2.5em;
}

.link_05 a:hover {
    color: #00568B;
    opacity: 1;
}

.link_05 span {
    position: relative;
    padding-left: 18px;
}

.link_05 span:after {
    position: absolute;
    content: "";
    background-image: url("../images/common/icon_right_10_b.png");
    background-size: 100%;
    width: 10px;
    height: 16px;
    left: 0;
    top: 5px;
}



.link_05_a span {
    position: relative;
    padding-left: 18px;
    font-weight: 600;
    font-size: 20px;
    text-decoration: underline;
    display: inline-block;
    line-height: 1.6em;
    color: #24ADE2;
}

.link_05_a span:after {
    position: absolute;
    content: "";
    background-image: url("../images/common/icon_right_10_b.png");
    background-size: 100%;
    width: 10px;
    height: 16px;
    left: 0;
    top: 9px;
}




.link_06 a {
    color: #24ADE2;
    font-weight: 600;
    font-size: 18px;
    text-decoration: underline;
    margin-right: 40px;
    display: inline-block;
    line-height: 1.9em;
}

.link_06 a:hover {
    color: #00568B;
    opacity: 1;
}

.link_06 span {
    position: relative;
    padding-left: 18px;
}

.link_06 span:after {
    position: absolute;
    content: "";
    background-image: url("../images/common/icon_right_10_b.png");
    background-size: 100%;
    width: 10px;
    height: 16px;
    left: 0;
    top: 7px;
}

.link_06_no_link  {
    color: #333;
    font-weight: 600;
    font-size: 18px;
    margin-right: 40px;
    display: inline-block;
    line-height: 1.9em;
}


.link_06_no_link span {
    position: relative;
    padding-left: 18px;
}

.link_06_no_link span:after {
    position: absolute;
    content: "";
    background-image: url("../images/common/icon_right_10_b.png");
    background-size: 100%;
    width: 10px;
    height: 16px;
    left: 0;
    top: 7px;
}

/**************/



.link_list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.link_list > li {
    margin: 0 10px 25px;
}

.link_list a {
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
    background-color: #24ADE2;
    color: #fff;
    display: inline-block;
    text-align: center;
    padding: 8px 45px 8px 20px;
    position: relative;
    font-size: 16px;
    font-weight: 600;
    border-radius: 5px;
    min-width: 150px;
}

.link_list a:after {
    content: "";
    position: absolute;
    background-image: url("../images/common/icon_under_16.png");
    width: 16px;
    height: 10px;
    background-size: 100%;
    right: 20px;
    top: 0;
    bottom: 0;
    margin: auto;
}




.link_list_a {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.link_list_a li {
    width: 48%;

}

.link_list_a li a {
    color: #fff;
    display: block;
    background-color: #24ADE2;
    padding: 20px 90px 20px 30px;
    position: relative;
    font-size: 22px;
    line-height: 1.3em;
    font-weight: 600;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}

.link_list_a li a:before {
    content: "";
    position: absolute;
    width: 40px;
    height: 22px;
    top: 0;
    bottom: 0;
    right: 30px;
    margin: auto;
    background-image: url("../images/common/icon_03_w.png");
    background-size: 100%;
}


.link_list_a li a:hover {
    background-color: #fff;
    color: #24ADE2;
    opacity: 1;
    box-shadow: 0 3px 30px rgba(000, 000, 000, 0.16);
}


.link_list_a_01 li {
    width: 100%;
    margin-bottom: 20px;
}

.link_list_a_01 li:last-child {
    margin-bottom: 0;
}

.link_list_a_01 li a {
    color: #fff;
    display: block;
    background-color: #00568B;
    padding: 20px 60px 20px 30px;
    position: relative;
    font-size: 22px;
    line-height: 1.2em;
    font-weight: 600;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}

.link_list_a_01 li a:before {
    content: "";
    position: absolute;
    width: 40px;
    height: 22px;
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto;
    background-image: url("../images/common/icon_03_b.png");
    background-size: 100%;
}


.link_list_a_01 li a:hover {
    background-color: #fff;
    color: #24ADE2;
    opacity: 1;
    box-shadow: 0 3px 30px rgba(000, 000, 000, 0.16);
}

.link_list_a_01 li a:hover:before {
    background-image: url("../images/common/icon_03_w.png");
}









.link_list_b {
    border-top: 1px solid #CCCCCC;
}



.link_list_b a {
    width: 100%;
    color: #333333;
    display: block;
    background-color: #fff;
    padding: 20px 90px 20px 30px;
    position: relative;
    font-size: 18px;
    line-height: 1.3em;
    font-weight: 600;
    border-bottom: 1px solid #CCCCCC;
}

.link_list_b a:before {
    content: "";
    position: absolute;
    width: 40px;
    height: 22px;
    top: 0;
    bottom: 0;
    right: 30px;
    margin: auto;
    background-image: url("../images/common/icon_03_w.png");
    background-size: 100%;
}

.link_list_b a:hover {
    background-color: #F0F9FF;
    color: #333333;
    opacity: 1;

}










/**************/
.bnr_list_a {
    display: flex;
    justify-content: space-between;
}

.bnr_list_a li {
    text-align: center;
    width: 31.8%;
}

.bnr_list_a a {
    background-color: #fff;
    border: 1px solid #E5E5E5;
    border-radius: 20px;
    padding: 17px 25px;
    display: block;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}

.bnr_list_a p {
    font-size: 22px;
    font-weight: 600;
    letter-spacing: 0;
}

.bnr_list_a span {
    margin-bottom: 10px;
    display: block;
}

.bnr_list_a span {
    background-image: url("../images/common/icon_04_30.png");
    background-size: 30px;
    background-position: right center;
}

.bnr_list_a span img {
    max-width: 80px;
    width: 100%;
}

.bnr_list_a a:hover {
    background-color: #F5FAFD;
    opacity: 1;
    box-shadow: 0 3px 30px rgba(000, 000, 000, 0.16);
}




/**************/



.page_link_box {
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
    padding: 30px;
}

.page_link_box .link_05 a{
	font-size: 18px;
}

.page_link_box .link_05 a.in_active {
    color: #00619D;
}


/**************/

.list_01 p {
    background-image: url("../images/common/icon_08.png");
    background-size: 16px;
    padding-left: 22px;
    background-position: left 1px;
    line-height: 1.5em;
    margin-bottom: 10px;
    font-size: 16px;
    background-repeat: no-repeat;
}

.list_02 > li p {
    text-indent: -1.2em;
    padding-left: 19px;
    line-height: 1.5em;
    font-weight: normal;
    color: #333333;
    margin-bottom: 10px;
}

.list_02 > li span {
    color: #24ADE2;
    font-weight: 600;
    padding-right: 2px;
}






.list_02_a > li {
    line-height: 1.3em;
}

.list_02_a > li p {
    font-size: 20px;
    font-weight: 600;
    text-indent: -1.5em;
    padding-left: 19px;
    line-height: 1.6em;
    color: #333333;
    margin-bottom: 10px;
}

.list_02_a > li span {
    color: #fff;
    background-color: #24ADE2;
    font-weight: 600;
    padding: 1px 6px;
    line-height: 1em;
    font-size: 14px;
    margin-right: 10px;
}

.list_03_a > p {
    font-size: 20px;
    font-weight: 600;
    text-indent: -1.5em;
    padding-left: 30px;
    line-height: 1.6em;
    color: #333333;
    margin-bottom: 10px;
}

.list_03_a > p span {
    color: #fff;
    background-color: #24ADE2;
    font-weight: 600;
    padding: 1px 6px;
    line-height: 1em;
    font-size: 14px;
    margin-right: 10px;
}







.list_03 p {
    background-image: url("../images/common/icon_12.png");
    background-size: 14px;
    padding-left: 20px;
    background-position: left 3px;
    line-height: 1.5em;
    margin-bottom: 7px;
    font-size: 16px;
    background-repeat: no-repeat;
}

.list_04 {
    display: flex;
    flex-wrap: wrap;
}

.list_04 p {
    display: inline-block;
    background-image: url("../images/common/icon_12.png");
    background-size: 14px;
    padding-left: 20px;
    background-position: left 3px;
    line-height: 1.5em;
    margin-bottom: 7px;
    font-size: 16px;
    background-repeat: no-repeat;
    margin-right: 20px;
    letter-spacing: -0.05em;

}



.list_05 li {
    background-color: #fff;
    border-radius: 20px;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
    margin-bottom: 20px;
}

.list_05 li a {
    display: block;
    padding: 25px 30px;
}

.list_05 li a:hover {
    opacity: 1;
}

.list_05 li:hover {

    box-shadow: 0 3px 30px rgba(000, 000, 000, 0.16);
    background-color: #F4F8FD;
}

.list_05 .inner {
    width: 100%;
}

.list_05 li:last-child {
    margin-bottom: 0;
}

.list_05 .day_a {
    margin-right: 15px;
    word-break: normal;
}

.list_05 .tag_a {
    margin-bottom: 10px;
}

.list_05 p {
    width: 100%;
}








.list_a {
    display: flex;
    justify-content: space-between;
}

.list_a li {
    max-width: 300px;
    width: 32%;
    text-align: center;
}

.list_a li .y_icon {
    margin: 10px 0 20px;
}

.list_a li img {
    max-width: 100%;
}





.table_01 {
    border-collapse: collapse;
    border: 0;
    font-size: 16px;
    width: 100%;
}

.table_01 th {
    border-bottom: 1px solid #DCDCDC;
    text-align: left;
    padding: 24px 0 23px;
    width: 150px;
    line-height: 1.4em;
    font-size: 18px;
    color: #00619D;
    vertical-align: top;
}

.table_01 td {
    border-bottom: 1px solid #DCDCDC;
    padding: 24px 15px 23px 20px;
    line-height: 1.7em;
    vertical-align: top;
    position: relative;
}

.table_01 td:before {
    content: "";
    position: absolute;
    background-image: url("../images/common/icon_14.png");
    background-size: 100%;
    width: 16px;
    height: 24px;
    left: 0;
    top: 26px;
}


.table_01 td a {
    color: #24ADE2;
    font-weight: 600;
    font-size: 16px;
    text-decoration: underline;
}







.table_02 {
    border-collapse: collapse;
    border: 2px solid #24ADE2;
    width: 100%;
    background-color: #fff;
    font-size: 16px;
}

.table_02 th {
    background-color: #E8F6FB;
    padding: 15px 10px;
    font-size: 16px;
    font-weight: 700;
    border-left: 1px solid #24ADE2;
    border-bottom: 1px solid #24ADE2;
    white-space: nowrap;
    width: 10%;
}

.table_02 td {
    padding: 15px 10px 17px;
    border-bottom: 1px solid #24ADE2;
    border-left: 1px solid #24ADE2;
    line-height: 1.6em;
    font-weight: 400;
    color: #333333;
    text-align: center;
}

.table_02 .t_w_01 {
    width: 20%;
}

.table_02 .t_w_02 {
    width: 60%;
}

.table_02 .t_w_03 {
    width: 35%;
}






dl.table_03 {
    display: flex;
    font-size: 16px;
    background-color: #FAFAFA;
    flex-wrap: wrap;
    width: 100%;
}

dl.table_03 dt {
    color: #00619D;
    font-weight: 600;
    padding: 15px;
    border-bottom: 1px solid #688FA7;
    width: 15%;
}

dl.table_03 dd {
    color: #333;
    font-weight: 400;
    padding: 15px;
    border-bottom: 1px solid #688FA7;
    width: 85%;
}



.table_04 {
    border-collapse: collapse;
    background-color: #FAFAFA;
	width: 100%;
}


.table_04 th {
    color: #00619D;
    font-weight: 600;
    padding: 15px;
    border-bottom: 1px solid #688FA7;
    width: 17%;
    text-align: left;
    vertical-align: middle;
    min-width: 150px;
	font-size: 16px;
}

.table_04 td {
    color: #333;
    font-weight: 400;
    padding: 15px;
    border-bottom: 1px solid #688FA7;
    width: 85%;
}




/**************/




.faq_box dt {
    padding: 4px 40px 15px 50px;
    font-size: 20px;
    list-style: 1.6em;
    position: relative;
    letter-spacing: 0.08em;
    cursor: pointer;
    color: #333333;
    background-image: url("../images/common/icon_q.png");
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 34px 34px;
    margin-top: 50px;
    border-bottom: 2px solid #24ADE2;
    font-weight: 600;
}


.faq_box dt:after {
    position: absolute;
    content: "";
    background-image: url("../images/common/on_btn.png");
    background-repeat: no-repeat;
    background-size: 100%;
    width: 16px;
    height: 16px;
    top: 11px;
    right: 10px;
}


.faq_box dd {
    padding: 20px 30px 5px;
    position: relative;
    display: none;
    background-color: #F4F8FD;
    font-size: 16px;

}

.faq_box dd {
    line-height: 1.7em;
    color: #000;
    font-size: 16px;
}

.faq_box dd p {
    margin-bottom: 20px;
}

.faq_box dt:first-child {
    margin-top: 0;
}

.faq_box .btn_off:after {
    position: absolute;
    content: "";
    background-image: url("../images/common/off_btn.png");
    background-repeat: no-repeat;
    top: 18px;
    right: 10px;
    width: 16px;
    height: 2px;
    background-size: 100%;
}





/**************/

/*
.head_inner {
    display: flex;
    justify-content: space-between;
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 100;
}
*/


.head_inner h1{
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
}

.head_inner h1 img{
    max-width: 170px;
}




.h_top_box {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-bottom: 17px;
}

.h_top_box > div {
    margin-left: 18px;
}






.h_top_box .h_btn_01 a {
    color: #fff;
    background-color: #24ADE2;
    font-weight: 600;
    border-radius: 50px;
    display: inline-block;
    padding: 2px 15px;
    font-size: 14px;
}

.h_top_box .h_btn_01 a:hover {
    opacity: 1;
    background-color: #00568B;
}

.h_top_box .h_btn_02 a {
    color: #fff;
    background-color: #24ADE2;
    font-weight: 600;
    border-radius: 50px;
    display: inline-block;
    padding: 2px 15px;
    font-size: 14px;
}

.h_top_box .h_btn_02 a:hover {
    opacity: 1;
    background-color: #00568B;
}

.h_top_box .h_btn_01 span {
    background-image: url("../images/common/icon_dl.png");
    background-size: 16px;
    background-position: right 3px;
    padding-right: 20px;
}

.h_top_box .h_btn_02 span {
    padding-right: 25px;
    background-image: url("../images/common/icon_mail_20.png");
    background-size: 20px;
    background-position: right 2px;
}


.pc_nav{
	position: fixed;
	top: 0;
	right: 0;
	z-index: 1000;

    margin-left: 175px;
}
.pc_nav .nav_inner {
    background-color: #fff;
    border-radius: 0 0 0 30px / 0 0 0 30px;
    padding: 20px 30px 20px 20px;
}


.pc_nav nav > ul {
    display: flex;
    justify-content: flex-end;
    position: relative;
}

.pc_nav nav > ul > li {
    margin-left: 18px;

}

.pc_nav nav > ul > li.nav_a .accordion-menu{
    left: -75px;
}
.pc_nav nav > ul > li.nav_b .accordion-menu{
    left: 27px;
}
.pc_nav nav > ul > li a {
    color: #24ADE2;
    font-weight: 600;
    font-size: 14px;
    line-height: 1.5em;
 
}
.pc_nav nav > ul > li>a{
    display: flex;
    line-height: 1.5em;

}
.pc_nav nav > ul > li a:hover {
    color: #00619D;
    opacity: 1;
}

.pc_nav nav > ul > li.icon_search{
	background-image: url("../images/common/icon_05.png");
	background-size: 24px;
	background-position: left 2px;
	padding-left: 27px;
}

.arrow {
    width: 12px;
    height: 18px;
    display: inline-block;
    background-image: url("../images/common/icon_under_10.png");
    background-repeat: no-repeat;
    background-position: left 9px;
    background-size: 12px;
    transition: opacity 0.4s ease, background-image 0.4s ease;
    opacity: 1;
    margin-left: 4px;
}


.has-accordion.open .arrow {
    background-image: url("../images/common/icon_under_10_off.png");
    opacity: 0.99;
    transform: none;
}


.accordion-menu {
    position: absolute;
    top: 55px;
    left: 0;
    width: 250px;
    background-color: #f6f6f6;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.3s ease;
    border-radius: 20px;
	padding: 20px 20px 15px 20px;
}

.accordion-menu li{
	margin-right: 30px;
    margin-bottom: 10px;
}

.accordion-menu li.nav_sub_ttl{
	width: 100%;
	font-size: 14px;
	color: #24ADE2;
	font-weight: 600;
    margin-bottom: 17px;
    padding-bottom: 6px;
    border-bottom: 3px solid #24ADE2;
}
.accordion-menu li:last-child {
    border-bottom: 0;
}

.accordion-menu li a {

    white-space: nowrap;
    color: #00619D;
    font-size: 14px;
    letter-spacing: 0;
    display: block;
}


.has-accordion.open .accordion-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}




/**************/




#navToggle {
    position: fixed;
    right: 0;
    top: 0;
    width: 60px;
    height: 60px;
    cursor: pointer;
    z-index: 1000;
    display: none;
}

#navToggle span {
    display: inline-block;
    transition: all .4s;
    position: absolute;
}

#navToggle span:nth-of-type(1),
#navToggle span:nth-of-type(3) {
    height: 2px;
    background: #24ADE2;
    width: 16px;
    left: 22px;
}

#navToggle span:nth-of-type(1) {
    top: 26px;
}


#navToggle span:nth-of-type(2) {
    top: 12px;
    left: 11px;
    font-size: 0.6rem;
    text-transform: uppercase;
    color: #24ADE2;
    font-weight: 700;
}

#navToggle span:nth-of-type(3) {
    top: 34px;
}


.openNav #navToggle span:nth-of-type(2) {
    opacity: 0;

}


.openNav #navToggle span:nth-of-type(1) {
    top: 22px;
    left: 22px;
    transform: translateY(6px) rotate(-45deg);
    width: 16px;
}

.openNav #navToggle span:nth-of-type(3) {
    top: 34px;
    left: 22px;
    transform: translateY(-6px) rotate(45deg);
    width: 16px;
}




.sp_head {
    height: 60px;
    z-index: 100;
    top: 0;
    left: 0;
    width: 100%;
    display: none;
    position: fixed;
    background-color: #fff;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}

.sp_nav.on {
    height: 100vh;
	padding-bottom: 250px;
}


.sp_nav {
    overflow-y: scroll;
    position: fixed;
    height: auto;
    left: 0;
    z-index: 999;
    top: 0;
    width: 100%;
    background-color: #F4F8FD;
    margin-top: 59px;
}

.sp_area {
    padding: 20px 0 10px;
    height: 90px;
    position: fixed;
    z-index: 100000;
    top: 0;
    left: 0;
    width: 100%;
}

.sp_nav > ul {
    display: none;
    padding: 25px 20px;
}

.sp_nav > ul > li {
    border-bottom: 1px solid #24ADE2;
}


.sp_nav > ul > li > a {
    color: #333333;
    padding: 15px 0 15px 0;
    line-height: 1.4em;
    text-decoration: none;
    font-size: 14px;
    font-weight: bold;
    display: block;
}


.s_logo {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 1000;
}

.s_logo img {
    max-width: 82px;
    width: 100%;
}



.sub_nav_list {
    display: none;
    padding-left: 10px;
}

.sub_nav_list > li {
    margin-bottom: 10px;
}




.sp_nav > ul > li span {
    display: block;
    position: relative;
    color: #333333;
    padding: 18px 25px 18px 0;
    line-height: 1.4em;
    text-decoration: none;
    font-size: 14px;
    font-weight: bold;
}


.sub_nav > span:before {
    content: "";
    background-image: url("../images/common/icon_under_10.png");
    width: 10px;
    height: 6px;
    background-size: 100%;
    position: absolute;
    right: 10px;
    top: 25px;
}

.sub_nav .s_nav_open:before {
    content: "";
    background-image: url("../images/common/icon_under_10_off.png");
    width: 10px;
    height: 6px;
    position: absolute;
    right: 10px;
    top: 25px;
}



.sub_nav_list > li a {
    color: #333;
    padding: 3px 0 3px 0;
    display: block;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.4em;
}

.sp_nav > ul > li.s_nav_01 a {
    font-size: 12px;
    line-height: 1.4em;
    font-weight: 400 !important;
}



.sp_nav > ul > li.sp_btn_img01,
.sp_nav > ul > li.sp_btn_img02 {
    text-align: center;
    border-bottom: 0;
}

.sp_nav > ul > li.sp_btn_img01 {
    margin: 30px 0 0;
}

.sp_nav > ul > li.sp_btn_img01 img {
    max-width: 240px;
    width: 100%;
}

.sp_nav > ul > li.sp_btn_img02 img {
    max-width: 40px;
    width: 100%;
}



.sp_nav > ul .sp_bnr_a{
	border-bottom: 0;
	margin-bottom: 15px;
}



.sp_nav > ul .sp_bnr_a a {
    background-color: #00568B;
    color: #fff;
    display: block;
    padding: 10px 60px 10px 15px;
    position: relative;
    font-size: 22px;
    line-height: 1.2em;
    font-weight: 600;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}

.sp_nav > ul .sp_bnr_a a:before {
    content: "";
    position: absolute;
    width: 40px;
    height: 22px;
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto;
    background-image: url("../images/common/icon_03_b.png");
    background-size: 100%;
}
.sp_nav > ul .sp_bnr_a span{
    color: #fff;
	padding: 5px 0;
}

.sp_nav > ul .sp_bnr_a a:hover {
    background-color: #fff;
    color: #24ADE2;
    opacity: 1;
    box-shadow: 0 3px 30px rgba(000, 000, 000, 0.16);
}
.sp_nav > ul .sp_bnr_a a:hover span{
    color: #24ADE2;
}
.sp_nav > ul .sp_bnr_a a:hover:before {
    background-image: url("../images/common/icon_03_w.png");
}


/**************/

.pan_list {
    width: 100%;
    padding: 15px 0px 0 70px;
}

.pan_list ul {
    padding: 0 10px;
    line-height: 1.4em;
}


.pan_list ul li {
    display: inline;
    color: #333;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.3em;
    position: relative;
    padding-left: 15px;
    margin-left: 8px;
}


.pan_list ul li:first-child {
    padding-left: 0;
    margin-left: 0;
}

.pan_list ul li:last-child a {
    margin-right: 0;
    color: #333;
}

.pan_list ul li a {
    position: relative;
    display: inline;
    color: #24ADE2;
    font-size: 11px;
}

.pan_list ul li:after {
    content: "";
    position: absolute;
    top: 3px;
    left: 0;
    background-image: url("../images/common/icon_pan.png");
    width: 6px;
    height: 12px;
    background-size: 100%;
}

.pan_list ul li:first-child:after {
    content: "";
    right: 0;
    background-image: none;
}

/**************/


.page_ttl_area {
    padding: 40px 40px 0;
    position: relative;
}


.page_ttl_area > .inner {
    height: 450px;
    background-size: cover;
    background-position: center;
    background-image: url("../images/common/pege_img.jpg");
    border-radius: 30px;
}

.page_ttl_area > .inner_a {
    height: 550px;
}


.page_ttl_area .page_ttl {
	position: absolute;
	left: 0;
	bottom: 0;
    background-color: #fff;
    border-radius: 0 30px 0 0 / 0 30px 0 0;
    padding: 17px 40px 17px 70px;
    color: #24ADE2;
    font-size: 36px;
    line-height: 1.4em;
    max-width: 77%;
}

.page_ttl_area .inner_b {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 17px 40px 25px 90px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 90%;
}

.page_ttl_area .mv_ttl_lp,
.page_ttl_area .mv_ttl_lp_a {
    padding: 10px 20px;
    display: inline-block;
    margin-bottom: 15px;
    background-color: #00619D;
}

.page_ttl_area .mv_ttl_lp span,
.page_ttl_area .mv_ttl_lp_a span {
    color: #fff;
    font-size: 30px;
    line-height: 1.4em;

}


.page_ttl_area .page_01 {
    background-image: url("../images/common/page_ttl_01.jpg");
}

.page_ttl_area .page_02 {
    background-image: url("../images/common/page_ttl_02.jpg");
}

.page_ttl_area .page_03 {
    background-image: url("../images/common/page_ttl_03.jpg");
}

.page_ttl_area .page_04 {
    background-image: url("../images/common/page_ttl_04.jpg");
}

.page_ttl_area .page_05 {
    background-image: url("../images/common/page_ttl_05.jpg");
}

.page_ttl_area .page_06 {
    background-image: url("../images/common/page_ttl_06.jpg");
}

.page_ttl_area .page_07 {
    background-image: url("../images/common/page_ttl_07.jpg");
}

.page_ttl_area .page_08 {
    background-image: url("../images/common/page_ttl_08.jpg");
}

.page_ttl_area .page_09 {
    background-image: url("../images/common/page_ttl_09.jpg");
}

.page_ttl_area .page_10 {
    background-image: url("../images/common/page_ttl_10.jpg");
}

.page_ttl_area .page_11 {
    background-image: url("../images/common/page_ttl_11.jpg");
}

.page_ttl_area .page_12 {
    background-image: url("../images/common/page_ttl_12.jpg");
}

.page_ttl_area .page_13 {
    background-image: url("../images/common/page_ttl_13.jpg");
}

.page_ttl_area .page_14 {
    background-image: url("../images/common/page_ttl_14.jpg");
}

.page_ttl_area .page_15 {
    background-image: url("../images/common/page_ttl_15.jpg");
}

.page_ttl_area .page_16 {
    background-image: url("../images/common/page_ttl_16.jpg");
}

.page_ttl_area .page_17 {
    background-image: url("../images/common/page_ttl_17.jpg");
}

.page_ttl_area .page_18 {
    background-image: url("../images/common/page_ttl_18.jpg");
}

.page_ttl_area .page_19 {
    background-image: url("../images/common/page_ttl_19.jpg");
}

.page_ttl_area .page_20 {
    background-image: url("../images/common/page_ttl_20.jpg");
}

.page_ttl_area .page_21 {
    background-image: url("../images/common/page_ttl_21.jpg");
}

.page_ttl_area .page_22 {
    background-image: url("../images/common/page_ttl_22.jpg");
}

.page_ttl_area .page_23 {
    background-image: url("../images/common/page_ttl_23.jpg");
}

.page_ttl_area .page_24 {
    background-image: url("../images/common/page_ttl_24.jpg");
}

.page_ttl_area .page_25 {
    background-image: url("../images/common/page_ttl_25.jpg");
}

.page_ttl_area .page_26 {
    background-image: url("../images/common/page_ttl_26.jpg");
}

.page_ttl_area .page_27 {
    background-image: url("../images/common/page_ttl_27.jpg");
}

.page_ttl_area .page_28 {
    background-image: url("../images/common/page_ttl_28.jpg");
}

.page_ttl_area .page_29 {
    background-image: url("../images/common/page_ttl_29.jpg");
}

.page_ttl_area .page_30 {
    background-image: url("../images/common/page_ttl_30.jpg");
}

.page_ttl_area .page_31 {
    background-image: url("../images/common/page_ttl_31.jpg");
}

.page_ttl_area .page_32 {
    background-image: url("../images/common/page_ttl_32.jpg");
}

.page_ttl_area .page_33 {
    background-image: url("../images/common/page_ttl_33.jpg");
}

.page_ttl_area .page_34 {
    background-image: url("../images/common/page_ttl_34.jpg");
}




/**************/


.item_box_a .btn_04 {
    margin-bottom: 40px;
}

.item_box_a .btn_tel {
    margin-bottom: 40px;
}

/**************/




.top_mv_area {
    height: 760px;
    padding: 40px;
    border-radius: 30px;
}

.top_mv_area .slide_img {
    height: 760px;
    background-size: cover;
    position: relative;
    border-radius: 30px;
    background-position: center;
}
.top_mv_area .mv_txt {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 100%;
    padding: 0 70px;
    text-align: left;
    box-sizing: border-box;
}
/*
.top_mv_area .mv_txt {
    position: absolute;
    bottom: 0;
    top: 0;
    margin: auto;
    height: 150px;
    padding: 0 70px;
    text-align: left;
}
*/
.top_mv_area h2 {
    color: #fff;
    font-size: 35px;
    margin-bottom: 15px;
    line-height: 1.8em;
    text-shadow: 0 0 10px #222;
}

.top_mv_area h3 {
    color: #fff;
    font-size: 26px;
    margin-bottom: 30px;
    line-height: 1.6em;
    text-shadow: 0 0 10px #222;
}

.top_mv_area h4 {
    color: #fff;
    font-size: 22px;
    margin-bottom: 30px;
    line-height: 1.4em;
    margin-top: -20px;
    text-shadow: 0 0 10px #222;
}

.top_mv_area .mv_txt .btn_01 {
    text-align: left;
    margin-top: 30px;
}


.slide_01 {
    background-image: url("../images/top/mv_img_01.jpg");
}

.slide_02 {
    background-image: url("../images/top/mv_img_02.jpg");
}

.slide_03 {
    background-image: url("../images/top/mv_img_03.jpg");
}

.slide_04 {
    background-image: url("../images/top/mv_img_04.jpg");
}

.slide_05 {
    background-image: url("../images/top/mv_img_05.jpg");
}











.slick-dots {
    bottom: 20px !important;
}

.slick-dots li {
    width: 10px;
    height: 10px;
}

.slick-dots li button {
    width: 10px;
    height: 10px;
}

.slick-dots li button:before {
    content: '';
    background-color: #fff !important;
    opacity: 1;
    border: 1px solid #24ADE2;
    border-radius: 50px;
    width: 10px;
    height: 10px;
}

.slick-dots li.slick-active button:before {
    background-color: #24ADE2 !important;
}




/**************/
.top {
    padding-top: 130px;
}

.top .box01 .box_full_3c_a a:hover {
    opacity: 1;
}


.top .box01 .w900 {
    margin-top: 100px;
}




.top .box01 .box_full_3c_a li:hover .btn_07_a span:after {
    background-color: #24ADE2;
}


.top .box01 .box_full_3c_a li:hover .btn_07_a span:before {
    background-image: url("../images/common/icon_btn07_off.png");
}




.top .box01 .ttl_11 {
    margin-bottom: 30px;
}

.top .bg_001 {
    background-image: url("../images/top/bg_02.jpg");
    background-size: 2980px;
    background-position: center top;
}

.top .box02 .float_sb {
    align-items: center;
    margin-bottom: 40px;
}

.top .box02 .float_sb .ttl_04 {
    margin-bottom: 0;
}

.top .box02 .float_sb .link_03 {
    text-align: right;
}


.top .box03 .img_ttl_a img {
    max-width: 664px;
    margin-bottom: 30px;
}


.top .box03 .no_img img {
    max-width: 61px;
    width: 100%;
    margin-bottom: 10px;
}

.top .box03 .box_full_2c_a,
.top .box03 .box_full_2c_b {
    margin-bottom: 100px;
}


.top .box03 .btn_02 {
    text-align: left;
}


.top .box04 {
    padding-bottom: 140px;
}

.top .box04 .w_full {
    padding-top: 100px;
}

.top .box04 .w1400 {
    position: relative;
}


.top .box04 .bg_img {
    background-image: url("../images/top/img_10.jpg");
    border-radius: 100px 100px 0 0/ 100px 100px 0 0;
    height: 440px;
    background-position: center;
    background-size: cover;
}

.top .box04 .ttl_16 {
    margin-top: -98px;
}

.top .box04 .btn_02 {
    text-align: left;
    margin-top: 50px;
    margin-bottom: 60px;
}

.top .box04 .w1260 {
    margin-top: 100px;
}

.top .box04 .imw100{
    margin-top: -18%;
}




.circle_area {
    position: relative;
    margin: 50px auto 0; 
    width: 36vw;        
    max-width: 520px;    
}

.circle_box {
    position: relative;
    width: 100%;
}


.circle_img {
    position: relative; 
    display: block;
    width: 100%;
    height: auto; 
}

.circle_img_logo {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: auto;
    animation: contactRotate 20s linear infinite;
}

.circle_logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    width: 40%;
    max-width: 310px;
    z-index: 2;
}

.circle_logo img {
    width: 100%;
    height: auto;
    display: block;
}

@keyframes contactRotate {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}









.top .box05 {
    padding: 140px 0 80px;
}

.loop_area {
    width: 100%;
    overflow: hidden;
}

.loop_area .loop_inner {
    display: flex;
    width: fit-content;
    animation: loop-animation 30s linear infinite;
}

.loop_area .slide_in {
    flex-shrink: 0;
    width: 470px;
}

.loop_area .slide_in img {
    width: 100%;
    height: auto;
    display: block;
}

@keyframes loop-animation {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}
.top .box06 .ttl_04{
	letter-spacing: 0;
}
.top .box06 .box_1400_2c_a .r_box{
	width: 68%
}
.top .box06 .box_1400_2c_a .l_box{
	width: 29%;
}

/**************/


.sitemap .btn_06 {
    margin-bottom: 10px;
}

.sitemap .link_05 {
    margin-bottom: 40px;
}

/**************/
.actplan .box01 {
    margin-bottom: 70px;
}

.actplan .box01 .box_c {
    padding: 40px;
}

/**************/

.faq .box02 {
    margin-bottom: 100px;
}

.faq .box02:last-child {
    margin-bottom: 0;
}


/**************/
.news_single .float_ft {
    margin-bottom: 30px;
}

.news_single .float_ft .day_a {
    margin-right: 15px;
}

.news_single .ttl_05 {
    margin-bottom: 30px;
}

/**************/

.environment .box01 .iw520 {
    margin-top: 50px;
	text-align: center;
}

.environment .box01 .iw520.txt_l img{
	margin-left: 0;
}



.environment .iw520.mb50.txt_l{
	margin-top: 20px;
}

.privacy .inner {
    margin-bottom: 40px;
}


.not_found {
    text-align: center;
}

.not_found .btn_02 {
    margin-top: 40px;
}















/**************/

.company .box01 #map {
    height: 600px;
    width: 100%;
    margin: auto;
    margin-bottom: 30px;


}


.company .box01 .g_map iframe {
    width: 100%;
    padding: 20px;
}

.company .box01 .iw1000 img {
    border-radius: 50px;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}

.company .box01 .table_04 {
    margin-bottom: 140px;
}


.company .box02 {
    padding: 0 0 140px;
}

/**************/


.devices_list .box01 {
    padding-bottom: 60px;
}

.devices_list .box02 {
    padding: 100px 0 20px;
}










/**************/

.search .box01 p {
    margin-bottom: 70px;
}


.search .box02 {
    padding-bottom: 100px;
}

.search .box02 .search_container_b {
    margin-bottom: 30px;
}

.search .box03 {
    padding-bottom: 140px;
}


.search .box03 .box_d_40_a {
    margin-bottom: 50px;
}

.search .box03 .box_d_40_a:last-child {
    margin-bottom: 0;
}


/**************/

.search_single .box01 .table_01 {
    margin-bottom: 40px;
}

.search_single .box01 .btn_02 {
    margin-top: 40px;
}





/**************/




.contact .box01 .link_list_a {
    margin-top: 40px;
}



.mechatronics_contact,
.measuring_contact,
.contact{
    padding-bottom: 100px;
}

.mechatronics_contact .check_area .check {
    margin-top: 0;
}





/**************/

.midcareer_a .btn_04 {
    margin-bottom: 40px;
    margin-top: 80px;
}



/**************/
.philosophy .box01{

}

.philosophy .box01 .box_full_2c_c .l_box{
    width: 38%;
}
.philosophy .box01 .box_full_2c_c .r_box p{
    font-size: 20px;
}
.philosophy .box01 .box_full_2c_c .r_box{
    width: 55.4%;
}


.philosophy .box02 {
    padding-bottom: 140px;
}



.philosophy .box03 .imw100 {
    margin-bottom: 40px;
}


.philosophy .box03 .w1000 img {
    border-radius: 50px;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}



.philosophy .box03 .box_full_2c_d.mb_xl{
    display: block;
}

.philosophy .box03 .box_full_2c_d > div{
    width: 100%;
    margin-bottom: 30px;
}

.philosophy .box03 .box_full_2c_d > div .ttl_03{
    font-size: 28px;
}

.philosophy .box03 .box_full_2c_d > div p{
    font-size: 20px;
}

/**************/
.works .box01 {
    padding-bottom: 140px;
}

.works .box02 {
    padding: 100px 0 0;
}

.works .box02 .box_1260_4c_up li {
    margin-bottom: 140px;
}





.works .check_inner {
    display: none;
}








.works .wp-pagenavi {
    margin-top: -70px;
}





.works_single .inner_01 .iw520 {
    margin-top: 30px;
}

.works_single .editor {
    margin-top: 80px;
}

/**************/

.midcareer .box02 {
    padding-bottom: 140px;
}


/**************/


.benefit .box01 {
    padding-bottom: 120px;
}

.benefit .box_1260_4c .float_ce > div {
    margin: 0 2%;
}
.benefit .box01 .box_1260_4c > li{
	padding: 40px 28px;
}

.benefit .box01 .box_1260_4c > li .ttl_19{
	
}
.benefit .box02 .b_line_a {
    margin: 50px 0;
}



/**************/


.newgrads .box02 {
    padding-bottom: 140px;
}

.newgrads .box03 .type_01 {
    margin-bottom: 40px;
    text-align: center;
}

.newgrads .box03 .type_01 img {
    border-radius: 10px;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}








.voice_box dt {
    margin-top: 40px;
    display: flex;
    align-items: center;
    position: relative;
    justify-content: flex-start;
    border-bottom: 2px solid #24ADE2;
    background-color: #fff;
    border-radius: 20px 20px 0 0 / 20px 20px 0 0;
    padding: 30px;
    cursor: pointer;

}

.voice_box dt img {
    max-width:100px;
    width: 100%;
    border-radius: 100px;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.voice_box dt .l_box {
    max-width: 100px;
    width: 12%;
    margin-right: 30px;
    border-radius: 100px;
}

.voice_box dt .r_box {
    width: 81%;
    max-width: 770px;
}

.voice_box dt:after {
    position: absolute;
    content: "";
    background-image: url("../images/common/voice_on.jpg");
    background-repeat: no-repeat;
    background-size: 100%;
    width: 42px;
    height: 42px;
    top: 0;
    bottom: 0;
    right: 30px;
    margin: auto;
}


.voice_box dd {
    padding: 40px 40px 40px;
    position: relative;
    display: none;
    background-color: #fff;
    font-size: 16px;
    border-radius: 0 0 20px 20px / 0 0 20px 20px;
    border: 1px solid #24ADE2;
}

.voice_box dd {
    line-height: 1.7em;
    color: #000;
    font-size: 16px;
}

.voice_box dd p {
    margin-bottom: 40px;
}

.voice_box dd p:last-child {
    margin-bottom: 0;
}

.voice_box dt:first-child {
    margin-top: 0;
}

.voice_box .btn_off:after {
    position: absolute;
    content: "";
    background-image: url("../images/common/voice_off.jpg");
    background-repeat: no-repeat;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 30px;
    width: 42px;
    height: 42px;
    background-size: 100%;
}










/**************/
.business .box01 {
    padding-bottom: 140px;
}

.business .box01 .ttl_11 {
    margin-bottom: 30px;
}

.business .box02 .btn_02 {
    margin-top: -20px;
}

.business .box_1260_4c_up li{
    margin-bottom: 60px;	
}

/**************/

.measuring .box01 .link_list {
    margin-bottom: 60px;
}





.measuring .box04 {
    padding-bottom: 140px;
}

.measuring .box04 .box_1260_2c_f {
    margin-bottom: 40px;
}

.measuring .box04 .box_1260_3c {
    margin-bottom: 40px;
    text-align: center;
}

.measuring .box04 .box_1260_3c img {
    margin-bottom: 10px;
}

.measuring .box04 .inner_01 {
    margin-bottom: 80px;
}

.measuring .box04 .inner_01:last-child {
    margin-bottom: 0;
}

.measuring .box04 .inner_01 img {
    border-radius: 20px;
}


.measuring .box05 .w1000 {
    margin-top: 80px;
}



.measuring{
	
}




/**************/

.training .box01 {
    padding-bottom: 100px;

}

/**************/





.document .inner_01 {
    margin-bottom: 50px;
    margin-top: 100px;
}

.document .mw_wp_form_confirm,
.document .mw_wp_form_complete{
    padding-bottom: 100px;
}


.list_c {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}



.list_c:after {
    content: "";
    display: block;
    width: 32%;
    height: 0;
}



.list_c > li {
    background-color: #fff;
    width: 32%;
    max-width: 300px;
    padding: 20px 15px;
    margin-bottom: 50px;
    box-sizing: border-box;
    border-radius: 20px;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}

.list_c > li img {
    max-width: 100%;
    border: 1px solid #CCCCCC;
}


.list_c > li .up_img_area {
    position: relative;
}

.list_c > li .icon_new {
    position: absolute;
    top: 0;
    left: 0;
}

.list_c > li input[type=radio],
.list_c > li input[type=checkbox] {
    display: none;
}

/*
.list_c > li:has(:checked) {
    background-color: #F4F8FD;
    border: 4px solid #24ADE2;
    padding: 16px 11px;
}
*/


.list_c > li .check_area .check label {
    cursor: pointer;
}

.list_c > li .check {
    padding-left: 0 !important;
    margin-bottom: 0 !important;
    line-height: 1.5em !important;
    text-align: left;
}

.list_c > li .check span {
    margin-right: 0 !important;
}

.list_c label {

    cursor: pointer;

}

.list_c > li .up_img img{
    width: 100%;
    height: 100%;
    aspect-ratio: 13 / 12;
    object-fit: cover;
}



/**************/

.strength {
    background-image: url("../images/strength/bg_01.jpg");
    background-size: 1490px;
    background-position: center 100px;
    background-repeat: repeat-y;
}




.strength .box02 p{
	font-size: 20px;
	line-height: 1.6em;
}



/**************/

.mechatronics .box01 {
    padding-bottom: 140px;
}

.mechatronics .carousel {
    padding: 0 20px;
    overflow: hidden;
}

.mechatronics .carousel .slick-list {
    padding-bottom: 20px !important;
}

.mechatronics .slider .slide {
    background-color: #fff;
    border-radius: 30px;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}

.mechatronics .slider {
    overflow: visible;


}

.mechatronics .slick-slide {
    margin: 0 30px;
}

.mechatronics .slider {
    margin: 0 -30px;
}

.mechatronics .carousel .slide_img img {
    width: 100%;
    display: block;
}

.mechatronics .carousel .slick-prev,
.mechatronics .carousel .slick-next {
    width: 26px;
    height: 26px;
    z-index: 10;
}


.mechatronics .slick-prev:before,
.mechatronics .slick-next:before {
    display: none;
}

.mechatronics .slick-prev {
    top: 50%;
    left: 25%;
    transform: translate(-50%, -50%);
}

.mechatronics .carousel .slick-next {
    top: 50%;
    right: 25%;
    transform: translate(50%, -50%);
}

.mechatronics .carousel .slick-prev::after {
    content: '';
    background-image: url("../images/mechatronics/prev_icon.png");
    width: 26px;
    height: 26px;
    background-size: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.mechatronics .carousel .slick-next::after {
    content: '';
    background-image: url("../images/mechatronics/next_icon.png");
    width: 26px;
    height: 26px;
    background-size: 100%;
    position: absolute;
    top: 0;
    left: 0;
}


.mechatronics .carousel .slide_ttl {
    color: #fff;
    background-color: #24ADE2;
    border-radius: 30px 30px 0 0 / 30px 30px 0 0;
    font-size: 26px;
    line-height: 1.4em;
    padding: 15px;
    font-weight: 600;
    text-align: center;

}

.mechatronics .carousel p {
    font-size: 20px;
    font-weight: 600;
    text-align: center;
    margin-top: 15px;
    padding: 15px 20px 30px;
    line-height: 1.6em;
}


/**/

/**************/
.lsi_test .box01 .link_list {
    margin-bottom: 50px;
}


















/**************/

.solutions .box03 {
    padding-bottom: 140px;
}


.solutions .box_1260_2c_e > li img {
    max-width: 520px;
    width: 100%;
}

.solutions .box02 .box_1260_3c p{
	font-size: 20px;
}
.solutions.acoustic_testing .box04 .box_1260_2c_f > li{
	margin-bottom: 80px;
}



.acoustic_testing .box_1260_3c img {
    margin-bottom: 20px;
}

.acoustic_testing .box04 {
    margin-top: 140px;
	padding-bottom: 50px;
}
.acoustic_testing .box04 .box_1260_2c_f img{
    display: block;
    margin: 0 auto 20px;
}


.acoustic_testing .box07 .float_sb .ttl_04 {
    margin-bottom: 0;
}

.acoustic_testing .box07 .float_sb {
    margin-bottom: 40px;
    align-items: center;
}



.inspection_systems .box05 .box_1260_4c_b > li img{
	border-radius: 20px;
}
.inspection_systems .box05 .box_1260_4c_b > li p{
	font-size: 16px;
}
/**************/
.history{
    background-image: url("../images/history/bg_img.jpg");
	background-size: 1490px;
	background-position: center 100px;
	background-repeat: repeat-y;
}

.history .inner_001{
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}
.history .imw100 img{
	box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
	border-radius: 50px;
}
.history .inner_001 img{
	max-width: 310px;
	margin-bottom: 20px;
}
.history .history_area {
    background-image: url("../images/history/line.jpg");
    background-position: 210px top;
    padding-bottom: 20px;
	background-size: 2px;
	background-repeat: repeat-y;
}




.history .history_area .float_sb,
.history .history_area .float_ft {
    align-items: flex-start;
    margin-bottom: 40px;
}

.history .h_left_box {
    width: 182px;
    text-align: center;
    border-top: 2px solid #24ADE2;
    border-bottom: 2px solid #24ADE2;
    padding: 3px 0px;
    position: relative;
    margin-right: 80px;
}

.history .h_left_box:after {
    content: "";
    background-image: url("../images/history/dot_icon.png");
    position: absolute;
    right: -35px;
    top: -1px;
    width: 12px;
    height: 12px;
	background-size: 100%;
}

.history .inner_l {
    border: 1px solid #24ADE2;
    width: 182px;
    padding: 10px 25px 10px;
    background-color: #24ADE2;
	color: #fff;
	border-radius: 5px;

}

.history .h_left_box h3 {
    font-size: 33px;
	line-height: 1em;
}





.history .h_right_box {
    max-width: 740px;
    background-color: #fff;
    box-shadow: 3px 3px 6px rgba(000, 000, 000, 0.2);
    padding: 40px 45px 35px;
	width: 100%;
	border-radius: 20px;
}
.history .h_right_box img{
	max-width: 330px;
	width: 100%;
}

.history .float_ft .h_right_box {
    max-width: 410px;
    background-color: #fff;
    box-shadow: 3px 3px 6px rgba(000, 000, 000, 0.2);
    padding: 40px 45px 35px;
	border-radius: 20px;
}


.history .h_right_box > div {
    margin-bottom: 13px;

}

.history .h_right_box > .inner_001 div{
	width: 48%;
	max-width: 310px;
}
/**************/
/**************/
/**************/
/**************/
/**************/























































/**************/
.wp-pagenavi {
    font-size: 14px;
    text-align: center;
    margin-top: 30px;
}

.wp-pagenavi a {
    background-color: #fff;
    border: 1px solid #24ADE2;
    color: #24ADE2;
    font-weight: normal;
    padding: 3px 13px;
    margin: 7px 4px;
    display: inline-block;
    white-space: nowrap;
    margin-bottom: 5px;
    border-radius: 100px;
    font-size: 14px;
}

.wp-pagenavi span {
    padding: 9px 0px;
    margin-bottom: 20px;
}

.wp-pagenavi .current,
.wp-pagenavi a:hover {
    padding: 3px 13px;
    border: 1px solid #24ADE2;
    background-color: #24ADE2;
    color: #fff;
    opacity: 1;
    font-size: 14px;
    display: inline-block;
    margin: 7px 4px;
    border-radius: 100px;
}




/*******************/

.editor {
    padding: 0;
    word-break: break-all;
    margin-bottom: 50px;
}

.editor img {
    height: auto;
    margin: 0px auto 30px;
    max-width: 640px;
    display: block;
	width: 100%;
}

.editor a {
    color: #24ADE2;
    text-decoration: underline;
    font-weight: 600;
}


.editor p {
    margin-bottom: 30px;
}

.editor p:last-child {
    margin-bottom: 0;
}


.editor h1,
.editor h2,
.editor h3,
.editor h4,
.editor h5,
.editor h6 {
    border: none;
    text-align: left;
    padding: 0;
}

.editor h1:after,
.editor h2:after,
.editor h3:after,
.editor h4:after,
.editor h5:after,
.editor h6:after {
    display: none;
}

.editor h1 {
    border-bottom: 3px dotted #24ADE2;
    padding-bottom: 15px;
    line-height: 1.4em;
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 20px;
}

.editor h2 {
    background-color: #D6F3FD;
    padding: 15px;
    line-height: 1.4em;
    font-size: 19px;
    font-weight: 600;
    margin-bottom: 20px;
}

.editor h3 {
    font-weight: bold;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px dashed #AEE4F8;
    font-size: 17px;

}

.editor h4 {
    font-size: 16px;
    line-height: 1.4em;
    border-left: 10px solid #24ADE2;
    padding-left: 10px;
    font-weight: 600;
    margin-bottom: 20px;
}


.editor h5 {
    font-weight: bold;
    margin-bottom: 20px;
    padding: 10px;
    border: 1px solid #AEE4F8;
    font-size: 14px;

}

.editor h6 {
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 20px;
    padding-left: 25px;
    background-image: url("../images/common/icon_08.png");
    background-size: 16px;
    background-position: left 2px;
}

.editor .wp-block-table thead {
    border: none;
}

.editor table {
    border-collapse: collapse;
    width: 100%;
    border: 2px solid #007AC7;
    margin-bottom: 40px;
}

.editor table th {
    background-color: #DDECF8;
    color: #333333;
    text-align: center;
    vertical-align: middle;
    padding: 12px 10px;
    border: 1px solid #007AC7;
    width: 250px;
    letter-spacing: 0.05em;
    font-size: 16px;
}

.editor table td {
    text-align: left;
    vertical-align: middle;
    padding: 13px 15px 13px 25px;
    background-color: #fff;
    border: 1px solid #007AC7;
    line-height: 1.6em;
}

.editor strong {
    color: #FF0000;
    font-weight: bold;
}

.editor em {
    font-style: italic;
}

.editor ul,
.editor ol {
    margin-bottom: 20px;
}

.editor ul li,
.editor ol li {
    padding: 0px 30px 0px 20px;
    margin-left: 20px;
    position: relative;
    list-style: none;
}

.editor ul li:before {
    content: '・';
    color: #24ADE2;
    position: absolute;
    left: -7px;
    font-weight: bold;
    font-size: 25px;
    text-align: left;
}

.editor ol {
    counter-reset: editor_number;
}

.editor ol li {
    margin-left: 10px;
    padding: 0 30px 0 28px;
}

.editor ol li:before {
    counter-increment: editor_number;
    content: counter(editor_number)".";
    color: #24ADE2;
    position: absolute;
    left: 0;
    width: 24px;
    text-align: right;
}

.editor blockquote {
    background-color: #F4F5F7;
    padding: 30px 30px 40px;
    margin: 0px 0px 30px 0px;
    position: relative;
}



.editor blockquote:after {
    content: "- 引用 -";
    display: block;
    position: absolute;
    right: 10px;
    bottom: 10px;
    width: 70px;
    color: #CDCDCD;
}

.editor blockquote cite {
    text-align: right;
    font-style: normal;
    display: block;
    font-size: 14px;
}

.editor blockquote p {
    font-size: 16px;
}

.editor blockquote p:last-child {
    margin-bottom: 0;
}

.editor .aligncenter,
img.aligncenter {
    clear: both;
    display: block;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center;
}

.editor .alignleft,
.editor img.alignleft {
    display: inline;
    float: left;
    margin-right: 24px;
    margin-bottom: 15px;
}

.editor .alignright,
.editor img.alignright {
    display: inline;
    float: right;
    margin-left: 24px;
    margin-bottom: 15px;
}

.editor img.alignleft,
.editor img.alignright,
.editor img.aligncenter {
    margin-bottom: 12px;
}

.editor .wp-caption {
    background: #f1f1f1;
    line-height: 18px;
    margin-bottom: 20px;
    max-width: 632px !important;
    padding: 4px;
    text-align: center;
}

.editor .wp-caption img {
    margin: 5px 5px 0;
}

.editor .wp-caption p.wp-caption-text {
    color: #888;
    font-size: 12px;
    margin: 5px;
}

.editor .wp-block-embed iframe {
    width: 100%;
}


.editor dl {
    display: flex;
    font-size: 16px;
    background-color: #FAFAFA;
    flex-wrap: wrap;
}

.editor dl dt {
    color: #00619D;
    font-weight: 600;
    padding: 15px;
    border-bottom: 1px solid #688FA7;
    width: 20%;
}

.editor dl dd {
    color: #333;
    font-weight: 400;
    padding: 15px;
    border-bottom: 1px solid #688FA7;
    width: 80%;
}












.cont_form {
    border-collapse: collapse;
    width: 100%;
    margin-top: 30px;
    border: 0;
    border-bottom: 1px solid #D3EEF8;
}




.cont_form input,
.cont_form textarea {
    padding: 15px 10px;
    width: 100%;
    background-color: #F4F8FD;
    font-size: 16px;
    line-height: 1.5em;
    color: #333333;
    border-radius: 5px;
}

.cont_form input::placeholder {
    color: #7C7C7C;
	font-size: 12px;
}

.cont_form .f12 {
    display: block;
    padding: 10px 0 0;
    font-size: 12px !important;
}

.cont_form .type2 {
    width: 50%;
}



.cont_form th {
    width: 30%;
    text-align: left;
    font-size: 18px;
    padding: 42px 0 42px;
    color: #00619D;
    letter-spacing: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: bold;
    min-width: 300px;
    line-height: 1.4em;
    position: relative;
    vertical-align: top;
    border-top: 1px solid #EBEBEB;
}

.cont_form td {
    padding: 20px 0 20px 20px;
    width: 100%;
    font-size: 16px;
    line-height: 1em;
    text-align: left;
    border-top: 1px solid #EBEBEB;
}

.cont_form td .txt_link_a {
    line-height: 1.9em;


}


.cont_form th span {
    color: #fff;
    background-color: #E2242B;
    font-size: 14px;
    line-height: 1em;
    font-weight: 400;
    padding: 5px 4px 3px;
    position: absolute;
    bottom: 0;
    top: 2px;
    right: 20px;
    margin: auto;
    height: 25px;
    width: auto;
    text-align: center;
    border-radius: 5px;
}

.cont_form_btn {
    width: 290px;
    margin: 50px auto 0;
    position: relative;
}

.cont_form_btn input[type="submit"] {
    min-width: 270px;

    font-size: 26px;
    font-weight: 600;
    color: #fff;
    text-align: center;
    position: relative;
    background-size: 220px 55px;
    display: inline-block;
    cursor: pointer;
    letter-spacing: 0.05em;
    background-color: #24ADE2;
    border-radius: 50px;
    padding: 15px 20px;
	box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}



.cont_form_btn input[type="submit"]:hover {

	box-shadow: 0 3px 30px rgba(000, 000, 000, 0.16);
}


.cont_form input[type="file"] {
    padding: 0 0 10px;
    background-color: #fff;

}
.cont_form td.file {
    position: relative;
}
.cont_form td.file .error{
    position: absolute;
    left: 0;
    top: -22px;
    margin-top: 0;
}
.cont_form td.file .mt5{
    position: relative;
}
.cont_form td.file .mwform-file-delete{
    left: -19px;
    position: absolute;
    top: 5px;
}

.cont_form .no_error .error{
    display: none;
}

/*******************/
.cont_form .cp_ipselect {
    width: 50%;
    text-align: center;
}

.cont_form .cp_ipselect select {
    padding: 15px 10px;
    width: 100%;
    padding-right: 1em;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    background: transparent;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
}

.cont_form .cp_ipselect select::-ms-expand {
    display: none;
}

.cont_form .cp_ipselect.cp_sl01 {
    position: relative;
    background: #F7F7F7;
    width: 100%;
    text-align: left;
}

.cont_form .cp_ipselect.cp_sl01::before {
    position: absolute;
    top: 15px;
    right: 20px;
    font-size: 16px;
    width: 0;
    height: 0;
    padding: 0;
    color: #333333;
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    pointer-events: none;
    font-weight: bold;
}

.cont_form .cp_ipselect.cp_sl01 select {
    padding: 15px 38px 15px 8px;
    color: #333333;
    font-weight: normal;
}

/*******************/

.check_area .check {
    position: relative;
    padding-left: 22px;
    margin-top: 20px;
    line-height: 2em;
}

.check_area .check span {
    position: relative;
    font-weight: normal;
    font-size: 16px;
}

.check_area label .checkbtn[type="checkbox"] {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
}

.check_area label span {
    display: inline-block;
    font-weight: bold;
    padding-left: 4px;
    margin-right: 40px;
}

.check_area label .checkbtn[type="checkbox"] + span::before,
.check_area label .checkbtn[type="checkbox"] + span::after {
    position: absolute;
    top: 10px;
    left: -18px;
    display: inline-block;
    content: '';
    box-sizing: border-box;
}

.check_area label .checkbtn[type="checkbox"] + span::before {
    z-index: 0;
    width: 15px;
    height: 15px;
    border: 1px #24ADE2 solid;
    border-radius: 3px;
    background-color: #fff;
}

.check_area label .checkbtn[type="checkbox"] + span::after {
    z-index: 1;
    margin: 2px 4px;
    width: 6px;
    height: 8px;
}

.check_area label .checkbtn[type="checkbox"]:checked + span::before {
    background-color: #24ADE2;
}

.check_area label .checkbtn[type="checkbox"]:checked + span::after {
    border: 2px solid #fff;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}




.check_btn {
    display: flex;
    flex-direction: column;
}

.check_btn_a {
    justify-content: flex-start !important;
    flex-direction: row !important;
    flex-wrap: wrap;
}

.check_btn input[type=radio] {
    display: none;
}

.check_btn .radio01 {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 5px 14px 5px 25px;
    position: relative;
    width: auto;
    font-weight: normal;
    font-size: 16px;
    margin-bottom: 3px;
}

.check_btn .radio01::before {
    background: #fff;
    border: 1px solid #24ADE2;
    border-radius: 50%;
    content: '';
    display: block;
    height: 16px;
    left: 5px;
    position: absolute;
    top: 7px;
    width: 16px;
}

.check_btn .radio01::after {
    background: #24ADE2;
    border-radius: 50%;
    content: '';
    display: block;
    height: 10px;
    left: 8px;
    opacity: 0;
    position: absolute;
    top: 10px;
    width: 10px;
}

.check_btn input[type=radio]:checked + .radio01::after {
    opacity: 1;
}

.mwform-checkbox-field label,
.mwform-radio-field label{
    cursor: pointer;
}

/*******************/


/*******************/




.common_box01 {
    margin-top: 140px;
}

.common_box01 .inner_01 {
    background-image: url("../images/common/f_common_bg.png");
    background-size: cover;
    background-size: 1120px;
    background-position: left center;

}

.common_box01 .inner_01 .inner_01_a {
    height: 430px;
    background-image: linear-gradient(90deg, rgba(35, 167, 248, 0.31), rgba(36, 173, 226, 1));
    display: flex;
}

.common_box01 .inner_01 .type_01 {
    align-items: center;
}

.common_box01 .inner_02 {
    padding: 40px 0;
}






.search_container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.search_container .search_label {
    font-size: 16px;
    font-weight: bold;
    color: #333;
    width: 40%;
    max-width: 400px;
}

.search_container .search_form {
    display: flex;
    width: 55%;
    max-width: 600px;
}

.search_container .search_input {
    flex-grow: 1;
    padding: 6px 15px;
    border: 1px solid #24ade2;
    border-radius: 5px;
    outline: none;
    font-size: 16px;
    background-color: #fff;
}

.search_container .search_button {
    background-color: #24ade2;
    color: #fff;
    border: none;
    border-radius: 5px;
    padding: 6px 10px;
    font-weight: bold;
    cursor: pointer;
    white-space: nowrap;
    transition: background-color 0.3s;
    margin-left: 15px;
    font-size: 16px;
}

.search_container .search_button:hover {
    background-color: #00568B;
}




.search_area {
    margin-top: 100px;
    background-image: url("../images/top/bg_01.jpg");
    background-position: center;
    background-size: cover;
    padding: 40px 30px;
    border-radius: 20px;
}

.search_container_a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.search_container_a .search_label {
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    width: 46%;
    max-width: 400px;
}

.search_container_a .search_form {
    display: flex;
    width: 52%;
    max-width: 432px
}

.search_container_a .search_input {
    flex-grow: 1;
    padding: 6px 15px;
    border: 1px solid #24ade2;
    border-radius: 5px;
    outline: none;
    font-size: 16px;
    background-color: #fff;
    width: 40%;
}

.search_container_a .search_button {
    background-color: #fff;
    color: #24ADE2;
    border-radius: 5px;
    padding: 6px 10px;
    font-weight: bold;
    cursor: pointer;
    white-space: nowrap;
    transition: background-color 0.3s;
    margin-left: 15px;
    font-size: 16px;
    border: 1px solid #fff;
}

.search_container_a .search_button:hover {
    background-color: #00568B;
    color: #fff;
}






.search_container_b {
    display: flex;
    align-items: center;
    width: 100%;
    height: 50px;
    background-color: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 3px 6px rgba(000, 000, 000, 0.16);
}


.search_container_b .search-label {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #6BBCDB;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    height: 100%;
    padding: 0 20px;
    white-space: nowrap;
}


.search_container_b .search-input {
    flex: 1;
    border: none;
    outline: none;
    padding: 0 15px;
    font-size: 16px;
    height: 100%;
    color: #333;
}


.search_container_b .search-input::placeholder {
    color: #ccc;
	font-size: 12px;
}


.search_container_b .search-input:focus {
    background-color: #fff;
}






/*******************/




.common_box02 {
    margin-bottom: 80px;
    border-top: 1px solid #BAD6E3;
    padding-top: 100px;
}



.foot_menu {
    display: flex;
    justify-content: space-between;
}

.foot_menu ul {
    width: 22%;
}

.foot_menu ul li {
    line-height: 1.3em;
    padding-left: 11px;
    padding-bottom: 12px;
}

.foot_menu ul li a {
    color: #333333;
    font-size: 14px;
    line-height: 1.4em;
    font-weight: 600;
}

.foot_menu ul li a:hover {
    color: #24ADE2;
    opacity: 1;
}

.foot_menu ul li.nav_icon {
    margin-top: 7px;
    background-image: url("../images/common/icon_right_10_b.png");
    border-bottom: 1px solid #24ADE2;
    margin-bottom: 20px;
    color: #333333;
    background-size: 10px;
    background-position: left 3px;
    padding-left: 15px;

}

.foot_menu ul li.nav_icon_a {
    background-image: url("../images/common/icon_13.png");
    color: #333333;
    background-size: 10px;
    background-position: left 7px;
    padding-left: 15px;
    padding-bottom: 20px;
    margin-top: -12px;
}



.foot_menu ul li.nav_icon a {
    line-height: 1.4em;
    font-weight: 600;
    font-size: 16px !important;
}

.foot_menu ul li.nav_icon_a a {
    font-weight: 400;
}










/*******************/


footer {
    background-color: #24ADE2;
    border-radius: 100px 100px 0 0 / 100px 100px 0 0;
    padding: 60px 50px;
    color: #fff;
}

footer h2 img {
    max-width: 250px;
    width: 100%;
    margin-bottom: 10px;
}

footer p {
    color: #fff;
	font-size: 14px;
}


footer .float_sb{
	align-items: center;
}

footer a {
    color: #fff;
    text-decoration: underline;
}

footer .float_sb > div {
    width: 48%;
}

footer .r_box img {
/*    max-width: 592px; */
    width: 100%
}

.footer_banner {
	max-width: 592px;
	display: flex;
	align-items: center;
}

.footer_banner a {
	display: inline-block;
	margin-right: 10px;
}


footer .l_box .mb5 a {
    display: inline-block;
}

.copy {
    color: #fff;
    font-size: 12px;
    line-height: 1.4em;
    margin-top: 40px;
}

#page_top {
    position: fixed;
    bottom: 5%;
    right: 20px;
    z-index: 100;
}

#page_top img {
    max-width: 60px;
    width: 100%;
}


.space {
    width: 15px;
    display: inline-block;
}


#news_link,
#str_link01,
#str_link02,
#str_link03,
#str_link04,
#midc_link01,
#newg_link01,
#newg_link02,
#jump_link_01,
#jump_link_02{
    margin-top: -110px;
    padding-top: 110px;
}



#insp_link01,
#insp_link02,
#insp_link03,
#insp_link04,
#insp_link05,
#insp_link09,
#insp_link08,
#insp_link07,
#insp_link06,
#auto_link05,
#auto_link04,
#auto_link03,
#auto_link02,
#auto_link01,
#auto_link06,
#auto_link07,
#auto_link08,
#auto_link09,
#acou_link06,
#acou_link05,
#acou_link04,
#acou_link03,
#acou_link02,
#acou_link01,
#acou_link07,
#acou_link08,
#d_list_09,
#d_list_08,
#d_list_07,
#d_list_06,
#d_list_05,
#d_list_04,
#d_list_03,
#d_list_02,
#d_list_01,
#meas_link15,
#meas_link14,
#meas_link13,
#meas_link12,
#meas_link11,
#meas_link10,
#meas_link09,
#meas_link08,
#meas_link07,
#meas_link06,
#meas_link05,
#meas_link04,
#meas_link03,
#meas_link02,
#meas_link01,
#lsi_link_03,
#lsi_link_02,
#lsi_link_01,
#midc_link02,
#search-results
{
    margin-top: -130px;
    padding-top: 130px;
}




/*-------------------------------
MW WP Form
--------------------------------*/
.mw_wp_form_input .confirm_on{
    display:none;
}
.mw_wp_form_confirm .input_on{
    display:none;
}
.mw_wp_form_confirm .cp_ipselect.cp_sl01::before{
	content:"";
	background: none;
}
.mw_wp_form_confirm .cp_ipselect.cp_sl01{
	border:0;
	background: none;
	text-align: left;
}
.mw_wp_form_confirm .confirm_on .cont_form_btn{
	margin:40px 20px 0;
}
.mw_wp_form_confirm th span{
	display:none;
}

.mw_wp_form_confirm dd img,
.mw_wp_form_input dd img{
	width:100%;
	margin-bottom:20px;
}
.thank_txt{
	text-align:center;
}
.thank_txt .btn_01{
    margin-top: 30px;
}







.cont_form .check_btn .radio01 + span {
    padding: 5px 15px 5px 26px;
    position: relative;
    font-weight: normal;
    font-weight: 600;
    display: inline-block;
}

.cont_form .check_btn .radio01 + span::after,
.cont_form .check_btn .radio01 + span::before {
    content: '';
    display: block;
    position: absolute;
    border: 1px solid #24ADE2;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    top: 6px;
    left: 0;
}


.cont_form .check_btn .radio01 + span::after {
    opacity: 0;
    width: 10px;
    height: 10px;
    top: 9px;
    left: 3px;
    border: none;
    background: #24ADE2;
}

.cont_form .check_btn .radio01:checked + span {
    color: #24ADE2;

}

.cont_form .check_btn .radio01:checked + span::after {
    opacity: 1;
}

.cont_form .bg_w.cp_ipselect.cp_sl01 select {
    background-color: #fff !important;
}

.mw_wp_form .check_btn .horizontal-item + .horizontal-item{
    margin-left: 0;
}

.check_area .check {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    padding-left: 22px;
}
.mw_wp_form .vertical-item + .vertical-item{
    margin-top: 0;
}

.mw_wp_form_confirm,
.mw_wp_form_complete,
.mw_wp_form_input{
	padding-top: 180px;
	margin-top: -180px;
}
.mw_wp_form .error{
    margin-top: 5px;
    font-size: 85% !important;
}

.mw_wp_form_confirm .confirm_on .cont_form_btn{
    margin: 40px 10px 0;
}

/*-------------------------------
media
--------------------------------*/
.sp_on,
.tb_on {
    display: none;
}


.scroll_txt,
.scroll_txt_a,
.br_a,
.br_b {
    display: none;
}


@media (max-width: 1400px) {


    .w_full {
        width: 100%;
        padding: 0 30px;
        margin: auto;
    }

    .w1400 .w_inner {
        margin: auto;
        padding: 0 30px;
    }


    .box_full_2c_c .r_box {
        padding-left: 70px;
    }

}


@media (max-width: 1300px) {

    .benefit .box_1260_4c > li {
        padding: 20px;
    }
    .br_a{
        display: block;
    }

}

@media (max-width: 1200px) {


    .page_ttl_area .mv_ttl_lp,
    .page_ttl_area .mv_ttl_lp_a {
        padding: 5px 10px;
        background-color: #00619D;
    }

    .page_ttl_area .mv_ttl_lp span,
    .page_ttl_area .mv_ttl_lp_a span {
        color: #fff;
        font-size: 25px;
        line-height: 1.4em;
        display: inline-block;
    }


    .box_b {
        max-width: 1700px;
        width: 100%;
        margin: auto;
        background-color: #EDF3F7;
        border-radius: 100px;
        padding: 100px 50px;
    }


    .box_full_2c_a .l_box,
    .box_full_2c_b .l_box {
        width: 64.6%;
    }


    .box_full_2c_b .r_box {
        width: 34.4%;
    }

    .box_1260_4c > li .ttl_03 {
        font-size: 22px;
    }


    .box_full_2c_b .r_box {
        padding-right: 40px;
    }

    .box_full_2c_a .r_box {
        padding-left: 40px;
        width: 34.4%;
    }


    .full_2c_c_area {
        padding-left: 0;
    }

    .ttl_01 {
        font-size: 30px;
    }


    .ttl_00 {
        font-size: 40px;
    }

    .ttl_12 {
        font-size: 32px;
    }

    .ttl_13_s {
        font-size: 20px;
    }

    .ttl_11 {
        font-size: 22px;
    }


    .ttl_22 {
        font-size: 18px;
    }


    .box_1260_4c > li {
        padding: 20px;
    }


    .loop_area .slide_in {
        flex-shrink: 0;
        width: 250px;
    }



    .box_full_2c_c .r_box {
        padding-left: 30px;
    }


    .box_full_3c_a .inner {
        padding: 0 20px 70px;
    }

    .top .box03 .img_ttl_a img {
        width: 100%;
    }









}


@media (min-width: 1025px) {
    .sp_nav {
        display: none !important;
    }
}

.tb_only{
	display: none;
}
@media (max-width: 1024px) {
	.tb_only{
		display: block;
	}
    .tb_on {
        display: block;
    }
/*



    .sp_head,
    .sp_nav {
        display: block;
    }

    #navToggle {
        display: block;
    }

*/
	
	
	
	
	
	
	
    .fixed {
        position: fixed;
        width: 100%;
        height: 100%;
    }



    .box_b {
        border-radius: 50px;
    }



    .box_1260_4c {
        justify-content: space-around;
    }

    .box_1260_4c > li {
        width: 32%;
    }

	
	.box_1260_4c_b > li{
		width: 48%;
	}
	.box_1260_4c_b > li p{
		font-size: 18px;
	}





    .box_full_2c_c {
        display: block;
    }

    .box_full_2c_c .r_box {
        width: 100%;
        padding: 0 15px;
    }


    .box_full_2c_c .l_box {
        width: 85%;
        margin-left: auto;
        margin-bottom: 30px
    }

    .box_full_2c_c .l_box::before {
        border-radius: 50px 0 0 50px;
    }

    .philosophy .box01 .box_full_2c_c .l_box{
        width: 85%;
        margin-left: auto;
        margin-bottom: 30px
    }
    
    .philosophy .box01 .box_full_2c_c .r_box{
        width: 100%;
        padding: 0 15px;
    }
    .philosophy .box01 .box_full_2c_c .r_box p{
        font-size: 16px;
    }

    .box_full_3c_a {
        flex-wrap: wrap;
        justify-content: space-around;
    }

    .box_full_3c_a li {
        width: 47%;
        margin-bottom: 40px;
    }

	
	.box_1260_5c_list li .link_05_a span,
	.link_05_a span{
		font-size: 16px;
	}
	
	
	.lsi_test .box02 .table_04 th{
		min-width: 100px;
	}
	
	
	


    .top_mv_area {
        padding: 50px 15px 0;
        height: 500px;
    }

    .top_mv_area .mv_txt {
        padding: 0 30px;
    }

    .top_mv_area .slide_img {
        height: 500px;
    }

    .top_mv_area h2 {
        font-size: 20px;
    }
    

    .top_mv_area h3 {
        font-size: 18px;
    }

    .top_mv_area h4 {
        font-size: 18px;
        margin-top: -10px;
    }




    .top_mv_area .btn_01 a{
        font-size: 14px;
        padding: 10px 10px;
    }


    .page_ttl_area .mv_ttl_lp,
    .page_ttl_area .mv_ttl_lp_a {
        padding: 0;
        background-color: transparent;
        margin-bottom: 0;
    }

    .page_ttl_area .mv_ttl_lp span,
    .page_ttl_area .mv_ttl_lp_a span {
        color: #fff;
        font-size: 25px;
        padding: 5px 10px;
        line-height: 1.4em;
        display: inline-block;
        background-color: #00619D;
        margin-bottom: 10px;
    }





    .pan_list {
        padding: 15px 0 0 40px;
    }


    .page_ttl_area .page_ttl {
        font-size: 28px;
        padding: 17px 40px 17px 40px;
    }

    .page_ttl_area .mv_ttl_lp {
        display: block;
    }

    .page_ttl_area .mv_ttl_lp_a {
        display: block;
    }






    .ttl_01 {
        font-size: 28px;
    }

    .ttl_02 {
        font-size: 25px;
    }

    .ttl_03 {
        font-size: 22px;
    }


    .ttl_04 {
        font-size: 24px;
        background-image: url("../images/common/icon_ttl_04.png");
        background-size: 60px;
        padding: 14px 20px;
    }

    .ttl_05 span {
        font-size: 24px;
        padding-bottom: 25px;
    }

    .ttl_06 {
        font-size: 20px;
    }

    .ttl_07 {
        font-size: 18px;
    }

    .ttl_08 .ttl_08_in {
        font-size: 20px;
    }


    .ttl_10 {
        font-size: 22px;
    }


    .ttl_16 span {
        padding: 35px 70px 35px 30px;
        font-size: 40px;
    }






    .ttl_25{
        font-size: 35px;
    }



    .btn_03 a {
        font-size: 18px;
        padding: 17px 20px;
    }


    .btn_04 a {
        font-size: 22px;
        padding: 30px 90px 30px 30px;
    }


	
	.link_list{
		display: block;
	}
	.link_list a{
		min-width: 100%;
		padding: 8px 30px 8px 15px;
		line-height: 1.4em;
		font-size: 15px;
	}
	.link_list a:after{
		right: 10px;
	}

    .ttl_a {
        font-size: 18px;
    }
	.ttl_a_w{
		font-size: 18px;
	}


    .link_list_b a {
        font-size: 18px;
        padding: 15px 75px 15px 15px;
    }

    .link_list_b a:before {
        right: 15px;
    }


    .link_list_a li a:before {
        right: 15px;
    }



    .link_list_a li a {
        font-size: 18px;
        padding: 15px 65px 15px 15px;
    }

    .link_list_a_01 li a {
        padding: 15px 75px 15px 15px;
    }




    .link_list_b a {
        font-size: 18px;
    }



    .box_full_2c_a .r_box {
        padding: 0 30px;
    }

    .box_full_2c_b .r_box {

        padding: 0 30px;
    }





    .box_full_2c_c .r_box {
        padding: 0 30px;
    }


    .bnr_list_a p {
        font-size: 17px;
    }




    .full_2c_c_area {
        padding-left: 30px;
    }




    .box_full_3c_a .inner {
        padding: 0 20px 70px;
    }










    .faq_box dt {
        font-size: 18px;
        padding: 4px 40px 15px 45px;
    }





    .top{
        padding-top: 100px;
    }

    .top .box04 .bg_img {
        border-radius: 50px 50px 0 0/ 50px 50px 0 0;
        height: 300px;
    }

    .mechatronics .carousel p {
        font-size: 18px;
        padding: 15px 10px 30px;
        letter-spacing: 0;
    }



}


@media (max-width: 900px) {


	.ttl_000{
		font-size: 50px;
	}

    .box_b {
        padding: 30px 40px 30px;
    }

    .bnr_list_a {
        display: block;
    }

    .bnr_list_a li {
        width: 100%;
        max-width: 500px;
        margin: 0 auto 20px;
    }

    .bnr_list_a li:last-child {
        margin-bottom: 0;
    }


    .link_list_a_01 li a {
        font-size: 16px;
    }


    .box_1260_4c_a li {
        width: 48%;
    }



    .btn_05 a:before {
        right: 15px;
    }

    .btn_06 a {
        padding: 15px 70px 15px 20px;
    }

    .btn_06 a:before {
        right: 15px;
    }




    .box_full_2c_a,
    .box_full_2c_b {
        display: block;
    }

    .box_full_2c_a .l_box {
        width: 90%;
        margin-bottom: 30px
    }

    .box_full_2c_a .r_box,
    .box_full_2c_b .r_box {
        width: 100%;
        padding: 0 15px;
    }

    .box_full_2c_b .l_box {
        width: 90%;
        margin-left: auto;
        margin-bottom: 30px
    }

    .full_2c_c_area {
        padding-left: 0;
    }



    .box_full_3c_a {
        flex-wrap: wrap;
    }

    .box_full_3c_a li {

        max-width: 400px;
        margin: 0 auto 30px;
        border-radius: 30px;
    }

    .box_full_3c_a li img {
        border-radius: 30px;
    }

    .box_full_3c_a .inner {
        padding: 0 20px 40px;
		margin-top: -40px;
    }

    .search_area {
        padding: 20px 20px 10px;
    }

    .search_container_a {
        display: block;
    }

    .search_container_a .search_label,
    .search_container_a .search_form {
        width: 100%;
        max-width: 100%;
        margin-bottom: 15px;
    }

    .search_container_a .search_form {
        max-width: 90%;
    }

    .search_container_a .search_input {
        width: 100%;
    }

    .search_container {
        display: block;
    }

    .search_container .search_label {
        width: 100%;
    }

    .search_container .search_form {
        width: 90%;
        max-width: 330px;
		margin: auto;
    }

    .search_container .search_input {
        width: 50%;
    }

    .box_1260_4c_up > li {
        width: 48%;
        margin-bottom: 30px;
    }




    .mechatronics .carousel .slide_ttl {
        font-size: 20px;
    }



}







@media (max-width: 767px) {
    body {
        min-width: 100%;
    }


    .space {
        width: 0;
        display: block;
    }

	.tb_only{
		display: none;
	}

    .sp_on {
        display: block;
    }

    .pc_on {
        display: none;
    }



    .spi img {
/*        max-width: 400px !important;*/
        width: 100%;
        display: block;
        margin: auto;
    }

    .footer_banner {
        max-width: 100%;
        display: flex;
        justify-content: space-around;
        margin: 0 auto;
    }

    .footer_banner a {
        width: 45%;
        margin-bottom: 20px;
    }


    .w_full {
        width: 100%;
        padding: 0 15px;
        margin: auto;
    }




	.mb_xl {
		margin-bottom: 80px !important;
	}

	.mb_lg {
		margin-bottom: 80px !important;
	}









    article {
        padding-top: 60px;
    }

    .box_b {
        padding: 30px 20px;
		border-radius: 20px;
    }




    .head_inner {
        display: none;
    }
    .sp_head,
    .sp_nav {
        display: block;
    }

    #navToggle {
        display: block;
    }




    .box_d_40,
    .box_e_40,
    .box_d_40_a a {
        padding: 20px 15px;
    }




	.mechatronics .box01{
		padding-bottom: 80px;
	}





    .bg_a{
       padding: 20px; 
    }










    .pan_list {
        padding: 3px 0 0 10px;
    }



    .page_ttl_area {
        padding: 20px;
        margin-top: 60px;
    }


    .page_ttl_area > .inner {
        height: 400px;
    	border-radius: 20px;
    }

    .page_ttl_area > .inner_a {
        height: 480px
    }

    .page_ttl_area .page_ttl {
        font-size: 24px;
        width: 77%;
        padding: 13px 20px 13px 20px;
    	border-radius: 0 20px 0 0 / 0 20px 0 0;
		bottom: 20px;
    }

    .page_ttl_area .inner_b {
        padding: 13px 40px 30px 40px;
    }




    .page_ttl_area .page_01 {
        background-image: url("../images/common/sp_page_ttl_01.jpg");
    }

    .page_ttl_area .page_02 {
        background-image: url("../images/common/sp_page_ttl_02.jpg");
    }

    .page_ttl_area .page_03 {
        background-image: url("../images/common/sp_page_ttl_03.jpg");
    }

    .page_ttl_area .page_04 {
        background-image: url("../images/common/sp_page_ttl_04.jpg");
    }

    .page_ttl_area .page_05 {
        background-image: url("../images/common/sp_page_ttl_05.jpg");
    }

    .page_ttl_area .page_06 {
        background-image: url("../images/common/sp_page_ttl_06.jpg");
    }

    .page_ttl_area .page_07 {
        background-image: url("../images/common/sp_page_ttl_07.jpg");
    }

    .page_ttl_area .page_08 {
        background-image: url("../images/common/sp_page_ttl_08.jpg");
    }

    .page_ttl_area .page_09 {
        background-image: url("../images/common/sp_page_ttl_09.jpg");
    }

    .page_ttl_area .page_10 {
        background-image: url("../images/common/sp_page_ttl_10.jpg");
    }

    .page_ttl_area .page_11 {
        background-image: url("../images/common/sp_page_ttl_11.jpg");
    }

    .page_ttl_area .page_12 {
        background-image: url("../images/common/sp_page_ttl_12.jpg");
    }

    .page_ttl_area .page_13 {
        background-image: url("../images/common/sp_page_ttl_13.jpg");
    }

    .page_ttl_area .page_14 {
        background-image: url("../images/common/sp_page_ttl_14.jpg");
    }

    .page_ttl_area .page_15 {
        background-image: url("../images/common/sp_page_ttl_15.jpg");
    }

    .page_ttl_area .page_16 {
        background-image: url("../images/common/sp_page_ttl_16.jpg");
    }

    .page_ttl_area .page_17 {
        background-image: url("../images/common/sp_page_ttl_17.jpg");
    }

    .page_ttl_area .page_18 {
        background-image: url("../images/common/sp_page_ttl_18.jpg");
    }

    .page_ttl_area .page_19 {
        background-image: url("../images/common/sp_page_ttl_19.jpg");
    }

    .page_ttl_area .page_20 {
        background-image: url("../images/common/sp_page_ttl_20.jpg");
    }

    .page_ttl_area .page_21 {
        background-image: url("../images/common/sp_page_ttl_21.jpg");
    }

    .page_ttl_area .page_22 {
        background-image: url("../images/common/sp_page_ttl_22.jpg");
    }

    .page_ttl_area .page_23 {
        background-image: url("../images/common/sp_page_ttl_23.jpg");
    }

    .page_ttl_area .page_24 {
        background-image: url("../images/common/sp_page_ttl_24.jpg");
    }

    .page_ttl_area .page_25 {
        background-image: url("../images/common/sp_page_ttl_25.jpg");
    }

    .page_ttl_area .page_26 {
        background-image: url("../images/common/sp_page_ttl_26.jpg");
    }

    .page_ttl_area .page_27 {
        background-image: url("../images/common/sp_page_ttl_27.jpg");
    }

    .page_ttl_area .page_28 {
        background-image: url("../images/common/sp_page_ttl_28.jpg");
    }

    .page_ttl_area .page_29 {
        background-image: url("../images/common/sp_page_ttl_29.jpg");
    }

    .page_ttl_area .page_30 {
        background-image: url("../images/common/sp_page_ttl_30.jpg");
    }

    .page_ttl_area .page_31 {
        background-image: url("../images/common/sp_page_ttl_31.jpg");
    }

    .page_ttl_area .page_32 {
        background-image: url("../images/common/sp_page_ttl_32.jpg");
    }

    .page_ttl_area .page_33 {
        background-image: url("../images/common/sp_page_ttl_33.jpg");
    }
    .page_ttl_area .page_34 {
        background-image: url("../images/common/sp_page_ttl_34.jpg");
    }





    .page_ttl_area .mv_ttl_lp span,
    .page_ttl_area .mv_ttl_lp_a span {
        font-size: 19px;
    }


















	.ttl_000{
		font-size: 30px;
		border: 7px solid #EBEBEB;
	}

    .ttl_00 {
        font-size: 30px;
    }

    .ttl_01 {
        font-size: 24px;
    }

    .ttl_02 {
        font-size: 22px;
    }


    .ttl_03 {
        font-size: 20px;
    }

    .philosophy .box03 .box_full_2c_d > div .ttl_03{
        font-size: 20px;
    }


    .ttl_04 {
        font-size: 20px;
        background-image: url("../images/common/icon_ttl_04.png");
        background-size: 55px;
        padding: 14px 20px;
    }

    .ttl_05 span {
        font-size: 23px;
    }


    .ttl_12 {
        font-size: 20px;
    }

    .ttl_13_s {
        font-size: 18px;
    }


    .ttl_16 span {
        font-size: 30px;
        padding: 25px 40px 25px 15px;
    }


    .ttl_11 {
        font-size: 20px;
    }

    .ttl_13_l {
        font-size: 16px;
        margin-bottom: 7px;
    }

    .ttl_22 {
        font-size: 14px;
    }

    .ttl_23 {
        font-size: 16px;
    }


    .ttl_24 {
        font-size: 18px;
    }
    .ttl_25{
        font-size: 24px;
    }

    .btn_04 a {
        padding: 15px 60px 15px 15px;
        font-size: 18px;
    }

    .btn_04 a:before {
        right: 15px;
    }


    .btn_07 a {
        margin-right: 0;
    }

    .btn_07 a span:after {
        width: 55px;
        height: 55px;
    }

    .btn_07 a span {
        padding-right: 65px;
    }

    .btn_07 a span:before {
        right: 15px;
    }




    .float_sb,
    .float_sa,
    .float_ce,
    .float_en,
    .float_ft,
    .type_01,
    .type_02,
    .box_1260_2c,
    .box_1260_2c_a,
    .box_1260_2c_b,
    .box_1260_2c_c,
    .box_1260_2c_d,
    .box_full_2c,
    .type_03 {
        display: block;
    }




    .box_full_2c > div {
        width: 100%;
    }

    .box_full_2c > div.l_box {
        margin-bottom: 30px;
    }

    .box_full_2c_d {
        display: block;
    }

    .box_full_2c_d > div {
        width: 100%;
    }

    .box_full_2c_d > div.l_box {
        margin-bottom: 30px;
    }


    .type_01 .r_box,
    .type_02 .r_box,
    .type_03 .r_box {
        width: 100%;
        max-width: 100%;
    }

    .type_01 .r_box img,
    .type_01 .l_box img,
    .type_02 .r_box img,
    .type_02 .l_box img {
        display: block;
        margin: auto;
        margin-bottom: 20px;
        max-width: 400px;
    }

    .type_01 .l_box,
    .type_02 .l_box,
    .type_03 .l_box {
        width: 100%;
        max-width: 100%;
    }

    .type_02 .l_box {
        margin-bottom: 30px;
    }


    .type_03 img {
        display: block;
        margin: auto;
        margin-bottom: 30px;
        max-width: 250px;
    }



    .box_1260_2c .l_box,
    .box_1260_2c_a .l_box,
    .box_1260_2c_b .l_box,
    .box_1260_2c_c .l_box,
    .box_1260_2c_d .l_box {
        max-width: 100%;
        width: 100%;
        margin-bottom: 30px;
    }

    .box_1260_2c .r_box,
    .box_1260_2c_a .r_box,
    .box_1260_2c_b .r_box,
    .box_1260_2c_c .r_box,
    .box_1260_2c_d .r_box {
        max-width: 100%;
        width: 100%;
    }

    .box_1260_2c .r_box img,
    .box_1260_2c .l_box img,
    .box_1260_2c_a .r_box img,
    .box_1260_2c_a .l_box img,
    .box_1260_2c_b .r_box img,
    .box_1260_2c_b .l_box img,
    .box_1260_2c_c .l_box img,
    .box_1260_2c_d .l_box img {
        display: block;
        margin: auto;
        max-width: 400px;
    }



    .box_full_2c > div.l_box,
    .box_full_2c > div.r_box {
        width: 100%;
    }

	.box_full_2c_b .l_box img{
    	border-radius: 30px 0 0 30px / 30px 0 0 30px;
	}
	.box_full_2c_a .l_box img{
    border-radius: 0 30px 30px 0 / 0 30px 30px 0;
	}



    .box_1260_3c {
        display: block;
    }

    .box_1260_3c > li {
        width: 100%;
        margin-bottom: 30px;
    }

    .box_1260_3c > li:last-child {
        margin-bottom: 0;
    }
	.box_1260_3c > li img{
		margin: auto;
		display: block;
	}

    .box_1260_4c {
        flex-wrap: wrap;
    }

    .box_1260_4c li {
        width: 48%;
        margin-bottom: 20px;
    }

    .box_1260_5c,
    .box_1260_5c_list {
        flex-wrap: wrap;
    }

    .box_1260_5c > li,
    .box_1260_5c_list li {
        width: 48%;
        margin-bottom: 20px;
    }
	.box_1260_5c_list li{
		margin-bottom: 40px;
	}

	.box_1260_5c_list li .link_05_a span{
		font-size: 16px;
	}	
	
	
    .box_1260_2c_e > li {
        padding: 20px;
        margin-bottom: 30px;
    }

    .box_1260_2c_f {
        display: block;
    }

    .box_1260_2c_f > li {
        width: 100%;
        margin-bottom: 20px;
    }


	.box_1260_4c_b > li{
		width: 100%;
	}

    .box_1400_2c {
        display: block;
    }

    .box_1400_2c .l_box {
        width: 100%;
        margin: 0 auto 20px;
    }

    .box_1400_2c .r_box {
        width: 100%;
    }

    .box_1400_2c .r_box .list_04 p {
        width: 100%;
    }



    .box_1400_2c_a {
        display: block;
    }

    .box_1400_2c_a .l_box {
        width: 100%;
        max-width: 100%;
        margin-bottom: 30px;
    }

    .box_1400_2c_a .r_box {
        width: 100%;
        max-width: 100%;
    }

	.top .box06 .box_1400_2c_a .r_box{
			width: 100%;
			max-width: 100%;
	}
	.top .box06 .box_1400_2c_a .l_box{
			width: 100%;
			max-width: 100%;
			margin-bottom: 30px;
	}
	
	
	
	

    .link_list_a {
        display: block;
        max-width: 400px;
        margin: auto;
    }

    .link_list_a li {
        width: 100%;
        margin-bottom: 20px;
    }

    .link_list_a li:last-child {
        margin-bottom: 0;
    }



    .list_03_a > p {
        font-size: 17px;
        padding-left: 24px;
    }



    .list_a {
        display: block;
    }

    .list_a li {
        max-width: 400px;
        width: 100%;
        margin: 0 auto 50px;
    }



    .list_c > li {
        width: 48%;
        max-width: 100%;
    }





	.box_full_3c_a li{
		width: 100%;
	}







    .link_list > li {
        margin-bottom: 15px;
    }




	.strength .box02 p{
		font-size: 16px;
		line-height: 1.7em;
	}

    .acoustic_testing .box07 .float_sb .ttl_04 {
        margin-bottom: 20px;
    }

    .acoustic_testing .box07 .float_sb .link_03 {
        text-align: right;
    }




	.box_full_2c_c .l_box img{
    	border-radius: 30px 0 0 30px;
	}
	.box_full_2c_c .l_box::before{
        border-radius: 30px 0 0 30px;
	}



    .cont_form th,
    .cont_form td {
        display: block;
        width: 100%;
    }

    .cont_form th {
        padding-bottom: 10px;
        padding: 20px 30px 10px 0;
    }

    .cont_form td {
        border-top: 0;
        padding-top: 0;
    }

    .cont_form .type2 {
        width: 100%;
    }


    .cont_form_btn input[type="submit"] {
        font-size: 20px;
    }

    .mw_wp_form_confirm .confirm_on .cont_form_btn{
        margin: 20px auto 0;
        text-align: center;
    }


    /*****************/



    .slide_02 {
        background-image: url("../images/top/sp_mv_img_02.jpg");
    }
    
    .slide_03 {
        background-image: url("../images/top/sp_mv_img_03.jpg");
    }
    
    .slide_04 {
        background-image: url("../images/top/sp_mv_img_04.jpg");
    }
    
    .slide_05 {
        background-image: url("../images/top/sp_mv_img_05.jpg");
    }
    







    .top .box02 .float_sb .ttl_04 {
        margin-bottom: 20px;
    }

    .top .box04 .ttl_16 {
        margin-top: -77px;
    }

    .top .box04 .w_full {
        padding-top: 60px;
    }
	.top .box04 .bg_img{
    	border-radius: 50px 50px 0 0/ 50px 50px 0 0;	
	}

    .loop_area .slide_in {
        flex-shrink: 0;
        width: 150px;
    }



    .company .box01 .iw1000 img {
        border-radius: 30px;
    }




    .benefit .box_1260_4c {
        max-width: 400px;
        margin: auto;
    }

    .benefit .box_1260_4c > li {
        width: 100%;
    }

    .benefit .box_1260_4c .float_ce {
        display: flex;
    }

    .box_1260_4c .no_h {
        height: 0;
    }



    .mechatronics .carousel .slick-slide {
        margin: 0 20px;
    }

    .mechatronics .carousel .slide_ttl {
        font-size: 16px;
    }

    .mechatronics .carousel p {
        font-size: 14px;
        padding: 10px 10px 20px;
    }


    .mechatronics .slick-prev {
        left: 15%;

    }

    .mechatronics .carousel .slick-next {
        right: 15%;

    }

    .mechatronics .carousel .slick-prev,
    .mechatronics .carousel .slick-next {
        width: 18px;
        height: 18px;
    }

    .mechatronics .carousel .slick-prev::after {
        width: 18px;
        height: 18px;
    }

    .mechatronics .carousel .slick-next::after {
        width: 18px;
        height: 18px;
    }



	.philosophy .box03 .w1000 img{
		border-radius: 20px;
	}
	.philosophy .box02{

	}
    .philosophy .box03 .box_full_2c_d > div p{
        font-size: 16px;
    }
    



	.solutions .box02 .box_1260_3c p{
		font-size: 16px;
	}	


    .history .history_area {
        background-image: none;
    }
	
	.history .inner_001{
		display: block;
	}
	.history .h_left_box h3{
		font-size: 25px;
	}
	.history .inner_001 .l_box{
		margin-bottom: 30px;
	}
    .history .h_left_box:after {
        background-image: none;
    }

    .history .h_left_box {
        margin-right: 0;
        margin-bottom: 20px;
    }

    .history .h_right_box,
    .history .float_ft .h_right_box {
        padding: 20px 10px;
        max-width: 100%;
		border-radius: 15px;
    }

    .history .h_right_box > div {
        text-align: center;
    }

    .history .h_right_box .sp_on {
        margin: auto;
    }
	
	.history .h_right_box > .inner_001 div{
		width: 100%;
		max-width: 100%;
	}
	
	.history .imw100 img{
		border-radius: 20px;
	}
	.actplan .box01 .box_c{
		padding: 20px;
	}
	

    .voice_box {
        max-width: 500px;
        margin: auto;
    }

    .voice_box dt {
        padding: 20px;

    }



    .voice_box dt .l_box {
        margin-right: 20px;
        width: 18%;
    }

    .voice_box dt .r_box {
        max-width: 100%;
        width: 59%;

    }

    .voice_box dt img{
        max-width: 60px;
    }


    .voice_box dt:after {
        right: 15px;
    }

    .voice_box .btn_off:after {
        right: 15px;
    }
	.voice_box dd{
		padding: 20px 15px;
	}


    .table_01 th {
        font-size: 16px;
    }

    .table_01 th,
    .table_01 td {
        display: block;
        width: 100%;
    }

    .table_01 th {
        border-bottom: 0;
        padding-bottom: 5px;
        padding: 15px 0 5px;
    }

    .table_01 td {
        padding: 0 0 15px 0;
    }

    .table_01 td:before {
        display: none;
    }








    table.table_02 th,
    table.table_02 td {
        white-space: nowrap;
    }


    .table_02 .table_fix {
        position: sticky;
        left: 0;
        z-index: 2;
    }

    .table_02 th.table_fix {
        z-index: 3;
        border-left: 2px solid #005FAC;
    }

    .table_02 .table_fix:before {
        content: "";
        position: absolute;
        top: 0;
        left: -1px;
        width: 101%;
        height: 100%;
        border-right: 1px solid #005FAC;
        border-left: 1px solid #005FAC;

    }


    .table_04 th {
        font-size: 16px;
    }

    .table_04 th,
    .table_04 td {
        display: block;
        width: 100%;
        min-width: 100%;
    }

    .table_04 th {
        border-bottom: 0;
        padding-bottom: 5px;
        padding: 15px 15px 5px;
    }

    .table_04 td {
        padding: 0 15px 15px 15px;
    }








    .scroll_txt {
        display: block;
        color: #CC0000;
        font-size: 12px;
        font-weight: bold;
        margin: 20px 0 10px;
    }

    .scroll-table {
        overflow-x: auto;
        width: 100%;
    }

    .scroll-table::-webkit-scrollbar {
        height: 5px;
    }

    .scroll-table::-webkit-scrollbar-track {
        border-radius: 5px;
        background: #eee;
    }

    .scroll-table::-webkit-scrollbar-thumb {
        border-radius: 5px;
        background: #ccc;
    }

    .scroll-table::-webkit-scrollbar-thumb {
        background: #005FAC;
    }















	.common_box01{
		margin-top: 100px;
	}
    .common_box01 .type_01 .l_box {
        margin-bottom: 30px;
        text-align: center;
    }

    .common_box01 .type_01 .r_box {
        max-width: 400px;
        margin: auto;
    }


    .common_box01 .inner_01 .inner_01_a {
        padding: 50px 0;
        height: auto;
    }

    .common_box01 .link_list_a_01 li {
        margin-bottom: 10px;
    }




    .search_label {
        width: 100%;
        margin-bottom: 20px;
    }

    .search_form {
        width: 100%;
    }


    .common_box02 {
        display: none;
    }

    .common_box01 .inner_02 {
        background-color: #fff;
    }



    footer {
        border-radius: 40px 40px 0 0 / 40px 40px 0 0;
        padding: 40px 30px;
    }


    footer .l_box {
        margin-bottom: 50px;
    }

    footer .float_sb > div {
        width: 100%;
    }

    #page_top {
        bottom: 3%;
    }

    #page_top img {
        max-width: 40px;
    }

    .editor dl,
    dl.table_03 {
        display: block;
    }

    .editor dl dt,
    .editor dl dd,
    dl.table_03 dt,
    dl.table_03 dd {
        width: 100%;
    }

    .editor dl dt,
    dl.table_0 dl dt {
        border-bottom: 0;
        padding-bottom: 0;
    }

    .editor dl dd,
    dl.table_0 dl dd {
        padding-top: 5px;
    }
	
	
	.search_container_b .search-label{
    	padding: 0 10px;
	}
	.search_container_b .search-label::placeholder{
		font-size: 14px;
	}
	
	
	.acoustic_testing .box04{
		margin-top: 80px;
	}
	.solutions .box03{
		padding-bottom: 80px;
	}

	
	
	.page_link_box{
		padding: 20px;
	}
	.link_05 a{
		display: block;
		margin-right: 0;
		font-size: 16px !important;
	}
	
}





@media (max-width: 550px) {

    .top_mv_area .mv_txt {
        padding: 0 15px;
    }
    .box_1260_4c_up {
        display: block;
    }

    .box_1260_4c_up > li {
        width: 100%;
    }

    .box_full_3c_a {
        display: block;
    }

    .box_full_3c_a li {
        width: 100%;

    }



    .box_1260_2c_e > li {
        width: 100%;
    }

    .footer_banner {
        flex-wrap: wrap;
    }

}


@media (max-width: 450px) {


    .br_b{
        display: block;
    }

}








/** 翻訳ボタン******/



.trp-floating-switcher {
    top: 11px !important;
    right: 347px !important;
    bottom: auto !important;
    left: auto !important;
    color: #24ADE2 !important;
    font-weight: bold !important;
    box-shadow: none !important;
    border: 0 !important;
    width: auto !important;
    padding: 0 !important;
    cursor: pointer !important; 
}

.trp-floating-switcher .trp-flag-image,
.trp-floating-switcher .trp-language-item img,
.trp-floating-switcher.is-clicked .trp-flag-image,
.trp-floating-switcher:hover .trp-flag-image {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

.trp-floating-switcher .trp-language-item {
    position: relative !important;  
    padding-left: 15px;
    padding-right: 5px;
}
.trp-floating-switcher .trp-language-item:before {
    content: "";
    background-image: url("../images/common/icon_01.png");
    background-size: 100%;
    width: 18px;
    height: 18px;
    top: 0;
    left: 0;
}

.trp-floating-switcher .trp-language-item .trp-language-item-name {
    color: #24ADE2 !important;
    font-weight: bold !important;
}
.trp-language-item__current {
    cursor: pointer !important; 
}

.trp-language-switcher-inner {
    display: flex !important;
    flex-direction: column !important;
    width: auto !important;
    margin-top: 10px !important;
}
.trp-floating-switcher .trp-switcher-dropdown-list {
    flex-direction: column !important; 
    pointer-events: auto !important;
    overflow: hidden !important; 
}
.trp-language-switcher.trp-floating-switcher.trp-switcher-position-bottom .trp-ls-dropdown-inner {
    top: 100% !important; 
    bottom: auto !important;
}

.trp-language-switcher.trp-floating-switcher:hover .trp-switcher-dropdown-list,
.trp-language-switcher.trp-floating-switcher.trp-switcher-position-bottom:hover .trp-ls-dropdown-inner {
    max-height: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    bottom: auto !important;
}

.trp-language-switcher.trp-floating-switcher.is-clicked .trp-switcher-dropdown-list {
    max-height: 200px !important;
    opacity: 1 !important;
    visibility: visible !important;
    transition: max-height 0.2s ease-in-out !important;
}







@media (max-width: 767px) {

	.trp-floating-switcher{
		right: 50px !important;
		top: 5px !important;
	}

	
	
	
	
	
}









/** 事例表示の時下記削除する******/


.business .w_full.mb_xl.box_f{
    margin-bottom: 0 !important;
}
.business .box02{
    margin-bottom: -170px;
}

#acou_link06{
    padding-top: 0 !important;
    margin-top: 0!important;
}

.acoustic_testing .box07{
    margin-top: -170px;
}


@media (max-width: 767px) {
    .business .box02{
        margin-bottom: -210px;
    }
    .acoustic_testing .box07{
        margin-top: -100px;
    }
}