﻿@media screen and (max-width: 768px) {



	.inner{
		width: auto;
		padding: 0 15px;
	}
	#contents-flex .inner{
		flex-direction: column;
		padding: 0;
	}


	/*ヘッダーここから*/
	header{
		border: none;
	}
	header .inner{
		padding: 10px 0 3px 10px;
	}
	header h1 img{
		width: 220px;
		height: auto;
	}
	header .header-sub_menu{
		display: none;
	}
	/*ヘッダーここまで*/


	/*ナビここから*/
	nav .inner{
		padding: 0;
	}
	nav ul{
		flex-direction: column;
	}
	nav ul li{
		border-bottom:1px dashed #fff;
	}
	nav ul li:last-child{
		border-bottom:none;
	}
	nav ul li a{
		display: block;
		line-height:2.5em;
		font-size:100%;
	}
	nav ul li:first-child{
		border-left: none;
	}
	/*ナビここまで*/


	/*ハンバーガーメニュー ここから(簡単なつくりに変更)*/

	#navbtn{
		z-index:1;
		transition:all 1s;
		width:40px;
		height:40px;
		background:#0968ab;
		position:fixed;
		right:0;
		top:0;
	}
	#navbtn span{
		width:30px;
		height:2px;
		background:#fff;
		position:absolute;
	}
	#navbtn span:nth-child(1){ transition:all 0.2s; left:5px; top:10px;}
	#navbtn span:nth-child(2){ transition:all 0.2s; left:5px; top:19px;}
	#navbtn span:nth-child(3){ transition:all 0.2s;  left:5px; top:28px;}

	.open span:nth-child(1){ transform:translateY(9px) rotate(45deg);}
	.open span:nth-child(3){ transform:translateY(-9px) rotate(-45deg);}
	.open span:nth-child(2){ top:19px; opacity:0;}

	nav{
		transition:all 1s;
		width:100%;
		height:auto;
		position:fixed;
		right:0;
		top:-214px;
		background:#0968ab;
		z-index:1;
	}
	.opennav{ transform:translateY(214px);}
	.openburger{ transform:translateY(214px);}
}

	/*ハンバーガーメニュー ここまで*/


	/*バナー（ファーストビュー）ここから*/
	#contents .inner{
		margin: 0.5em 0 0;
	}
	#contents .main-flex{
		display: none;
	}

	#contents .main-flex2{
		width:100%;
		display:flex;
		flex-direction:column;
	}
	.long-bnr2{
		margin: 2px 0 0;
	}
	.long-bnr2 img{
		width: 100%;
		height: auto;
	}
	/*バナー（ファーストビュー）ここまで*/


	/*バナー（セカンドビュー）ここから*/
	main .long-bnr{
		margin: 2px 0 0;
	}
	main .long-bnr img{
		width: 100%;
		height: auto;
	}
	/*バナー（セカンドビュー）ここまで*/


	/*メインここから*/
	main{
		width: auto;
		padding: 0 15px;
	}
	#sec1 h2{
		font-size: 1.5em;
	}

	#sec1 .kaigyou::after{	
		content:"\A";
		white-space:pre;
	}


	#sec1 .sec1-flex{
		flex-direction:column;
	}
	#sec1 .point{
		width:auto;
	}

	.sec-flex{
		flex-direction:column;
		margin:0 auto;
		align-items:center;
	}
	#sec2{
		padding:20px 10px;
	}
	#sec2 h2{
		font-size:230%;
		text-align:center;
	}
	#sec2 .item{
		margin:0;
		padding:0;
	}

	#sec2 dl dt{
		font-size:clamp(16px, 2.9vw, 32px);
	}

	#sec2 dl{
		padding:15px 0 0 0;
	}
	#sec2 .items-flex{
		margin:20px;
		padding:0 20px;
		display:flex;
		align-items:normal;
		flex-direction:column;
	}
	#sec2 .items-flex img{
		margin-top:1em;
		width:100%;
		height:auto;
		display:block;
	}
	#sec2 .items-flex dl{
		width:auto;
		display:block;
		justify-content:center;
	}

	#sec2 .sec-flex:after{
		width:90%;
		left:auto;
	}

	#sec3 .sec3-flex{
		flex-direction:block;
	}

	#sec3 .sec3-flex li{
		display:flex;
		width:100%;
		padding:0 0 10px;
	}
	#sec3 .sec3-flex a{
		flex:1;
	}
	#sec3 dl{
		flex:2;
		padding:0 10px;
	}

	/*サイドコンテンツここから*/
	aside{
		display: flex;
		flex-direction: column;
		padding: 0;
	}
	aside .contact-us{
		display: none;
	}
	aside .service{
		order: 2;
	}
	aside .service h3{
		margin-bottom: 10px;
		padding: 7px 0;
		font-weight: 500;
	}
	aside .service ul{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		margin: 0 0 20px;
		padding: 0 15px;
		border: none;
	}
	aside .service ul li{
		margin: 2% 0;
		border: 1px solid #ddd;
	}
	aside .service ul li:nth-child(1),
	aside .service ul li:nth-child(3),
	aside .service ul li:nth-child(5){
		margin-right: 2%;
	}
	aside .service ul li:nth-child(2),
	aside .service ul li:nth-child(4),
	aside .service ul li:nth-child(6){
		margin-left: 2%;
	}
	aside .service ul li:last-Child{
		border: 1px solid #ddd;
	}
	aside .service ul li img{
		width: 100%;
		height: auto;
		display: block;
	}
	aside .side-sub-nav{
		display: none;
	}
	aside .gennosuke{
		order: 1;
		padding: 10px 15px;
	}
	aside .gennosuke img{
		width: calc(100% / 2);
		display: block;
		margin: 0 auto;
	}
	/*サイドコンテンツここまで*/


	/*フッターここから*/
	footer .inner{
		padding: 30px 0 85px 0;
	}
	footer .footer-flex{
		flex-direction: column;
	}

	footer .grp1{
		display:block;
		margin:0 auto;
	}

	footer .grp1 img, footer .grp2 img{
		width: 340px;
		height: auto;
		display:block;
		margin: 0 auto;
	}
	footer .grp1 .small{
		margin: 0;
		padding: 0;
		text-align:center;
	}
	footer .grp1 dl{
		margin: 10px 0;
		text-align:center;
	}

	footer .grp2{
		display:block;
		margin:0 auto;
		width:100%;
	}

	footer .grp2 .large{
		text-align:center;
	}


	footer .grp3{
		padding: 20px 0 0 ;
		margin: 0;
		width:100%;
	}
	footer .page-top{
        	bottom: 40px;
        	right: 20px;
        	width: 40px;
	}
	footer .page-top a img{
		width: auto;
		height: auto;
	}

	footer .grp3 ul li{
		background-image:none;
		height:50px;
		display:block;
		text-align:center;
		background-size:15px;
		border-bottom:1px dashed #000;
	}
	footer .grp3 ul li a{
		display: block;
		line-height:50px;
		font-size:120%;
	}


}