@charset "utf-8";
/* CSS Document */
@media(max-width:1230px){
/* wrapper */
header{ width:auto;}
header h1{left:15px;}
/* mainvisual */
#main-block{ width:100%; height:auto; position:static; overflow:hidden;}
#main-block .main-image{ display:none;}
#main-block .main-image-md{ display:block;}

/* topnews */
#news-block{width:auto;}
/* listselect */
#list-wrapper .list-select-block{width:100%;padding:0 15px;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}
/* listblock */
.list-content-block{ width:auto;margin:0 1%;}
.list-content-block .sec-detail{width:24.2%; margin:0 1% 10px 0;}
.list-content-block .sec-detail:nth-of-type(4n){ margin:0 0 10px 0;}
/* article */
#article-main-block .main-image{ width:100%; min-width:1400px;}
#article-main-block .main-wrapper{ width:auto; margin:0 15px;left:0; margin-left:15px;}
#article-main-block .main-wrapper .main-detailblock{ width:65%; padding-left:5%;}
article#article-wrapper .content-purpose{ width:auto; margin:64px 15px 40px 15px;}
/* article-codeeditor */
article#article-wrapper .content-block{ width:auto; margin:0 0 10px 0;}

/* article-person */
article#article-wrapper .person .pn-ttl span{ width:auto; margin:0 15px;}
article#article-wrapper .person .p-detail{ width:100%;}
article#article-wrapper .person .p-detail .photo{ width:40%;}
article#article-wrapper .person .p-detail .photo .personal{ width:90%;}
/* article-service */
article#article-wrapper .service{ width:auto; margin:149px 15px 63px 15px;}
/* relation */
.cmn-relation-block{ width:auto; margin:63px 0 0 0;}
/* faq */
#faq .cat-block dl{ width:auto; margin:0 30px 48px 30px;}
#faq .cat-block dl:last-child{ margin:0 30px;}
/* bottombtn */
.btm-btn{ width:auto;}
.btm-btn a{margin:0 50px;}
/* footer */
footer .f-contents{ width:auto;}
footer .f-contents p{top:6px;}
footer .f-contents p span {top:6px; margin-top:18px;}
footer .f-contents small{ text-align:left; top:36px; right:0; left:153px;}
}
@media(max-width:900px){
/* top */
#list-wrapper .list-tab{ margin:30px 0; height:80px; padding-top:10px;}
#list-wrapper .list-tab li a{ display:block; height:80px; padding-top:10px;}
#list-wrapper .list-tab span{ font-size:28px; vertical-align:-3px;}
#list-wrapper .list-tab .private{height:90px;}
#list-wrapper .list-tab .government{ height:90px;}
#list-wrapper .list-tab .acv.private, #list-wrapper .list-tab .acv.government{ height:80px; padding-top:10px;}
/* listselect */
#list-wrapper .list-select-block{ display:block; width:auto; margin:0 15px 31px 15px; padding:0;}
#list-wrapper .list-select-block .termsbtn{ display:block; width:150px; margin:0 auto; padding-left:0; padding-top:10px;}
#list-wrapper .list-select-block .termspd{ display:block; padding-right:0; padding-bottom:10px;}
#list-wrapper .list-select-block .termspd .termspd-inner .pdicon1{top:8px; left:10px;width:36px;}
#list-wrapper .list-select-block .termspd .termspd-inner .pdicon2{top:9px; left:10px;width:37px;}
#list-wrapper .list-select-block .termspd .termspd-inner .pdicon3{top:8px; left:16px;width:24px;}
#list-wrapper .list-select-block .termsbtn input[type=submit]{width: 150px;height: 50px;line-height: 50px;background-size:28px auto;}
#list-wrapper .list-select-block .termsbtn input[type=submit]:hover{background-color:#1fc3e0;}
/* listblock */
.list-content-block{ width:auto;margin:0 15px;}
.list-content-block .sec-detail{ width:48.5%; margin:0 3% 15px 0;}
.list-content-block .sec-detail:nth-of-type(4n){margin:0 0 15px 0;}
.list-content-block .sec-detail:nth-of-type(2n){margin:0 0 15px 0;}
.list-content-block .sec-detail .group{ padding:15px;}

/* article */
#article-main-block .main-wrapper .main-detailblock .mainttl{ font-size:26px; line-height:1.4em;}
#article-main-block .main-wrapper .main-detailblock .contractors{ font-size:21px;}
#article-main-block .main-wrapper .main-detailblock .contractors span{ font-size:16px;}
#article-main-block .main-wrapper .main-detailblock .period{ font-size:14px;}
article#article-wrapper .content-purpose p{ margin:0 30px;}
/* article-codeeditor */
article#article-wrapper .content-block p{ line-height:2.1em; margin:0 30px 45px 30px;}
article#article-wrapper .content-block figure{ margin:0 30px 64px 30px;}
/* article-person */
article#article-wrapper .person .pn-ttl{ font-size:28px;}
article#article-wrapper .person .p-detail{ display:block;}
article#article-wrapper .person .p-detail .photo{ display:block; width:auto; margin-bottom:33px;}
article#article-wrapper .person .p-detail .photo .personal{width:410px;}
article#article-wrapper .person .p-detail .txt{ display:block; }
/* article-service */
article#article-wrapper .service .s-content{ padding:64px 30px 40px 30px;}
article#article-wrapper .service .s-content:nth-of-type(1){ padding:20px 30px 40px 30px;}

/* bottombtn */
.btm-btn{ font-size:24px; line-height:1.3em;}
.btm-btn a{ margin:0 15px;padding:27px 60px;}
.btm-btn a br{ display:inline;}
}

@media(max-width:560px){
/* Fonts */
body {
	font-family: Meiryo, "メイリオ", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
}
nav ul li, #article-main-block .main-wrapper .main-detailblock, #list-wrapper .list-tab, article#article-wrapper .content-purpose p, article#article-wrapper .person .pn-ttl, article#article-wrapper .person .p-detail .photo .personal, article#article-wrapper .service .s-content .s-contttl, .cmn-relation-block .cmn-relationttl, #faq .ttl, #faq .cat-block .cat-ttl, #faq .cat-block dl dt, .btm-btn, .cmnttl{font-family: Meiryo, "メイリオ", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif; font-weight:bold;}

/**/
span.smnone{ display:none;}
/* wrapper */
#second-wrapper{ padding-top:60px;}
/* header */
header{height:60px;}
header h1{ width:107px;top:12px;}
/* nav */
nav ul{ margin-top:60px;}
/* mainvisual */
#main-block{ width:100%; height:auto; position:static; overflow:visible;}
#main-block .main-image-md{ display:none;}
#main-block .main-image-sm{ display:block;}#main-block .main-image-sm img{ width:100%;}
/* topnews */
#news-block{ margin:20px 15px 0 15px; width:auto; padding:0;}
#news-block dl{ margin-bottom:15px;}
#news-block dt{ width:90px; font-size:15px;}
#news-block dd{ line-height:1.4em; font-size:13px;}
/* top */
#list-wrapper .list-tab{ margin:30px 0 28px 0; height:55px; padding-top:15px; font-size:14px; line-height:1.6em;}
#list-wrapper .list-tab li a{ display:block; height:55px; padding-top:15px;}
#list-wrapper .list-tab li a:hover{background-color:#eaebee;}
#list-wrapper .list-tab span{ font-size:20px; line-height:1em; vertical-align:-3px;}
#list-wrapper .list-tab .private{ height:70px;}
#list-wrapper .list-tab .government{ height:70px;}
#list-wrapper .list-tab .acv.private, #list-wrapper .list-tab .acv.government{ height:55px; padding-top:15px;}
#list-wrapper .list-tab .acv.private:after{ width:42px; height:15px; bottom:-13px; margin-right:-21px; background-size:42px auto; }
#list-wrapper .list-tab .acv.government:after{ width:42px; height:15px; bottom:-13px; margin-left:-21px; background-size:42px auto; }

/* listblock */
.list-content-block{ width:auto;margin:0 15px 13px 15px;padding:0 0 0 0}
.list-content-block .sec-detail{ width:auto; float:none; margin:0 0 20px 0;}
.list-content-block .sec-detail:nth-of-type(4n){margin:0 0 20px 0;}
.list-content-block .sec-detail:nth-of-type(3n){margin:0 0 20px 0;}
.list-content-block .sec-detail:nth-of-type(2n){margin:0 0 20px 0;}
.list-content-block .sec-detail:hover .group{background-color: rgba(31,195,224,0.95);}
.list-content-block .sec-detail .imgblock{ position:relative;}
.list-content-block .sec-detail ul{ top:12px; left:12px; margin-right:12px;}
.list-content-block .sec-detail ul li{background-color: rgba(255,255,255,0.90); padding:10px 12px; font-size:14px; margin:0 2px 2px 0;}
.list-content-block .sec-detail .group{ position:absolute; width:100%;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box; bottom:0; left:0; background-color: rgba(31,195,224,0.95); padding:20px 30px; color:#ffffff;}
.list-content-block .sec-detail .group .ttl1{ font-size:14px;}
.list-content-block .sec-detail .group .ttl2{ font-size:21px; margin-bottom:0;}
.list-content-block .sec-detail .group p{ display:none;}
.list-content-block .sec-detail .group .ttl2:after{ content:""; position:relative; right:-1em; float:right; width:1em; height:100%; background-color:#1fc3e0;}
.list-content-block .sec-detail:hover .group .ttl2:after{ background-color: rgba(31,195,224,0.95);}
.list-content-block .sec-detail:hover .imgblock img{opacity:1;}
.list-content-block .sec-detail:hover:before,.list-content-block .sec-detail:hover .imgblock:after{ display:none;}
/* article */
#article-main-block{ height:200px;}
#article-main-block .main-wrapper{ height:200px;}
#article-main-block .main-image{ display:none;}
#article-main-block .main-image-sm{ display:block; min-width:375px;}
#article-main-block .main-wrapper .main-wrapper-topblock{ height:200px;}
#article-main-block .main-wrapper .main-logo{ width:30%;}
#article-main-block .main-wrapper .main-detailblock{ width:60%; padding-left:5%; text-align:center;}
#article-main-block .main-wrapper .main-detailblock .contractors{ font-size:18px; line-height:1.6em; margin-bottom:15px;}
#article-main-block .main-wrapper .main-detailblock .contractors span{ font-size:13px; line-height:1.6em;  vertical-align:2px; margin-left:10px;}
#article-main-block .main-wrapper .main-detailblock .period{ font-size:15px; line-height:1em; vertical-align:bottom;}
#article-main-block .main-wrapper .main-detailblock .period br{ display:inline;}
#article-main-block .main-wrapper .main-detailblock .period span.pr-small{ font-size:13px; display:inline-block; margin-top:8px;}
article#article-wrapper .content-purpose{ margin:20px 15px 19px 15px;}
article#article-wrapper .content-purpose p{ margin:0; font-size:16px; line-height:1.6em;font-weight:normal;}
article#article-wrapper .content-purpose p.mainttl{ font-size:20px;padding-bottom:16px;font-weight:bold;}
article#article-wrapper .organization{ margin-bottom:30px;}
/* article-codeeditor */
article#article-wrapper .content-block{ margin:0 15px 10px 15px;}
article#article-wrapper .content-block p{ line-height:1.7em; margin:0 0 28px 0;}
article#article-wrapper .content-block figure{ margin:0 0 30px 0;}
article#article-wrapper .content-block figure figcaption{margin-top:13px;}
/* article-person */
article#article-wrapper .person{ margin-bottom:30px;}
article#article-wrapper .person .pn-ttl{ font-size:20px; text-align:left; line-height:1.4em;background-color:#eaebee; padding:23px 15px; margin-bottom:32px;}
article#article-wrapper .person .pn-ttl span{margin:0;}
article#article-wrapper .person .p-detail .photo{ padding:0 15px;}
article#article-wrapper .person .p-detail .photo .personal{ margin-top:-23px; padding:19px 15px; width:90%;}
article#article-wrapper .person .p-detail .photo .personal dt{ margin-bottom:5px; font-size:14px; line-height:1.2em;}
article#article-wrapper .person .p-detail .photo .personal dd{ font-size:27px; font-size:20px; line-height:1.2em;}
article#article-wrapper .person .p-detail .txt{ padding:0 15px;}
article#article-wrapper .person .p-detail .txt p{ font-size:15px; line-height:1.8em;}
/* article-service */
article#article-wrapper .service{ margin:80px 15px 34px 15px; border:6px solid #eaebee;}
article#article-wrapper .service .s-ttl{ width:80px; height:80px; margin:-45px auto 0 auto;-moz-border-radius: 40px;-webkit-border-radius: 40px;border-radius: 40px; font-size:12px; line-height:80px;}
article#article-wrapper .service .s-content .s-contttl{ font-size:18px; margin-bottom:22px; text-align:left; line-height:1.5em; }
article#article-wrapper .service .s-content p{ font-size:15px; line-height:1.8em;}
article#article-wrapper .service .s-content{ padding:25px 25px 40px 25px; border-bottom:6px solid #eaebee;}
article#article-wrapper .service .s-content:nth-of-type(1){ padding:25px 25px 22px 25px;}
/* relation */
.cmn-relation-block{ margin:0; margin-top:30px;}
.cmn-relation-block .cmn-relationttl{ display:none;}
/* faq */
#faq .ttl, .cmnttl{ font-size:20px; margin-bottom:15px;}
#faq .cat-block .cat-ttl{ font-size:18px; padding:15px 15px; margin-bottom:32px;}
#faq .cat-block dl{ width:auto; margin:0 0 32px 0; padding:0 15px 32px 15px;}
#faq .cat-block dl:last-child{ margin:0;}
#faq .cat-block dl dt .qicon, #faq .cat-block dl dd .aicon{ width:50px; margin-left:15px;}
#faq .cat-block dl dt .qicon .icb, #faq .cat-block dl dd .aicon .icb{ height:50px; font-size:26px; line-height:50px;}
#faq .cat-block dl dt .qicon .icb:after, #faq .cat-block dl dd .aicon .icb:after{ top:37px; left:37px; width:17px; height:18px; background-size:17px auto;}
#faq .cat-block dl dt .qdetail, #faq .cat-block dl dd .adetail{padding-left:27px;}



/* bottombtn */
.btm-btn{ margin:0 15px;font-size:20px;}
.btm-btn a{ display:block; margin:0; padding:22px 0;background-size:10px auto; line-height:1.3em;}

.btm-btn a:hover{ background-color:#ff8963;}
/* pagetop */
#pagetop a{ width:60px; margin:29px auto 24px auto; padding-top:21px; background-size:17px auto;}
#pagetop a:hover{ color:#333333;}

/* footer */
footer{ height:150px;}
footer .f-contents{ margin:0 15px;}
footer .f-contents p{ width:100%;position:absolute; top:104px; left:0; text-align:center; vertical-align:middle; line-height:1.2em; font-size:12px;}
footer .f-contents p span{ position:absolute; top:-84px; left:0; display:block; width:100%; margin-top:0;margin-right:0; }
footer .f-contents small{ font-size:13px; top:56px; right:0; left:0; text-align:center; line-height:1.3em;}
footer .f-contents small br{ display:inline;}
}
@media(max-width:400px){
#article-main-block .main-wrapper .main-logo{ width:40%;}
#article-main-block .main-wrapper .main-detailblock{ width:50%; padding-left:2%; text-align:center;}
}
@media(max-width:375px){
/* nav */
nav{ width:100%;}
}