@charset "utf-8";
/*--京base_sp.css--*/
/* スマホだけに適用するCSS */
@media screen and (min-width:1px) and (max-width:479px){
    html {
		min-width:initial;
		min-width:auto;
	}
	
	body {
		min-width:initial;
		min-width:auto;
		overflow-y: scroll;
		font-size:3.6vw;
	}
	
	#container{
		min-width:initial;
		min-width:auto;
		padding-top: 14vw;
	}
    
    #container img{
        max-width: 100%;
        width: auto;
        max-height: 100%;
        height: auto;
    }
    
    /*----------header----------*/
	header{
		min-width:initial;
		min-width:auto;
	}
	
		header > .box_inner{
			max-width: auto;
			max-width: initial;
			min-width: auto;
			min-width: initial;
			height: 14vw;
			margin: 0;
			padding: 0 14vw 0 3vw;
		}
    
        .small_header header > .box_inner{
            height: 14vw;
        }
    
            header > .box_inner #ku_logo{
				height: 7vw;
            }
    
            .small_header header > .box_inner .site_title #ku_logo{
                height: 7vw;
            }

			header > .box_inner .site_title{
				width: auto;
				justify-content: flex-start;
                margin:0;
			}

			header > .box_inner .site_title a{}
    
			header > .box_inner .site_title h1{
				height: 8vw;
                margin: 0 0 0 3vw;
			}
    
            .small_header header > .box_inner .site_title h1{
				height: 8vw;
                margin: 0 0 0 3vw;
            }
    
            header > .box_inner .header_nav{
                display: none;
            }
    
            header > .box_footer{
                display: none;
            }

    /*-----contents-----*/
	.contents {}
    
    /*-----footer-----*/
    footer{
        width: auto;
        padding: 5vw;
        background: #e6f6e9;
    }

    footer .box_inner{
        width:auto;
        padding:0;
        justify-content: center;
        text-align: center;
    }
    
    footer .box_inner .f_site_title{
        width: 70vw;
        margin: 0 auto 10vw auto;
    }
    
    footer .box_inner .f_nav{
        display:none;
    }
    
    footer .box_footer{
        width:auto;
        padding:0;
    }
    
    footer .box_footer .f_link{
        display:none;
    }
    
    .pagetop {
        width: 15vw;
        height: 15vw;
        position: fixed;
        bottom: 5vw;
        right: 5vw;
        z-index: 10;
        transform: translateY(100px);
        transition: .3s all ease;
        opacity: 0;
    }
    
    /*ハンバーガーボタン*/
	.nav_oc{
		display:block;
		position:fixed;
		z-index:99;
		text-align:center;
		width: 14vw;
		height: 14vw;
		top: 0;
		right: 0;
	}
	
		.menu-trigger,
		.menu-trigger span {
			display: inline-block;
			transition: all .4s;
			box-sizing: border-box;
		}
		
		.menu-trigger {
			position:relative;
			width: 100%;
			height: 100%;
			border:none;
			outline:none;
			background: #0148a4;
			cursor:pointer;
		}
		
			.menu-trigger span {
				width: 5vw;
				left: 4.5vw;
				height: 1px;
				background: #fff;
				position: absolute;
			}

			.menu-trigger span:nth-of-type(1) {
				top: 4.8vw;
			}

			.menu-trigger span:nth-of-type(2) {
				top: calc(7vw - 0.5px);
			}
			.menu-trigger span:nth-of-type(3) {
				bottom: 4.8vw;
			}
	
			.menu-trigger.active span:nth-of-type(1) {
				-webkit-transform: translateY(2vw) rotate(-315deg);
				transform: translateY(2vw) rotate(-315deg);
			}
	
			.menu-trigger.active span:nth-of-type(2) {
				opacity: 0;
			}
	
			.menu-trigger.active span:nth-of-type(3) {
				-webkit-transform: translateY(-2.2vw) rotate(315deg);
				transform: translateY(-2.2vw) rotate(315deg);
			}
	

	
	/*ナビゲーション*/
	.side_nav{
		display:block;
		position:fixed;
		top:0;
		right:0;
		box-sizing:border-box;
		width:100vw;
		height:100vh;
		transition:.3s all ease;
		z-index:-1;
		opacity:0;
	}
	
	.side_nav.active{
		padding:18vw 4vw 0 4vw;
		z-index:98;
		opacity:1;
		background:rgba(250,240,230,0.95);
	}
	
		.side_nav ul{}
		
			.side_nav ul li{}
			
			.side_nav ul li a{
				display:block;
				text-decoration:none;
			}
		
		.side_nav .side_global_nav{
			display: flex;
			justify-content: space-between;
		}
	
			.side_nav .side_global_nav > ul{
				width: calc((100% - 4vw) / 2);
			}
		
			.side_nav .side_global_nav > ul > li{
				width:100%;
				margin-bottom:1.5vw;
			}
			
				.side_nav .side_global_nav > ul > li > a{
					color:#111;
					font-size:3.4vw;
					padding:0.9em 2vw;
					border:1px solid #fff;
					background:#fff;
					box-shadow:0 0 1px 1px rgba(0,0,0,0.1);
					border-radius: 2px;
					position: relative;
				}
	
					.side_nav .side_global_nav > ul > li > a:before{
						content: "";
						display: block;
						width: 0;
						height: 0;
						border-style: solid;
						border-width: 0 0 2vw 2vw;
						border-color: transparent transparent #0148a4 transparent;
						position: absolute;
						bottom: 0.2vw;
						right: 0.2vw;
					}
	
				.side_nav .side_global_nav > ul > li > ul{
					padding: 2vw;
					font-size: 0.9em;
				}
	
					.side_nav .side_global_nav > ul > li > ul > li{
						margin-bottom: 0.1em;
					}
	
					.side_nav .side_global_nav > ul > li > ul > li:last-child{
						margin-bottom: 0;
					}
	
						.side_nav .side_global_nav > ul > li > ul > li a{
							color: #111;
							padding: 0.3em 0 0.3em 0.8em;
							position: relative;
						}
	
							.side_nav .side_global_nav > ul > li > ul > li a:before{
								font-family: FontAwesome;
								content:"\f105";
								color: #555;
								display: inline-block;
								position: absolute;
								top: 0.3em;
								left: 0;
							}    
}




