/* 冒頭でimport */
@import url(https://fonts.googleapis.com/earlyaccess/sawarabigothic.css);
/* フォントを指定したいところで */


body {background: #080808; font-family: 'Sawarabi Gothic';}
.fix_img {position: relative; margin: 0 auto;}
.row {padding: 0; margin: 0;}
.row>div {padding: 0; margin: 0;}
a{ color:#FFF;}
a:hover{ color:#FFF;}

#html5-watermark {display: none !important;}
#html5-image {padding: 0 !important;}
#html5-elem-box {background-color: transparent !important;}
#html5-elem-wrap {background-color: transparent !important;}
#html5-lightbox-overlay {opacity: .7 !important;}
#html5box-html5-lightbox {display: flex; display: -webkit-flex; align-items: center; justify-content: center;}
#html5-lightbox-box {margin: 0 !important;}
.abs {position: absolute;}

.mainMenu_afterPage {
    background: #000;
    background-size: auto 120px;
    position: fixed; 
	top: -5px;
	left: 0;
    width: 100%;
    z-index: 9999;
    transform: translate(0,-150%);
    -webkit-transform: translate(0,-150%);
    transition: transform .5s;
    -webkit-transition: -webkit-transform .5s;
}
.mainMenu_afterPage.active {
    transform: translate(0,0);
    -webkit-transform: translate(0,0);
}
.logo_afterPage a {
    display: inline-block;
    margin: 15px;
}
.menu_afterPage {text-align: right;}
.menu_afterPage a {
    display: inline-block;
    cursor: pointer;
}

.letter_right {
    position: absolute;
    top: 50%;
    right: 30px;
    margin-top: -152px;
}
.scroll_btn {
    display: block;
    position: absolute;
    bottom: 40px;
    left: 50%;
    margin-left: -36px;
    z-index: 2;
}
.mainMenu_afterPage button {
    position: absolute; top: 6px; right: 6px;
    z-index: 9;
    padding: 7px 8px;
    margin: 0;
    background: rgba(255,255,255,.4);
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
}
.navbar-toggle .icon-bar {
    background: rgba(255,255,255,.7);
    color: rgba(255,255,255,.7);
}

@media screen and (max-width: 767.89px) {
    body {
        background: url(../images/bg-mobile.jpg) top center no-repeat;
        background-size: 0 100%;
    }
    #bg {display: none;}
    .menu_afterPage>div {
        text-align: center;
    }
    .logo_afterPage a {
        margin: 10px;
    }
    .logo_afterPage a img {
        height: 20px;
    }
    .section .fp-tableCell {
        padding-top: 41px;
    }
    .menu_afterPage {
        position: relative;
    }
    .menu_mobile {
        position: absolute; top: 0; left: 0;
        background: rgba(0,0,0,.9);
        width: 100%;
    }
    .menu_afterPage a {
        margin: 10px 15px;
        display: block;
        padding: 5px 0;
    }
    .menu_afterPage a img {
        height: auto;
    }
}

@media screen and (min-width: 768px) {
    .menu_afterPage>div {
        float: right;
        padding-right: 20px;
    }
    .menu_afterPage a {
        float: left;
        margin: 20px 30px;
    }
}

.fixed_bg {
    position: absolute; top: 0; left: 0;
    width: 100%;
    height: 100%;
}

/*------------------top_section-----------------*/
.top_section {
    /*background: url(../images/city.png) top center no-repeat;
    background-size: 100% auto;*/
}
.top_section .fp-tableCell {
    background: url(../images/color-01.png) bottom left no-repeat;
    background-size: auto 100%;
}
.top_section .fix1 {
    background: url(../images/black-0.png) top center no-repeat;
    background-size: 100% auto;
    z-index: -1;
	top: -10px;
}
.top_section .fix2 {
    background: url(../images/color-02.png) top right no-repeat;
    background-size: auto 100%;
    z-index: 0;
}
.top_section .logo {
    position: absolute;
    top: 20px;
    left: 60px;
    z-index: 99999;
}
.toppage_logo {
    width: 100%;
    height: 100%;
    display: flex;
    -webkit-display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
}
.toppage_logo a {
    animation: animation_logo 1.5s;
    -webkit-animation: animation_logo 1.5s;
    -moz-animation: animation_logo 1.5s;
}

@keyframes animation_logo {
    from {
        transform: scale(0,0);
        -webkit-transform: scale(0,0);
    }
    to {
        transform: scale(1,1);
        -webkit-transform: scale(1,1);
    }
}
@-webkit-keyframes animation_logo {
    from {
        transform: scale(0,0);
        -webkit-transform: scale(0,0);
    }
    to {
        transform: scale(1,1);
        -webkit-transform: scale(1,1);
    }
}
@-moz-keyframes animation_logo {
    from {
        transform: scale(0,0);
        -moz-transform: scale(0,0);
    }
    to {
        transform: scale(1,1);
        -moz-transform: scale(1,1);
    }
}

.toppage_logo img {max-width: 100%;}
@media screen and (max-width: 767.89px) {
    .top_section {
        /*background: url(../images/city.png) top center no-repeat;*/
        background-size: auto 90%;
		background: #000;
    }
    .top_section .logo {        
        top: 10px;
        left: 10px;
    }
	.toppage_logo {
    width: 80%;
    height: 100%;
    display: flex;
    -webkit-display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
    margin: 0 auto;
}
    .toppage_logo a { width: 50%; }
}



/*-------------first_section----------------*/
.first_section {
    /*background: url(../images/city.png) top center no-repeat;
    background-size: 100% auto;*/
}
.first_section .fp-tableCell {
    background: url(../images/black-1.png) bottom left no-repeat;
    background-size: auto 100%;
}
.first_section .fix1 {
    background: url(../images/color-11.png) bottom right no-repeat;
    background-size: auto 100%;
    z-index: 0;
}
.first_section .fix2 {
    background: url(../images/color-12.png) top left no-repeat;
    background-size: auto 100%;
    z-index: 0;
}

.body_section1 {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 2;
}

.desc_body_section1 {
    background: #fff;
    border: 1px solid #999;
    padding: 50px 30px;
}

@media screen and (max-width: 767.89px) {
    .first_section {
        /*background: url(../images/city.png) top center no-repeat;*/
        background-size: auto 90%;
		background: #000;
    }

    .body_section1 {
        padding: 0 15px;
    }

    .desc_body_section1 {
        padding: 20px;
    }
}

.body_section1>div {text-align: center; max-width: 700px;}
.body_section1>div img {margin-bottom: 40px;}
.desc_body_section1 h3 {
    font-size: 18px;
    margin-bottom: 20px;
}
.desc_body_section1 p {line-height: 24px;}


/*-------------second_section----------------*/
.second_section {
   /* background: url(../images/city.png) top center no-repeat;
    background-size: 100% auto;*/
}
.second_section .fp-tableCell {
    background: url(../images/black-2.png) bottom right no-repeat;
    background-size: auto 100%;
}
.second_section .fix1 {
    background: url(../images/color-21.png) bottom left no-repeat;
    background-size: auto 100%;
    z-index: 0;
}


.body_section2 {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 2;
}
.body_section2>div {width: 85%;}

@media screen and (max-width: 767.89px) {
    .second_section {
        /*background: url(../images/city.png) top center no-repeat;*/
        background-size: auto 90%;
		background: #000;
    }
    .body_section2 {
        padding: 40px 15px;
    }
    .body_section2>div {width: 100%;}
}

.body_section2>div>p,
.body_section3>div>p,
.body_section4>div>p {text-align: center; margin-bottom: 30px;}
.body_section2>div .itm {
    background: #fff;
    padding: 20px;
}
@media screen and (min-width: 992px) {
    .body_section2>div .itm {
        width: 31%;
        margin-left: 3.5%;
    }
}

@media screen and (max-width: 767px) {
    .body_section2>div .itm {
        margin-top: 20px;
    }
}
.body_section2>div .itm:first-child {margin-left: 0;}
.body_section2>div .itm:nth-child(4) {margin-left: 0; margin-top: 30px;}
.body_section2>div .itm h3 {
    border: 3px solid #000;
    line-height: 40px;
    text-align: center;
    font-size: 18px;
  
}
.body_section2>div .itm>div {
    font-size: 13px;
    padding: 10px 10px 0 10px;
    min-height: 130px; 
}
.body_section2>div .itm p {
    line-height: 18px;
    margin: 5px 0;
}

/*-------------third_section----------------*/
.third_section {
    /*background: url(../images/city.png) top center no-repeat;
    background-size: 100% auto;
	background: rgba(137,255,255,.8);*/
	background: rgba(0,0,0,.7)
}
.third_section .fp-tableCell {
    background: url(../images/black-3.png) bottom left no-repeat;
    background-size: auto 100%;
}
.third_section .fix1 {
    background: url(../images/color-31.png) bottom left no-repeat;
    background-size: auto 100%;
    z-index: 0;
}
.third_section .fix2 {
    background: url(../images/color-32.png) top right no-repeat;
    background-size: auto 100%;
    z-index: 0;
}

@media screen and (max-width: 767.89px) {
    .third_section {
        /*background: url(../images/city.png) top center no-repeat;*/
        background-size: auto 90%;
		background: #000;
    }
}
.body_section3 {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 2;
}
.body_section3>div {
    width: 100%;
}
.body_section3 .desc_body_section3 {
    width: 70%;
    /*background: #fff;*/
    padding: 40px;
	margin: 0 auto;
	line-height: 2;
	color: #FFF;
	}
.body_section3 .desc_body_section3 .row .row+.row {
    margin-top: 15px;
}
@media screen and (max-width: 767.89px) {
    .body_section3 .desc_body_section3 {
        width: 100%;
        padding: 15px;
		line-height: 1.6;
    }
    .body_section3 .desc_body_section3 .row .row+.row {
        margin-top: 5px;
    }
}
.body_section3 .desc_body_section3 .row .row+.row p {line-height: 20px;}

/*-------------fouth_section----------------*/
.fouth_section {
    background: rgba(255,255,255,0.5);
}
.body_section4 {
    display: flex;
    display: -webkit-flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    padding-top: 65px;
}
.body_section4>div {
    min-width: 85%;
}

@media screen and (max-width: 767.89px) {
    .body_section4 {
        padding-left: 15px;
        padding-right: 15px;
        padding-top: 0;
    }
    .body_section4>div {
        min-width: 100%;
    }
    .desc_body_section4 {
        padding: 0 15px;
    }
}

.desc_body_section4 form {
    max-width: 350px;
    margin: 0 auto;
}
.desc_body_section4 form input[type="text"],
.desc_body_section4 form textarea {
    width: 100%;
    border: none;
    background: #000;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    outline: none;
    height: 30px;
    text-indent: 10px;
	color: #FFF;
	margin-top: 10px;
}
.desc_body_section4 form textarea {
    height: 120px;
    text-indent: 0;
    padding: 5px 10px;
}
.desc_body_section4 form dl {margin-bottom: 15px;}
.desc_body_section4 form dl dd button {
    border: 1px solid #bce0fd;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    background: #0083d4;
    height: 30px;
    width: 80px;
    text-align: center;
	color: #FFF;
    display: inline-block;
}


.btn-prev {position: absolute; top: 50%; left: 20px; margin-top: -35px; z-index: 9;}
.btn-next {position: absolute; top: 50%; right: 20px; margin-top: -35px; z-index: 9;}
.btn-prev a,.btn-next a {display: block;}
.btn-prev img,.btn-next img {height: 70px;}

#bg{
    width: 100%;
    height: 100%;
    z-index: -9999;
    position: fixed;
    overflow: hidden;
    left: 0;
    top: 0;
}
#bgPlayer{
    position: absolute;
}
.overlay{
    width: 100%;
    height: 100%;
    z-index: 2;
    position: fixed;
    left: 0;
    top: 0;
    /* background: rgba(255,255,255,.4); */
}

footer {
    position: fixed; 
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    background: #000;
    color: #fff;
    text-align: center;
    font-size: 12px;
    padding: 10px 0;
}

placeholder {
	color: #FFF;
}

.error{
    color:#FFF;
	margin: 5px 0;
	background: #0083d4;
	padding: 10px;
}

.contact_text{
	
	padding: 0 0 10px 0;
	
}

.owl-theme .owl-nav [class*=owl-] {
    font-size: 28px !important;
    padding: 2px 10px !important;
}


.name{
	
	text-align: right;
	padding: 0 80px 0 0px;
	
}

@media (min-width: 992px) {
    .desc_body_section3 .row .col-md-offset-3 {
        margin-left: 39% !important;
    }
}

/* 2023.09.12追加 */
.cielasstor{
    color: #000;
    text-decoration: underline;
}
.cielasstor:hover{
    color: #000;
    }