@charset "UTF-8";

/*共通部分*/
.font_acme {
	font-family: 'Acme', sans-serif;
}

#main {
	max-width: 100%;
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

/* .pan ul {
	display: flex;
} */

.inner05 {
	width: 100%;
}

#maincontent {
	width: 100%;
}

#mainImg {
	width: 100%;
	margin-bottom: 1em;
}

#mainImg img {
	width: 100%;
}

.imgHover:hover {
	opacity: 0.7;
}

@media screen and (min-width:768px) {
	/* .pan ul {
		height: 40px;
		line-height: 40px;
	} */

	#main {
		max-width: 1000px;
		width: 100%;
		margin: 0 auto;
	}

	#maincontent {
		max-width: 1000px;
		width: 100%;
	}

	#mainImg {
		margin-bottom: 40px;
	}

	aside {
		width: 210px;
		margin-top: 40px;
	}

	.sidemenu,
	#sideNews,
	.kaikoBnr {
		transition: 0.3s;
		margin-bottom: 20px;
	}

	.sidemenu:hover {
		opacity: 0.7;
	}

	.kaikoBnr {
		font-size: 26px;
		text-align: center;
		background: #1d710e;
		padding-bottom: 0.2em;
		border-radius: 10px;
		color: #fff;
		font-weight: bold;
	}

	.kosha {
		font-size: 16px;
		font-weight: bold;
		box-sizing: border-box;
		margin: 0 0.8em 0.2em;
	}

	.kosha a {
		display: block;
		background: #ffa115;
		border-radius: 2px;
		border: 2px outset #ff9900;
		box-sizing: border-box;
		transition: 0.3s;
	}

	.kosha a:hover {
		background: #ff5e00;
		color: #fff;
		border: 2px inset #ff9900;
	}

	.muryo_bnr {
		transition: 0.3s;
	}

	.muryo_bnr:hover {
		transform: rotate(10deg);
	}

	/*sideNews*/

	li#sideNews {
		width: 100%;
		margin: auto;
		border: 1px solid #1e66d6;
		margin-bottom: 20px;
	}

	li#sideNews div {
		padding: 0 5%;
		box-sizing: border-box;
		transition: 0.3s;
	}

	li#sideNews div:nth-child(odd) {
		background: #e4e4e4;
	}

	li#sideNews div:nth-child(even) {
		background: #f5f4f4;
	}

	li#sideNews span.catetitle {
		display: block;
		text-align: center;
		padding: 2% 0;
		font-size: 1.2em;
		font-weight: 600;
		background: #1e66d6;
		color: #fff;
	}

	li#sideNews .hizuke {
		color: #1e66d6;
	}

	li#sideNews div:hover {
		background: #a4e6ff;
	}
}

/*faq*/
.faq_content {
	margin: 0 auto;
	/* padding: 1em; */
	/* border-bottom: 1px dashed #757575; */
	background: #ececec;
}

#semifaq,
#kbfaq {
	margin-bottom: 1em;
}

.faq_content:nth-child(odd) {
	background: #ebfff2;
}

.faq_question {
	display: flex;
	flex-direction: row;
	/* margin-bottom: 1em; */
	align-items: center;
	line-height: 1.2;
	padding-left: 1rem;
	padding: 1rem 0 1rem 1rem;
}

.icon01 {
	display: block;
	color: #000;
	font-weight: normal;
	border-radius: 50%;
	text-align: center;
	width: 30px;
	height: 30px;
	line-height: 30px;
	font-size:1.2em;
	background: #fff;
}
/* #kbfaq .icon01 {

	background: #00984b;
}

#semifaq .icon01 {
	background: #1a98ff;
} */

p.que {
	font-size:1.0em;
	font-weight: 600;
	width: calc(100% - 50px);
	width: -webkit-calc(100% - 50px);
	padding-left: 1em;
	padding-right: 2em;
	line-height:1;
}

.faq_answer {
	display: flex;
	flex-direction: row;
}

.faq_answer .ans_voice {
	width: 100%;
}

.faq_answer .a_moji {
	width: 30px;
	height:30px;
	float: left;
}

.faq_answer .ans {
	width: calc(100% - 50px - 2em);
	width: -webkit-calc(100% - 50px - 2em);
	float: left;
	margin-left: 1em;
	margin-right: 1em;
}
p.ans{
	font-size:1em;
}
#semifaq .faq_answer .icon01 {
	background: #757575;
}

#kbfaq .faq_answer .icon01 {
	background: #757575;
}

.title01 {
	font-size: 5vw;
	border-radius: 10px 10px 0 0;
	padding: 0.1em 0;
	text-align: center;
	font-weight: 600;
	width: 100%;
	color: #003e21;
	/* height: 2em; */
	/* line-height: 2em; */
	padding:1rem 0;
	color: #fff;
	text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
	text-align:center;
}


#semifaq .title01 {
	/* background: linear-gradient(90deg, #008dac80 50%, transparent 50%), linear-gradient(#008dac80 50%, transparent 50%); */
	background-color: #005dac;
	background-size: 2px 2px;
	
}

#kbfaq .title01 {
	/* background: linear-gradient(90deg, #00874880 50%, transparent 50%), linear-gradient(#00874880 50%, transparent 50%); */
	background-color: #32b09c;
	background-size: 2px 2px;
}
/*infomation*/
.infobox ul {
	display: flex;
	flex-direction: row;
	justify-content: center;
}

.infobox ul li {
	margin-right: 1em;
}

.infobox ul li:last-child {
	margin-right: 0;
}

.infobox {
	width: 90%;
	margin: auto;
	margin-bottom: 1em;
}

.infobox img {
	max-width: 100%;
	width: auto;
	height: auto;
}

/*--------------------------レスポンシブ（トップページ）--------------------------*/
@media screen and (min-width:768px) {

	/*faq*/
	.faq_content {
		width: -webkit-fill-available;
		/* padding: 1em; */
		/* margin-bottom: 1em; */
		/* border: 1px dashed #757575; */
		background: unset;
	}

	#semifaq,
	#kbfaq {
		margin-bottom: 40px;
	}
	p.que{line-height: inherit;}
	.faq_content:nth-child(odd) {
		background: unset;
	}

	.faq_answer .ans_img {
		width: 20%;
	}

	.faq_answer .ans_voice {
		width: 80%;
		overflow: hidden;
	}

	.title01 {
		font-size: 24px;
	}
	.icon01{font-size:1.4em;}
	/*infobtn*/
	.infobox ul li {
		margin-right: 60px;
	}

	.infobox {
		margin-bottom: 60px;
	}
}


/*flowstep*/
#step .stepbox {
	margin-bottom: 1em;
}

#step .stepbox h2.subtitle {
	font-size: 4vw;
	letter-spacing: 0.1em;
	padding-left: 0.4em;
	font-weight: 600;
	position: relative;
	margin: 0 0 1.5em;
	padding: 0.5em 0.5em 0.5em 1.7em;
	border-bottom: 3px solid #32b09a;
	margin-top: 1em;
}

#step .stepbox h2.subtitle:before {
	content: "";
	position: absolute;
	background: #59ffe8;
	top: 0;
	left: 0.4em;
	height: 12px;
	width: 12px;
	transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
}

#step .stepbox h2.subtitle:after {
	content: "";
	position: absolute;
	background: #8feca6;
	top: 1.0em;
	left: 0;
	height: 8px;
	width: 8px;
	transform: rotate(15deg);
	-moz-transform: rotate(15deg);
	-webkit-transform: rotate(15deg);
	-o-transform: rotate(15deg);
	-ms-transform: rotate(15deg);
}

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

	.msr_flow02 {
		color: #000000;
		display: flex;
		flex-direction: row;
		align-items: center;
		margin-bottom: 40px;
	}

	.msr_flow02 li {
		line-height: 60px;
		font-weight: 600;
		display: block;
		font-size: 14px;
		min-width: 80px;
		padding: 0 15px 0 30px;
		text-align: center;
	}

	.msr_flow02 li:first-child {
		padding-left: 20px;
	}



	/* 三角形下部 */
	.msr_flow02 li::after {
		border-right: 5px solid #FFFFFF;
		content: " ";
		display: block;
		height: 30px;
		margin-left: auto;
		margin-right: -30px;
		margin-top: -30px;
		position: relative;
		transform: skew(-30deg);
		-o-transform: skew(-30deg);
		-ms-transform: skew(-30deg);
		-moz-transform: skew(-30deg);
		-webkit-transform: skew(-30deg);
		width: 30px;
	}

	/* 三角形上部 */
	.msr_flow02 li::before {
		border-right: 5px solid #FFFFFF;
		content: " ";
		display: block;
		float: right;
		height: 30px;
		margin-bottom: -30px;
		margin-left: auto;
		margin-right: -30px;
		transform: skew(30deg);
		-o-transform: skew(30deg);
		-ms-transform: skew(30deg);
		-moz-transform: skew(30deg);
		-webkit-transform: skew(30deg);
		width: 30px;
	}

	.msr_flow02 li:nth-child(1),
	.msr_flow02 li:nth-child(1)::after,
	.msr_flow02 li:nth-child(1)::before {
		background: #f8ed9c;
	}

	.msr_flow02 li:nth-child(2),
	.msr_flow02 li:nth-child(2)::after,
	.msr_flow02 li:nth-child(2)::before {
		background: #fae868;
	}

	.msr_flow02 li:nth-child(3),
	.msr_flow02 li:nth-child(3)::after,
	.msr_flow02 li:nth-child(3)::before {
		background: #fbe234;
	}

	.msr_flow02 li:nth-child(4),
	.msr_flow02 li:nth-child(4)::after,
	.msr_flow02 li:nth-child(4)::before {
		background: #fddd00;
	}

	.msr_flow02 li:nth-child(5),
	.msr_flow02 li:nth-child(5)::after,
	.msr_flow02 li:nth-child(5)::before {
		background: #ff8100;
	}
}

/*20230118追加*/
#gradebtn01 {
	margin-bottom: 1rem;
	margin-top: 1rem;
}

#gradebtn01 nav {
	text-align: center;
}

#gradebtn01 nav ul {
	display: flex;
	flex-direction: row;
	justify-content: space-evenly;
}

#gradebtn01 nav ul li a {
	padding: 2rem;
	display: block;
	font-size: 1.3rem;
	border-radius: 50%;
	font-weight: bold;
	color: #fff;
}

#gradebtn01 nav ul li:first-child a {
	background: #00984b;
	box-shadow: 0 10px 0 #1e6830;
}

#gradebtn01 nav ul li:last-child a {
	background: #1a98ff;
	box-shadow: 0 10px 0 #2d75c1;
}

#gradebtn01 nav ul li:hover a {
	margin-top: 5px;
	margin-bottom: -5px;
}

#gradebtn01 nav ul li:first-child:hover a {
	box-shadow: 0px 5px 0px #1e6830;
}

#gradebtn01 nav ul li:last-child:hover a {
	box-shadow: 0px 5px 0px #2d75c1;
}

#gradebtn01 nav ul li:first-child:active a,
#gradebtn01 nav ul li:last-child:active a {
	margin-top: 10px;
	margin-bottom: -10px;
	box-shadow: 0px 0px 0px rgba(213, 95, 145, 1);
}


@media screen and (min-width: 768px) {
	#gradebtn01 {
		margin-bottom: 30px;
	}
}



/*toggle*/

/*ベース*/
.toggle {
	display: none;
}
.Label {		/*タイトル*/
	/* padding: 1em; */
	display: block;
	/* color: #fff; */
}
#semifaq .Label{
	background:#aad8ff;
}
#kbfaq .Label{
	background: #a3efe3;
}
.Label::before{		/*タイトル横の矢印*/
	content:"";
	width: 6px;
	height: 6px;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top:calc( 50% - 3px );
	right: 20px;
	transform: rotate(135deg);
}
.Label,
.ans_content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}
.ans_content {		/*本文*/
	height: 0;
	margin-bottom:10px;
	padding:0;
	overflow: hidden;
}
.ans_content .icon01{
	background:#ff6ca2;
}
.toggle:checked + .Label + .ans_content {	/*開閉時*/
	height: auto;
	padding: 1rem;
	transition: all .3s;
	background: #fff;
}
.toggle:checked + .Label::before {
	transform: rotate(-45deg) !important;
}
.onegroup{
	padding:1rem;
}
#semifaq.onegroup{
	background:#005dac;
}
#kbfaq.onegroup{
	background:#32b09c;
}
.tab_title{
	color:#fff;
	font-size:1.1em;
	font-weight:600;
}
/*tabs*/
.tab_navi {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 0.5rem;
}

.tab_navi a {
    padding: 1rem;
    display: block;
	border-radius:10px 10px 0 0;
	text-align:center;
}

.tab_navi li {
    /* margin-bottom: 1rem; */
	width:50%;
}
.tab_navi li:first-child a{
	background:#005dac;
	width:100%;
}
.tab_navi li:nth-child(2) a{
	background:#32b09c;
	width:100%;
}


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

	.tab_title{
		font-size:1.4em;
	}
}

/*title*/
.titlebox002 {
	background-color: #57b6ff;
	color: #fff;
	padding:1em;
	font-weight: 600;
	position: relative;
	letter-spacing: 0.1em;
	margin-bottom:1em;
	font-size:1.2em;
}
.titlebox002:after {
	background: repeating-linear-gradient(-45deg, #49b0ff, #49b0ff 5px, #e4fbff 0, #e4fbff 10px);
	content: '';
	height: 5px;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1;
}
