@charset "UTF-8";

@import url("https://use.typekit.net/hac5cda.css");
.ft_din {
	font-family: "din-2014", sans-serif;
	font-weight: 600;
	font-style: normal;
}


/*---------------------------------------------------------
m_img
---------------------------------------------------------*/
.contentpage .m_img {
	background-image: url(../images/recruit/m_img@2x.jpg);
	background-position: center top;
}

/*---------------------------------------------------------
rec_obj
---------------------------------------------------------*/
.rec_obj {
	position: absolute;
	width: min(20vw,230px);
	height: min(20vw,230px);
	border-radius: 50%;
}
.rec_obj.grd_pnk {background: radial-gradient(rgba(255,233,220,0) 0%, rgba(255,233,220,1) 100%);}
.rec_obj.grd_yel {background: radial-gradient(rgba(242,255,160,0) 0%, rgba(242,255,160,1) 100%);}
.rec_obj.grd_grn {background: radial-gradient(rgba(217,255,209,0) 0%, rgba(217,255,209,1) 100%);}
.rec_obj.grd_blu {background: radial-gradient(rgba(208,248,241,0) 0%, rgba(208,248,241,1) 100%);}

#message .rec_obj.grd_blu {
	left: 0;
	bottom: 0;
	translate: -30% 15%;
}

#data .rec_obj.grd_yel {
	left: 28%;
	top: 0;
	translate: 0 -65%;
}

#work .rec_obj.grd_pnk {
	right: 10%;
	top: 0;
	translate: 0 -40%;
}
#work .rec_obj.grd_yel {
	left: 18%;
	bottom: 0;
	translate: 0 5%;
	z-index: 1;
}
#work .rec_obj.grd_grn {
	left: 3%;
	top: 0;
	translate: 0 -56%;
}

#person .rec_obj.grd_grn {
	right: 10%;
	top: 0;
	translate: 0 -55%;
}
#person .rec_obj.grd_blu {
	left: 5%;
	bottom: 0;
	translate: 0 40%;
	z-index: 1;
}

#guideline .rec_obj.grd_pnk {
	right: 10%;
	top: 0;
	translate: 0 -35%;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.rec_obj {
	width: 30vw;
	height: 30vw;
}

#message .rec_obj.grd_blu {
	left: 0;
	bottom: 0;
	translate: 20% 15%;
}

#data .rec_obj.grd_yel {
	left: 8%;
	translate: 0 -35%;
}

#work .rec_obj.grd_pnk {
	right: 5%;
}
#work .rec_obj.grd_yel {
	left: auto;
	right: 10%;
}
#work .rec_obj.grd_grn {
	left: -5%;
}

#person .rec_obj.grd_grn {
	right: 10%;
	translate: 0 -25%;
}
}

/*---------------------------------------------------------
title
---------------------------------------------------------*/
.rec_title {
	position: relative;
	text-align: center;
	font-size: min(133%,2vw);
	letter-spacing: .14em;
	line-height: 1.5;
	margin-bottom: 3em;
}
.rec_title .ft_min,
.rec_title .ft_gra {
	position: relative;
}
.rec_title .ft_gra {
	position: relative;
	color: #99a3a6;
	font-size: 200%;
	margin-bottom: .3em;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.rec_title {
	font-size: 95%;
	letter-spacing: .1em;
	margin-bottom: 2em;
}
.rec_title .ft_gra {
	font-size: 180%;
}
}




/*---------------------------------------------------------
status
---------------------------------------------------------*/
.rec_status {
	max-width: 800px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	justify-content: center;
	column-gap: 2.5%;
	margin: 0 auto 7%;
}
.rec_status > li {
	position: relative;
	width: 100%;
	max-width: 252px;
}
.rec_status > li > * {
	display: block;
	text-align: center;
	font-size: min(1.7vw,112%);
	line-height: 1.4;
	letter-spacing: .12em;
	background-color: #f2f1ef;
	cursor: pointer;
	transition: background-color .5s;
}
.rec_status > li.active > *,
.rec_status > li > *:hover {
	background-color: #f9edd9;
}
.rec_status > li .post {
	height: 4.6em;
	display: flex;
	flex-direction: column;
	justify-content: center;
	font-family: dnp-shuei-mincho-pr6n, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 147%;
	letter-spacing: .15em;
	box-sizing: border-box;
	padding: 1em .4em .8em;
}
.rec_status > li .post span {
	display: block;
	font-size: 80%;
}
.rec_status > li .status {
	color: #FFF;
	font-weight: bold;
	padding: .8em .2em 1.2em;
}
.rec_status > li .com_arw {
	position: absolute;
	font-size: 60%;
	left: 50%;
	bottom: 0;
	translate: -50% 50%;
}
.rec_status > li.btn_nur .status {background-color: #ffa084;}
.rec_status > li.btn_nur .com_arw {background-color: #ff785c;}
.rec_status > li.btn_rcp .status {background-color: #ffaa65;}
.rec_status > li.btn_rcp .com_arw {background-color: #ff8631;}
.rec_status > li.btn_tech .status {background-color: #d3aa65;}
.rec_status > li.btn_tech .com_arw {background-color: #c7933c;}

.rec_status > li.stop {pointer-events: none;}
.rec_status > li.stop .post {	color: #ada69a;}
.rec_status > li.stop .status {	background-color: #ada69a;}
.rec_status > li.stop .com_arw {	background-color: #847866;}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.rec_status {
	column-gap: 1.5%;
}
.rec_status > li > * {
	font-size: 2.5vw;
	letter-spacing: .08em;
	font-feature-settings: "halt";
}
.rec_status > li .post {
	font-size: 140%;
	letter-spacing: .12em;
}
}


/*---------------------------------------------------------
lead
---------------------------------------------------------*/
#lead .com_lead {
	margin-bottom: 1.5em;
}
#lead .com_lead > dt {
	margin-bottom: .2em;
}
#lead .com_lead > dd {
	text-align: center;
}



/*---------------------------------------------------------
message
---------------------------------------------------------*/
#message > div {
	background: linear-gradient(to top, rgba(255,255,255,1), rgba(255,255,255,0)) no-repeat left bottom;
	background-size: 100% 400px;
}
#message > div::before {
	position: absolute;
	content: "";
	background: linear-gradient(125.91deg, rgba(196,244,203,1) 0%, rgba(208,248,241,1) 100%);
	width: 100%;
	height: 80%;
	left: 0;
	bottom: 0;
	z-index: -1;
}
#message .abs_img {
	position: relative;
	max-width: max-content;
}
#message .copy {
	position: relative;
	font-size: min(300%,3.8vw);
	letter-spacing: .14em;
	line-height: 1.4;
	margin-bottom: 1em;
}
#message .copy div {
	display: inline-block;
	background-color: #fff;
	border-radius: 5px;
	padding: .5em .6em;
	margin-bottom: .4em;
	box-shadow: .5em .5em .5em rgba(0,0,0,0.15);
}
#message .copy div span {
	position: relative;
	display: inline-block;
	color: #47a789;
	font-size: 125%;
	line-height: 1;
	vertical-align: -0.05em;
	margin: 0 .3em;
}
#message .copy div span::before {
	position: absolute;
	content: "";
	background: radial-gradient(rgba(208,248,241,0) 0%, rgba(157,248,228,0.6) 100%);
	width: 1.6em;
	height: 1.6em;
	border-radius: 50%;
	left: 50%;
	top: 50%;
	translate: -50% -50%;
}
#message .sign {
	max-width: max-content;
	font-size: min(120%,2vw);
	letter-spacing: .12em;
	line-height: 1.5;
	margin-top: 2em;
	margin-left: auto;
}
#message .sign dt {
	margin-bottom: .8em;
}
#message .sign dd {
	display: flex;
	align-items: center;
	gap: .5em;
}
#message .sign dd img {
	width: 11.7em;
	margin: 0;
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
#message > div {
	padding-top: 60px;
}
#message .rec_title {
	text-align: left;
	margin-bottom: 16%;
}
#message .abs_img {
	position: absolute;
	width: 64vw;
	right: 0;
	top: 0;
}
#message p {
	max-width: 1110px;
	margin: 0 auto;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#message > div {
	padding-top: 5%;
}
#message .abs_img {
	width: 95%;
	margin-left: auto;
	margin-right: calc(50% - 50vw);
}
#message .copy {
	font-size: 125%;
	letter-spacing: .1em;
	margin-top: -3.6em;
}
#message p {
	font-size: 95%;
}
#message .sign {
	font-size: 100%;
	letter-spacing: .08em;
	margin-top: 1.5em;
}
}


/*---------------------------------------------------------
data
---------------------------------------------------------*/
#data > div {
	background-color: #1bc7a7;
}
#data .data_inbox {
	position: relative;
}
#data .data_wrap {
	display: grid;
	justify-content: space-between;
	grid-template-columns: repeat(3,31.5%);
}
#data .data_wrap > dl {
	word-break: keep-all;
	overflow-wrap: break-word;
	background-color: #fff;
	box-sizing: border-box;
	padding: 30px 8% 40px;
	border-radius: 1.2em;
	box-shadow: 0 1.8em 0 #00b196;
	margin-top: 60px;
}
#data .data_wrap > dl:first-of-type {
	margin-top: 0;
}
#data .data_wrap dt {
	position: relative;
	font-size: min(2vw,133%);
	letter-spacing: .1em;
	line-height: 1.4;
	font-weight: bold;
	padding-left: 1.4em;
	margin-bottom: 1em;
}
#data .data_wrap dt::before {
	position: absolute;
	font-family: 'fontello';
	content: '\e802';
	font-size: 85%;
	color: #99a3a6;
	left: 0;
	top: .1em;
}
#data .data_wrap dd {
	text-align: center;
	font-size: min(1.6vw,100%);
	font-weight: bold;
	line-height: 1.7;
	letter-spacing: .15em;
}
#data .data_wrap dd .data_img {
	position: relative;
	max-width: max-content;
	margin: 0 auto;
}
#data .data_wrap dd p {
	margin-top: 1.2em;
}
#data .data_wrap dd .data_img p {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
#data .data_wrap dd .num {
	font-size: min(2vw,166%);
}
#data .data_wrap dd .num span {
	font-size: 220%;
	font-family: "din-2014", sans-serif;
	font-weight: 600;
	font-style: normal;
	line-height: 1;
	vertical-align: -0.05em;
	margin-right: .08em;
}
#data .data_wrap .dt_year dt::before {color: #d4c34e;}
#data .data_wrap .dt_bgn dt::before {color: #8fd684;}
#data .data_wrap .dt_trial dt::before {color: #ffa1a5;}
#data .data_wrap .dt_bnf dt::before {color: #b4a6c5;}
#data .data_wrap .dt_mid dt::before {color: #64a1c4;}
#data .data_wrap .dt_vac dt::before {color: #7bcfed;}
#data .data_wrap .dt_hol dt::before {color: #71bec3;}
#data .data_wrap .dt_hour dt::before {color: #ffb77d;}

#data .data_wrap .dt_year ul {
	position: absolute;
	width: 100%;
	display: grid;
	grid-template-columns: 15% 55% 15% 15%;
	left: 0;
	bottom: 0;
}
#data .data_wrap .dt_year .num:nth-of-type(1) {	color: #e7c333;}
#data .data_wrap .dt_year .num:nth-of-type(2) {	color: #c8b31f;}
#data .data_wrap .dt_year .num:nth-of-type(3) {	color: #c4930d;}
#data .data_wrap .dt_year .num:nth-of-type(4) {	color: #d88745;}

#data .data_wrap .dt_bgn dd {
	padding-top: 1em;
}
#data .data_wrap .dt_bgn .num {
	position: relative;
	display: inline-block;
	color: #8fd684;
	font-size: min(4vw,330%);
	background: url(../images/recruit/icon_bgn.svg) no-repeat left center;
	background-size: contain;
	padding-left: 2.2em;
}
#data .data_wrap .dt_hol .data_img {margin-top: -16%;}

/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
#data > div {
	padding-bottom: min(12vw,170px);
}
#data .title {
	position: absolute;
	width: 30%;
	max-width: max-content;
	left: 0;
	top: -1%;
}
#data .data_wrap > dl:nth-of-type(1) {
	grid-column: 2/4;
}
#data .data_wrap > dl:nth-of-type(2) {
	grid-column: 1/3;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {

}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#data .title {
	width: 60%;
	margin: 0 auto 6%;
}
#data .data_wrap {
	grid-template-columns: repeat(2,49%);
}
#data .data_wrap > dl {
	padding: 4vw;
	border-radius: .8em;
	box-shadow: 0 4vw 0 #00b196;
	margin-top: 7vw;
}
#data .data_wrap > dl:nth-of-type(1),
#data .data_wrap > dl:nth-of-type(2) {
	grid-column: 1/3;
}
#data .data_wrap dt {
	font-size: 95%;
	letter-spacing: .05em;
}
#data .data_wrap dd {
	font-size: 2.5vw;
	letter-spacing: .05em;
	line-height: 1.5;
}
#data .data_wrap dd .num {
	font-size: 3vw;
}

#data .data_wrap .dt_bgn .num {
	font-size: 5.5vw;
}
}
/*data: stf_col
---------------------------------------------------------*/
#data .data_wrap .stf_col {
	display: grid;
	justify-content: space-between;
	grid-template-columns: repeat(3,31%);
}
#data .data_wrap .stf_col > li {
	text-align: center;
	font-size: min(1.7vw,113%);
	line-height: 1.5;
	white-space: nowrap;
	background-color: #f6f5f4;
	box-sizing: border-box;
	padding: 1em 5%;
	border-radius: 5px;
}
#data .data_wrap .stf_col img {
	width: 2.95em;
	margin-bottom: .8em;
}
#data .data_wrap .stf_col .post {
	display: inline-block;
	color: #FFF;
	padding: .2em 2em;
	border-radius: .8em;
	background-color: #8b99ac;
	margin-bottom: .5em;
}
#data .data_wrap .stf_col .num {
	color: #8b99ac;
	font-size: 147%;
}
#data .data_wrap .stf_col > li:nth-of-type(2) .num {	color: #ffa084;}
#data .data_wrap .stf_col > li:nth-of-type(2) .post {background-color: #ffa084;}
#data .data_wrap .stf_col > li:nth-of-type(3) .num {	color: #ffaa65;}
#data .data_wrap .stf_col > li:nth-of-type(3) .post {background-color: #ffaa65;}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#data .data_wrap .stf_col > li {
	font-size: 90%;
}
}


/*---------------------------------------------------------
work
---------------------------------------------------------*/
#work .box_rcp .wk_index1 span {color: #ff8631;}
#work .box_rcp .com_ccllist > li::before {color: #ffaa65;}
#work .box_nur .wk_index1 span {color: #ff785c;}
#work .box_nur .com_ccllist > li::before {color: #ffa084;}
#work .box_nur .wk_flow {background-color: #ffa084;}
#work .box_nur .wk_index2 {background-color: #ff785c;}
#work .box_nur .tbl_sche th .time {color: #ff785c; background-color: #ffe9db;}
.box_nur .wk_lead {
	background-image: url(../images/recruit/work_bg_nur@2x.png);
	background-color: #fff1e5;
}

.wk_inbox {
	margin-bottom: 5.8%;
}
.wk_inbox:last-of-type {
	margin-bottom: 0;
}
/* index */
.wk_index1 {
	position: relative;
	font-size: min(366%,5vw);
	letter-spacing: .14em;
	line-height: 1.5;
	margin-bottom: .3em;
}
.wk_index2 {
	position: absolute;
	color: #FFF;
	font-size: min(200%,2.8vw);
	letter-spacing: .14em;
	line-height: 1.5;
	background-color: #ff8631;
	clip-path: polygon(0 0, 100% 0, calc(100% - 0.7em) 50%, 100% 100%, 0 100%);
	padding: .6em 1.6em;
	left: 0;
	top: 0;
	translate: 0 -40%;
	z-index: 1;
}
.wk_index2 small {
	font-size: 66%;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.wk_inbox {
	margin-bottom: 8%;
}
/* index */
.wk_index1 {
	font-size: 150%;
}
.wk_index2 {
	font-size: 120%;
	letter-spacing: .1em;
}
}
/*work: wk_lead
---------------------------------------------------------*/
.wk_lead {
	position: relative;
	width: 96%;
	background: #fff9e7 url(../images/recruit/work_bg_rcp@2x.png) no-repeat right top;
	background-size: 58% auto;
	box-sizing: border-box;
	padding: 80px 8.5%;
	margin: 0 auto;
}
.wk_lead .abs_txt {
	position: absolute;
	width: 35%;
	max-width: max-content;
	left: 5%;
	top: 0;
	translate: 0 -50%;
}
.wk_lead .com_ccllist.col2 {
	max-width: 450px;
	display: grid;
	grid-template-columns: repeat(2,auto);
	grid-auto-flow: row;
}
.wk_lead .com_ccllist > li {
	font-size: min(2vw,126%);
	font-weight: bold;
}
.wk_lead .com_ccllist > li span {
	display: block;
	font-size: 78%;
	font-weight: normal;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.wk_lead {
	padding: 10% 8%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.wk_lead {
	background-size: 65% auto;
	padding: 15% 8%;
}
.wk_lead .abs_txt {
	width: 60%;
}
.wk_lead .com_ccllist > li {
	font-size: 90%;
}
}
/*work: wk_flow
---------------------------------------------------------*/
.wk_flow {
	position: relative;
	background-color: #ffaa65;
	box-sizing: border-box;
	padding: 80px 5%;
}
/* hours */
.wk_flow .hours {
	position: relative;
	text-align: center;
	color: #FFF;
	font-weight: bold;
	letter-spacing: .12em;
	word-break: keep-all;
	overflow-wrap: break-word;
}
.wk_flow .hours::before {
	position: absolute;
	content: "";
	background: url(../images/recruit/work_icon.svg) no-repeat center center;
	background-size: contain;
	width: 42%;
	height: 8.4em;
	left: 0;
	top: 0;
	translate: -15% -50%;
}
.wk_flow .hours dt {
	font-size: min(166%,2.4vw);
	letter-spacing: .14em;
	padding-bottom: .8em;
	margin-bottom: 1em;
	border-bottom: 1px solid currentColor;
}
.wk_flow .hours dt span {
	display: block;
	font-size: 64%;
}
/* tbl_sche */
.tbl_sche {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0 5px;
	letter-spacing: .1em;
	line-height: 1.4;
	border-radius: 5px;
}
.tbl_sche th,
.tbl_sche td {
	position: relative;
	box-sizing: border-box;
	background-color: #fff;
	padding: .9em;
}
.tbl_sche th {
	width: 48%;
	text-align: left;
	font-size: min(1.6vw,126%);
	font-weight: bold;
	word-break: keep-all;
	overflow-wrap: break-word;
	border-radius: 5px 0 0 5px;
}
.tbl_sche th > div {
	display: flex;
	align-items: center;
}
.tbl_sche th .time {
	width: 6.6em;
	text-align: center;
	color: #ff8631;
	background-color: #ffebb4;
	white-space: nowrap;
	padding: .2em .1em;
	border-radius: .8em;
	margin-right: 1em;
}
.tbl_sche td {
	border-radius: 0 5px 5px 0;
}
/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {
.wk_flow > div {
	max-width: 1100px;
	display: grid;
	justify-content: space-between;
	align-items: center;
	grid-template-columns: 28% 67%;
	margin: 0 auto;
}
/* tbl_sche */
.tbl_sche {
	max-width: 710px;
	margin-left: auto;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.wk_flow {
	padding: 60px 5%;
}
/* hours */
.wk_flow .hours {
	line-height: 1.6;
}
/* tbl_sche */
.tbl_sche {
	letter-spacing: .08em;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.wk_flow {
	padding: 15% 5% 10%;
}
/* hours */
.wk_flow .hours {
	line-height: 1.8;
	margin-bottom: 6%;
}
.wk_flow .hours::before {
	width: 30%;
	translate: 10% -40%;
}
.wk_flow .hours dt {
	font-size: 120%;
	letter-spacing: .1em;
}
.wk_flow .hours dd {
	font-size: 90%;
}
/* tbl_sche */
.tbl_sche {
	font-size: 90%;
	letter-spacing: .06em;
}
.tbl_sche th {
	width: 40%;
	text-align: center;
	font-size: 105%;
}
.tbl_sche th > div {
	display: block;
}
.tbl_sche th .time {
	margin-right: 0;
	margin-bottom: .5em;
}
/* .tbl_sche th,
.tbl_sche td {
	display: block;
	width: 100%;
}
.tbl_sche th {
	font-size: 105%;
	padding-bottom: 0;
	border-radius: 5px 5px 0 0;
}
.tbl_sche td {
	border-radius: 0 0 5px 5px;
} */
}


/*---------------------------------------------------------
point
---------------------------------------------------------*/
#point > div {
	 position: relative;
}
#point > div::before {
	position: absolute;
	content: "";
	background: url(../images/recruit/poi_bg@2x.jpg) no-repeat center center;
	background-size: cover;
	width: 100%;
	height: min(42vw,617px);
	left: 0;
	top: 0;
	z-index: -1;
}
#point .rec_title {
	margin-bottom: 5em;
}
#point .rec_title,
#point .rec_title .ft_gra {
	color: #FFF;
}
#point .cln_inbox {
	position: relative;
	background-color: #fff;
	box-sizing: border-box;
	padding: 8% 5% 0;
	border-radius: 10px;
}
#point .fukidashi {
	position: absolute;
	color: #FFF;
	width: 70%;
	max-width: 25em;
	text-align: center;
	font-size: min(200%,2.8vw);
	letter-spacing: .14em;
	line-height: 1.4;
	background-color: #1bc7a7;
	border-radius: 5px;
	box-sizing: border-box;
	padding: .5em;
	left: 50%;
	top: 0;
	translate: -50% -40%;
}
#point .fukidashi::before {
	position: absolute;
	content: "";
	background-color: inherit;
	width: .7em;
	height: .7em;
	border-radius: 7px 0;
	rotate: 45deg;
	transform: skew(calc((90deg - 60deg) / 2) ,calc((90deg - 60deg) / 2));
	clip-path: polygon(100% 0, 100% 100%, 0 100%);
	translate: -50% -50%;
	left: 50%;
	top: 100%;
}
#point .fukidashi + p {
	width: 100%;
	text-align: center;
	font-size: min(120%,2vw);
	letter-spacing: .14em;
	margin-bottom: 8%;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#point > div::before {
	height: 60vw;
}
#point .rec_title {
	margin-bottom: 3em;
}
#point .cln_inbox {
	padding: 15% 0 0;
}
#point .fukidashi {
	font-size: 110%;
	letter-spacing: .1em;
}
#point .fukidashi + p {
	font-size: 100%;
	letter-spacing: .06em;
	box-sizing: border-box;
	padding: 0 4%;
	margin-bottom: 12%;
}
}
/*point: voi_list
---------------------------------------------------------*/
#point .voi_list > li {
	display: grid;
	justify-content: space-between;
	align-items: flex-start;
	grid-template-columns: 22% 72%;
}
#point .voi_list > li:nth-of-type(n+2) {
	margin-top: 6.6%;
}
#point .voi_list {
	max-width: 900px;
	margin: 0 auto;
}
#point .voi_list dl {
	position: relative;
	font-size: min(1.8vw,112%);
	font-weight: bold;
	line-height: 1.8;
	letter-spacing: .1em;
	background-color: #f4f5f5;
	padding: 3em 5% 2.5em;
	border-radius: 1.2em;
}
#point .voi_list dl dt {
	position: absolute;
	display: inline-block;
	color: #FFF;
	font-size: 117%;
	line-height: 1.6;
	background-color: #99a3a6;
	padding: .5em 2em;
	border-radius: 1em;
	top: -1em;
}
#point .voi_list dl dt::before {
	position: absolute;
	content: "";
	background-color: inherit;
	width: 1.2em;
	height: 1.2em;
	border-radius: 7px 0;
	transform: skew(calc((90deg - 40deg) / 2) ,calc((90deg - 40deg) / 2));
	clip-path: polygon(100% 0, 100% 100%, 0 100%);
	translate: 0 -80%;
	top: 100%;
}

#point .voi_list > li:nth-of-type(odd) dl dt {
	left: -1em;
}
#point .voi_list > li:nth-of-type(odd) dl dt::before {
	rotate: 90deg;
	left: .8em;
}
#point .voi_list > li:nth-of-type(even) {
	grid-template-columns: 72% 22%;
}
#point .voi_list > li:nth-of-type(even) dl {
	background-color: #eaffe6;
	order: -1;
}
#point .voi_list > li:nth-of-type(even) dl dt {
	background-color: #64d871;
	right: -1em;
}
#point .voi_list > li:nth-of-type(even) dl dt::before {
	right: .8em;
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
#point .voi_list > li {
	width: 95%;
}
#point .voi_list dd {
	text-align: center;
	word-break: keep-all;
	overflow-wrap: break-word;
}
#point .voi_list > li:nth-of-type(odd) {
	margin-left: auto;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#point .voi_list > li {
	grid-template-columns: 27% 70%;
}
#point .voi_list > li:nth-of-type(n+2) {
	margin-top: 10%;
}
#point .voi_list > li:nth-of-type(even) {
	grid-template-columns: 70% 27%;
}
#point .voi_list dl {
	font-size: 100%;
	line-height: 1.6;
	letter-spacing: .05em;
	padding: 2.5em 10% 2em;
}
#point .voi_list dl dt {
	font-size: 105%;
	padding: .4em 1.5em;
}
}


/*---------------------------------------------------------
person
---------------------------------------------------------*/
#person > div {
	color: #FFF;
	background-color: #5dbde1;
	padding-bottom: 70px;
}
#person > div::before {
	position: absolute;
	content: "";
	background-color: inherit;
	width: 100%;
	height: min(15vw,220px);
	left: 0;
	top: calc(100% - 1px);
}
#person dl {
	padding-top: 0;
}
#person dt {
	line-height: 1.7;
	word-break: keep-all;
	overflow-wrap: break-word;
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
.psn_inbox {
	display: grid;
	justify-content: space-between;
	grid-template-columns: 30% 66%;
}
#person .title {
	position: relative;
	z-index: 2;
}
#person dd {
	max-width: 740px;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#person .title {
	width: 60%;
	margin: 0 auto 6%;
}
#person dt {
	text-align: center;
	font-size: 140%;
}
}
/*psn_slider
---------------------------------------------------------*/
.psn_slider li {
	width: 35vw;
	max-width: max-content;
	margin-right: 20px;
}
.psn_slider li:nth-of-type(even) {
	margin-top: min(4%,60px);
}
.psn_slider img {
	border-radius: 3.8% / 5.7%;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.psn_slider li {
	width: 60vw;
	margin-right: 10px;
}
}


/*---------------------------------------------------------
guideline
---------------------------------------------------------*/
#guideline .rec_status:has(.btn_nur.stop) ~ .gdl_wrap #tab-nur,
#guideline .rec_status:has(.btn_rcp.stop) ~ .gdl_wrap #tab-rcp,
#guideline .rec_status:has(.btn_tech.stop) ~ .gdl_wrap #tab-tech {
	display: none !important;
}
/*guideline: tbl_gdl
---------------------------------------------------------*/
.tbl_gdl {
	width: 100%;
	border-collapse: collapse;
	line-height: 1.8;
	border-top: 1px dashed #99a3a6;
}
.tbl_gdl tr {
	border-bottom: 1px dashed #99a3a6;
}
.tbl_gdl th,
.tbl_gdl td {
	box-sizing: border-box;
	padding: 2em 3%;
}
.tbl_gdl th {
	width: 22%;
	color: #99a3a6;
	text-align: left;
	font-size: 112%;
	font-weight: bold;
	vertical-align: top;
	padding-right: 0;
}
.tbl_gdl td {
	padding-left: 0;
}
.tbl_gdl td > * {
	margin-bottom: 1em;
}
.tbl_gdl td address {
	font-size: 100%;
}
.tbl_gdl td dl dd {
	margin-bottom: .5em;
}
.tbl_gdl td > *:last-child,
.tbl_gdl td dd:last-of-type {
	margin-bottom: 0;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.tbl_gdl th {
	width: 25%;
	font-size: 105%;
}

}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.tbl_gdl {
	line-height: 1.5;
}
.tbl_gdl th,
.tbl_gdl td {
	display: block;
	width: 100%;
	padding: 1.2em 3%;
}
.tbl_gdl th {
	font-size: 105%;
	padding-bottom: 0;
}
.tbl_gdl td {
	font-size: 95%;
	padding-top: .5em;
}
}


/*---------------------------------------------------------
entry
---------------------------------------------------------*/
#entry > div {
	color: #FFF;
	background-color: #46666b;
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {

}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {

}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {


}


/*---------------------------------------------------------

---------------------------------------------------------*/

/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {

}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {

}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {


}