@charset "UTF-8";
/* CSS Document */

@font-face {
   font-family: 'Noto Sans Japanese';
   font-style: normal;
   font-weight: 500;
   src: url(../fonts/NotoSansCJKjp-Medium.eot) format('eot'),
        url(../fonts/NotoSansCJKjp-Medium.woff) format('woff'),
        url(../fonts/NotoSansCJKjp-Medium.otf) format('opentype');
 }

body{
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #000;
    line-height: 1.4;
}
a{
    color: #000;
    text-decoration: none;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}
a:hover{ opacity: 0.85;}

.inner{
    clear: both;
    width: 1000px;
    margin: 0 auto;
}
.inner:after{
    content: "";
    display: table;
    clear: both;
}

header{
    background: rgba(255,255,255,0.8);
    width: 100%;
    height: 50px;
    padding: 12px 0;
    position: fixed;
    top: 0;
    left:0;
    z-index: 10;
    box-sizing: border-box;
}
header #logo{
    float: left;
    width: 100px;
}
header #gNavi ul{
    float: right;
    height: 26px;
}
header #gNavi ul li{
    float: left;
    margin: 0 30px 0 0;
    line-height: 26px;
}
header #gNavi ul li:last-child{ margin-right: 0;}
header #gNavi ul:after{
    content: "";
    display: table;
    clear: both;
}
#container{
    clear: both;
    width: 100%;
    min-width: 980px;
}
#container > section,
#container > article{
    clear: both;
    padding: 70px 0;
}
#container #mainVisual{
    width: 100%;
    background:url(../images/bg_mv01.jpg) center top no-repeat;
    background-size: cover;
    height: 650px;
    padding: 0;
    position: relative;
}
#mainVisual .inner{
    height: 100%;
    position: relative;
}
#mainVisual .text{
    width: 1000px;
    margin: 0 auto;
}
#mainVisual .text h1{
    padding: 120px 0 0 0;
    text-align: right;
}
#mainVisual .text h1 span{
    display: block;
    padding: 5px 0 5px 0;
    letter-spacing: 0px;
    font-size: 35%;
}
#mainVisual .text .sub{
    margin:10px auto 0 auto;
    width: 100%;
    max-width: 1000px;
    text-align: center;
    color: #fff;
}
#mainVisual .text ul li.text01{
    font-size: 120%;
    display: inline;
    border-bottom: 1px solid #fff;
    padding-bottom: 5px;
}
#mainVisual .text ul  li.text01 span{
    display: inline;
    font-size: 200%;
    color: #ffea03;
}
#mainVisual .text ul li.text02{
    font-size: 80%;
    text-align: right;
    margin-right:295px;
}

/*
#mainVisual .text{
    position: absolute;
    top: 45%;
    left: 0;
    transform: translateY(-75%);
}
#mainVisual .text h1{
    margin-bottom: 35px;
    font-size: 200%;
    font-weight: 600;
    line-height: 1.2;
}
#mainVisual .text h1 span{
    display: block;
    margin: 5px 0 5px 0;
    font-size: 35%;
}
#mainVisual .text .icon{
    position: relative;
    width: 270px;
    height: 150px;
}
#mainVisual .text ul li{
    background: #009cbf;
    float: left;
    width: 128px;
    height: 128px;
    border-radius: 50%;
    margin: 0 12px 0 0;
    color: #fff;
    text-align: center;
    position: relative;
}
#mainVisual .text ul li:last-child{margin-right: 0;}
#mainVisual .text ul li > span{
    display: block;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    font-size: 125%;
}
#mainVisual .text ul li > span span{
    font-size: 160%;
    font-weight: 700;
}
#mainVisual .text ul:after{
    content: "";
    display: table;
    clear: both;
}
#mainVisual .text small{
    position: absolute;
    bottom:0;
    left: 0;
    display: block;
    width: 100%;
    text-align: center;
    font-size: 75%;

}
*/

#fvBtn{
    position: absolute;
    bottom: 60px;
    left: 0;
    width: 100%;
    height: 120px;
}
#floatBtn{
    display: none;
    position: absolute;
    bottom: 60px;
    left: 0;
    width: 100%;
    height: 120px;
}
#floatBtn.fixed{
    display: block;
    background: rgba(255,255,255,0.8);
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 500;
    -webkit-animation: fadeIn .5s ease forwards;
    -moz-animation: fadeIn .5s ease forwards;
    -o-animation: fadeIn .5s ease forwards;
    animation: fadeIn .5s ease forwards;
}
@keyframes fadeIn {
0% { opacity: 0;}
    100% {opacity: 1;}
}


.fvBtnList {
    width: 904px;
    margin: 0 auto;
    padding: 20px 0;
}
.fvBtnList__item {
    float: left;
    width: 400px;
    margin: 0 26px;
    text-align: center;
    position: relative;
}
.fvBtnList__item.btn01 a{
    background: url(../images/ico_arrow_btn01.png) 90% center no-repeat #f7a319;
    display: block;
    border-radius: 10px;
    color: #fff;
    height: 80px;
    font-size: 150%;
}
.fvBtnList__item.btn01 a .btn span{
    display: block;
    font-size: 16px;
    padding: 10px 0 0 0;
}
.fvBtnList__item.btn02 a{
    background: url(../images/ico_arrow_btn01.png) 90% center no-repeat #f7a319;
    display: block;
    border-radius: 10px;
    color: #fff;
    height: 80px;
    font-size: 150%;
}
.fvBtnList__item.btn02 a .btn span{
    display: block;
    font-size: 16px;
    padding: 10px 0 0 0;
}
.fvBtnList__item.btn02 a{ background-color: #009cbf;}
.fvBtnList__item span.muryo{
    background: #c82c2c;
    display: block;
    border-radius: 50%;
    position: absolute;
    top: -50px;
    left: -12px;
    width: 94px;
    height: 94px;
    line-height: 94px;
    color: #fff;
    text-align: center;
}
.fvBtnList__item p.gentei{
    background: #c82c2c;
    display: block;
    border-radius: 50%;
    position: absolute;
    top: -50px;
    left: -12px;
    width: 84px;
    height: 84px;
    line-height:1.2;
    color: #fff;
    text-align: center;
    font-size: 55%;
}
.fvBtnList__item p.gentei span{
    display: block;
    padding: 28px 0 0 0;
}
.fvBtnList:after{
    content: "";
    display: table;
    clear: both;
}



#container > section h2,
#container > article h2{
    margin-bottom: 70px;
    text-align: center;
    font-size: 312.5%;
    font-weight: 700;
    letter-spacing: 5px;
}
#container > section h2 .catch,
#container > article h2 .catch{
    display: block;
    margin-bottom: 10px;
    font-size: 38%;
    letter-spacing: 0;
}
#container > section h2 .blue,
#container > article h2 .blue{
    color: #009cbf;
    letter-spacing: 0;
    font-weight: 600;
}

/*#container #movie h2,
#container #movie h2{
    font-size: 250.5%;
}
#container #movie h2 .catch,
#container #movie h2 .catch{
    font-size: 38%;
}*/
#container #movie .inner{
    width: 640px;
    margin: 0 auto;
}
#container #movie iframe{
    width: 640px;
    height: 400px;
    margin: 0 auto;
}
#container #reason{
    background: url(../images/bg_reason01.jpg);
}
#container #reason ul{
    background: url(../images/line_dot01.png) 0 0 no-repeat;
    padding-top: 70px;
}
#container #reason ul.block01 {padding-top: 30px;}
#container #reason ul.block01 li{
    clear: both;
    display: table;
    width: 97%;
    margin:0 auto;
    padding: 40px 0;
}
#container #reason ul.block01 li dl{
    display: table-cell;
    vertical-align: middle;
}
#container #reason ul.block01 li dl.reason{
    width: 58%;
    padding:0 40px 0  208px;
}
#container #reason ul.block01 li:first-child{ background: url(../images/ico_reason01.png) 12px center no-repeat;}
#container #reason ul.block01 li:nth-child(2){ background: url(../images/ico_reason02.png) 12px center no-repeat;}
#container #reason ul.block01 li:last-child{ background: url(../images/ico_reason03.png) 12px center no-repeat;}
#container #reason ul.block01 li dl.reason dt,
#container #reason ul.block01 li dl.reason dd{
    display: inline-block;
    line-height: 60px;
}
#container #reason ul.block01 li dl.reason dt{
    margin-right: 2px;
    font-weight: 600;
}
#container #reason ul.block01 li dl.reason dt span{
    display: block;
    font-size: 325%;
    font-weight: 600;
    line-height: 16px;    
}
#container #reason ul.block01 li dl.reason dd span{
    display: block;
    font-size: 218.75%;
    font-weight: 600;
    line-height: 30px;
}
#container #reason ul.block01 li dl.point{
    background: #fff;
    padding: 20px 14px;
}
#container #reason ul.block01 li dl.point dt{
    color: #009cbf;
    font-weight: 600;
}
#container #reason ul.block01 li dl.point dd{
    text-indent: -1em;
    padding-left: 1em;
}
#container #reason ul.block02 li{
    background: #f7a319;
    border-radius: 10px;
    float: left;
    width: 24%;
    margin: 0 1.3% 0 0;
    padding: 24px 0;
    color: #fff;
    text-align: center;
    position: relative;
}
#container #reason ul.block02 li:after {
	bottom: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(247, 163, 25, 0);
	border-bottom-color: #f7a319;
	border-width: 16px;
	margin-left: -16px;
}
#container #reason ul.block02 li:last-child{ margin-right: 0;}
#container #reason ul.block02 li span{
    display: block;
    font-size: 212.5%;
    font-weight: 600;
}
#container #reason ul.block02:after{
    content: "";
    display: table;
    clear: both;
}
#container #rapid{background: #009cbf;}
#container #rapid h2{ color: #fff;}
#container #rapid .slide01 .slick-slide{
    background: #fff;
    margin: 0 10px;
    padding: 27px;
    width: 350px;
    min-height: 465px;
    box-sizing: border-box;
    font-size: 112.5%;
}
#container #rapid .slide01 .slick-slide .title{
    border-bottom: 1px solid #c7c7c7;
    margin-bottom: 20px;
    padding-bottom: 40px;
    position: relative;
}
#container #rapid .slide01 .slick-slide h3{
    font-size: 167%;
    font-weight: 600;
    margin-bottom: 5px;
}
#container #rapid .slide01 .slick-slide .area{
    font-size: 133%;
    font-weight: 600;
    margin-bottom: 10px;
}
#container #rapid .slide01 .slick-slide .subject{
    background: #009cbf;
    position: absolute;
    top: 0;
    right: 0;
    width: 124px;
    height: 124px;
    border-radius: 50%;
    text-align: center;
    color: #fff;
    font-size: 167%;
    font-weight: 600;
}
#container #rapid .slide01 .slick-slide .small{font-size: 100%;}
#container #rapid .slide01 .slick-slide .subject span{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}
#container #rapid .slide01 .slick-slide table{
    width: 100%;
    border: 0;
    border-collapse: collapse;
}
#container #rapid .slide01 .slick-slide table th,
#container #rapid .slide01 .slick-slide table td{
    padding: 5px 0;
    text-align: left;
    vertical-align: top;
}
#container #rapid .slide01 .slick-slide table th{width: 40%;}
#container #about ul{
    background: url(../images/bg_about01.jpg) center top no-repeat;
    padding-top: 400px;
}
#container #about ul li{
    float: left;
    width: 25%;
}
#container #about ul li h3{
    width: 100%;
    margin-bottom: 30px;
    padding: 40% 0 0 0;
    position: relative;
    border-left: 1px solid #e5e5e5;
    border-right: 1px solid #e5e5e5;
    box-sizing: border-box;
}
#container #about ul li:first-child h3{border-left: 2px solid #e5e5e5;}
#container #about ul li:last-child h3{border-right: 2px solid #e5e5e5;}
#container #about ul li h3 > span{
    position: absolute;
    display: block;
    top: 50%;
    left: 0;
    width: 100%;
    transform: translateY(-50%);
    text-align: center;
    font-size: 150%;
    font-weight: 600;
    color: #009cbf;
    line-height: 1.2;
}
#container #about ul li h3 > span span{
    display: block;
    font-size: 158%;
    color: #b92432;
    font-weight: 600;
}
#container #about ul:after{
    content: "";
    display: table;
    clear: both;
}
#container #about ul li p{
    margin: 0 15px 30px;
    text-align: justify;
    letter-spacing: -1px;
}

#container #flow{
    background: url(../images/bg_flow01.png);
}
#container #flow ol{
}
#container #flow ol li{
    background: url(../images/bg_flow02.png) left bottom no-repeat;
    border-top: 2px solid #009cbf;
    float: left;
    width: 400px;
    margin: 0 2% 20px 0;
    padding: 40px 45px;
}
#container #flow ol li h3{
    background-position: right bottom;
    background-repeat: no-repeat;
    font-size: 187.5%;
    color: #009cbf;
    font-weight: 600;
    margin-bottom: 25px;
}
#container #flow ol li:first-child h3{ background-image: url(../images/img_flow01.png);}
#container #flow ol li:nth-child(2) h3{ background-image: url(../images/img_flow02.png);}
#container #flow ol li:nth-child(3) h3{ background-image: url(../images/img_flow03.png);}
#container #flow ol li:last-child h3{ background-image: url(../images/img_flow04.png);}

#container #flow ol li h3 span{
    display: block;
    font-size: 176.6%;
    font-weight: 600;
    line-height: 1;
    margin-bottom: 5px;
}

#container #flow ol li:nth-child(even){ margin-right: 0;}
#container #flow ol li a{border-bottom: 2px solid #009cbf;}
#container #flow ol li a:hover{border-bottom: 0;}
#container #flow ol:after{
    content: "";
    display: table;
    clear: both;
}
#container #results{
    background: url(../images/bg_results01.png);
    position: relative;
    padding: 165px 0 150px;
    border-bottom: 30px solid #009cbf;
}
#container #results > p{
    background: #009cbf;
    width: 100%;
    padding: 20px 0;
    position: absolute;
    top: 0;
    left: 0;
    text-align: center;
    color: #fff;
    font-size: 150%;
    line-height: 1;
}
#container #results table{
    border: 2px solid #a0a0a0;
    background: #fff;
    width: 500px;
    margin: 0 auto 70px;
    font-size: 125%;
}
#container #results table th,
#container #results table td{
    padding: 5px 0 5px 40px;
    text-align: left;
}
#container #results table tr:first-child th,
#container #results table tr:first-child td{ padding-top: 20px;}
#container #results table tr:last-child th,
#container #results table tr:last-child td{ padding-bottom: 20px;}

#container #results table td{ width: 44%;}
#container #results ul li.slick-slide{
    background: #fff;
    border:2px solid #009cbf;
    width: 680px;
    margin: 0 15px;
    text-align: center;
    z-index: 1;
}
#container #results ul li dl dt{
    background: #009cbf;
    padding: 15px 0;
    font-size: 125%;
    color: #fff;
    line-height: 1;
}
#container #results ul li dl dd{
    padding: 35px 0;
    width: 100%;
    text-align: center;
}
#container #results ul li dl dd img{
    margin: 0 auto;
}
#container #results ul .slide-arrow{
    position: absolute;
    top: 50%;
    left: 50%;
    z-index:5;
    cursor: pointer;
    width: 66px;
    height: 123px;
}
#container #results ul .slick-prev{ transform: translate(-413px,-50%);}
#container #results ul .slick-next{ transform: translate(350px,-50%);}
#container #results ul .slick-dots {
    bottom: -60px;
}
#container #results ul .slick-dots li button {
    width: 15px;
    height: 15px;
    padding: 0;
}
.slick-dots li button:before {
    background: #dcdcdc;
    border-radius: 50%;
    width: 15px;
    height: 15px;
    content: ' ';
    opacity: 1;
}
.slick-dots li.slick-active button:before {
    opacity: 1;
    background: #009cbf;

}
#container #voice{
    background: #f5f5f5;
}
#container #voice article{ margin-bottom: 90px;}
#container #voice article .titleBox{
    background-position: 0 0 ;
    background-repeat: no-repeat;
    height: 440px;
    position: relative;
}
#container #voice article:first-of-type .titleBox{ background-image:url(../images/bg_voice01.jpg);}
#container #voice article:nth-of-type(2) .titleBox{ background-image:url(../images/bg_voice03.jpg);}
#container #voice article .titleBox .text{
    position: absolute;
    top: 50%;
    left: 60px;
    transform: translateY(-50%);
}
/*#container #voice article:nth-of-type(even) .titleBox .text{
    position: absolute;
    top: 50%;
    left: 510px;
    transform: translateY(-50%);
}*/
#container #voice article .titleBox .text h3{
    margin-bottom: 35px;
    font-size: 112.5%;
}
#container #voice article .titleBox .text h3 > span{
    font-size: 488%;
    color: #189cbb;
    font-family: 'Noto Sans Japanese';
    display: inline-block;
    padding-left: 30px;
    position: relative;
    line-height: 1;
}
#container #voice article .titleBox .text h3 > span span{
    font-size: 29%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(-25%,-50%) rotate(-90deg);
    display: block;
    line-height: 1;
    margin: 0;
    padding: 0;
}
#container #voice article table{
    width: 100%;
    border: 0;
    border-collapse: collapse;
}
#container #voice article table th{
    border-bottom: 1px solid #a0a0a0;
    width: 215px;
    padding: 25px 30px;
    font-size: 118.75%;
    color: #189cbb;
    text-align: left;
    vertical-align: middle;
}
#container #voice article table td{
    padding: 25px 10px 25px 30px;
    border-bottom: 1px solid #a0a0a0;
    vertical-align: middle;
}
#container #voice article table tr:first-child th,
#container #voice article table tr:first-child td{
    background: #189cbb;
    border: 0;
    color: #fff;
}
footer{
    background: #009cbf;
    padding: 70px 0 150px;
    color: #fff;
}
footer ul{
    margin-bottom: 60px;
    text-align: center;
}
footer ul li{
    display: inline-block;
    margin: 0 15px;
}
footer ul li a{ color: #fff;}
footer ul li a:hover{
    text-decoration: underline;
    opacity: 1;
}
footer #copyRight{
    text-align: center;
}

/*2019 0313 START*/
.catchphrase{
    padding: 10px 0;
    width: 100%;
    background: #c62e31;
}
.catchphrase p{
    width: 1000px;
    margin: 0 auto;
    text-align: center;
    color: #fff;
    font-weight: bold;
    font-size: 20px;
}
/*2019 0313 END*/

/*2020 0410 START*/
#present_navi{
    padding:38px 0 10px 0!important;
    width: 100%;
    background: #e6551c;
    position: relative;
}
#present_navi .img{
    width: 1000px;
    margin: 0 auto;
    text-align: center;
}
#present_navi .text{
    text-align: center;
    width: 155px;
    margin: 0 auto;
}
#present_navi .btn{
    text-align: center;
    width: 60px;
    margin: 0 auto;
    padding: 0;
    display: block;
}
#present_navi .btn img{
    width: 60px;
    margin: 0 0 -45px 0;
}

#present{
    margin: 0 !important;
    padding: 0 0 70px 0 !important;
    background: #fafafa;
}
#present h2{
    margin: 0 !important;
    padding: 15px 0;
    color: #fff;
    font-size: 32px !important;
    font-weight: bold;
    background: #e6681c;
}
#present .inner{
    padding: 60px 0 5px 0;
}
#present p.text{
    margin: 40px 0 0 0;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
}
#present p.btn{
    margin: 15px 0 0 0;
    text-align: center;
}
/*2020 0410 END*/



/***** アプリ紹介コンテンツ *****/
section#app_info {
    padding-top: 45px;
    padding-bottom: 0;
    background: url(../images/app_info_bg.gif) repeat;
}
#app_info .app_info_ttl {
    position: relative;
    margin-bottom: 20px;
    padding: 30px 0 30px 10px;
    font-size: 42px;
    font-weight: bold;
    color: #009cbf;
    text-align: center;
    letter-spacing: 0;
}
#app_info .app_info_ttl:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background: url(../images/app_info_arupaka.png) no-repeat;
    background-size: 80px 107px;
    width: 80px;
    height: 107px;
}
#app_info .app_info_ttl:after {
    content: "";
    position: absolute;
    top: 15px;
    right: 0;
    background: url(../images/app_info_kawauso.png) no-repeat;
    background-size: 76px 93px;
    width: 76px;
    height: 93px;
}
.app_info_ttl_sub {
    margin-bottom: 20px;
    padding: 8px;
    font-size: 32px;
    font-weight: bold;
    background: #009cbf;
    color: #ffffff;
    text-align: center;
}
.app_info_feature {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 50px;
}
.app_info_feature__item {
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    width: 50%;
}
.app_info_feature__img img {
    vertical-align: bottom;
    max-width: 100%;
}
.app_info_feature__txt {
    padding: 40px;
    background: #ffffff;
    color: #535353;
}
.app_info_feature__ttl {
    margin-bottom: 20px;
    font-size: 28px;
    font-weight: bold;
    letter-spacing: 0.1em;
}
.app_info_feature__body {
    line-height: 1.6;
}
.u-marker {
    font-style: normal;
    font-weight: bold;
    background: linear-gradient(transparent 70%, #fff100 70%);
}

.app_info_dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.app_info_dl__img {
    order: -1;
    margin-left: 40px;
    margin-right: 40px;
    line-height: 1;
}
.app_info_dl img {
    vertical-align: bottom;
}
.app_info_dl__txt {
}
.app_info_dl__ttl {
    margin-bottom: 15px;
    font-size: 30px;
    font-weight: bold;
    color: #e6551c;
}
.app_info_dl_list {
    display: flex;
}
.app_info_dl_list__item {
    margin-right: 30px;
    text-align: center;
}
.app_info_dl_list__qr {
    margin-top: 10px;
}


/***** 採用情報スライダー *****/
#rapid .inner {
    width:100%;
}
#rapid .jobInfoSlide {
    margin-bottom: 102px;
}
#rapid article {
    width: 19.23vw ;
    margin: 0 10px;
    padding: 30px 28px 10px 28px;
    box-sizing: border-box;
    min-height: 340px;
    background: #ffffff;
}
#rapid article .ico_area {
    width: 100px;
    height: 100px;
    margin: 0 auto 22px;
    border-radius: 100px;
    background: #86ac6f;
    display: flex;
    justify-content: center;
    align-items: center;
}
#rapid article .ico_area a {
    font-size: 171%;
    color: #ffffff;
}
#rapid article p.rapid_title a {
    font-weight: 400;
}

/* slick style */
#rapid .jobInfoSlide .slick-prev::before {
   content: url(../images/ico_jobInfoSlide_prev.png);
    width: 60px;
    height: 60px;
 }
#rapid .jobInfoSlide .slick-next::before {
   content: url(../images/ico_jobInfoSlide_next.png);
    width: 58px;
    height: 60px;
}
#rapid .jobInfoSlide .slick-prev {
    left:0px;
    width: 60px;
    height: 60px;
    z-index:1;
}
#rapid .jobInfoSlide .slick-next {
    right:0;
    z-index:1;
    width: 58px;
    height: 60px;
    display: block;
}
#rapid .jobInfoSlide .slick-dots {
    height: 10px;
    bottom: -50px;
    line-height: 10px;
    justify-content: center;
}
#rapid .jobInfoSlide .slick-dots li {
    margin: 0 5px 0 0;
}
#rapid .jobInfoSlide .slick-dots li button {
    height: 10px;
}
#rapid .jobInfoSlide .slick-dots li button::before {
    color: #ffffff;
    font-size: 10px;
    line-height: 10px;
    width: 10px;
    height: 10px;
    opacity: 0.25;
    background: #ffffff;
}
#rapid .jobInfoSlide .slick-dots li.slick-active {
    height: 10px;
}
#rapid .jobInfoSlide .slick-dots li.slick-active button::before {
    opacity: 1;
}

/* カテゴリー */
.ico_category li.ico_status a{ background: #ee4e15;}
.ico_category li.ico_status.end a{ background: #235f85;}
.ico_category li.ico_area a{ background: #86ad71;}
.ico_category li.ico_subject a{ background: #71adac;}
.ico_category li.ico_form a{ background: #7178ad;}
.ico_category li.ico_classification a{ background: #ee6464;}
.ico_category li.ico_charge a{ background: #009cbd;}
.ico_category li.ico_graduate a{ background: #c9b006;}
.ico_category li.ico_college a{ background: #e28496;}

#rapid ul{
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin: 5px 0 0 0;
}
#rapid ul li{
    margin: 5px 5px 5px 0;
    font-size: 12px;
}
#rapid ul li a{
    color: #fff;
    display: block;;
    height: 26px;
    line-height: 26px;
    text-align: center;
    padding: 0 6px;
    box-sizing: border-box;
    min-width: 46px;
}
#rapid ul li.area a{ background: #009cbd;}
#rapid ul li.subject a{ background: #00bd78;}
#rapid ul li.form a{ background: #9e58c2;}
#rapid ul li.classification a{ background: #e24d85;}

#rapid ul li a:hover{
    text-decoration: none;
    opacity: 0.8;
}


#rapid .btn_bottom {
    margin: 30px 0;
}
#rapid .btn_bottom .more {
    height: 50px;
    border-radius: 25px;
    padding: 0 20px;
    margin: 0 auto;
    display: block;
    width: 260px;
    box-sizing: border-box;
}
.btn_b5 {
    border: 2px solid #fff;
    background: #009cbd;
    color: #fff;
    cursor: pointer;
}

/*20220614*/
#container #flow ol li {
    background: #fff;
    border: 2px solid #349cbd;
    width: 395px;
    padding: 40px;
}

#container #flow ol li .head {
    display: flex;
    align-items: center;
}

#container #flow ol li .head h3 {
    margin-bottom: 0;
    word-break: keep-all;
    min-height: unset !important;
    font-size: 30px;
    margin-left: 16px;
    background: none !important;
}

#container #flow ol li .box .img img {
    width: 100%;
}

#container #flow ol li .img {
    margin: 20px auto;
}

#container #flow ol li .box {
    display: flex;
    align-items: center;
}

#container #flow ol li .btn_r1 {
    display: block;
    text-align: center;
    font-size: 16px;
    width: 216px;
    padding: 16px 0;
    border-radius: 4px;
    border: 2px solid #cc0026;
    background: #cc0026;
    color: #fff;
    line-height: 1;
    box-sizing: border-box;
}

#container #flow ol li .btn_r1 span {
    font-size: 10px;
    display: inline-block;
    padding: 4px 6px;
    margin-right: 8px;
    vertical-align: middle;
    line-height: 1;
    border-radius: 9px;
    background: #fff;
    color: #cc0026;
}

#container #flow .btn_r1:hover {
    border: 2px solid #cc0026;
    background: #fff;
    color: #cc0026;
}

#container #flow .btn_r1:hover span {
    background: #cc0026;
    color: #fff;
}

#container #flow ol li .box .img {
    width: 42%;
    margin: 40px 0 35px;
    margin-right: 18px;
}

#container #flow ol li p {
    font-size: 16px;
    line-height: 1.6;
}

#container #flow ol li p span {
    color: #ff780a;
    font-size: 18px;
    font-weight: bold;
}

#flow .txt {
    text-align: center;
    font-size: 15px;
    line-height: 1.7;
    margin: 40px auto 0;
}

#flow .txt span {
    font-size: 18px;
    color: #349cbd;
    font-weight: bold;
}

#flow .entryflow_btn {
    display: block;
    width: 480px;
    margin: 25px auto 0;
    height: 65px;
    line-height: 65px;
    text-align: center;
    border-radius: 32px;
    color: #fff;
    background: #349cbd;
    font-size: 20px;
    background-image: url(../images/icon_arrow_right.png);
    background-repeat: no-repeat;
    background-size: 7px;
    background-position: 95%;
}

#flow .entryflow_btn:hover {
    text-decoration: underline;
}

#faq h2 {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif" !important;
    font-size: 25px !important;
    font-weight: normal !important;
    letter-spacing: 0 !important;
    margin-bottom: 55px !important;
}

#faq h2 span {
    font-size: 35px;
    color: #349cbd;
}

#faq article {
    border-bottom: 2px solid #dcdcdc;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

#faq article .question {
    background: url(../images/ico_plus_qa.png) right center no-repeat;
    background-size: 6.25% auto;
    padding: 45px 50px;
    font-size: 142.8%;
    color: #000;
    position: relative;
    cursor: pointer;
}

#faq article .question {
    padding-right: 55px;
}

#faq article .question.open {
    background: url(../images//ico_minus_qa.png) right center no-repeat;
    background-size: 6.25% auto;
}

#faq article .question::before {
    content: "Q";
    font-size: 150%;
    color: #009cbd;
    font-weight: 700;
    position: absolute;
    top: 42px;
    left: 0;
    line-height: 1;
}

#faq article .answerBox {
    border-bottom: 2px solid #dcdcdc;
    display: none;
}

#faq article .answerBox .answer {
    padding: 30px 0 0 40px;
    font-size: 114.3%;
    position: relative;
}

#faq article .answerBox .answer:before {
    content: "A";
    font-size: 187.5%;
    color: #009cbd;
    font-weight: 700;
    position: absolute;
    top: 28px;
    left: 0;
    line-height: 1;
}

#faq article .answerBox p {
    line-height: 1.8;
    font-size: 25px;
}

#faq article .answerBox>p {
    padding: 0 0 30px 50px;
    font-size: 114.3%;
}

#faq article .answerBox p a {
    color: #349cbd;
}

#faq article .answerBox p a:hover {
    text-decoration: underline
}

#faq .bnr {
    width: 720px;
    margin: 80px auto 0;
}