/*全体調整*/
h1,
h2,
h3,
h4,
p {
    margin: 0;
    padding: 0;
}

html,
body {
    height: 100%;
    width: 100%;
}

body {
    position: relative;
    margin: 0;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #111), color-stop(0.48, #12131d), color-stop(0.00, #141737));
    background: -webkit-linear-gradient(top, #141737 0%, #12131d 48%, #111 100%);
    background: -moz-linear-gradient(top, #141737 0%, #12131d 48%, #111 100%);
    background: -o-linear-gradient(top, #141737 0%, #12131d 48%, #111 100%);
    background: -ms-linear-gradient(top, #141737 0%, #12131d 48%, #111 100%);
    background: linear-gradient(to bottom, #141737 0%, #12131d 48%, #111 100%);
    background-repeat: no-repeat;
    background-attachment: fixed;
}

a {
    text-decoration: none;
    color: #000000
}

/*ヘッダー*/

#header {
    background-color: rgba(11, 11, 11, 0.8);
    position: fixed;
    width: 100%;
    height: 55px;
    top: 0;
    z-index: 9997;
}

#header:after {
    content: "";
    display: block;
    clear: both;
}

ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

#panel ul li a {
    display: block;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: #202020;
    padding: 0px 7px;
    text-decoration: none;
    top: 15px;
    position: relative;
    border-right: 1px solid #707070;
    opacity: 0, 8;
}

#panel ul li a:hover {
    background-color: #707070;
    top: 0px;
    padding: 15px 7px;
    transition: .3s;
}

#panel2 ul li a {
    display: block;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: #202020;
    padding: 0px 7px;
    text-decoration: none;
    top: 15px;
    position: relative;
    border-right: 1px solid #707070;
    transition: .3s;
}


#panel2 ul li a:hover {
    background-color: #707070;
    top: 0px;
    padding: 15px 7px 16px 7px;
}

#panel ul > a {
    margin-top: 5px;
    margin-right: 8px;
    display: inline-block;
}

#panel ul > a img {
    width: 45px;
}

#panel ul li:last-of-type a {
    border-right: none
}

#panel ul li a:hover {
    background-color: #707070;
    top: 0px;
    padding: 15px 7px 16px 7px;
}

body {
    color: #ddd;
    font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳＰ明朝", "MS PMincho", "ＭＳ明朝", "MS Mincho", serif;
}



/*ボディ*/

#main {
    min-height: 600px;
    margin-top: 20px;
    position: relative;
    overflow: hidden;
}

#main:after {
    content: "";
    display: block;
    clear: both;
}

/*サイドメニュー*/
#sidemenu {
    position: absolute;
    float: left;
    width: 220px;
    margin-left: 10px;
}


#sidemenu ul {
    margin: 0;
    padding: 0;
    list-style: none;
    background-color: #000;
    border-radius: 10px;
}

#sidemenu ul li {
    border-bottom: solid 1px #333;
}

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

#sidemenu ul li a {
    display: block;
    color: #ddd;
    padding: 12px 10px;
    text-decoration: none;
}

#sidemenu ul li a:hover {
    background-color: #444;
    transition: .35s;
}

/*メインコンテンツ*/

.contact_link.service_box{
    display: block;
    background-image: url(../imgs/contact_back.jpg);
    background-position:center;
    background-size: cover;
    padding:10px 0;
    max-width: 950px;
    margin: auto;
}
.contact_link.service_box:hover{
    opacity: .8;
}

.contact_link h3{
    text-align: left !important;
    margin-left: 15px;
    font-size: 22px !important;
    text-shadow: none !important;
}

.topimg {
    margin-top: 55px;
    width: 100%;
    height: 250px;
    background-size: cover;
    background-position: center;
}

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


.topimg .topcatch {
    position: relative;
    background-color: rgba(20, 20, 20, 0.4);
    padding: 5px 0 5px 5px;
    top: 196px;
    text-align: left;
}

/*Service*/

#service_wrap #contents {
    width: auto;
    margin-left: 250px;
    margin-right: 10px;
}

#contents h2 {
    overflow: hidden;
    font-size: 25px;
}

#contents h2 span {
    position: relative;
    display: inline-block;
    padding: 0 0.3em;
    margin: 10px 0;
    text-align: left;
}

#contents h2 span::before,
#contents h2 span::after {
    position: absolute;
    top: 50%;
    content: '';
    width: 80px;
    height: 1px;
    background-color: #ccc;
}

#contents h2 span::before {
    right: 100%;
}

#contents h2 span::after {
    left: 100%;
}

#contents h2 {
    font-weight: normal;
    margin: 0 auto;
    position: relative;
    color: #eee;
    text-align: center;
}


#contents h3 {
    padding: 5px 10px 0px 10px;
    margin-bottom: 5px;
    font-size: 18px;
    font-weight: normal;
    color: #eee;
    text-align: center;
    text-shadow: 0px 2px 2px rgba(255, 255, 255, 0.4),
        0px 3px 3px rgba(255, 255, 255, 0.3);
}

#service_wrap #contents p {
    font-size: 16px;
    color: #ddd;
    line-height: 1.75em;
    padding: 0 15px;
    text-align: left;
}

#service_top h1 {
    font-size: 23px;
    font-weight: normal;
    line-height: 1.2em;
}

#rental p {
    line-height: 2.3em !important;
    text-align: center !important;
}

#rental p a {
    background-color: #222222;
    color: #ddd;
    font-size: 18px;
    font-weight: bold;
    padding: 5px 6px 5px 5px;
    border-radius: 5px;
}

#rental p a:hover {
    background-color: #777;
}


#appeal h3 {
    display: inline-block;
    text-align: left;
    margin-left: 15px;
    border-bottom: 1.5px dotted #264C69;
}

#effect {
    padding-top: 10px;
}


#flow {
    position: relative;
    width: 95%;
    padding-bottom: 0;
    margin: 50px auto;
}

#flow p {
    padding: 0 10px;
}

.next {
    position: absolute;
    width: 0;
    height: 0;
    border: 50px solid transparent;
    border-top: 30px solid #000;
    left: 50%;
    margin-left: -50px;
}

.next_even {
    position: absolute;
    width: 0;
    height: 0;
    border: 50px solid transparent;
    border-top: 30px solid #202020;
    left: 50%;
    margin-left: -50px;
}

.odd {
    padding: 30px 0
}

.odd1 {
    padding: 0 0 30px 0;
}

.even {
    background-color: #202020;
    padding: 30px 0;
}

.even h3 {
    color: #eee;
     !important;
}

.step {
    display: table-cell;
    vertical-align: middle;
    padding-left: 10px;
}


.step p {
    width: 80px;
    height: 80px;
    background-color: #264C69;
    border-radius: 50%;
    text-align: center !important;
    color: #fff;
    line-height: 1.8em !important;
    box-sizing: border-box;
    padding: 10px 0 0 0 !important;
}

.step p span {
    font-size: 28px !important;
}

.inner {
    display: table-cell;
}

.inner h3 {
    text-align: left !important;
    padding: 0 0 0 10px !important;
}


.service_box {
    margin: 0 10px 20px 0;
    background-color: #000;
    border-radius: 10px;
    padding-bottom: 20px;
}

/*price*/

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

.price_topimg {
    margin: 0 auto 30px auto;
    padding: 15px 0;
    border: 1px solid #666;
    border-radius: 10px;
    width: 95%;

}

.price_topimg ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.price_topimg ul li a {
    float: left;
    display: block;
    text-decoration: none;
    width: 33.3%;
    color: #ffffff;
    margin-bottom: 10px;
}

.price_topimg ul li a img {
    width: 95%;
}

.price_topimg ul li a img:hover {
    opacity: 0.8;
}

.price_box {
    margin: 50px auto 20px auto;
    background-color: #000;
    border-radius: 10px;
    padding: 20px 0;
    width: 98%;
    text-align: center;
}

.price_box table {
    border-collapse: collapse;
    text-align: center;
    font-size: 16px;
    margin: 0 auto;

}

.price_box th {
    background-color: #0F1A3C;
    color: #fff;
    font-weight: normal;
    padding: 3px;
    border: solid 1px #aaa;
}

.price_box td {
    padding: 5px;
    border: solid 1px #aaa;
}

.sea_inner1,
.sea_inner2,
.leaf_inner1,
.leaf_inner2,
.fre_inner1,
.fre_inner2,
.jelly_inner1,
.jelly_inner2 {
    display: inline-block;
    vertical-align: middle;
}

.sea_inner1,
.leaf_inner1,
.fre_inner1,
.jelly_inner1 {
    width: 45%;
    text-align: center;
}

.sea_inner2,
.leaf_inner2,
.fre_inner2,
.jelly_inner2 {
    width: 45%
}

.sea_inner1 img,
.leaf_inner1 img,
.fre_inner1 img,
.jelly_inner1 img {
    width: 100%;
}


#jelly table {
    max-width: 300px;
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

#jelly p {
    text-align: center;
}

.order_inner1,
.order_inner2 {
    display: inline-block;
    vertical-align: middle;
}

.order_inner1 {
    width: 45%;
    text-align: right;
}

.order_inner2 {
    width: 50%
}

.order_inner1 img {
    width: 85%;
}

#contract {
    text-align: center;
}

#contract h3 {
    font-size: 26px;
}

#contract p {
    text-align: center;
}

.contract {
    vertical-align: middle;
    margin: 10px auto;
}

.contract ul {
    max-width: 400px;
    margin: 0 auto;
}

.contract ul li {
    max-width: 400px;
    text-align: left;
}

#order p {
    text-align: center;
    margin-top: 5px;
}

#order p a {
    background-color: #222222;
    color: #fff;
    font-weight: bold;
    padding: 5px 6px 5px 5px;
    border-radius: 5px;
}

#order p a:hover {
    background-color: #777;
}

.price_img p {
    font-size: 20px;
}

.price_img a {
    position: relative;
}

/*works*/

.case_jirei {
    margin-bottom: 30px;
}

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

.case_jirei ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.case_jirei ul li a {
    float: left;
    display: block;
    text-decoration: none;
    width: 33%;
    color: #ffffff;
    margin-top: 15px;
    font-size: 18px;
    text-align: center;
}

.case_jirei ul li a img {
    width: 96%;
}

.case_jirei ul li a:hover {
    opacity: 0.8;
}


#kind {
    margin: 0 auto 30px auto;
    max-width: 800px;

}

#kind:after {
    content: "";
    display: block;
    clear: both;
}

#kind ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

#kind ul li a {
    float: left;
    display: block;
    text-decoration: none;
    width: 25%;
    color: #ffffff;
    margin: 10px 0;
    font-size: 15px;
    line-height: 1.4em;
    text-align: center;
}

#kind ul li a img {
    width: 90%;
    max-height:
}

#kind ul li a:hover {
    opacity: 0.8;
}

/*contact*/
.form tbody {
    background-color: rgba(0, 0, 0, 0);
}

.form p,
.form h2 {
    color: #ffffff;
    text-align: center;
}

#formWrap {
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
    color: #000;
    line-height: 100%;
    font-size: 90%;
}

table.formTable {
    width: 100%;
    margin: 0 auto;
    border-spacing: 0;
    border-collapse: separate;
}

.formTable tr:first-child th {
    border-radius: 13px 13px 0 0;
}

.formTable tr:last-child td {
    border-radius: 0 0 13px 13px;
}

table.formTable td,
table.formTable th {
    border: 1px solid #ccc;
    padding: 10px;
    background-color: #FFFFFF;
}

table.formTable th {
    width: 100%;
    font-weight: normal;
    background: #efefef;
    text-align: left;
}


#contact_wrap button {
    font-size: 1.1em;
    width: 90px;
    padding: 8px 0;
    color: #fff;
    cursor: pointer;
    cursor: hand;
    border-style: none;
    border-top: 1px solid #dddddd;
    border-radius: 7px;
    box-shadow: 1px 1px 1px 1px #444;
    text-shadow: 1px 1px 2px #000;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #111), color-stop(0.58, #1b1b1b), color-stop(0.00, #666));
    background: -webkit-linear-gradient(top, #666 0%, #1b1b1b 57%, #111 100%);
    background: -moz-linear-gradient(top, #666 0%, #1b1b1b 57%, #111 100%);
    background: -o-linear-gradient(top, #666 0%, #1b1b1b 57%, #111 100%);
    background: -ms-linear-gradient(top, #666 0%, #1b1b1b 57%, #111 100%);
    background: linear-gradient(to bottom, #666 0%, #1b1b1b 57%, #111 100%);

}

.line {
    text-align: center;
    margin-bottom: 20px;
}

.line_link{
    text-align: center;
    margin-top: 10px;
}

.line_link>*{
    vertical-align: middle;
    margin: 0 10px;
}

/*会社概要*/
.company {
    padding-bottom: 30px;
}

.company table {
    width: 95%;
    max-width: 900px;
    border-collapse: collapse;
}

.company tr {
    height: 2.5em;
    border-bottom: 1px solid #666;
}

.company tr:first-child th {
    border-radius: 13px 0 0 0;
}

.company tr:first-child td {
    border-radius: 0 13px 0 0
}

.company tr:last-child {
    border: 0;
}

.company tr:last-child th {
    border-radius: 0 0 0 13px;
}

.company tr:last-child td {
    border-radius: 0 0 13px 0;
}

.company th {
    width: 75px;
    background-color: #444;
    color: #ffffff;
    font-weight: normal;
}

.company td {
    width: auto;
    background-color: #000;
    padding-left: 5px;
}

#history {
    margin-bottom: 40px;
}

#history table {
    margin: 0 auto;
    border-collapse: separate;
}

#history th {
    width: 80px;
    line-height: 2em;
}

#history td {
    padding-left: 15px;
}

#idea {
    margin-bottom: 30px;
}

/*求人情報*/
#recruit table {
    margin: 20px auto;
}

#recruit last-child th {
    border-radius: 13px;
}

#recruit tr:last-child td {
    border-radius: 0 0 13px 0;
}

#recruit th {
    width: 110px;
}


#recruit p {
    text-align: center;
    font-size: 20px;
}

/*Appeal アピールページ*/

#appeal_wrap .service_box {
    margin-bottom: 50px;
}

#effect p {
    padding: 10px;
    margin-left: 10px;
}

#effect h3 {
    border: 10px solid transparent;
    border-left: 11px solid #264C69;
    display: inline-block;
    line-height: 0 !important;
    padding: 0 5px;
    margin: 15px 20px;
}

.fadein {
    opacity: 0;
    transition: 1800ms;
    transition-delay: 300ms;

}

.fadein.imgin {
    opacity: 1;
}

/*フッター*/

#footer {
    position: absolute;
    color: #999999;
    background: rgba(10, 10, 10, 0.6);
    width: 100%;
    padding: 5px 0 5px 0;
}

#about_wrap #footer {
    padding-bottom: 20px;
}

.copyright {
    float: left;
    width: 45%;

}

.information {
    float: right;
    width: auto;
    padding: 0 10px 0 0;
}

.information p {
    font-size: 14px;
}


/* ########1020px以上########　*/
@media screen and (min-width: 1020px) {

    #main {
        max-width: 1000px;
        margin-left: auto;
        margin-right: auto;
    }

    .price_topimg ul li:nth-child(4) {
        position: relative;
        left: 15%;
    }

    .price_topimg ul li:nth-child(5) {
        position: relative;
        left: 20%;
    }

}

/* ########1099px以下########　*/
@media screen and (max-width: 1019px) {
    .price_topimg ul li a {
        width: 50%;
    }

    .price_topimg ul li a img {
        width: 93%;
    }

    .price_topimg ul li:nth-child(5) {
        position: relative;
        left: 25%;
    }


    .case_jirei ul li a {
        width: 50%;
    }

    .case_jirei ul li a img {
        width: 96%;
    }
}

/* ########760px以上########　*/
@media screen and (min-width: 770px) {



    #headtitle {
        float: left;
        width: auto;
        padding: 3px 0 3px 15px;
    }

    #panel {
        float: right;
        width: auto;
        display: block !important;
    }


    #panel ul li a {
        display: block;
        color: #ffffff;
        font-size: 1.05em;
        text-decoration: none;
    }

    #panel ul li a:hover {
        background-color: #707070
    }


    #panel ul li:after {
        content: "";
        display: block;
        clear: both
    }

    #panel ul li {
        float: left;
        width: auto;
    }

    #panel2 {
        display: none !important;
    }

}

/* ########759px以下########　*/
@media screen and (max-width: 769px) {


    #headtitle {
        text-align: center;
    }

    #headtitle a img {
        margin-top: 5px;

    }


    #header {
        text-align: center;
    }

    .topimg {
        min-width: 300px;
    }

    #main {
        width: 100%;
        min-width: 300px;
    }

    #service_wrap #contents {
        float: none;
        width: 95%;
        margin: 0 auto;
    }

    #contents {
        float: none;
        width: 98%;
        margin: 0 auto;
    }

    #service_wrap #contents {
        margin: 0 10px;
    }

    .service_box {
        margin: 0 auto 50px auto;
        box-sizing: border-box;
    }

    #service_wrap #contents p {
        font-size: 16px;
    }

    #sidemenu {
        display: none;
    }

    .step,
    .inner {
        display: block;
    }

    .step {
        position: relative;
        left: 50%;
        margin-left: -40px;
        padding: 10px 0;
    }



    .price_box table {
        width: 100%;
        max-width: 400px;
    }

    .sea_inner1,
    .sea_inner2,
    .leaf_inner1,
    .leaf_inner2,
    .fre_inner1,
    .fre_inner2,
    .jelly_inner1,
    .jelly_inner2,
    .order_inner1,
    .order_inner2 {
        display: block;
        width: 100%;
    }

    .sea_inner1,
    .leaf_inner1,
    .fre_inner1,
    .jelly_inner2,
    .order_inner1 {
        text-align: center;
        margin: 20px 0;
    }

    .sea_inner1 img,
    .leaf_inner1 img,
    .fre_inner1 img,
    .jelly_inner1 img,
    .order_inner1 img {
        max-width: 400px;
    }

    .inner h3 {
        text-align: center !important;
        padding: 0 !important;
    }

    #contract table {
        max-width: 800px;
    }

    #contract td,
    #contract th {
        padding: 0 20px 0 20px;
    }

    .price_topimg ul li a img {
        width: 93%;
    }

    #kind ul li a {
        width: 33%;
    }

    /* toggle-panel */
    #panel-btn {
        display: inline-block;
        position: relative;
        width: 35px;
        height: 35px;
        margin: -50px 10px 0px 0;
        border-radius: 3px;
        background: #333;
        float: right;
    }

    #panel-btn:hover {
        background: #222;
    }

    #panel-btn-icon {
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        width: 14px;
        height: 2px;
        margin: -1px 0 0 -7px;
        background: #ddd;
        transition: .2s;
    }

    #panel-btn-icon:before,
    #panel-btn-icon:after {
        display: block;
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 14px;
        height: 2px;
        margin-left: -7px;
        background: #ddd;
        transition: .3s;
    }

    #panel-btn-icon:before {
        margin-top: -6px;
    }

    #panel-btn-icon:after {
        margin-top: 4px;
    }

    #panel-btn .close {
        background: transparent;
    }

    #panel-btn .close:before,
    #panel-btn .close:after {
        margin-top: 0;
    }

    #panel-btn .close:before {
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
    }

    #panel-btn .close:after {
        transform: rotate(-135deg);
        -webkit-transform: rotate(-135deg);
    }

    #panel {
        display: none;
        width: 150px;
        margin: 0;
        background: #222;
        position: fixed;
        top: 55px;
        right: 0;
        z-index: 9999;
        opacity: 0.95;
    }

    #panel ul li a {
        padding: 10px;
        top: 0px;
        border-right: none;
        color: #ddd;
        line-height: 1.65em;
    }

    #panel ul li a:hover {
        padding: 10px;
    }

    #panel ul > a {
        margin: 0 10px 10px 5px;
        display: inline-block;
    }

    #panel ul > a img {
        width: 40px;
    }

    /*フッター*/

    .copyright {
        float: left;
        width: 100%;
        font-size: 12px;
    }

    .information {
        float: left;
        width: auto;
    }

    .information p {
        font-size: 13px;
    }
    
    .line{
        text-align: left;
    }
}


/* ########600px以上########　*/
@media screen and (min-width: 601px) {
    .glass::after {
        content: "トランスルーセントグラスキャット";
    }
}

/* ########600px以下########　*/
@media screen and (max-width: 600px) {
    body {
        font-size: 16px;
    }

    h1 {
        line-height: 0.5em;
    }

    #headtitle a img {
        width: 190px;
        height: 45px;
    }

    #panel-btn {
        margin-top: -45px;
    }

    /*メイン*/

    .topimg {
        height: 160px;
    }

    .topimg .topcatch {
        top: 125px;
        text-align: left;
    }

    .topimg .topcatch img {
        height: 25px;
    }

    #appeal_wrap .topcatch img {
        height: 24px;
    }

    #contents h2 {
        font-size: 21px;
    }

    #contents h3 {
        font-size: 16px;
    }

    #contents p {
        font-size: 15px;
    }

    #service_wrap #contents p {
        font-size: 14px;
        line-height: 1.4em;
    }

    #service_top img {
        width: 60%;
        max-width: 260px;
    }

    #service_top h1 {
        font-size: 21px;
        line-height: 1.2em;
    }

    #rental p {

        line-height: 1.5em !important;
    }

    #rental img {
        height: 37px;
    }

    #area img {
        height: 40px;
    }

    .price_box table {
        font-size: 14px;
    }

    .price_box th,
    .price_box td {
        padding: 3px 2px
    }

    #contract h3 {
        font-size: 23px;
        margin-left: 5px;
    }

    .contract {
        display: block;
        vertical-align: middle;
        width: 100%;
        margin-bottom: 20px;
    }

    .contract ul li {
        font-size: 15px;
    }


    #kind ul li a {
        width: 50%;
    }

    #kind ul li a p {
        font-size: 12px !important;
    }

    .glass::after {
        contents: "";
    }

    .glass::before {
        content: "ﾄﾗﾝｽﾙｰｾﾝﾄｸﾞﾗｽｷｬｯﾄ";
        font-size: 14px;
        line-height: 13px;
    }

    #flow p {
        padding: 10px;
    }

    .step p {
        text-align: center !important;
        line-height: 1.8em !important;
        padding: 10px 0 0 0 !important;
    }


    .step p span {
        font-size: 28px !important;
    }

    .case_jirei ul li a {
        width: 100%;
    }

    .case_jirei ul li a img {
        width: 99%;
    }

    .company table {
        font-size: 14px;
    }

    #history table {
        font-size: 14px;
    }

    #rinen p {
        font-size: 14px;
    }

    #about_wrap #footer {
        padding-bottom: 0px;
    }

    #recruit p {
        font-size: 16px;
    }

    #recruit th {
        width: 100px;
    }
    
    .line_link>img:first-of-type{
        display: none
    }
}
