@charset "UTF-8";

/*--------------------------------------------------------------------------------
　▼ contents
--------------------------------------------------------------------------------*/
#contents {
    background-color: #fff;
    color: #231815;
    padding: 0 0 50px;
}

/*--------------------------------------------------------------------------------
　▼ スライド　
--------------------------------------------------------------------------------*/
.slick-dotted.slick-slider {
    margin-bottom: 0;
}

.slider {
    width: 100%;
}

.slick-slide .for-pc {
    display: block;
    width: 100%;
}

.slick-slide .for-sp {
    display: none;
}

/*--------------------------------------------------------------------------------
　▼ トップページ　メイン画像
--------------------------------------------------------------------------------*/
.top-visual {
    color: #000000;
    overflow: hidden;
    position: relative;
}

.top-visual .sub-title {
    margin: 0 auto;
}

.top-visual .top-visual-img {
    font-size: 0;
    width: 100%;
}

.top-visual .top-visual-img img {
    width: 100%;
}

.top-visual .top-visual-txt {
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    text-align: center;
    width: 100%;
}

.top-visual .sec-title {
    font-size: 8rem;
}

.top-visual .sub-title {
    margin-bottom: 0;
}

.top-visual-scroll {
    position: absolute;
    right: -120px;
    top: 50%;
    padding-right: 120px;
    -ms-transform: translate(0,-50%);
    -webkit-transform: translate(0,-50%);
    transform: translate(0,-50%);
    -webkit-transform: rotate(90deg) translate(-50%,0);
    -ms-transform: rotate(90deg) translate(-50%,0);
    transform: rotate(90deg) translate(-50%,0);
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    line-height: 1.5;
}

.top-visual-scroll:before {
    width: 112px;
    -webkit-transform-origin: left center;
    -ms-transform-origin: left center;
    transform-origin: left center;
}

.top-visual-scroll:before {
    position: absolute;
    top: 50%;
    right: 0;
    height: 1px;
    content: '';
    background: #000000;
}

.dam-see-wrap {
    bottom: 4%;
    position: absolute;
    right: 4%;
    width: 20.5%;
}

.dam-see-wrap a {
    display: block;
}

.dam-see-wrap a img {
    width: 100%;
}



/*--------------------------------------------------------------------------------
　▼ トップページ　お知らせ
--------------------------------------------------------------------------------*/
.top-newstitle {
	background: #000000; color: #ffffff; padding: 5px 0px
}

.top-newstitle a {color:#ffffff;text-decoration:underline;}
.top-newstitle a:link {color:#ffffff;text-decoration:underline;}
.top-newstitle a:visited {color:#ffffff;text-decoration:underline;}
.top-newstitle a:hover {color:#ffffff;text-decoration:none;}
.top-newstitle a:active {color:#ffffff;text-decoration:none;}



.top-newslist {
	background: #ffffff;
	padding: 60px 0px 20px 0px;
}


.top-newslist ul {
list-style:none;
}

.top-newslist ul li{
list-style:none;
line-height:180%;
margin-bottom:7px;
}

.top-newslist ul li p {
    font-size:110%;
	margin-bottom: 0px;
}

.top-newslist ul li h3 {
	margin-top: 0px;
}

.top-newslist a {color:#000000;text-decoration:none;}
.top-newslist a:link {color:#000000;text-decoration:none;}
.top-newslist a:visited {color:#000000;text-decoration:none;}
.top-newslist a:hover {color:#666666;text-decoration:none;}
.top-newslist a:active {color:#666666;text-decoration:none;}

/*--------------------------------------------------------------------------------
　▼ 大林組 ダム構築管理 最新システム
--------------------------------------------------------------------------------*/
.top-dam {
    color: #fff;
    position: relative;
}

.top-dam .top-dam-img {
    font-size: 0;
    line-height: 1;
    width: 100%;
}

.top-dam .sec-title {
    font-size: 4vw;
    line-height: 1.3em;
    margin-bottom: 20px;
    text-align: left;
}

.top-dam .odict {
    position: relative;
}

.top-dam .sec-title .tm {
    font-size: 1.75vw;
    position: relative;
    right: -10px;
    bottom: 2vw;
}

.top-dam-wrap {
    position: absolute;
    left: 4%;
    width: 40%;
    top: 50%;
    -ms-transform: translate(0%,-50%);
    -webkit-transform: translate(0%,-50%);
    transform: translate(0%,-50%);
}

.top-dam-wrap a {
    display: block;
}

.top-dam .square {
    background-color: rgba(203, 53, 0, 0.85);
    height: 100%;
    padding: 50%;
    position: relative;
    width: 100%;
}

.square .top-dam-in {
    color: #fff;
    left: 0;
    padding: 30px 20px;
    position: absolute;
    top: 50%;
    width: 100%;
    -ms-transform: translate(0,-50%);
    -webkit-transform: translate(0,-50%);
    transform: translate(0,-50%);
}

.top-dam-en {
    display: inline-block;
    font-size: 2rem;
    font-family: 'M PLUS 1p';
    line-height: 2.9rem;
    vertical-align: middle;
}

.top-dam-arrow {
    display: inline-block;
    padding-right: 10px;
    vertical-align: middle;
    width: 20%;
}

.top-dam-arrow img {
    vertical-align: middle;
}

.top-dam-arrow:after {
    content: "";
    clear: both;
    display: block;
    width: 100%;
}

/*--------------------------------------------------------------------------------
　▼ ダムの世界
--------------------------------------------------------------------------------*/
.top-lesson {
    background-color: #def7fc;
    line-height: 1;
    position: relative;
}

.top-lesson-wrap {
    bottom: 3%;
    position: absolute;
    left: 17%;
    width: 17%;
}

.top-lesson-wrap a {
    display: block;
}

.top-lesson-wrap a img {
    width: 100%;
}

/*--------------------------------------------------------------------------------
　▼ ダムをつくる人たち　インタビュー
--------------------------------------------------------------------------------*/
.top-interview {
    background-image: url(../img/interview-bg.png);
    background-position: top center;
    background-size: contain;
    background-repeat: no-repeat;
    padding: 80px 0 0;
}

.top-interview .inner-box {
    width: auto;
    max-width: 1600px;
    padding: 0 7%;
}

.interview-list li {
    width: 32%;
}

.interview-list li:nth-child(3n - 1) {
    margin: 0 2%;
}

.interview-list .interview-title {
    font-family: 'mplus-regular';
    margin-top: 5px;
}

/*--------------------------------------------------------------------------------
　▼ トップページ　
--------------------------------------------------------------------------------*/
.top-gallery {
    margin: 0 auto;
    max-width: 1200px;
    padding: 80px 10% 20px;
    width: auto;
}

.top-gallery .inner-box {
    background: url(../img/gallery01.png),url(../img/gallery02.png),url(../img/gallery03.png),url(../img/gallery04.png) no-repeat;
    background-position: left top,right top,right bottom,left bottom;
    background-repeat: no-repeat;
    background-size: 100px auto;
    padding: 0 10% 10%;
}

.box_voice {
    text-align: center;
    width: 100%;
}

.box_voice a {
    display: block;
}

.top-gallery .list li {
    display: inline-block;
    line-height: 1;
    vertical-align: top;
    width: 16.6666%;
}


/*---------------------------------タブレット用----------------------------------*/
/*-----------------------------------------------------------------------------*/
@media only screen and (max-width: 1060px) {

    .top-dam .sec-title {
        font-size: 4.6vw;
        margin-bottom: 40px;
    }

    .dam-see-wrap {
        width: 25%;
    }

}

/*---------------------------------スマホ横から----------------------------------*/
/*-----------------------------------------------------------------------------*/
@media only screen and (max-width: 767px) {

    .top-dam .sec-title .tm {
        right: 0;
        bottom: 1.5vw;
    }

    .top-visual .sec-title {
        font-size: 2.8rem;
    }

    .top-visual .sub-title {
        width: 55px;
    }

    .top-visual-scroll {
        font-size: .6rem;
        right: -50px;
        padding-right: 47px;
        top: 40%;
    }

    .top-visual-scroll:before {
        right: 0;
        width: 35px;
    }

    .top-dam .sec-title {
        font-size: 4vw;
        line-height: 1.2rem;
        margin-bottom: 10px;
    }

    .top-dam-wrap {
        left: 10%;
        width: 43%;
    }

    .square .top-dam-in {
        padding: 20px 10px;
    }

    .top-dam .top-dam-wrap img {
        width: 17px;
    }

    .top-dam-arrow {
        width: 30%;
    }

    .top-dam-en {
        font-size: 1rem;
        line-height: 1.4rem;
        width: 65%;
    }

    .top-gallery,
    .top-interview {
        background-size: 200% auto;
        padding: 0;
    }

    .top-interview .inner-box {
        padding: 20px 6.25% 0;
    }

    .interview-list li {
        display: block;
        line-height: 1;
        margin: 0 0 15px;
        width: 100%;
    }

    .interview-list li:nth-child(3n - 1) {
        margin: 0 0 20px;
    }

    .interview-list li a {
        font-size: 1rem;
    }

    .interview-list li .img-box {
        float: left;
        padding-top: 25%;
        width: 35%;
    }

    .interview-list li .interview-txt {
        float: right;
        line-height: 1.5em;
        padding-left: 3%;
        width: 65%;
    }

    .interview-list li:after {
        content: "";
        clear: both;
        display: block;
    }

    .interview-cate {
        line-height: 1.3em;
        margin: 0 0 2%;
        padding: 1px 0;
    }

    .top-gallery {
        background-image: url(../img/interview-bg.png);
        background-position: top center;
        background-repeat: no-repeat;
        margin-bottom: 0;
        padding: 25px 0;
    }

    .top-gallery .inner-box {
        background-image: none;
        padding: 0 6.25%;
    }

    .top-gallery .list li {
        width: 33.333%;
    }
}

/*---------------------------------スマホ用----------------------------------*/
/*-----------------------------------------------------------------------------*/
@media screen and (max-width:480px) {

    .dam-see-wrap {
        width: 27%;
    }

    .top-lesson-wrap {
        width: 21%;
    }

}




/*---------------------------------角R----------------------------------*/
/*-----------------------------------------------------------------------------*/

.rimage10 {
	border-top-right-radius: 10px;   /* 右上 */
   	border-top-left-radius: 10px; /* 左上 */
	border-bottom-right-radius: 10px;   /* 右下 */
   	border-bottom-left-radius: 10px; /* 左下 */

   	/* ▼Safari,Chrome */
   	-webkit-border-top-right-radius: 10px;   /* 右上 */
   	-webkit-border-top-left-radius: 10px; /* 左上 */
	-webkit-border-bottom-right-radius: 10px;   /* 右下 */
   	-webkit-border-bottom-left-radius: 10px; /* 左下 */

   	/* ▼Firefox */
   	-moz-border-radius-topright: 10px;   /* 右上 */
   	-moz-border-radius-topleft: 10px; /* 左上 */
	-moz-border-radius-bottomright: 10px;   /* 右下 */
   	-moz-border-radius-bottomleft: 10px; /* 左下 */
}