@import "base.css";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500&family=Sawarabi+Gothic&family=Montserrat:wght@500;600&display=swap');


/* 
------------------------------------------------------------ */
a {
	color:#0078ff;
	text-decoration:underline;
}

a {
	/**/
	-webkit-transition: 0.3s ease-in-out;
	   -moz-transition: 0.3s ease-in-out;
		 -o-transition: 0.3s ease-in-out;
			transition: 0.3s ease-in-out;
}


a img {
	/*firefox*/
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
	overflow:hidden;
	box-shadow: #000 0 0 0;
	/*background-color:#ffffff;*/
}

/*画像をウインドウサイズに合わせて可変*/
img{
    vertical-align: bottom;
	max-width: 100%;
    height: auto;
    width /***/:auto;　/*IE8のみ適用*/
	-webkit-backface-visibility: hidden;
	
}


body {
	color:#333;
	margin:0;
	padding:0;
	font-size:15px;
	font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    letter-spacing: 0.2em;
	/*font-family: -apple-system, BlinkMacSystemFont , '游ゴシック体' , 'Yu Gothic', YuGothic , 'ヒラギノ角ゴ ProN' , 'Hiragino Kaku Gothic ProN' , 'メイリオ', 'Meiryo', Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;*/
	/*font-family: 游明朝, 'Yu Mincho', YuMincho, 'Hiragino Mincho ProN', HGS明朝E, メイリオ, Meiryo, serif;*/
	/*font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;*/
	line-height:180%;
	background-color:#fff;
    
	text-align:center;
	position:relative;
}


.font-n{
    font-family: 'Noto Sans JP', sans-serif;
}
.font-sw{
    font-family: 'Sawarabi Gothic', sans-serif;
}


#main-wrapper{
	position:relative;
    background: #fff url("../../images/bg.jpg") top center repeat-y;
    background-size: 100% auto;
}

body.top #main-wrapper{
    opacity: 0;
}




/* ボタン 
--------------------------------------------*/
.btn-link{
	/**/
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	
	/**/
  	box-shadow: 2px 2px 4px rgba(0,0,0,0.20);

}


/**/
.btn-line{
    padding-top: 12px;
}
.btn-line a{
    display: inline-block;
    width: 175px;
}

/**/
.top-case-area .btn-line{
    padding-top: 0;
    position: absolute;
    width: 175px;
    height: 45px;
    left: 15px;
    bottom:60px;
    z-index: 20;
}

.top-case-area .btn-link-move-S{
    margin-top: 65px !important;
}

.top-case-area .case01 .btn-line{
    left:55px;
    bottom:55px;
}
.top-case-area .case02 .btn-line{
    left:355px;
}



/**/
.case-index-box .btn-line{
    padding-top: 0;
    position: absolute;
    width: 175px;
    height: 45px;
    right: 15px;
    bottom:83px;
    z-index: 20;
}
.case-index-box .btn-line a{
    display: inline-block;

}
.case-index-box .btn-link-move{
    margin-top: 80px !important;
}

.case-index-wrapp ul li:nth-child(2).case-index-box .btn-line{
	right: inherit;
    left: 15px;
    bottom:125px;
}
.case-index-wrapp ul li:nth-child(3).case-index-box .btn-line{
    bottom:125px;
}


/**/
.case-details-box .btn-line{
    padding-top: 30px;
}




/**/
.btn-link-no{
    display: block;
}

.btn-link-no a,
.btn-link-no p{
    display: inline-block;
    background: url("../../images/icon_arrow_b.png") left center no-repeat;
    background-size: 25px auto;
    padding-left: 35px;
    -webkit-transition: 0.3s ease-in-out;
	   -moz-transition: 0.3s ease-in-out;
		 -o-transition: 0.3s ease-in-out;
			transition: 0.3s ease-in-out;
}
.btn-link-no:hover a,
.btn-link-no:hover p{

}

.btn-link-no span img{
    width: 70px;
}



/**/
.btn-link-move{
    display: block;
}

.btn-link-move a,
.btn-link-move p{
    display: inline-block;
    background: url("../../images/icon_arrow_b.png") left center no-repeat;
    background-size: 25px auto;
    padding-left: 35px;
    -webkit-transition: 0.3s ease-in-out;
	   -moz-transition: 0.3s ease-in-out;
		 -o-transition: 0.3s ease-in-out;
			transition: 0.3s ease-in-out;
}
.btn-link-move:hover a,
.btn-link-move:hover p{
    background: url("../../images/icon_arrow_b.png") 5px center no-repeat;
    background-size: 25px auto;
}
.move-over:hover .btn-link-move a,
.move-over:hover .btn-link-move p{
    background: url("../../images/icon_arrow_b.png") 5px center no-repeat;
    background-size: 25px auto;
}
.btn-link-move span img{
    width: 70px;
}


/**/
.btn-link-move-S{
    display: block;
}

.btn-link-move-S a,
.btn-link-move-S p{
    display: inline-block;
    background: url("../../images/icon_arrow_b.png") left center no-repeat;
    background-size: 25px auto;
    padding-left: 35px;
    -webkit-transition: 0.3s ease-in-out;
	   -moz-transition: 0.3s ease-in-out;
		 -o-transition: 0.3s ease-in-out;
			transition: 0.3s ease-in-out;
}
.btn-link-move-S:hover a,
.btn-link-move-S:hover p{
    background: url("../../images/icon_arrow_b.png") 5px center no-repeat;
    background-size: 25px auto;
}
.move-over:hover .btn-link-move-S a,
.move-over:hover .btn-link-move-S p{
    background: url("../../images/icon_arrow_b.png") 5px center no-repeat;
    background-size: 25px auto;
}
.btn-link-move-S span img{
    width: 60px;
}


/**/
.btn-more-w span{
    display: inline-block;
    background: url("../../images/icon_arrow_w.png") left center no-repeat;
    background-size: 25px auto;
    padding-left: 35px;
    -webkit-transition: 0.3s ease-in-out;
	   -moz-transition: 0.3s ease-in-out;
		 -o-transition: 0.3s ease-in-out;
			transition: 0.3s ease-in-out;
}
.line-box:hover .btn-more-w span{
    background: url("../../images/icon_arrow_w.png") 5px center no-repeat;
    background-size: 25px auto;
}
.btn-more-w span img{
    width: 60px;
}


/* 下層ページ 
--------------------------------------------*/
.page-title{
    padding: 20px 0 60px 0;
}
.page-title .content-inner{
    text-align: center;
}
.page-title h2{
    font-family: 'Sawarabi Gothic', sans-serif;
    font-weight: normal;
    letter-spacing: 0.2em;
    font-size: 30px;
    text-align: center;
}

.page-title p{
    margin-top: 60px;
    font-size: 13px;
}

.page-anchor{
    
}
.page-anchor ul{
    text-align: center;
}
.page-anchor ul li{
    list-style: none;
    display: inline-block;
    margin: 0 15px;
}



/* about 
--------------------------------------------*/
.about-ancher .btn-link-no span img{
    width: 110px;
}
.about-section{
    padding-top: 80px;
    margin-top: 40px;
}
.about-title{
    text-align: center;
    background: url("../../images/title_line_l.png") left center no-repeat;
    background-size: auto 21px;
}
.about-title-inner{
    text-align: center;
    background: url("../../images/title_line_r.png") right center no-repeat;
    background-size: auto 21px;
}
.about-title h3{
    text-align: center;
    font-family: 'Sawarabi Gothic', sans-serif;
    font-weight: normal;
    letter-spacing: 0.25em;
    font-size: 18px;
}

/**/
.about-mes{
    padding-top: 80px;
}
.about-mes .imgbox{
    float: left;
    width: 55%;
    text-align: right;
}
.about-mes .txtbox{
    float: right;
    width: 40%;
    padding-top: 80px;
}
.about-mes .txtbox h4{
    font-size: 18px;
    font-weight: 600;
    line-height: 180%;
}

.about-mes .txtbox p{
    font-size: 13px;
    line-height: 260%;
    margin-top: 40px;
    letter-spacing: 0.1em;
}

.about-mes .txtbox .name{
    text-align: right;
    margin-top: 80px;
    vertical-align: middle;
    letter-spacing: 0;
}
.about-mes .txtbox .name span{
    display: inline-block;
    width: 130px;
    margin-left: 20px;
}


.about-read{
    font-size: 13px;
    line-height: 260%;
    margin-top: 80px;
    text-align: center;
}
.about-img-wrapp{
    margin-top: 30px;
    padding: 0 100px;
}
.about-img-wrapp .about-box{
    margin-top: 50px;
}
.about-img-wrapp .about-box .txtbox{
    font-size: 12px;
    padding-top: 15px;
    text-align: center;
}

.about-img-wrapp .about-box .txtbox p span{
    display: block;
    font-size: 11px;
}


.about-like-wrapp{
    margin-top: 80px;
    position: relative;
}
.about-like-wrapp ul li{
    list-style: none;
    position: relative;
}
.about-like-wrapp .imgbox img{
    width: 90% !important;
}
.about-like-wrapp .txtbox{
    position: relative;
    width: 115px;
}
.about-like-wrapp .txtbox h4{
    float: right;
    margin: 0 8px;
    width: 25px;
}
.about-like-wrapp .txtbox p{
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-size: 12px;
    text-align: left;
    line-height: 180%;
    float: left;
    margin-left: 15px;
    width: 50px;
}
.about-like-wrapp .txtbox p span{
    text-combine-upright: all !important;
    text-combine: horizontal!important;
    text-combine-horizontal: all!important;
    writing-mode:horizontal-tb;
    -ms-writing-mode:tb-rl;/*IE用*/
    letter-spacing: 0em;
    margin-bottom: -0.1em;
    margin-top: -0.5em;
}
.about-like-wrapp .txtbox p span img{
    width: 1em;
    height: 0.7em;
    vertical-align: middle;
    margin-bottom: 0.1em;
}


.about-like-wrapp .like01{
    position: relative;
}
.about-like-wrapp .like01 .imgbox{
    float: left;
}

.about-like-wrapp .like01 .txtbox{
    float: left;
}
.about-like-wrapp .like01 .txtbox h4{
    width: 30px;
}
.about-like-wrapp .like01 .txtbox p{
    height: 200px;
}


.about-like-wrapp .like02{
    position: absolute;
    right: 5%;
    top:80px;
}
.about-like-wrapp .like02 .imgbox{
    float: none;
}
.about-like-wrapp .like02 .txtbox{
    padding-top: 15px;
   float: right;
}
.about-like-wrapp .like02 .txtbox h4{
    width: 25px;
}




.about-like-wrapp .like03{
    position: absolute;
    left: 35%;
    top:250px;
}
.about-like-wrapp .like03 .imgbox{
    float: right;
}
.about-like-wrapp .like03 .txtbox{
   float: right;
   padding-top: 150px
}
.about-like-wrapp .like03 .txtbox h4{
    width: 30px;
}
.about-like-wrapp .like03 .txtbox p{
    height: 250px;
}




.about-like-wrapp .like04{
    position: relative;
    margin-top: 230px;
}
.about-like-wrapp .like04 .imgbox{
    float: left;
}
.about-like-wrapp .like04 .imgbox img{
    width: 80% !important;
}
.about-like-wrapp .like04 .txtbox{
    float: left;
    padding-top: 150px;
    margin-left: -30px !important;
}
.about-like-wrapp .like04 .txtbox h4{
    width: 20px;
}


.about-like-wrapp .like05{
    position: absolute;
    right: 0;
    margin-top: -250px;
}
.about-like-wrapp .like05 .imgbox{
    float: none;
}
.about-like-wrapp .like05 .imgbox .img01{
    width: 50% !important;
    float: right;
}
.about-like-wrapp .like05 .imgbox .img02{
    width: 25% !important;
    float: right;
    margin-right: 5px;
}
.about-like-wrapp .like05 .txtbox{
    position: absolute;
    top:150px;
    right: 52%;
}
.about-like-wrapp .like05 .txtbox h4{
    width: 30px;
}



.about-like-wrapp .like06{
    position: relative;
    float: left;
    margin-top: 200px;
}
.about-like-wrapp .like06 .imgbox{
    float: none;
}
.about-like-wrapp .like06 .imgbox .img01{
    width: 35% !important;
    float: right;
}
.about-like-wrapp .like06 .imgbox .img02{
    width: 35% !important;
    float: right;
    margin-right: 5px;
}
.about-like-wrapp .like06 .txtbox{
    position: absolute;
    top:50px;
    right: -120px;
}
.about-like-wrapp .like05 .txtbox h4{
    width: 30px;
}

.about-outline{
    margin-top: 80px;
    padding: 0 150px;
}
.about-outline table{
    border-collapse: collapse;
    width: 45%;
    float: left;
    margin: 0 2.5%;
    font-size: 12px;
    line-height: 160%;
}
.about-outline table th{
    font-weight: 400;
    text-align: left;
    background: url("../../images/line_dot_l.png") bottom center repeat-x;
    background-size: 8px auto;
    padding: 15px 15px;
    width: 20%;
}
.about-outline table td{
    font-weight: 400;
    text-align: left;
    background: url("../../images/line_dot_l.png") bottom center repeat-x;
    background-size: 8px auto;
    padding: 15px 15px;
}



/* point 
--------------------------------------------*/

.point-page{
    background: #fff !important;
}

.point-title h2 img{
    height: 40px;
}

.point-wrapp{
    padding: 60px 0;
}
.point-wrapp ul{
    padding: 0 100px;
}
.point-wrapp ul li{
    list-style: none;
    width: 400px;
}
.point-wrapp ul li:nth-child(odd){
    float: right;
}
.point-wrapp ul li:nth-child(even){
    float: left;
}


.point-wrapp ul li.point01{
    margin: 0 120px 0 0;
}
.point-wrapp ul li.point02{
    margin: 200px 0 0 0;
}
.point-wrapp ul li.point03{
    margin: 200px 0 0 0;
}
.point-wrapp ul li.point04{
    margin: 200px 0 0 120px;
}
.point-wrapp ul li.point05{
    margin: 200px 80px 0 0;
}
.point-wrapp ul li.point06{
    clear: both !important;
    margin: 150px 0 0 -200px;
    position: relative;
    left: 45%;
}


/* case
--------------------------------------------*/
.case-title h2 img{
    height: 85px;
}

.case-index-wrapp{
    padding: 40px 0 0px 0;
}

.case-index-wrapp ul li{
    list-style: none;
    clear: both;
    text-align: right;
}
.case-index-wrapp ul li:nth-child(even){
    float: right;
    text-align: left;
}

.case-index-box{
    width: 1100px;
    background-color: #fff;
    position: relative;
    margin-bottom: 70px;
}
.case-index-box a{
    text-decoration: none;
    color: #333;
}

.case-index-box .mes-txt{
    position: absolute;
    z-index: 10;
}

.case-index-box .mes-txt01{
    width: 250px;
    top:-20px;
    right: -70px;
}
.case-index-box .mes-txt02{
    width: 230px;
    top:40px;
    left: 150px;
}
.case-index-box .mes-txt03{
    width: 220px;
    top:80px;
    right: 110px;
}

.case-index-box .imgbox{
    width: 75%;
    float: left;
}
.case-index-box .txtbox{
    width: 25%;
    float: right;
    font-size: 13px;
    line-height: 160%;
    letter-spacing: 0.05em;
}
.case-index-wrapp ul li.case-index-box:nth-child(even) .imgbox{
    float: right;
}
.case-index-wrapp ul li.case-index-box:nth-child(even) .txtbox{
    float: left;
}

.case-index-box .imgbox span{
    display: block;
    overflow: hidden;
}

.case-index-box .imgbox span img{
    -webkit-transition: 0.3s ease-in-out;
       -moz-transition: 0.3s ease-in-out;
         -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out;
}
.case-index-box a:hover .imgbox span img{
    transform: scale(1.05, 1.05);
}


.case-index-box .txtbox .txtbox-inner{
    padding: 15px;
}
.case-index-box .txtbox .txtbox-inner .icon img{
    width: 80px;
    margin-top: 80px;
    margin-bottom: 20px;
}
.case-index-box .txtbox .txtbox-inner h3{
    font-size: 14px;
    margin-bottom: 20px;
    font-weight: 500;
}
.case-index-box .txtbox .txtbox-inner .btn-link-move{
    margin-top: 30px;
}


.case-index-box .font-l{
    font-size: 120%;
    font-size: 600;
    line-height: 160%;
}
.case-index-box .txtbox .txtbox-inner span{
    color: #333;
    -webkit-transition: 0.3s ease-in-out;
	   -moz-transition: 0.3s ease-in-out;
		 -o-transition: 0.3s ease-in-out;
			transition: 0.3s ease-in-out;
}
.case-index-box a:hover .txtbox .txtbox-inner span{
    color: #ff5a32;
}

.case-index-box .txtbox .txtbox-inner span i{
    font-style: normal;
    font-size: 11px;
}
.case-index-box .bodertxt{
    background:linear-gradient(transparent 60%, #efdeb7 60%);
}


/**/
.case-link ul{
    text-align: center;
}
.case-link ul li{
    list-style: none;
    display: inline-block;
    margin: 0 15px;
}
.case-link ul li a{
    display: block;
    width: 85px;
    height: 85px;
    background-size: 85px 85px !important;
    padding-top: 88px;
    text-align: center;
    text-decoration: none;
    font-size: 13px;
    color: #333;
}
.case-link ul li.case-link001 a{
    background: url("../../images/jirei_btn001.png") top center no-repeat;
}
.case-link ul li.case-link002 a{
    background: url("../../images/jirei_btn002.png") top center no-repeat;
}
.case-link ul li.case-link003 a{
    background: url("../../images/jirei_btn003.png") top center no-repeat;
}
.case001 .case-link ul li.case-link001 a{
    background: url("../../images/jirei_btn001_on.png") top center no-repeat;
    color: #ff5a32;
}
.case002 .case-link ul li.case-link002 a{
    background: url("../../images/jirei_btn002_on.png") top center no-repeat;
    color: #ff5a32;
}
.case003 .case-link ul li.case-link003 a{
    background: url("../../images/jirei_btn003_on.png") top center no-repeat;
    color: #ff5a32;
}

.case-link ul li.case-link001 a:hover{
    background: url("../../images/jirei_btn001_on.png") top center no-repeat;
    color: #ff5a32;
}
.case-link ul li.case-link002 a:hover{
    background: url("../../images/jirei_btn002_on.png") top center no-repeat;
    color: #ff5a32;
}
.case-link ul li.case-link003 a:hover{
    background: url("../../images/jirei_btn003_on.png") top center no-repeat;
    color: #ff5a32;
}

/**/
.case-content-wrapp .case-details-box{
    position: relative;
    margin-bottom: 100px;
}

.case-content-wrapp .case-details-box .imgbox{
    width: 52%;
    float: left;
    position: relative;
    padding: 50px 0 0 0;
}
.case-content-wrapp .case-details-box .txtbox{
    width: 45%;
    float: right;
}
.case-content-wrapp .case-details-box.details02 .imgbox{
    width: 52%;
    float: right;
}
.case-content-wrapp .case-details-box.details02 .txtbox{
    width: 40%;
    margin-left: 5%;
    float: left;
}

.case-content-wrapp .case-details-box.vertical-details-box .imgbox{
    width: 45%;
    float: left;
}
.case-content-wrapp .case-details-box.vertical-details-box .txtbox{
    width: 53%;
    float: right;
}
.case-content-wrapp .case-details-box.vertical-details-box.details02 .imgbox{
    width: 45%;
    float: right;
}
.case-content-wrapp .case-details-box.vertical-details-box.details02 .txtbox{
    width: 48%;
    margin-left: 5%;
    float: left;
}





.case-content-wrapp .case-details-box .imgbox .number{
    position: absolute;
    top:0;
    left: 30px;
    z-index: 100;
    width: 60px;
}



.case-content-wrapp .case-details-box .txtbox{
    margin-top: 50px;
}
.case-content-wrapp .case-details-box .txtbox h3{
    display: inline-block;
    border-bottom: solid #ff5a32 2px;
    padding-bottom: 10px;
    line-height: 140%;
    vertical-align: middle;
}
.case-content-wrapp .case-details-box .txtbox h3 span{
    display: inline-block;
    color: #ff5a32;
    font-size: 10px;
    letter-spacing: 0.2em;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    padding-left: 25px;
}
.case-content-wrapp .case-details-box .txtbox h3 span.icon001{
    display: inline-block;
    background: url("../../images/jirei_icon001.png") left center no-repeat;
    background-size: 18px auto;
}
.case-content-wrapp .case-details-box .txtbox h3 span.icon002{
    display: inline-block;
    background: url("../../images/jirei_icon002.png") left center no-repeat;
    background-size: 18px auto;
}
.case-content-wrapp .case-details-box .txtbox h3 span.icon003{
    display: inline-block;
    background: url("../../images/jirei_icon003.png") left center no-repeat;
    background-size: 18px auto;
}


.case-content-wrapp .case-details-box .txtbox h3 p{
    font-weight: 400;
    font-size: 15px;
    display: inline-block;
    margin-left: 15px;
}
.case-content-wrapp .case-details-box .txtbox .details-box{
    margin-top: 30px;
}
.case-content-wrapp .case-details-box .txtbox .details-box h4{
    color: #ff5a32;
    font-weight: 400;
    padding-bottom: 5px;
}
.case-content-wrapp .case-details-box .txtbox .details-box table{
    border-collapse: collapse;
    width: 100%;
}
.case-content-wrapp .case-details-box .txtbox .details-box table th{
    font-weight: 500;
    vertical-align: middle;
    text-align: left;
    width: 50%;
}

.case-content-wrapp .case-details-box.details02 .txtbox .details-box table th{
    width: 55%;
}
.case-content-wrapp .case-details-box.vertical-details-box.details02 .txtbox .details-box table th{
    width: 55%;
}


.case-content-wrapp .case-details-box .txtbox .details-box table th div{
    padding: 3px 0;
}
.case-content-wrapp .case-details-box .txtbox .details-box table th span{
    display: inline-block;
    color: #ff5a32;
    margin-right: 8px;
}
.case-content-wrapp .case-details-box .txtbox .details-box table td{
    vertical-align: middle;
    color: #ff5a32;
    font-size: 13px;
    letter-spacing: 0em;
    text-align: left;
    background: url("../../images/jirei_line01.png") left center no-repeat;
    background-size: 30px auto;
    padding: 3px 0 3px 50px;
}
.case-content-wrapp .case-details-box .txtbox .details-box table td span{
    font-size: 20px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    letter-spacing: 0.1em;
}

.case-content-wrapp .case-details-box .txtbox .details-box table td.set{
    background: url("../../images/jirei_line02.png") left center no-repeat;
    background-size: 30px auto;
}

.case-content-wrapp .case-details-box .txtbox .details-box p{
    font-size: 12px;
    line-height: 180%;
}


.mt{
    margin-top: 25px;
}


/*caseスライダー*/

.slide-box-case{
 
}

@media screen and (min-width: 641px){
    .slide-box-case.slide-box-vertical {
      position: relative;
      display: flex;
      margin: 0;
      padding: 0;
      flex-wrap: wrap;
    }
}

/* slide */
.slide-case {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
  height: 420px;
}
.slide-box-vertical .slide-case {
  position: relative;
  width: 75%;
  margin: 0;
  padding: 0;
  height: auto;
}
.slide-case .item {
  position: relative;
  height: 100%;
}
.slide-case .item a {
  display: block;
}
.slide-case .item::before {
  display: block;
  padding-top: 39%;
  content: "";
}
.slide-case .item .image {
  position: relative;
  overflow: hidden;
}
.slide-case .item img {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: 0;
  width: 100%;
}
.slide-case > .slick-list,
.slide-case > .slick-list > .slick-track,
.slide-case > .slick-list > .slick-track > .slick-slide > div {
  position: relative;
  height: 100%;
}

/* slide-navigation */

.slide-navigation {
  line-height: 0;
  position: relative;
  width: 100%;
  margin: 10px 0 0 0;
  padding: 0;
}


.slide-box-case.slide-box-vertical .slide-navigation {
  line-height: 0;
  position: relative;
  width: 21%;
  margin: 0;
  padding: 0 0 0 10px;
}

@media screen and (min-width: 641px){
    .slide-box-case.slide-box-vertical .slide-navigation .slick-list{
      height: 588px !important;
      overflow: hidden;
      
    }
}



.slide-navigation .item {
  position: relative;
  cursor: pointer;
}

.slide-box-case.slide-box-vertical .slide-navigation .item{
    padding: 0px;
    height: 149px;
}
.slide-box-case.slide-box-vertical .slide-navigation .item .image{
    height: 100%;
    margin: 0 1px 1px 0;
}
.slide-box-case.slide-box-vertical .slide-navigation .item .image img{
    margin: 0;
    height: 100% !important;
    padding: 0;
    display: block;
    
}

.slide-navigation .item.slick-current .image{
    border: solid #ff5a32 1px !important;
    z-index: 100;
}



.slide-navigation .item .image img {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
 
}
.slide-navigation .item .image::before {
  display: block;
  padding-top: 60%;
  content: "";
}
.slide-box-case.slide-box-vertical .slide-navigation .item .image::before {
  display: block;
  padding-top: 100%;
  content: "";
}

.slide-navigation .item .image {
  position: relative;
  overflow: hidden;
}
.slide-navigation .item .image img {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: 0;
  width: 100%;
}


/* slick */


.slide-box-case.slide-box-vertical .slick-prev {
  display: none !important;
}

.slide-box-case.slide-box-vertical .slick-next {
  top: auto;
  bottom: -10px !important;
  left: -10px !important;
  right: 0;
  margin: auto;
  width: 30px !important;
  height: 15px !important;
  background: url("../../images/jirei_arrow_bottom.png") center center no-repeat !important;
  background-size: cover !important;
}



.slide-box-case .slick-prev {
  display: none !important;
}

.slide-box-case .slick-next {
    top: 60px;
    bottom: 0;
    right: -10px !important;
    left: auto;
    width: 15px !important;
    height: 30px !important;
    background: url("../../images/jirei_arrow_next.png") center center no-repeat !important;
    background-size: cover !important;
}










/* flow
--------------------------------------------*/
.flow-page{
    background: url("../../images/bg_flow.jpg") top center repeat-y !important;
    background-size: 100% auto !important;
}

.flow-title h2 img{
    width: 180px;
}

.flow-wrapp{

}
.flow-wrapp ul{
    text-align: center;
}
.flow-wrapp ul li{
    list-style: none;
    padding: 50px 0;
    background: url("../../images/line_dot_l.png") bottom center repeat-x;
    background-size: 10px auto;
    position: relative;
}
.flow-wrapp ul li .arrow{
    position: absolute;
    width: 15px;
    bottom:-10px;
    left: 50%;
    margin-left: -7px;
}

.flow-wrapp .contact-link{
    margin-top: 25px;
}
.flow-wrapp .contact-link span{
    display: inline-block;
    vertical-align: middle;
    margin: 0 15px;
}
.flow-wrapp .contact-link span a{
    display: block;
}
.flow-wrapp .contact-link span a img{
    width: 28px;
    display: block;
}
.flow-wrapp .contact-link span.mail img{
    margin-top: -0.1em;
}

.flow-wrapp ul li h3{
    background-color: #fff;
    line-height: 120%;
    font-size: 15px;
    font-weight: 500;
    width: 350px;
    margin: 0 auto;
    padding: 8px 15px;
}
.flow-wrapp ul li h3 span{
    display: block;
    width: 20%;
    float: left;
}
.flow-wrapp ul li h3 p{
    float: left;
    width: 80%;
}

.flow-wrapp ul li p.txtbox{
    margin-top: 20px;
    font-size: 13px;

}




/* faq
--------------------------------------------*/
.faq-page{
    background: #c4d2d8 !important;
}


.faq-wrapp .accordion li .toggle-box{
    display: none;
}
.faq-wrapp .accordion{

    padding: 5px 5px 0 5px;
}
.faq-wrapp .accordion li{
    list-style: none;
    padding-bottom: 30px;
    position: relative;
}


.faq-wrapp .accordion li h3{
    padding: 20px 0 20px 50px;
    font-size: 15px;
    font-weight: 500;
    background: url("../../images/q.png") left center no-repeat;
    background-size: 20px auto;
}

.faq-wrapp .accordion li .toggle-box{
    background-color: #fff;
    padding: 15px;
    font-size: 13px;
    margin-right: 100px;
}



.pm-btn span::before,
.pm-btn span::after {
  content: '';
  display: block;
  width: 20px;
  height: 2px;
  background: #ff5a32;
  position: absolute;
  right: 10px;
  top: 35px;
  transform: translateY(-50%);
}
  
.pm-btn span::after {
  background: #ff5a32;
  transform: translateY(-50%) rotate(90deg);
  transition: 0.5s;
  
}

.open .pm-btn span::after {
  transform: rotate(0);
  transition: 0.5s;
  top:34px;
}






/* contact
--------------------------------------------*/
.contact-page{
    background: #fff !important;
}

.contact-ancher .btn-link-no span img{
    width: 70px;
    height: 30px;
}

.contact-wrapp{
    padding: 80px 0 0px 0;
}



.contact-block01 .contact-box{
    width: 49%;
    float: left;
    text-align: center;
    padding: 15px 0;
}

.contact-block01 .contact-box.tel-box{
    border-left: solid #333 2px;
}
.contact-block01 .contact-box.mail-box{
    border-left: solid #333 2px;
    border-right: solid #333 2px;
}

.contact-block01 .contact-box h3{
    font-size: 14px;
    font-weight: 500;
    display: inline-block;
    letter-spacing: 0.3em;
    margin-bottom: 15px;
}
.contact-block01 .contact-box.tel-box h3{
    background: url("../../images/icon_tel_b.png") left center no-repeat;
    background-size: 20px auto;
    padding-left: 30px;
}
.contact-block01 .contact-box.mail-box h3{
    background: url("../../images/icon_mail_b.png") left center no-repeat;
    background-size: 20px auto;
    padding-left: 30px;
}
.contact-block01 .contact-box-inner{
    
}

.contact-block01 .contact-box a{
    text-decoration: none;
    color: #333;
}
.contact-block01 .contact-box p{
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 130%;
}
.contact-block01 .contact-box p.tel{
    font-size: 18px;
    color: #ff5a32;
}
.contact-block01 .contact-box p.tel a{
    color: #ff5a32;
}
.contact-block01 .contact-box p.fax{
    font-size: 13px;
    letter-spacing: 0.1em;
}
.contact-block01 .contact-box p.time{
    margin-top: 10px;
    letter-spacing: 0.1em;
}
.contact-block01 .contact-box p.time span{
    font-weight: 600;
    font-size: 13px;
    margin-left: 8px;
}

.contact-block01 .contact-box p.mail{
    font-size: 17px;
    color: #ff5a32;
    margin-top: 20px;
}
.contact-block01 .contact-box p.mail a{
    color: #ff5a32;
}


.contact-block02{
    margin-top: 40px;
    padding-top: 40px;
}
.contact-block02 .line-box-title h3{
    font-size: 14px;
    font-weight: 500;
    display: inline-block;
    letter-spacing: 0.3em;
    background: url("../../images/icon_line.png") left center no-repeat;
    background-size: 20px auto;
    padding-left: 30px;
    margin-bottom: 20px;
}
.contact-block02 .line-box-title p{
    display: inline-block;
    margin-left: 20px;
    font-size: 14px;
}
.contact-block02-inner{
    position: relative;
}
.contact-block02-inner .line-box01{
    padding: 30px 10px;
    border: solid #333 2px;
    border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
    width: 33%;
    float: left;
}
.contact-block02-inner .line-box02{
    padding: 30px 40px;
    border: solid #333 2px;
    border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
    width: 53%;
    float: right;
}

.contact-block02-inner .line-box01:after{
    content: '';
    display: block;
    position: absolute;
    width: 25px;
    height: 80px;
    background: url("../../images/arrow_r_l.png") center center no-repeat;
    background-size: 25px auto;
    top:45%;
    left: 36.5%;
}

.contact-block02-inner .line-box01 h4{
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    color: #ff5a32;
    font-size: 17px;
    margin-bottom: 30px;
}

.contact-block02-inner .line-box01 .line-flow{
    padding: 0 30px; 
}
.contact-block02-inner .line-box01 .line-flow .line-flow-inner p{
    position: relative;
    margin-bottom: 15px;
}
.contact-block02-inner .line-box01 .line-flow .line-flow-inner p i{
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    color: #ff5a32;
    font-style: normal;
    font-size: 18px;
    display: block;
    position: absolute;
    top:-0.1em;
    left: 0;
}
.contact-block02-inner .line-box01 .line-flow .line-flow-inner p span{
    display: block;
    padding-left: 30px;
    font-size: 13px;
    line-height: 160%;
    letter-spacing: 0.15em;
}

.line-or{
    background: url("../../images/line_dot_l.png") center center repeat-x;
    background-size: 8px auto;
    text-align: center;
    padding: 80px 0;
}
.line-or img{
    width: 40px;
}

.contact-block02-inner .line-box01 h4.qr{
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    color: #ff5a32;
    font-size: 17px;
    margin-bottom: 20px;
    vertical-align: top;
}
.contact-block02-inner .line-box01 h4.qr span{
    display: inline-block;
}
.contact-block02-inner .line-box01 h4.qr p{
    display: inline-block;
    width: 100px;
    margin-left: 20px;
}
.contact-block02-inner .line-box01 h4.qr p img{
    vertical-align: top;
}


.contact-block02-inner .line-box02 .line-box02-inner{
    width: 50%;
    float: left;
}
.contact-block02-inner .line-box02 .line-box02-inner.line-txt02{
    width: 45%;
    float: right;
}

.contact-block02-inner .line-box02 h4{
    font-size: 14px;
    font-weight: 500;
    background: url("../../images/contact_titlebg.png") bottom center no-repeat;
    background-size: 100% auto;
    display: inline-block;
    padding: 5px 15px 25px 15px;
    margin-top: -15px;
    margin-bottom: 20px;
    
}
.contact-block02-inner .line-box02 .line-box02-inner ul li{
    list-style: none;
    font-size: 13px;
    position: relative;
    padding: 0 0 0 20px;
    line-height: 160%;
    margin-bottom: 20px;
}
.contact-block02-inner .line-box02 .line-box02-inner ul li:after{
    content:'';
    display: block;
    position: absolute;
    top:0.5em;
    left: 0;
    width: 11px;
    height: 11px;
    background-color: #ff5a32;
}


/* トップページ 
--------------------------------------------*/

.line-box{
    background-color: #00b900;
    position: fixed;
    width: 250px;
    padding: 15px;
    bottom: 0px;
    right: 2%;
    z-index: 500;
    opacity: 0;
    -webkit-transition: 0.6s ease-in-out;
	   -moz-transition: 0.6s ease-in-out;
		 -o-transition: 0.6s ease-in-out;
			transition: 0.6s ease-in-out;
}

.line-box .line-box-inner .btn-close{
    background: url("../../images/btn_close_w.png") right top no-repeat;
    background-size: 15px;
    width: 15px;
    height: 15px;
    padding: 5px;
    cursor: pointer;
    position: absolute;
    right: 15px;
    top:15px;
}
.line-box .line-box-inner p{
    width: 216px;
    height: 55px;
    background: url("../../images/line_mes.png") center center no-repeat;
    background-size: cover;
    text-indent: -999999px;
}


.line-box .line-box-inner .btn-more-w {
    text-align: right;
    margin-top: 15px;
}

.line-box.close{
    width: 95px;
    height: 95px;
    padding: 0;
    border-radius: 50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
}
.line-box.close .line-box-inner{
    text-align: center;
}
.line-box.close .line-box-inner p{
    display: inline-block;
    margin-top: 15px;
    width: 48px;
    height: 60px;
    background: url("../../images/line_open.png") center center no-repeat;
    background-size: cover;
    text-indent: -999999px;
}
.line-box.close .line-box-inner .btn-more-w,
.line-box.close .line-box-inner .btn-close{
    display: none;
}

/**/
.btn-scroll{
    padding: 60px 0;
    opacity: 0;
    position: relative;
    top:-20px;
    -webkit-transition: 0.6s ease-in-out;
	   -moz-transition: 0.6s ease-in-out;
		 -o-transition: 0.6s ease-in-out;
			transition: 0.6s ease-in-out;
}
.btn-scroll a{
    display: block;
    width: 40px;
    margin: 0 auto;
}
.btn-scroll a span{
    display: block;
    margin: 0 auto;
    text-indent: -99999px;
    background: url("../../images/scroll_txt.png") top center no-repeat;
    background-size: 10px 44px;
    width: 30px;
    height: 60px;
    
}
.btn-scroll a div{
    display: block;
    width: 40px;
    animation-name: jyouge;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    animation-direction: alternate;
    animation-duration: 1.2s;
}

@keyframes jyouge {
    0% {
        transform: translate(0,0px);
        opacity: 1;
    }
    
    90% {
        transform: translate(0,-15px);
    }
    100% {
        transform: translate(0,-15px);
        opacity: 0.1;
    }
}


/**/
.top-about-area{
    position: relative;
    padding-bottom: 100px;
    overflow: hidden;
}
.top-about-area .imgbox01{
    width: 350px;
    position: absolute;
    top:300px;
    right: 8%;
}
.top-about-area .imgbox02{
    float: left;
    width: 500px;
}
.top-about-area .imgbox03{
    margin-left: 10%;
    width: 760px;
}

.top-about-area h2{
    font-family: 'Sawarabi Gothic', sans-serif;
    font-weight: normal;
    letter-spacing: 0.3em;
    font-size: 25px;
    position: absolute;
    top:150px;
    left: 58%;
}
.top-about-area h2 strong{
    font-weight: normal;
}

.top-about-area .txtbox{
    clear: both;
    padding:80px 0 80px 20%;
    text-align: left;
    letter-spacing: 0.2em;
    font-size: 13px;
    line-height: 300%;
}

.top-about-area .txtbox .btn-link-move{
    margin-top: 15px;
}


/**/
.top-point-area{
    background-color: #fff;
    padding: 100px 0;
}
.top-point-area-inner{
    text-align: center;
    background: url("../../images/top_txt001_bg.png") bottom center no-repeat;
    background-size: 850px auto;
    padding-bottom: 50px;
}
.top-point-area-inner a{
    display: block;
    text-decoration: none;
    color: #333;
}
.top-point-area-inner h2{
    width: 300px;
    margin: 0 auto;
}
.top-point-area-inner .btn-link-move{
    margin-top: 30px;
}

/**/
.top-case-area{
    background-color: #0071ba;
}

.top-case-area-inner{
    padding: 80px 0;
}
.top-case-area-inner h2{
    width: 90px;
}

.case-list-wrapp{
    margin-top: -150px;
    position: relative;
}

.case-list-wrapp ul li{
    list-style: none;
}


.case-box .txtbox .txtbox-inner .font-l{
    font-size: 150%;
    font-size: 600;
    line-height: 160%;
}
.case-box .txtbox .txtbox-inner span{
    color: #ff5a32;
}
.case-box .txtbox .txtbox-inner span i{
    font-style: normal;
    font-size: 11px;
}
.bodertxt{
    background:linear-gradient(transparent 60%, #efdeb7 60%);
}


@media screen and (min-width: 641px){
    .case01{
        float: left;
        margin-left: 80px;
    }
    .case02{
        position: absolute;
        top:-100px;
        right: 0;
    }
    .case03{
        float: right;
        margin-top: 280px;
    }
    
    
    .case-box a{
        display: block;
        text-decoration: none;
        color: #333;
    }
    .case-box .imgbox{
        position: relative;
        z-index: 5;
        background-color: #efdeb7;
        padding: 10px;
    }
    .case-box .imgbox .imgbox-inner{
        overflow: hidden;
        
    }
    .case-box .imgbox .imgbox-inner img{
        -webkit-transition: 0.3s ease-in-out;
           -moz-transition: 0.3s ease-in-out;
             -o-transition: 0.3s ease-in-out;
                transition: 0.3s ease-in-out;
    }
    .case-box a:hover .imgbox .imgbox-inner img{
        transform: scale(1.05, 1.05);
    }
    
    .case-box .imgbox span{
        display: block;
        position: absolute;
        width: 180px;
        right: -50px;
        top:0px;
    }
    .case-box .txtbox{
        background-color: #fff;
        padding: 15px;
        display: table;
        width: 220px;
        line-height: 160%;
        font-size: 12px;
        position: relative;
        z-index: 10;
        
        
    }
    .case-box .txtbox .case-genre{
        display: table-cell;
        vertical-align: middle;
        width: 40px;
    }
    .case-box .txtbox .case-genre img{
        width: 25px;
    }
    .case-box .txtbox .txtbox-inner{
        display: table-cell;
        vertical-align: middle;
    }
    
    .case-box .txtbox .txtbox-inner .btn-link-move-S{
        margin-top: 10px;
        text-align: right;
        margin-right: 10px;
    }
    
    
    .case01 .case-box .imgbox{
        width: 290px;
        margin-left: 100px;
    }
    .case01 .case-box .txtbox{
        margin-top: -80px;
    }
    
    .case02 .case-box .imgbox{
        width: 460px;
        margin-left: -80px;
    }
    .case02 .case-box .txtbox{
        margin-top: -150px;
        margin-left: 300px;
    }
    .case02 .case-box .imgbox span{
        width: 150px;
        top:40px;
        right: -70px;
    }
    
    .case03 .case-box .imgbox{
        width: 460px;
        margin-left: 100px;
    }
    .case03 .case-box .txtbox{
        margin-top: -150px;
        margin-left: -40px;
    }
    .case03 .case-box .imgbox span{
        width: 150px;
        right: inherit;
        left: -70px;
    }

}


/**/
.top-flow-area{
    background: url("../../images/bg_kurosu.png") center center no-repeat;
    background-size: cover;
}
.top-flow-area-inner{
    padding: 80px 0;
}
.top-flow-area-inner .top-flow-title{
    width: 40%;
    float: right;
}
.top-flow-area-inner .top-flow-title h2{
    width: 170px;
}
.top-flow-area-inner .txtbox{
    width: 38%;
    float: left;
    margin-left: 15%;
}

.top-flow-area-inner .txtbox ul.flow li{
    list-style: none;
    position: relative;
    display: table;
    background: url("../../images/line_dot_l.png") bottom center repeat-x;
    background-size: 10px auto;
    padding: 18px 0; 
}
.top-flow-area-inner .txtbox ul.flow li .arrow{
    position: absolute;
    width: 15px;
    bottom:-10px;
    left: 60%;
    margin-left: -7px;
}


.top-flow-area-inner .txtbox ul.flow li span{
    width: 20%;
    text-align: center;
    vertical-align: middle;
    display: table-cell;
}
.top-flow-area-inner .txtbox ul.flow li span img{
    width: 60px;
    vertical-align: top;
    margin-top: 0.25em;
}
.top-flow-area-inner .txtbox ul.flow li p{
    width: 80%;
    text-align: center;
    vertical-align: middle;
    display: table-cell;
    letter-spacing: 0.3em;
    font-weight: 500;
}

.btn-flow{
    margin-top: 25px;
    text-align: center;
    padding-left: 20%;
}
.btn-flow a{
    display: inline-block;
    width: 90px;
    height: 90px;
    text-indent: -99999px;
    text-decoration: none;
    
    background:#0071ba url("../../images/btn_flow_w.png") center 15px no-repeat;
    background-size: 70px auto;
    
    border: solid #0071ba 2px;
    
    border-radius: 50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
    -webkit-transition: 0.3s ease-in-out;
	   -moz-transition: 0.3s ease-in-out;
		 -o-transition: 0.3s ease-in-out;
			transition: 0.3s ease-in-out;
}
.btn-flow a:hover{
    background:#fff url("../../images/btn_flow_b.png") center 15px no-repeat;
    background-size: 70px auto;
}


/**/
.top-taiou-area{
    background-color: #fff;
    padding: 120px 0;
}
.top-taiou-area .banner01{
    width: 45%;
    float: left;
}
.top-taiou-area .banner02{
    width: 45%;
    float: right;
    position: relative;
}
.top-taiou-area .banner02 .btn-link-move{
    position: absolute;
    bottom:30px;
    right: 60px;
}


/**/

.top-contact-area{
    background-color: #0071ba;
}
.top-contact-area-inner{
    padding: 120px 150px;
    color: #fff;
    display: table;
    line-height: 160%;
}
.top-contact-area-inner strong{
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
}


.top-contact-area-inner .titlebox{
    width: 150px;
    display: table-cell;
    vertical-align: middle;
    
}
.top-contact-area-inner .txtbox{
    display: table-cell;
    vertical-align: middle;
}
.top-contact-area-inner .titlebox h2{
    /*
    font-family: 'Sawarabi Gothic', sans-serif;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    */
    font-weight: 500;
    letter-spacing: 0.3em;
    font-size: 28px;
}
.top-contact-area-inner .titlebox h2 span img{
    width: 28px;
    vertical-align: top;
}
.top-contact-area-inner .contact01{
    background: url("../../images/icon_tel.png") left top no-repeat;
    background-size: 40px auto;
    padding: 0 0 0 70px;
}
.top-contact-area-inner .contact02{
    background: url("../../images/icon_mail.png") left top no-repeat;
    background-size: 40px auto;
    padding: 0px 0 5px 70px;
    margin-top: 50px;
}


.top-contact-area-inner .tel{
    font-size: 45px;
    letter-spacing: 0.15em;
}
.top-contact-area-inner .fax{
    margin-top: 18px;
    letter-spacing: 0.15em;
    vertical-align: middle;
}
.top-contact-area-inner .fax span{
    font-size: 20px;
    display: inline-block;
    vertical-align: middle;
}
.top-contact-area-inner .fax strong{
    font-size: 30px;
    margin-left: 0.2em;
    display: inline-block;
    vertical-align: middle;
}

.top-contact-area-inner .time{
    margin-top: 30px;
    
}
.top-contact-area-inner .time strong{
    font-size: 30px;
    vertical-align: middle;
    display: inline-block;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    margin-right: 5px;
    letter-spacing: 0.1em;
}
.top-contact-area-inner .time span{
    display: inline-block;
    vertical-align: middle;
    font-size: 23px;
}

.top-contact-area-inner .mail{
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 25px;
    letter-spacing: 0.15em;
}
.top-contact-area-inner a{
    text-decoration: none;
    color: #fff;
}


/**/
.top-insta-area{
    padding: 100px 0 100px 0;
}
.top-insta-area h2{
   font-family: 'Montserrat', sans-serif;
   font-weight: 500;
   font-size: 20px;
}
.top-insta-area h2 a{
    display: inline-block;
    vertical-align: middle;
    width: 60px;
}
.top-insta-area h2 span{
    display: inline-block;
    vertical-align: middle;
    margin-left: 30px;
    letter-spacing: 0.2em;
}
.top-insta-area h2 p{
    display: inline-block;
    vertical-align: middle;
    margin-left: 40px;
}
.top-insta-area h2 p img{
    height: 25px;
}


.insta-wrapp{
    margin-top: 40px;
}

.slider-insta li{
    padding: 10px 15px;
}



/* スクロールアニメーション追加
--------------------------------------------*/

.scrollapp span{
    overflow: hidden;
    display: block;
    height: 90%;
}
.scrollapp span img{
    position: relative;
    transition-duration: 1.2s;
    transition-delay: .0s;
    transform: translateY(0px) scale(1.08, 1.08);

    
}
.scrollapp.scrollin span img{
   transform: translateY(0px) scale(1, 1);

}




/* メインエリア
--------------------------------------------*/
.main-area{
    position: relative;
}

.logo-txt{
    position: absolute;
    z-index: 3;
}
.logo-txt span{
    display: block;
    width: 85px;
    position: absolute;
    opacity: 0;
    transform: scale(1.1, 1.1);
    -webkit-transition: 0.6s ease-in-out;
	   -moz-transition: 0.6s ease-in-out;
		 -o-transition: 0.6s ease-in-out;
			transition: 0.6s ease-in-out;

}
.logo-txt span.l01 { 
    top:80px;
    left: 130px;
}
.logo-txt span.l02 { 
    top:170px;
    left: 230px;
}
.logo-txt span.l03 { 
    top:95px;
    left: 450px;
}
.logo-txt span.l04 { 
    top:400px;
    left: 350px;
}
.logo-txt span.l05 { 
    top:500px;
    left: 210px;
}
.logo-txt span.l06 { 
    top:620px;
    left: 400px;
}


.main-txt{
    position: absolute;
    z-index: 4;
    top:200px;
    left: 9%;
}
.main-txt h2{
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-weight: 500;
    letter-spacing: 0.7em;
    font-size: 16px;
}
.main-txt h2 span{
    opacity: 0;
    transform: scale(1.2, 1.2);
    -webkit-transition: 0.8s ease-in-out;
	   -moz-transition: 0.8s ease-in-out;
		 -o-transition: 0.8s ease-in-out;
			transition: 0.8s ease-in-out;
}


/* トップスライド
--------------------------------------------*/
.main-slide{
    margin-top: -80px;
    position: relative;
    z-index: 2;
    opacity: 0;
    -webkit-transition: 1.2s ease-in;
	   -moz-transition: 1.2s ease-in;
		 -o-transition: 1.2s ease-in;
			transition: 1.2s ease-in;
}
/*スライド基本設定*/
#slideshow {
	/*スライド要素の幅・高さの指定する*/
	width:  80%;
	height: 700px;
	position: relative;
    margin-left: 20%;
}
#slideshow div {
	position: absolute;
	top:  0;
	left: 0;
	z-index: 8;
	opacity: 0.0;
	width:100%;
	height:100%;
	text-align:center;
}
#slideshow div.active {
	z-index: 10;
	opacity: 1.0;
    
	
}
#slideshow div.last-active {
	z-index: 9;
}
#slideshow div img{
	vertical-align:bottom;
}

/*スライド画像背景設定（任意）*/
#slideshow .photo01{
	background:url() center center no-repeat;
	background-size:cover;/*全画面設定*/
}

/*スライド要素内クラス（任意）*/
#slideshow div{

}
#slideshow .main001{
	background: url("../../images/mainimg001.jpg") center bottom no-repeat;
    background-size: cover;
}
#slideshow .main002{
	background: url("../../images/mainimg002.jpg") center bottom no-repeat;
    background-size: cover;
}
#slideshow .main003{
	background: url("../../images/mainimg003.jpg") center bottom no-repeat;
    background-size: cover;
}
#slideshow .main004{
	background: url("../../images/mainimg004.jpg") center bottom no-repeat;
    background-size: cover;
}





/* logo アニメーション 
--------------------------------------------*/
#logo-load-wrapper{
    position: relative;
    z-index: 10;
    
}
#logo-load{
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top:0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    z-index: 0;
}

/***************************************************
 * Generated by SVG Artista on 6/21/2021, 7:25:45 PM
 * MIT license (https://opensource.org/licenses/MIT)
 * W. https://svgartista.net
 **************************************************/

svg .logo_anime-1 {
  stroke-dashoffset: 2px;
  stroke-dasharray: 2px;
  -webkit-transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.2s;
          transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.2s;
}

svg.active .logo_anime-1 {
  stroke-dashoffset: 0;
}

svg .logo_anime-2 {
  stroke-dashoffset: 2px;
  stroke-dasharray: 2px;
  -webkit-transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.32s;
          transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.32s;
}

svg.active .logo_anime-2 {
  stroke-dashoffset: 0;
}

svg .logo_anime-3 {
  stroke-dashoffset: 2px;
  stroke-dasharray: 2px;
  -webkit-transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.44s;
          transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.44s;
}

svg.active .logo_anime-3 {
  stroke-dashoffset: 0;
}

svg .logo_anime-4 {
  stroke-dashoffset: 2px;
  stroke-dasharray: 2px;
  -webkit-transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.56s;
          transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.56s;
}

svg.active .logo_anime-4 {
  stroke-dashoffset: 0;
}

svg .logo_anime-5 {
  stroke-dashoffset: 2px;
  stroke-dasharray: 2px;
  -webkit-transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6799999999999999s;
          transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6799999999999999s;
}

svg.active .logo_anime-5 {
  stroke-dashoffset: 0;
}

svg .logo_anime-6 {
  stroke-dashoffset: 2px;
  stroke-dasharray: 2px;
  -webkit-transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s;
          transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s;
}

svg.active .logo_anime-6 {
  stroke-dashoffset: 0;
}

svg .logo_anime-7 {
  stroke-dashoffset: 267.4799499511719px;
  stroke-dasharray: 267.4799499511719px;
  -webkit-transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9199999999999999s;
          transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9199999999999999s;
}

svg.active .logo_anime-7 {
  stroke-dashoffset: 0;
}

svg .logo_anime-8 {
  stroke-dashoffset: 252.3857879638672px;
  stroke-dasharray: 252.3857879638672px;
  -webkit-transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.04s;
          transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.04s;
}

svg.active .logo_anime-8 {
  stroke-dashoffset: 0;
}

svg .logo_anime-9 {
  stroke-dashoffset: 208.95233154296875px;
  stroke-dasharray: 208.95233154296875px;
  -webkit-transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.16s;
          transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.16s;
}

svg.active .logo_anime-9 {
  stroke-dashoffset: 0;
}

svg .logo_anime-10 {
  stroke-dashoffset: 181.87228393554688px;
  stroke-dasharray: 181.87228393554688px;
  -webkit-transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.28s;
          transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.28s;
}

svg.active .logo_anime-10 {
  stroke-dashoffset: 0;
}

svg .logo_anime-11 {
  stroke-dashoffset: 266.11114501953125px;
  stroke-dasharray: 266.11114501953125px;
  -webkit-transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s;
          transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s;
}

svg.active .logo_anime-11 {
  stroke-dashoffset: 0;
}

svg .logo_anime-12 {
  stroke-dashoffset: 245.607666015625px;
  stroke-dasharray: 245.607666015625px;
  -webkit-transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5199999999999998s;
          transition: stroke-dashoffset 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5199999999999998s;
}

svg.active .logo_anime-12 {
  stroke-dashoffset: 0;
}



/* スライダー基本
--------------------------------------------*/

		
.slick-next {
	position: absolute;
    right: -10px !important;
	top:50%;
	margin-top: -30px;
    z-index: 99;
	display: block;
	text-indent: -9999px;
	width:30px !important;
	height:30px !important;
	background: url(../../images/btn_next.png) no-repeat center center !important;
	background-size: cover !important;
	cursor:pointer;
	border: none  !important;
}
.slick-prev {
	position: absolute;
    left: -10px !important;
	top:50%;
	margin-top: -30px;
    z-index: 100;
	display: block;
	text-indent: -9999px;
	width:30px !important;
	height:30px !important;
	background: url(../../images/btn_prev.png) no-repeat center center !important;
	background-size: cover !important;
	cursor:pointer;
	border: none  !important;
}

/**/
/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

}
.slick-arrow.slick-hidden {
    display: none;
}
