@charset "utf-8";

/*  PC・ipad
===================================*/
body,html{
	min-width:1020px;
}

/* (max-width: 1180px) */
@media screen and (max-width: 1180px) {

    .pched .area {
    }
    
}

/* (max-width: 1024px) */
@media screen and (max-width: 1024px) {

    .pched .area .comp .img {
    }
    
    
}


	
/* Smart
===================================*/

/* (max-width: 768px) */
@media screen and (max-width: 768px) {
	
    body,html{
		min-width:auto;
	}
    
    body:before {
        background-size: auto;
    }
    

	.ie-mestxt {
		display: none;
	}

	.smt {
		display: block;
	}
	.pcx {
		display: none !important;
	}
		
	.hed-nav {
		display: none;
	}
    
	.acdion-box .scrollmk {
		display: block;
	}
    
    #sidebar {
        display: none;
    }
    
    
/*  smt-pusher
===================================*/
    .smt-pusher {
        -webkit-transition: all 0.5s;
        -moz-transition: all 0.5s;
        transition: all 0.5s;
        -webkit-transform: translate3d(0, 0, 0);
        -moz-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        will-change: transform;
    }
    .smt-fixed .smt-pusher {
        -webkit-transform: translate3d(-80vw, 0, 0);
        -moz-transform: translate3d(-80vw, 0, 0);
        transform: translate3d(-80vw, 0, 0);
    }
    
    
/*  smt-hed
===================================*/
    .pched {
        border-bottom: 3px solid #41454a;
    }
    .pched .area {
        display: block;
        padding: 0 15px;
        padding-bottom: 10px;
    }
    .pched .area .comp li img {
        width: 30px;
        margin-right: 6px;
    }
    .pched .area .comp {
        margin-top: 0;
        padding-right: 60px;
    }
    .pched .area .comp li span {
        font-size: 2.2rem;
    }
    .pched .area .comp li {
        font-size: 2.3rem;
    }
    .pched .area .comp .flx {
        margin: 0;
        flex-wrap: wrap;
    }
    
    .pched .area .plan {
        display: none;
    }
    .pched .area .link {
    position: absolute;
    right: 0;
    top: 0;
}
    .pched .area .comp .blk {
    margin-top: 20px;
}
    .pched .area .comp h1 {
    font-size: 3.0rem;
}
    .pched .area .comp h1 .kumamoto .two {
    font-size: 2.9rem;
}
    .pched .area .comp h2 {
    font-size: 1.4rem;
    margin-top: 0;
    letter-spacing: 0.2em;
}
    
    
	
/*  footer
===================================*/
    .wrapper footer {
        position: initial;
        bottom: initial;
        width: initial;
    }    
    .fot-comp .flx {
        display: block;
    }
    .fot-comp dl {
        margin: 0 20px;
        margin-top: 20px;
    }
    .fot-comp {
        margin: 0;
        margin-bottom: 20px;
    }
    .fot-comp dl:nth-of-type(3) {
        margin-top: 20px;
    }
    .fot-comp dd li a i {
        margin-left: -6px;
    }
    
    .fot-banner {
    }
    .fot-banner ol {
        display: -webkit-flex;
        display: flex;
        flex-flow: wrap;
        padding: 0 10px;
        padding-bottom: 30px;
    }
    .fot-banner ol li {
        width: 200px;
        padding: 0 10px;
    }
    .fot-banner ol li a {
        border: 1px solid #ccc;
    }
    .fot-banner ol li a:hover {
        border: 1px solid #5cb6ef;
        box-shadow: 0 0 10px #4aa3e1;
    }
    .fot-banner ol li p {
        background-color: #e3e3e3;
        border: 1px solid #ccc;
        line-height: 1.2;
        padding: 12px 0;
        font-size: 1.3rem;
    }
    .fot-banner ol li p {
        text-align: center;
    }
    
    
    
/* janp popup
===================================*/
    .janp {
        right: 5px;
    }
	.janp a i {
    }
    .pannav ul {
        padding: 10px;
    }
    .popup-inner {
        transform: translate(-50%,-46%);
        width: 70%;
    }
    
    
/*  共 通
===================================*/
    
	article {
        min-height: auto;
        padding: 0;
	}
    .wrapper article {
        padding-bottom: 70px;
    }
    
    .slmenu {
        display: none;
    }
    .slbody {
        width: 100%;
        margin-left: initial;
        padding-left: 20px;
        padding-right: 20px;
        position: relative;
        padding-bottom: 50px;
    }
    
    
/*  cover
===================================*/
    .cover-top {
        margin-bottom: 0;
    }
    .cover-top span {
        height: 440px;
        background-size: 1050px;
        background-position: top 30px center;
        /*background-image: url(../img/main3.png);*/
    }
    .cover-top .area {
        top: 0;
        left: 50%;
        transform: translate(-50%, 0);
        height: 440px;
        background-size: contain;
    }
    .cover-top .area h3 {
    font-size: 3.5rem;
}
    .cover-top .area h3 strong {
    font-size: 5.5rem;
}
    .cover-top .area .txt {
    }
    .cover-top .area .txt dt {
    font-size: 1.8rem;
}
    .cover-top .area .txt dd {
    font-size: 1.8rem;
}
    
    
/*  title
===================================*/
    .title-cover {
        margin-top: 10px;
    }
    .title-cover .area span {
        background-size: 545px;
    }
    .title-cover .wakuline {
        height: 150px;
    }
    .title-cover .wakuline h3 {
        font-size: 2.6rem;
        transform: translate(-50%, -48%);
    }
    .title-cover .wakuline h3 strong {
        font-size: 3.6rem;
    }
    
    .title-page .area {
    }

    .title-page .area a {
        padding: 0 10px;
    }
    .title-page .area h2 {
        font-size: 2.5rem;
        }
    .title-sub {
        padding: 20px 15px;
    }
    
    
/*  HOME
===================================*/
    .slbody.home {
        padding-bottom: 70px;
    }
    .slbody.inde {
        padding-left: 20px;
        padding-bottom: 70px;
    }
    .home-txt {
    }
    .home-txt .waku {
        text-align: center;
        padding: 25px 20px;
        background-position: bottom 0px right 10px;
        background-size: 160px;
    }
    
    .home-txt .txt-a h2 {
        font-size: 3.0rem;
    }
    .home-txt .txt-a h2 span {
        font-size: 3.0rem;
        margin-right: 5px;
    }
    .home-txt .txt-a h3 {
        font-size: 3.0rem;
        margin-left: 10px;
    }
    .home-txt .txt-b dl {
        margin-top: 15px;
        text-align: left;
    }
    .home-txt .txt-b dt {
        font-size: 1.5rem;
    }
    .home-txt .txt-b dd {
        font-size: 2.0rem;
        line-height: 1.4;
    }
    .home-txt .txt-b dd span {
        font-size: 1.5rem;
    }
    .home-txt .txt-b dd.column em {
        font-size: 1.5rem;
    }
    
    .home-txt .txt-b {
        margin-top: 25px;
    }
    .home-txt .txt-b dd p {
    }
    
    .home-txt .txt-c {
        margin-top: 30px;
        padding: 15px 20px;
        width: 70%;
        min-width: 380px;
    }
    .home-txt .txt-c .tai {
        display: block;
    }
    .home-txt .txt-c .tai p {
        margin-bottom: 5px;
    }
    .home-txt .txt-c .tai span {
        font-size: 1.8rem;
    }
    .home-txt .txt-d {
        text-align: left;
    }
    .home-txt .txt-d strong {
        font-size: 1.6rem;
    }
    .home-txt .txt-e dd .reed li {
        text-align: left;
    }
    .home-txt .txt-e .tai {
        font-size: 2.1rem;
    }
    
    .home-cte {
        margin-top: 40px;
    }
    .home-cte li .tai {
        font-size: 1.8rem;
    }
    .home-cte li .txt {
        line-height: 1.5;
        font-size: 1.4rem;
    }
    
    .home-news ul {
        min-height: auto;
        padding: 20px 5px;
    }
    .home-news .tai p {
        font-size: 2.5rem;
    }
    .home-banner {
        margin-top: 30px;
    }
    
    
/* page-body
===================================*/
    .page-body .wakuline {
        padding-bottom: 50px;
        min-height: auto;
    }
    .pg-atitle {
        padding: 13px 0;
    }
    .pg-atitle p {
        font-size: 1.8rem;
    }
   .pg-cpany {
        margin-top: 50px;
    }
    .pg-cpany.mt250 {
    margin-top: 100px;
}
    
    .pg-docm dd {
    display: block;
    margin-top: 15px;
}
    .pg-docm dd .lef .txt {
    margin-left: 10px;
    font-size: 1.4rem;
}
    .pg-docm dd .lef .img {
    width: 100px;
}
    .pg-docm dd .rig {
    margin: auto;
    text-align: center;
    margin-top: 20px;
}
.pg-btn .acce-btn {
    height: 70px;
}
    .text-page {
}
    
    
    
/* greeting
===================================*/
    .txt-greeting {
    padding: 0 10px;
}
    .hed-greeting {
    padding: 0 10px;
}
    
    
  /* outline
===================================*/
    .txt-outline {
    margin-top: 20px;
}
    .txt-outline dl {
    display: block;
    padding: 22px 15px;
}
    .txt-outline dt {
    padding-left: 0;
}
  
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
}
 /* (max-width: 767px) */

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 