/* ====================================================
// layout
==================================================== */
.container {
    max-width: 1000px;
    position: relative;
    margin: 0 auto;
    overflow-x: hidden;
}
  
.float-right {
	float:right;
}
	
body{
    background:rgba(248,250,255,1.00);
    }
	
/* ====================================================
header
==================================================== */
.l-header {
    font-size: 0;
    text-align: center;
    padding: 20px 0 20px;
}
#home .l-header {
	display: none;
}

/*site-header*/

.site-header {
    max-width:1065px;
    width:100%;
    display: flex;
    align-items: center; /* 縦方向中央揃え */
    flex-wrap:wrap;
    margin:0 auto;
    gap: 5px; /* ロゴとタイトルの間隔 */
    padding-top:5px;
}

.site-header .header-logo {
    max-width: 250px; 
    width:40%;
    height: auto;
    margin:0 auto;
}

.site-header .header-title {
    max-width: 700px;
    width:100%;
    height: auto;
    margin:0 auto;
}

/* ====================================================
　ハンバーガーメニュー　
==================================================== */
header {
    padding: 30px 0 0;
}
.logo {
    width: auto;
    margin: 0 0 20px;
    padding: 0;
    text-align: center;
}


.btn-burger {
    display: block;
}



/* --------------------------------------------------
  ハンバーガーの幅768px以下のスタイル指定 ここから
-------------------------------------------------- */
@media screen and (max-width: 880px) {
/* ハンバーガーボタン */

    
/*ハンバーガーアイコン*/
.btn-burger {
    cursor: pointer;
    display: block;
    width: 56px;
    height: 60px;
    position: fixed;
    top: 5px;
    right: 10px;
    background: #0065B3;
    z-index:99999;
}
/*ハンバーガーアイコンを作る三本線*/
.icon, .icon:before, .icon:after {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    height: 2px;
    width: 29px;
    background-color: #fff;
    border-radius: 2px;
    display: block; /* ここから余分なスペースを削除 */
    content: ''; /* ここにセミコロンを追加 */
    cursor: pointer;
    margin: auto;
}
/*三本線の間隔*/
.icon:before {
  top: 11px;
}
.icon:after {
  top: -20px;
}
/*チェックボックス非表示*/
.nav-toggle {
    display: none;
}
/*アイコンをクリックしたら*/
.nav-toggle:checked ~ .btn-burger .icon {
    background: transparent;
}
.nav-toggle:checked ~ .btn-burger .icon:before {
    transform: rotate(-45deg);
    top: 0;
}
.nav-toggle:checked ~ .btn-burger .icon:after {
    transform: rotate(45deg);
    top: 0;
}
.icon,
.icon:before,
.icon:after {
    transition: all .8s;
}
/*表示されるメニューの中身*/
.l-sidenav {
    position:fixed;
    right:100%; /* 画面の外に飛ばす */
    top:0%;
    background:rgba(255,255,255,0.6);
    padding-top:20px;
}
.l-sidenav ul a
.l-sidenav .lang-box a{
    display: block;
    text-decoration: none;
    color: #fff;
}
.l-sidenav ul,
.l-sidenav .lang-box{
    list-style: none;
    display: none;
    margin: 0;
}
.l-sidenav ul li {
    margin: 0;
}
.nav-toggle:checked ~ .l-sidenav {
    right:0;
    z-index:9999;
    padding-top:80px;
}
.nav-toggle:checked ~ .l-sidenav ul,
.nav-toggle:checked ~ .l-sidenav .lang-box{
    display: block;
}
/*メインイメージ*/
.top {
    height: 200px;
    margin-bottom: 50px;
    background-color: #f0f8ff;
}

	
	

}


/* ====================================================
mainContens
==================================================== */
.l-main {
    overflow: hidden;
    position: relative;
    margin: 0 auto;
    max-width: 1065px;
    display: flex;
    justify-content: space-around;
}

.l-mainContents {
    width: 100%;
    /* height: 100%; */
    min-height: 800px;
    background-size: 795px;
    padding: 40px 40px 40px;
}
.l-main-bg{
    width:100%;
    background:linear-gradient(to bottom, rgba(248,250,255,0.8), rgba(202,234,254,0.60), rgba(0,161,236,0.36)),url("../images/common/bg-image_95533191.png") repeat;
    padding-bottom:50px;
}
.main-block-cover{
    box-shadow: 4px 6px 6px rgba(67,100,128,0.40), 4px 4px 5px rgba(50,77,100,0.20);
}
.top-main-block {
    width: 100%;
    height:auto;
}

@media (max-width:1100px){
    .l-mainContents{
        margin-left:0;
    } 
}
@media(max-width:982px){
    .l-mainContents {
    margin-left:0;
}

}

#home .l-mainContents {
    padding: 10px 30px;
}

#links ul.link {
	list-style-type:none;
}

#links ul.link li {
	text-decoration:underline;
}

/* ====================================================
sidenav
==================================================== */
.l-sidenav { 
    width: 220px;
    height: 100%;
    max-height: 100%;
    overflow: hidden;
    padding-top:20px;
	background-size: cover;
    min-height: 100%;
}
.l-sidenav > ul{
}

@media (max-width:900px) {
	.l-sidenav {
		margin-bottom:20px;
	}
}


/* ====================================================
footer
==================================================== */
.l-footer {
    background: #0075C4;
    clear: both;
    line-height: 18px;
    font-weight: 400;
    padding: 20px 0;
    font-size: 14px;
}
.footer-block {
	display: table;
	margin: 0 auto 0;
	color: #fff;
}
.footer-block p{
    text-align: center;
}

/*モバイル対応*/
@media (max-width: 999px){
	.l-main {
    overflow: hidden;
    position: relative;
    margin: 0 auto;
}
	.l-header {
    padding: 20px 10px 20px;
}
	.container {
    max-width: 880px;
    position: relative;
    margin: 0 auto;
    overflow-x: hidden;
}
.l-mainContents {
    width: 644px;
    height: 100%;
    float: right;
    min-height: 850px;
    margin-right: 0;
}

}

@media (max-width: 880px){
   
	.l-mainContents {
    padding: 0 20px 40px;
    width: 100%;
    height: 100%;
    float: right;
    min-height: 710px;
}
	.l-main {
    overflow: hidden;
    position: relative;
    margin: 0 auto;
    width: 100%;
            flex-direction: column-reverse;
}
		.container {
    width: 100%;
    position: relative;
    margin: 0 auto;
    overflow-x: hidden;
}
	.l-footer {
       line-height: 18px;
    font-weight: 400;
    padding: 20px 20px 60px 20px;
    font-size: 13px;
    width: 100%;
}
.l-sidenav {
    width: 100%;
    height: auto;
    overflow: scroll;
    margin-right: 0;
    padding: 0 10px 0px;
    margin-bottom: 0;
}
    .kasou_title {
    margin-top: 40px;
}
}

.l-footer .container {
	overflow-x: inherit;
}

@media (max-width: 880px){
	.l-mainContents {
    background-size: 100%;
}
}

@media (max-width: 500px){
	.l-mainContents {
    min-height: 650px;
    background: url(../images/back02.png) no-repeat right top;
    background-size: 580px;
		        padding: 0 20px 0px;
}
}

/*下層ページ*/
.content {
    min-height: 830px;
    padding: 20px;
    margin-bottom: 20px;
    width: 100%;
    background: #e5f4fb;
    box-shadow:0px 1px 6px rgba(67, 100, 128, 0.40), 4px 4px 5px rgba(50, 77, 100, 0.20);
}
@media (max-width:600px){
	.content {
	min-height:500px;
	}
}


.cont_inner {
    background: #fff;
    padding: 20px 30px;
    margin: 20px 0 0;
    border-radius: 15px;
    border: 1px solid #b4d9f6;
    min-height: 700px;
}







