@charset "UTF-8";  

.pc {
	display: inline-block ;
}

.pc2 {
	display: block ;
}

.sp ,.sp2 {
	display: none;
}

#wrapper {
	width: 100%;
	margin: auto;
	padding: 0;
	position: relative;
}


/*====================================
ヘッダー
=====================================*/
header {
	width: 100%;
	min-width: 1080px;
	height: 80px;
	margin: 0 auto;
	padding: 0 0 0 20px;
	background: #fff;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
}
	header #logo_cont {
		margin: 0;
		padding: 0;
		display: flex;
		align-items: center;
	}
		#logo_cont h1 {
			width: 206px;
			margin: 0;
			padding: 0;
		}
			#logo_cont h1 a {
				transition: 0.2s linear;
			}
				#logo_cont h1 a:hover {
					opacity: 0.6;
				}
		#logo_cont h3 {
			margin: 0 0 0 13px;
			padding: 5px 0 0;
			font-size: 14px;
			line-height: 140%;
			color: #cd0e24;
			font-weight: var(--main-font-bold2);
		}
@media screen and (max-width:1000px) {
		#logo_cont h3 {
			display: none;
		}
}
		#logo_cont h2 {
			margin: 0 0 0 17px;
			padding: 5px 0 0;
			font-size: 14px;
			line-height: 200%;
			text-align: left;
			font-weight: var(--main-font-nomal);
		}
@media screen and (max-width:1320px) {
		#logo_cont h2 {
			display: none;
		}
}
	header #menu_cont {
		width: 451px;
		margin: 0;
		padding: 0;
		display: flex;
		justify-content: flex-end;
	}
		#menu_cont div.experience {
			width: 180px;
			margin: 0;
		}
			#menu_cont div.experience a {
				width: 180px;
				height: 80px;
				margin: 0;
				padding: 2px 8px 0;
				font-size: 16px;
				line-height: 140%;
				color: #fff;
				text-decoration: none;
				font-weight: var(--main-font-bold2);
				background: #d2273a;
				display: flex;
				justify-content: flex-end;
				align-items: center;
				position: relative;
				transition: 0.2s linear;
			}
				#menu_cont div.experience a:hover {
					opacity: 0.8;
				}
				#menu_cont div.experience a:before {
					position: absolute;
					content: '';
					display: block;
					width: 28px;
					height: 29px;
					margin: auto;
					padding: 0;
					background: url(../images/icon/head_exp.png) center / contain no-repeat;
					top: 50%;
					left: 10px;
					transform: translateY(-50%);
					-webkit- transform: translateY(-50%);
				}
					#menu_cont div.experience a:hover:before {
						animation: rotation1 5s linear infinite;
					}
		#menu_cont div.contact {
			width: 180px;
			margin: 0;
		}
			#menu_cont div.contact a {
				width: 180px;
				height: 80px;
				margin: 0;
				padding: 2px 22px 0;
				font-size: 16px;
				line-height: 140%;
				color: #fcff00;
				text-decoration: none;
				font-weight: var(--main-font-bold2);
				background: #ed213a;
				display: flex;
				justify-content: flex-end;
				align-items: center;
				position: relative;
				transition: 0.2s linear;
			}
				#menu_cont div.contact a:hover {
					opacity: 0.8;
				}
				#menu_cont div.contact a:before {
					position: absolute;
					content: '';
					display: block;
					width: 31px;
					height: 25px;
					margin: auto;
					padding: 0;
					background: url(../images/icon/head_mail.png) center / contain no-repeat;
					top: 50%;
					left: 25px;
					transform: translateY(-50%);
					-webkit- transform: translateY(-50%);
				}
					#menu_cont div.contact a:hover:before {
						animation: yuragi 0.5s linear infinite;
					}
@media screen and (max-width:740px) {
/*		#menu_cont div.experience,
		#menu_cont div.contact {
			display: none;
		}*/
}

/*====================================
共通
=====================================*/
main {
	min-width: 1080px;
	margin: 81px auto 0;
	padding: 0;
}

h3.cont_ttl {
	margin: 0 auto;
	padding: 0;
	font-size: 66px;
	line-height: 120%;
	color: #000;
	font-family: "Reddit Sans Condensed", system-ui;
	font-optical-sizing: auto;
	font-weight: var(--main-font-extrabold);
}
h4.cont_ttl_sub {
	margin: 3px auto 0;
	padding: 0;
	font-size: 24px;
	line-height: 120%;
	color: #000;
	font-weight: var(--main-font-bold2);
}
	h4.cont_ttl_sub strong {
		font-size: 34px;
		line-height: 120%;
		color: #000;
		font-weight: var(--main-font-bold2);
	}

div.btn a {
	width: 440px;
	height: 80px;
	margin: 0 auto;
	padding: 3px 0 0;
	font-size: 19px;
	line-height: 160%;
	text-decoration: none;
	text-align: center;
	color: #fff;
	background: #d2273a;
	border: 2px solid #d2273a;
	border-radius: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: 0.2s linear;
	position: relative;
}
	div.btn a:hover {
		color: #d2273a;
		background: #fff;
	}
	div.btn a:after {
		position: absolute;
		display: block;
		content: '';
		width: 15px;
		height: 22px;
		margin: auto;
		padding: 0;
		background: url(../images/icon/arrow_01.png) center / contain no-repeat ,url(../images/icon/arrow_02.png) center / contain no-repeat;
		top: 50%;
		right: 20px;
		transform: translateY(-50%);
		-webkit- transform: translateY(-50%);
		transition: 0.2s linear;
	}
		div.btn a:hover:after {
			background: url(../images/icon/arrow_02.png) center / contain no-repeat;
			right: 15px;
		}

#try {
	background: #f3b32b;
	width: 100%;
	height: 435px;
	margin: 190px auto 0;
	padding: 40px 0 20px;
	position: relative;
}
	#try p.read {
		margin: 18px auto 0;
		padding: 0;
		font-size: 18px;
		line-height: 220%;
	}
		#try p.read strong {
			color: #c12330;
			font-weight: var(--main-font-bold1);
		}
	#try div.btn {
		margin: 18px auto 0;
	}
	#try div.img {
		position: absolute;
		display: block;
		width: 1060px;
		height: 435px;
		margin: 0;
		padding: 0;
		z-index: 1;
	}
		#try div.img.img1 {
			top: 0;
			right: calc(50% + 425px);
		}
		#try div.img.img2 {
			top: 0;
			left: calc(50% + 425px);
		}
		#try div.img.img3 {
			display: none;
		}
		#try div.img img {
			display: block;
			width: 1060px;
			height: auto;
			margin: 0;
			padding: 0;
		}
#fa_bnr {
	width: 100%;
	margin: 135px auto 0;
	padding: 0;
	display: flex;
	justify-content: center;
}
	#fa_bnr a {
		width: 590px;
		height: 155px;
		margin: 0;
		padding: 0 0 0 130px;
		background: #c8e0e4;
		border-radius: 0 10px;
		text-decoration: none;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: flex-start;
		position: relative;
		transition: 0.2s linear;
	}
		#fa_bnr a:nth-of-type(2) {
			margin-left: 40px;
		}
		#fa_bnr a:hover {
			background: #b8e2fa;
		}
		#fa_bnr a:before {
			position: absolute;
			display: block;
			content: '';
			width: 34px;
			height: 49px;
			margin: auto;
			padding: 0;
			background: url(../images/icon/arrow_03.png) center / contain no-repeat;
			top: 50%;
			right: 20px;
			transform: translateY(-50%);
			-webkit- transform: translateY(-50%);
			transition: 0.2s linear;
		}
			#fa_bnr a:hover:before {
				right: 15px;
			}
		#fa_bnr img {
			position: absolute;
			display: block;
			width: 82px;
			height: auto;
			margin: auto;
			padding: 0;
			top: 50%;
			left: 22px;
			transform: translateY(-50%);
			-webkit- transform: translateY(-50%);
		}
		#fa_bnr a p {
			margin: 0;
			padding: 0;
			font-size: 60px;
			line-height: 120%;
			color: #000;
			font-family: "Reddit Sans Condensed", system-ui;
			font-optical-sizing: auto;
			font-weight: var(--main-font-extrabold);
		}
			#fa_bnr a p small {
				margin: 0 8px;
				padding: 0;
				font-size: 44px;
				line-height: 120%;
			}
		#fa_bnr a span {
			margin: 5px 0 0;
			padding: 0;
			font-size: 20px;
			line-height: 120%;
			color: #000;
			font-weight: var(--main-font-bold1);
		}

#topics {
	width: 100%;
	margin: 0 auto;
	padding: 115px 0 120px;
}
	#topics ul.topics_slic {
		width: 100%;
		margin: 65px auto 0;
		padding: 0;
		list-style: none;
	}
		#topics ul.topics_slic li {
			width: 284px;
			margin: 0 15px;
			padding: 0;
			text-align: left;
		}
			#topics ul.topics_slic li a {
				display: block;
				width: 284px;
				margin: 0;
				padding: 0;
				text-decoration: none;
				color: #000;
				transition: 0.2s linear;
			}
				#topics ul.topics_slic li a:hover {
					opacity: 0.7;
				}
			#topics ul.topics_slic li a .img {
				width: 284px;
				height: 169px;
				margin: 0;
				padding: 0;
				background: #d0cbcc;
			}
				#topics ul.topics_slic li a .img img {
					width: 284px;
					height: 169px;
					margin: 0;
					padding: 0;
					object-fit: cover;
				}
			#topics ul.topics_slic li a p {
				margin: 3px 0 0;
				padding: 0;
				font-size: 16px;
				line-height: 160%;
				font-weight: var(--main-font-bold2);
			}
			#topics ul.topics_slic li a span {
				display: block;
				margin: 0;
				padding: 0;
				font-size: 18px;
				line-height: 160%;
				font-weight: var(--main-font-nomal);
			}
	#topics div.btn {
		margin: 50px auto 0;
	}

#foot_contact {
	min-width: 1080px;
	margin: 0 auto;
	padding: 55px 0 40px;
	background: url(../images/common/foot_contact_bg.png) center / cover no-repeat;
}
	#foot_contact h3.cont_ttl,
	#foot_contact h4.cont_ttl_sub {
		color: #fff;
	}
	#foot_contact p.read {
		margin: 30px auto 0;
		padding: 0;
		font-size: 18px;
		line-height: 220%;
		color: #fff;
	}
		#foot_contact p.read strong {
			font-weight: var(--main-font-bold1);
		}
	#foot_contact div.btn {
		margin: 30px auto 0;
	}
		#foot_contact div.btn a {
			color: #000;
			background: #fbc227;
			border: 2px solid #fbc227;
		}
			#foot_contact div.btn a:hover {
				color: #fff;
				background: #142f38;
				border: 2px solid #fff;
		}
			#foot_contact div.btn a:after {
				background: url(../images/icon/arrow_02.png) center / contain no-repeat ,url(../images/icon/arrow_01.png) center / contain no-repeat;
			}
				#foot_contact div.btn a:hover:after {
					background: url(../images/icon/arrow_01.png) center / contain no-repeat;
					right: 15px;
				}

/*====================================
フッター
=====================================*/
footer {
	max-width: 1260px;
	min-width: 1080px;
	margin: 0 auto;
	padding: 80px 0 50px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
	footer div.foot_logo {
		margin: 0;
		padding: 0;
		text-align: left;
	}
		footer div.foot_logo div.logo {
			margin: 0;
			padding: 0;
			display: flex;
			align-items: center;
		}
			footer div.foot_logo div.logo h4 {
				width: 206px;
				margin: 0;
				padding: 0;
				margin-block-start: 0;
			}
				footer div.foot_logo div.logo h4 a {
					transition: 0.2s linear;
				}
					footer div.foot_logo div.logo h4 a:hover {
						opacity: 0.6;
					}
			footer div.foot_logo div.logo h6 {
				margin: 0 0 0 12px;
				padding: 5px 0 0;
				font-size: 14px;
				line-height: 140%;
				color: #982633;
				font-weight: var(--main-font-bold2);
			}
@media screen and (max-width:1250px) {
		footer div.foot_logo div.logo {
			flex-direction: column;
			align-items: flex-start;
		}
			footer div.foot_logo div.logo h6 {
				margin: 5px 0 0;
			}
}
		footer div.foot_logo h5 {
			margin: 15px 0 0;
			padding: 0;
			font-size: 14px;
			line-height: 180%;
			color: #982633;
			font-weight: var(--main-font-bold2);
		}
		footer div.foot_logo p {
			margin: 10px 0 0;
			padding: 0;
			font-size: 14px;
			line-height: 160%;
			font-weight: var(--main-font-nomal);
		}
			footer div.foot_logo h5 span,
			footer div.foot_logo p span {
				display: inline-block;
			}
	footer div.foot_tel {
		width: 330px;
		margin: 0 8px;
		padding: 22px 15px 30px;
		background: #d2273a;
		border-radius: 0 8px;
		position: relative;
	}
		footer div.foot_tel:before,
		footer div.foot_tel:after {
			position: absolute;
			content: '';
			display: block;
			width: 15px;
			height: 15px;
			background: url(../images/common/foot_contact_bg_ico.png) center / contain no-repeat;
		}
			footer div.foot_tel:before {
				top: 4px;
				left: 4px;
			}
			footer div.foot_tel:after {
				bottom: 4px;
				right: 4px;
				transform: rotate(180deg);
			}
		footer div.foot_tel h6 {
			margin: 0 auto;
			padding: 0;
			font-size: 14px;
			line-height: 160%;
			color: #fff;
			font-weight: var(--main-font-bold2);
		}
		footer div.foot_tel div.tel_btn {
			width: 100%;
			margin: 12px auto 0;
			padding: 0;
		}
			footer div.foot_tel div.tel_btn a {
				width: 100%;
				height: 58px;
				margin: 0 auto;
				padding: 0;
				font-size: 28px;
				line-height: 120%;
				letter-spacing: 0.01em;
				color: #000;
				font-family: "Reddit Sans Condensed", system-ui;
				font-optical-sizing: auto;
				font-weight: var(--main-font-extrabold);
				text-decoration: none;
				background: #fff;
				border-radius: 29px;
				pointer-events: none;
				display: flex;
				justify-content: center;
				align-items: center;
			}
				footer div.foot_tel div.tel_btn a img {
					margin: 0 5px 0 0;
				}
	footer div.foot_nav {
		margin: 0;
		padding: 0;
		text-align: left;
		display: flex;
	}
		footer div.foot_nav ul {
			margin: 0 10px 0 0;
			padding: 0;
			list-style: none;
		}
			footer div.foot_nav ul li {
				margin: 5px 0 0;
				padding: 0;
				font-size: 14px;
				line-height: 160%;
				white-space: nowrap;
			}
				footer div.foot_nav ul li:first-of-type {
					margin: 0;
				}
				footer div.foot_nav ul:nth-of-type(n+2) li:first-of-type {
					margin-top: 2em;
				}
				footer div.foot_nav ul li:not(.sub):before {
					display: inline-block;
					content: '・';
					margin: 0;
					padding: 0;
				}
				footer div.foot_nav ul li.sub {
					padding-left: 0.8em;
				}
					footer div.foot_nav ul li.sub:before {
						display: inline-block;
						content: '└';
						margin: 0 0.2em 0 0;
						padding: 0;
					}
				footer div.foot_nav ul li a {
					display: inline-block;
					margin: 0;
					padding: 0;
					color: #000;
					text-decoration: none;
					font-weight: var(--main-font-bold2);
					transition: 0.2s linear;
				}
					footer div.foot_nav ul li a:hover {
						color: #982633;
					}


#copy {
	margin: 0 auto;
	padding: 20px 0;
	font-size: 14px;
	line-height: 120%;
	color: #000;
	font-family: "Reddit Sans Condensed", system-ui;
	font-optical-sizing: auto;
	font-weight: var(--main-font-extrabold);
	border-top: 1px solid #5a5a5a;
}


#page_top {
    position: fixed;
	display: none;
    bottom: 15px;
    right: 20px;
	z-index: 1000;
}
	#page_top img {
		transition: 0.2s linear;
	}
	#page_top img:hover {
		transition: 0.2s linear;
		opacity: 0.8;
	}

