*{
    min-height: 0vw; /* Safari clamp関数対策 */
}
::placeholder {
    color: #898989;
}
.pc_onlymovie{
    opacity: 1;
    visibility: visible;
}
.sp_only{
    display: none !important;
}
.sp_onlyflex{
    display: none;
}
.sp_only370{
    display: none;
}
.sp_only380{
    display: none;
}
.sp_only400{
    display: none;
}
.sp_only410{
    display: none;
}
.sp_only410inline{
    display: none;
}
.sp_only420{
    display: none;
}
.sp_only430{
    display: none;
}
.sp_only460{
    display: none;
}
.sp_only470{
    display: none;
}
.sp_only500{
    display: none;
}
.sp_only510{
    display: none;
}
.sp_only550{
    display: none;
}
.sp_only520{
    display: none;
}
.sp_none630{
    display: block;
}
.black{
    color: #3E3A39 !important;
}
.mgbPc40pxSp20px{
    margin-bottom: 40px !important;
}
html{
    font-size: 62.5%;
    font-family:'Noto Sans JP';
    /* font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif; */
    font-weight: 500;
    /* scroll-behavior: smooth !important; */
    min-width: 1280px;
}
img{
    width: 100%;
    height: auto;
    vertical-align: bottom;
}
img[src$=".svg"] {
	height: auto;
}
.svgphoto{
    width: 100%;
}
main{
    width: 100%;
}
.Ancher{
    position: absolute;
    top: -90px;
}
.Ancher2{
    position: absolute;
    top: -120px;
}
p,li,td{
    color: #3E3A39;
    font-weight: normal;
}
p,a,li{
    font-size: 1.6rem;
    line-height: 200%;
    color: #3E3A39;
    font-weight: 400;
    letter-spacing: 1px;
}
p::selection,a::selection,
h1::selection,h2::selection,
h3::selection,h4::selection{
    color: black;
    background-color: #F7C5DA;
}
h1,h2,h3,h4{
    color: #3E3A39;  
}
.font2rem{
    font-size: 2rem;
}
.white{
    color: white !important;
}
.rem14{
    font-size: 1.4rem;
}
.rem20{
    font-size: 2rem;
}
.mgb20px{
    margin-bottom: 20px !important;
}
.mgb10px{
    margin-bottom: 10px !important;
}
.bold{
    font-weight: bold;
    opacity: 1 !important;
}
.bold2{
    font-weight: 700 !important;
}
.normal{
    font-weight: normal;
}
.center{
    margin: 0 auto;
    text-align: center;
}
.blue{
    color: #004598;
}
.abso{
    position: absolute;
}
.relative{
    position: relative;
}
.wrapper{
    width: 1000px;
    margin: 0 auto;
    position: relative;
}
.wrapper900{
    width: 900px;
    margin: 0 auto;
    position: relative;
}
.wrapper860{
    width: 860px;
    margin: 0 auto;
    position: relative;
}
.wrapper1100{
    width: 1100px;
    margin: 0 auto;
    position: relative;
}
.wrapper1280{
    width: 1280px;
    padding: 0 40px;
    margin: 0 auto;
    position: relative;
}
.wrapper1280_no_padding{
    width: 1280px;
    margin: 0 auto;
    position: relative;
}
.between{
    justify-content: space-between;
}
.align_center{
    align-items: center;
}
.flex_between{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.flex_alignCenter{
    display: flex;
    align-items: center;
}
.flexLftSide,.flexRighttSide{
    width: 48%;
}
.flex{
    display: flex;
    flex-wrap: wrap;
}
.PcflexSpcolmn{
    display: flex;
}
.PcflexSp600colmn{
    display: flex;
}
.PcHalfSpMax{
    width: 50%;
}
.pc30spMax{
    width: 30%;
}
.pc32spMax{
    width: 32%;
}
.pc35spMax{
    width: 35%;
}
.pc45spMax{
    width: 45%;
}
.pc47spMax{
    width: 47%;
}
.pc47sp600Max{
    width: 47%;
}
.pc49sp600Max{
    width: 49%;
}
.pc49spMax{
    width: 48.5%;
}
.pc55spMax{
    width: 55%;
}
.pc40spMax{
    width: 40%;
}
.pc35spMax{
    width: 35%;
}
.pc70spMax{
    width: 70%;
}
.pc60spMax{
    width: 60%;
}
.pc65spMax{
    width: 65%;
}
.pc67spMax{
    width: 67%;
}
.pc30spMax{
    width: 30%;
}
.pc23spMax{
    width: 23%;
}
.pc77spMax{
    width: 77%;
}
.width49{
    width: 49%;
}
.width47{
    width: 47%;
}
/* ローディングアニメ */
#text,#left,#center,#right,#lastsean{
    opacity: 0;
    transition: opacity 1s ease;
}
#text.action,
#left.action,
#center.action,
#right.action,
#lastsean.action{
    opacity: 1;
}

.loaded .loadlogo{
    opacity: 0;
    transition: all 1s ease;
    visibility: hidden;
}
.loaded2 .loadlogo{
    opacity: 0;
    visibility: hidden;
}
.loadlogo{
    background-color: rgb(255, 255, 255);
    width: 100%;
    height: 100%;
    position: fixed;
    top:0;
    left: 0;
    opacity: 1;
    visibility: visible;
    z-index: 1000;
}
.loadlogo svg{
    width: 250px;
    position: absolute;
    top:50%;
    left: 50%;
    transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
}

.loaderay1{animation-delay: 0.2s;}
.loaderay2{animation-delay: 0.4s;}
.loaderay3{animation-delay: 0.6s;}
.loaderay4{animation-delay: 0.8s;}
.loaderay5{animation-delay: 1s;}
.loaderay6{animation-delay: 1.2s;}
.loaderay7{animation-delay: 1.4s;}
.loaderay8{animation-delay: 1.6s;}
.loaderay9{animation-delay: 1.8s;}
.loaderay10{animation-delay: 2s;}
.loaderay11{animation-delay: 2.2s;}
.loaderay12{animation-delay: 2.4s;}

/* ヘッダー */
.sp_only1030_flex{
    display: none;
}
.insta_ico_pc{
    display: block;
    position: fixed;
    top: 88px;
    right: 15px;
    width: 30px;
}
.insta_ico_sp{
    display: none;
}
.ft_insta{
    width: 30px;
    margin-bottom: 10px;
}
@media screen and (max-width: 1030px) {
    .sp_only1030_flex{
        display: flex;
    }
    .insta_ico_sp{
        display: block;
        width: 35px;
        margin-right: 10px;
        margin-left: 10px;
    }
    .insta_ico_pc{
        display: none;
    }
}
#headerMenu{
    background-color: rgba(255, 255, 255, 0.77);
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 75px;
    position: fixed;
    z-index: 200;
}
.headerLogo{
    width: 70%;
    max-width: 219px;
    margin-left: 5%;
}
.hd_navigation{
    display: flex;
}
.hd_navigation_li{
    width: 95px;
}
@media (hover: hover) {
    .hd_navigation_li:hover>label,
    .hd_navigation_li:hover>label>p,
    .hd_navigation_li:hover>a,
    .hd_navigation_li:hover>a>p
    {
        background-color: #4992B9;
        color: white;
    }
    .hd_navigation_li:hover>.groupbtn::after,
    .hd_navigation_li:hover>label>.hd_ico,
    .hd_navigation_li:hover>a>.hd_ico
    {
        filter: brightness(0) invert(1);
    }
    .mail_ico:hover>a,
    .mail_ico:hover>a>p{
        background-color: #3E3A39;
    }
}
.hd_navigation_li label{
    display: block;
    padding: 12px 0;
    cursor: pointer;
}
.hd_navigation_li a{
    display: block;
    padding: 12px 0;
}
.hd_ico{
    width: 52px;
    margin: 0 auto;
    margin-bottom: 3px;
}
.hd_btn{
    font-size: 13px;
    text-align: center;
    line-height: 100%;
}
.mail_ico{
    background-color: #4992B9 !important;
}
.child_li{
    background-color: white;
}
.child_li:nth-child(odd){
    background-color: #eef4f8;
}

.child_li a{
    line-height: 100%;
}
.mother{
    text-align: center;
    position: relative;
}

@media (hover: none) {
    .drop-input:checked ~ .child
    {
        display: block;
        position: absolute;
        width: 8em;
        left: 50%;
        transform: translateX(-50%);
        top: 76px;
        font-size: 1.6rem;
        line-height: 100%;
    }
}
@media (hover: hover) {
    .mother:hover .child
    {
        display: block;
        position: absolute;
        width: 8em;
        left: 50%;
        transform: translateX(-50%);
        top: 76px;
        font-size: 1.6rem;
        line-height: 100%;
    }
    .child_li:hover{
        background-color: #4992B9;
    }
    .child_li:hover a{
        color: white;
    }
}
.child{
    display: none;
}
#tg1,#tg2,#tg3,#tg4,#tg5,#tg6,
#bg,#bg2,#bg3,#bg4,#bg5,#bg6
{
    display: none;

}
#mask{
    position: fixed;
    z-index: -1;
    background-color: rgba(255, 255, 255, 0.8);
    width: 100%;
    height: 100%;
    top: 0;
    visibility: hidden;
    /* backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px); */
    opacity: 0;
    /* transition: backdrop-filter 1s ease,opacity 1s ease,visibility 0s ease; */
}

.burger{
    width: 60px;
    height: 60px;
    background: url(../image/top/burger.svg) no-repeat;
    background-size: contain;
    cursor: pointer;
    border: none;
    display: none;
    background-color: #4992B9;
}
.open .burger{
    background: url(../image/top/burger2.svg) no-repeat;
    background-size: contain;
    background-color: #4992B9;
}


/* フッター */
/* トップに戻るボタン */
#pagetop{
    position: relative;
}
.totop{
    width: 58px;
    height: 55px;
    background: url(../image/top/totop.svg)no-repeat;
    background-size: contain;
    position: fixed;
    right: 5%;
    bottom: 20px;
    cursor: pointer;
    z-index: 90;
    opacity: 0;
    visibility: hidden;
}
@media (hover: hover) {
    .totop:hover{
        background: url(../image/top/totop2.svg)no-repeat;
        background-size: contain;
    }
}
.active .totop{
    opacity: 1;
    transition: opacity 1s ease;
    visibility: visible;
}
.absolute .totop{
    position: absolute;
    bottom: auto;
    top: -80px;
}
/* トップに戻るボタン */
#footerMenu{
    padding: 0px 0 10px 0;
    position: relative;
    background-image: linear-gradient(45deg, rgb(218, 218, 218), rgba(255, 255, 255, 1) 51% 52%, rgb(219, 219, 219));
}
.copyright{
    font-size: 10px;
    text-align: center;
}
.footer_inner{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.footer_inner_left{
    width: 50%;
}
.footer_inner_right{
    width: 340px;
}
.ft_logo{
    width: 220px;
    margin-bottom: 30px;
}
.ft_para{
    letter-spacing: 2px;
    margin-bottom: 5px;
}
.ft_tel{
    width: 350px;
    margin-bottom: 40px;
}
.ft_contact{
    font-size: 1.6rem;
    letter-spacing: 2px;
    line-height: 100%;
    padding: 15px 30px;
    border: 1px solid #3E3A39;
    border-radius: 30px;
    display: flex;
    align-items: center;
    white-space: nowrap;
    width: fit-content;
    position: relative;
    margin-bottom: 30px;
}
.ft_contact::after{
    content:url(../image/top/ft_arrow.png); 
    transition: transform 0.5s ease;
}
.privacyBtn{
    display: block;
    position: relative;
}
.privacyBtn::after{
    content:url(../image/top/ft_arrow2.png); 
    margin-left: 3px;
}
@media (hover: hover) {
    .ft_contact:hover::after{
        transform: translateX(5px);
    }
}
.ft_mail{
    display: block;
    width: 28px;
    margin-right: 5px;
}
/* グーグルカレンダー */
.g_calender{
    width: 100%;
    padding: 10px;
    background-color: white;
}
.g_calender iframe{
    width: 100%;
}


/* トップページ */
#topvisuArea{
    height: 500px;
    position: relative;
    overflow: hidden;
}
.tp_main{
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/* 
.tp_main {
    top: 0;
    left: 50%;
    transform: translateX(-35%);
    position: absolute;
    height: 100%;
    object-fit: cover;
}
*/
@media screen and (max-width:768px){
    #topvisuArea{
        height: auto;
    }
    #topvisuArea{
        height: auto;
        /* padding-top: 130%; */
    }
    .tp_main {
        top: 100px;
        left: 0;
        transform: translateX(0%);
        position: absolute;
        width: 100%;
        height: auto;
    }
}
.top_svg{
    position: absolute;
    left: 50px;
    top: 166px;
    width: 195px;
}
#tpsvg{
    width: 100%;
}
.js-st0{
    fill:#3E3A39;
}
.js-st1{
    opacity: 0;
}
.js-st2{
    opacity: 0;
}
.tp_main,.tp_main_sp{
    opacity: 0;
}
.tp_h2{
    font-size: clamp(3rem,6vw,4rem);
    color: #929A9F;
    font-family: 'Montserrat','Noto Sans JP', sans-serif;
    font-weight: 200;
    letter-spacing: 2px;
}
.blue{
    color: #4992B9;
}
.text{
    opacity: 0;
    display: inline-block;
}
.tp_anim_txt,.tp_anim_box{
    opacity: 0;
}
.over{
    overflow: hidden;
}
.spacer{
    padding: 70px 0;
    position: relative;
}
.meiko_quo span:nth-child(1),
.meiko_quo span:nth-child(2),
.meiko_quo span:nth-child(3),
.meiko_quo span:nth-child(4),
.meiko_quo span:nth-child(5)
{
    color: #4992B9;
}
.kuwashiku{
    font-size: 1.6rem;
    font-weight: normal;
    margin-left: auto;
    display: block;
    width: fit-content;
}
.kuwashiku::after{
    content: url(../image/top/tp_arrow.png);
    position: relative;
    top: 2px;
    margin-left: 3px;
}
@media (hover: hover) {
    .kuwashiku:hover{
        color: #4992B9;
    }
    .kuwashiku:hover:after{
        content: url(../image/top/tp_arrow_hov.png);
    }
}
#technologyArea{
    background-image: linear-gradient(45deg, rgb(218, 218, 218), rgba(255, 255, 255, 1) 51% 52%, rgb(219, 219, 219));
}
.meiko_tech{
    text-align: center;
}
.meiko_tech span:nth-child(9),
.meiko_tech span:nth-child(10),
.meiko_tech span:nth-child(11),
.meiko_tech span:nth-child(12),
.meiko_tech span:nth-child(13),
.meiko_tech span:nth-child(14),
.meiko_tech span:nth-child(15),
.meiko_tech span:nth-child(16),
.meiko_tech span:nth-child(17),
.meiko_tech span:nth-child(18)
{
    color: #4992B9;
}
.meiko_tech_sp{
    text-align: center;
}
.meiko_tech_sp2{
    text-align: center;
    color: #4992B9;
}
.tp_white_box{
    background-color: white;
    position: relative;
    padding: 40px;
}
.tp_white_box::after{
    position: absolute;
    content: "";
    width: 100%;
    height: 8px;
    background-color: #E3E7EA;
    top: 0;
    left: 0;
}
.meiko_tech_sub{
    font-size: 2rem;
    margin: 0 auto;
    text-align: center;
}
.meiko_tech_sub::before{
    content: "";
    position: relative;
    display: inline-block;
    top: -6px;
    width: 37px;
    height: 1px;
    margin-right: 5px;
    background-color: #7D7D7D;
}
.meiko_tech_sub::after{
    content: "";
    position: relative;
    display: inline-block;
    top: -6px;
    width: 37px;
    height: 1px;
    margin-left: 5px;
    background-color: #7D7D7D;
}
.tp_tech_h3{
    font-size: 2rem;
    line-height: 100%;
    font-weight: normal;
    padding-bottom: 20px;
    margin-bottom: 20px;
    text-align: center;
    border-bottom: 1px solid #9FA0A0;
}
.meiko_tech_sub[data-aos="fade-up"]{
    transform: translateY(50px);
}
.tp_tech_h4{
    font-size: 1.6rem;
    line-height: 100%;
    padding: 10px;
    background-color: #E7E9EA;
    margin-bottom: 10px;
    font-weight: normal;
}
.tp_tech_ul li{
    font-size: 1.4rem;
    position: relative;
    text-indent: -1.4rem;
    margin-left: 1.4rem;
    line-height: 150%;
    margin-bottom: 5px;
}
.tp_tech_ul li::before{
    content: "■";
    color: #CAC9C9;
}
.tp_tech_hr{
    border-bottom: 1px solid #9FA0A0;
    margin: 20px 0 5px 0;
}
.tp_tech_h4_2{
    font-size: 1.6rem;
    font-weight: 400;
    margin-bottom: 10px;
}
.tp_tech_ul2 li{
    font-size: 1.4rem;
    line-height: 100%;
    position: relative;
    text-indent: -1.4rem;
    margin-left: 1.4rem;
    margin-bottom: 2px;
}
.tp_tech_ul2 li a{
    font-size: 1.4rem;
    margin-left: 1.6rem;
    position: relative;
    line-height: 150%;
}
.tp_tech_ul2 li span{
    font-size: 1.4rem;
    margin-left: 1.6rem;
    position: relative;
    line-height: 150%;
}
.tp_tech_ul2 li span::before{
    content: "▶︎ ";
    display: inline-block;
    width: fit-content;
    font-size: 10px;
    position: absolute;
    left: 0;
    top: 1px;
    color: #898989;
}
.tp_tech_ul2 li a::before{
    content: "▶︎ ";
    display: inline-block;
    width: fit-content;
    font-size: 10px;
    position: absolute;
    left: 0;
    top: 1px;
    color: #4992B9;
    transition: transform 0.5s ease;
}
@media (hover: hover) {
    .tp_tech_ul2 li a:hover{
        color: #4992B9;
        font-weight: bold;
    }
    .tp_tech_ul2 li a:hover::before{
        transform: translateX(3px);
    }
}
.tech_cap{
    font-size: 1.2rem;
    text-align: right;
    line-height: 120%;
    margin-top: 10px;
}
.aboutUsBtnArea{
    background-color: #F1F1F1;
    padding: 70px 0;
    text-align: center;
}
.aboutUsTitle{
    font-family: 'Montserrat', sans-serif;
    font-weight: 200;
    letter-spacing: 2px;
    font-size: 2.6rem;
    line-height: 100%;
}
.aboutUsBtn{
    padding: 10px 20px;
    background-color: white;
    line-height: 100%;
    display: block;
    width: fit-content;
    margin: 5px auto 0px auto;
    font-size: 1.2rem;
    transition: all 0.5s ease;
    font-weight: normal;
}
.aboutUsBtn::after{
    content: "";
    position: relative;
    top: 1px;
    margin-left: 3px;
    display: inline-block;
    width: 12px;
    height: 12px;
    background: url(../image/top/tp_arrow.png) no-repeat;
    background-size: contain;
    transition: filter 0.5s ease;
}
@media (hover: hover) {
    .aboutUsBtn:hover{
        background-color: #4992B9;
        color: white;
    }
    .aboutUsBtn:hover:after{
        filter: brightness(0) invert(1);
    }
}
#companyArea{
    background: url(../image/top/tp_company.jpg) no-repeat;
    background-size: cover;
}
.tp_comBtn{
    display: block;
    white-space: nowrap;
    margin-right: 30px;
}
@media (hover: hover) {
    .tp_comBtn:hover{
        font-weight: bold;
        color: #4992B9;
    }
}
.tp_comBtn span{
    color: #7D7D7D;
}
.tp_company_h2{
    color: #3E3A39;
}
.tp_company_sub{
    color: #3E3A39;
    letter-spacing: 5px;
    margin-bottom: 30px;
}
#recruitArea{
    position: relative;
    background-color: rgba(73,146,185,1);
}
.mgbPc100pxSp40px{
    margin-bottom: 100px;
}
.tp-rec_img{
    width: 100%;
    max-width: 857px;
    height: 100%;
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
}
.tp-rec_img_single{
    width: 100%;
    height: 100%;
}
.tp-rec_img_single img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tp-rec_img_box{
    width: 33.3%;
    height: 100%;
}
.tp-rec_img_box img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tp_rec_blue{
    width: 100%;
    height: 100%;
    background-color: rgba(73,146,185,1);
    position: absolute;
    top: 0;
    left: 0;
    mix-blend-mode:multiply;
}
.tp_recBtn{
    display: block;
    width: fit-content;
    white-space: nowrap;
}
@media (hover: hover) {
    .tp_recBtn:hover{
        font-weight: bold;
    }
}
.tp_recBtn span{
    color: #C9CACA;
}
.pc_pdl40_sp_none{
    padding-left: 40px;
}
.newsBtn{
    padding: 10px 30px;
    border: 1px solid #7D7D7D;
}
.newsBox{
    border-left: 1px solid #7D7D7D;
    padding-left: 50px;
}
.tp_newslist{
    border-bottom:  1px solid #7D7D7D;
}
.tp_newslist:last-child{
    border: none;
}
.tp_newslist a{
    padding: 20px 10px;
    display: block;
    background-color: white;
    transition: background-color 0.5s ease;
}
@media (hover: hover) {
    .tp_newslist a:hover{
        background-color: #DDE9F2;
    }
}
.postday{
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    color: #4992B9;
}
.conactPage_h3{
    font-size: 1.8rem;
    color: white;
    width: 100%;
    max-width: 400px;
    text-align: center;
    margin: 20px auto;
    background-color: #9FA0A0;
    padding: 10px 0;
    border-radius: 50px;
    font-weight: normal;
    line-height: 100%;
}
.contactPageTel{
    width: 100%;
    max-width: 400px;
    margin-bottom: 10px;
    margin-left: auto;
    margin-right: auto;
}
/* 会社案内 */
.pageVisu{
    width: 100%;
    height: 350px;
    position: relative;
    /* overflow: hidden; */
}
.pageVisu_white{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: white;
    transform: scaleX(1);
    transform-origin: right;
    transition: transform 0.25s ease;
}
.pageVisu_white2{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: white;
    transform: scaleX(1);
    transform-origin: right;
    transition: transform 1s ease;
}
.pageVisu_white3{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: white;
    transform: scaleX(1);
    transform-origin: right;
    transition: transform 3s ease;
}
.js_active .pageVisu_white,
.js_active .pageVisu_white2,
.js_active .pageVisu_white3{
    transform: scaleX(0);
}
.pageVisu_blue{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    transform-origin: right;
    background-color: #4992B9;
    transition: transform 0.5s ease;
    transition-delay: 0.5s
}
.js_active .pageVisu_blue{
    transform: scaleX(0);
}
.pageVisu img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.companyPage_h3{
    font-size: clamp(2.4rem,4.5vw,3.2rem);
    text-align: center;
    letter-spacing: 3px;
    font-family: 'Noto Serif JP', serif;
    font-weight: 200;
    position: relative;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.7s ease , transform 0.7s ease;
}
.companyPage_h3.js_active{
    opacity: 1;
    transform: translateY(00px);

}
.companyPage_h3::after{
    content: "";
    position: absolute;
    left: 50%;
    bottom: -15px;
    transform: translate(-50%,0) scale(0,1);
    width: 46px;
    height: 1px;
    background-color: #4992B9;
    transition: transform 0.7s ease;
    transition-delay: 0.5s;
}
.companyPage_h3.js_active::after{
    transform: translate(-50%,0) scale(1,1);
}
.aisatu{
    font-size: 1.8rem;
    text-indent: 1.8rem;
}
.mgb50px{
    margin-bottom: 50px;
}
.mgb60px{
    margin-bottom: 60px;
}
.ceo{
    font-size: 2rem;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    text-align: right;
}
.ceo span{
    font-size: 1.4rem;
}
.companyPageBack{
    width: 100%;
    position: absolute;
    bottom: 15%;
    left: 0;
    z-index: -1;
}
#policy,#overview,#history,#related{
    position: relative;
}
.policy_h4{
    font-size: clamp(2rem,4vw,2.9rem);
    font-family: 'Noto Serif JP', serif;
    font-weight: 200;
    position: relative;
    left: -100px;
    margin-bottom: 30px;
    transform: translateX(50px);
    opacity: 0;
    transition: opacity 0.7s ease , transform 0.7s ease;
}
.policy_h4.js_active{
    transform: translateX(0%);
    opacity: 1;
}
.policy01{
    position: relative;
    left: -80px;
    margin-bottom: 25px;
    transform: translateX(50px);
    opacity: 0;
    transition: opacity 0.7s ease , transform 0.7s ease;
}
.policy01.js_active{
    transform: translateX(0%);
    opacity: 1;
}
.policy02{
    position: relative;
    left: -20px;
    margin-bottom: 25px;
    transform: translateX(50px);
    opacity: 0;
    transition: opacity 0.7s ease , transform 0.7s ease;
}
.policy02.js_active{
    transform: translateX(0%);
    opacity: 1;
}
.policy03{
    position: relative;
    left: 40px;
    margin-bottom: 25px;
    position: relative;
    transform: translateX(50px);
    opacity: 0;
    transition: opacity 0.7s ease , transform 0.7s ease;
}
.policy03.js_active {
    transform: translateX(0%);
    opacity: 1;
}
.policy04{
    position: relative;
    left: 100px;
    position: relative;
    transform: translateX(50px);
    opacity: 0;
    transition: opacity 0.7s ease , transform 0.7s ease;
}
.policy04.js_active {
    transform: translateX(0%);
    opacity: 1;
}
.plicy_copy{
    font-size: clamp(1.7rem,3vw,2rem);
    line-height: 170%;
}
.policyNum{
    font-family: 'Noto Serif JP', serif;
    font-weight: 200;
    font-size: clamp(3.5rem,5.5vw,4rem);
    line-height: 100%;
    width: 5%;
}
.policyPara{
    font-family: 'Noto Serif JP', serif;
    font-weight: 200;
    font-size: 2rem;
    width: 95%;
    padding-left: 20px;
    border-left: 1px solid #B5B5B6;
    line-height: 150%;
}
.leftSide{
    width: calc(100% - (50% - (1000px / 2)));
}
.rightSide{
    width: calc(100% - (50% - (1000px / 2)));
    margin-left: auto;
}
.gradeBack{
    background-image: linear-gradient(45deg, rgb(218, 218, 218), rgba(255, 255, 255, 1) 51% 52%, rgb(219, 219, 219));
}
.leftSide_inner{
    margin-left: auto;
    margin-right: 40px;
    width: 920px;
    padding: 40px 0;
}
.rightSide_inner{
    margin-right: auto;
    margin-left: 40px;
    width: 920px;
    padding: 40px 0;
}
.companyPage_h4{
    font-size: clamp(2rem,4vw,2.9rem);
    font-family: 'Noto Serif JP', serif;
    font-weight: 200;
    position: relative;
    margin-bottom: 30px;
}
.selif{
    font-family: 'Noto Serif JP', serif;
    font-weight: 200;
}
.compPage_quo li{
    text-indent: -1.6rem;
    margin-left: 1.6rem;
    line-height: 150%;
    margin-bottom: 10px;
}
.compPage_quo li span{
    color: #898989;
}
.overview_visu{
    width: 100%;
    display: flex;
}
.overview_visu_box{
    width: 50%;
    padding-top: 30%;
    position: relative;
    overflow: hidden;
}
.overview_visu_box img{
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1);
    transition: transform 5s ease;
}

@media (hover: hover) {
    .overview_visu:hover .overview_visu_box img{
        transform: scale(1.1);
    }
}
.rem12{
    font-size: 1.2rem;
}
.right{
    text-align: right;
}
.co_table{
    width: 100%;
    font-size: 1.6rem;
    margin-bottom: 60px;
}
.co_table th{
    width: 8em;
    color: #4992B9;
    border-bottom: 1px solid #4992B9;
    padding: 20px 0;
    vertical-align: top;
}
.co_table td{
    width: calc(100% - 8em);
    border-bottom: 1px solid #9FA0A0;
    padding: 20px 0 20px 10px;
}
.co_table_img{
    position: absolute;
    width: 40%;
    bottom: 0;
    right: 0;
}
.co_ul li{
    font-weight: normal;
    line-height: 180%;
    text-indent: -1.6rem;
    margin-left: 1.6rem;
}
.co_access_h4{
    font-size: clamp(1.9rem,3.5vw,2.8rem);
    font-family: 'Noto Serif JP', serif;
    font-weight: 200;
    text-align: center;
}
.access_h4{
    font-size: 1.7rem;
    font-weight: normal;
    margin-bottom: 5px;
}
.access_cap li{
    font-size: 1.4rem;
    font-weight: normal;
    text-indent: -1.4rem;
    margin-left: 1.4rem;
    line-height: 150%;
}
.access_pala{
    font-weight: normal;
    line-height: 150%;
}

#historyArea{
    background-color: #F8FBFD;
}
.history_table{
    width: 100%;
}
.history_table th{
    font-size: 3rem;
    font-family: 'Noto Serif JP', serif;
    font-weight: normal;
    color: #4992B9;
    width: 158px;
}
.history_table td{
    font-size: 1.6rem;
    font-weight: normal;
    width: calc(100% - 158px);
    padding: 15px 0 15px 20px;
    position: relative;
}
.history_table td::after{
    content: "●";
    color: #4992B9;
    position: absolute;
    top: 50%;
    left: -0.8rem;
    transform: translateY(-50%);
}
.history_area{
    position: relative;
    z-index: 2;
}
.history_line{
    width: 1px;
    height: 100%;
    background-color: #9FA0A0;
    position: absolute;
    top: 0;
    left: 158px;
    z-index: -1;
    transform: scaleY(0);
    transform-origin: top;
}
.gaikan{
    overflow: hidden;
    margin-bottom: 40px;
}
.gaikan img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1);
    transition: transform 5s ease;
}
@media (hover: hover) {
    .gaikan:hover img {
        transform: scale(1.1);
    }
}
.related_h3{
    font-size: clamp(2rem,4vw,2.9rem);
    font-family: 'Noto Serif JP', serif;
    font-weight: normal;
    padding-bottom: 10px;
    border-bottom: 1px solid #9FA0A0;
    margin-bottom: 10px;
}
.blue_link{
    color: #4992B9;
    text-decoration: underline;
    text-underline-offset: 2px;
    word-break: break-all;
}
.co_gmap{
    width: 100%;
}
/* めっき処理 */
.techNaviArea{
    background-color: #F7F8F8;
    opacity: 0;
    transition: opacity 0.5s ease;
}
.techNaviArea.js_active{
    opacity: 1;
}
.techNav{
    display: flex;
    flex-wrap: wrap;
    border-left: 1px solid white;
}
.techNavli{
    width: 16.65%;
    border-right: 1px solid white;
}
.techNavli a{
    display: block;
    padding: 15px 0;
    text-align: center;
    font-weight: normal;
    line-height: 100%;
    background-color: #EFEFEF;
}
@media (hover: hover) {
    .techNavli a:hover{
        color: white;
        background-color: #4992B9;
    }
}
.techNavli.active a{
    color: white;
    background-color: #4992B9;
}
.elect_pla span:nth-child(1),
.elect_pla span:nth-child(2),
.elect_pla span:nth-child(3),
.elect_pla span:nth-child(4),
.elect_pla span:nth-child(5),
.elect_pla span:nth-child(6),
.elect_pla span:nth-child(7),
.elect_pla span:nth-child(8),
.elect_pla span:nth-child(9),
.elect_pla span:nth-child(10),
.elect_pla span:nth-child(11){
    color: #4992B9;
}
.chemical_pla span:nth-child(1),
.chemical_pla span:nth-child(2),
.chemical_pla span:nth-child(3),
.chemical_pla span:nth-child(4),
.chemical_pla span:nth-child(5),
.chemical_pla span:nth-child(6),
.chemical_pla span:nth-child(7),
.chemical_pla span:nth-child(8),
.chemical_pla span:nth-child(9){
    color: #4992B9;
}
.passivate_pla span:nth-child(1),
.passivate_pla span:nth-child(2),
.passivate_pla span:nth-child(3),
.passivate_pla span:nth-child(4),
.passivate_pla span:nth-child(5),
.passivate_pla span:nth-child(6),
.passivate_pla span:nth-child(7),
.passivate_pla span:nth-child(8),
.passivate_pla span:nth-child(9),
.passivate_pla span:nth-child(10){
    color: #4992B9;
}
.alumite_pla span:nth-child(1),
.alumite_pla span:nth-child(2),
.alumite_pla span:nth-child(3),
.alumite_pla span:nth-child(4),
.alumite_pla span:nth-child(5),
.alumite_pla span:nth-child(6),
.alumite_pla span:nth-child(7),
.alumite_pla span:nth-child(8){
    color: #4992B9;
}
#fixdNavi{
    display: none;
    width: 100%;
    position: fixed;
    top: 75px;
    left: 0;
    z-index: 100;
}
#fixdNavi.active{
    display: block;
}
#tech01Area,#tech02Area,#tech03Area,#tech04Area,
#tech05Area,#tech06Area{
    position: relative;
    overflow: hidden;
    padding: 80px 0 0 0 ;
}
.backGrade{
    background-image: linear-gradient(45deg, rgb(218, 218, 218), rgba(255, 255, 255, 1) 51% 52%, rgb(219, 219, 219));
    padding: 60px 0;
    position: relative;
}
.white_box{
    background-color: white;
    padding: 40px;
    position: relative;
}
.tech_h3{
    font-size: 2rem;
    display: inline-block;
    margin-right: 5px;
    margin-bottom: 5px;
    position: relative;
    top: 1px;
}
.tech_mokuteki{
    display: inline-block;
    margin-right: 5px;
    line-height: 120%;
    white-space: nowrap;
    color: white;
    background-color: #849DAE;
    padding: 3px 10px 4px 10px;
    font-size: 1.6rem;
    font-weight: 400;
    margin-bottom: 5px;
}
.tech_hr{
    border-bottom: 1px solid #9FA0A0;
    margin: 15px 0;
}
.techPage .tp_tech_ul li{
    font-size: 1.6rem;
    text-indent: -1.6rem;
    margin-left: 1.6rem;
}
.techPage .tp_tech_ul li a{
    position: relative;
    line-height: 100%;
    color: #4992B9;
}
.techPage .tp_tech_ul li a::after{
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    background-color: #4992B9;
    bottom: -2px;
    left: 0;
    transform-origin: left;
    transform: scaleX(0);
    transition: transform 0.5s ease;
}
@media (hover: hover) {
    .techPage .tp_tech_ul li a:hover:after{
        transform: scaleX(1);
    }
}
.z_index5{
    z-index: 5;
}
.backGrade .pageVisu_white{
    transition: transform 0.8s ease;
}
.origin_left{
    transform-origin: left;
}
.mgb40px{
    margin-bottom: 40px;
}
.tech_h4{
    font-size: 1.7rem;
    line-height: 110%;
    padding: 10px 0 10px 10px;
    background-color: #EEECEB;
    margin-top: 15px;
    margin-bottom: 5px;
}
.ls_none{
    letter-spacing: 0;
}
.mgb_nickel{
    margin-bottom: 78px;
}
.rem10{
    font-size: 1rem;
}
.mgb_suzu{
    margin-bottom: 47px;
}
.cap14{
    font-size: 1.4rem;
    text-indent: -1.4rem;
    margin-left: 1.4rem;
    line-height: 150%;
    margin-top: 5px;
}
.ellectroless_table{
    overflow: auto;
}
.ellectroless_table img{
    min-width: 609px;
}
.rem16{
    font-size: 1.6rem;
}
.tosou{
    width: 35%;
    margin-left: 3%;
}
.mgt80px{
    margin-top: 80px;
}
.equipArea{
    position: relative;
    padding: 80px 0;
}
.equipAreaInner{
    position: relative;
    overflow: hidden;
}
.equip_photo{
    width: calc(100% - 550px);
    height: 480px;
    position: relative;
    overflow: hidden;
}
.equip_photo img{
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.equip_status{
    width: 500px;
}
.equip_h3{
    font-size: clamp(2rem,3.7vw,2.6rem);
    font-weight: 400;
    letter-spacing: 2px;
    position: relative;
    border-bottom: 2px solid #9FA0A0;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
.equip_h3::after{
    position: absolute;
    content: "";
    width: 2em;
    height: 2px;
    left: 0;
    bottom: -2px;
    background-color: #4992B9;
}
.ls_mainasu{
    letter-spacing: -0.8px;
}
.equip_table{
    width: 100%;
}
.equip_table th{
    width: 7em;
    font-size: 1.4rem;
    font-weight: 400;
    border-bottom: 1px solid white;
    border-right: 1px solid white;
    background-color: #EFEFEF;
    padding: 10px 0;
}
.equip_table td{
    width: calc(100% - 8em);
    font-size: 1.4rem;
    font-weight: 400;
    border-bottom: 1px solid white;
    background-color: #F7F8F8;
    padding: 10px;
}
.mgbPc80pxSp40px{
    margin-bottom: 80px;
}
.equip_blue{
    background-color: #F4F8FB;
}
.td_white{
    background-color: white;
}
.equip_photo_02{
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
}
.equip_photo_02 img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.equip_h4{
    font-size: 2rem;
    font-weight: normal;
    letter-spacing: 3px;
}
.komaki{
    overflow: hidden;
    background: url(../image/equipment/komaki.jpg) no-repeat;
    background-size: cover;
    margin-bottom: 30px;
}
.komaki a{
    display: block;
}
.komaki_h3{
    font-size: clamp(2.2rem,5vw,3rem);
    line-height: 130%;
    white-space: nowrap;
    color: white;
    font-family: 'Noto Serif JP', serif;
    font-weight: normal;
    filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.5)) drop-shadow(0px 0px 3px rgba(0,0,0,0.5)) ;
}

/* 品質管理 */
.control_anim,.assessment_anim{
    width: fit-content;
    position: relative;
    padding-bottom: 10px;
    margin-bottom: 40px;
}
.control_anim::after,
.assessment_anim::after{
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 2000px;
    height: 1px;
    background-color: #4992B9;
    transition: transform 3s ease;
    transform-origin: right;
    transform: scaleX(0);
}
.control_anim.js_active::after,
.assessment_anim.js_active::after{
    transform: scaleX(1);
}
.control_anim span:nth-child(1),
.control_anim span:nth-child(2),
.control_anim span:nth-child(3),
.control_anim span:nth-child(4),
.control_anim span:nth-child(5),
.control_anim span:nth-child(6),
.control_anim span:nth-child(7){
    color: #4992B9;
}
.control_anim span:nth-child(8),
.control_anim span:nth-child(9),
.control_anim span:nth-child(10),
.control_anim span:nth-child(11),
.control_anim2{
    font-size: clamp(2rem,3.5vw,2.6rem);
}
.assessment_anim span:nth-child(1),
.assessment_anim span:nth-child(2),
.assessment_anim span:nth-child(3),
.assessment_anim span:nth-child(4),
.assessment_anim span:nth-child(5),
.assessment_anim span:nth-child(6),
.assessment_anim span:nth-child(7),
.assessment_anim span:nth-child(8),
.assessment_anim span:nth-child(9),
.assessment_anim span:nth-child(10){
    color: #4992B9;
}
.assessment_anim span:nth-child(11),
.assessment_anim span:nth-child(12),
.assessment_anim span:nth-child(13),
.assessment_anim span:nth-child(14),
.assessment_anim span:nth-child(15),
.assessment_anim span:nth-child(16),
.assessment_anim2
{
    font-size: clamp(1.8rem,3.5vw,2.6rem);
}
.quality_onepoint{
    position: absolute;
    top: 40px;
    right: -40px;
    width: 30%;
    z-index: -1;
}
.license{
    position: relative;
    background: url(../image/contact/a_back.jpg);
    background-size: 100%;
}
.ls10px{
    letter-spacing: 10px;
}
#qualityPage .tp_white_box::after{
    background-color: #DCEAF2;
}
.license_para{
    width: 60%;
}
.license_photo{
    width: 35%;
    cursor: pointer;
}
.lightBox{
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 10;
    cursor: pointer;
}
.lightBox img{
    width: 90%;
    max-width: 400px;
}
.lightBox.open{
    display: flex;
    justify-content: center;
    align-items: center;
}
.license_h4{
    font-size: clamp(2rem,3.5vw,2.6rem);
    font-weight: bold;
    color: #4992B9;
    margin-bottom: 5px;
}
.quality_Box{
    width: 47%;
    margin-bottom: 30px;
}
.quality_h4{
    font-weight: normal;
    font-size: 2rem;
    margin-bottom: 5px;
    color: #4992B9;
}
.quality_Box p{
    letter-spacing: 0;
}
/* 航空宇宙事業 */
#aeroPage .equipArea{
    padding-bottom: 0;
}
.aeroVisu img{
    object-position: bottom;
}
.aero_sub{
    bottom: -40px;
    right: 10%;
    width: 24%;
    max-width: 370px;
    position: absolute;
    transform: translateX(50px);
    opacity: 0;
    transition: transform 1s ease,opacity 1s ease;
    transition-delay: 1s;
}
.js_active .aero_sub{
    opacity: 1;
    transform: translateX(0);
    animation: huwahuwa 2s linear alternate infinite;
    animation-delay: 2s;
}

@keyframes huwahuwa{
    0% {transform: translateX(0) translateY(0);}
    100% {transform: translateX(0) translateY(10px);}
}
.aeroPageh2_size{
    font-size: clamp(4rem,7vw,6rem);
}
.aeroPageh2 span:nth-child(1),
.aeroPageh2 span:nth-child(2),
.aeroPageh2 span:nth-child(3),
.aeroPageh2 span:nth-child(4),
.aeroPageh2 span:nth-child(5),
.aeroPageh2 span:nth-child(6),
.aeroPageh2 span:nth-child(7),
.aeroPageh2 span:nth-child(8),
.aeroPageh2 span:nth-child(9){
    color: #4992B9;
}
.aero_sub2{
    position: absolute;
    width: 28%;
    max-width: 400px;
    left: 0%;
    top: -86px;
    transform: translateX(-50px);
    opacity: 0;
    transition: transform 1s ease, opacity 1s ease;
    transition-delay: 1s;
}
.aero_sub2.js_active{
    opacity: 1;
    transform: translateX(0);
    animation: huwahuwa 3s linear alternate infinite;
    animation-delay: 2s;
}
.aero_para1{
    margin: 0 auto 100px auto;
    font-family: 'Noto Serif JP', serif;
    font-size: 1.8rem;
    letter-spacing: 0;
}
.aero_cap{
    line-height: 120%;
}
.aero_content_sub{
    width: 100%;
    max-width: 280px;
    margin-top: auto;
}
.aero_colmn{
    display: flex;
    flex-direction: column;
}
.kanriBox01{
    width: 33%;
    padding: 40px 0;
}
.kanriBox02{
    width: 34%;
    padding: 40px 0;
}
.kanri01{
    background-color: #006AA1;
}
.kanri02{
    background-color: #4992B9;
}
.kanri03{
    background-color: #4B99CC;
}
.kanriNumber{
    color: white;
    text-align: center;
    position: relative;
    font-size: clamp(3rem,5vw,4rem);
    font-weight: 200;
    font-family: 'Montserrat', sans-serif;
    padding-bottom: 5px;
    margin-bottom: 20px;
}
.kanriNumber::after{
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 1em;
    height: 1px;
    background-color: white;
}
.kanri_h3{
    font-size: clamp(2rem,3vw,2.4rem);
    margin-bottom: 20px;
}
.kanri_para{
    color: white;
    width: 297px;
    margin: 0 auto;
}
.aero_back{
    width: 100%;
    max-width: 1000px;
    position: absolute;
    opacity: 0;
    transition: opacity 1s ease;
    transition-delay: 1s;
}
.aero_back.js_active{
    opacity: 1;
}

.aero_back_posi01{
    top: 0;
    right: 0;
    transform: translateX(50%);
}
.aero_back_posi01.js_active,
.aero_back_posi03.js_active{
    animation: huwahuwa2 40s linear alternate infinite;
    animation-delay: 2s;
}
@keyframes huwahuwa2{
    0% {transform: translateX(50%) rotate(0deg);}
    100% {transform: translateX(50%) rotate(40deg);}
}
.aero_back_posi02{
    top: 50%;
    left: 0;
    transform: translate(-50%,-50%) rotate(180deg);
}
.aero_back_posi02.js_active{
    animation: huwahuwa3 40s linear alternate infinite;
    animation-delay: 2s;
}
@keyframes huwahuwa3{
    0% {transform: translate(-50%,-50%) rotate(180deg);}
    100% {transform:  translate(-50%,-50%) rotate(140deg);}
}
.aero_back_posi03{
    bottom: 0;
    right: 0;
    transform: translateX(50%);
}

.delay1s.companyPage_h3{
    transition-delay: 1s;
}
.delay1s.companyPage_h3::after{
    transition-delay: 1.5s;
}
/* リクルートページ */
#recruitPage{
    position: relative;
    overflow: hidden;
}
.recruitPageArea{
    height: 830px;
    position: relative;
}
.recruit_h2{
    font-size: clamp(6rem,14vw,9.3rem);
    font-family: 'Montserrat', sans-serif;
    color: #B5B5B6;
    font-weight: 700;
    line-height: 100%;
    opacity: 0;
}
.recruitArea02{
    background-color: #4992B9;
    overflow: hidden;
    padding: 60px 0;
}
.rec_title_posi{
    padding-top: 140px;
    margin-left: 70px;
}
.rec_title{
    width: 70%;
    max-width: 434px;
    position: relative;
    top: -33px;
    margin-left: 112px;
    opacity: 0;
}
.rec_para{
    font-size: clamp(1.3rem,2.8vw,1.8rem);
    margin-left: 112px;
    letter-spacing: 3px;
    line-height: 170%;
    opacity: 0;
}
.triangle{
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 25%;
    background-color: #4992B9;
    clip-path: polygon(100% 0, 100% 100%, -10px 100%);
}
.rec_parson{
    width: 55%;
    max-width: 430px;
    position: absolute;
    bottom: 0;
    right: 10%;
    opacity: 0;
}
.spaceShip{
    position: absolute;
    width: 30%;
    max-width: 270px;
    bottom: 0;
    left: 28.5%;
    opacity: 0;
}
.table_cap{
    font-size: 1.6rem;
    line-height: 120%;
    margin-left: 1.6rem;
    text-indent: -1.6rem;
}
.spaceShip.js_action{
    animation: huwahuwa 5s linear alternate infinite;
}
.rec_img01{
    position: absolute;
    width: 20%;
    max-width: 168px;
    left: 40%;
    bottom: 20%;
}
.rec_img02{
    position: absolute;
    width: 13%;
    max-width: 140px;
    right: 9%;
    top: 18%;
}
.rec_img03{
    position: absolute;
    width: 9%;
    max-width: 82px;
    right: 0%;
    top: 42%;
}
.js_circle{
    border-radius: 50%;
    position: absolute;
    opacity: 0;
    z-index: -1;
}
.js_circle span{
    display: block;
    padding-top: 100%;
}
.js_circle.js_action:nth-child(odd){
    animation: huwahuwa 3s linear alternate infinite;
}
.js_circle.js_action:nth-child(even){
    animation: huwahuwa 6s linear alternate infinite;
}
@keyframes huwahuwa{
    0% {transform: translateY(0);}
    100% {transform: translateY(20px);}
}
.circle01{
    width: 3%;
    max-width: 23px;
    background-color: #a1c2da;
    bottom: 35%;
    left: 0;
}
.circle02{
    width: 8%;
    max-width: 60px;
    background-color: #4992b9;
    bottom: 14%;
    left: 5%;
}
.circle03{
    width: 8%;
    max-width: 60px;
    background-color: #a1c2da;
    top: 16%;
    left: 50%;
}
.circle04{
    width: 8%;
    max-width: 60px;
    background-color: #4992b9;
    top: 28%;
    right: -1%;
}
.circle05{
    width: 3%;
    max-width: 23px;
    background-color: #a1c2da;
    bottom: 34%;
    right: 0;
}
.circle06{
    width: 6%;
    max-width: 40px;
    background-color: #a1c2da;
    right: 9%;
    top: 18%;
}
.rec_h3{
    font-size: clamp(1.8rem,3vw,2.4rem);
    margin-bottom: 20px;
}
.interview_Box{
    width: 25%;
}
.interview_Box:nth-child(1){
    background-color: #006ba0;
}
.interview_Box:nth-child(2){
    background-color: #0086B5;
}
.interview_Box:nth-child(3){
    background-color: #0074a2;
}
.interview_Box:nth-child(4){
    background-color: #339acb;
}
.interview_Box a{
    padding: 20px 0;
    display: block;
}
@media (hover: hover) {
    .interview_Box a:hover .voice{
        transform: translateY(-10px) scale(1.1);
    }
}
.voice{
    width: 80%;
    max-width: 203px;
    position: relative;
    margin: 0 auto;
    transition: transform 0.5s ease;
}
.voice_para{
    font-size: clamp(1.6rem,3.5vw,2rem);
    text-align: center;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-60%);
    line-height: 120%;
    white-space: nowrap;
    font-weight: bold;
}
.voice_parson {
    max-width: 190px;
    margin: 0 auto;
}
.interview_Box:nth-child(1) .voice_para{
    color: #006ba0;
}
.interview_Box:nth-child(2) .voice_para{
    color: #0086B5;
}
.interview_Box:nth-child(3) .voice_para{
    color: #0074a2;
}
.interview_Box:nth-child(4) .voice_para{
    color: #339acb;
}
.voice span{
    font-size: clamp(1.4rem,3vw,1.6rem);
    position: relative;
    top: -3px;
}
.backWhite{
    background-color: white;
}
.pdt40px{
    padding-top: 40px;
}
.jobInner{
    width: 920px;
}
#recruit_frontPage .equip_h3{
    margin-bottom: 40px;
}
#recruit_frontPage .companyPage_h3{
    font-family: 'Noto Sans JP', serif;
    color: white;
}
#recruit_frontPage .companyPage_h3::after{
    background-color: white;
}
#recruit_frontPage .conactPage_h3{
    background-color: white;
    color: #4992b9;
}
#recruit_frontPage .contactFlexLeft p{
    color: white;
    line-height: 140%;
}
#recruit_frontPage .red{
    color: #ffd900 !important;
}
#recruit_frontPage .submit-btn{
    background-color: #3E3A39;
}
#contents2,#contents3{
    width: 100%;
    background-color: #F7F8F8;
    border: 1px solid #898989;
    font-size: 1.6rem;
    padding: 18px;
    resize: vertical;
}
#recruit_frontPage button.wpcf7cp-cfm-submit-btn {
    background-color: #3E3A39;
}
.interviewPageArea{
    padding-top: 120px;
    padding-bottom: 60px;
}
.interview_h3{
    font-family: 'Noto Serif JP', serif;
    font-weight: 200;
    font-size: clamp(1.8rem,3.5vw,2.4rem);
    margin-bottom: 40px;
}
.interview_h3_box{
    display: inline-block;
    padding: 5px 10px;
    background-color: #E6EFF6;
    margin-bottom: 5px;
}
.interview_member_para{
    font-size: 1.6rem;
    line-height: 130%;
    font-weight: normal;
}
.interview_member_para span{
    font-size: 1.3rem;
}
.interview_h4{
    font-size: 1.8rem;
    letter-spacing: 3px;
    font-weight: bold;
}
.question{
    width: 60px;
    margin-right: 10px;
}
.interview_para{
    margin-left: 70px;
}
.day_scheduleArea{
    background-color: #DDE9F2;
    padding: 40px 0;
    margin: 40px 0;
}
.day_scheduleZone{
    width: 100%;
    height: 250px;
    position: relative;
    background: url(../image/recruit/suke_01.svg) no-repeat;
    background-position: 100% 35%;
}
.suke03{
    background: url(../image/recruit/suke_03.svg) no-repeat;
    background-position: 100% 46%;
}
.day_scheduleUl{
    width: 100%;
    height: 100%;
    position: relative;
}
.scheduleTime{
    display: inline-block;
    padding: 5px 15px;
    border-radius: 10px;
    background-color: #4992b9;
    color: white;
    font-weight: bold;
    line-height: 100%;
    font-size: 2rem;
    margin-right: 5px;
}
.scheduleTimeArea{
    margin-right: 10px;
}
.day_schedule_para{
    font-size: 1.4rem;
    line-height: 140%;
}
.scheduleTime_para{
    font-size: 2rem;
    line-height: 100%;
    white-space: nowrap;
    font-weight: bold;
}
.pcCenter{
    text-align: center;
}
.day_schedule{
    position: absolute;
    width: 260px;
    display: flex;
    margin-bottom: 20px;
}
.member01 .day_schedule:nth-child(1){
    top: 0;
    left: 20px;
}
.member01 .day_schedule:nth-child(2){
    bottom: 0;
    left: 50px;
}
.member01 .day_schedule:nth-child(3){
    top: 0;
    left: 321px;
}
.member01 .day_schedule:nth-child(4){
    bottom: 0;
    left: 380px;
}
.member01 .day_schedule:nth-child(5){
    top: 0;
    left: 749px;
}
.member02 .day_schedule:nth-child(1){
    top: 0;
    left: 20px;
}
.member02 .day_schedule:nth-child(2){
    bottom: 0;
    left: 50px;
}
.member02 .day_schedule:nth-child(3){
    top: 0;
    left: 321px;
}
.member02 .day_schedule:nth-child(4){
    bottom: 0;
    left: 380px;
}
.member02 .day_schedule:nth-child(5){
    top: 0px;
    left: 710px;
}
.member03 .day_schedule:nth-child(1){
    top: 0px;
    left: 20px;
}
.member03 .day_schedule:nth-child(2){
    bottom: 0;
    left: 50px;
}
.member03 .day_schedule:nth-child(3){
    top: 0px;
    left: 290px;
}
.member03 .day_schedule:nth-child(4){
    top: 0px;
    left: 447px;
}
.member03 .day_schedule:nth-child(5){
    bottom: 0;
    left: 375px;
}
.member03 .day_schedule:nth-child(6){
    top: 0px;
    left: 709px;
}
.member04 .day_schedule:nth-child(1){
    top: 0;
    left: 20px;
    width: 240px;
}
.member04 .day_schedule:nth-child(2){
    bottom: 0;
    left: 50px;
}
.member04 .day_schedule:nth-child(3){
    top: 0;
    left: 321px;
}
.member04 .day_schedule:nth-child(4){
    bottom: 0;
    left: 380px;
}
.member04 .day_schedule:nth-child(5){
    top: 0;
    left: 749px;
}
.stepArea{
    background-color: #FBF9F1;
    padding: 40px;
}
.jb_description{
    background-color: white;
    padding: 20px;
}
.noFlex{
    display: block;
}
.step_up{
    font-size: 2rem;
    text-align: center;
    color: white;
    line-height: 100%;
    font-weight: bold;
    padding: 10px 0;
    background-color: #4992b9;
    position: relative;
    margin-bottom: 40px;
}
.step_up::after{
    width: 30px;
    height: 15px;
    content: "";
    background-color: #4992B9;
    clip-path: polygon(0% 0, 100% 0, 50% 100%);
    position: absolute;
    left: 50%;
    bottom: -14px;
    transform: translateX(-50%);
}
.blueBox{
    color: white;
    background-color: #4992b9;
    line-height: 100%;
    padding: 7px 10px;
    margin-right: 7px;
    font-weight: bold;
}
.rec_contactBtn{
    background-color: #3E3A39;
    width: 45%;
    max-width: 350px;
    border-radius: 10px;
    color: white;
    line-height: 100%;
    padding: 15px 0;
    text-align: center;
    margin: 0 auto;
    display: block;
}
@media (hover: hover) {
    .rec_contactBtn:hover{
        background-color: #4992B9;
    }
}












 /* コンタクトページ */
#contactPage{
    background: url(../image/contact/a_back.jpg);
    background-size: 100%;
}
.contactBack{
    background-color: white;
    padding: 150px 40px 70px 40px;
}
.contactPageh2{
    color: #4992B9;
}
.privacyH3{
    font-size: 1.9rem;
    font-weight: normal;
}
.privacyParaTitle{
    font-size: 1.8rem;
    font-weight: normal;
}
.privacyPara{
    word-break: break-all; /* 枠からはみ出る際は改行 */
}
.privacyInner{
    margin: 20px 0;
}




/* コンタクトフォーム */
.contactMoai{
    width: 137px;
    position: absolute;
    left: 0;
    bottom: 0;
}
#contact{
    position: relative;
    padding: 150px 0 0 0;
    overflow: hidden;
}
.tongue_l{
    width: 30%;
    position: absolute;
    top: 0;
    left: -5%;
    will-change: filter;
}
.tongue_r{
    width: 30%;
    position: absolute;
    top: 0;
    right: -5%;
    will-change: filter;
}
.contact_subtitle{
    width: 80%;
    max-width: 414px;
    margin: 0 auto;
}
.meiko_co_title{
    text-align: center;
    letter-spacing: 2px;
    margin-bottom: 30px;
    position: relative;
    top: -25px;
}
.meiko_co_title .js-text{
    font-size: clamp(2.2rem,4.5vw,3.4rem) !important;
    margin-right: 5px;
    color: #0b9276;
    font-weight: 900;
}
.meiko_co_para{
    font-size: 1.6rem;
    color: black;
    text-align: center;
}
.contactwrap1280_p{
    font-size: clamp(1.6rem,4vw,2.3rem);
    font-weight: 500;
    line-height: 1;
    margin-bottom: 5px;
}
.contactwrap1280_p2{
    font-size: clamp(1.4rem,3.5vw,1.8rem);
    letter-spacing: 2px;
    font-weight: 300;
    line-height: 120%;
    text-align: center;
}
.co_telZone{
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 700px;
    margin: 40px auto;
}
.contactTel{
    display: block;
    width: 80%;
    max-width: 384px;
}
.alignCenter{
    align-items: center;
}
.rem14{
    font-size: 1.4rem;
}
.red{
    color: #e60012 !important;
}
.co_contactArea{
    position: relative;
}

.co_contactInner p{
    color: black;
}
.co_contactAreaTitle{
    font-size: clamp(2rem,3vw,3.5rem);
    margin-bottom: 40px;
    letter-spacing: 1px;
}
.co_contactAreaCopy{
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 220%;
}
.co_thanksCopy{
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 220%;
    margin-bottom: 50px;
}
.contactFlexLeft{
    width: 20%;
}
.contactFlexRight{
    width: 80%;
}
.contactFlexLeft2{
    width: 25%;
    display: flex;
    align-items: center;
}
.contactFlexRight2{
    width: 75%;
}
.contact-input{
    padding: 17px;
    font-size: 16px;
    background-color: #F7F8F8;
    border: 1px solid #5d5959;
    width: 100%;
}
.co_contactPara{
    font-size: 1.6rem;
}
.contact-flex-box{
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 5%;
}
.contact-flex-box2{
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}
.contact-flex-left2{
    width: 20%;
}
.contact-flex-right3{
    width: 80%;
    display: flex;
}

.rem14{
    font-size: 1.4rem;
}
.rem16{
    font-size: 1.6rem;
    margin: 0 5px;
}
.mgt10p{
    margin-top: 10%;
}
.radiosize{
    font-size: 16px;
}
.radiosize>span{
    margin-right: 10px;
}
.radioArea{
    padding-top: 4%;
    padding-bottom: 4%;
}
#contents1{
    width: 100%;
    background-color: #F7F8F8;
    border: 1px solid #898989;
    font-size: 1.6rem;
    padding: 18px;
    resize: vertical;
}
.submit-area{
    position: relative;
    margin: 30px auto 40px auto;
    text-align: center;
}
.submit-area p{
    line-height: 0;
    height: 58px;
}
.submit-btn{
    display: block;
    padding: 15px 50px;
    position: relative;
    color: white;
    letter-spacing: 2px;
    background-color: #4992B9;
    border-radius: 50px;
    z-index: 3;
    white-space: nowrap;
    font-size: 1.6rem;
    cursor: pointer;
    border: none;
    width: 100%;
    max-width: 340px;
    margin-left: auto;
    margin-right: auto;
}
#legend{
    display: inline-block;
    font-weight: 400;
}
#legend ~ p{
    display: inline-block;
}
/* .submit-area::before{
width: 90%;
height: 90%;
position: absolute;
content: "";
top: 0;
left: 0;
border-top: 1px solid white;
border-left: 1px solid white;
}
.submit-area::after{
width: 90%;
height: 90%;
position: absolute;
content: "";
bottom: 0;
right: 0;
border-bottom: 3px solid white;
border-right: 3px solid white;
} */
.contact_rect{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #22AC38;
    transform-origin: left;
    transform: scaleX(0);
    transition: transform 1s ease;
    z-index: -1;
}
@media (hover: hover) {
    .submit-area:hover .contact_rect{
        transform: scaleX(1);
    }
}

#privacyArea{
    padding: 70px 0 0 0;
    position: relative;
}

.mgb3p{
    margin-bottom: 3%;
}
.mgb5p{
    margin-bottom: 5%;
}
/* 入力漏れエラーメッセージ */
.wpcf7-not-valid-tip{
    color: #E94829 !important;
    font-size: 1.5rem !important;
}
/* 送信エラーメッセージ */
.wpcf7-response-output{
    color: #E94829 !important;
    border-color: #E94829 !important;
    font-size: 1.5rem;
    text-align: center;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto !important;
    padding: 5px 20px !important;
}
/* ファイルアップロードのエラーメッセージ */
.fileup .wpcf7-not-valid-tip{
    white-space: nowrap;
    position: absolute;
    top: 27px;
    left: 0;
}

@media screen and (max-width:768px){
    .co_contactAreaTitle{
        letter-spacing: 2px;
    }
    .co_contactAreaTitle{
        margin-bottom: 30px;
    }
    .co_contactAreaCopy{
        text-align: justify;
        margin-bottom: 30px;
    }
    .contactFlexLeft,.contactFlexRight{
        width: 100%;
    }
    .contactFlexLeft,.contactFlexLeft2{
        margin-bottom: 5px;
    }
    .contact-flex-box,.contact-flex-box2{
        flex-direction: column;
    }
    .contact-flex-left2,.contact-flex-right3{
        width: 100%;
        margin-bottom: 5px;
    }
    .contactFlexLeft2,.contactFlexRight2{
        width: 100%;
    }
    .contactTop {
        height: 300px;
    }
    .co_contactTitle{
        padding-top: 100px;
    }
    .submit-btn {
        background-size: 340px;
    }
    .submit-btn:hover{
        opacity: 1;
    }
    .submit-area::after{
        display: none;
    }
}
/* 確認画面 */
#wpcf7cpcnf table{
    width: 100%;
}
#wpcf7cpcnf table th{
    width: 30%;
    border: 1px solid #7D7D7D;
    background-color: #F7F8F8;
    padding: 10px;
}
#wpcf7cpcnf table td{
    width: 70%;
    border: 1px solid #7D7D7D;
    padding: 10px;
    background-color: white;
}
button.wpcf7cp-cfm-edit-btn {
    margin-right: 20px;
    margin-bottom: 20px;
    border: none;
    font-size: 16px;
    color: white;
    background-color: #929A9F;
    border-radius: 50px;
    padding: 10px 20px;
}
button.wpcf7cp-cfm-submit-btn {
    margin-bottom: 20px;
    border: none;
    font-size: 16px;
    color: white;
    background-color: #4992B9;
    border-radius: 50px;
    padding: 10px 20px;
}

/* アーカイブページ */
#archive{
    padding-top: 130px;
}
.archive_ul{
    border-top: 2px solid #4992B9;
    border-bottom: 2px solid #4992B9;
    margin-bottom: 20px;
}
.topBtn{
    display: block;
    text-align: center;
    width: 100%;
    max-width: 350px;
    padding: 15px 0;
    background-color: #4992B9;
    border-radius: 50px;
    color: white;
    font-weight: normal;
    margin: 40px auto;
}
/* wp-pagenavi */
.wp-pagenavi {
    margin: 40px auto 0px auto;
    text-align: center;
    display: flex;
    justify-content: center;
    font-size: 1.6rem;
}
.wp-pagenavi span.current {
    font-weight: bold;
    background-color: #4992B9;
    color: white;
}
.wp-pagenavi a, .wp-pagenavi span {
    text-decoration: none;
    width: 30px;
    height: 30px;
    justify-content: center;
    border: none !important;
    align-items: center;
    padding: 3px 5px;
    display: flex;
    color: #3E3A39;
    margin: 5px;
    background-color: #dadada;
    border-radius: 50px;
}
/* wp-pagenavi */

/* シングルページ */
.newsSingle{
    padding-top: 150px;
    padding-bottom: 120px;
}
.singlePage .newsTitleArea h2{
    border-bottom: none !important;
}
.singlePage{
    position: relative;
    overflow: hidden;
}
.singlePage .news_date{
    font-size: 1.6rem;
    font-weight: normal;
    margin-right: 10px;
    line-height: 150%;
}
.singlePage .news_new{
    font-weight: bold;
    color: #ff0015;
    position: relative;
    top: -2px;
    line-height: 150%;
}
.singlePage .newsCate{
    font-size: 1.6rem;
    width: 5em;
    color: white;
    padding: 5px 0px;
    line-height: 1;
    background-color: #4992B9;
    text-align: center;
    margin-right: 10px;
    font-weight: bold;
}
.singlePage h1{
    font-size: clamp(2rem,3.5vw,3rem);
    font-weight: normal;
    text-align: justify;
    margin: 0% 0 3% 0;
    position: relative;
    color: #3E3A39;
    padding-bottom: 3%;
    border-bottom: 3px solid #4992B9;
}
.newsSingle .singlePage h1 {
    font-size: clamp(2rem,3.5vw,3rem);
    font-weight: normal;
    text-align: justify;
    margin: 0% 0 3% 0;
    position: relative;
    color: #3E3A39;
    padding-bottom: 3%;
    border-bottom: 3px solid #4992B9;
}
.singlePage h2{
    font-size: clamp(1.8rem,3vw,2.6rem);
    padding: 10px 10px;
    font-weight: normal;
    text-align: justify;
    margin: 0% 0 3% 0;
    position: relative;
    color: #3E3A39;
    padding-bottom: 3%;
    border: none;
}
.newsSingle .singlePage .singlePageContener h2 {
    font-size: clamp(1.8rem,3vw,2.6rem);
    padding: 10px 10px;
    font-weight: normal;
    text-align: justify;
    margin: 0% 0 3% 0;
    position: relative;
    color: #3E3A39;
    background-color: #e8e8e8;
    border: none;
}
.singlePage h3{
    font-size: clamp(1.6rem,3vw,2rem);
    padding: 10px 10px;
    font-weight: 600;
    text-align: justify;
    margin: 3% 0;
    position: relative;
    color: #3E3A39;
    background-color: #e8e8e8;
}
.singlePage p{
    font-size: clamp(1.6rem,2.5vw,1.8rem);
    line-height: 180%;
    margin: 20px 0;
    color: #3E3A39;
    font-weight: normal;
}
.singlePageBtn{
    font-size: 1.6rem;
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
    padding: 10px 0;
    text-align: center;
    border: 2px solid #a7a7a7;
    border-radius: 50px;
    text-decoration: none !important;
    display: block;
    background-color: white;
    color: #3E3A39 !important;
    position: relative;
    overflow: hidden;
    z-index: 3;
    margin-top: 40px;
}
@media (hover: hover) {
    .singlePageBtn:hover{
        color: white !important;
    }
    .singlePageBtn:hover.singlePageBtn::before{
        transform:  translate(-50%,-50%) scale(1);
    }
}

.singlePageBtn::after{
    width: 100%;
    height: 100%;
    position: absolute;
    content: "";
    border-radius: 50%;
    background-color: white;
    left:0%;
    top:0%;
    z-index: -2;
}
.singlePageBtn::before{
    width: 200%;
    padding-top: 200%;
    position: absolute;
    content: "";
    border-radius: 50%;
    background-color: #4992B9;
    left: 50%;
    top: 50%;
    transform-origin: center;
    z-index: -1;
    transform:  translate(-50%,-50%) scale(0);
    transition: transform 1s ease;
}
.newsSingle .singlePageBtn::before,
.newsListPage .singlePageBtn::before{
    width: 200%;
    padding-top: 200%;
    position: absolute;
    content: "";
    border-radius: 50%;
    background-color: #4992B9;
    left: 50%;
    top: 50%;
    transform-origin: center;
    z-index: -1;
    transform:  translate(-50%,-50%) scale(0);
    transition: transform 1s ease;
}
.singlePage p strong{
    font-size: 1.8rem;
    line-height: 180%;
    color: #3E3A39;
    display: inline-block;
    padding: 0 5px;
    background-color: #fefba7;
}
.singlePage a{
    text-decoration: underline;
    text-underline-offset: 4px;
    color: #406baf;
    font-weight: normal;
}
.singlePage blockquote{
    padding: 3% 5%;
    background-color: #dfe6ec;
    position: relative;
    box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3);
    margin: 5% 0;
}
.singlePage blockquote::before{
    content: "";
    position: absolute;
    left: 0%;
    top: 0%;
    width: 5px;
    height: 100%;
    background-color: #b8d1e8;
}
.singlePage blockquote::after{
    content: "“";
    position: absolute;
    left: 0%;
    top: -11%;
    color: #b8d1e8;
    font-size: 6rem;
    font-style: italic;
}
.singlePage cite{
    text-align: right;
    font-size: 1.5rem;
    font-style: italic;
    display: block;
    color: #3E3A39;
}
.singlePage figure{
    width: 100%;
    display: block;
    /* max-width: 600px !important; */
    margin: 30px 0;
    overflow: auto;
}
.singlePage iframe{
    width: 100%;
    margin: 5% 0;
}
.singlePage .wp-element-caption{
    color: #3E3A39;
}
.singlePage ul{
    padding: 3% 5%;
    background-color: #ededed;
    font-size: 1.7rem;
    margin: 5% 0;
    color: #3E3A39;
}
.singlePage li{
    list-style: auto;
    position: relative;
    left: 1.7rem;
    margin-right: 1.7rem;
}

.singlePage table{
    font-size: 1.6rem;
    width: 970px !important;
    transform: scaleX(0.99);
    color: #3E3A39;
}
.singlePage table td strong{
    color: #4992B9;
    font-weight: normal;
}
.singlePage thead{
    border: none !important;
}
.singlePage th{
    background-color: #ededed;
}
.singlePage tr:nth-child(even){
    background-color: #f2f2f2;
}
.singlePage .wp-block-button{
    margin: 5% 0;
}
.singlePage  .wp-block-button__link{
    display: block;
    color: white !important;
    text-decoration: none !important;
    font-size: 1.6rem;
    font-weight: bold;
    overflow: hidden;
    background-color: #4992B9;
    position: relative;
}
.singlePage  .wp-block-button__link::after{
    content: '';
    position: absolute;
    top: -10%;
    left: -20%;
    width: 40px;
    height: 100%;
    transform: scale(2) rotate(20deg);
    background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 0%);
    
    /* アニメーション */
    animation-name: shiny;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}
.singlePage  .wp-block-embed__wrapper {
    width: 100%;
    padding-top: 56%;
    position: relative;
  }
  
.singlePage  .wp-block-embed__wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
}
#autozip{
    background-color: transparent !important;
    pointer-events: none;
}
#zip_close{
    display: none;
}


.toroContenner{
    display: flex;
    align-items: center;
    padding: 30px 60px;
    background-image: linear-gradient(45deg, rgb(218, 218, 218), rgba(255, 255, 255, 1) 51% 52%, rgb(219, 219, 219));
    margin-bottom: 50px;
}
.toro{
    max-width: 150px;
    display: block;
    margin: 0 auto;
}
.toroBox{
    width: 30%;
}
.toroPara{
    width: 70%;
    font-family: 'Noto Serif JP', serif;
}
.grecaptcha-badge { visibility: hidden; }
.recapcha_para{
    font-size: 1.2rem;
    text-align: center;
    line-height: 140%;
    color: #333333;
    margin-bottom: 30px;
}
.recapcha_para_white{
    font-size: 1.2rem;
    text-align: center;
    line-height: 140%;
    color: white;
    margin-bottom: 30px;
}
.recapcha_para a{
    color: #004598;
    font-size: 1.2rem;
}
.recapcha_para_white a{
    color: #fefba7;
    font-size: 1.2rem;
}