html,
body {
    margin: 0;
    /* 余白の削除 */
    padding: 0;
    /* 余白の削除 */
    width: 100%;
    height: 100%;
    font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
}
* {
    margin: 0;
    /* 余白の削除 */
    padding: 0;
    /* 余白の削除 */
}
.wh{
    color: #fff!important;
}
.gy{
    color:#3A3A3A!important;
}
/* ヘッダー */

header#header_fixed {
    position: fixed;
    /* ヘッダーの固定 */
    top: 0px;
    /* 位置(上0px) */
    left: 0px;
    /* 位置(右0px) */
    width: 100%;
    /* 横幅100%　*/
    height: 70px;
    /* 縦幅70px */
    z-index: 22;
}
div#header_bg {
    background-color: #fff;
    /* 背景色(白) */
    opacity: 0.85;
    height: 70px;
    /* 縦の高さ70px */
    width: 100%;
    /* 横の幅を100% */85
}
div#header_bg_low {
    background-color: #fff;
    /* 背景色(白) */
    height: 70px;
    /* 縦の高さ70px */
    width: 100%;
    /* 横の幅を100% */
    border-bottom: solid 3px #F0F0F0;
}
div#header {
    height: 100%;
    /* 縦の表示領域はheader-bkと同じ */
    width: 1000px;
    /* 横の幅1000px */
    margin: auto;
    /* 中央揃え */
}
.menu_name {
    margin-left: 30px;
    margin-right: 0px;
}
a.color_change {
    color: #333;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    text-decoration: none;
}
a.color_change:hover {
    color: #00FFFF;
    text-decoration: none;
}
.navi {
    height: 70px;
    line-height: 70px;
}
.fl {
    float: left;
    margin: 0;
    padding: 0;
}
.fr {
    float: right;
    margin: 0;
    padding: 0;
}
.cl {
    display: inline-block;
}
.cl:after {
    content: "";
    display: block;
    clear: both;
}
/* メインビジュアル */

div#main_visual_fixed {
    position: fixed;
    /* ヘッダーの固定 */
    top: 0px;
    /* 位置(上0px) */
    left: 0px;
    /* 位置(右0px) */
    width: 100%;
    /* 横幅100%　*/
    height: 620px;
    /* 縦幅750px */
    z-index: 0;
}
div#main_visual_bg {
    height: 620px;
    /* 縦の高さ750px */
    width: 100%;
    /* 横の幅を100% */
}
.box {
    width: 100%;
    height: 100%;
    text-align:center;
    vertical-align:middle;
}
#main_visual {
    height: 750px;
    margin: auto;
    /* 中央揃え */
}
.banner {
    font-size: 60px;
    font-size: 6rem;
    line-height: 64px;
    line-height: 6.4rem;
    padding: 113px 0 113px;
    margin-top: 100px;
    margin-bottom: 30px;
    color: #fff;
    background: #fff;
    background-position: center center;
    background-repeat: no-repeat;
}
.banner_info {
    font-size: 60px;
    font-size: 6rem;
    line-height: 64px;
    line-height: 6.4rem;
    padding: 0;
    margin-top: 0px;
    margin-bottom: 30px;
    color: #fff;
    background-position: center center;
    background-repeat: no-repeat;
}
.text-center {
    text-align: center;
}
.web_fonts {
    font-family: 'Montserrat', sans-serif;
}
/* コンテンツ */

#main_contents {
    position: relative;
    top: 620px;
    height: 800px;
    z-index: 11;
    background-color: #fff;
    padding-bottom: 30px;
}
#main_contents_wrap {
    width: 1000px;
    margin: auto;
    height: 100%;
    background-color: #fff;
}
#main_message {
    width: 100%;
    height: 250px;
    background-color: #fff;
}
#message {
    text-align: center;
    font-size: 29pt;
    letter-spacing: 0.2em;
    line-height: 1.2;
    color: #6a6767;
    width: 650px;
    height: 100%;
    margin: 0 auto;
    background-color: #fff;
    padding-top: 8%;
}
#main_bnr {
    width: 100%;
    height: 350px;
    background-color: #fff;
}
#main_icon_bg {
    width: 100%;
    height: 160px;
    background-color: #fff;
}
.icon {} .img-block {
    width: 120px;
    height: 140px;
    margin-left: 62px;
    margin-right: 62px;
    overflow: hidden;
}
.img-block img {
    transition: 0.5s;
}
.img-block img:hover {
    -webkit-transform: translateY(-5px);
    -moz-transform: translateY(-5px);
    -ms-transform: translateY(-5px);
    -o-transform: translateY(-5px);
}
.area_white {
    background-color: white;
}
.area_gray {
    background-color: #F7F7F7;
}
.area_blue {
    background-color: #5cb9ae;
    color: #fff;
}
.area {
    width: 100%;
    margin: 0;
    text-align: center;
}
.area__inner {
    width: 100%;
    height: auto;
    overflow: hidden;
}
.area__inner_service {
    width: 100%;
    height: auto;
    overflow: hidden;
    padding: 0px 0 80px;
}
.area__inner_contact {
    width: 100%;
    height: auto;
    overflow: hidden;
    padding: 0px 0 180px;
}
.area--about__detail {
    width: 960px;
    background-color: #fff;
    text-align: center;
    margin: 0 auto;
    padding: 8% 0%;
    border: none;
}
.area--contact__detail {
    width: 960px;
    background-color: #fff;
    text-align: center;
    margin: 0 auto;
    padding: 3% 0%;
    border: none;
}
.area--info__detail {
    width: 960px;
    background-color: rgba(0, 0, 0, 0.65);
    text-align: center;
    margin: 150 auto;
    padding: 4% 0%;
    border: none;
}
.text_about {
    font-size: 18px;
    font-weight:bold;
    letter-spacing: 0.3em;
    font-family: "HalisR-Regular", 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
}
.text_area {
    margin: 180 80;
}
.area--about__detail_harf {
    width: 50%;
    text-align: left;
    border: none;
    padding-bottom: 32767px;
    margin-bottom: -32767px;
}
.area--contact__detail_harf {
    width: 40%;
    text-align: left;
    border: none;
    padding-bottom: 32767px;
    margin-bottom: -32767px;
    padding-left: 10%;
}
.area--about__detail_img {
    width: 50%;
    height: auto;
    text-align: left;
    padding-bottom: 32767px;
    margin-bottom: -32767px;
}
.area--about__detail_img img {
    margin-top: 50px
}
.area__main-copy {
    margin: 0;
    border-bottom: 4px solid #000;
    display: inline-block;
    font-size: 32px;
    letter-spacing: .1em;
}
.area__form-copy {
    margin: 30px;
    color: #fff;
    font-weight: bold;
    font-size: 32px;
    letter-spacing: .1em;
}
.area__main-copy_red {
    margin: 0;
    border-bottom: 4px solid #CC0000;
    display: inline-block;
    font-size: 32px;
    letter-spacing: .1em;
}
.area__main-copy_blue {
    margin: 0;
    border-bottom: 4px solid #191970;
    display: inline-block;
    font-size: 32px;
    letter-spacing: .1em;
}
.area__main-copy_white {
    margin: 0;
    border-bottom: 4px solid #cc0000;
    display: inline-block;
    font-size: 32px;
    letter-spacing: .1em;
    color: #fff;
}
.area__main-copy_sub {
    padding: 0 0 5px;
    border-bottom: 4px solid #222222;
    font-size: 14px;
    letter-spacing: .03em;
    font-weight: bold;
}
.area--service__main-copy {
    margin: 30px 0 20px;
    font-size: 20px;
    line-height: 1.75;
}
.area--service__main-copy_p {
    margin: 0 0 40px;
    font-size: 14px;
    line-height: 1.75;
}
.area .area__main-copy + p {
    margin: 40px 0;
    font-size: 19px;
    font-weight: normal;
    line-height: 1.6;
}
/* コンテンツ css3アニメーション処理*/

.view {
    width: 333px;
    height: 245px;
    margin: 0px;
    float: left;
    overflow: hidden;
    position: relative;
    text-align: center;
    cursor: default;
    background: #fff url(../images/bgimg.jpg) no-repeat center center
}
.view .mask,
.view .content {
    width: 333px;
    height: 245px;
    position: absolute;
    overflow: hidden;
    top: 0;
    left: 0
}
.view img {
    display: block;
    position: relative
}
.view h2 {
    text-transform: uppercase;
    color: #fff;
    text-align: center;
    position: relative;
    font-size: 17px;
    padding: 5px;
    background: #191971;
    margin: 10px 0 0 0
}
.view p {
    font-style: normal;
    font-size: 13px;
    position: relative;
    color: #fff;
    padding: 15px 20px 20px;
    text-align: left;
}
.view a.info {
    display: inline-block;
    text-decoration: none;
    padding: 7px 14px;
    background: #000;
    color: #fff;
    text-transform: uppercase;
    box-shadow: 0 0 1px #000
}
.view a.info:hover {
    box-shadow: 0 0 5px #000
}
/* view-tenthアニメーション処理*/

.view-tenth img {
    transform: scaleY(1);
    transition: all 0.7s ease-in-out;
}
.view-tenth .mask {
    background-color: rgba(255, 231, 179, 0.3);
    transition: all 0.5s linear;
    opacity: 0;
}
.view-tenth h2 {
    border-bottom: 1px solid rgba(0, 0, 0, 0.3);
    background: transparent;
    margin: 0px 30px 3px 30px;
    transform: scale(0);
    color: #333;
    transition: all 0.5s linear;
    opacity: 0;
}
.view-tenth p {
    color: #333;
    opacity: 0;
    transform: scale(0);
    transition: all 0.5s linear;
}
.view-tenth a.info {
    opacity: 0;
    transform: scale(0);
    transition: all 0.5s linear;
}
/* view-tenth hoverアニメーション処理*/

.view-tenth:hover img {
    transform: scale(10);
    opacity: 0;
}
.view-tenth:hover .mask {
    opacity: 1;
}
.view-tenth:hover h2,
.view-tenth:hover p,
.view-tenth:hover a.info {
    transform: scale(1);
    opacity: 1;
}
/* コンテンツ css3アニメーション処理ここまで*/

/* フッター */

#footer_bg {
    position: fixed;
    bottom: 0px;
    z-index: 22;
    background-color: #58676d;
    /* 背景色(黒) */
    height: 30px;
    /* 縦の高さ50px */
    width: 100%;
    /* 横の幅を100% */
}
#footer_main {
    margin: 0 auto;
    height: 100%;
    width: 1000px;
    margin-top: 0.3%;
    font-size: 10pt;
    color: #bcc5c9;
    text-align: center;
}
.area--about__detail_sub {
    width: 960px;
    margin: 0 auto;
    padding-top: 80px;
    border-top: 1px solid #dddddd;
}
.grid_right {
    padding-right: 50px
}
.info_contents {
    margin-top: 100px;
    margin-bottom: 150px;
    color: #333333;
    padding: 0 100px;
}
.sisin {
    width: 550px;
    margin: 50px auto;
    font-size: 19px;
    font-weight: normal;
    line-height:
}
.sisin_text {
    text-align: left;
    font-size: 19px;
    font-weight: normal;
    line-height: 1.6;
    color: #333;
}
.text_shadow {
    text-shadow: 1px 1px 3px #666;
}
.button {
    position: relative;
    -webkit-perspective: 300px;
    perspective: 300px;
}
.button span {
    display: block;
    position: absolute;
    width: 200px;
    height: 60px;
    border: 4px solid #333;
    text-align: center;
    line-height: 56px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
    pointer-events: none;
}
.button span:nth-child(1) {
    background-color: #333;
    color: #fff;
    -webkit-transform: rotateX(90deg);
    -moz-transform: rotateX(90deg);
    transform: rotateX(90deg);
    -webkit-transform-origin: 50% 50% -30px;
    -moz-transform-origin: 50% 50% -30px;
    transform-origin: 50% 50% -30px;
}
.button span:nth-child(2) {
    background-color: #fff;
    color: #333;
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    transform: rotateX(0deg);
    -webkit-transform-origin: 50% 50% -30px;
    -moz-transform-origin: 50% 50% -30px;
    transform-origin: 50% 50% -30px;
}
.button:hover span:nth-child(1) {
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    transform: rotateX(0deg);
}
.button:hover span:nth-child(2) {
    background-color: #333;
    -webkit-transform: rotateX(-90deg);
    -moz-transform: rotateX(-90deg);
    transform: rotateX(-90deg);
}
.button {
    display: inline-block;
    width: 200px;
    height: 54px;
    text-align: center;
    text-decoration: none;
    line-height: 54px;
    outline: none;
}
.button::before,
.button::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
}
.button,
.button::before,
.button::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
}
#page-top {
    display: block;
    position: fixed;
    z-index: 9999;
    bottom: 50px;
    right: 30px;
    width: 60px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    opacity: 0.8;
    filter: alpha(opacity=80);
    -moz-opacity: 0.8;
}
#page-top:hover {
    opacity: 1.0;
    filter: alpha(opacity=100);
    -moz-opacity: 1.0;
}
/* 入力フォーム */

table.form {
    border: 0px;
    border-collapse: collapse;
    width: 500px;
    margin: 50px auto 0px;
}
table.form th ,td{
    text-align: left;
    border: 1px solid #ccc;
    padding: 8px;
    font-weight: normal;
}
table.form th {
    background: #999;
    color: #ffffff;
}
table.form td {
    background: #fff;
}
.ttl {
    text-align: center;
}
.form_area {
    width: 960px;
    margin: 80px auto;
    text-align: center;
}
ol {
    list-style-type: none;
    color: #000;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.75;
}
.table_bg {
    background-color: #fff;
    width: 620px;
    margin: 60px auto;
    padding: 50px 0px 50px 0px;
}
.contact-form__submit {
    background-color: #222222;
    color: white;
    font-weight: bold;
    border: none;
    font-size: 18px;
    padding: 20px 0;
    width: 500px;
    ;
    margin: 0 auto 50px;
    display: block;
}
.form_alt {
    margin-top: 20px;
    color: #666;
    font-size: 12px;
    letter-spacing: .03em;
    font-weight: bolnormal
}
table.sisin a:link{
    color: red;
}
table.sisin a:visited{
    color: red;
    text-decoration: none;
}
div.box img{
}

table.sisin td{
    border: 0px;
    padding-left: 40px;
}
@media only screen and (max-width:960px) {
    .slider {
        height: 500px;
    }
    .box {
        width:100%;
        min-height:600px;
        line-height:600px;
    }
}

.row {
    margin-left: -20px;
    width: 960px;
        margin:0% auto;
}

.span_coment_area {
    text-align: left;
    padding-top: 90px;
    width: 900px;
    min-height: 1px;
    margin-left: 20px;
    margin-top: 15%;
}

.span_coment_lage {
    font-size: 6.2rem;
    line-height: 6.4rem;
    padding-bottom: 20px;
    font-weight: normal;
    text-align: left;
}

.span_coment_small {
    font-size: 4.1rem;
    padding-bottom: 20px;
    font-weight: normal;
    margin: 10px 0;
    text-align: center;
    text-shadow: 5px 5px 7px #000000,
    -5px -5px 7px #000000,
    5px -5px 7px #000000,
    -5px 5px 7px #000000;
}

.span_coment_small_left {
    font-size: 3.1rem;
    padding-bottom: 20px;
    font-weight: normal;
    margin: 10px 0;
    text-align: left;
    text-shadow: 4px 4px 8px #000000,
    -4px -4px 8px #000000,
    4px -4px 8px #000000,
    -4px 4px 8px #000000;
}
.span_coment_small_white {
    font-size: 3.1rem;
    padding-bottom: 20px;
    font-weight: normal;
    margin: 10px 0;
    text-align: center;
    text-shadow: 4px 4px 8px #ffffff,
    -4px -4px 8px #ffffff,
    4px -4px 8px #ffffff,
    -4px 4px 8px #ffffff;
}

