@charset "UTF-8";@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300,700,800|Playfair+Display+SC:400,700,900);abbr,address,article,aside,audio,b,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,p,pre,q,samp,section,small,span,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,ul,var,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}ins{color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0}input,select{vertical-align:middle}*,:after,:before{-webkit-box-sizing:border-box;box-sizing:border-box}html{font-size:1.0625rem;font-family:-apple-system, blinkMacSystemFont, /* Macの欧文はSan Francisco (OS X 10.11以降) */
               'Helvetica Neue', /* Macの欧文 (OS X 10.10以前) */
               'Segoe UI',       /* Windowsの欧文 */
               YuGothicM,        /* Windows8.1以上は游ゴシック */
               YuGothic,         /* Macの游ゴシック */
               Meiryo,           /* 游ゴシックが入っていないWindows */
               sans-serif;}p{margin:1rem auto;line-height:1.8}a{color:#000}a:visited{color:#000}a:focus{color:#959595}a:hover{color:#959595}a:active{color:#00a0e9}body{background-color:#fff}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}small{font-size:0.8rem}sub,sup{font-size:0.8rem;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}strong{font-weight:bold}strong.red{color:#e00909;font-weight:normal}i{font-weight:normal;font-style:italic}input[type=email],input[type=text],input[type=url]{-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid #e0e3e4;padding:0.5rem}textarea{-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid #e0e3e4;padding:0.5rem}p{margin:20px auto}.wp-caption{}.wp-caption-text{}.sticky{}.gallery-caption{}.bypostauthor{}.alignright{}.alignleft{}.aligncenter{}.screen-reader-text{}main{padding:20px}main .navigation{padding:20px}#sub{padding:20px}#sub .widget{padding:20px}footer#site-footer{padding: 2em 1em 1em 2em;background-color:#efefef}
/*# sourceMappingURL=style.css.map */
/* IE8〜11はメイリオ */
@media screen\0 {
  body {
    font-family: 'Segoe UI', /* Windowsの欧文 */
                 Meiryo,     /* メイリオ */
                 sans-serif;
  }
}

/* Windows */
@font-face {
  font-family: YuGothicM;
  font-weight: normal;
  src: local('YuGothic-Medium'),  /* Mediumを明示的に指定 */
       local('Yu Gothic Medium'), /* Chrome用 */
       local('YuGothic-Regular'); /* Windows8.1ではMediumがないのでRegularを指定 */
}
@font-face {
  font-family: YuGothicM;
  font-weight: bold;
  src: local('YoGothic-Bold'), /* Boldはそのまま */
       local('Yu Gothic');     /* Chrome用 */
}

#container{
	background-size:100%;
	background-position:top:center;
}
#container a,
#site-footer a{
	text-decoration:none;
}
#contents .btn{
	text-align:center;
	display:block;
	font-size:1.2em;
	line-height:2.5em;
	border-radius:5px;
}

#container img{
	width:100%;
}
#container .readmore{
}
#site-footer .mont,
#container .mont{
	font-family: 'Hind Siliguri', sans-serif;
	font-weight: 300;
	letter-spacing:.2em;
}

#container{
	position:relative;
}
#container ul li,
#site-footer ul li{
	list-style:none;
}
#main{
	padding:0;
	position:relative;
}
#main,
#site-footer{
	width:100%;
}
#site-footer .inner,
#container .inner{
	max-width:1000px;
	margin:0 auto;
	padding:0 1em;
}


#site-header{
	width:100%;
	position:fixed;
	top:0;
	left:0;
	z-index:999;
}
#site-header .inner{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
	padding:1em 0;
}
#site-logo{
	margin-left:0;
	margin-right:0;
}
#site-logo a{
}

.slick-slider{
	width:100%;
}
footer#site-footer{
	padding:1em 0 1em;
}

/*ハンバーガー css start*/
@media only screen and (min-width: 768px){
	#nav-toggle{
		display:none;
	}
	#site-header nav ul{
		display:flex;
	}
	#site-header nav ul li{
		margin-right:2em;
	}
	#site-header nav ul li:last-child{
		margin-right:0;
	}
}
@media only screen and (max-width: 767px){
    #site-header nav {
        background: rgba(8,8,19,0.95);
        color: #fff;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 990;
        display: flex;
        visibility: hidden;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        font-size: 29px;
        opacity: 0;
        transition: opacity .6s ease, visibility .6s ease;
    }
    .open #site-header nav {
        visibility: visible;
        opacity: 1;
    }
    
    
    #site-header nav ul li{
        width: 100%;
        margin: 0;
        padding-bottom:1rem;
        margin-bottom: 1rem;
        border-bottom:solid #333 1px;
    }
    #site-header nav ul li a,
    #site-header nav ul li a span{
        color: #eee!important;
    }
    #site-header nav ul li a.no_link:after{
        transform: rotate(90deg);
        display:inline-block;
        font-size:0.8em;
    }
    #site-header nav ul li a:after{
        font-family: 'icomoon' !important;
       speak: none;
       font-style: normal;
       font-weight: normal;
       font-variant: normal;
       text-transform: none;
       line-height: 1;
       -webkit-font-smoothing: antialiased;
       -moz-osx-font-smoothing: grayscale;
       content: "\e902";
       margin: 0 0.3em;
    }
    #site-header nav ul li {
        opacity: 0;
        -webkit-transform: translateX(200px);
        transform: translateX(200px);
        transition: opacity .2s ease, -webkit-transform .6s ease;
        transition: transform .6s ease, opacity .2s ease;
        transition: transform .6s ease, opacity .2s ease, -webkit-transform .6s ease;
    }
    #site-header nav ul li .sub-menu{
        border-top: solid #333 1px;
        margin-top: 1rem;
        padding-top:1em;
        padding-left:2em;
    }
    .open #site-header nav ul li {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        transition: opacity .9s ease, -webkit-transform 1s ease;
        transition: transform 1s ease, opacity .9s ease;
        transition: transform 1s ease, opacity .9s ease, -webkit-transform 1s ease;
    }
    
    
    
    
    #nav-toggle {
        top: 16px;
        right: 9px;
        height: 25px;
        cursor:pointer;
    }
    #nav-toggle > span{
        -webkit-writing-mode: vertical-rl;
          -ms-writing-mode: tb-rl;
              writing-mode: vertical-rl;
        display:block;
        margin:40px auto 0;
    }
    #nav-toggle div {
        position: relative;
        width: 25px;
    }
    #nav-toggle div span {
        width: 100%;
        height: 2px;
        left: 0;
        display: block;
        background: #fff;
        position: absolute;
        transition: transform .6s ease-in-out, top .5s ease;
    }
        
    #nav-toggle div span:nth-child(1) {
        top: 0;
    }
    #nav-toggle div span:nth-child(2) {
        top: 9px;
    }
    #nav-toggle div span:nth-child(3) {
        top: 18px;
    }
    
    #nav-toggle:hover div span:nth-child(1) {
        top: 4px;
      }
    #nav-toggle:hover div span:nth-child(3) {
        top: 14px;
    }
    
    .open #nav-toggle > span{
        color:#fff;
    }
    .open #nav-toggle div span {
        background: #fff;
    }
    .open #nav-toggle div span:nth-child(1) {
        top: 15px;
        transform: rotate(45deg);
    }
    .open #nav-toggle div span:nth-child(2) {
        top: 15px;
        width: 0;
        left: 50%;
    }
    .open #nav-toggle div span:nth-child(3) {
        top: 15px;
        transform: rotate(-45deg);
    }
    
    
    /* z-index */
    #nav-toggle {
        z-index: 1000;
    }
    
    #site-header .header_arrow{
        position: absolute;
       display: block;
       width: 50px;
       bottom: 80px;
       left: 50%;
       margin-left: -25px;
       text-align: center;
        text-decoration:none;
        color:#000;
        animation-delay: 0s;
        animation-duration: 1.5s;
        animation-timing-function: ease;
        animation-iteration-count: infinite;
    }
    #site-header .header_arrow.hidden{
        display:none;
    }
    @keyframes top_bottom{
        0% {bottom: 80px;}
        70% {bottom: 40px;}
        100% {bottom: 80px;}
    }
    #site-header .header_arrow i{
        font-size:2em;
    }
    #site-header .header_arrow i:before{
    }
}
/*ハンバーガー css end*/


#container .slick-slide img {
  height: 80vw;
  max-height: 600px;
  min-height: 550px;
	width: auto;
}
#main_visual{
	position:relative;
	background-color:#000;
}
#main_visual p{
	position:absolute;
	text-align:center;
	font-size:3em;
	top:0;
	width:100%;
	height:100%;
	display:flex;
	justify-content:center;
	align-items:center;
	background-color:rgba(0,0,0,0.3);
	margin:0;
}
#main_visual p span{
	filter: drop-shadow(0 0 4px rgba(0,0,0,0.7));
}
#main_visual p strong{
	font-size:0.7em;
	display:block;
	font-weight:normal;
	letter-spacing: 0.5em;
}

.cont{
	padding:3em 0;
}
.cont .inner h2{
	text-align:center;
	margin-top:20px;
	margin-bottom:40px;
	letter-spacing: 0.3em;
}

#rinen ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
}
#rinen ul li{
	width:49%;
	margin-right:2%;

}
#rinen ul li:last-child{
	margin-right:0;
}
#rinen ul li p{
	padding:0 1em;
}
#rinen ul li.only{
	width:100%;
}
#rinen ul li.only figure{
	width:49%;
	margin:0 auto;
}
#rinen ul li.only p{
	text-align:left;
}

#jigyo ul li{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	margin-bottom:2em;
}
#jigyo ul li:last-child{
	margin-bottom:0;
}
#jigyo ul li figure{
	width:300px;
}
#jigyo ul li figure img{
	display:block;
}
#jigyo ul li p{
	width:calc(100% - 300px);
	padding:0 1em;
}

#about_us .inner div{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-items:flex-start;
}
#about_us .inner div figure{
	width:40%;
	margin-right:5%;
}
#about_us .inner div table{
	width:55%;
}
#about_us .inner div table tr{
	border-bottom:solid #ccc 1px;
}
#about_us .inner div table tr th,
#about_us .inner div table tr td{
	line-height:1.5em;
	padding:1em 0;
}
#about_us .inner div table tr th{
	width:5em;
}
#about_us .inner div table tr td ul,
#about_us .inner div table tr td ol{
	padding-left:1.5em;
}
#about_us .inner div table tr td li{
	margin-bottom:1em;
}
#about_us .inner iframe{
	width:100%;
}

#contact .web_form div{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
}
#contact .web_form div a{
	width:200px;
	margin:0 1em 1em;
}
#contact form{
	margin: 0 auto;
	max-width:600px;
}
#contact form table tr{
	border-bottom:solid #ccc 1px;
}
#contact form table tr th,
#contact form table tr td{
	vertical-align:middle;
	padding:1em;
}
#submit,
#contact form input[type="submit" i]{
	border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
	line-height:2.5em;
	width:300px;
	margin:0 auto;
	text-align:center;
	display:block;
}
#entry_submit,
#contact form input{
	width:100%;
}
#contact form input[type="tel" i]{
	padding:0.5em;
}

#site-footer .inner{
	text-align:center;
}
#site-footer .inner ul{
	border-bottom:solid #ccc 1px;
	margin-bottom:1em;
}
#site-footer .inner ul li{
	margin:0 0.5em 1em;
	display:inline-block;
}
#site-footer .inner > a{
	text-align:center;
	width:150px;
}
@media only screen and (max-width: 767px){
	#main_visual p{
		font-size: 2em;
	}
	#main_visual p strong{
		font-size: 0.5em;
	}
	#rinen ul li{
		width:100%;
		margin-right:0;
		margin-bottom:2em;
	}
	#rinen ul li:last-child{
		margin-bottom:0;
	}
	#jigyo ul li figure{
		width:100%;
		margin:0 auto;
	}
	#jigyo ul li p{
		width:100%;
	}
	#about_us .inner div figure,
	#about_us .inner div table{
		width:100%;
		margin-right:0;
	}
	#about_us .inner div table tr th{
		width:5em;
	}
	#contact form table tr th,
	#contact form table tr td{
		display:block;
	}
	#contact form table tr th{
		padding-bottom:0;
	}
	footer#site-footer{
		padding-left:0;
		padding-right:0;
	}
	#container .slick-slide img {
		width:100%;
	}
	.cont .inner h2{
		margin-bottom:1em;
	}
	.cont{
		padding: 2em 0 1em;
	}
	#site-header .inner{
		padding: 0.8em 0.5em 0.5em;
		justify-content: center;
		position:relative;
	}
	#site-header .inner #nav-toggle{
		position:absolute;
	}
}


#kaso{
	padding:100px 0 100px;
}
#main_visual .slick-slide{
	height:655px;
	max-height:80vh;
	background-size:cover;
	background-position:center;
}