@charset "Shift-JIS";


@media screen and (min-width : 960px) {

	#contents .inner {
		max-width: 980px;
	}

	#contents > .inner {
		padding: 0 0 50px 0;
		position: relative;
	}
	#contents > .inner::before,
	#contents > .inner::after {
		content: '';
		display: block;
		height: auto;
		background-size: contain;
		background-repeat: no-repeat;
		position: absolute;
		bottom: -190px;
	}
	#contents > .inner::before {
		aspect-ratio: 301 / 492;
		width: 196px;
		background-image: url(/common/img/talent_tsuji.png);
		left: calc(50% - 300px);
		transform: translateX(50%);
	}
	#contents > .inner::after {
		aspect-ratio: 242 / 491;
		width: 157px;
		background-image: url(/common/img/talent_ketsu.png);
		right: calc(50% - 260px);
		transform: translateX(-50%);
	}



	p.text {
		font-size: 0.8125rem;
		line-height: 1.9;
		text-align: justify;
		margin: 0 0 1rem 0;
	}



	/* -------------------------------------------------------------------------------------------
	*
	* faq
	*
	* ----------------------------------------------------------------------------------------- */

	#faq {
		padding: 2.5rem 0 3.75rem 0;
	}

	#faq .faq_lead {
		font-size: 0.889rem;
		font-weight: 400;
		letter-spacing: 0.05em;
		line-height: 1.6;
		margin: 0 0 3rem 0;
	}


	#faq .faq_btn {
		text-align: center;
		margin: 0 0 0.5rem 0;
	}

	#faq .btn {
		background-color: var(--color-blue);
		color: #ffffff;
		display: inline-block;
		font-size: 0.889rem;
		line-height: 1.8;
		height: auto;
		padding: 1.2rem 4.5rem 1.2rem 12.5rem;
		width: auto;
		transition: background-color 0.3s;
	}
	#faq .btn span {
		font-size: 130%;
		font-weight: 700;
	}
	#faq .btn::before {
		content: '';
		display: block;
		aspect-ratio: 210 / 205;
		background-image: url(/faq/img/faq_itano.png);
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: contain;
		position: absolute;
		width: 160px;
		height: auto;
		left: 2.8rem;
		bottom: -1px;
	}
	#faq .btn::after {
		background-image: url(/common/img/icon_blank_white.svg);
		border: 1px solid var(--color-blue);
		border-radius: 100px;
		width: 1.556rem;
		height: 1.556rem;
	}
	#faq .btn:hover {
		background-color: #ffffff;
		color: var(--color-blue);
	}

	#faq .yellow_bnr{
		width: 268px;
		margin: 40px auto 0 auto;
	}




	/* -------------------------------------------------------------------------------------------
	*
	* intro
	*
	* ----------------------------------------------------------------------------------------- */

	#intro{
		padding: 1rem 0 0 0;
		text-align: center;
	}

	#intro p.lead{
		font-size: 0.875rem;
		margin: 0 0 2.25rem 0;
	}

	#intro div.caution{
		background-color: #ffffff;
		border: 1px solid #004ea2;
		padding: 24px 0;
	}

	#intro div.caution p{
		font-size: 0.875rem;
		line-height: 1.6;
		color: #004ea2;
	}

	#intro div.caution p span{
		text-decoration: underline;
		text-underline-offset: 40%;
	}




	/* -------------------------------------------------------------------------------------------
	*
	* container
	*
	* ----------------------------------------------------------------------------------------- */

	#contents .container {
		padding: 0 0 0 22%;
		position: relative;
		min-height: 248px;
	}

	#contents .container:nth-of-type(n+2) {
		margin: 70px 0 0 0;
	}

	#contents .container:last-child {
		margin: 70px 0 0 0;
		padding-bottom: 80px;
	}

	#contents .container::before {
		content: '';
		display: block;
		width: 18%;
		max-width: 177px;
		height: 23vw;
		max-height: 248px;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 100% auto;
		position: absolute;
		top: 0;
		left: 0;
	}

	#contents .container#blue::before {
		background-image: url(../img/obj_blue.png);
	}

	#contents .container#yellow::before {
		background-image: url(../img/obj_yellow.png);
	}

	#contents .container#green::before {
		background-image: url(../img/obj_green.png);
	}

	#contents .container#pink::before {
		background-image: url(../img/obj_pink.png);
	}

	#contents .container#orange::before {
		background-image: url(../img/obj_orange.png);
	}


	#contents .container h3 {
		margin: 0 0 20px 0;
		position: relative;
	}

	#contents .container h4 {
		font-size: 0.778rem;
		font-weight: 400;
		padding: 11px 16px;
		margin: 0 0 20px 0;
	}
	#contents .container#green h4 {
		background-color: #D6EFCF;
	}
	#contents .container#blue h4 {
		background-color: #D1E7FF;
	}
	#contents .container#yellow h4 {
		background-color: #FFF4AE;
	}
	#contents .container#pink h4 {
		background-color: #FFE6EB;
	}
	#contents .container#orange h4 {
		background-color: #FFD8BE;
	}

	#contents .container h4 span {
		display: inline-block;
		padding: 4px 4px;
		margin: 0 0.5em 0 0;
	}
	#contents .container#green h4 span {
		background-color: #93D362;
	}
	#contents .container#blue h4 span {
		background-color: #74B1D0;
	}
	#contents .container#yellow h4 span {
		background-color: #FFEA5F;
	}
	#contents .container#pink h4 span {
		background-color: #FFC6C6;
	}
	#contents .container#orange h4 span {
		background-color: #FFB744;
	}


	#contents .container p.lead {
		margin: 0 0 1rem 0;
		font-size: 0.66rem;
	}



	#contents .container div.tableContainer table tr td,
	#contents .container div.tableContainer table tr th {
		padding: 12px 10px;
		background-color: #ffffff;
		border: 1px solid #c3c3c3;
		font-size: 0.66rem;
		line-height: 1.7;
	}

	#contents .container div.tableContainer table tr th {
		width: 33%;
		background-color: #e6e6e6;
	}
	#contents .container#green div.tableContainer table tr th {
		background-color: #EDF7EB;
	}
	#contents .container#blue div.tableContainer table tr th {
		background-color: #EEF6FF;
	}
	#contents .container#yellow div.tableContainer table tr th {
		background-color: #FFFBE2;
	}
	#contents .container#pink div.tableContainer table tr th {
		background-color: #FFEFF2;
	}
	#contents .container#orange div.tableContainer table tr th {
		background-color: #FFF2E9;
	}

	#contents .container div.tableContainer table tr th:nth-of-type(3) {
		width: 30%;
	}

	#contents .container div.tableContainer table tr td>p {
		line-height: 1.7;
	}

	#contents .container div.tableContainer table tr td p {
		line-height: 1.7;
	}

	#contents .container div.tableContainer table tr td p a {
		/* text-decoration: underline; */
		/* text-underline-offset: 20%; */
		font-size: 0.667rem;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
	}

	#contents .container div.tableContainer table tr td p a:hover {
		text-decoration: underline;
		text-underline-offset: 20%;
		opacity: 0.8;
	}

	#contents .container div.tableContainer p.text {
		margin: 0.5rem 0 0 0;
		font-size: 0.66rem;
	}

	#contents .container div.tableContainer p.text a {
		text-decoration: underline;
		text-underline-offset: 20%;
		color: #004ea2;
	}


	#contents .container div.supplement {
		margin: 1rem 0 0 0;
	}

	#contents .container div.supplement p {
		font-size: 0.66rem;
		line-height: 1.6;
	}

	#contents .container div.supplement p:nth-of-type(n+2) {
		margin: 0.5rem 0 0 0;
	}

	#contents .container div.supplement p span {
		text-decoration: underline;
		text-underline-offset: 20%;
	}

	#contents .container div.supplement p a {
		text-decoration: underline;
		text-underline-offset: 20%;
		color: #004ea2;
	}

	#contents .container div.supplement ul {
		margin: 0.66rem 0 0 0;
		padding: 0.66rem;
		border: 1px solid #c3c3c3;
	}

	#contents .container div.supplement ul li {
		font-size: 0.66rem;
		line-height: 1.6;
	}

	#contents .container div.supplement ul li:nth-of-type(n+2) {
		margin: 0.25rem 0 0 0;
	}








}

@media screen and (max-width : 959px) {

	#contents > .inner {
		padding: 0 0 5rem 0;
		position: relative;
	}
	#contents > .inner::before,
	#contents > .inner::after {
		content: '';
		display: block;
		height: auto;
		background-size: contain;
		background-repeat: no-repeat;
		position: absolute;
		bottom: -5.5rem;
	}
	#contents > .inner::before {
		aspect-ratio: 301 / 492;
		width: 8rem;
		background-image: url(/common/img/talent_tsuji.png);
		left: calc(50% - 12rem);
		transform: translateX(50%);
	}
	#contents > .inner::after {
		aspect-ratio: 242 / 491;
		width: 6.5rem;
		background-image: url(/common/img/talent_ketsu.png);
		right: calc(50% - 10.5rem);
		transform: translateX(-50%);
	}
	
	
	p.text {
		font-size: 0.8125rem;
		line-height: 1.9;
		text-align: justify;
		/* margin: 0 0 1rem 0; */
	}


	/* -------------------------------------------------------------------------------------------
	*
	* faq
	*
	* ----------------------------------------------------------------------------------------- */

	#faq {
		padding: 0 0 3.75rem 0;
	}

	#faq .faq_lead {
		font-size: 0.889rem;
		font-weight: 400;
		letter-spacing: 0.05em;
		line-height: 1.6;
		margin: 0 0 10rem 0;
	}


	#faq .faq_btn {
		text-align: center;
		margin: 0 0 0.5rem 0;
	}

	#faq .btn {
		background-color: var(--color-blue);
		box-sizing: border-box;
		color: #ffffff;
		display: inline-block;
		font-size: 0.772rem;
		line-height: 1.8;
		height: auto;
		width: 100%;
		padding: 1.2rem 1rem 1.2rem 0;
		transition: background-color 0.3s;
	}
	#faq .btn span {
		font-size: 130%;
		font-weight: 700;
	}
	#faq .btn::before {
		content: '';
		display: block;
		aspect-ratio: 210 / 205;
		background-image: url(/faq/img/faq_itano.png);
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: contain;
		position: absolute;
		width: auto;
		height: 7.556rem;
		left: 50%;
		bottom: 100%;
		transform: translate(-50%, 0);
	}
	#faq .btn::after {
		background-image: url(/common/img/icon_blank_white.svg);
		border: 1px solid var(--color-blue);
		border-radius: 100px;
		width: 1.556rem;
		height: 1.556rem;
	}
	#faq .btn:hover {
		background-color: #ffffff;
		color: var(--color-blue);
	}

	#faq .yellow_bnr{
		width: 14.889rem;
		margin: 2rem auto 0 auto;
	}



	/* -------------------------------------------------------------------------------------------
	*
	* intro
	*
	* ----------------------------------------------------------------------------------------- */

	#intro{
		padding: 1rem 0 0 0;
		text-align: left;
	}

	#intro p.lead{
		font-size: 1rem;
		margin: 0 0 1rem 0;
		line-height: 1.6;
	}

	#intro div.caution{
		background-color: #ffffff;
		border: 1px solid #004ea2;
		padding: 1rem;
	}

	#intro div.caution p{
		font-size: 0.9375rem;
		line-height: 1.6;
		color: #004ea2;
	}

	#intro div.caution p span{
		text-decoration: underline;
		text-underline-offset: 40%;
	}



	/* -------------------------------------------------------------------------------------------
	*
	* container
	*
	* ----------------------------------------------------------------------------------------- */

	#contents .container {
		position: relative;
		text-align: left;
		display: flex;
		align-items: stretch;
		flex-wrap: wrap;
		gap: 0.8rem;
	}

	#contents .container:nth-of-type(n+2) {
		margin: 16vw 0 0 0;
	}

	#contents .container:last-child {
		padding-bottom: 16vw;
	}


	#contents .container::before {
		content: '';
		display: block;
		aspect-ratio: 179 / 248;
		width: 4rem;
		height: auto;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 100% auto;
		/* position: absolute; */
		/* top: 0; */
		/* left: 0; */
	}

	#contents .container#blue::before {
		background-image: url(../img/obj_blue.png);
	}

	#contents .container#yellow::before {
		background-image: url(../img/obj_yellow.png);
	}

	#contents .container#green::before {
		background-image: url(../img/obj_green.png);
	}

	#contents .container#pink::before {
		background-image: url(../img/obj_pink.png);
	}

	#contents .container#orange::before {
		background-image: url(../img/obj_orange.png);
	}


	#contents .container h4 {
		box-sizing: border-box;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 0 1rem;
		width: calc(100% - 4.8rem);
		text-align: center;
	}
	#contents .container#green h4 {
		background-color: #D6EFCF;
	}
	#contents .container#blue h4 {
		background-color: #D1E7FF;
	}
	#contents .container#yellow h4 {
		background-color: #FFF4AE;
	}
	#contents .container#pink h4 {
		background-color: #FFE6EB;
	}
	#contents .container#orange h4 {
		background-color: #FFD8BE;
	}

	#contents .container h4 div {
		font-size: 0.778rem;
		font-weight: 400;
		line-height: 1.8;
	}
	#contents .container h4 span {
		display: inline;
		padding: 4px 4px;
		margin: 0 0.5em 0 0;
	}
	#contents .container#green h4 span {
		background-color: #93D362;
	}
	#contents .container#blue h4 span {
		background-color: #74B1D0;
	}
	#contents .container#yellow h4 span {
		background-color: #FFEA5F;
	}
	#contents .container#pink h4 span {
		background-color: #FFC6C6;
	}
	#contents .container#orange h4 span {
		background-color: #FFB744;
	}

	#contents .container p.lead {
		margin: 0 0 1.25rem 0;
		font-size: 0.8125rem;
		line-height: 1.7;
	}


	#contents .container div.tableContainer {
		flex: 1 1 100%;
	}
	#contents .container div.tableContainer div.tableOuter {
		overflow: auto;
		padding: 0 5vw 2vw 0;
		margin: 0 -5vw 0 0;
	}

	.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
		height: 1.5vw;
		margin: 1.3vw auto;
	}

	#contents .container div.tableContainer div.tableOuter table {
		/* width: 180vw; */
	}


	#contents .container div.tableContainer div.tableOuter table tr td,
	#contents .container div.tableContainer div.tableOuter table tr th {
		font-size: 0.667rem;
		padding: 0.667rem;
		background-color: #ffffff;
		border: 1px solid #c3c3c3;
		line-height: 1.7;
		letter-spacing: 0;
		text-align: left;
	}

	#contents .container div.tableContainer div.tableOuter table tr th {
		width: 33%;
		background-color: #e6e6e6;
	}
	#contents .container#green div.tableContainer table tr th {
		background-color: #EDF7EB;
	}
	#contents .container#blue div.tableContainer table tr th {
		background-color: #EEF6FF;
	}
	#contents .container#yellow div.tableContainer table tr th {
		background-color: #FFFBE2;
	}
	#contents .container#pink div.tableContainer table tr th {
		background-color: #FFEFF2;
	}
	#contents .container#orange div.tableContainer table tr th {
		background-color: #FFF2E9;
	}

	#contents .container div.tableContainer div.tableOuter table tr th:nth-of-type(3) {
		width: 30%;
	}

	#contents .container div.tableContainer div.tableOuter table tr td>p {
		line-height: 1.7;
	}

	#contents .container div.tableContainer div.tableOuter table tr td p {
		font-size: 0.667rem;
		line-height: 1.7;
	}

	#contents .container div.tableContainer div.tableOuter table tr td p a.main {
		text-decoration: underline;
		text-underline-offset: 20%;
		color: #004ea2;
		font-size: 1rem;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
	}

	#contents .container div.tableContainer p.text {
		margin: 1rem 0 0 0;
		font-size: 0.8125rem;
	}

	#contents .container div.tableContainer p.text a {
		text-decoration: underline;
		text-underline-offset: 20%;
		color: #004ea2;
	}


	#contents .container div.supplement {
		margin: 1rem 0 0 0;
	}

	#contents .container div.supplement p {
		font-size: 0.8125rem;
		line-height: 1.6;
	}

	#contents .container div.supplement p:nth-of-type(n+2) {
		margin: 0.5rem 0 0 0;
	}

	#contents .container div.supplement p span {
		text-decoration: underline;
		text-underline-offset: 20%;
	}

	#contents .container div.supplement p a {
		text-decoration: underline;
		text-underline-offset: 20%;
		color: #004ea2;
	}

	#contents .container div.supplement ul {
		margin: 1rem 0 0 0;
		padding: 0.8125rem;
		border: 1px solid #c3c3c3;
	}

	#contents .container div.supplement ul li {
		font-size: 0.8125rem;
		line-height: 1.6;
	}

	#contents .container div.supplement ul li:nth-of-type(n+2) {
		margin: 0.25rem 0 0 0;
	}

}