/*
ヘッダー
*/
.header-logo {
	min-width: 120px;
	position: relative;
	background-color: rgba(4, 0, 52, 0.4);
	border: 2px solid rgba(255, 255, 255, 0.7);
	box-sizing: border-box;
	height: 80px;
}
.top {
	position: relative;
}
.header-nav-item {
	position: absolute;
	height: 100%;
	width: 12.17%;
	top: 0%;
	right: 87.83%;
	bottom: 0%;
	left: 0%;
	border-bottom: 1px solid #fff;
	box-sizing: border-box;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	padding: 4px 16px;
}
.header-nav-item1 {
	position: absolute;
	/* height: 100%; */
	width: 16.67%;
	top: 0%;
	right: 66.29%;
	bottom: 0%;
	left: 17.04%;
	border-bottom: 1px solid #fff;
	box-sizing: border-box;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	padding: 4px 16px;
}
.header-nav-item2 {
	position: absolute;
	/* height: 100%; */
	width: 18.16%;
	top: 0%;
	right: 43.26%;
	bottom: 0%;
	left: 38.58%;
	border-bottom: 1px solid #fff;
	box-sizing: border-box;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	padding: 4px 16px;
}
.header-nav-item3 {
	position: absolute;
	/* height: 100%; */
	width: 17.42%;
	top: 0%;
	right: 20.97%;
	bottom: 0%;
	left: 61.61%;
	border-bottom: 1px solid #fff;
	box-sizing: border-box;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	padding: 4px 16px;
}
.header-nav-item4 {
	position: absolute;
	/* height: 100%; */
	width: 16.1%;
	top: 0%;
	right: 0%;
	bottom: 0%;
	left: 83.9%;
	border-bottom: 1px solid #fff;
	box-sizing: border-box;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	padding: 4px 16px;
}
.header-nav {
	width: 534px;
	position: relative;
	height: 27px;
}
.sp-nav{
	display: none;
}
.header {
	width: 100%;
	/* position: relative; */
	position: fixed;
	z-index: 9999;
	background-color: rgba(6, 0, 39, 0.6);
	height: 112px;
	overflow: hidden;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	padding: 16px 90px;
	box-sizing: border-box;
	gap: 356px;
	text-align: center;
	font-size: 16px;
	color: #fff;
	font-family: Inter;
}

/*
ヒーローヘッダー
*/
.hero-icon {
	width: 100%;
	position: relative;
	height: 1126.8px;
	/* object-fit: cover; */
	background-image: url('./img/hero.jpg');  /* 追記2 */
	background-repeat: no-repeat;  /* 追記2 */
	background-position: center;  /* 追記2 */
	background-size: cover;  /* 追記2 */
}

/*
メインコンテンツ
*/
.section-title-01 {
	position: absolute;
	top: 0%;
	left: -0.43%;
	font-weight: 500;
}
.section-title {
	width: 240px; /* 修正 */
	position: relative;
	height: 39px;
}
.item-image-icon {
	width: 284px;
	position: relative;
	height: 284px;
	/* object-fit: cover; */
	background-image: url("./img/section01.jpg");  /* 追記2 */
	background-repeat: no-repeat;  /* 追記2 */
	background-size: cover;  /* 追記2 */
	background-position: center;  /* 追記2 */
}
.est-malesuada-non {
	margin: 0;
}
.est-malesuada-non-container {
	width: 284px;
	position: relative;
	line-height: 23px;
	display: inline-block;
	/* height: 160px; */
	flex-shrink: 0;
}
.section01-list-item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 32px;
}
.section01-list {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap; /* 追加3 */
	align-items: flex-start;
	/* justify-content: flex-start; */
	justify-content: center;
	gap: 54px;
	text-align: left;
	font-size: 16px;

}
.section01 {
	display: flex;
	flex-direction: column;
	align-items: center; /* 追加3 */
	justify-content: center;
	gap: 64px;
}
.section-title-02 {
	position: absolute;
	top: 0%;
	left: -1.28%;
	font-weight: 500;
}
.item-image-icon3 {
	width: 568px;
	position: relative;
	height: 568px;
	object-fit: cover;
}
.ullamcorper-dui-donec-container {
	width: 372px;
	position: relative;
	line-height: 23px;
	display: inline-block;
	/* height: 568px; */
	flex-shrink: 0;
}
.section-02 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: flex-start;
	/* justify-content: flex-start; */
	justify-content: center;
	gap: 20px;
	text-align: left;
	font-size: 16px;
}
.section-title-03 {
	position: absolute;
	top: 0%;
	left: -1.71%;
	font-weight: 500;
}
.dammy-title {
	position: relative;
}
.item-image-icon4 {
	width: 372px;
	position: relative;
	height: 164px;
	object-fit: cover;
}
.ex-nisl-tincidunt {
	width: 372px;
	position: relative;
	font-size: 18px;
	line-height: 26px;
	display: inline-block;
	/* height: 47px; */
	flex-shrink: 0;
}
.section03-list-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center; /* 追加3 */
	gap: 16px;
}
.section03-list {
	/* width: 960px; */
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 40px 216px;
	font-size: 20px;
}
.section-04-list-item-child {
	width: 460px;
	position: relative;
	height: 320px;
	object-fit: cover;
}
.ipsum-nullam-tincidunt-container {
	width: 460px;
	position: relative;
	display: inline-block;
	/* height: 320px; */
	flex-shrink: 0;
}
.section-04-list-item {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	align-items: flex-start;
	justify-content: flex-start;
	/* align-items: center; */
	/* justify-content: center; */
	gap: 40px;
}
.section-04-list {
	display: flex;
	flex-direction: column;
	/* align-items: flex-start; */
	/* justify-content: flex-start; */
	align-items: center;
	justify-content: center;
	gap: 40px;
	text-align: left;
	font-size: 16px;
}
.main {
	width: 100%;
	max-width: 960px; /* 追記 */
	margin: 0 auto; /* 追記 */
	margin-top: 120px; /* 追記 */
	margin-bottom: 120px; /* 追記 */
	position: relative;
	/* height: 3070px; */
	/* overflow: hidden; */
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 120px;
	text-align: center;
	font-size: 32px;
	color: #000;
	font-family: Inter;
}

/*
サブコンテンツ
*/
.section05-icon {
	width: 100%;
	max-width: 1920px;
	margin: 0 auto;
	position: relative;
	height: 680px;
	object-fit: cover;
}
.section05 {
	width: 100%;
	position: relative;
	height: 680px;
	overflow: hidden;
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: flex-start;
	margin-bottom: 120px;
}

.section06-icon {
	width: 608px;
	position: relative;
	height: 320px;
	object-fit: cover;
}
.non-efficitur-ullamcorper {
	margin: 0;
}
.non-efficitur-ullamcorper-container {
	width: 608px;
	position: relative;
	display: inline-block;
	height: 184px;
	flex-shrink: 0;
}
.section061 {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 40px;
}
.contact {
	position: relative;
	font-weight: 500;
}
.btn-contact {
	border-radius: 50px;
	background-color: #fff;
	border: 4px solid #0c192d;
	box-sizing: border-box;
	height: 45px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 8px 16px;
	color: #0c192d;
}
.section06 {
	position: relative;
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 120px;
	text-align: center;
	font-size: 24px;
	color: #000;
	font-family: Inter;
	margin-bottom: 200px; /* 追記2 */
}

/*
フッター
*/
.footer-title {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
}
.top {
	position: relative;
}
.nav-item {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	padding: 4px 16px;
}
.nav-list {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap; /* 追記3 */
	align-items: flex-start;
	justify-content: flex-start;
	gap: 24px;
}
.icons-child {
	width: 48px;
	position: relative;
	border-radius: 50%;
	background-color: #fff;
	height: 48px;
}
.icons {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 40px;
}
.english {
	position: relative;
	font-weight: 500;
}
.btn {
	border-radius: 50px;
	background-color: #0c192d;
	border: 4px solid #fff;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap; /* 追記3 */
	align-items: center;
	justify-content: center;
	padding: 8px 16px;
}
.nsn-icons {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap; /* 追記3 */
	gap: 80px;
}
.footer-list {
	display: flex;
	flex-wrap: wrap; /* 追記3 */
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 56px;
	font-size: 24px;
}
.footer-wrapper {
	width: 1049px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap; /* 追記3 */
	align-items: center;
	justify-content: center;
	gap: 64px;
}
.footer {
	width: 100%;
	position: relative;
	background-color: #0c192d;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	padding: 179.5px 0px;
	box-sizing: border-box;
	text-align: center;
	font-size: 40px;
	color: #fff;
	font-family: Inter;
}

/*
コピーライト
*/
.sample {
	width: 52px;
	position: relative;
	display: inline-block;
	flex-shrink: 0;
}
.copy {
	width: 100%;
	position: relative;
	background-color: #000;
	height: 77px;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	padding: 31px 0px;
	box-sizing: border-box;
	text-align: center;
	font-size: 12px;
	color: rgba(255, 255, 255, 0.6);
	font-family: Inter;
}

/*
レクチャー6
*/
.dammy-title {
	align-self: stretch;
	position: relative;
	font-weight: 500;
	display: inline-block;
	height: 39px;
	flex-shrink: 0;
}
.lorem-cursus-tortor {
	margin: 0;
}
.lorem-cursus-tortor-container {
	/* width: 423px; */
	width: 426px;   /* 追記3 */
	position: relative;
	font-size: 16px;
	display: inline-block;
}
.text {
	margin: 0 !important;
	position: absolute;
	top: 90px;
	right: -110px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 32px;
	z-index: 0;
}
.image {
	width: 390px;
	position: relative;
	background-color: #9a9a9a;
	height: 390px;
}
.image-wrapper {
	margin: 0 !important;
	position: absolute;
	top: -80px;
	left: -80px;
	height: 390px;
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: flex-start;
	z-index: 1;
}
.test-section {
	width: 100%;
	position: relative;
	background-color: #e0e0e0;
	height: 588px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	padding: 10px 0px;
	box-sizing: border-box;
	gap: 172px;
	text-align: left;
	font-size: 32px;
	color: #000;
	font-family: Inter;
}

@media screen and (max-width: 960px){
	
	.main{
		/* max-width: 300px; */
		width: 100%;
		padding: 0 20px;
	}

	.item-image-icon3{
		width: 100%;
		border-radius: 10px;
	}
	.ullamcorper-dui-donec-container{
		width: 100%;
	}

	/* セクション3 */
	.item-image-icon4{
		width: 100%;
		border-radius: 10px;
	}
	.ex-nisl-tincidunt{
		width: 100%;
	}
	
	/* 問題箇所 */
	.section-04-list{
		justify-content: center;
		align-items: center;
	}
	.section-04-list-item{
		justify-content: center;
		align-items: center;
	}
	.section-04-list-item-child{
		width: 100%;
		border-radius: 10px;
	}
	.section-04-list-item:nth-child(2){
		width: 100%;
		border-radius: 10px;
		flex-direction: column-reverse;
	}
	.ipsum-nullam-tincidunt-container{
		width: 100%;
	}
	/* .section-04-list-item-child:nth-child(2){
		width: 100%;
		border-radius: 10px;
	} */
	.section06{
		padding: 0 20px;
	}
	.section06-icon{
		width: 100%;
		border-radius: 10px;
		max-width: 300px;
		margin: 0 auto;
	}
	.non-efficitur-ullamcorper-container{
		width: 100%;
	}
	.non-efficitur-ullamcorper-container{
		height: auto;
	}
	/*
	テストセクション
	*/
	.image-wrapper{
		left: 50%;
		transform:  translateX(-50%);
	}
	.image-wrapper .image{
		width: 300px;
		height: 300px;
	}

	.text {
		top: 42%;
		right: 50%;
		transform:  translateX(50%);
		width: 100%;
	}
	.dammy-title{
		padding: 0 8px;
	}
	.lorem-cursus-tortor-container{
		width: 100%;
		padding:0 8px;
	}

	/*
	ハンバーガーメニュー
	*/
	.header{
		justify-content: space-between;
		padding-right: 30px;
		padding-left: 30px;
	}
	.header-logo{
		min-width: 90px;
		height: 60px;
	}
	.header-nav{
		display: none;
	}
	.sp-nav{
		display: block;
	}
	nav {
		display: block;
		position: fixed;
		top: 0;
		left: -300px;
		bottom: 0;
		width: 140px;
		background: #ffffff;
		overflow-x: hidden;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		transition: all .5s;
		z-index: 3;
		opacity: 0;
	}
	.open nav {
		left: 0;
		opacity: 1;
	}
	nav .inner {
		padding: 25px;
	}
	nav .inner ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}
	nav .inner ul li {
		position: relative;
		margin: 0;
		border-bottom: 1px solid #333;
	}
	nav .inner ul li a {
		display: block;
		color: #333;
		font-size: 14px;
		padding: 1em;
		text-decoration: none;
		transition-duration: 0.2s;
	}
	nav .inner ul li a:hover {
		background: #e4e4e4;
	}
	.toggle_btn {
		display: block;
		position: fixed;
		top: 40px;
		right: 10%;
		width: 30px;
		height: 30px;
		transition: all .5s;
		cursor: pointer;
		z-index: 3;
	}
	.open .toggle_btn {
		left: 180px;
	}
	.toggle_btn span {
		display: block;
		position: absolute;
		left: 0;
		width: 30px;
		height: 2px;
		background-color: #fff;
		border-radius: 4px;
		transition: all .5s;
	}
	.toggle_btn span:nth-child(1) {
		top: 4px;
	}
	.toggle_btn span:nth-child(2) {
		top: 14px;
	}
	.toggle_btn span:nth-child(3) {
		bottom: 4px;
	}
	.open .toggle_btn span {
		background-color: #fff;
	}
	.open .toggle_btn span:nth-child(1) {
		-webkit-transform: translateY(10px) rotate(-315deg);
		transform: translateY(10px) rotate(-315deg);
	}
	.open .toggle_btn span:nth-child(2) {
		opacity: 0;
	}
	.open .toggle_btn span:nth-child(3) {
		-webkit-transform: translateY(-10px) rotate(315deg);
		transform: translateY(-10px) rotate(315deg);
	}
	#mask {
		display: none;
		transition: all .5s;
	}
	.open #mask {
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: #000;
		opacity: .8;
		z-index: 2;
		cursor: pointer;
	}
	main {
		width: 100%;
		padding: 50px 0;
		transition: all .5s;
	}
	.open main {
		margin-left: 300px;
	}
	main h1 {
		font-family: 'Open Sans', sans-serif;
		font-weight: 400;
		text-align: center;
	}
}

@media screen and (max-width: 660px){
	.test-section{
		height: 100vh;
	}
	.text{
		height: 32%;
	}
}

@media screen and (max-width: 440px){
	.test-section{
		height: 110vh;
	}
	.text {
		top: 30%;
	}
}

@media screen and (max-width: 390px){
	.test-section{
		height: 100vh;
	}
	.text {
		top: 30%;
	}
}

@media screen and (max-width: 375px){
	.test-section{
		height: 130vh;
	}
}