@charset "UTF-8";


html {
	font-size: 1em;
}

body {
	width: 100%;
	background:
	linear-gradient( rgba(192, 214, 247, 0.3) 1px, transparent 0),
	linear-gradient( 90deg, rgba(192, 214, 247, 0.3) 1px, transparent 0);
	background-size: 30px 30px;
	font-family: "Helvetica Neue",
	  Arial,
	  "Hiragino Kaku Gothic ProN",
	  "Hiragino Sans",
	  "Meiryo",
	  sans-serif;
}

.onlyPC {
	display: none;
}

.preload { 
    opacity: 0;
}



/*ここからヘッダー*/

.nav-area {
	position: fixed;
	background-color: #fff;
	width: 100%;
	height: 60px;
	z-index: 100;
	margin-top: -100px;
}

.nav-container {
	display: flex;
	justify-content: space-between;
	margin: 0 15px;
}

.nav-container02 {
	display: flex;
}

.nav-logo img {
	width: 50px;
	align-items: center;
}

.nav-name {
	display: flex;
	flex-direction: column;
	text-align: left;
}

.nav-title1 {
	font-size: 0.6rem;
	font-weight: 800;
	margin: 10px 0 0 10px; 
}

.nav-title2 {
	font-size: 0.85rem;
	margin: 7px 0 10px 10px; 
	letter-spacing: 0.05rem;
	font-weight: bold;
}

.nav-ber {
	display: none;
}

.burger {
	width: 50px;
	height: 50px;
	background-image: url(menu.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	position: relative;
	z-index: 2;
}

.burger.is-active {
	background-image: url(close.png);
}


.menu {
	width: 100vw;
	height: 80vh;
	background-color: #fff;
	position: fixed;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	opacity: 0.9;
	top: 0;
	left: 0;
	z-index: 1;
	display: none;
}

.menu p {
	padding: 25px 0;
	font-weight: bold;
}

.is-active {
	display: flex;
}



@media (min-width: 852px) {

	.onlyPC {
		display: flex;
	}

	.onlySP {
		display: none;
	}

	.nav-area { 
		width: 100%;
		height: 60px;
		display: flex;
		background-color: #fff;
		position: fixed;
		justify-content: space-between;
		z-index: 1000;
		text-align: center;
	} 

	.nav-container {
		margin-left: 15px;
	}


	.menu {
		width: auto;
		height: auto;
		background-color: auto;
		flex-direction: auto;
		justify-content: auto;
		text-align: auto;
		top: 0;
		left: 0;
		z-index: 1;
	}

	.menu p {
		padding: auto;
		font-weight: bold;
	}

	.nav-ber {
		display: flex;
		font-weight: bold;
		background-color: #fff;
		justify-content: right;
		z-index: 1000;
		margin-top: 10px;
	}

	.nav-ber p {
		height: 33px;
		line-height: 20px;
		font-size: 10px;
		color: rgb(75, 75, 75);
		margin: 0 1px;
		text-align: center;
		text-shadow: 2px 2px 10px rgb(219, 217, 217);
		padding: 0px 0px 42px;
		pointer-events: all;
		margin: 0 9px;
	}

	.nav-hover a {
		padding: 5px 0px;
	}

	.nav-ber span {
		color: red;
		font-size: 10px;
	}

	.nav-hover:hover {
		transition: all 0.2s ease-out 0.1s;
		color: red;
		border-bottom: 1px red solid;
	}

	.is-active {
		display: none;
	}


	.entry-name {
		width: 100px;
		height: 35px;
		margin-top: 12px;
		margin-right: 10px;
		font-weight: bold;
		line-height: 35px;
		color: #fff;
		background-color: rgb(253, 12, 12);
		text-align: center;
		border-radius: 3px;
	}

	.entry-name a {
		width: 100px;
		height: 35px;
		display: block;
	}

	.entry-name:hover {
		transition: all 0.4s ease-out 0.1s;
		color: rgb(253, 12, 12);
		background-color: #fff;
		border: 1px solid rgb(253, 12, 12);
	}
}


@media (min-width: 980px) {
	.nav-ber p {
		font-size: 12px;
		margin: 0 15px;
	}
}

@media (min-width: 1120px) {
	.nav-ber p {
		margin: 0 27px;
	}
}

/*ここまでヘッダー*/




/*ここからトップ*/

.top-area {
	margin-top: 100px;

}

.top-container {
	margin: 0 0 30px 10%;
	position: relative;
}



.top-title {
	font-size: 5vw;
	font-weight: bold;
	margin: 10px 0 0 0;
	color: #fff;
	text-shadow: 2px 2px 5px #000;
	z-index: 10;
}

.top-text {
	font-size: 5vw;
	font-weight: bold;
	margin: 20px 5px 0 5px;
	line-height: 8vw;
	text-shadow: 1px 1px 4px rgb(172, 169, 169);
	z-index: 10;
}

.top-text span {
	font-size: 7vw;
	font-weight: bold;
	color: #FF4F02;
	text-shadow: 1px 1px 4px #000;
}


.top-number {
	font-size: 15vw;
	font-weight: bold;
	color: #FF4F02;
	margin: 10px 0 0 0;
	position: absolute;
	top: 37%;
	left: 13%;
	transform: translate(-50%,-50%);
	text-shadow: 2px 2px 10px rgb(165, 162, 162);
	z-index: 10;
}

.top-name {
	font-size: 4vw;
	font-weight: bold;
	color: #fff;
	margin: 20px 0 0 0;
	position: absolute;
	bottom: 2vw;
	right: 15%;
	text-shadow: 2px 2px 10px #000;
}

.top-img {
	text-align: center;
	margin: 40px 0 0 0;
}

.top-img img {
	width: 80%;
	box-shadow: 2px 2px 10px;
}

@media (min-width: 860px) {
	.top-title {
		font-size: 3.5vw;
		position: absolute;
		top: 2%;
		left: -5%;
	}

	.top-number {
		font-size: 7vw;
		top: 22%;
		left: 0%;
		
	}

	.top-text {
		font-size: 3vw;
		line-height: 6vw;
		position: absolute;
		top: 32%;
		left: -5%;
		background-color: rgba(255,255,255,0.4);
		border-radius: 10px;
	}

	.top-text span {
		font-size: 5vw;
	}

	.top-name {
		font-size: 3vw;
		top: 63%;
		left: -5%;
	}

	.top-img {
		text-align: right;
		margin-right: 60px;
	}

	.top-img img {
		width: 65vw;
	}
}



/*ここまでトップ*/




/*ここからアンサー*/

.answer-background {
	background-color: #fff;
}

.answer-background2 {
	background-color: #fff;
}

.answer-area {
	margin: 0 20px;
}

.answer-title1,.answer-title2 {
	font-size: 5vw;
	font-weight: bold;
	text-shadow: 1px 1px 2px rgb(199, 198, 198);
	border-left: 12px solid #FF4F02;
	background-color: #fff;
	padding: 5px 0 5px 10px;
	margin: 20px 0 10px 0;
}

.answer-text1,.answer-text2 {
	font-size: 3.5vw;
	line-height: 6.5vw;
}

.answer-display {
	display: flex;
}

.answer-img {
	text-align: center;
}

.answer-img img {
	width: 80%;
	object-fit: cover;
	object-position: center;
	box-shadow: 1px 1px 5px rgb(233, 232, 232);
	margin: 10px 0 20px;
}

@media (min-width: 860px) {
	.answer-background {
		display: flex;
		
	}

	.answer-area {
		margin: 0 0;
		padding: 0 0 15px;
		background-color: #fff;
	}

	.answer-title1 {
		margin: 40px 30px 15px 100px;
		font-size: 30px;
		padding: 5px 0 5px 15px;
	}

	.answer-title2 {
		margin: 40px 30px 15px 100px;
		font-size: 30px;
		padding: 5px 0 5px 15px;
	}

	.answer-text1 {
		margin: 0 100px;
		font-size: 19px;
		line-height: 33px;
	}

	.answer-text2 {
		margin: 0 20px 30px 100px;
		font-size: 19px;
		line-height: 33px;
	}

	.answer-display {
		justify-content: center;
	}


	.answer-img {
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.answer-img img {
		width: 35vw;
		margin: 40px 100px 40px 30px;
	}

	.answer-img02 img {
		margin: 20px 30px 40px;
	}


	.onlyPC {
		display: flex;
	}
}

/*ここまでアンサー*/

.img-container {
	display: flex;
}

.img-container img {
	width: 50vw;
	object-fit: cover;
	object-position: center;
	border: #000 1px solid;
}

@media (min-width: 860px) {
	.img-area {
		display: flex;
	}

	.img-container img {
		width: 25vw;
	}
}


/*ここからフッター*/

.hooter-area {
	width: 100%;
	height: 200px;
	font-size: 0.5em;
	font-weight: bold;
	background-color: #000;
}

.hooter-area p {
	height: 50px;
	line-height: 50px;
	color: #fff;
	background-color: #000;
	margin: -1px 0 0 0;
	padding-left: 5vw;
}


.hooter-title {
	letter-spacing: 0.3vw;
}

@media (min-width: 768px) {
	.hooter-area {
		font-size: 0.9em;
		height: 100px;
		display: flex;
		justify-content: space-between;
		padding: 0 5%;
	}

	.hooter-area p {
		margin: 0;
		padding: 0;
		line-height: 100px;
	}
}	
/*ここまでフッター*/