@charset "UTF-8";

/* overwrite
-------------------------*/
/* ---
 UNI
-------------- */

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

.shadowbox {
box-shadow: 0 0 6px rgba(60, 60, 60, 0.1);
}

/* -------------------------------
 header
-------------------------------- */
.wrapper {
padding-top:0;
background-color: #f7f7f7;
}

    header{
    height:auto!important;
    }

    header .row_inner{
    position: absolute;
    top:0;
    left:0;
    right:0;
    margin: auto;
    width:auto;
    max-width: 1500px!important;
    min-width:1280px!important;
    height:auto!important;
    }

    header h2{
    background:url(../img/frontpage/header_tit.png) no-repeat center center;
    width:840px;
    height:320px;
    position: relative;
    margin: 20% auto 0;
    }


    @media screen and (max-width:1670px) {
        header h2{
        margin: 15% auto 0;
        }
    }
    @media screen and (max-width:1540px) {
        header h2{
        margin: 7% auto 0;
        }
    }

header a.scrollbtn{
display: block;
background:url(../img/element/icon_btn_mouse.png) no-repeat center center;
width:60px;
height:60px;
position: absolute;
left: 0;
right: 0;
bottom: 80px;
margin: auto;
}

/*--------------------------------
 header main visual
-------------------------------- */

    #mv{
    position: relative;
    /*
    background:url(../img/frontpage/header_bg.jpg) no-repeat center top;
    */
    width:100%;
    min-width: 1280px;
    height:auto!important;
    margin:0 auto 0;
    overflow: hidden;
    }


/*------------------------
 AST_LATEST(INC)
-------------------------*/

#ast_latest {
display: block;
width:590px;
padding:30px;
position: absolute;
left:0;
bottom:10px;
background-color:#fff;
}

#ast_latest .latestli{
position: relative;
display:block;
width:540px;
height:180px;
margin:0;
}

#ast_latest .latestli .rectimg{
display: inline-block;
position: relative;
vertical-align: top;
}

#ast_latest .latestli img.fitimg,
#ast_latest .latestli .fitimg img{
position: relative;
width: 270px;
height:180px;
object-fit: cover;
}

#ast_latest .latestli .desc{
overflow: hidden;
position: relative;
display: inline-block;
vertical-align: top;
width:260px;
height:180px;
padding-left:20px;
color:#111;
}

#ast_latest .latestli h3,
#ast_latest .latestli h4 {
overflow: hidden;
display: block;
height:108px;
font-size: 16px;
font-weight: bold;
line-height: 34px;
margin-bottom:10px;
}

#ast_latest .latestli .desc::after{
content:"";
background:url(../img/frontpage/latest_btn.png) no-repeat center center;
width:180px;
height:18px;
position: absolute;
bottom:0;
right:20px;
}

#ast_latest .latestli .cattag {
position: absolute;
top:-4px;
left:-4px;
}


/*--------------------------------
BLOG
-------------------------------- */

/* #works(works)
-------------------------------- */

#works{
overflow: hidden;
text-align: center;
margin: 0 auto ;
}

#works h3{
position: relative;
background:url(../img/frontpage/works_tit.png) no-repeat center center;
display: block;
width:300px;
height:80px;
margin:30px auto 20px;
}

@media screen and (max-width:1770px){

	#works .works2list .works2li:nth-child(4){
	display: none;
	}

}


#works a.btn_to_works{
position: relative;
background:url(../img/frontpage/works_btn.png) no-repeat center center;
display: block;
width:340px;
height:62px;
margin:30px auto 70px;
}

/* #system
(news/event)
(blog)
-------------------------------- */

#system{
overflow: hidden;
text-align: center;
margin:70px auto;
}

#system .blog2list{
width:1280px!important;
padding:0 40px;
}

#system .parbox{
overflow: hidden;
position: relative;
display: block;
width:580px;
}

#system .parbox h3{
position: relative;
display: block;
width:300px;
height:80px;
margin:50px auto 20px;
}
#system .parbox.par_l h3{ background:url(../img/frontpage/news_tit.png) no-repeat center center; }
#system .parbox.par_r h3{ background:url(../img/frontpage/blog_tit.png) no-repeat center center; }


#system .parbox .blog2ul {
display: block;
overflow: hidden;
width:580px;
}

#system .parbox .blog2ul .blog2li{
display: block;
width:580px;
}


#system .desc{
width:280px;
}

#system .desc .cont{
height:76px;
margin-bottom: 30px;
}

#system .desc h4{
overflow: hidden;
line-height: 30px;
font-weight: bold;
display: block;
height:90px;
}

#system .desc .date{
font-size:13px;
color:#B6B6B6;
font-weight:bold;
padding:0;
margin-top: 20px;
}

#system .desc .btn_to_read {
background:url(../img/frontpage/btn_blog.png) no-repeat center center;
display: block;
width:160px;
height:36px;
position:absolute;
left:0;
right:0;
bottom:30px;
margin:auto;
}

#system .parbox a.btn_to_news,
#system .parbox a.btn_to_blog {
display: block;
background:url(../img/frontpage/news_btn.png) no-repeat center center;
width:340px;
height:61px;
position: relative;
margin: 30px auto;
}


/*--------------------------------
 SOCIAL
-------------------------------- */

/*
 #IG_STRIP
-------------------------------- */

#ig_strip{
position:relative;
display:block;
margin:0 auto;
overflow: hidden;
text-align: center;
}

#ig_strip a{
background:url(../img/frontpage/ig_strip.jpg) center center;
display: block;
width:100%;
height:272px;
margin-bottom:0;
}

/*--------------------------------
OWN MAIN PART
-------------------------------- */

/* #concept
-------------------------------- */

#concept{
overflow: hidden;
background:url(../img/frontpage/concept_bg.jpg) no-repeat center top;
height:640px;
padding-top:0;
margin: 0 auto 0;
}

#concept .card{
display: block;
width:520px;
height:280px;
padding:0 40px;
position: absolute;
left:0;
bottom:10px;
background-color: #fff;
}

#concept .card::after{
content:"";
background:url(../img/frontpage/concept_btn.png) no-repeat left center;
width:400px;
height:18px;
position: absolute;
bottom:40px;
left:40px;
}

#concept .card h3{
background:url(../img/frontpage/concept_tit.png) no-repeat center left;
width:180px;
height:32px;
margin-top: -15px;
margin-bottom: 20px;
}

#concept .card p{
font-size: 15px;
letter-spacing: 0.02em;
line-height: 2em;
}

/* intro (L/R)
-------------------------*/

#intro{
overflow: hidden;
text-align: center;
padding-top:0;
background-color: #fff;
margin: 0 auto 0!important;
}

#intro .row_inner{
display: block;
}

#intro li {
display: block;
}

#intro li.li01 h3 {
background:url(../img/frontpage/intro_tit.png) no-repeat center  center;
width:660px;
height:170px;
margin: 100px auto 0;
}
#intro li.li01{
overflow: hidden;
background:url(../img/frontpage/intro_01_img_w.png) no-repeat center center;
height:888px;
}
#intro li.li02{
overflow: hidden;
background:url(../img/frontpage/intro_02_img_w.png) no-repeat center center;
height:739px;
margin-top:-80px;
}
#intro li.li03{
overflow: hidden;
background:url(../img/frontpage/intro_03_img_w.png) no-repeat center center;
height:708px;
}

#intro .card{
display:block;
padding:0;
text-align: left;
width:550px;
height:470px;
position: absolute;
}

#intro li.li01 .card{ padding-left: 80px; right:20px; top:60px;}
#intro li.li02 .card{ padding-right: 80px; left:20px; top:140px; }
#intro li.li03 .card{ padding-left: 80px; right:20px; top:190px;}


#intro li .card::before{
content:"";
display: block;
width:80px;
height:260px;
position:absolute;
}
#intro li.li01 .card::before{ background:url(../img/frontpage/intro_01_tit.png) no-repeat left top; left:0; top:4px; }
#intro li.li02 .card::before{ background:url(../img/frontpage/intro_02_tit.png) no-repeat right top; right:0; top:4px; }
#intro li.li03 .card::before{ background:url(../img/frontpage/intro_03_tit.png) no-repeat left top; left:0; top:4px; }


#intro .card h4{
position: relative;
display: block;
font-size:24px;
font-weight: bold;
line-height:1.8em;
letter-spacing: 0.1em;
margin-bottom:30px;
}

#intro .card p{
text-align: justify;
letter-spacing: 0.02em;
margin-bottom:55px;
}

#intro li .card a.btn_to {
display: block;
width:352px;
height:73px;
margin-top:40px;
}
#intro .li01 .card a.btn_to { background:url(../img/frontpage/intro_01_btn.png) no-repeat center center; }
#intro .li02 .card a.btn_to { background:url(../img/frontpage/intro_02_btn.png) no-repeat center center; }
#intro .li03 .card a.btn_to { background:url(../img/frontpage/intro_03_btn.png) no-repeat center center; }


/* docment_request
-------------------------*/
.doc_req{
    background-color: #EEE9E2;
    height: 280px;
    margin: 70px auto;
    position: relative;
    width: 1200px;
}

.doc_req_img{
    float: left;
    position: absolute;
    top: -45px;
    left: 20px;
    width: 610px;
    z-index: 5;
}

.doc_req_desc{
    float: right;
    position: relative;
    top: -30px;
    width: 590px;
}

.doc_req_head{
    background-color: #A18860;
    color: white;
    font-size: 20px;
    height: 60px;
    line-height: 60px;
    width: 500px;
}

.doc_req_title{
    font-size: 20px;
    font-weight: bold;
}

.doc_req_title span{
    font-size: 16px;
    font-weight: 600;
    padding-left: 20px;
    vertical-align: middle;
}

.doc_req_text{
    line-height: 1em;
    padding: 20px 10px 20px 35px;
}

.caution_word{
    color: red;
    font-weight: bold;
}

.btn_to_doc_req{
    display: block;
    background: url(../img/frontpage/doc_req_03.jpg) no-repeat center center;
    width: 285px;
    height: 61px;
    position: relative;
    margin-top: 20px;
}