@charset "UTF-8";

/* CSS Document */


/* ------大阪・福岡共通--------- */

.projects_ttl_oosaka,
.projects_ttl_fukuoka {
    width: 700px;
    height: 110px;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    border: none;
    margin-top: 30px;
}

.projects_p {
    width: 660px;
    padding: 11px 20px;
    font-size: 14px;
    line-height: 24px;
    background-color: #fff;
    margin: 12px 0 30px 0;
}

.merit_list {
    padding: 0 0 60px;
}

.merit_list:after {
    display: block;
    content: "";
    clear: both;
}

.merit_list li {
    position: relative;
    height: 180px;
    background-color: #fff;
    border: 1px solid #ddd;
    -moz-border-radius: 2px;
    -ms-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    overflow: hidden;
}

.merit_list li:nth-child(n+2) {
    margin-top: 5px;
}

.merit_img {
    position: absolute;
    right: 0;
    width: 40%;
    height: 100%;
    right: 0;
    top: 0;
    text-align: right;
}

.merit_img .img {
    width: 100%;
    height: auto;
}


/*merit_box*/

.merit_box {
    padding: 0 30px;
    width: 60%;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.merit_box>* {
    width: 100%;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.merit_cap {
    padding: 10px 0 0;
}

.merit_cap img {
    height: 14px;
}

.merit_catch {
    margin: 10px 0 0;
    height: 64px;
    color: #388bb3;
    font-size: 20px;
    line-height: 32px;
}

.merit03 .merit_catch {
    line-height: 64px;
}

.merit_txt {
    margin: 10px 0 0;
    color: #666666;
    font-size: 14px;
    line-height: 22px;
}

.merit_txt span {
    color: #ff3333;
}


/*フリーランスエンジニア開発案件例*/

.anken_tlt,
.flow_tlt {
    width: 668px;
    height: 28px;
    border-bottom: 2px dotted #cfcfcf;
    position: relative;
    margin: 0 16px;
}

.projects_p_anken_oosaka,
.projects_p_anken_fukuoka {
    width: 455px;
    height: 92px;
    background-position: right;
    background-repeat: no-repeat;
    background-size: contain;
    background-color: #fff;
    padding: 29px 184px 29px 29px;
    font-size: 14px;
    line-height: 24px;
    margin: 12px 16px 30px 16px;
}


/*NewProject*/

#new {
    padding-bottom: 30px;
}


/*ジョブリーフリーランスってなに？*/

#about {
    width: 668px;
    margin: 60px auto;
}

.white_box {
    background: #fff;
}

.about_h2 {
    margin-bottom: 14px;
}

.innner_box {
    padding: 32px 0 40px 0;
    margin: 0 26px;
}

.box01 {
    border-bottom: 2px solid #ccc;
}

.innner_box_h3 {
    text-align: center;
    margin-bottom: 34px;
}

.right_img {
    float: right;
}

.box02 p {
    margin-bottom: 48px;
    padding-right: 14px;
}

.innner_box p {
    padding-left: 14px;
}


/*無料会員登録*/

.member_link {
    clear: both;
    text-align: center;
    margin: 0 auto;
    padding-bottom: 30px;
}

.member_link img {
    width: 520px;
    margin: 0;
}

#flow_box {
    margin: 0 auto 60px;
}


/*アクセス*/

.access {
    width: 358px;
    height: 278px;
    margin: 60px auto 0;
    padding: 20px 16px 20px 324px;
}

.access_div {
    position: relative;
    padding: 15px;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: #fff;
}

.access h3 {
    width: 206px;
    height: 19px;
    margin-bottom: 14px;
    white-space: nowrap;
    border: none;
    font-size: 20px;
    font-weight: bold;
    color: #3c6ccc;
}

.access dl {
    width: 330px;
    overflow: auto;
    font-size: 14px;
    line-height: 24px;
}

.access dt {
    width: 71px;
    float: left;
}

.access dd {
    width: 252px;
    float: left;
}

.access .address {
    line-height: 18px;
}

.access .address_a {
    display: inline-block;
    position: relative;
    width: 30px;
    background-color: #3d69ca;
    border-radius: 2px;
    margin-left: 10px;
    padding-left: 8px;
    font-size: 10px;
    line-height: 18px;
    color: #fff;
}

.access .address_a:hover {
    opacity: 0.9;
    filter: alpha(opacity=90);
    -ms-filter: "alpha( opacity=90 )";
}

.access .toku_dt {
    width: 149px;
}

.access .toku_dd {
    width: 174px;
}


/* ------大阪のみ--------- */

.projects_ttl_oosaka {
    background: url("../img/oosaka_introfuce_ttl.png") no-repeat;
}

.projects_p_anken_oosaka {
    background: url("../img/oosaka_anken_img.jpg") no-repeat;
}


/*大阪へのアクセス*/

.oosaka_access {
    background: url("../img/oosaka_access.jpg") no-repeat;
}


/* ------福岡のみ--------- */

.projects_ttl_fukuoka {
    background: url("../img/fukuoka_introfuce_ttl.png") no-repeat;
}

.projects_p_anken_fukuoka {
    background: url("../img/fukuoka_anken_img.jpg") no-repeat;
}


/*福岡へのアクセス*/

.fukuoka_access {
    background: url("../img/fukuoka_access.jpg") no-repeat;
}


/* ------search--------- */

#search {
    margin-top: 40px;
}


/* ------new_info-------- */

#new_info {
    width: 670px;
    border: 1px solid #ccc;
    background: #fff;
    margin: 0 auto 46px auto;
    overflow: hidden;
}

#new_info h3 {
    border-bottom: 1px solid #ccc;
    height: 30px;
}

#new_info ul {
    margin: 5px 10px;
    overflow-y: scroll;
    max-height: 103px;
}

#new_info ul li {
    padding: 10px 0 5px 0;
    border-bottom: 2px solid #ccc;
}

#new_info ul li:last-child {
    border-bottom: none;
}

#new_info ul li a {
    color: #333;
}

#new_info ul li a:hover {
    color: #8F8F8F;
}

#new_info ul li a span {
    color: #ff6666;
    width: 45px;
    display: inline-block;
    text-align: center
}


/*main_img*/

#main_img {
    position: relative;
    display: block;
    height: 340px;
    margin-top: 120px;
}

.fukuoka_visual {
    background: url(../img/fukuoka_main_bg.jpg) no-repeat center center;
    background-size: cover;
}

.oosaka_visual {
    background: url(../img/oosaka_main_bg.jpg) no-repeat center center;
    background-size: cover;
}

#main_img>h2 {
    padding-top: 80px;
    color: #388bb3;
    font-size: 40px;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    text-shadow: 2px 2px 8px rgba(255, 255, 255, .75), -2px 2px 8px rgba(255, 255, 255, .75), 2px -2px 8px rgba(255, 255, 255, .75), -2px -2px 8px rgba(255, 255, 255, .75);
}

#main_img>h2+p {
    margin-top: 30px;
    color: #555555;
    font-size: 14px;
    font-weight: 600;
    line-height: 24px;
    text-align: center;
    text-shadow: 2px 2px 8px rgba(255, 255, 255, .75), -2px 2px 8px rgba(255, 255, 255, .75), 2px -2px 8px rgba(255, 255, 255, .75), -2px -2px 8px rgba(255, 255, 255, .75);
}

.main_intro {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    min-height: 100px;
    background: #388bb3;
}

.main_intro .wrap {
    display: table;
}

.main_intro .wrap>* {
    display: table-cell;
    height: 100px;
    vertical-align: middle;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.main_intro .wrap::after {
    display: block;
    content: "";
    clear: both;
}

.intro_txt {
    position: relative;
    padding: 0 0 0 30px;
    width: 540px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 100;
    line-height: 24px;
}

.intro_txt:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 30px;
    margin: auto;
    display: block;
    width: 21px;
    height: 68.56px;
    background: url(../img/shiten_arrow_intro.svg)no-repeat center center;
    background-size: contain;
}

#main_btn {
    text-align: center;
}

#main_btn a:hover {
    opacity: .8;
}


/*message*/

.message {
    margin: 0 auto 40px;
    padding: 30px 0;
    border-top: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
}

.message_head {
    padding: 10px 10px 0 110px;
    height: 108px;
    background: url(../img/icon_comment.svg)no-repeat;
    background-size: auto 108px;
    background-position: left 0 center;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.message_head>p {
    margin: 15px auto 0;
    font-size: 14px;
    line-height: 24px;
}

.message_box {
    margin: 20px 0 0;
    display: table;
}

.message_box:after {
    content: "";
    clear: both;
    display: block;
}

.message_box>* {
    display: table-cell;
    vertical-align: middle;
}

.message_balloon {
    position: relative;
    padding: 15px 30px;
    width: 520px;
    min-height: 160px;
    background: #fff;
    border: 2px solid #388bb3;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
}

.message_balloon:before {
    content: "";
    position: absolute;
    top: 50%;
    right: -28px;
    margin-top: -12px;
    display: block;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 12px 0 12px 28px;
    border-color: transparent transparent transparent #ffffff;
    z-index: 0;
}

.message_balloon:after {
    content: "";
    position: absolute;
    top: 50%;
    right: -32px;
    margin-top: -14px;
    display: block;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 14px 0 14px 30px;
    border-color: transparent transparent transparent #388bb3;
    z-index: -1;
}

.message_cap {
    color: #07a33e;
    font-size: 18px;
    line-height: 24px;
}

.message_txt {
    margin: 20px auto 0;
    font-size: 13px;
    line-height: 24px;
}

.message_agent {
    width: 180px;
    text-align: center;
}

.support_banner {
    margin: 20px auto 50px;
}