@charset "utf-8";
@import url('http://fonts.googleapis.com/css?family=Roboto+Condensed');

/* ------------------------------------------------------ */
/* ------------------------- PC ------------------------- */
/* ------------------------------------------------------ */
@media screen and (min-width: 750px) {

	.mobile { display: none; }

	body {
		width: 100%;
		margin: 0 auto;
		color: #333;
		font-size: 12px;
		font-family:'Noto Sans JP',
		'ヒラギノ角ゴ Pro W3',
		'Hiragino Kaku Gothic Pro',
		'メイリオ',Meiryo, 
		sans-serif !important;
		padding-top: 150px;
		display: grid;
		grid-template-rows: auto 1fr auto;
		grid-template-columns: 100%;
		min-height: 100vh;
	}
	
	/* ------------------------- Header ------------------------- */
	header {
		width: 100%;
		font-size: 12px;
		background: #FFF;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 10;
		box-shadow: 0 10px 25px 0 rgba(0, 0, 0, 0.1);
	}
	header .header_wrap {
		display: flex;
		justify-content: space-between;
		width: 1000px;
		margin: 0 auto;
	}
	header .header_wrap .header_box {
		margin: 5px 0 8px 0;
	}
	header .header_wrap .header_box_rogo {
		vertical-align: top;
	}
	header .header_wrap .header_box_rogo h1 img {
		vertical-align: top;
		margin-top: 12px;
		width: 140px;
	}
	header .header_wrap .header_box img {
		width: 60px;
		vertical-align: top;
		display: inline-block;
		padding-top: 13px;
		padding-right: 5px;
	}
	header .header_wrap .header_box p {
		width: 137px;
		font-size: 10px;
		color: #22a6ff;/* 水色 */
		vertical-align: top;
		display: inline-block;
		line-height: 1.25;
	}
	header .header_wrap .header_box p span {
		font-size: 19px;
		font-weight: bold;
		line-height: 1.5;
	}
	/* ----- ▼▼ Menul ▼▼ ----- */
	header .header_wrap .menu {
		Width: 630px;
		padding-top: 15px;
	}
	header .header_wrap .menu ul {
		list-style-type: none;
		overflow:hidden;
		display: flex;
		padding: 0px;
	}
	header .header_wrap .menu ul li+ li {
		border-left: 1px solid #E0E0E0;
	}
	header .header_wrap .menu ul li a {
		width: 89px;
		line-height: 50px;
		color: #303030;
		display: inline-block;
		font-weight: bold;
		font-size: 12px;
		text-decoration: none;
		text-align: center;
	}
	header .header_wrap .menu ul li a:hover {
		border-bottom: 3px solid #ffcc33;/* 黄色 */
		background-color: #F2F2F2;
		color: #22a6ff;/* 水色 */
		transition: .3s;
	}
	/* ----- ▲▲ Menul ▲▲ ----- */
	/* ------------------------- Top_Breadcrumb ------------------------- */
	#top_breadcrumb {
		width: 1000px;
		margin: 0 auto;
		font-size: 12px;
		position: relative;
	}
	#top_breadcrumb img {
		width: 1000px;
		display: block;
	}
	#top_breadcrumb h2 {
		position: absolute;
		top: 41%;
		left: 10%;
		color: white;
		font-weight: bold;
		font-size: 24px;
		text-align: center;
	}
	#top_breadcrumb ul {
		list-style-type: none;
		display: flex;
		justify-content: left;
		align-items: center;
		list-style: none;
		padding: 0px;
		margin: 10px 0 0 0;
	}
	#top_breadcrumb ul li {
		font-weight: bold;
		font-size: 12px;
	}
	#top_breadcrumb ul li a {
		color: #22a6ff;/* 水色 */
		text-decoration: none;
		text-align: center;
	}
	#top_breadcrumb .material-symbols-outlined {
		font-variation-settings:
		'FILL' 0,
		'wght' 400,
		'GRAD' 0,
		'opsz' 20;
	}
	/* ------------------------- Footer ------------------------- */
	footer {
		width: 100%;
		color: #000;
		background-color: #ffcc33;/* 黄色 */
	}
	footer .contact_wrap {
		width: 1000px;
		margin: 0 auto;
		font-size: 12px;
		padding-bottom: 50px;
	}
	footer .contact_wrap .contact_box {
		display: flex;
		justify-content: space-between;
		padding-top: 30px;
	}
	footer .contact_wrap .contact_box .box {
		margin: 0 auto;
	}
	footer .contact_wrap .contact_box h2 {
		padding: 12px 0 0 10px;
	}
	footer .contact_wrap .contact_box img {
		width: 103px;
		vertical-align: top;
		display: inline-block;
		padding: 18px 8px 0 0;
		filter: brightness(0) saturate(100%) invert(0%) sepia(6%) saturate(7493%) hue-rotate(339deg) brightness(95%) contrast(99%);
	}
	footer .contact_wrap .contact_box .textbox {
		display: inline-block;
		text-align: left;
		padding-top: 5px;
	}
	footer .contact_wrap .contact_box .textbox p {
		vertical-align: top;
		display: inline-block;
		font-size: 13px;
		font-weight: bold;
		line-height: 1.5;
	}
	footer .contact_wrap .contact_box .textbox p span {
		font-size: 25px;
	}
	footer .contact_wrap .contact_box .box01 {
		padding-right: 20px;
	}
	footer .contact_wrap .contact_box .box02 {
		border-right: 1px solid #000;
		padding-right: 35px;
	}
	footer .contact_wrap .contact_box .box02 a {
		width: 270px;
		display: block;
		font-weight: bold;
		background-color: #eee;
		color: #333;
		margin-left: 10px;
		margin-bottom: 10px;
		padding: 15px 0;
		text-align: center;
		text-decoration: none;
		transition: .3s;
		box-shadow: 0 10px 25px 0 rgba(0, 0, 0, 0.1);
	}
	footer .contact_wrap .contact_box .box02 a:hover {
		background-color: #22a6ff;/* 水色 */
		color: white;
		transition: .3s;
	}
	footer .contact_wrap .contact_box .box03 ul {
		list-style-type: none;
		text-align: left;
		font-weight: bold;
	}
	footer .contact_wrap .contact_box .box03 ul li {
		line-height: 2.2;
	}
	footer .contact_wrap .contact_box .box03 ul li a {
		color: #333;
		text-decoration: none;
		padding: 0 10px;
		transition: .3s;
	}
	footer .contact_wrap .contact_box .box03 ul li a:hover {
		color: #22a6ff;/* 水色 */
		transition: .3s;
	}
	footer a[target="_blank"]::after{
		content: "\f35d";
		font-family: "Font Awesome 5 Free";
		font-weight: bold; /*指定しないと表示されない*/
		padding-left: .3em; /*文字とアイコンの間に隙間*/
	}
	footer .copy_ic {
		width: 100%;
		text-align: center;
		padding-bottom: 5px;
	}
	footer .copy_ic a {
		color: #000;
		text-decoration: none;
	}
}
/* ------------------------------------------------------ */
/* ------------------------- PC ------------------------- */
/* ------------------------------------------------------ */


/* ---------------------------------------------------------- */
/* ------------------------- Mobile ------------------------- */
/* ---------------------------------------------------------- */
@media screen and (max-width: 749px) {

	.pc,#menu { display: none; }

	body {
		width: 100%;
		margin: 0 auto;
		color: #333;
		font-size: 12px;
		font-family:'Noto Sans JP',
		'ヒラギノ角ゴ Pro W3',
		'メイリオ',Meiryo,
		'Hiragino Kaku Gothic Pro',
		sans-serif !important;
	}
	/* ------------------------- Header ------------------------- */
	header {
		width: 100%;
		color: #22a6ff;/* 水色 */
		font-size: 12px;
		background-color: white;
		position: fixed;
		padding: 0;
		margin: 0;
		z-index: 100;
		box-shadow: 0 10px 25px 0 rgba(0, 0, 0, 0.1);
	}
	header .header_box {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	header .header_box h1.boximage img {
		display: inline-block;
		vertical-align: middle;
		width: 45%;
		margin: 0;
		padding-left: 10px;
	}
	header .header_box h2.boxtext {
		width: 100%;
		background-color: #22a6ff;/* 水色 */
		font-size: 15px;
		text-align: center;
		margin-right: 60px;
		padding: 10px 0;
		border-radius: 50px 50px 50px 50px;
		box-shadow: 5px 5px 0px 0px rgba(0, 0, 0, 0.1);
	}
	header .header_box h2.boxtext a {
		color: #fff;
		text-decoration: none;
	}
	/* ----- ▼▼ Menu ▼▼ ----- */
	#gnav-btn {
		display: block;
		position: fixed;
		right: 0;
		top:5px;
		cursor: pointer;
		z-index: 100;
		text-align: center;
	}
	#gnav-btn span {
		display: block;
		position: absolute;
		width: 30px;
		border-bottom: solid 3px #22a6ff;
		-webkit-transition: .35s ease-in-out;
		-moz-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
		right: 10px;
	}
	#gnav-btn span:nth-child(1) { top: 10px; }
	#gnav-btn span:nth-child(2) { top: 20px; }
	#gnav-btn span:nth-child(3) { top: 30px; }
	#gnav-btn span:nth-child(4) {
		border: none;
		color: #22a6ff;
		font-size: 10px;
		font-weight: bold;
		top: 40px;
	}
	/* 最初のspanをマイナス45度に */
	#gnav-input:checked ~ #gnav-btn span:nth-child(1) {
		top: 18px;
		right: 10px;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	/* 2番目と3番目のspanを45度に */
		#gnav-input:checked ~ #gnav-btn span:nth-child(2),
		#gnav-input:checked ~ #gnav-btn span:nth-child(3) {
		top: 18px;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#gnav-input:checked ~ #gnav-content {
		top: 0;
		background-color: #f4f4f4;
		font-size: 16px;
		font-weight: bold;
		body {
			height: 100%;
			overflow: hidden;
		}
	}
	#gnav-content {
		position: fixed;
		top: -150%;
		left: 0;
		z-index: 10;
		transition: 0.3s;
		width: 100%;
		color: #22a6ff;/* 水色 */
		height: 100%;
		overflow: scroll;
	}
	#gnav-content h3 {
		border: 1.5px solid #22a6ff;/* 水色 */
		border-radius: 10px 10px 10px 10px;
		padding: 10px;
		font-size: 16px;
	}
	.humb-menu__title {
		padding: 1.5rem;
	}
	.humb-menu label {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 0 1.5rem;
		cursor: pointer;
		border-top: 0.5px solid #c7c5c5;
	}
	#gnav-btn {
		border: none;
	}
	.humb-menu input {
		display: none;
	}
	.humb-menu a {
		color: #22a6ff;/* 水色 */
		text-decoration: none;
	}
	.humb-menu a[target="_blank"]::after{
		content: "\f35d";
		font-family: "Font Awesome 5 Free";
		font-weight: bold; /*指定しないと表示されない*/
		padding-left: .3em; /*文字とアイコンの間に隙間*/
	}
	.humb-menu p.company a, .humb-menu p.company a[target="_blank"]::after {
		color: #333;
	}
	/* プラスボタン */
	.humb-menu .icon,
	.humb-menu .icon::after{
		display: block;
		box-sizing: border-box;
		background: currentColor;
		border-radius: 10px;
	}
	.humb-menu .icon {
		width: 16px;
		height: 2px;
		transform: translate(0, -50%) scale(0.9);
		transition: 0.4s;
		position: absolute;
		right: 25px;
	}
	.humb-menu .icon::after {
		content: "";
		position: absolute;
		width: 2px;
		height: 16px;
		top: -7px;
		left: 7px;
	}
	/* マイナスボタン */
	.humb-menu .cssacc:checked + #cssacc_btn .icon {
		width: 16px;
		height: 2px;
		transform: translate(0, -50%) scale(0.9);
		transition: 0.4s;
		border-radius: 10px;
	}
	.humb-menu .cssacc:checked + #cssacc_btn .icon::after{
		display: none;
	}
	.humb-menu .accshow {
		height: 0;
		overflow: hidden;
	}
	.humb-menu .accshow p {
		padding: 0.2rem 2.0rem;
	}
	.humb-menu .cssacc:checked + #cssacc_btn + .accshow {
		height: auto;
	}
	.humb-menu__title {
		width: 100%;
		height: 30px;
		padding: 20px 0;
		background-color: #f4f4f4;
		display: flex;
		align-items: center;
	}
	.humb-menu__title img {
		width: 70px;
		vertical-align: middle;
		display: inline-block;
		margin: 0 auto;
	}
	.humb-menu__title p {
		width: 60%;
		vertical-align: middle;
		display: inline-block;
		line-height: 1.25;
		padding-left: 3px;
		margin: 0 auto;
		font-weight: bold;
	}
	.humb-menu__title p span {
		font-size: 16px;
		line-height: 1.5;
	}
	.humb-menu__title a {
		color: #22a6ff;/* 水色 */
		text-decoration: none;
	}
  /* ----- ▲▲ Menul ▲▲ ----- */
  /* ------------------------- Footer ------------------------- */
	footer {
		width: 100%;
		background-color: #ffcc33;/* 黄色 */
		color: #000;
		font-weight: bold;
		padding-top: 5px;
		text-align: center;
	}
	footer a {
		color: #000;
		text-decoration: none;
	}
	footer .contact {
		padding: 0 1.2rem;
	}
	footer .contact h2 {
		padding-top: 1.2rem;
		font-size: 15px;
	}
	footer .contact .contact_tel {
		display: flex;
		justify-content: center;
	}
	footer .contact .contact_tel img {
		display: block;
		width: 25%;
		height: 25%;
		margin-top: 10px;
		padding: 0;
		filter: brightness(0) saturate(100%) invert(0%) sepia(6%) saturate(7493%) hue-rotate(339deg) brightness(95%) contrast(99%);
	}
	footer .contact .contact_tel p {
		font-size: 12px;
		line-height: 1.5;
		padding-left: 5px;
		text-align: left;
	}
	footer .contact .contact_tel p span {
		font-size: 25px;
	}
	footer .contact .contact_tel p a[href^="tel:"] {
		pointer-events: none;  /* カーソルイベントを無効 */
	} 
	footer .contact .contact_box h3 {
		width: 80%;
		background-color: #eee;
		color: #333;
		font-size: 16px;
		text-align: center;
		margin: 0 auto;
		padding: 10px 0;
		border-radius: 50px 50px 50px 50px;
		box-shadow: 5px 5px 0px 0px rgba(0, 0, 0, 0.1);
	}
	footer .footmenu {
		width: 100%;
		border-top: 1px solid #000;
		margin-top: 40px;
		padding-top: 10px;
	}
	footer .footmenu ul {
		list-style-type: none;
		margin: 0;
		padding: 0;
	}
	footer .footmenu ul li {
		padding: 5px 0;
		margin: 0;
	}
	footer .footmenu ul li a {
		width: 100%;
		color: #333;
	}
	footer .footmenu ul li a[target="_blank"]::after{
		content: "\f35d";
		font-family: "Font Awesome 5 Free";
		font-weight: bold; /*指定しないと表示されない*/
		padding-left: .3em; /*文字とアイコンの間に隙間*/
	}
	footer .copy_ic {
		width: 100%;
		text-align: center;
	}
	footer .copy_ic small {
		line-height: 4rem;
	}
}
/* ---------------------------------------------------------- */
/* ------------------------- Mobile ------------------------- */
/* ---------------------------------------------------------- */


/* ------------------------- Scroll Top Button ------------------------- */
#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 14px;
	line-height: 1;
	z-index: 99;
}
#page-top a {
	background: #22a6ff;/* 水色 */
	text-decoration: none;
	color: #fff;
	width: 60px;
	padding: 28px 5px;
	text-align: center;
	display: block;
	border-radius: 90px;
	opacity: 0.9;
	transition: all .3s ease;
}
#page-top a:hover {
	text-decoration: none;
	opacity: .5;
}
/* ------------------------- Scroll Top Button ------------------------- */