/*------------------------------------*\
MAIN
\*------------------------------------*/
.md_block{
display: none!important;
}
.xs_block{
display: block!important;
}
.xsd_block{
display:block;
}
.mxd_block{
display: none;
}
footer.footer {
overflow: hidden;
padding-top: 9vw;
padding-bottom: 7vw;
}
.splogo {
        height: auto;
        float: left;
        width: 16.46vw;
        margin: 0;
        margin-left: 5vw;
        font-size: unset;
        top: -1.5vw;
        position: relative;
}
.main-nav {
width: 220px;
position: fixed;
top: 0;
left: -220px;
height: 100%;
border-right: 2px solid #222;
-moz-transition: left 0.5s ease, top 0.5s ease;
-o-transition: left 0.5s ease, top 0.5s ease;
-webkit-transition: left 0.5s ease, top 0.5s ease;
transition: left 0.5s ease, top 0.5s ease;
}
.main-nav.show-nav {
left: 0;
}
.main-nav ul {
list-style: none;
padding: 0;
margin: 0;
}
.main-nav li {
text-align: left;
letter-spacing: 0.1em;
font-size: 4.375vw;
font-weight: 400;
padding-left: 5vw;
padding-bottom: 6vw;
padding-top: 5vw;
border-bottom: 1px solid;
}
.content-shrink .inner {
width: 72%;
}
.under-bread_erea {
padding-top: 13vw;
/* background: #cccccc; */
height: auto;
}
.under-bread_erea .flex ul li a {
align-items: center;
color: #999999;
padding-left: 5vw;
}
.menu-icon {
display: block;
position: relative;
width: 12.5vw;
height: 12.5vw;
/*
border: 2px solid #222;
-moz-border-radius: 50%;
-webkit-border-radius: 50%;
border-radius: 50%;*/
}
.menu-icon span {
width: 6.5vw;
display: block;
height: 0.6vw;
background: #222;
position: absolute;
left: 2vw;
-moz-transition: -moz-transform 0.33s ease-out, width 0.2s linear;
-o-transition: -o-transform 0.33s ease-out, width 0.2s linear;
-webkit-transition: -webkit-transform 0.33s ease-out, width 0.2s linear;
transition: transform 0.33s ease-out, width 0.2s linear;
}
.menu-icon .top {
top: 3.333vw;
}
.content-shrink .menu-icon .top {
top: 5.8vw;
-moz-transform: rotate(45deg);
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
.menu-icon .mid {
top: 5.5vw;
}
.content-shrink .menu-icon .mid {
display: none;
}
.menu-icon .bot {
top: 8vw;
}
.content-shrink .menu-icon .bot {
top: 5.8vw;
-moz-transform: rotate(-45deg);
-ms-transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
}
.content-wrap_navi {
padding: 20px;
-moz-transition: margin 0.5s ease;
-o-transition: margin 0.5s ease;
-webkit-transition: margin 0.5s ease;
transition: margin 0.5s ease;
}
.content-wrap_navi.content-shrink {
margin-left: 220px;
}
#nav-toggle {
display: inline-block;
top: 0;
right: 0;
z-index: 999;
margin-left: auto;
}
@media (max-width: 48em) {
nav.main-nav {
width: 100%;
height: 210vw;
border-bottom: 0px solid #222;
border-right: none;
background: #f5f5f5;
top: -210vw;
left: 0;
z-index: 99;
}
nav.main-nav.show-nav {
top: 12vw;
z-index: 99;
}
div.content-wrap_navi {
padding: 0px;
position: fixed;
top: 0;
left: 0;
background: #ffffff;
width: 100%;
z-index: 99;
display: flex;
justify-content: center;
align-items: center;
height: 12.5vw;
}
div.content-wrap_navi.content-shrink {
margin-left: 0px;
}
.content-shrink .inner {
width: 98%;
}
}
.headline.mainvisual {
margin-top: 12.2vw;
}
/*------------------------------------*\
Mission
\*------------------------------------*/
section.under_posi-pmd {
padding-top: 11vw;
width: 90%;
margin: 0 auto;
}
.ttl_block {
    width: 90%;
    margin: 0 auto;
}
h1.under_ttl {
line-height: 1;
margin: 0;
letter-spacing: 0.05em;
font-size: 7.3125vw;
font-weight: 500;
text-align: left;
position: relative;
}
p.under_catch {
font-size: 4.375vw;
text-align: left;
line-height: 2;
letter-spacing: 0.1em;
margin: 0;
font-weight: 500;
margin-top: 12vw;
margin-bottom: 14vw;
}
h1.under_ttl::after {
content: "";
display: inline-block;
width: 12.5vw;
height: 0.94vw;
position: absolute;
/* top: 70px; */
top: 132%;
left: 0%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(3%,50%);
margin: 0;
padding: 0;
background: #2a7e9c;
}
.row-reverse-desktop {
flex-direction: column-reverse;
}
.col-desktop-6 {
flex: 100%;
max-width: 100%;
}
.m-featured-training {
padding: 0;
height: 100%;
background-color: #f8f8f8;
color: #000;
display: block;
align-items: center;
justify-content: center;
padding-left: 4.6875vw;
padding-right: 4.6875vw;
padding-top: 9.375vw;
padding-bottom: 12.375vw;
}
.js-viewport-children.m-featured-training_inner.normal.pad_padi {
    width: auto;
}
.js-viewport-children.m-featured-training_inner.normal.pad_paddi02 {
    width: auto;
}
.wdth90 {
    width: auto;
}
.m-featured-training_inner {
width: 100%;
}
.js-viewport-children.m-featured-training_inner {
position: relative;
/* top: 70px; */
top: -3%;
left: 50%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-1%);
padding: 0;
}
.js-viewport-children.row.gutter-0.spreverse {
flex-direction: column-reverse;
}
.js-viewport-children.m-featured-training_inner.normal {
position: relative;
/* top: 70px; */
top: -11%;
left: 50%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,0%);
}
.a-section-id span {
font-size: 3.75vw;
color: #2a7e9c;
letter-spacing: 0.05em;
font-weight: 500;
line-height: 2;
position: relative;
}
.a-section-id.mission_subttl {
margin-bottom: 17px;
}
.a-section-id span::before {
content: "";
display: inline-block;
width: 32.813vw;
height: 1.878vw;
position: absolute;
/* top: 70px; */
top: 100%;
left: 50%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-100%);
margin: 0;
padding: 0;
background: #2a7e9c;
opacity: 0.2;
}
h2.a-heading-ja.size2 {
margin: 0;
font-size: 7.8125vw;
letter-spacing: 0.1em;
color: #2a7e9c;
font-weight: 600;
margin-bottom: 7vw;
margin-left: -1vw;
}
.a-section-id.mtb16 {
margin-bottom:3vw;
}
.m-featured-training_body.viewed {
font-size: 3.75vw;
letter-spacing: 0.05em;
line-height: 2;
font-weight: 400;
}
.a-image_img {
top: 0;
left: 0;
width: 100%;
height: auto;
min-height: auto;
object-fit: cover;
}
.under-bread_erea .flex ul {
padding: 0;
margin: 0;
display: flex;
height: 7.5vw;
align-items: center;
background: #f8f8f8;
color: #999999;
padding-left: 0;
}
.under-bread_erea .flex ul li {
list-style: none;
font-size: 3vw;
line-height: 1;
letter-spacing: 0.07em;
font-weight: 400;
}
.under-bread_erea .flex ul li.allow {
padding-left: 1vw;
padding-right: 1vw;
}
/*------------------------------------*\
Service
\*------------------------------------*/
section#driver-debut02 {
margin: 0 auto;
width: 90%;
}
section#driver-debut02-mtb40 {
margin: 0 auto;
margin-top: 0;
margin-bottom: 0;
width: 90%;
flex-wrap: wrap-reverse;
}
.m-featured-training_info a {
font-size: 1.6rem;
font-size: 3.75vw;
letter-spacing: 0.1em;
font-weight: 500;
color: #000;
position: relative;
}
.m-featured-training_inner.service_right-inner.nonrevese {
top: 0%;
}
.m-featured-training.service{
height: auto;
padding-left: 3.6875vw;
padding-right: 1.6875vw;
padding-top: 5.375vw;
padding-bottom: 12.375vw;
margin-bottom: 5vw;
}
.a-section-id span.ptn04::before {
content: "";
display: inline-block;
width: 100%;
height: 8px;
position: absolute;
/* top: 70px; */
top: 100%;
left: 47%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-47%,-100%);
margin: 0;
padding: 0;
background: #2a7e9c;
opacity: 0.2;
}
body.service h2.a-heading-ja.size2.serif {
margin-left: -0.5vw;
}
.a-image_img02 {
top: 0;
left: 0;
width: 100%;
height: auto;
min-height: 210px;
object-fit: cover;
position: relative;
z-index: -1;
}
.m-featured-training_info a::after {
content: "";
width: 3.125vw;
display: inline-block;
height: 5.313vw;
position: absolute;
top: 12%;
left: 100%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(100%,-11%);
}
.m-featured-training_info a::before {
content: "";
width: 27.19vw;
display: inline-block;
height: 0.313vw;
position: absolute;
/* top: 70px; */
top: 137%;
left: 60%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-47%,-5%);
background: #000;
}
.m-featured-training_info {
text-align: right;
position: relative;
right: 9vw;
top: 3vw;
}
.a-section-id span.ptn02::before {
content: "";
display: inline-block;
width: 100%;
height: 8px;
position: absolute;
top: 100%;
left: 50%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-100%);
}
.m-featured-training_info.ptn02 {
text-align: right;
position: relative;
right: 9vw;
top: 3vw;
}
.a-section-id span.ptn03::before {
content: "";
display: inline-block;
width: 100%;
height: 8px;
position: absolute;
/* top: 70px; */
top: 100%;
left: 47%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-47%,-100%);
margin: 0;
padding: 0;
background: #2a7e9c;
opacity: 0.2;
}
section#ourService-mtb60 {
margin-top: 0;
margin-bottom: 10vw;
width: 90%;
}
.reverse_flex {
    flex-wrap: wrap-reverse;
}
.our_service.row {
display: block;
}
.our_service.row .left {
width: 100%;
position: relative;
padding-right: 0;
padding-bottom: 0;
padding-top: 0;
margin-top: 5vw;
margin-bottom: 5vw;
}
.our_service.row .right {
width: 100%;
position: relative;
padding-left: 0;
padding-bottom: 0;
padding-top: 0;
}
.other_serviceInner {
position: absolute;
top: 50%;
left: 50%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
margin: 0;
padding: 0;
color: #fff;
text-align: center;
width: 100%;
}
.our_service.row .left img.js-image.a-image_img02 {
width: 100%;
height: auto;
min-height: auto;
}
.our_service.row .right img.js-image.a-image_img02 {
width: 100%;
height: auto;
min-height: auto;
}
.other_serviceInner span {
font-size: 1.4rem;
font-size: 3.75vw;
letter-spacing: 0.05em;
font-weight: 500;
line-height: 3;
margin: 0;
position: relative;
top: 0;
}
.other_serviceInner span::before {
content: "";
display: inline-block;
width: 35%;
height: 8px;
position: absolute;
/* top: 70px; */
top: 50%;
left: 50%;
-ms-transform: translate(-50%,15%);
-webkit-transform: translate(-50%,15%);
transform: translate(-50%,15%);
margin: 0;
padding: 0;
background: #fff;
opacity: 0.3;
}
.other_serviceInner h2 {
font-size: 2.8rem;
font-size: 7.8125vw;
margin: 0;
line-height: 1.5;
letter-spacing: 0.07em;
font-weight: 600;
}
/*------------------------------------*\
Company
\*------------------------------------*/
.page_scroll {
width: 90%;
}
ul.scroll_flex {
flex-wrap: wrap;
border: 0;
}
ul.scroll_flex li {
font-size: 1.6rem;
font-size: 4.375vw;
letter-spacing: 0.1em;
font-weight: 500;
width: 45vw;
/* text-align: center; */
border-right: 0px solid;
height: 12.5vw;
display: flex;
justify-content: center;
align-items: center;
}
ul.scroll_flex li:nth-child(1){
border: 0.1vw solid;
}
ul.scroll_flex li:nth-child(2){
border: 0.1vw solid;
border-left: 0;
}
ul.scroll_flex li:nth-child(3){
border: 0.1vw solid;
border-top: 0;
}
ul.scroll_flex li:nth-child(4){
border: 0.1vw solid;
border-left: 0;
border-top: 0;
}
.ceo-message_erea .left h5 {
font-size: 3.75vw;
margin: 0;
line-height: 1;
letter-spacing: 0.05em;
font-weight: 500;
color: #2a7e9c;
position: relative;
margin-top: 5vw;
}
.ceo-message_erea .left h5::before {
content: "";
display: inline-block;
width:100%;
height: 8px;
position: absolute;
/* top: 70px; */
top: 50%;
left: 0%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(0%,25%);
margin: 0;
padding: 0;
background: #2a7e9c;
opacity: 0.2;
}
.ceo-message_erea .left h3 {
margin: 0;
font-size: 4rem;
font-size: 7.8125vw;
letter-spacing: 0.05em;
font-weight: 500;
color: #2a7e9c;
line-height: 1.2;
margin-top: 3vw;
margin-bottom: 4.2vw;
}
.ceo-message_erea .left h2 {
margin: 0;
font-size: 4.375vw;
font-weight: bold;
line-height: 2;
letter-spacing: 0.1em;
margin-top: 0;
margin-bottom: 0;
}
.ceo-message_erea_sp p.text {
font-size: 3.75vw;
letter-spacing: 0.05em;
line-height: 1.83333;
font-weight: 400;
margin: 0;
margin-top: 9vw;
margin-bottom: 6vw;
}
.ceo-message_erea_sp p.name_flex {
margin: 0;
font-size: 3.75vw;
letter-spacing: 0.1em;
font-weight: 400;
}
.ceo-message_erea_sp span.name.serif {
font-size: 4.6875vw;
letter-spacing: 0.1em;
font-weight: 600;
margin-left: 5vw;
}
.ceo-message_erea .right {
width: 47.65%;
display: flex;
justify-content: flex-end;
}
.ceo-message_erea {
margin-top: 16vw;
}
.ceo-message_erea .left {
width: 57%;
padding-left: 5vw;
}
.ceo-message_erea .bkLeft_grey {
background: #f5f5f5;
width: 100%;
height: 50.125vw;
margin-left: 0;
margin-top: -6vw;
position: absolute;
z-index: -1;
left: -16%;
transform: translate(0%,0%);
}
.ceo-message_erea_sp {
width: 90%;
margin: 0 auto;
}
.philosophy_inner h5 {
font-size: 3.75vw;
margin: 0;
line-height: 1;
letter-spacing: 0.05em;
font-weight: 500;
color: #2a7e9c;
position: relative;
width: auto;
display: inline-block;
margin: 0 auto;
margin-left: 5vw;
}
.philosophy_inner h5::before {
content: "";
display: inline-block;
width: 100%;
height: 8px;
position: absolute;
/* top: 70px; */
top: 50%;
left: 0%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(0%,25%);
margin: 0;
padding: 0;
background: #2a7e9c;
opacity: 0.2;
}
.servicebasefull_txt-flex .left h5 {
    width: 100%;
}

p.txterea.newsereatxt {
    padding-bottom: 7vw;
}

.servicebase_inner h5 {
    font-size: 3.75vw;
    margin: 0;
    line-height: 1;
    letter-spacing: 0.05em;
    font-weight: 500;
    position: relative;
    display: inline-block;
    width: auto;
}
.philosophy_inner h3{
font-size: 7.8125vw;
letter-spacing: 0.05em;
font-weight: 500;
color: #2a7e9c;
line-height: 1.2;
margin: 0;
margin-top: 3vw;
margin-bottom: 4.2vw;
}
.ttl_flex {
display: block;
width: 90%;
margin: 0 auto;
}
.philosophy_inner h2 {
margin: 0;
font-size: 3rem;
font-size: 4.375vw;
font-weight: 600;
line-height: 2;
letter-spacing: 0.1em;
position: relative;
top: 0;
margin-top: 0;
margin-left: 0;
width: 102%;
}
.philosophy_inner figure.philosophy-img {
margin-top: 7vw;
margin-bottom: 8vw;
}
.philosophy_txt-flex {
display: block;
}
.philosophy_txt-flex .left,.philosophy_txt-flex .right {
width: 90%;
font-size: 3.75vw;
letter-spacing: 0.1em;
line-height: 1.83333;
margin: 0 auto;
font-weight: 400;
position: relative;
}
.philosophy_txt-flex .left p {
margin: 0;
}
.philosophy_txt-flex .right p {
margin: 0;
}
.philosophy_erea {
margin-top: 12vw;
padding-top: 12vw;
padding-bottom: 15vw;
}
.philosophy_inner figure.philosophy-img img {
width: 100%;
}
.summary_erea {
padding-top: 10vw;
padding-bottom: 16vw;
}
.summary_inner_flex .left {
width: 90%;
margin: 0 auto;
}
.summary_inner_flex {
display: block;
}
.summary_inner_flex .right_flex {
display: block;
width: 90%;
margin-top: 0;
margin: 0 auto;
}
.summary_inner_flex .left h5 {
font-size: 3.75vw;
margin: 0;
line-height: 1;
letter-spacing: 0.05em;
font-weight: 500;
color: #2a7e9c;
position: relative;
display: inline-block;
width: auto;
}
.summary_inner_flex .left h3 {
font-size: 7.8125vw;
letter-spacing: 0.05em;
font-weight: 500;
color: #2a7e9c;
line-height: 1.2;
margin: 0;
margin-top: 4vw;
margin-bottom: 4.2vw;
}
.summary_inner_flex .right_flex ul li {
font-size: 1.8rem;
font-size: 3.75vw;
font-weight: 400;
letter-spacing: 0.1em;
padding-top: 4vw;
padding-bottom: 4vw;
line-height: 1.83333;
width: inherit;
}
.summary_inner_flex .right_flex ul.first li:nth-child(5) {
padding-bottom: 17vw;
}
.summary_inner_flex .right_flex ul.first li:nth-child(6) {
padding-bottom: 10.7vw;
}
.summary_inner_flex .right_flex ul.secound {
max-width: 500px;
margin: 0;
}
.summary_inner_flex .right_flex ul.first {
width: 22vw;
margin: 0;
}
.servicebase_erea {
padding-top: 12vw;
padding-bottom: 24vw;
}
.servicebase_inner span{
font-size: 3.75vw;
margin: 0;
line-height: 1;
letter-spacing: 0.05em;
font-weight: 500;
position: relative;
margin-left: 5vw;
}
.servicebase_inner h3{
font-size: 7.8125vw;
letter-spacing: 0.05em;
font-weight: 500;
color: #2a7e9c;
line-height: 1.2;
margin: 0;
margin-top: 3vw;
margin-bottom: 4.2vw;
width: 100%;
margin-left: auto;
margin-right: auto;
}
.servicebase_inner {
    margin: 0 auto;
    width: 90%;
}
.servicebase_txt-flex.first {
margin-top: 8vw;
display: block;
}
.servicebase_txt-flex .left {
width: 100%;
max-width: 100%;
height: auto;
margin: 0 auto;
}
.servicebase_txt-flex .right {
width: 100%;
max-width: 100%;
height: auto;
padding-left: 0;
margin: 0 auto;
margin-top: 6vw;
}
.servicebase_txt-flex {
display: block;
margin-top: 12vw;
}
.servicebase_txt-flex .right h5 {
font-size: 1.2rem;
font-size: 3vw;
letter-spacing: 0.1em;
line-height: 2.2;
font-weight: 400;
margin-bottom: 25px;
margin-top: 5px;
margin: 0;
}
.servicebase_txt-flex .right h4 {
font-size: 2.4rem;
font-size: 4.6875vw;
margin: 0;
letter-spacing: 0.1em;
line-height: 1.1666;
font-weight: 500;
}
.servicebase_txt-flex .right p.address , .servicebase_txt-flex .right p.tel , .servicebase_txt-flex .right p.fax {
font-size: 3.75vw;
}
a.glmap_btn {
font-size: 1.4rem;
letter-spacing: 0.14em;
font-weight: 400;
/* line-height: 1.555; */
/* width: 240px; */
color: #000000;
padding: 6px 25px 9px 28px;
border: 1px solid #000;
background: #fff;
/* margin-top: 40px; */
position: relative;
top: 8vw;
cursor: pointer;
pointer-events: auto;
}
a.glmap_btn::after {
content: "";
display: inline-block;
background-size: contain;
width: 29px;
height: 37px;
position: absolute;
/* top: 70px; */
top: 0%;
left: 100%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(0%,-2.7%);
margin: 0;
padding: 0;
}
.servicebase_inner h5::before , .summary_inner_flex .left h5::before{
  display: inline-block;
  width: 100%;
}
.servicebase_txt-flex .right p.address{
margin-top: 1vw;
}
.servicebasefull_inner h5{
font-size: 3.75vw;
margin: 0;
line-height: 1;
letter-spacing: 0.05em;
font-weight: 500;
position: relative;
width: 90%;
margin: 0 auto;
}
.servicebasefull_inner h3{
font-size: 7.8125vw;
letter-spacing: 0.05em;
font-weight: 500;
color: #2a7e9c;
line-height: 1.2;
margin: 0;
margin-top: 1vw;
margin-bottom: 4.2vw;
width: 90%;
margin-left: auto;
margin-right: auto;
}
.servicebasefull_inner h5::before{
width: 16%;
}
.servicebasefull_erea{
padding-top: 10vw;
padding-bottom: 22vw;
}
figure.servicebasefull-img {
margin-top: 8vw;
margin-bottom: 9vw;
}
.servicebasefull_txt-flex h4{
font-size: 4.6875vw;
margin: 0;
letter-spacing: 0.1em;
line-height: 1.1666;
font-weight: 500;
}
.servicebasefull_inner .servicebasefull_txt-flex:nth-child(even) {
    margin-top: 15vw;
    margin-bottom: 15vw;
}
.servicebasefull_inner h5{
font-size: 3vw;
letter-spacing: 0.1em;
line-height: 2.2;
font-weight: 400;
margin-bottom: 25px;
margin-top: 5px;
margin: 0;
margin: 0 auto;
}
.servicebasefull_txt-flex p.address , .servicebasefull_txt-flex p.tel , .servicebasefull_txt-flex p.fax{
font-size: 3.75vw;
}
.servicebasefull_txt-flex {
display: block;
}
.servicebasefull_txt-flex .left {
width: 90%;
font-size: 1.4rem;
letter-spacing: 0.05em;
line-height: 2;
margin: 0;
font-weight: 400;
position: relative;
margin: 0 auto;
margin-top: 6vw;
}
.servicebasefull_txt-flex .right {
width: 90%;
font-size: 1.4rem;
letter-spacing: 0.05em;
line-height: 2;
margin: 0;
font-weight: 400;
position: relative;
/* display: flex; */
margin-left: auto;
margin: 0 auto;
margin-top: 15vw;
}
.servicebasefull_txt-flex a.glmap_btn {
top: 6vw;
}
/*------------------------------------*\
Case Study
\*------------------------------------*/
.caseStudy_erea ul{
display: block;
}
.caseStudy_erea ul li {
width: 100%;
list-style: none;
margin-bottom: 0;
position: relative;
padding: 4.7vw;
padding-bottom: 9vw;
margin: 0 auto;
margin-bottom: 7vw;
border: 0px;
}
.caseStudy-zoomimg_erea {
height: 200px;
}
.caseStudy_erea ul li img {
height: 200px;
object-fit: cover;
}
.caseStudy_erea ul li h4 {
color: #2a7e9c;
letter-spacing: 0.07em;
font-size: 1.8rem;
font-size: 4.6875vw;
font-weight: 500;
line-height: 1.6668;
margin-bottom: 0;
margin-top: 5vw;
}
.caseStudy_erea ul li p.cate {
font-size: 3vw;
letter-spacing: 0.1em;
line-height: 1;
color: #000000;
font-weight: 400;
margin-top: 4vw;
padding: 0;
}
.caseStudy_erea ul li p.time {
font-size: 3vw;
letter-spacing: 0.1em;
line-height: 1;
color: #aaaaaa;
font-weight: 400;
padding: 0;
margin: 0;
}
.caseStudy_erea ul li:nth-child(2) {
margin-right: auto;
margin-left: auto;
}
.caseStudy_erea ul li:nth-child(5) {
margin-right: auto;
margin-left: auto;
}
.caseStudy_erea ul li:nth-child(8),.caseStudy_erea ul li:nth-child(11),.caseStudy_erea ul li:nth-child(14) {
margin-right: auto;
margin-left: auto;
}
.swiper-slide {
max-width: 300px;
min-width: auto;
}
.in_flex {
display: block;
border-top: 1px solid #aaaaaa;
border-bottom: 1px solid #aaaaaa;
padding-top: 3vw;
padding-bottom: 3vw;
width: 90%;
margin: 0 auto;
}
.modaal-outer-wrapper{
display: block!important;
}
.modaal-content-container {
padding: 0;
}
.modaal-container {
position: relative;
display: inline-block;
width: 90%;
}
.modaal-inner-wrapper {
display: block!important;
width: 100%;
height: 100%;
position: relative;
vertical-align: middle;
text-align: center;
padding: 0!important;
}
.swiper-button-prev, .swiper-button-next{
display: none;
}
.in_slide h3 {
font-size: 2rem;
font-size: 4.6875vw;
letter-spacing: 0.07em;
font-weight: 500;
color: #2a7e9c;
margin: 0;
padding-top: 3.5vw;
padding-bottom: 3vw;
line-height: 1.6667;
width: 90%;
margin: 0 auto;
}
.in_flex .right ul {
padding-bottom: 0;
}
.in_flex .left ul:last-child {
padding-bottom: 0px;
}
.in_flex ul li.ttl {
font-size: 1.4rem;
font-size: 3vw;
letter-spacing: 0.05em;
color: #999999;
line-height: 1.5;
font-weight: 400;
width: 100%;
}
.in_flex ul li.txt {
font-size: 1.4rem;
font-size: 3vw;
letter-spacing: 0.05em;
line-height: 1.71428;
color: #000;
font-weight: 400;
width: 100%;
}
p.txterea {
line-height: 1.83333;
font-size: 1.4rem;
font-size: 3.75vw;
color: #000;
font-weight: 400;
letter-spacing: 0.05em;
margin-top: 0;
margin-bottom: 0px;
padding-bottom: 0;
width: 90%;
margin: 0 auto;
padding-top: 3vw;
padding-bottom: 3vw;
}
.modaal-wrapper .modaal-close {
position: absolute!important;
right: 0%!important;
top: 0%!important;
color: #fff;
cursor: pointer;
background: rgb(51, 51, 51,0.8)!important;
opacity: 1!important;
width: 30px!important;
z-index: 2;
height: 30px!important;
border-radius: 0%!important;
-webkit-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.modaal-close:before, .modaal-close:after {
display: block;
content: " ";
position: absolute;
top: 4px!important;
left: 15px!important;
width: 1px!important;
height: 20px!important;
border-radius: 0px!important;
background: #fff!important;
-webkit-transition: background 0.2s ease-in-out;
transition: background 0.2s ease-in-out;
}
.modaal-wrapper {
display: block;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 9999;
overflow: auto;
opacity: 1;
box-sizing: border-box;
-webkit-overflow-scrolling: touch;
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.in_flex ul{
padding: 0;
}
.page_scroll.caseStudy ul.scroll_flex li {
border: 0;
}
.page_scroll.caseStudy {
border-top: 0.1vw solid;
border-bottom: 0.1vw solid;
}
.page_scroll.caseStudy.page_scroll.caseStudy ul.scroll_flex li:after {
content: "";
width: 12.5vw;
display: inline-block;
height: 12.5vw;
position: absolute;
background-size: contain;
background-repeat: no-repeat;
top: 20%;
left: 119%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-19%);
}
.caseStudy_erea .wrapper {
max-width: 1000px;
margin: 0 auto;
margin-top: 10vw;
}
.page_scroll.caseStudy ul.scroll_flex {
margin: 0;
padding: 0;
}
/*------------------------------------*\
Service Detail
\*------------------------------------*/
.philosophy_erea.detail .philosophy_inner h1 {
margin: 0;
font-size: 10.3125vw;
letter-spacing: 0.05em;
font-weight: 500;
color: #2a7e9c;
line-height: 1.683;
margin-top: 0;
width: 90%;
margin: 0 auto;
}
.philosophy_erea.detail h2.serif {
color: #2a7e9c;
font-size: 2.4rem;
margin: 0;
line-height: 1.05;
font-size: 6.25vw;
margin-top: 0;
letter-spacing: 0.07em;
width: 90%;
margin: 0 auto;
}
.philosophy_erea.detail figure.philosophy-img {
margin-top: 9vw;
margin-bottom: 8vw;
}
.philosophy_erea.detail .catch.detail {
font-size: 4.6875vw;
letter-spacing: 0.07em;
color: #000000;
font-weight: 500;
position: relative;
margin-top: 0;
margin-bottom: 0;
display: block;
width: 90%;
margin: 0 auto;
line-height: 1.8;
padding-left: 5vw;
padding-right: 3vw;
margin-bottom: 6vw;
}
.philosophy_erea.detail .catch.detail::before {
content: "";
display: inline-block;
width: 4.69vw;
height: 0.625vw;
background: #000000;
position: absolute;
top: 4vw;
margin-right: 0;
left: 0vw;
}
body.detail .philosophy_txt-flex {
display: block;
width: 101%;
margin: 0 auto;
}
.servicebase_erea.detail02 h3.serif,.servicebase_erea.detail03 h3.serif,.servicebase_erea.detail04 h3.serif,.servicebase_erea.detail05 h3.serif {
font-weight: 600;
margin-top: 0px;
left: -1vw;
position: relative;
margin-top: 4vw;
margin-bottom: 5.2vw;
}
.servicebase_erea.detail02 p.detail-info,.servicebase_erea.detail03 p.detail-info,.servicebase_erea.detail04 p.detail-info,.servicebase_erea.detail05 p.detail-info{
width: 90%;
font-size: 3.75vw;
letter-spacing: 0.1em;
line-height: 1.83333;
margin: 0 auto;
font-weight: 400;
position: relative;
margin-bottom: 8vw;
}
.detail02-inner .wrapper .flex.reverse {
flex-wrap: wrap;
}
.detail02-inner .wrapper .flex {
flex-wrap: wrap-reverse;
}
.servicebase_erea.detail02 h5::before {
content: "";
display: inline-block;
width: 31%;
}
.detail02-inner .wrapper .flex .right img {
min-height: auto;
object-fit: cover;
}
.detail02-inner .wrapper .flex .left h4,.detail03-inner .wrapper .flex .left h4,.detail03-inner .wrapper .flex .right h4,.detail05-inner .wrapper .flex .left h4,.detail05-inner .wrapper .flex .center h4,.detail05-inner .wrapper .flex .right h4 {
font-size: 6.25vw;
letter-spacing: 0.1em;
margin: 0 auto;
width: 90%;
margin-top: 4vw;
margin-bottom: 4vw;
}
.detail02-inner .wrapper .flex .left p,.detail03-inner .wrapper .flex .left p,.detail03-inner .wrapper .flex .right p,.detail05-inner .wrapper .flex .center p,.detail05-inner .wrapper .flex .left p,.detail05-inner .wrapper .flex .right p {
width: 90%;
font-size: 3.75vw;
letter-spacing: 0.1em;
line-height: 1.83333;
margin: 0 auto;
font-weight: 400;
position: relative;
}
.detail02-inner .wrapper .flex .left {
padding: 0;
padding-bottom: 10vw;
}
.de03_flex-inner {
padding: 0;
}
.detail03-inner .wrapper .flex .left {
max-width: 480px;
background: #fff;
height: auto;
margin-right: 0;
width: 90%;
margin: 0 auto;
padding-bottom: 4vw;
margin-bottom: 6vw;
}
.detail03-inner .wrapper .flex .right {
padding-bottom: 4vw;
}
.detail03-inner .wrapper .flex .right {
max-width: 480px;
background: #fff;
height: auto;
width: 90%;
margin: 0 auto;
}
.detail03-inner .wrapper .flex img {
min-height: auto;
object-fit: cover;
}
.detail04-list {
max-width: 860px;
background: #fff;
position: relative;
/* min-height: 165px; */
padding-top: 0;
padding-left: 0;
padding-right: 0;
padding-bottom: 0;
margin-bottom: 0;
margin-left: auto;
margin-right: auto;
width: 90%;
margin: 0 auto;
margin-bottom: 5vw;
}
.detail04-list:last-child{
margin-bottom: 0;
}
.detail04-list h4 {
font-size: 2.4rem;
font-size: 5.3125vw;
letter-spacing: 0.1em;
line-height: 1.58888;
font-weight: 500;
color: #2a7e9c;
margin: 0;
width: 90%;
margin: 0 auto;
padding-top: 4vw;
padding-bottom: 3vw;
}
.detail04-list p {
margin-bottom: 0;
width: 90%;
font-size: 3.75vw;
letter-spacing: 0.1em;
line-height: 1.83333;
margin: 0 auto;
font-weight: 400;
position: relative;
padding-bottom: 4vw;
}
.detail04-list::before {
display: none;
}
.detail04-list:nth-child(odd){
    border-left: 1.575vw solid rgba(57,146, 215,1);
}

.detail04-list:nth-child(even){
    border-left: 1.575vw solid rgba(57,146, 215,0.7);
}
.detail05-inner .wrapper .flex .left {
max-width: 330px;
background: #fff;
height: auto;
margin-right: 0px;
margin: 0 auto;
width: 90%;
padding-bottom: 6vw;
margin-bottom: 6vw;
}
.de05_flex-inner {
padding: 0;
}
.detail05-inner .wrapper .flex .left:nth-child(1) {
margin-bottom: 0;
width: 90%;
margin: 0 auto;
padding-bottom: 6vw;
margin-bottom: 6vw;
}
.detail05-inner .wrapper .flex {
    margin-bottom: 0px;
}
.detail05-inner .wrapper .flex .center:nth-child(2) {
margin-bottom: 0px;
margin: 0 auto;
width: 90%;
padding-bottom: 6vw;
margin-bottom: 6vw;
}
.detail05-inner .wrapper .flex .right:nth-child(3) {
margin-bottom: 0;
margin: 0 auto;
width: 90%;
padding-bottom: 6vw;
margin-bottom: 6vw;
}
.detail05-inner .wrapper .flex .center {
max-width: 330px;
background: #fff;
height: auto;
margin-left: 0px;
margin-right: 0px;
margin: 0 auto;
width: 90%;
padding-bottom: 6vw;
margin-bottom: 6vw;
}
.detail05-inner .wrapper .flex .right {
max-width: 330px;
background: #fff;
height: auto;
margin: 0 auto;
width: 90%;
padding-bottom: 6vw;
margin-bottom: 6vw;
}
.detail05-inner .wrapper .flex .right .de05_flex-inner {
padding: 0;
}
.philosophy_erea.detail {
overflow-x: hidden;
}
.detail05-inner .wrapper .flex img {
object-fit: cover;
padding: 5vw;
padding-bottom: 1vw;
/* padding-bottom: 0; */
}
body.detail .servicebase_erea.detail02 {
padding-bottom: 13vw;
}
body.detail .servicebase_erea.detail03 {
padding-bottom: 14vw;
}
body.detail .servicebase_erea.detail04 {
padding-bottom: 14vw;
}
body.detail .servicebase_erea.detail05 {
padding-bottom: 14vw;
}
/*------------------------------------*\
Contact
\*------------------------------------*/
.form-wrapper tbody {
width: auto;
display: block;
}
.policy-wrapper {
margin: 0;
width: auto;
}
.policy-wrapper ul {
background-color: none;
padding: 0;
overflow-y: scroll;
height: 160px;
width: 90%;
margin-left: auto;
margin-right: auto;
border: 1px solid #cccccc;
margin: 0 auto;
padding: 4vw;
}
.submit-wrapper {
margin: 0 auto;
width: 66%;
margin-top: 9vw;
}
.entry-form {
background-color: #f5f5f5;
padding: 0;
width: 100%;
margin: 0 auto;
padding-top: 14vw;
padding-bottom: 14vw;
}
.enfo-cache {
    max-width: unset;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
}
.enfo-catch {
font-size: 3vw;
letter-spacing: 0.07em;
font-weight: bold;
color: #2a7e9c;
max-width: 1000px;
margin: 0 auto;
margin-bottom: 0;
width: 90%;
margin-bottom: 4vw;
}
.form-wrapper input:placeholder-shown, .form-wrapper textarea:placeholder-shown, .form-wrapper select:placeholder-shown {
font-size: 3.75vw;
color: #ffffff;
font-weight: 500;
letter-spacing: 0.07em;
opacity: 0.5;
padding-top: 2.5vw;
}
.form-wrapper input, .form-wrapper textarea, .form-wrapper select {
font-size: 16px;
padding-left: 14px;
height: 12.5vw;
}
.policy-heading {
color: #000000;
font-size: 3.75vw;
font-weight: 400;
letter-spacing: .07em;
line-height: 1.83333;
padding: 0;
text-align: left;
width: 90%;
margin: 0 auto;
margin-top: 6vw;
margin-bottom: 4vw;
}
.policy-wrapper ul li {
margin-bottom: 15px;
list-style: none;
font-size: 3vw;
letter-spacing: 0.07em;
color: #777777;
font-weight: 400;
line-height: 1.6667;
}
input.submit.next-btn {
background: #2a7e9c;
color: #fff;
font-size: 14px;
letter-spacing: 0.2em;
font-weight: 500;
padding: 0;
}
.form-wrapper td {
width: 90%;
margin: 0 auto;
margin-top: 7vw;
}
.form-wrapper .half:first-child td {
margin-top: 0;
}
.form-wrapper textarea:placeholder-shown{
height:47vw;
}
/*------------------------------------*\
Top
\*------------------------------------*/
.mainvisual h2.catch {
color: #ffffff;
position: relative;
top: -35vw;
left: 0%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
margin: 0;
padding: 0;
font-size: 6rem;
font-size: 7.1875vw;
letter-spacing: 0.1em;
line-height: 1.188;
font-weight: bold;
width: 100%;
}
.m-featured-training.tp_recrruitment-pd {
    padding-top: 8vw;
    padding-left: 4.6875vw;
    padding-right: 4.6875vw;
}
.mainvisual .sub_catch {
position: relative;
top: 4vw;
left: 0%;
margin: 0;
padding: 0;
font-size: 3.6875vw;
letter-spacing: 0.1em;
color: #fff;
font-weight: 400;
width: 100%;
}
.headline {
height: 119vw;
background: url(../img/top/mainvisu_sp.png) no-repeat;
object-fit: cover;
background-size: cover;
}
body.home.front figure.a-image {
padding: 5.3vw;
background: #f8f8f8;
}
body.home.front .m-featured-training {
padding: 0;
height: 100%;
background-color: #f8f8f8;
color: #000;
display: block;
align-items: center;
justify-content: center;
padding-left: 4.6875vw;
padding-right: 4.6875vw;
padding-top: 0;
padding-bottom: 12.375vw;
}
h2.a-heading-ja.size2.top-our-mission_catch {
font-size: 7.8125vw;
letter-spacing: 0.05em;
font-weight: 500;
line-height: 1.2;
margin: 0;
margin-bottom: 4.2vw;
padding-top: 3vw;
}
.top-our-mission_catch_line {
position: relative;
width: 12.5vw;
height: 4px;
background: #2a7e9c;
top: 0%;
left: 0%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
margin-left: 7.2vw;
margin-top: 0px;
}
h3.a-heading-ja.size2.serif.top-our-mission_subcatch {
font-size: 5vw;
line-height: 2;
letter-spacing: 0.1em;
font-weight: 500;
margin: 0;
margin-top: 6vw;
}
.m-featured-training_body.viewed.top-our-mission_txt {
line-height: 2.142;
margin-top: 6vw;
margin-bottom: 0;
}
body.home.front .tp-btn {
width: 46.878vw;
height: auto;
position: relative;
margin-left: auto;
margin-right: 8vw;
margin-top: 9vw;
}
body.home.front a.top_btn_black {
font-size: 1.8rem;
font-size: 4.375vw;
letter-spacing: 0.05em;
font-weight: 400;
color: #000000;
display: flex;
justify-content: center;
position: relative;
padding-top: 0;
padding-bottom: 0;
border: 1px solid #000000;
padding-right: 0;
background: #fff;
padding: 2.97vw;
}
.top_btn_black_anime {
display: block;
background: linear-gradient(to right, #000000 50%, #fff 50%);
background-size: 200% 100.5%;
background-position: right bottom;
font-size: 1.8rem;
font-size: 4.375vw;
letter-spacing: 0.05em;
font-weight: 400;
color: #000000;
border: none;
border: 1px solid #000000;
border-color: none;
transition: all 0.3s ease-out;
/* position: relative; */
padding-top: 0px;
padding-bottom: 3px;
height: 12.5vw;
display: flex;
justify-content: center;
align-items: center;
}
img.allownaviSvg {
position: absolute;
width: 7.813vw;
background: #000;
height: 12.5vw;
padding: 9.5px;
top: 0px;
left: 99.222222%;
        max-width: 3.4rem;
}
h2.a-heading-ja.size2.top-our-mission_catch_service{
font-size: 7.8125vw;
letter-spacing: 0.05em;
font-weight: 500;
line-height: 1.2;
margin: 0;
margin-bottom: 4.2vw;
padding-top: 3vw;
}
.m-featured-training_body.viewed.top-our-mission_txt_service {
line-height: 2.142;
margin-bottom: 0;
margin-top: 6vw;
}
p.list_imgIn-txt.serif {
font-size: 5vw;
color: #fff;
font-weight: 500;
letter-spacing: 0.1em;
width: 100%;
text-align: center;
}
.a-image_img_list {
top: 0;
left: 0;
width: 100%;
height: auto;
min-height: auto;
object-fit: cover;
position: relative;
}
ul.service_list-tp li:nth-child(2) {
margin-top: 1px;
margin-bottom: 1px;
}
.tp-case_study_catch.flex {
max-width: 90%;
margin-left: auto;
display: block;
justify-content: flex-start;
position: relative;
padding-top: 0;
padding-bottom: 0;
margin: 0 auto;
}
.tp-case_study_catch.flex h2{
font-size: 7.8125vw;
letter-spacing: 0.05em;
font-weight: 500;
line-height: 1.2;
margin: 0;
margin-bottom: 4.2vw;
padding-top: 3vw;
}
.top-our-mission_catch_line.swiper_ver{
position: absolute;
width: 12.5vw;
height: 4px;
background: #2a7e9c;
top: 17vw;
left: 0%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
margin-left: 7.2vw;
margin-top: 0px;
}
.tp-case_study_catch.flex p {
line-height: 2.142;
margin-bottom: 9vw;
margin-top: 11vw;
font-size: 1.4rem;
letter-spacing: 0.05em;
line-height: 2;
font-weight: 400;
margin-left: 0;
font-size: 3.75vw;
letter-spacing: 0.05em;
line-height: 2;
font-weight: 400;
}
h4.slide_ttl {
font-size: 4.375vw;
color: #fff;
letter-spacing: 0.05em;
margin: 0;
font-weight: 500;
margin-top: 5vw;
margin-bottom: 1vw;
line-height: 1.714;
}
.slide_txt_flex {
display: flex;
align-items: center;
font-size: 3vw;
color: #ffffff;
font-weight: 400;
line-height: 1.7;
letter-spacing: 0.05em;
}
body.front .swiper-button-prev, .swiper-button-next {
display: block;
}
body.front .swiper-slide {
max-width: 500px;
min-width: auto;
}
body.front .swiper-button-prev, .swiper-button-next {
width: 11.7vw;
height: 11.9vw;
background-size: contain;
background-repeat: no-repeat;
margin-top: -11vw;
margin-left: 0;
margin-right: 0;
}
.top_btn_black_anime {
display: block;
background: linear-gradient(to right, #000000 50%, #fff 50%);
background-size: 200% 100.5%;
background-position: right bottom;
font-size: 4.375vw;
letter-spacing: 0.05em;
font-weight: 400;
color: #000000;
border: none;
border: 1px solid #000000;
border-color: none;
transition: all 0.3s ease-out;
/* position: relative; */
padding-top: 0px;
padding-bottom: 3px;
height: 12.5vw;
display: flex;
justify-content: center;
align-items: center;
}
.t-topi .wrapper .flex {
display: block;
justify-content: center;
align-items: center;
padding-top: 0;
padding-bottom: 12vw;
}
.tp-case_study .swiper-wrapper {
margin-left: 0;
}
.col-12.col-desktop-6.viewed figure.a-image {
padding: 0;
}
ul.service_list-tp.tpcomp_flex li img.js-image.a-image_img_list {
min-height: auto;
object-fit: cover;
}
.m-featured-training.normal.tp_service-padi.tp_company-padi {
padding-bottom: 0;
background: #ffffff;
}
img.js-image.a-image_img.spTop_img {
width: 90%;
margin: 0 auto;
display: flex;
justify-content: center;
height: auto;
padding-top: 6vw;
padding-bottom: 5vw;
    min-height: 330px;
}
.t-topi_list {
margin-left: auto;
margin-right: auto;
border-top: 1px solid #cccccc;
border-bottom: 1px solid #cccccc;
padding-top: 1.5vw;
padding-bottom: 3vw;
width: 100%;
}
.t-topi .wrapper .flex .left {
display: block;
align-items: center;
}
.t-topi .wrapper .flex .left .m-featured-training_title.viewed h2.a-heading-ja.size2.top-our-mission_catch {
margin-top: 0;
}
.t-topi_list .cate {
color: #2a7e9c;
font-size: 1.4rem;
font-size: 3vw;
letter-spacing: 0.05em;
font-weight: 400;
line-height: 2.25;
width: 90%;
margin: 0 auto;
}
.t-topi_list .ttl {
color: #000000;
font-weight: 400;
font-size: 1.8rem;
font-size: 3.75vw;
letter-spacing: 0.05em;
line-height: 1.66667;
width: 90%;
margin: 0 auto;
padding-bottom: 2vw;
}
.t-topi_list .time {
font-size: 1.2rem;
font-size: 3vw;
color: #777777;
font-weight: 400;
letter-spacing: 0.05em;
width: 90%;
margin: 0 auto;
}
.m-featured-training_title.viewed.t_topics {
width: 90%;
margin: 0 auto;
margin-top: 5vw;
margin-bottom: 8vw;
}
body.home.front .t-topi .tp-btn{
margin-right: 12vw;
margin-top: 7vw;
}
.m-featured-training.normal.tp_service-padi.sp-bk_grey {
background-color: #ecf0f2;
padding-top: 16vw;
padding-bottom: 3vw;
}
figure.a-image ul.service_list-tp {
background: #ecf0f2;
padding-left: 5vw;
padding-right: 5vw;
padding-bottom: 13vw;
}
.tp-case_study {
margin-top: 7vw;
}
body.home.front .tp-btn.swiper_btn {
padding-bottom: 0;
margin-right: 12vw;
margin-top: 8vw;
}
.slide_txt_flex ul.left {
padding: 0;
margin: 0;
width: 41%;
}
.slide_txt_flex ul.right {
padding: 0;
margin: 0;
}
.swiper-bk_con::before {
content: "";
display: inline-block;
width: 100%;
height: 470px;
background: #314961;
position: absolute;
top: 50px;
padding-bottom: 0;
}
.swiper-bk_con {
position: relative;
padding-bottom: 12vw;
}
figure.a-image ul.service_list-tp.tpcomp_flex {
padding: 0;
}
body.home.front .m-featured-training.normal.tp_service-padi.tp_company-padi.sp-bk_grey .tp-btn {
margin-top: 9vw;
}
.m-featured-training.normal.tp_service-padi.tp_company-padi.sp-bk_grey {
        padding-bottom: 4rem;
}
.contact_erea .wrapper {
display: block;
}
.contact_erea .wrapper .right {
margin-left: 0;
}
.contact_erea .wrapper .left {
margin-right: 0;
}
.contact_erea .wrapper .left a {
width: 90%;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
font-size: 5vw;
letter-spacing: 0.2em;
font-weight: bold;
position: relative;
padding-left: 3rem;
padding-bottom: 5px;
margin-bottom: 4.5vw;
margin-top: 10vw;
}
.contact_erea .wrapper div:nth-child(2){
  margin-left: 0;
}
.contact_erea .wrapper .right a {
width: 440px;
width: 90%;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: center;
/*background: #000000;
color: #fff;*/
font-size: 5vw;
letter-spacing: 0.2em;
font-weight: bold;
padding-bottom: 3px;
}
.contact_erea .wrapper .left a::before {
content: "";
display: inline-block;
width: 4vw;
height: 6.25vw;
position: absolute;
top: 50%;
left: 23%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
}
.contact_erea {
height: auto;
background: #e1e5e8;
padding-bottom: 9vw;
}
.contact_erea .wrapper {
height: auto;
}
.flex-f {
display: block;
justify-content: center;
max-width: 1000px;
margin: 0 auto;
padding-top: 0;
}
.flex-f .left {
width: 100%;
text-align: center;
}
.f-logo img.footerLogo {
width: 61vw;
height: auto;
}
.f-logo {
padding-top: 0;
padding-bottom: 0;
}
.copy_flex .right {
margin-left: auto;
margin: 0 auto;
}
.copy_flex .left {
margin: 0 auto;
width: 100%;
}
.copy_flex {
display: flex;
justify-content: flex-start;
max-width: 1000px;
margin: 0 auto;
flex-wrap: wrap-reverse;
padding-top: 0;
}
.copy_flex .left p.copyright {
font-size: 10px;
color: #cccccc;
letter-spacing: 0.1em;
font-weight: 400;
margin: 0;
padding-top: 5px;
text-align: center;
}
.copy_flex .right img.f-snsImg {
width: 247px;
height: auto;
padding-top: 8vw;
padding-bottom: 5vw;
}
section#driver-debut02 {
max-width: initial;
}
body.case-study input[type=checkbox]:checked ~ .accordion-child , body.news input[type=checkbox]:checked ~ .accordion-child , body.post-type-archive-info input[type=checkbox]:checked ~ .accordion-child ,body.post-type-archive-case input[type=checkbox]:checked ~ .accordion-child{
display: block;
}
body.case-study .page_scroll.caseStudy , body.news .page_scroll.caseStudy ,body.post-type-archive-info .page_scroll.caseStudy , body.post-type-archive-case .page_scroll.caseStudy{
border: 0;
}
body.case-study .accordion , body.news .accordion , body.post-type-archive-info .accordion , body.post-type-archive-case .accordion{
border-top: 1px solid;
border-bottom: 1px solid;
}
ul.accordion-child li{
margin-left: 0;
}
#page_top a::after {
content: "";
display: inline-block;
font-size: 10px;
color: #fff;
position: absolute;
background-size: contain;
background-repeat: no-repeat;
width: 15px;
height: 120px;
top: -35px;
bottom: 0;
right: 0;
left: 40px;
margin: auto;
text-align: center;
}
body.modaal-noscroll .swiper-list .swiper-button-prev {
top: 60%;
left: 5%;
position: absolute;
display: inline-block;
width: 11.7vw;
height: 11.9vw;
background-size: contain;
background-repeat: no-repeat;
margin-top: -11vw;
margin-left: 0;
margin-right: 0;
z-index: 99999;
display: none;
}
body.modaal-noscroll .swiper-list .swiper-button-next {
top: 60%;
left: 83%;
position: absolute;
z-index: 99999;
display: none;
}
body.modaal-noscroll .modaal-content-container {
padding: 0;
/* margin-top: 13vw; */
padding-top: 14vw;
padding-bottom: 12vw;
background: #333;
}
body.modaal-noscroll .in_slide {
background: #fff;
}
body.modaal-noscroll .modaal-outer-wrapper {
display: block!important;
background: rgba(51, 51, 51, 0.7);
}
body.modaal-noscroll .modaal-close:before, .modaal-close:after {
display: block;
content: " ";
position: absolute;
top: 1.3vw!important;
left: 3.6vw!important;
width: 1px!important;
height: 20px!important;
border-radius: 0px!important;
background: #fff!important;
-webkit-transition: background 0.2s ease-in-out;
transition: background 0.2s ease-in-out;
}
body.modaal-noscroll .modaal-wrapper .modaal-close {
position: absolute!important;
right: 0%!important;
top: 6.5vw!important;
color: #fff;
cursor: pointer;
background: rgb(25, 25, 25)!important;
opacity: 1!important;
width: 7.5vw!important;
z-index: 2;
height: 7.5vw!important;
border-radius: 0%!important;
-webkit-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
body.news.modaal-noscroll .in_slide h3 {
padding-bottom: 0px;
}
.form-wrapper textarea.textEreaCon {
height:240px;
padding-top: 18px;
}
.form-wrapper textarea:placeholder-shown {
height:240px;
padding-top: 18px;
}
.splogo a {
display: block;
height: 7.05vw;
}
img.ceoimg {
max-width: 100%!important;
height: auto;
object-fit: cover;
}
a.top_btn_black_anime.gmap_btn {
top: 6vw;
}
.recruit_inner h2.catch.serif {
font-size: 4.375vw;
font-weight: 600;
line-height: 2;
letter-spacing: 0.1em;
margin: 0;
width: 90%;
margin: 0 auto;
margin-top: 7vw;
}
.recruit_txt-flex {
display: block;
}
.recruit_txt-flex .right {
margin-left: auto;
width: 90%;
font-size: 3.75vw;
letter-spacing: 0.1em;
line-height: 1.83333;
margin: 0 auto;
font-weight: 400;
position: relative;
}
.recruit_txt-flex .left p {
margin: 0;
margin-top: 5vw;
}
.servicebase_txt-flex .left iframe {
    height: 210px;
}
.recruit_txt-flex .right p {
margin: 0;
}
.recruit_txt-flex .left {
width: 90%;
font-size: 3.75vw;
letter-spacing: 0.1em;
line-height: 1.83333;
margin: 0 auto;
font-weight: 400;
position: relative;
}
.page_scroll.recruit {
margin-top: 12vw;
padding-bottom: 10vw;
}
figure.recruit-img_fi02 img {
  width: auto;
  min-width: 100%;
  min-height: auto;
  object-fit: cover;
  position: relative;
  left: 0%;
  top: 0;
}
figure.recruit-img_fi02 {
position: absolute;
width: 100%;
position: relative;
top: 0%;
left: 50%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
margin-left: 0;
object-fit: cover;
background-repeat: no-repeat;
overflow: hidden;
transform: translate(-50%,0%);
padding: 0;
}
figure.recruit-img_fi02.spime02_size {
height: 100vw;
}
figure.recruit-img_fi02.spime02_size img {
min-width: 100%;
left: 0%;
top: -25%;
}
figure.recruit-img_fi02.ltdwn img {
left: 0%;
}
.summary_erea.xs_block.bkGrey_rec {
background: #f5f5f5;
}
.summary_erea.xs_block.bkBlue_rec {
background: #ecf0f2;
}
.summary_erea.xs_block.bkWhite_rec {
background: #f5f5f5;
}
.overflowHidden{
overflow: hidden;
}
body.recruit figure.recruit-img.sp_recWid {
width: 150vw;
}
body.recruit .page_scroll.recruit ul.scroll_flex {
flex-wrap: nowrap;
}
body.recruit .page_scroll.recruit ul.scroll_flex li {
font-size: 1.6rem;
font-size: 4.075vw;
letter-spacing: 0.1em;
font-weight: 500;
width: 33vw;
/* text-align: center; */
height: 12.5vw;
display: flex;
justify-content: center;
align-items: center;
}
body.recruit .page_scroll.recruit ul.scroll_flex li:nth-child(3){
border-top: 0.1vw solid;
border-left: 0;
}
body.confirm .form-wrapper td {
width: 100%;
margin: 0 auto;
margin-top: 7vw;
margin-left: 5vw;
}
body.confirm .submit-btn {
margin: 0 auto 10px;
position: relative;
width: 100%;
}
ul.naviErea {
list-style: none;
position: relative;
top: -23vw;
left: 0vw;
display: flex;
justify-content: center;
padding: 0;
margin: 0;
overflow: hidden;
}
.navibk {
max-width: 1000px;
margin: 0 auto;
position: relative;
margin-bottom: 20vw;
margin-top: 10vw;
}
ul.naviErea li:nth-child(1) {
font-size: 2rem;
margin: 10px 20px;
margin: 2vw 5vw;
margin-left: 0;
font-weight: 500;
}
ul.naviErea li {
font-size: 2rem;
margin: 2vw 5vw;
font-weight: 500;
}
body.mission img.js-image.a-image_img {
max-height: max-content;
min-height: auto;
}
body.recruit .summary_erea.xsd_block.bkGrey_rec.block1 {
background: #f5f5f5;
}
body.recruit .summary_erea.xsd_block.bkWhite_rec {
background: #f5f5f5;
}
a.contents_detailLink,a.contents_detailLink02,a.contents_detailLink03 {
flex: 0 1 100%;
max-width: 100%;
}
.policy-check ul {
border: 0;
display: flex;
justify-content: center;
align-items: center;
height: auto;
padding: 0;
margin: 0;
width: 100%;
}
.policy-check {
margin-top: 15px;
}
body.confirm .form-wrapper tbody {
width: auto;
}
body.confirm span.confirm_txt {
display: block;
font-size: 12px;
margin-right: 0px;
margin-bottom: 5px;
color: #000;
}
body.compleate p.under_catch {
margin-top: 57px;
margin-bottom: 120px;
}
body.compleate section.under_posi-pmd {
padding-top: 75px;
}
article#post-404 h1 {
line-height: 1;
margin: 0;
letter-spacing: 0.05em;
font-size: 11.75vw;
font-weight: 500;
text-align: left;
position: relative;
}
article#post-404 p {
font-size: 5vw;
text-align: left;
line-height: 2;
letter-spacing: 0.1em;
margin: 0;
font-weight: 400;
margin-top: 27px;
margin-bottom: 45px;
}
article#post-404 {
max-width: 1000px;
margin: 0 auto;
text-align: left;
}
article#post-404 a {
font-size: 4.75vw;
letter-spacing: 0.1em;
color: #000;
border-bottom: 1px solid #000;
font-weight: 400;
}



/*1008 Modal*/
.remodal{
  padding: 0;
}

.remodal .swiper-list .swiper-button-next {
    display: none;
}

.remodal .modaal-close {
    position: absolute!important;
    right: 0%!important;
    top: -7.5vw!important;
    color: #fff;
    cursor: pointer;
    background: rgb(25, 25, 25)!important;
    opacity: 1!important;
    width: 7.5vw!important;
    z-index: 2;
    height: 7.5vw!important;
    border-radius: 0%!important;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}


.remodal .modaal-close:before, .modaal-close:after {
    display: block;
    content: " ";
    position: absolute;
    top: 1.3vw!important;
    left: 3.6vw!important;
    width: 1px!important;
    height: 20px!important;
    border-radius: 0px!important;
    background: #fff!important;
    -webkit-transition: background 0.2s ease-in-out;
    transition: background 0.2s ease-in-out;
}

.remodal-wrapper {
  margin: 0 auto;
  padding: 7vw 5vw;
  margin-top: 10vw;
}

.policy-wrap {
max-width: 1000px;
margin: 0 auto;
padding: 5vw;
margin-top: 10vw;
margin-bottom: 10vw;
width: 90%;
}

.policy-wrap ul {
margin-bottom: 5vw;
}

.policy-wrap ul li {
font-size: 3.75vw;
margin-bottom: 1.5vw;
}
