html,body{
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 16px;
    line-height: 28px;
    color: #3B4043;
}

a{
    color: #707070;
}
a:hover{
    color: #3B4043;
    text-decoration: none;
}

h1 img{
    height: 70px;
    max-height:70px;
}

h2{
    font-family: 'Sawarabi Mincho', sans-serif;
    font-size: 24px;
    line-height: 36px;
    color: #A82424;
    border-bottom: 1px solid #707070;
    padding-bottom: 5px;
}

h3{
    font-family: 'Sawarabi Mincho', sans-serif;
    font-size: 22px;
    height: 22px;
    color: #A82424;
    padding: 0 0.5em;
    border-left: solid 8px #A82424;
}

figcaption{
    font-family: 'Sawarabi Mincho', sans-serif;
    font-size: 16px;
    line-height: 24px;
}

p{
    text-indent: 1em;
    padding-left: 1em;
}

button:focus {
	outline:0;
}

footer{
    color: #fff;
    
}

small{
    font-size: 9px;
}

article{
    margin-bottom: 100px;
    overflow: hidden;
}

section{
    margin-top: 50px;
}

.main_visual{
    z-index: 9;
    position: relative;
}
.top_main_visual{
    max-width: 1400px;
}

.font_12{
    font-size: 12px;
}

.font_14{
    font-size: 14px;
}


/**
* ヘッダー 
**/
header{
    background-color: #ffffff;
    box-shadow: 0px 3px 6px rgba(0,0,0,0.16);
    position: relative;
    z-index: 10;
    padding-top: 20px;
}
    
header h1{
    margin-bottom: 0;
}
header nav{
    background-color: #ffffff !important;
    margin-top: 20px;
}
header nav ul{
    padding-bottom: 30px !important;
}
header nav ul li{
    padding-left: 44px;
    padding-right: 44px;
    color: #707070;
    border-right: solid 1px #707070;
}
header nav ul li:last-child{
    border: 0;
}
.font-menu{
    color: #707070;
}


/**
* フッター
**/
footer{
    background-color: #C97676;
    color: #fff;
    padding: 24px 20px 24px 20px;
}
footer nav ul li{
    padding-left: 14px;
    padding-right: 14px;
}
footer a{
    color: #ffffff;
}
footer a:hover{
    color: #ffffff;
}
footer address{
    margin-bottom: 0;
}
footer address p{
    text-indent: 0;
    padding-left: 0;
}


.top_pic,
.top_detail,
.sakura_detail,
.address_detail,
.about_detail,
.syushi_detail{
    margin-top: 30px;
}

.about_h3_contents,
.syushi_h3_contents{
    padding: 0 calc( 15px + 1em );
}



/* xl */
@media (min-width: 1200px) {
    .container {
        max-width: 1024px !important;
    }
}
/* lg */
@media (min-width: 992px) and (max-width: 1199.5px){
    .container {
        max-width: 992px !important;
    }
}
/* md */
@media (min-width: 768px) and (max-width: 991.5px){
    .container {
        max-width: 768px !important;
    }
    .syushi_detail_text{
        margin-top: 30px;
    }
}
/* sm */
@media (min-width: 576px) and (max-width: 767.5px){
    html,body{
        font-size: 14px;
        line-height: 21px;
    }
    h2{
        font-size: 20px;
        line-height: 30px;
    }
    
    h3{
        font-size: 20px;
        height: 20px;
    }
    
    figcaption{
        font-size: 16px;
        line-height: 24px;
    }
    
    small{
        font-size: 9px;
    }

    .font_12{
        font-size: 12px;
    }
    
    .font_14{
        font-size: 14px;
    }

    article{
        margin-bottom: 60px;
        overflow: hidden;
    }

    section{
        margin-top: 30px;
    }

    .top_pic,
    .top_detail,
    .sakura_detail,
    .address_detail,
    .about_detail,
    .syushi_detail{
        margin-top: 20px;
    }
        
    .container {
        max-width: 100% !important;
    }
    .top_sakura_pic,
    .about_detail_text,
    .syushi_detail_text{
        margin-top: 30px;
    }
    .navbar-toggler span {
        display: block;
        width: 25px;
        height: 3px;
        background: #3B4043;
        margin: auto;
        margin-bottom: 4px;
        transition: all 400ms linear;
        cursor: pointer;
    }
    .navbar-toggler span:last-child{
        margin-bottom: 0;
    }
    .navbar-toggler[aria-expanded=false] span:nth-child(2) {
        opacity: 1
    }
    .navbar-toggler[aria-expanded=true] span:nth-child(2) {
        opacity: 0
    }
    .navbar-toggler[aria-expanded=true] span:first-child {
        transform: rotate(-45deg);
        position: relative;
        top: 7.5px
    }
    .navbar-toggler[aria-expanded=true] span:last-child {
        transform: rotate(45deg);
        bottom: 6px;
        position: relative
    }
    header{
        padding-bottom: 20px;
    }
    header nav{
        margin-top: 0px;
    }
    header nav ul li{
        padding-left: 44px;
        padding-right: 44px;
        border-right: 0;
    }
    header nav ul{
        padding-bottom: 0 !important;
    }
    header nav ul li{
        padding: 20px 0;
        border-bottom: 1px solid #707070;
    }
    header nav ul li:last-child{
        border-bottom: 0;
    }
}
/* xs */
@media (max-width: 576px) {
    html,body{
        font-size: 14px;
        line-height: 21px;
    }
    h2{
        font-size: 20px;
        line-height: 30px;
    }
    
    h3{
        font-size: 20px;
        height: 20px;
    }
    
    figcaption{
        font-size: 16px;
        line-height: 24px;
    }
    
    small{
        font-size: 9px;
    }

    .font_12{
        font-size: 12px;
    }
    
    .font_14{
        font-size: 14px;
    }

    article{
        margin-bottom: 60px;
        overflow: hidden;
    }

    section{
        margin-top: 30px;
    }

    .top_pic,
    .top_detail,
    .sakura_detail,
    .address_detail,
    .about_detail,
    .syushi_detail{
        margin-top: 20px;
    }

    .container {
        max-width: 100% !important;
    }
    .top_sakura_pic,
    .about_detail_text,
    .syushi_detail_text{
        margin-top: 30px;
    }
    .navbar-toggler span {
        display: block;
        width: 25px;
        height: 3px;
        background: #3B4043;
        margin: auto;
        margin-bottom: 4px;
        transition: all 400ms linear;
        cursor: pointer;
    }
    .navbar-toggler span:last-child{
        margin-bottom: 0;
    }
    .navbar-toggler[aria-expanded=false] span:nth-child(2) {
        opacity: 1
    }
    .navbar-toggler[aria-expanded=true] span:nth-child(2) {
        opacity: 0
    }
    .navbar-toggler[aria-expanded=true] span:first-child {
        transform: rotate(-45deg);
        position: relative;
        top: 7.5px
    }
    .navbar-toggler[aria-expanded=true] span:last-child {
        transform: rotate(45deg);
        bottom: 6px;
        position: relative
    }
    header{
        padding-bottom: 20px;
    }
    header nav{
        margin-top: 0px;
    }
    header nav ul li{
        padding-left: 44px;
        padding-right: 44px;
        border-right: 0;
    }
    header nav ul{
        padding-bottom: 0 !important;
    }
    header nav ul li{
        padding: 20px 0;
        border-bottom: 1px solid #707070;
    }
    header nav ul li:last-child{
        border-bottom: 0;
    }
}

#MainVisual,
#smtMainVisual  {
    margin: auto;
	background-color: white;
	position: relative;
}

#MainVisual img,
#smtMainVisual img{
	width: 100%;
	opacity: 0;
	animation-name: album;
	-webkit-animation-name: album;
	animation-duration: 10s;
	-webkit-animation-duration: 10s;
	animation-iteration-count: 1;
	-webkit-animation-iteration-count: 1;
	animation-fill-mode: forwards;
}

#MainVisual #mainVisual_1,
#smtMainVisual  #smt_mainVisual_1{
	display: block;
	margin: 0 auto;
}

#MainVisual #mainVisual_2,
#smtMainVisual  #smt_mainVisual_2 {
	animation-delay:5s;
	-webkit-animation-delay:5s;
	position: absolute;
	top: 0;
	left: 0;
}
#smtMainVisual  #smt_mainVisual_2{
    left: 0;
}

@keyframes album {
	0% {
		opacity: 0;
	}
	
	100% {
		opacity: 1;
	}
}

@-webkit-keyframes album {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

