@charset "UTF-8";

body {
    word-wrap: break-word;
    overflow-wrap: break-word;
    background-color: #fff;
    color:#000;
    font-weight: 500;
    letter-spacing: 0.05rem;
	font-family: "Noto Sans JP", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Raleway", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
}


/*link------------------------------------------------*/

a {
color:#333;
    cursor: pointer;
text-decoration:none;
-webkit-transition: all .3s;
transition: all .3s;
}

a:link {
color:#333;
text-decoration:none;
-webkit-transition: all .3s;
transition: all .3s;
}

a:visited {
color:#333;
text-decoration:none;
}

a:hover{
color:#5e7a23;
text-decoration:none;
-webkit-transition: all .3s;
transition: all .3s;
}

a img,
a img:hover{
	-webkit-transition: all .3s;
	transition: all .3s;
}

a img{
	filter: brightness(100%) contrast(100%);
}

a img:hover{
	filter: brightness(120%) contrast(100%);
}


.link_box{
	position: relative;
}

.link_box a{
	position: absolute;
	top: -1px;
	left: 0;
	width: 100%;
	height: 100%;
	text-indent: -9999px;
    transition: all .3s;
        opacity: 0.0;
}

.link_box a:hover{
    background-color:#FFF;
    filter:alpha(opacity=0);
    -moz-opacity: 0.0;
    opacity: 0.2;
    transition: all .3s;
}



/*clearfix------------------------------------------------*/

.clearfix:after {
  content: ".";  
  display: block;  
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

.clear {
	clear:both;
	}


			
/*共通------------------------------------------------*/
	
.container{
    
}

.columns{
	margin-bottom: 20px;
	}

.inner{
	margin: 0 20px;
	}

.left_zero{
    clear: left;
	margin-left: 0;
}


.caption{
    display: block;
    font-size: 0.8rem;
    text-align: right;
}


h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 2rem;
  /*font-weight: 300;*/
letter-spacing: 0.1rem;
}

h1 { font-size: 4.0rem;}
h2 { font-size: 3.0rem;}
h3 { font-size: 2.0rem;}
h4 { font-size: 1.8rem;}
h5 { font-size: 1.6rem;}
h6 { font-size: 1.5rem;}

.mt00{ margin-top: 0px;}
.mt20{ margin-top: 20px;}
.mt40{ margin-top: 40px;}
.mt60{ margin-top: 60px;}
.mt80{ margin-top: 80px;}

.pt00{ padding-top: 0px;}
.pt20{ padding-top: 20px;}
.pt40{ padding-top: 40px;}
.pt60{ padding-top: 60px;}
.pt80{ padding-top: 80px;}

.shadow{
    text-shadow: rgba(0,0,0,0.10) 2px 0px 2px, rgba(0,0,0,0.10) -2px 0px 2px, rgba(0,0,0,0.10) 0px -2px 2px, rgba(0,0,0,0.10) -2px 0px 2px, rgba(0,0,0,0.10) 2px 2px 2px, rgba(0,0,0,0.10) -2px 2px 2px, rgba(0,0,0,0.10) 2px -2px 2px, rgba(0,0,0,0.10) -2px -2px 2px, rgba(0,0,0,0.10) 1px 2px 2px, rgba(0,0,0,0.10) -1px 2px 2px;
}

b, strong, .bold{font-weight: 600;}
.sp{ display:none; }	



/* フェードアニメーション */

.fadein {
    opacity : 0.0;
    transform : translate(0, 100px);
    transition : all 800ms;
    }


.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
    }

.order-effect > .fadein:nth-of-type(2) {
    -moz-transition-delay:400ms;
    -webkit-transition-delay:400ms;
    -o-transition-delay:400ms;
    -ms-transition-delay:400ms;
    }

.order-effect > .fadein:nth-of-type(3) {
    -moz-transition-delay:600ms;
    -webkit-transition-delay:600ms;
    -o-transition-delay:600ms;
    -ms-transition-delay:600ms;
    }

.order-effect > .fadein:nth-of-type(4) {
    -moz-transition-delay:800ms;
    -webkit-transition-delay:800ms;
    -o-transition-delay:800ms;
    -ms-transition-delay:800ms;
    }

.order-effect > .fadein:nth-of-type(5) {
    -moz-transition-delay:1000ms;
    -webkit-transition-delay:1000ms;
    -o-transition-delay:1000ms;
    -ms-transition-delay:1000ms;
    }

.order-effect > .fadein:nth-of-type(6) {
    -moz-transition-delay:1200ms;
    -webkit-transition-delay:1200ms;
    -o-transition-delay:1200ms;
    -ms-transition-delay:1200ms;
    }




@media (max-width: 1080px) {

}



@media (max-width: 768px) {
    
h1 { font-size: 2.6rem;}
main .section_con{
    margin: 40px auto 0;
}    

.read_text{
    font-size: 1.4rem;
    line-height: 2.4rem;
}    
    
.pc{ display: none!important;}
.sp{ display:inherit;}	    
 
    
}
	

@media (max-width: 640px) {
    

h1, h2, h3, h4, h5, h6 {
  margin-bottom: 1rem;
    letter-spacing: 0.1rem;
}

h1 { font-size: 2.2rem;}
h2 { font-size: 1.8rem;}
h3 { font-size: 1.6rem;}
h4 { font-size: 1.4rem;}
h5 { font-size: 1.2rem;}
h6 { font-size: 1.2rem;}
h1 span { font-size: 1.2rem; margin-left: 1rem;font-weight: 500;}
    
main h1 {min-width: inherit;width: 100%;}
 
    
}
	

	
