@charset "utf-8";
#saiyou .news h4:before,
.inner .news h4,
.news h4:before {
    line-height: 30px;
    text-align: center
}

#saiyou .news h4:before,
.btn,
.cont_color_rec .revlink,
.fullrec,
.grafs ul li,
.inner .news h4,
.news h4:before,
a .about h4,
a .about p {
    text-align: center
}

@font-face {
    font-family: marugo;
    src: url(font/marugobase.otf) format('opentype')
}

.news h4:before {
    content: 'NEWS';
    display: block;
    font-size: 23px
}

#saiyou .news h4:before {
    content: 'JOB NEWS';
    display: block;
    font-size: 23px
}

.inner .news h4 {
    color: #555;
    font-size: 15px;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    top: -30px;
    margin: auto
}

.cont_wht .inner .news {
    background-color: #F6F3F3;
    position: relative;
    margin-top: 50px;
    margin-bottom: 0
}

.inner .news ul {
    width: 90%;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    display: block;
    padding-top: 70px;
    padding-bottom: 20px;
    position: relative
}

.news ul li {
    list-style-type: none;
    display: block;
    position: static;
    margin-bottom: 20px;
    clear: both;
    float: none
}

.news ul li time {
    margin-right: 30px;
    color: #777;
    font-size: 12px;
    float: left
}

.news ul li time:before {
    content: '●';
    color: #A7AF5F;
    margin-right: 5px
}

.news ul li a,
.news ul li a:hover {
    display: block;
    color: #333
}

.news ul li h5 {
    font-weight: 400;
    font-size: 14px
}

.news ul li a:hover {
    text-decoration: underline
}

#anser:hover,
.btn:hover,
.flex-container .cel a:hover,
.foots .inner nav ul li a,
.inner .news h4+a,
.rec_menu .rec_sub li a:hover,
a,
a:focus {
    text-decoration: none
}

.inner .news h4+a {
    background-color: #4194AA;
    position: absolute;
    top: 0;
    right: 0;
    color: #FFF;
    transition: .4s;
    padding: 15px
}

.inner .news h4+a:hover {
    background-color: #F66829;
    width: auto
}

.flex-container_column {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    flex-direction: column
}

.flex-container {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.flex-container .cel {
    width: 22%;
    height: auto;
    margin: 10px;
    overflow: hidden;
    position: relative;
    background-color: #FFF
}

.full {
    margin-bottom: -30px
}

.fullrec {
    margin-bottom: 0
}

.btn p {
    font-weight: 700;
    font-size: 18px!important
}

#last {
    margin-top: 60px
}

.cont_wht .wrapper {
    width: 75%;
    margin-left: 15%;
    margin-right: auto;
    margin-bottom: 100px
}

.btn p span {
    /* margin-top: 15px;*/
    display: block
}

.flex-container_column .cel .left {
    display: inline-block;
    vertical-align: top;
    width: 20%;
    background-color: #78D5EA;
    position: relative;
    height: 210px
}

.flex-container_column .cel .right {
    display: inline-block;
    vertical-align: top;
    width: 79.5%;
    margin: 0;
    padding: 20px 20px 0
}

.inner .flex-container_column .buttn {
    width: 100%;
    height: auto;
    margin-top: 0;
    margin-bottom: 0
}

.buttn ul li,
.buttn ul li:last-child {
    width: 48.5%;
    display: inline-block;
    vertical-align: top
}

.buttn ul li:last-child {
    margin-left: 15px
}

#kaigyoup,
.nomalp {
    display: block!important;
    font-size: 16px!important
}

.buttn li a img {
    width: 100%;
    height: auto
}

.nomalp {
    /*padding-top: 40px!important*/
}

#kaigyoup {
    padding-top: 20px!important
}

.inner .flex-container_column .cel {
    border: 1px solid #D0CFCF;
    background-color: #FFF
}

.flex-container_column .cel .left img {
    width: 100%;
    height: 100%
}

.flex-container_column .cel .right h4 {
    font-weight: 700;
    font-size: 18px;
    line-height: 40px;
    border-left: 5px solid #CBC9C9;
    padding-left: 20px
}

.grafs ul li:nth-child(1):before,
.grafs ul li:nth-child(2):before,
.grafs ul li:nth-child(3):before {
    content: '■';
    font-size: 16px;
    margin-right: 5px
}

#fullds,
#fulls,
#graf {
    padding-bottom: 60px
}

#graf .grafs canvas {
    width: 100%;
    height: 250px
}

#graf .grafs h4 {
    text-align: center;
    display: block;
    line-height: 80px
}

#graf .grafs ul {
    margin-top: 40px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}

.grafs ul li {
    width: auto;
    display: inline-block;
    vertical-align: top;
    padding-left: 20px;
    padding-right: 20px
}

.multiple-item li a,
.multiple-item li a:hover {
    display: block
}

.grafs ul li:nth-child(1):before {
    color: #E6C8C5
}

.grafs ul li:nth-child(2):before {
    color: #C9E3EB
}

.grafs ul li:nth-child(3):before {
    color: #ccc
}

a .about p,
a:active {
    color: #FFF
}

.sliderbottom {
    padding-bottom: 20px
}

.multiple-item li a img {
    -moz-transition: -moz-transform .5s linear;
    -webkit-transition: -webkit-transform .5s linear;
    -o-transition: -o-transform .5s linear;
    -ms-transition: -ms-transform .5s linear;
    transition: transform .5s linear;
    z-index: 1
}

.multiple-item li a img:hover {
    z-index: 1;
    opacity: .7;
    outline: #FFF solid 0
}

.flex-container .cel .about {
    background-color: #80C269;
    background-image: url(../images/bg/greenbg_03.png);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 100% 100%;
    padding-bottom: 15px;
    padding-top: 10px;
    z-index: 2;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: auto;
    margin: 20px 0 0
}

a .about h4 {
    color: #FFF;
    line-height: 35px;
    font-weight: 700
}

a .about p {
    line-height: 20px;
    margin: 0
}

.flex-container .cel img {
    width: 100%;
    height: auto;
    -moz-transition: -moz-transform .5s linear;
    -webkit-transition: -webkit-transform .5s linear;
    -o-transition: -o-transform .5s linear;
    -ms-transition: -ms-transform .5s linear;
    transition: transform .5s linear;
    z-index: 1;
    margin: 0 0 80px
}

.btn:after,
a {
    transition: .3s all ease
}

.flex-container .cel img:hover {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
    z-index: 1
}

.btn:before,
.btn:hover:after {
    transform: rotate(45deg)
}

.sankaku_bottom {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 40px 40px 0;
    border-color: #4194AA transparent transparent;
    margin: 20px auto
}

*,
::after,
::before {
    box-sizing: border-box
}

a {
    color: #333
}

a:hover {
    color: tomato
}

.wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 100px
}

.cont_color_rec .revlink,
.foots small {
    display: block;
    color: #FFF
}

.btn {
    width: 200px;
    height: 200px;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 700;
    position: relative;
    margin-right: 150px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.btn:nth-child(1),
.btn:nth-child(3) {
    margin-top: -150px
}

.btn:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    border-radius: 3px;
    border: 3px solid tomato
}

.btn:nth-child(1):after,
.btn:nth-child(2):after {
    transition: .3s all ease;
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    border-radius: 3px
}

.btn:nth-child(1):after {
    border: 3px solid #7ecef4
}

.btn:nth-child(2):after {
    border: 3px solid #f29c9f
}

.btn:nth-child(3):after,
.btn:nth-child(4):after {
    transition: .3s all ease;
    border-radius: 3px;
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0
}

.btn:nth-child(3):after {
    border: 3px solid #f8b551
}

.btn:nth-child(4):after {
    border: 3px solid #89c997
}

.btn:before {
    content: '';
    position: absolute;
    border-radius: 3px;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    background: #FCF5EB;
    z-index: -1
}

.btn:active {
    transform: scale(1.1)
}

.btn:active:before {
    background-color: #f1481b
}

.btn:active:after {
    border-color: #f1481b
}

.slick-next:before,
.slick-prev:before {
    color: #000
}

.slick-next {
    right: 20px;
    z-index: 99
}

.slick-prev {
    left: 15px;
    z-index: 100
}

.slick-dots li button:before,
.slick-dots li.slick-active button:before {
    color: #fff
}

img {
    max-width: 100%;
    height: auto
}

.center-item li img {
    width: 100%;
    height: 100%
}

.gray {
    -webkit-filter: saturate(10%);
    -moz-filter: saturate(10%);
    -o-filter: saturate(10%);
    -ms-filter: saturate(10%);
    filter: saturate(10%)
}

.cont_color .multiple-item {
    padding-bottom: 80px
}

.cont_color_rec .revlink {
    width: 20%;
    height: 80px;
    line-height: 80px;
    font-size: 20px;
    background-color: #4194AA;
    font-weight: 700;
    border-radius: 3px;
    -webkit-box-shadow: 2px 2px 5px #5A5858;
    box-shadow: 2px 2px 5px #5A5858;
    z-index: 2;
    position: relative;
    letter-spacing: 3px;
    transform: .3s;
    margin: -40px auto 50px
}

.cont_color_rec .revlink:hover {
    background-color: #F88654;
    text-decoration: none
}

.cont_color_rec .center-item {
    z-index: 1;
    position: relative
}

.forms {
    width: 800px;
    height: auto;
    background-color: #FFF;
    border: 1px solid #D0CDCD;
    border-radius: 3px;
    margin: 0 auto 50px;
    padding: 20px
}

.forms table tbody tr td,
.forms table tbody tr th {
    margin-top: 5px;
    border-bottom: 1px dashed #D0CDCD;
    text-align: left
}

.forms table {
    width: 100%;
    height: auto;
    margin-left: auto;
    margin-right: auto
}

.forms table tbody tr th {
    width: 40%;
    padding: 10px
}

.forms table tbody tr td {
    width: 60%;
    border-left: 1px dashed #D0CDCD;
    padding: 10px 10px 10px 30px
}

.foots .inner h6,
.foots small,
.postmd .inner h3 {
    text-align: center
}

body footer {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0
}

.foots {
    background-color: #78D5EA;
    padding-bottom: 10px;
    padding-top: 50px
}

.foots .inner nav {
    width: 100%;
    display: block;
    margin-top: 20px;
    margin-bottom: 20px
}

.foots .inner nav ul li {
    width: auto;
    height: auto;
    display: inline-block;
    vertical-align: top;
    border-right: 1px solid #fff;
    margin: 0;
    padding: 0
}

.foots .inner nav ul li:last-child {
    border-right: 0 solid #B7B6B6
}

.foots .inner nav ul li a {
    display: block;
    transition: .4s;
    margin-left: -2px;
    padding: 10px
}

.foots .inner h6,
.inner h6 img {
    height: auto;
    margin-left: auto;
    margin-right: auto
}

.foots .inner nav ul li a:hover {
    background-color: rgba(255, 255, 255, .7)
}

.foots .inner h6 {
    width: 250px
}

.foots .inner h6 p {
    font-size: 16px;
    font-family: "Lucida Grande", "segoe UI", "ヒラギノ丸ゴ ProN W4", "Hiragino Maru Gothic ProN", Meiryo, Arial, sans-serif;
    color: #FFF;
    letter-spacing: 2px
}

.inner h6 img {
    width: 90%
}

.seopr h2 {
    font-size: 18px;
    padding-top: 50px;
    display: block
}

.seopr h2:last-of-type {
    font-size: 18px;
    padding-bottom: 0;
    display: block
}

.seopr p:last-of-type {
    padding-bottom: 50px;
    display: block
}

.inner .jobpr h2 {
    font-size: 18px;
    margin-top: 100px
}

.inner .jobpr h2:first-of-type {
    font-size: 18px;
    margin-top: 0
}

article .intver.senpai .left {
    background-color: #E0E3C8;
    margin-left: 40px;
    width: 85%
}

article .intver.senpai h4 {
    text-align: right;
    display: block;
    font-weight: 400;
    font-size: 12px;
    margin-bottom: 60px;
    padding-right: 15%
}

.flex-container .seido {
    width: 25%;
    height: 100px;
    background-color: #fff;
    position: relative;
    margin: 10px;
    border: 1px solid #fff;
    background-size: 200px auto;
    padding: 20px
}

.flex-container .seido .in,
.flex-container .seido .ins {
    padding: 15px;
    display: block
}

.flex-container .seido .in {
    background-color: #FCF5EB;
    height: 60px
}

#anser,
.messe,
.rec_menu {
    height: auto
}

.inner .jobpr p:last-of-type {
    margin-bottom: 100px;
    display: block
}

.seido .in h4,
.seido .ins h4 {
    text-align: center;
    line-height: 35px
}

#anser {
    width: 100%;
    background-color: #80C269;
    text-align: center;
    display: block;
    transition: .5s;
    color: #fff;
    line-height: 80px;
    border-radius: 5px;
    font-size: 18px;
    margin: 30px auto 60px
}

.rec_menu {
    width: 100%;
    display: block;
    background-color: #4194AA
}

.rec_menu .rec_sub {
    width: 1000px;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    display: block
}

.rec_menu .rec_sub li {
    display: inline-block;
    width: 16.3%;
    vertical-align: top;
    text-align: center
}

.rec_menu .rec_sub li a {
    padding-top: 20px;
    padding-bottom: 20px;
    display: block;
    color: #fff;
    font-size: 16px
}

.intver .left h4,
.intver .right h4 {
    font-size: 12px;
    font-weight: 400
}

.rec_menu .rec_sub li a:hover {
    background-color: rgba(255, 255, 255, .3)
}

#anser:hover {
    background-color: #F8B551
}

.messe {
    width: 100%;
    background-image: url(../images/bg/aisatubg_03.png);
    text-align: left;
    margin: 0;
    padding: 25px
}

.youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%
}

.intver .left,
.intver .right {
    clear: both;
    float: none;
    padding: 20px
}

.youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%!important;
    height: 100%!important
}

.intver {
    margin-top: 100px;
    margin-bottom: 100px
}

.intver .right {
    display: block;
    width: 80%;
    background-color: #d9d9d9;
    border-radius: 20px;
    margin: 40px 0 40px auto
}

.intver .right .text,
.intver .right img {
    display: inline-block;
    vertical-align: top
}

.inner.full article h5 {
    text-align: center
}

.lastspace {
    margin-bottom: 100px
}

.intver .right h4 {
    text-align: right
}

.intver .right .text {
    width: 80%;
    margin-right: 0
}

.intver .right img {
    width: 15%;
    margin-left: 30px;
    border-radius: 180px
}

.inner .wrapper.shisetu img {
    width: 100%;
    height: auto
}

.intver .left {
    display: block;
    width: 80%;
    background-color: #e1f4d0;
    border-radius: 20px;
    margin: 20px auto 20px 0
}

.intver .left .text,
.intver .left img {
    display: inline-block;
    vertical-align: top
}

.inner .faq h4,
.intver .left img,
.maru li a img {
    border-radius: 180px
}

.intver .left .text {
    width: 80%;
    margin-right: 0
}

.intver .left img {
    width: 15%;
    margin-right: 30px
}

#saiyou .cont_wht .wraps,
.wrapper.kobetu {
    width: 1000px;
    float: none;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    z-index: 1;
    clear: both
}

.wrapper.shisetu #three p {
    display: block;
    margin-top: 50px!important
}

#threes:hover,
#threesy:hover,
#twos:hover {
    background-color: #EF2664
}

.wrapper.kobetu {
    height: 450px
}

.cont_wht .wraps .prsap {
    display: block;
    margin-bottom: 50px;
    height: auto
}

.wrapper.kobetu .prsapace h3,
.wraps .prsap h3 {
    border-bottom: 1px solid #ccc;
    line-height: 45px;
    margin-bottom: 20px;
    display: block
}

#saiyou .cont_wht .wraps {
    height: auto
}

.wrapper.kobetu .btn {
    cursor: default;
    position: absolute;
    left: 0;
    top: 120px;
    z-index: 2
}

.cont_wht .wrapper.kobetu .prsapace {
    width: 60%;
    position: absolute;
    right: 0;
    bottom: 0
}

.maru li a img:hover {
    outline: 0!important
}

.maru {
    display: block;
    padding-bottom: 50px
}

#lh_nomal {
    line-height: 30px;
    padding-top: 50px
}

.comment h5,
.comment p,
.comment p strong {
    line-height: 25px;
    text-align: left
}

.inner .faq h4 {
    display: block;
    background-color: #4194AA;
    color: #FFF;
    padding-top: 5px;
    padding-bottom: 15px
}

.inner .faq .a_text {
    width: 100%;
    display: block;
    margin: 0 auto 40px
}

.inner .faq .a_text:before,
.inner .faq h4:before {
    margin-right: 30px;
    margin-left: 30px;
    font-size: 30px;
    font-family: marugo
}

.faq .a_text p {
    width: 90%;
    display: inline-block;
    vertical-align: top
}

.inner .faq .a_text:before {
    content: 'A';
    margin-top: 20px;
    color: #F8084B;
    width: auto;
    display: inline-block;
    vertical-align: top
}

#footau,
#workspase,
.accordion h3:before,
.r_md,
h3 a .staffmd,
tr td .syokusyus {
    display: block
}

.inner .faq h4:before {
    content: 'Q'
}

.inner .nomaltb table {
    width: 98%;
    margin-top: 0;
    margin-bottom: 50px
}

tr td .syokusyus {
    margin-top: 30px;
    border-top: 1px dashed #D3D3D3
}

dd,
dt {
    font-size: 14px!important
}

dd {
    margin-bottom: 20px
}

.r_md {
    background-color: #EFEFEF;
    padding: 10px
}

td p a {
    color: #DD8301
}

.inner .nomaltb table tbody tr th {
    width: 10%;
    background-color: #ECECEC;
    text-align: left;
    font-size: 16px;
    padding: 10px
}

.inner .nomaltb table tbody tr td {
    width: 40%;
    border-top: 1px solid #ECECEC;
    border-right: 1px solid #ECECEC;
    border-bottom: 1px solid #ECECEC;
    padding: 10px
}

.accordion h3:before,
.inner .posts h3:before {
    content: "";
    border-top: solid 0 #ccc
}

.inner .forms input[type=submit] {
    display: block;
    margin-left: auto;
    margin-right: auto
}

tr td #zip {
    width: 100px
}

#workspase {
    padding-top: 40px;
    padding-bottom: 50px
}

.worksp {
    padding-top: 30px;
    padding-bottom: 30px
}

h3 a .staffmd {
    height: auto;
    overflow: hidden;
    clear: both
}

a .staffmd img {
    width: 165px;
    height: auto;
    float: left;
    margin-right: 20px
}

.staffmd h4,
.staffmd p {
    float: left
}

.staffmd p {
    float: left;
    margin-left: 20px;
    margin-top: -4px
}

.comment h5 {
    font-weight: 400;
    margin: 0 0 -10px
}

.accordion .morepr {
    height: auto;
    padding-bottom: 50px;
    padding-top: 50px;
    text-align: left;
    margin: -40px 0 0
}

.accordion {
    margin: 0 0 30px
}

.accordion-open {
    background-color: #B9BF7F;
    padding: 20px;
    color: #000;
    font-weight: 700;
    font-size: 20px;
    height: auto;
    overflow: hidden
}

#footau {
    margin-top: 100px
}

.accordion-on {
    background-color: #fff
}

.accordion-contents {
    background: #FCFBF5;
    padding: 20px;
    color: #333;
    display: none
}

.comment p {
    font-weight: 400
}

.comment {
    display: block;
    float: left;
    width: 75%;
    margin-top: 30px
}

.accordion .morepr .panelsp {
    margin-bottom: 40px
}

.accordion .morepr h5 {
    color: #F88654;
    height: auto
}

.accordion .accordion-open img {
    width: 170px;
    height: auto;
    float: left;
    margin-right: 30px
}

.accordion .accordion-open h4 {
    text-align: left;
    display: inline-block;
    width: auto;
    vertical-align: top;
    float: left
}

.accordion .accordion-open span {
    font-size: 14px;
    font-weight: 400;
    margin-left: 0
}

.posts .intver.senpai .nametitle {
    text-align: right;
    display: block;
    margin-right: 60px;
    margin-bottom: 40px
}

.nomaltb tr td ul {
    width: 49%;
    display: inline-block;
    vertical-align: top;
    padding: 10px 10px 10px 20px
}

.nomaltb tr td ul li {
    width: 100%;
    display: block;
    list-style-type: none;
    line-height: 30px
}

.children,
.inner .posts .exlist {
    width: 90%;
    height: auto;
    margin-left: auto;
    margin-right: auto
}

.pagenav .pagecount .next,
.pagenav .pagecount .pre {
    width: 49%;
    display: inline-block;
    vertical-align: top
}

.posts .exlist ul {
    margin-bottom: 20px
}

.pagenav .pagecount .next {
    text-align: right
}

.inner .posts h3:before {
    display: block
}

.prsap .thimg img {
    width: 33%;
    height: auto;
    display: inline-block;
    vertical-align: top
}

.in h4 span,
.ins h4 span {
    font-size: 13px;
    margin-left: 10px
}