@charset "utf-8";
/* CSS Document */

.h-r-box.company{
	width: 60%;
	max-width: 525px;
	float: right;
	margin-top: 5px;
}
.h-r-box.company #h-txt{
	font-size: 14px;
	color: #f79800;
	font-weight: bold;
	position: relative;
}
.h-r-box.company #h-txt:before {
	position: absolute;
	content: "";
	border-bottom: 1px solid #f79800;
	top: 14px;
	width: 100%;
}
.h-r-box.company #h-txt span{
	background: #fff;
	display: inline-block;
	z-index: 2;
	position: relative;
	padding-right: 8px;
}
.h-r-box.company #h-c-tel>img{
	max-width: 330px;
	width: 66%;
}
.h-r-box.company #h-contact-box{
	width: 32%;
	max-width: 177px;
	float: right;
	margin-top: 0;
}
.h-r-box.company #h-contact-box ul{
	display: block;
}
.h-r-box.company #h-contact-box ul li{
	width: 100%;
}
.h-r-box.company #h-contact-box ul li span{
	padding-left: 30px;
	font-size: 14px;
}
.h-r-box.company #h-contact-box ul li:last-child a::after{
	top: 11px;
	width: 20px;
	height: 15px;
	left: -90px;
}
#h-contact-box ul li a {
	align-items: center;
	height: 37px;
}
.company #f-tel p{
	color: #f79800;
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 7px;
}
.company #f-contact-box ul li {
	width: 100%;
}
#f-contact-box ul li a {
	align-items: center;
	width: 100%;
	max-width: 100%;
	padding: 25px 0 17px;
	font-size: 16px;
}
#f-contact-box ul li a span{
	display: inline-block;
	padding-left: 45px;
	background: url(../images/common/icon_contact_03.svg) no-repeat;
	background-size: 70% 70%;
	background-position: -31px center;
}
.company #f-contact-box ul li a::after{
	display: none;
}
@media screen and (min-width: 1000px) {
	.company #f-tel p{
		text-align: justify;
		text-justify: inter-ideograph;
		text-align-last: justify;
	}
}
@media screen and (max-width: 767px) {
	.h-r-box.company #h-c-tel>img, .h-r-box.company #h-txt{
		display: none;
	}
	.h-contact-box-sp {
		width: 70px;
		height: 70px;
		right: 70px;
		position: absolute;
		top: 0;
		background: #6FBA2D;
	}
	.h-contact-box-sp::after{
		content: "";
		position: absolute;
		background: url(../images/common/icon_contact_03.svg);
		width: 28px;
		height: 22px;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		margin: auto;
	}
	#f-contact-box ul li a{
		padding: 32px 0 30px;
		font-size: 22px;
	}
	#f-contact-box ul li a span{
		padding-left: 45px;
		background-size: 70% 70%;
		background-position: -47px center;
		bottom: 0;
	}
}
/*---------------------------------------------
conccept
---------------------------------------------*/
.company-trn .inner .concept{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	/* border: 5px solid #6fba2d; */
	background: #eaeaeaab;
	margin-bottom: 20px;
}
#subpage .company-trn  h3{
	color: #88c159;
	text-align: center;
	font-size: 1.5em;
}

.company-trn .concept .img{
	width: 35%;
}
.company-trn .concept .img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.company-trn .concept .txtbox{
	width: 65%;
	padding: 30px 30px 15px 30px;
}

.company-trn .concept .gre-bold{
	color: #53a048;
	font-size: 23px;
	font-weight: bold;
	margin-bottom: 15px;
}

.company-trn .concept p.red{
	font-weight: bold;
}

.company-trn .concept .txtbox > .txt{
	margin-bottom: 15px;
}

.company-trn .worry{
	border: 1px solid #b3b3b3;
	padding: 5% 3%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.company-trn .worry .box:first-child{
	width: 74%;
}

.company-trn .worry .box:last-child{
	width: 21%;
}

.company-trn .worry ul li{
	border-bottom: 1px dotted #b3b3b3;
	padding-left: 20px;
	position: relative;
	line-height: 2;
}

.company-trn .worry ul li span:before{
	content: '\f058 ';
	display: block;
	position: absolute;
	top: 3px;
	left: 0px;
	font-family: FontAwesome;
	color: #88c159;
	font-size: 18px;
}

.company-trn .yel {
	margin-top: 20px;
}

.company-trn .yel dl {
	background: #eaeaeaab;
	padding: 3%;
}

.company-trn .yel dl dt{
	text-align: center;
	font-weight: bold;
	color: #53a048;
	font-size: 20px;
	margin-bottom: 10px;
}
.company-trn .org{
	text-align: center;
	background: #f7bd01;
	color: #fff;
	padding: 5px;
	font-size: 18px;
}

.company-trn .org span{
	font-size: 22px;
	letter-spacing: 1px;
}

.company-trn .summary{
	position: relative;
	text-align: center;
}

.company-trn .summary p.red:before{
	content: '';
	display: block;
	position: absolute;
	width: 40px;
	height: 34px;
	top: -10px;
	left: 49%;
	background: url(../images/training/gre-under.png);
}

.company-trn .summary p.red{
	padding-top: 30px;
	font-weight: bold;
	font-size: 20px;
}



@media screen and (min-width: 767px) {
	.company-trn .concept p.red{
		font-size: 18px !important;
	}
}

@media screen and (max-width: 767px) {
	.company-trn .concept .txtbox, .company-trn .concept .img{
		width: 100%;
	}
	.company-trn .concept .img img{
		width: 767px;
		height: 216px;
	}
	.company-trn .concept .gre-bold{
		font-size: 18px;
		margin-bottom: 10px;
		line-height: 1.3;
	}
	.company-trn .concept .txtbox > .txt{
		margin-bottom: 5px;
	}
	.company-trn .concept .txtbox{
		width: 100%;
		padding: 15px 15px 5px 15px;
	}
	.company-trn .concept p.red{
		font-size: 16px;
	}
	.company-trn .worry .box:first-child{
		width: 100%;
	}
	.company-trn .worry .box:last-child{
		width: 60%;
		margin: 0 auto;
		margin-top: 20px;
	}
	.company-trn .org{
		font-size: 14px;
	}
	.company-trn .org span {
		font-size: 18px;
	}
	.company-trn .yel dl dt{
		font-size: 16px;
		line-height: 1.3;
	}
	.company-trn .summary p.red {
		font-size: 18px;
	}
}

/*---------------------------------------------
trn-content
---------------------------------------------*/

.trn-content ul li{
	display: flex;
	flex-wrap: wrap;
	align-content: stretch;
	justify-content: space-between;
	padding: 40px 0;
	/* border-bottom: 1px solid #b3b3b3; */
}

.trn-content ul li:first-child{
	padding-top: 0;
}

.trn-content ul li figure{
	width: 40%;
}

.trn-content ul li .txtarea{
	width: calc( 100% - 45% );
}

.trn-content ul li .txtarea .gre{
	font-size: 23px;
	color: #88c159;
	font-weight: bold;
}

.trn-content ul li .txtarea .txt{
	display: block;
	padding: 10px 0;
	line-height: 1.375;
}

.trn-content ul li .txtarea a{
	font-size: 16px;
	color: #fff;
	font-weight: bold;
	position: relative;
	float: right;
	background: #53a048;
	border-radius: 5px;
	text-align: center;
	padding: .3em 1.5em;
	margin-top: 20px;
}

.trn-content ul li .txtarea a span:after{
	content: '\f105 ';
	display: inline-block;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	position: relative;
	top: -2px;
	right: -8px;
	font-family: FontAwesome;
	color: #fff;
	font-size: 12px;
	text-align: center;
	font-weight: normal;
	background: #6FBA2D;
	line-height: 16px;
}

.trn-content .list p.txt{
	margin-top: 20px;
}

@media screen and (max-width: 767px) {
	.trn-content ul li .txtarea .gre {
		font-size: 18px;
	}
	.trn-content ul li figure,
	.trn-content ul li .txtarea {
		width: 100%;
		line-height: 1.3;
	}
	.trn-content ul li figure{
		margin-bottom: 10px;
	}
	.trn-content ul li .txtarea a {
		font-size: 14px;
	}
}

/*---------------------------------------------
trn-flow
---------------------------------------------*/
.trn-flow .inner p.bold{
	font-weight: 500;
}

.trn-flow .step{
	display: flex;
	flex-wrap: wrap;
	align-content: stretch;
	justify-content: space-between;
	margin-top: 15px;
}

.trn-flow .step dl.stwrap{
	/* border: 1px solid #6fba2d; */
	width: 18%;
	text-align: center;
	box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.1);
}

.trn-flow .step dt{
	background: #cbcbcb;
	text-align: center;
	padding: 10px;
}
.trn-flow .step dt img{
	filter: grayscale(1);
}

.trn-flow .step dd {
	line-height: 1.3;
	padding: 20px 7px;
}

.trn-flow .step dd .stbold{
	font-size: 20px;
	margin-bottom: 15px;
	font-weight: 600;
	color: #444;
}

.trn-flow .step dd .stbold span{
	font-size: 14px;
}

.trn-flow .step dd span{
	font-size: 16px;
}

.trn-flow .step dd a{
	color: #6fba2d;
	position: relative;
	font-weight: bold;
}

.trn-flow .step dd a span:after{
	content: '\f105 ';
	display: inline-block;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	position: relative;
	top: -2px;
	right: -8px;
	font-family: FontAwesome;
	color: #fff;
	font-size: 12px;
	text-align: center;
	font-weight: normal;
	background: #6FBA2D;
	line-height: 16px;
}

.trn-flow .step .ribtn{
	padding-top: 100px;
}

.dlbtn a{
	position: relative;
	background: #53a048;
	border-radius: 5px;
	display: block;
	width: 300px;
	height: 50px;
	margin-bottom: 14px;
	text-align: center;
	font-size: 15px;
	font-weight: bold;
	color: #fff;
	line-height: 50px;
}

.dlbtn a::after{
	content: "";
	display: inline-block;
	background: url(../images/subpage/icon_pdf.png);
	width: 19px;
	height: 12px;
	position: relative;
	top: 0;
	bottom: 0;
	right: -64px;
	margin: auto;
}

.trn-flow .stnote .sample{
	display: flex;
	flex-wrap: wrap;
	align-content: stretch;
}
.plan .btn a{
	width: 300px;
}
.trn-flow .stnote .sample dl:first-child{
	margin-right: 20px;
}

.trn-flow .stnote .sample dl{
	margin-top: 5px;
	text-align: center;
}
	@media screen and (min-width: 769px) {
		.trn-flow .stnote .sample dl{
			width: 48%;
			}
	}
.trn-flow .stnote .sample .dlbtn{
	margin-top: 10px;
}

.trn-flow .stnote .txt{
	margin-top: 20px;
	margin-bottom: 5px;
}

.trn-flow .check ul.txt {
	list-style: disc outside;
	text-indent: -6px;
	padding-left: 20px;
	margin-bottom: 0;
	clear: both;
	padding-top: 1em;
}
.trn-flow .check ul li{
	margin-bottom: 5px;
}

.trn-flow .check .dl01 dt{
	width: fit-content;
	border: none;
	text-align: left;
	/* color: #fff; */
	font-weight: 600;
	/* background: #88c159; */
	margin-bottom: 10px;
	border-bottom: 1px solid;
	padding: 0 0.5em;
	line-height: 1.7;
	border-left: 8px solid;
}

.trn-flow .check .dl01.fst {
	margin-top: 30px;
}


@media screen and (max-width: 1000px) {
	.trn-flow .step dl.stwrap {
		width: 100%;
	}
	br .pc ,
	.trn-flow .step .ribtn{
		display: none;
	}
	.trn-flow .step dt img{
		width: 30px;
	}
	.trn-flow .step dd .stbold {
		font-size: 18px;
		margin-bottom: 0px;
	}
	.trn-flow .step dd span {
		font-size: 14px;
	}
}

@media screen and (min-width: 768px) {
	.trn-flow .check .fLpc,
	.trn-contact dl dd.fLpc{
		float: left;
		width: 49%;
	}
	.trn-flow .check .fRpc,
	.trn-contact dl dd.fRpc{
		float: right;
		width: 49%;
	}
	.trn-flow .check .dl01.fst dd{
		padding-top: 5%;
		width: 60%;
	}
}

@media screen and (max-width: 767px) {
	.dlbtn a{
		margin: 0 auto;
	}
	.trn-flow .stnote .sample{
		display: block;
	}
	.trn-flow .stnote .sample dl:first-child{
		margin-right: 0;
	}
	.trn-flow .check .dl01 dt {
		width: 250px;
	}
}

/*---------------------------------------------
contact
---------------------------------------------*/

.trn-contact{
	margin-top:50px;
}

.trn-contact dl{
	max-width: 730px;
	margin: 0 auto;
	border: 1px solid #6fba2d;
	padding-bottom: 100px;
}

.trn-contact dt{
	border-bottom: 1px solid #6fba2d;
	background: #e7f4e4;
	text-align: center;
	padding: 10px;
	font-size: 22px;
	font-weight: bold;
	color: #53a048;
}

.trn-contact dd{
	text-align: center;
	margin-top: 15px;
	margin-bottom: 15px;
}

.trn-contact dd.fLpc{
	font-size: 14px;
	border-right: 1px solid #6fba2d;
}
.right-nav{
	z-index: 10;
}
@media screen and (min-width: 768px) {
	.right-nav{
		max-width: 133px;
		height: 91px;
		right: 0;
		width: 13%;
	}
	.right-nav #h-contact-box {
		width: 100%;
		height: 91px;
		margin: 0;
	}
	.right-nav #h-contact-box ul li {
		width: 100%;
	}
	.right-nav #h-contact-box ul li a {
		height: 100%;
		padding-top: 40px;
		text-align: center;
		line-height: 1.5;
		padding-bottom: 10px;
	}
	.right-nav #h-contact-box ul li a:after {
		top: 15px;
	}
}

@media screen and (max-width: 767px) {
	.trn-contact dt{
		font-size: 18px;
	}
	.trn-contact dd.fLpc{
		border-right: 0;
		margin-bottom: 0;
	}
	.trn-contact dd.fRpc{
		margin-top: 0;
	}
	.right-nav{
		width: 100%;
		background: #e7f4e4;
		position: fixed;
		bottom: 0;
	}
	.right-nav #h-contact-box{
		display:block;
	}
	.right-nav #h-contact-box {
		width: 100%;
		margin: 0;
		float: none;
		max-width: 100%;
	}
	.right-nav #h-contact-box ul {
		width:100%;
		height:72px;
	}
	.right-nav #h-contact-box ul li {
		width: 100%;
		display: block;
	}
	.right-nav #h-contact-box ul li a {
		height: 100%;
		text-align: center;
		line-height: 1.5;
		background: none;
		width: 100%;
		margin: 0;
		padding: 20px 0;
		font-size: 22px;
		position: relative;
	}
	.right-nav #h-contact-box ul li a span{
		color:#6fba2d;
		display: inline-block;
		position:relative;
		vertical-align: middle;
		padding-left: 50px;
		font-size: 16px;
	}
	.right-nav #h-contact-box ul li a:after {
		display: none;
	}
	.right-nav br{
		display:none;
	}
	.right-nav #h-contact-box ul li a span:after{
		content:"";
		position:absolute;
		width:35px;
		height:26px;
		left:0;
		top: -3px;
		background: url(../images/common/icon_contact_03_g.svg);
	}
}

.achievement-container {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #e2a241;  /* オレンジ背景 */
	padding: 20px;
	gap: 15px;
	flex-wrap: wrap;
}

.achievement-box {
	color: white;  /* 白文字 */
	padding: 10px 15px;  /* 余白を狭く調整 */
	text-align: center;
	flex: 1 1 300px;
	font-size: 18px;  /* フォントサイズを大きく */
	font-weight: bold;  /* 強調 */
}
.achievement-box p{margin-bottom:0;
}

.arrow {
	font-size: 40px;  /* 矢印を大きく */
	color: white !important;  /* 矢印を白色に強制設定 */
}
@media screen and (min-width: 769px) {
.achievement-container{float: left;width: 120%;}}

/* レスポンシブ対応: スマホでは縦並び & 調整 */
@media (max-width: 768px) {
	.achievement-container {
		flex-direction: column;
	}

	.achievement-box {
		flex: 1 1 100%;
		padding: 10px 5px;  /* スマホ時の余白調整 */
		font-size: 18px;    /* スマホでも大きめのフォント */
	}

	.arrow {
		transform: rotate(90deg);  /* 矢印を下向きに */
		margin: 10px 0;
	}
}
@media screen and (min-width: 768px) {
	.trn-flow .check .dl01.fst dd {
			width: 70%;
			margin-inline: auto;
	}
}