@charset 'utf-8';

/*
input:checked + label {
	font-weight: bold;
	text-decoration: underline;
}
*/
label {
	cursor: pointer;
}

/* ヘッダ */
#header2 {
	min-height: 0px;
}

#he_left {
	width: auto;
	position: absolute;
	top: 0px;
	left: auto;
	right: 0px;
}
#he_left #logo {
	margin: 0px;
}

/* メイン */
#mymainback_bg::before {
	content: '';
	display: block;
	width: 100%;
	height: 220px;
	background: #deecef;
	position: absolute;
	top: 0px;
	left: 0px;
	z-index: -1;
}
#mymainback_bg {
	/* background-size: auto 220px; */
	padding-top: 110px;
	position: relative;
	background: none;
}
#mymainback {
	display: block;
	padding: 0px 0px 50px;
}
#main {
	margin: 0px;
}

/* 外枠ここから */
.stress_all_wrap {
	width: auto;
	max-width: 1100px;
	border-radius: 30px;
	margin: 0px auto;
	padding: 55px 60px 100px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	background:
	    url(/stress/img/illust1.png) no-repeat right top,
	    url(/stress/img/illust2.png) no-repeat left bottom,
	    url(/stress/img/grad_bg.png) repeat left top;
	background-size:
	    auto auto,
	    auto auto,
	    100% 100%;
}
.stress_top .stress_all_wrap {
	padding: 55px 60px 15px;
	background:
	    url(/stress/img/bg_left.png) no-repeat left top,
	    url(/stress/img/bg_right.png) no-repeat right top #bfe1f7;
}

.stress_all_wrap h1 {
	margin: 0px 0px 0px;
	line-height: 1;
}
.stress_all_wrap h1 img {
	width: auto;
	height: auto;
	max-width: 100%;
	margin-right: 10px;
	vertical-align: top;
}
/* 外枠ここまで */


.referencce {
	text-align: right;
	font-weight: bold;
	text-shadow: 0px 0px 3px #fff;
	-webkit-filter: drop-shadow(0px 0px 0px #fff) drop-shadow(0px 0px 0px #fff) drop-shadow(0px 0px 0px #fff) drop-shadow(0px 0px 0px #fff);
	        filter: drop-shadow(0px 0px 0px #fff) drop-shadow(0px 0px 0px #fff) drop-shadow(0px 0px 0px #fff) drop-shadow(0px 0px 0px #fff); 
	font-size: 90%;
}

/* 入り口ここから */
.stress_top #ques_wrap {
	background: rgba(255,255,255,0.8);
	padding: 30px 30px 50px;
	border-radius: 30px;
}
.stress_top #ques_wrap p {
	margin: 20px 20px 40px;
	font-size: 120%;
	font-weight: bold;
}

#stress_kansyu p {
	font-size: 106%;
	text-align: right;
	margin: 20px 0px 0px;
}

ul.entrance_select_age {
	margin: 0px;
	padding: 0px;
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}
ul.entrance_select_age li {
	display: block;
	margin: 0px;
	padding: 0px;
}
ul.entrance_select_age li:nth-child(odd) {
	margin-right: 15px;
}
ul.entrance_select_age li:nth-child(even) {
	margin-left: 15px;
}
ul.entrance_select_age li a {
	display: block;
}
/* 入り口ここまで */

/* 設問ここから */
.ques_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
#ques_wrap2 > p {
	background: rgba(255,255,255,0.8);
	margin: 0px 0px 10px;
	padding: 20px 50px 20px;
	border-radius: 30px;
	font-size: 120%;
	font-weight: bold;
}
#ques_wrap2 > div {
	background: rgba(255,255,255,0.8);
	border-radius: 30px;
	/*	margin: 0px 0px 10px;*/
	margin: 30px 0px 30px;
	padding: 10px 30px 10px;
}
#ques_wrap2 > div#ques_chk_btn {
	margin: 0px;
	padding: 40px 30px;
	border-radius: 30px;
}

#ques_wrap h2 {
	margin: 0px;
	font-size: 124%;
	font-weight: bold;
	padding: 0px 0px 0px 20px;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
}
#ques_wrap h2 span.quesnum {
	display: inline-block;
	vertical-align: middle;
	width: 1.8em;
	height: 1.2em;
	font-weight: bold;
	color: #ffffff;
	background: #1f496f;
	border-radius: 100%;
	line-height: 1.2em;
	text-align: center;
	padding: 0.4em 0.1em;
	margin-right: 20px;
	white-space: nowrap;
}

.ques_detail_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	/* margin-left: 70px; */
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	gap: 10px;
}
.ques_detail_wrap > span {
	display: inline-block;
	vertical-align: top;
	/* width: 358px; */
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	margin: 0px 0px 0px 0px;
	position: relative;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}
.ques_detail_wrap > span label {
	display: block;
	width: 100%;
	background: #ffffff;
	border: 1px solid #d2d2d2;
	border-radius: 10px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	font-size: 114%;
	padding: 10px 30px 10px 40px;
}
.ques_detail_wrap > span input:checked + label {
	background: #faeec8;
}
.ques_detail_wrap > span input {
	margin: 0px;
	position: absolute;
	top: calc(50% - 8px);
	left: 15px;
}

#ques_chk {
	display: block;
	width: 450px;
	height: auto;
	margin: 0px auto;
	padding: 0px;
	background: none transparent;
	border: none;
}
#ques_chk img {
	max-width: 100%;
	height: auto;
}
/* 設問ここまで */

/* 結果ここから */
#stress_result_wrap.show_result {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.5);
	z-index: 100;
}
#stress_result {
	display: none;
	position: absolute;
	top: 50px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
	background: #ffffff;
	max-height: calc(100vh - 180px);
	border-radius: 10px;
	width: 90%;
	max-width: 1100px;
	padding: 40px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	overflow: auto;
	height: 600px;
}
#stress_result > div[id^="result"] {
	display: none;
}
#stress_result > div[id^="result"].show_result {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	padding: 0;
	overflow: auto;
}
#stress_result > div[id^="result"].show_result > div {
	width: 50%;
	height: auto;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
#stress_result > div[id^="result"].show_result .result_image_box {
	width: 100%;
}
#stress_result.show_result {
	display: block;
}
#stress_result > h2 {
	margin: 0px;
	padding: 0px;
}
#stress_kaizen {
	display: none;
	position: absolute;
	bottom: 20px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
	margin: 0px;
	padding: 0px;
	background: none transparent;
	border: none;
}
.show_result #stress_kaizen {
	display: block;
}

.stress_kaizen div#header {
	display: none;
}

.stress_kaizen #mymainback {
	overflow: visible;
}

@media screen and (min-height: 800px) {
	#stress_kaizen{
		bottom: auto;
		top: 680px;
	}
}

#stress_result div[id^="result"] h2 {
	width: 100%;
	margin: 0px;
	padding: 0px;
}
#stress_result > div[id^="result"].show_result > div.result_image {
	max-width: 500px;
	text-align: center;
}
img.result_image_main {
	max-width: 100%;
	height: auto;
}

.result_image_box {
	margin: 20px 0px 0px;
	padding: 20px 30px;
	background: #d6edfc;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	border-radius: 10px;
	text-align: left;
}
.result_image_box img{
	max-width: 100%;
	height: auto;
}

.result_image_title {
	margin: 0px 0px 10px;
}

.result_image_text p {
	margin: 0;
}

#stress_result > div[id^="result"].show_result > div.result_detail {
	padding-left: 30px;
	font-size: 114%;
}

.result_detail_title {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	margin-bottom: 20px;
}
.result_detail_title > img:first-child {
	margin-right: 20px;
}
/* 結果ここまで */

/* 改善ここから */
.stress_kaizen #mymainback_bg{
	padding-top: 60px;
}
.stress_kaizen #he_left #logo{
	display: none;
}
.stress_kaizen h1{
	font-size: 2em;
	margin: 0px auto 10px;
	max-width: 1080px;
	padding-left: 70px;
	position: relative;
	z-index: 100;
}
@media screen and (max-width: 1079px){
	.stress_kaizen h1{
		padding-left: 0px;	
	}
}
	
.stress_kaizen .stress_all_wrap  {
	background: #ffffff;
	border-radius: 10px;
	padding-bottom: 0px;
	padding: 20px 50px;
	position: relative;
}
.stress_kaizen .stress_all_wrap::before{
	content: url(./img/kaizen_kazoku.png);
	position: absolute;
	right: 10px;
	top: -90px;
	z-index: 10;
}
.stress_all_wrap h1 {
	/* display: block; */
	/* width: 0px; */
	/* height: 0px; */
	/* margin: 0px; */
	/* padding: 0px; */
	/* clip: rect(0,0,0,0); */
	/* overflow: hidden; */
}
#ques_wrap p {
	margin: 0px;
	font-size: 113%;
	font-weight: bold;
}
.stress_kaizen #ques_wrap > p:first-child{
	padding-right: 160px;
}
#link_home_btn {
	text-align: center;
}
#link_home_btn a {
	display: inline-block;
	vertical-align: middle;
	margin: 0px 10px 10px;
}

ul#stress_kaizen_list {
	margin: 0px;
	padding: 40px 0px 20px;
	list-style: none;
	font-size: 120%;
}
ul#stress_kaizen_list li {
	display: block;
	margin: 0px 0px 40px;
}
span.kaizen_heading{
	display: block;
	background: #d6edfc;
	border-radius: 10px;
	line-height: 1.2em;
	margin: 0px 0px 10px
}
ul#stress_kaizen_list li span.kaizennum {
	display: inline-block;
	vertical-align: middle;
	width: 1.8em;
	height: 1.2em;
	line-height: 1.2em;
	font-weight: bold;
	color: #ffffff;
	text-align: center;
	padding: 0.4em 0.1em;
	margin-right: 20px;
	white-space: nowrap;
	text-shadow: 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333,
		0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333,
		0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333,
		0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333,
		0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333,
		0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333,
		0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333,
		0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333,
		0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333,
		0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333, 0px 0px 3px #333333;
}


span.kaizen_detail {
	display: block;
	padding: 0px 0px 0px 50px;
}

span.kaizen_heading_text {
	font-weight: bold;
}
/* 改善ここまで */




/* スマートフォン */
@media screen and (max-width: 670px) {

	.stress #header2 {
		min-height: 0px;
	}
	.stress #he_left {
		width: auto;
		position: absolute;
		margin: 0px;
		padding: 0px;
		top: 0px;
		right: 0px;
	}
	.stress #he_left #logo img {
		width: auto;
		height: 54px;
	}

	.stress #mymainback_bg {
		padding-top: 65px;
	}

	.stress_all_wrap {
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		width: auto;
		max-width: 100vw;
		padding: 40px 20px;
		background-size: 45% auto, 100% auto, 100% auto, 100% 100%;
	}
	.ques_detail_wrap > span {
		width: 100%;
	}
	.ques_detail_wrap > span label {
		padding-top: 10px;
		padding-bottom: 9px;
		padding-right: 0;
	}

	.stress_top .stress_all_wrap {
		padding: 40px 20px 20px;
		background-size: 45% auto, 100% auto;
	}

	.stress_all_wrap h1 {
		margin: 0px 0px 30px;
	}
	.stress_all_wrap h1 img {
		max-height: 30px;
		margin-bottom: 5px;
	}

	ul.entrance_select_age {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}
	ul.entrance_select_age li img {
		max-width: 100%;
		height: auto;
	}
	ul.entrance_select_age li:nth-child(odd) {
		margin: 0px 0px 20px;
	}
	ul.entrance_select_age li:nth-child(even) {
		margin: 0px;
	}

	.stress_top #ques_wrap {
		padding: 30px;
	}
	.stress_top #ques_wrap p {
		font-size: 106%;
		margin: 0px 0px 20px;
	}

	#stress_kansyu p {
		font-size: 86%;
	}

	#ques_wrap > div[id^="ques"] > h2 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: nowrap;
		    flex-wrap: nowrap;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	#ques_wrap > div[id^="ques"] > h2 > span.quesnum {
	}

	#ques_chk {
		width: auto;
		max-width: 100%;
	}
	#ques_wrap2 > .ques_box{
		display: block;
		padding: 25px 30px 20px;
	}
	#stress_result > div[id^="result"].show_result {
		display: block;
		height: calc(100% - 25px);
		-ms-scroll-chaining: none;
		    overscroll-behavior: none;
	}
	#stress_result > div[id^="result"].show_result > div.result_image {
		width: auto;
	}
	img.result_image_main{
		/* width: 130px; */
		height: 200px;
		width: 200px;
		object-fit: contain;
		object-position: center center;
	}
	
	#stress_result > div[id^="result"].show_result > div {
		width: auto;
	}
	#stress_result > div[id^="result"].show_result > div.result_detail {
		padding: 30px 0px 0px;
		font-size: 100%;
	}
	.result_detail_title {
		margin-bottom: 0px;
		justify-content: center;
	}

	.result_detail_text {
		margin: 20px 0px 0px;
	}

	.result_image_box {
		padding: 15px 20px 10px;
	}

	#ques_wrap #stress_result h2 {
		margin: 0px;
		padding: 0px;
	}

	#stress_result {
		padding: 20px;
		overflow: hidden;
		max-height: calc(100vh - 140px);
		top: 30px;
	}

	#stress_kaizen {
		max-width: 80vw;
		width: auto;
	}
	#stress_kaizen img {
		max-width: 80vw;
		height: auto;
	}

	#ques_wrap2 > p {
		padding: 30px 30px 20px;
		font-size: 106%;
	}
	#ques_wrap2 > div#ques_chk_btn {
		padding: 30px;
	}

	#ques_wrap h2 {
		padding: 0px 0px 20px 40px;
		position: relative;
	}
	#ques_wrap h2 span.quesnum {
		display: block;
		margin: 0px;
		width: 2em;
		height: 1em;
		line-height: 1em;
		padding: 0.6em 0px 0.4em;
		position: absolute;
		top: -5px;
		left: -5px;
	}

	.ques_detail_wrap {
		margin: 0px;
		/* display: block; */
	}
	.ques_detail_wrap > span {
		display: block;
	}


	/* 改善	 */
	.stress_kaizen h1 {
		margin: 0px 0px 50px;
		font-size: 1.4em;
	}

	.stress_kaizen .stress_all_wrap::before {
		scale: 0.5;
	}

	.stress_kaizen .stress_all_wrap {
		padding: 30px 10px 10px;
	}

	.stress_kaizen .stress_all_wrap .br_pc {
		display: none;
	}

	.stress_kaizen #mymainback {
		margin: 0px;
		padding: 0px;
		/* overflow: visible; */
	}

	.stress.stress_kaizen #mymainback_bg {
		background: #deecef;
		padding: 65px 20px 20px;
	}

	.stress_kaizen #ques_wrap > p:first-child{
		padding-right: 0;
	}
	

	ul#stress_kaizen_list li {
		/* padding: 5px 0px 5px 40px; */
		position: relative;
	}
	ul#stress_kaizen_list li span.kaizennum {
		/* display: block; */
		/* margin: 0px; */
		/* width: 2em; */
		/* height: 1em; */
		/* line-height: 1em; */
		/* padding: 0.6em 0px 0.4em; */
		/* position: absolute; */
		/* top: -2px; */
		/* left: -5px; */
	}
	span.kaizen_detail{
		padding-left: 20px;
	}

	#link_home_btn img {
		width: auto;
		height: 60px;
	}

}
@media screen and (max-width: 370px) {
	#stress_kansyu p {
		font-size: 76%;
	}
}
/* スマートフォン ここまで */