
/* CSS Document */

/*==================================================

top-contents
=================================================*/

#header-logo {
	opacity: 0;
    pointer-events: none;
}
.headerbg #header-logo {
	opacity: 1;
    pointer-events: auto;
}

.top-image {
	width: 100%;
    max-width: 100%;
	position: relative;
    margin: 0 auto;
}
.top-image .cover-item {
    width: 100%;
    position: absolute;
    left: 0;
    bottom: -1px;
    z-index: 2;
}
.top-image .photo {
	width: 100%;
	position: relative;
    overflow-x: hidden;
}
#video {
	width: 140%;
    display: block;
	position: relative;
    outline: none;
    left: 50%;
    -webkit-transform: translate(-50%, 0); 
    transform: translate(-50%, 0);
}
.top-title {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 0;
    
    -webkit-transform: translate(0, -50%); 
    transform: translate(0, -50%);
    z-index: 3;
}
.top-title h1 {
    width: 15%;
    max-width: 282px;
    margin: 0 auto 5%;
}
.top-title .playicon {
    width: 30%;
    max-width: 200px;
    cursor: pointer;
    margin: 0 auto;
}
.top-image .sitename {
    width: 30%;
    max-width: 307px;
    position: absolute;
    top: 45%;
    right: 5%;
    
    -webkit-transform: translate(0, -50%); 
    transform: translate(0, -50%);
    z-index: 2;
}
.top-image img {
	width: 100%;
	max-width: 100%;
	height: auto;
}

.op-txt {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; 
    
    background-image: url("../../images/bg1.jpg");
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: 100%;
    padding-bottom: 8%;
}
.op-txt p {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-size: 2.4rem;
    text-align: left;
    text-justify: none;
    font-family: "FOT-筑紫B丸ゴシック Std B";
    letter-spacing: .2em;
    line-height: 300%;
}
.op-txt-img {
    width: 85%;
    max-width: 600px;
    margin: 0 auto;
}
.op-txt-img img {
    width: 100%;
	max-width: 100%;
	height: auto;
}

.top-seminar {
    width: 100%;
    position: relative;
    background-color: #f2f2f2;
    padding: 40px 0 60px;
}
.top-seminar h1 {
    width: 90%;
    max-width: 540px;
    cursor: pointer;
    font-size: 2.4rem;
    color: #FFF;
    text-align: center;
    border: 4px solid #FFF;
    background-color: #ff5644;
    background-image: url("../../works/images/open.png");
    background-position: right 16px center;
    background-repeat: no-repeat;
    background-size: auto;
    margin: 0 auto;
    padding: 1em 100px 1em;
}
.top-seminar h1.open {
     background-image: url("../../works/images/close.png");
}
.top-seminar .inner {
    width: 90%;
    max-width: 1000px;
    margin: 30px auto 0;
}
.top-seminar .inner dl {
    width: 100%;
    margin-bottom: 40px;
}
.top-seminar .inner dl dt {
    width: 100%;
    cursor: pointer;
    color: #CCC;
    text-align: left;
    background-color: #999;
    
    padding: .8em 120px .8em 1em;
}
.top-seminar .inner dl dt.col {
    color: #FFF;
    background-color: #ff5644;
}
.top-seminar .inner dl dd {
    width: 100%;
    background-color: #FFF;
    text-align: left;
    padding: .5em 1em;
}
.top-seminar .inner dl dd p {
    color: #999;
}

.top-about {
    width: 100%;
    position: relative;
    background-color: #f2f2f2;
    background-image: url("../../images/bg_about.jpg");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 100px 0;
}
.top-about h1 {
    width: 5%;
    max-width: 54px;
    position: absolute;
    text-align: center;
    top: 110px;
    right: 21.5%;
    -webkit-transform: translate(-50%, 0); 
    transform: translate(-50%, 0);
    z-index: 2;
}
.top-about h1 span {
    display: none;
}
.top-about .inner {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
}
.top-about .inner a {
    width: 58.75%;
    display: block;
    color: #00243f;
    text-decoration: none;
}
.top-about .inner a:hover {
    opacity: 1;
}
.top-about .inner a:nth-of-type(even) {
    margin-top: 80px;
}
.top-about .inner a dl {
    width: 100%;
}
.top-about .inner a dl dt {
    overflow: hidden;
    box-shadow: 15px 15px 20px rgba(0,0,0,0.2);
}
.top-about .inner a dl dt img {
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
}
.top-about .inner a:hover dl dt img {
    -webkit-transform: scale(1.1, 1.1); 
    transform: scale(1.1, 1.1);
}
.top-about .inner a dl dd {
    width: 80%;
    margin-top: 40px;
    padding-left: 3%;
}
.top-about .inner a dl dd h2 {
    font-size: 4rem;
    line-height: 140%;
    background-image: url("../../images/circle.png");
    background-position: left center;
    background-repeat: no-repeat;
    background-size: auto;
    margin-bottom: 30px;
    padding-left: 1.2em;
}
.top-about .inner a dl dd h2 span {
    display: inline-block;
}

.top-about img {
	width: 100%;
	max-width: 100%;
	height: auto;
}

.top-works {
    width: 90%;
    max-width: 1200px;
    position: relative;
    margin: 120px auto;
}
.top-works h1 {
    width: 15%;
    max-width: 55px;
    position: absolute;
    text-align: center;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, 0); 
    transform: translate(-50%, 0);
    z-index: 2;
}
.top-works h1 span {
    display: none;
}
.top-works .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.top-works .inner a {
    width: 36.66%;
    display: block;
    color: #00243f;
    text-decoration: none;
}
.top-works .inner a:hover {
    opacity: .8;
}
.top-works .inner a:hover dl {
    -webkit-transform: translateY(-30px); 
    transform: translateY(-30px);
}
.top-works .inner a dl {
    width: 100%;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
}
.top-works .inner a dl dd {
    text-align: center;
}
.top-works .inner a dl dd h2 {
    display: inline-block;
    text-align: left;
    background-image: url("../../images/circle.png");
    background-position: left center;
    background-repeat: no-repeat;
    background-size: auto;
    margin: 30px 0;
    padding: .2em 0 .2em 45px;
}

.top-works img {
	width: 100%;
	max-width: 100%;
	height: auto;
}

.top-about p,.top-works p {
    letter-spacing: .2em;
}

.top-equipment {
    width: 100%;
    background-image: url("../../images/cover_foot.png"),url("../../images/bg_paper.jpg");
    background-position: center bottom,center center;
    background-repeat: no-repeat;
    background-size: 100%,cover;
    
    padding: 120px 0 180px;
}

.top-equipment a {
    width: 90%;
    max-width: 1000px;
    display: block;
    color: #00243f;
    text-decoration: none;
    margin: 0 auto;
}
.top-equipment a:hover {
    opacity: 1;
}
.top-equipment a dl {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; 

    background-color: #FFF;
}
.top-equipment a dl dt {
    width: 50%;
    overflow: hidden;
}
.top-equipment a dl dt img {
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
}
.top-equipment a:hover dl dt img {
    -webkit-transform: scale(1.1, 1.1); 
    transform: scale(1.1, 1.1);
}
.top-equipment a dl dd {
    width: 50%;
    text-align: center;
    padding: 5% 0;
}
.top-equipment h1 {
    width: 8%;
    max-width: 47px;
    margin: 0 auto;
}
.top-equipment h1 span {
    display: none;
}
.top-equipment img {
	width: 100%;
	max-width: 100%;
	height: auto;
}

/* modal */

.white-popup {
	width: 90%;
	max-width: 800px;
	position: relative;
	background: #000;
	margin: 0 auto;
	padding: 0;
	
	-webkit-transition: all 1s;
	-moz-transition: all 1s;
	-ms-transition: all 1s;
	-o-transition: all 1s;
	transition: all 1s;
}
.white-popup .inner {
    width: 100%;
    padding: 5%;
}
.white-popup .inner .movie {
    width: 100%;
}
.white-popup .inner .movie img {
    width: 100%;
	max-width: 100%;
	height: auto;
}

.white-popup .inner .txt p {
    color: #FFF;
    text-align: center;
    padding: 2em;
}

.white-popup .mfp-close {
	color: #FFF!important;
	background: #333;
}

.hamatube {
    width: 90%;
    max-width: 758px;
    position: relative;
    margin: 50px auto 0;
    z-index: 2;
}
.hamatube img {
    width: 100%;
	max-width: 100%;
	height: auto;
}

@media only screen and (min-width:1px) and (max-width: 768px) {
	

	.top-image {
        width: 100%;
	}
    
    .top-title {
        font-weight: 500;
    }
    
    .op-txt {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center; 

        background-image: url("../../images/bg1.jpg");
        background-position: center bottom;
        background-repeat: no-repeat;
        background-size: 100%;
        padding-bottom: 8%;
    }
    .op-txt p {
        font-size: 1.8rem;
        font-family: "FOT-筑紫B丸ゴシック Std B";
        letter-spacing: .1em;
        line-height: 180%;
    }

    .top-seminar {
        width: 100%;
        position: relative;
        background-color: #f2f2f2;
        padding: 4% 0 6%;
    }
    .top-seminar h1 {
        width: 90%;
        max-width: 540px;
        cursor: pointer;
        font-size: 2rem;
        background-image: url("../../works/images/open_sp.png");
        background-position: right 16px center;
        padding: 1em 35px 1em;
    }
    .top-seminar h1.open {
         background-image: url("../../works/images/close_sp.png");
    }
    .top-seminar .inner {
        width: 90%;
        margin: 6% auto 0;
    }
    .top-seminar .inner dl {
        width: 100%;
        margin-bottom: 6%;
    }
    .top-seminar .inner dl dt {
        width: 100%;
        text-align: left;
    }
    .top-seminar .inner dl dd {
        width: 100%;
        background-color: #FFF;
        text-align: left;
        padding: .5em 1em;
    }

    .top-about {
        width: 100%;
        position: relative;
        background-color: #f2f2f2;
        background-image: url("../../images/bg_about_sp.jpg"),url("../../images/bg_about_sp_w.jpg");
        background-position: right -70px top,center top;
        background-repeat: repeat-y,no-repeat;
        background-size: auto,cover;
        padding: 8% 0;
    }
    .top-about h1 {
        width: 100%;
        max-width: 100%;
        position: relative;
        top: 0;
        right: 0;
        -webkit-transform: translate(0, 0); 
        transform: translate(0, 0);
        margin-bottom: 8%;
        z-index: 2;
    }
    .top-about h1 span {
        display: block;
    }
    .top-about h1 img {
        display: none;
    }
    .top-about .inner {
        width: 90%;
        max-width: 1200px;
        margin: 0 auto;
    }
    .top-about .inner a {
        width: 100%;
        display: block;
        color: #00243f;
        text-decoration: none;
    }
    .top-about .inner a:hover {
        opacity: 1;
    }
    .top-about .inner a:nth-of-type(even) {
        margin-top: 10%;
    }
    .top-about .inner a dl {
        width: 100%;
    }
    .top-about .inner a dl dd {
        width: 85%;
        margin-top: 6%;
        padding-left: 3%;
    }
    .top-about .inner a dl dd h2 {
        font-size: 2rem;
        margin-bottom: 6%;
        padding: .5em 0 .5em 2.5em;
    }


    .top-works {
        width: 90%;
        max-width: 1200px;
        position: relative;
        margin: 10% auto;
    }
    .top-works h1 {
        width: 100%;
        max-width: 100%;
        position: relative;
        top: 0;
        left: 0;
        -webkit-transform: translate(0, 0); 
        transform: translate(0, 0);
        margin-bottom: 8%;
        z-index: 2;
    }
    .top-works h1 span {
        display: block;
    }
    .top-works h1 img {
        display: none;
    }
    .top-works .inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;

        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    .top-works .inner a {
        width: 45%;
        display: block;
        color: #00243f;
        text-decoration: none;
    }
    .top-works .inner a:hover {
        opacity: .8;
    }
    .top-works .inner a:hover dl {
        -webkit-transform: translateY(-30px); 
        transform: translateY(-30px);
    }
    .top-works .inner a dl {
        width: 100%;
        -webkit-transition: all 0.4s;
        transition: all 0.4s;
    }
    .top-works .inner a dl dd {
        text-align: center;
    }
    .top-works .inner a dl dd h2 {
        background-image: url("../../images/circle_sp.png");
        background-position: left center;
        background-repeat: no-repeat;
        background-size: auto;
        margin: 12% 0;
        padding: .2em 0 .2em 30px;
    }
    
    .top-about p,.top-works p {
        letter-spacing: 0;
    }

    .top-equipment {
        width: 100%;
        background-image: url("../../images/cover_foot.png"),url("../../images/bg_paper.jpg");
        background-position: center bottom,center center;
        background-repeat: no-repeat;
        background-size: 100%,cover;

        padding: 12% 0 18%;
    }
    .top-equipment a {
        width: 90%;
        max-width: 1000px;
        display: block;
        text-decoration: none;
        margin: 0 auto;
    }
    .top-equipment a:hover {
        opacity: 1;
    }
    .top-equipment a dl {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        background-color: transparent;
    }
    .top-equipment a dl dt {
        width: 100%;
        overflow: hidden;
    }
    .top-equipment a dl dd {
        width: 100%;
        text-align: center;
        padding: 0 0 8%;
    }
    .top-equipment h1 {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
    }
    .top-equipment h1 span {
        display: block;
    }
    .top-equipment h1 img {
        display: none;
    }
    
    .hamatube {
        margin: 5% auto 0;
    }
    
}

@media only screen and (min-width:1px) and (max-width: 568px) {
	

}
	
@media only screen and (min-width:1px) and (max-width: 480px) {
	

}

