@charset "utf-8";

/*-------------------------------
	キービジュアル
-------------------------------*/

.Keyvisual{
	background-image: url(../images/about/bg_keyvisual.jpg);
    background-image: image-set(url(../images/about/bg_keyvisual.jpg) 1x, url(../images/about/bg_keyvisual@2x.jpg) 2x);
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

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

	.Keyvisual{
		background-image: url(../images/about/sp_bg_keyvisual.jpg);
		background-image: image-set(url(../images/about/sp_bg_keyvisual.jpg) 1x, url(../images/about/sp_bg_keyvisual@2x.jpg) 2x);
	}

}


/*-------------------------------
	ページ内リンク　Tm-intro
-------------------------------*/
.Tm-intro{
	padding-top: 0;
}
.C-title__jp.Tm-intro__title__jp1{
	margin-bottom: 0.4em;
	color: var(--blackcolor);
}
.Tm-intro__title__img{
	width: 29.84rem; /*37.3rem;*/
		max-width: 100%;
}
.Tm-intro__list__container {
    width: 100%;
    position: relative;
}

/* メニュー全体のスタイル */


/* PC（768px以上） */
@media screen and (min-width: 769px) {
	.Tm-intro__list {
	}
	
	.Tm-intro__list li.Tm-Parent_item{
		width: 100%;
	}
    /* サブメニュー */
	.Tm-Child-Menu {
		width: 100%;
		display: flex;
			justify-content: center;
			align-items: flex-start;
			flex-wrap: wrap;
		row-gap: 3rem;
	}
    .Tm-Child-Menu li:not(:nth-of-type(4n)){
		margin-right: 2.6rem;
	}
    /*.Tm-Child-Menu li:not(:nth-last-of-type(-n+4)){
		margin-bottom: 3rem;
	}*/
    .Tm-Child-Menu li a {
        padding: 0.35em 1.3em;
        background: var(--bg-bluecolor);
        border-radius: 9999px;
        font-size: 1.8rem; /* 2rem;*/
			color: var(--maincolor);
			line-height: 1.3;
			letter-spacing: 0;
			font-weight: 700;
        display: inline-block;
    }
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){
	.Tm-intro{
		padding-top: 9rem;
        padding-bottom: var(--padding-topbottom);
	}
	.Tm-intro .C-title{
		margin-bottom: 7rem
	}
	.C-title__jp.Tm-intro__title__jp1{
		margin-bottom: 0.1em;
	}
	.Tm-intro__title__img{
		width: 40rem;
	}
	.Tm-intro__list__container{
		width: 100%;
		position: relative;
	}

	/*SPのみプルダウン*/
	.Tm-Parent_item{
		width: 90%;
			margin-left: auto;
			margin-right: auto;
        padding-block: 0.8em;
        border-radius: 5rem;
			background: var(--bg-bluecolor);
	}
		.Tab_trigger {
			width: 100%;
			padding-inline: 0.5em;
			font-size: 3.2rem;
				color: var(--maincolor);
				line-height: 1.3;
				font-weight: 700;
				text-align: center;
			display: inline-block;
			position: relative;
		}
			.Tab_trigger::after{
				width: 1.75rem;
				height: 1.75rem;
					border-right: 3px solid var(--maincolor);
					border-bottom: 3px solid var(--maincolor);
				position: absolute;
					right: 3rem;
					top: 45%;	
					transform: translateY(-50%) rotate(45deg);
					-webkit-transform: translateY(-50%) rotate(45deg);
				display: block;
				content: "";
			}
	.Tm-Child-Menu {
		width: 100%;
		display: none;
			transition: opacity 0.3s ease, transform 0.3s ease;
		max-height: 0;
		overflow: hidden;
	}
		.Tm-Child-Menu.show {
			display: block;
			max-height: 1000px; /* 十分大きな高さでメニューが完全に表示されるように */
		}
		.Tm-Child-Menu li + li{
			margin-top: 1rem;
		}
	.Tm-Child-Menu li a{
		width: 100%;
		padding-inline: 0.5em;
        font-size: 3.2rem;
			color: var(--maincolor);
			line-height: 1.3;
			font-weight: 700;
			text-align: center;
        display: inline-block;
	}
	

}


/*-------------------------------
	背景部
-------------------------------*/
.Tm-Vision.bg-radiusCut{
		background: #fff;
	overflow: hidden;
}
	.Tm-Vision.bg-radiusCut::before{
			background: var(--bg-graycolor);
	}
	.Tm-Vision::after{
		width: 50.88rem; /* 63.6rem;*/
		height: 42.4rem; /*53rem;*/
		background-image: url(../images/company/vision-img02_bg.png);
		background-image: image-set(url(../images/company/vision-img02_bg.png) 1x, url(../images/company/vision-img02_bg@2x.png) 2x);
		background-size: contain;
			background-position: center center;
			background-repeat: no-repeat;
		position: absolute;
			right: 0;
			bottom: 0;
		display: block;
		content: "";
		z-index: 3000;
	}
.Tm-Vision.bg-radiusCut .sec__inner{
	position: relative;
	z-index: 4000;
}
	/*----bg__circle	Tm-Vision__inner基準---*/
	.bg__circle.c-blue.c-01{
		top: -7rem;
		left: -15rem;
	}
	/*----bg__circle	Tm-Vision__inner基準---*/
.Tm-Vision .C-sub-title{
	margin-bottom: 12rem; /*15rem;*/
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){
	.Tm-Vision.bg-radiusCut{
		padding-bottom: 22.6rem;
	}
	
	.Tm-Vision::after{
		width: 63.6rem;
		height: 53rem;
	}
		/*----bg__circle	Tm-Vision__inner基準---*/
		.bg__circle.c-blue.c-01{
			top: -7rem;
			left: -15rem;
		}
		/*----bg__circle	Tm-Vision__inner基準---*/
	.Tm-Vision .C-sub-title{
		margin-bottom: 7rem;
	}
}

/*-------------------------------
	御幸建設グループの目指す姿 Tm-Vision__container
-------------------------------*/
.Tm-Vision__container{
	padding-bottom: 15.2rem; /*19rem;*/
	position: relative;
}
	/*----bg__circle	Tm-Vision__container基準---*/
	.bg__circle.c-blue.c-02{
		right: -35rem;
		bottom: 0;
	}
	.bg__circle-mini.c-pink.c-03{
		right: -45rem;
		bottom: -25rem;
	}
	/*----bg__circle	Tm-Vision__container基準---*/
	
/*-------------Tm-Vision__list---*/
/*.Tm-Vision__list{
	margin-bottom: 18rem;
}*/

.Tm-Vision__txtwrap + .Tm-Vision__txtwrap{
	margin-top: 7rem; /*7.8rem;*/
}
.vishon__mds{
	margin-bottom: 1.5rem;
	font-size: 1.25rem; /*1.4rem;*/
		letter-spacing: 0.01em;
		line-height: 1.3;
		color: var(--maincolor);
		font-weight: 700;
	position: relative;
	display: block;
}
	.vishon__mds span{
		margin-right: 0.2em;
		padding-left: 0.5em;
		font-size: 3.5rem; /*4rem;*/
			letter-spacing: 0.05em;
			line-height: 1.3;
			color: var(--maincolor);
			font-weight: 500;
			font-family: var(--en_font1);
		display: inline-block;
		position: relative;
	}
		.vishon__mds span::before{
			content: "-";
			font-family: var(--font-family);
			position: absolute;
				left: 0;
				top: 50%;
				transform:translateY(-50%);
				-webkit-transform:translateY(-50%);
		}
.vishon__bigtxt{
	margin-bottom: 2rem;
	font-size: 2.1rem; /* 2.4rem;*/
		line-height: 1.5;
		letter-spacing: 0.05em;
		font-weight: 700;
}
.Tm-Vision__img{
	width: 100%;
	height: 100%;
}
.vishon__txt{
	line-height: 1.9;
	letter-spacing: 0.01em;
	font-weight: 500;
}
/*-------------Tm-Vision__list---*/

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){
	.Tm-Vision__img{
		max-width: 60rem;
		margin-left: auto;
		margin-right: auto;
	}
}
@media screen and (max-width:768px){
	.Tm-Vision__container{
		padding-bottom: 28rem;
	}
		/*----bg__circle	Tm-Vision__container基準---*/
		.bg__circle.c-blue.c-02{
			right: -11rem;
			bottom: 10rem;
		}
		.bg__circle-mini.c-pink.c-03{
			right: -25rem;
			bottom: -10rem;
		}
		/*----bg__circle	Tm-Vision__container基準---*/
		
	/*-------------Tm-Vision__list---*/
	/*.Tm-Vision__list{
		margin-bottom: 18rem;
	}*/
	
	.Tm-Vision__txtwrap + .Tm-Vision__txtwrap{
		margin-top: 7.8rem;
	}
	.vishon__mds{
		margin-bottom: 4.8rem;
		font-weight: 700;
		font-size: 2.8rem;
	}
		.vishon__mds span{
			font-size: 6rem;
			font-weight: 500;
			display: block;
		}
			.vishon__mds span::before{
			}
	.vishon__bigtxt{
		margin-bottom: 2.3rem;
		font-size: 3.6rem;
	}
}


/*-------------------------------
	社是  Tm-Vision-policy__container
-------------------------------*/
.Tm-Vision-policy__container{

}
.company-Policy-title{
	margin-bottom: 5.2rem;/* 6.5rem;*/
	font-size: 3.5rem; /*4rem;*/
		color: var(--maincolor);
		font-weight: 500;
		letter-spacing: 0.05em;
		line-height: 1;
	display: flex;
		align-items: center;
		justify-content: flex-start;
}
	.company-Policy-title span{
		margin-left: 1em;
		font-size: 1.4rem; /* 1.6rem;*/
			color: var(--maincolor);
			font-weight: 500;
			font-family: var(--en_font1);
			line-height: 1;
	}
.tm-V-policy__block{
	justify-content: space-between;
	row-gap: 7.8rem;
}
.tm-V-policy__item{
	/*width: 25rem;*/
	width: calc((100% - (12.5rem * 2)) / 3);
	min-width: unset;
}
	.V-policy__circle{
		width: 15rem; /*17.8rem;*/
		height: 15rem; /*17.8rem;*/
			margin-bottom: 3rem;
			margin-left: auto;
			margin-right: auto;
			border-radius: 50%;
			background: #fff;
		position: relative;
		display: flex;
			align-items: center;
			justify-content: center;
	}
		.V-policy__circle::before{
			/*width: calc(100% + 1.6rem);
			height: calc(100% + 1.6rem);*/
			width: calc(100% + 1.3rem);
			height: calc(100% + 1.3rem);
				border-radius: 50%;
				background: var(--gradcolor);
			position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%,-50%);
				-webkit-transform: translate(-50%,-50%);
			display: block;
			content: "";
			z-index: -1;	
		}
		.tm-V-policy__text{
			line-height: calc(3 / 1.8);
		}
	.V-policy__mds{
		font-size: 2.7rem; /*3rem;*/
			letter-spacing: 0.05em;
			line-height: 1.2;
			color: var(--maincolor);
			font-weight: 700;
	}
.V-policy__img-box{	/*--最後の要素画像あり-*/
	padding-bottom: 6rem;
	margin-right: calc(100% - 25rem);
	position: relative;
	z-index: 4000;
}
	.V-policy__img{
		width: 42rem;
		height: 48rem;
		position: absolute;
			right: 6rem;
			bottom: 0;
		display: block;
		z-index: 3000;
	}
		.V-policy__img::before{
			width: 25.3rem;
			height: 8.7rem;
			background: url(../images/company/vision-img02-arrow.png);
				background-repeat: no-repeat;
				background-size: contain;
			position: absolute;
				left: -26rem;
				top: 20%;
			display: block;
			content: "";
		}
@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){
	.Tm-Vision-policy__container{

	}
	.company-Policy-title{
		margin-bottom: 6.5rem;
		font-size: 6rem;
		flex-direction: column;
			align-items: flex-start;
	}
		.company-Policy-title span{
			margin-left: 0;
			font-size: 2.8rem;
		}
	.tm-V-policy__block{
		justify-content: space-between;
		row-gap: 14.5rem;
	}
	.tm-V-policy__item{
		width: calc((100% - 3rem) / 2);
	}
		.V-policy__circle{
			width: 25rem;
			height: 25rem;
				margin-bottom: 5.8rem;
		}
			.V-policy__circle::before{
				width: calc(100% + 2.2rem);
				height: calc(100% + 2.2rem);
			}
		.V-policy__mds{
			font-size: 4.2rem;
		}
		.V-policy__txt{
			line-height: 2.15;
			letter-spacing: 0.01em;
		}
	.V-policy__img-box{	/*--最後の要素画像あり-*/
		padding-bottom: 0;
		margin-right: 0;
		margin-bottom: 14rem;
		position: relative;
	}
		.V-policy__img{
			width: 62.8rem;
			height: 71.3rem;
			position: relative;
				right: unset;
				bottom: unset;
		}
			.V-policy__img::before{
				position: absolute;
					left: unset;
					right: 32%;
					top: -15rem;
					transform: translateX(50%) rotate(90deg);
					-webkit-transform: translateX(50%) rotate(90deg);
				display: block;
				content: "";
			}
}

/*-------------------------------
	企業キャッチコピー と　キャラクター横並び
-------------------------------*/
.Tm-cc__sec_container{
	padding-top: 19.2rem;
	padding-bottom: 24rem;
	display: flex;
		justify-content: space-between;
		align-items: stretch;
	gap: 4.5rem;
}

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1040px) and (min-width: 769px){
	.Tm-cc__sec_container{
		flex-direction: column;
		align-items: center;
		gap: 9.7rem;
	}
}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){
	.Tm-cc__sec_container{
		padding-top: 16.5rem;
		padding-bottom: 16.5rem;
		flex-direction: column;
		align-items: center;
		gap: 15.2rem;
	}
}
/*-------------------------------
	企業キャッチコピー Tm-catchcopy
-------------------------------*/
.Tm-catchcopy.sec02:first-child{
	padding-top: unset;
	padding-bottom: unset;
	/*padding-bottom: var(--padding-topbottom);*/
	width: 53.6363636363%;
	min-width: 55rem;
}

.Tm-catchcopy .C-sub-title{
	margin-bottom: 7.2rem; /*9rem;*/
}

.Tm-catchcopy__block{
	width: 100%;
	/*padding: 7.3rem 3rem 9rem 3rem;*/
	/*padding: 6rem 3rem 7rem 3rem;*/
	padding: 7.3rem 3rem 9rem 3rem;
		border-radius: 1rem;
		background: #fff;
		border: 1px solid var(--maincolor);
}
	.catchcopy01{
		margin-bottom: 4rem; /*5rem;*/
		font-size: 3.2rem; /*3.8rem;*/
			font-weight: 700;
			letter-spacing: 0;
			line-height: 1.58;
			text-align: center;
		display: block;
	}
		.catchcopy01 .cc-blue{
			margin-left: 0.2em;
			margin-right: 0.2em;
			color: var(--maincolor);
			display: inline-block;
		}
	.catchcopy02{
		font-size: 2.2rem; /*2.6rem;*/
			font-weight: 700;
			letter-spacing: 0;
			line-height: calc(5 / 3.8);
			text-align: center;
		display: block;
	}
	.catchcopy02 .ls-negative{
		letter-spacing: -0.5em;
	}
		.catchcopy02 .cc-pink{
			margin-left: 0.2em;
			margin-right: 0.2em;
			font-size: 3.2rem; /*3.8rem;*/
				font-weight: 700;
				letter-spacing: 0;
			color: var(--pinkcolor);
			display: inline-block;
		}
@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){
	.Tm-catchcopy.sec02:first-child{
		/*padding-bottom: 0;*/
		padding-top: unset;
		padding-bottom: unset;
	}
}

@media screen and (max-width:768px){
	.Tm-catchcopy.sec02:first-child{
		/*padding-bottom: 0;*/
		padding-top: unset;
		padding-bottom: unset;
		width: 100%;
		min-width: unset;
	}
	
	.Tm-catchcopy .C-sub-title{
		margin-bottom: 6.45rem;
	}
	
	.Tm-catchcopy__block{
		padding: 7rem 3rem 7rem 3rem;
			border: 2px solid var(--maincolor);
	}
		.catchcopy01{
			margin-bottom: 7rem;
			font-size: 4rem;
		}
		.catchcopy02{
			font-size: 2.8rem;
			line-height: calc(6 / 2.8);
		}
		.catchcopy02 .ls-negative{
			letter-spacing: -0.5em;
		}
			.catchcopy02 .cc-pink{
				font-size: 4rem;
			}
}



/*-------------------------------
	企業キャラクター Tm-character
-------------------------------*/
.Tm-character{
	/*padding-top: var(--padding-topbottom);*/
	padding-top: unset;
	padding-bottom: unset;
	width: calc(100% - 53.6363636363% - 3.5rem);
	min-width: 41.5rem;
}

.Tm-character__block {
	display: flex;
		/*justify-content: center;*/
		justify-content: flex-start;
		align-items: center;
		/*gap: 1.7rem;*/
	position: relative;
		top: 15%;
}
.character__name{
	margin-right: -2.5rem;
	/*margin-bottom: 0.22em;*/
	width: 17rem; /*18.4rem;*/
	height: 17rem; /*18.4rem;*/
		border-radius: 50%;
		background: var(--bg-graycolor);
	font-size: 2rem; /*2.2rem;*/
		letter-spacing: 0;
		line-height: 1;
		color: var(--maincolor);
		font-weight: 700;
	display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
}
	.character__name span{
		font-size: 2.4rem; /*2.7rem;*/
	}
.character__img{
	width: 26.1rem; /*26rem;*/
}
@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){
	.Tm-character{
		padding-top: unset;
		padding-bottom: unset;
		width: 100%;
		min-width: unset;
	}
	.Tm-character .C-sub-title{
		margin-bottom: 5rem;
	}
	.Tm-character__block {
		justify-content: center;
	}
	.character__name{
		margin-right: unset;
		width: 20.4rem;
		height: 20.4rem;
		font-size: 2.4rem;
	}
		.character__name span{
			font-size: 3rem;
		}
	.character__img{
		width: 29.5rem;
	}
}



/*-------------------------------
	数字で見る Tm-numbers
-------------------------------*/
.Tm-numbers{
	background: #fff;
	overflow: hidden;
}
	.Tm-numbers::before{
		background: var(--bg-graycolor);
	}
.Tm-numbers .C-sub-title__big-en{
	font-size: 7.2rem; /* 9rem;*/
		letter-spacing: 0;
		font-weight: 400;
		font-family: var(--en_font1);
		line-height: 1;
}
.Tm-numbers .C-sub-title__en{
	font-family: var(--font-family);
	font-size: 1.3rem; /*1.4rem;*/
	font-weight: 700;
}
/*-----Tm-numbers__block---*/
.Tm-numbers__block{

}
/*------------bg__circle 基準Tm-numbers__inner----*/
.Tm-numbers__inner{
	position: relative;
}	
	.bg__circle.c-blue.c-numbers__01{
		top: -12rem;
		right: -30rem;
	}
	.bg__circle-mini.c-pink.c-numbers__02{
		top: 30rem;
		right: -50rem;
		
	}
/*------------bg__circle 基準Tm-numbers__inner----*/
/*------------bg__circle 基準Tm-numbers__container----*/
.Tm-numbers__container{
	position: relative;
}	
	.bg__circle.c-blue.c-numbers__03{
		bottom: -24.6rem;
		left: -25rem;
		z-index: -1;
	}
	.bg__circle-mini.c-pink.c-numbers__04{
		bottom: 8.6rem;
		left: -40rem;
		z-index: -1;
		
	}
/*------------bg__circle 基準Tm-numbers__container----*/

.Tm-numbers__box{
	padding: 4.5rem 3rem;
	border-radius: 3rem;
	background: #fff;
	display: flex;
	flex-direction: column;
		justify-content: center;
		align-items: center;
}
	.Tm-numbers__block + .Tm-numbers__block,
	.Tm-numbers__box + .Tm-numbers__box{
		margin-top: 3rem;
	}
/*-------白枠内-----*/
.numbers__mds{
	width: 100%;
	padding-bottom: 0.45em;
	margin-bottom: 2.7rem; /*3rem;*/
	font-size: 2.1rem; /*2.4rem;*/
		color: var(--maincolor);
		font-weight: 700;
		letter-spacing: 0;
		line-height: 1.25;
		text-align: center;
	display: block;
	position: relative;
}
	.numbers__mds::after{
		width: 5.67rem; /*6.3rem;*/
		height: 0.54rem; /*0.6rem;*/
		background: var(--gradcolor);
		position: absolute;
			left: 50%;
			bottom: 0;
			transform: translateX(-50%);
			-webkit-transform: translateX(-50%);
		display: block;
		content: "";
	}
	
	.numbers__txt + .numbers__mds{ /*--点線追加時--*/
		margin-top: 3.6rem; /*4rem;*/
		padding-top: 3.6rem; /*4rem;*/
	}
		.numbers__txt + .numbers__mds::before{	
			width: 100%;
			height: 2px;
				background: repeating-linear-gradient(to right, var(--maincolor), var(--maincolor) 2px, transparent 2px, transparent 4px);
			position: absolute;
				left: 50%;
				top: 0;
				transform: translateX(-50%);
				-webkit-transform: translateX(-50%);
			display: block;
			content: "";
		}
.numbers__txt{
	font-size: 8.5rem; /*10rem;*/
		color: var(--maincolor);
		font-family: var(--impact-font);
		font-weight: 900;
		letter-spacing: 0;
		line-height: 1;
	display: inline-block;
	position: relative;
}
	.numbers__txt .mini{
		font-size: 2.7rem; /*3rem;*/
			color: var(--maincolor);
			font-family: var(--font-family);
			font-weight: 700;
			letter-spacing: 0;
			line-height: 1;
	}
.numbers__kome{
	margin-top: 1.8rem;
	font-size: 1.2rem; /*1.4rem;*/
		font-weight: 700;
		letter-spacing: 0.04em;
		line-height: 1;
}

/*--------inner_flex__block-------*/
.Tm-numbers__box .inner_flex__block{
	width: 100%;
}
.Tm-numbers__box .inner_flex__item{
	width: calc((100% - 4rem) / 2);
}
.inner_flex__item h5{
	font-size: 1.8rem; /*2rem;*/
		color: var(--maincolor);
		font-family: var(--font-family);
		font-weight: 700;
		letter-spacing: 0;
		line-height: 1;
		text-align: center;
}
/*--社員数--*/
.nb-01 .Tm-numbers__item:nth-of-type(2) .numbers__txt{
	transform: translateX(2rem);
}
 /*--男女比--*/
.nb-02 .inner_flex__block{
	justify-content: center;
		gap: 3.6rem; /*4rem;*/
}
.nb-02 .inner_flex__item{
	width: 10.4rem; /*13rem;*/
}
.nb-02 .inner_flex__item h5{ /*--男女比--*/
    padding-right: 1em;
    margin-top: -0.4em;
    margin-bottom: -0.25em;
}

.nb-03 .inner_flex__item h5{ /*--資格取得--*/
	font-size: 1.3rem; /*1.4rem;*/
    padding-right: 0;
}
.nb-03 .inner_flex__item{
	padding: 3rem 3rem 4rem 3rem;
	display: flex;
	flex-direction: column;
		align-items: center;
		justify-content: center;
}
	.dott-bottom,
	.dott-right{/*--点線追加時--*/
		position: relative;
	}
	.dott-bottom::before{	
		width: 100%;
		height: 2px;
			background: repeating-linear-gradient(to right, var(--maincolor), var(--maincolor) 2px, transparent 2px, transparent 4px);
		position: absolute;
			left: 50%;
			bottom: 0;
			transform: translateX(-50%);
			-webkit-transform: translateX(-50%);
		display: block;
		content: "";
	}
	.dott-right::after{	
		width: 2px;
		height: calc(100% - 2rem);
			background: repeating-linear-gradient(to bottom, var(--maincolor), var(--maincolor) 2px, transparent 2px, transparent 4px);
		position: absolute;
			right: -2rem;
			top: 50%;
			transform: translateY(-50%);
			-webkit-transform: translateY(-50%);
		display: block;
		content: "";
	}

/*--------------------画像の配置-----*/
		/*---羽*/
		.img_hane{
			padding-inline: 4.8rem; /*6rem;*/
		}
			.img_hane::before{
				width: 3.36rem; /*4.2rem;*/
				height: 9.2rem; /*11.5rem;*/
				background: url(../images/company/suji-list01-img01-1.png);
				left: 0;
				top: 0;
			}
			.img_hane::after{ 
				width: 3.36rem; /*4.2rem;*/
				height: 9.2rem; /*11.5rem;*/
				background: url(../images/company/suji-list01-img01-2.png);
				right: 0;
				top: 0;
			}
		/*---ビル*/
		.img_bill{
			padding-top: 5.6rem; /*7rem;*/
		}
			.img_bill::before{
				width: 3.36rem; /*4.2rem;*/
				height: 5.6rem; /*7rem;*/
				background: url(../images/company/suji-list01-img02.png);
				left: 50%;
				top: 0;
					transform: translateX(-50%);
					-webkit-transform: translateX(-50%);
			}
		/*---グラフ*/
		.img_graph{
			padding-right: 16rem; /*20rem;*/
			padding-bottom: 1.6rem; /* 2rem;*/
		}
			.img_graph::before{ 
				width: 17.6rem; /*22rem;*/
				height: 12rem; /*15rem;*/
				background: url(../images/company/suji-list01-img03.png);
				right: 0;
				top: 50%;
					transform: translateY(-50%);
					-webkit-transform: translateY(-50%);
			}
		/*---ビル*/
		.img_bill02{
			padding-bottom: 27.2rem; /*34rem;*/
		}
			.img_bill02::before{ 
				width: 24rem; /*30rem;*/
				height: 25.6rem; /*32rem;*/
				background: url(../images/company/suji-list02-img01.png);
				left: 50%;
				bottom: 0;
					transform: translateX(-56%);
					-webkit-transform: translateX(-56%);
			}
		/*---男女*/
		.img_man01{
			padding-inline: 6rem; /*7.5rem;*/
		}
			.img_man01::before{
				width: 4.4rem; /*5.5rem;*/
				height: 10rem; /*12.5rem;*/
				background: url(../images/company/suji-list02-img02.png);
				left: 0;
				top: 50%;
					transform: translateY(-50%);
					-webkit-transform: translateY(-50%);
			}
		/*---パラソル　カレンダー　新卒*/
		.img_parasol{
			padding-left: 11.2rem; /*14rem;*/
		}
			.img_parasol::before{ 
				width: 8.64rem; /*10.8rem;*/
				height: 9.92rem; /*12.4rem;*/
				background: url(../images/company/suji-list03-img01.png);
				left: 0;
				bottom: 0;
			}
		/*---男*/
		.img_man02-1{
			/*padding-left: 6.4rem;*/
		}
			.img_man02-1::before{ 
				width: 3.04rem; /*3.8rem;*/
				height: 8.8rem; /*11rem;*/
				background: url(../images/company/suji-list03-img02-1.png);
				left: -4.4rem; /* -5.5rem;*/
				bottom: 0;
			}
		/*---女*/
		.img_man02-2{
			/*padding-right: 6.4rem;*/
		}
			.img_man02-2::before{ 
				width: 4.32rem; /*5.4rem;*/
				height: 10rem; /*12.5rem;*/
				background: url(../images/company/suji-list03-img02-2.png);
				right: -4rem; /*-5rem;*/
				bottom: 0;
			}
		/*---カレンダー*/
		.img_calendar{
			padding-left: 8.4rem; /*10.5rem;*/
		}
			.img_calendar::before{ 
				width: 5.76rem; /* 7.2rem;*/
				height: 6.88rem; /*8.6rem;*/
				background: url(../images/company/suji-list04-img01.png);
				left: 0;
				bottom: 0;
			}
		/*---新卒*/
		.img_man03{
			padding-left: 7.6rem; /*9.5rem;*/
		}
			.img_man03::before{ 
				width: 5.2rem; /*6.5rem;*/
				height: 7.52rem; /*9.4rem;*/
				background: url(../images/company/suji-list04-img02.png);
				left: 0;
				bottom: 0;
			}
		/*---graph02 これは疑似要素ではない*/
		.nembers_img_graph02{
			margin-top: 0.8rem; /*1rem;*/
			margin-bottom: 4rem; /*5rem;*/
			width: 30rem;
			height: 30rem;
			object-fit: contain;
			object-position: center;
		}

/*--------------------画像の配置-----*/
		.img_bf,
		.img_af{
			position: relative;
		}
		.img_bf::before,
		.img_af::after{
			background-size: contain;
				background-repeat: no-repeat;
				background-position: center;
			position: absolute;
			display: block;
			content: "";
		}
/*-------白枠内-----*/

/*-----Tm-numbers__block---*/

@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){
	/*-----Tm-numbers__block---*/
	
	/*------------bg__circle 基準Tm-numbers__inner----*/
	.Tm-numbers__inner{
		position: relative;
	}	
		.bg__circle.c-blue.c-numbers__01{
			top: -15rem;
			right: -19rem;
		}
		.bg__circle-mini.c-pink.c-numbers__02{
			top: 30rem;
			right: -20rem;
			
		}
	/*------------bg__circle 基準Tm-numbers__inner----*/
	/*------------bg__circle 基準Tm-numbers__container----*/
	.Tm-numbers__container{
		position: relative;
	}	
		.bg__circle.c-blue.c-numbers__03{
			bottom: 50%;
			left: -25rem;
		}
		.bg__circle-mini.c-pink.c-numbers__04{
			bottom: 30%;
			left: -5rem;			
		}
	/*------------bg__circle 基準Tm-numbers__container----*/
	
	.Tm-numbers__box{
	}
		.Tm-numbers__block + .Tm-numbers__block,
		.Tm-numbers__box + .Tm-numbers__box{
			margin-top: 4rem;
		}
	.Tm-numbers .C-sub-title__big-en{
		font-size: 9rem;
	}
	.Tm-numbers .C-sub-title__en{
		font-size: 1.8rem; /*1.4rem;*/
	}
	/*-------白枠内-----*/
	.numbers__mds{
		width: 100%;
		padding-bottom: 0.45em;
		margin-bottom: 5rem;
		font-size: 3.2rem;
	}
		.numbers__mds::after{
			width: 8.7rem;
			height: 0.9rem;
		}
		
		.numbers__txt + .numbers__mds{ /*--点線追加時--*/
			margin-top: 4rem;
			padding-top: 4rem;
		}
	.numbers__txt{
		font-size: 13.7rem;
	}
		.numbers__txt .mini{
			font-size: 4.1rem;
		}
	
.numbers__kome{
	margin-top: 2.5rem;
	font-size: 2rem; 
}
	/*--------inner_flex__block-------*/
	.Tm-numbers__box .inner_flex__block{
		width: 100%;
		align-items: stretch;
	}
	.Tm-numbers__box .inner_flex__item{
		width: calc((100% - 6rem) / 2);
	}
		.inner_flex__item h5{
			font-size: 2.6rem;
		}
/*--男女比--*/
	.nb-02 .inner_flex__block{
		gap: 4rem;
	}
		.nb-02 .inner_flex__item {
			width: 13rem;
		}
		.nb-02 .inner_flex__item h5{ /*--男女比--*/
			padding-right: 2em;
			margin-top: 0;
			margin-bottom: 0;
		}
		.nb-02 .inner_flex__item .numbers__txt{
			font-size: 10.8rem;
		}
	
	.nb-03 .inner_flex__item h5{ /*--資格取得--*/
		font-size: 2.3rem; /*1.9rem;*/
	}
	.nb-03 .inner_flex__item{
		padding: 3rem 3rem 4rem 3rem;
	}
		.dott-bottom,
		.dott-right{/*--点線追加時--*/
		}
		.dott-bottom::before{	
		}
		.dott-right::after{	
			height: calc(100% - 3rem);
			right: -3rem;
		}
	
	/*--------------------画像の配置-----*/
			/*---羽*/
			.img_hane{
				padding-inline: 8rem;
			}
				.img_hane::before{
					width: 5.8rem;
					height: 15.6rem;
				}
				.img_hane::after{ 
					width: 5.8rem;
					height: 15.6rem;
				}
			/*---ビル*/
			.img_bill{
				padding-top: 6rem;
			}
				.img_bill::before{
					width: 5.8rem;
					height: 9.5rem;
					top: -3rem;
				}
			/*---グラフ*/
			.img_graph{
				padding-right: 31rem;
				padding-bottom: 4.2rem;
			}
				.img_graph::before{ 
					width: 30rem;
					height: 20.5rem;
					top: 40%;			
				}
			/*---ビル*/
			.img_bill02{
				padding-bottom: 46rem;
			}
				.img_bill02::before{ 
					width: 40.8rem;
					height: 43.8rem;
				}
			/*---男女*/
			.img_man01{
				padding-inline: 11.5rem 6rem;
			}
				.img_man01::before{
					width: 7.1rem;
					height: 17.5rem;
				}
			/*---パラソル　カレンダー　新卒*/
			.img_parasol{
				padding-inline: 19rem 4rem;
			}
				.img_parasol::before{ 
					width: 14.8rem;
					height: 16.8rem;
				}
			/*---男*/
			.img_man02-1{
			}
				.img_man02-1::before{ 
					width: 5rem;
					height: 15rem;
					left: -7rem;
				}
			/*---女*/
			.img_man02-2{
			}
				.img_man02-2::before{ 
					width: 7.4rem;
					height: 17rem;
					right: -6.5rem;
				}
			/*---カレンダー*/
			.img_calendar{
				padding-left: 12.5rem;
			}
				.img_calendar::before{ 
					width: 9.8rem;
					height: 11.8rem;
				}
			/*---新卒*/
			.img_man03{
				padding-left: 10.5rem;
			}
				.img_man03::before{ 
					width: 8.4rem;
					height: 12.9rem;
				}
			/*---graph02 これは疑似要素ではない*/
			.nembers_img_graph02{
				margin-top: 0;
				margin-bottom: 5rem;
				width: 41.3rem;
				height: 41.3rem;
			}
	
	/*--------------------画像の配置-----*/
}



/*-------------------------------
	 働く環境について Tm-environment 
-------------------------------*/
.Tm-environment {
	background: var(--bg-graycolor);
}
	.Tm-environment::before {
		height: calc(100% - 16rem);
		background: #fff;
	}


	.envi-link__block{
		margin-bottom: 12rem; /*15rem;*/
		display: flex;
			justify-content: center;
			align-items: stretch;
			gap: 8rem;
	}
	.envi-link__items {
		width: calc((100% - 8rem) / 2);
		display: block;
	}
	.envi-link__items a{
		width: 100%;
		height: 100%;
			padding: 5.7rem 2.6rem 4.2rem 2.6rem;
			border-radius: 1rem;
		background: var(--bg-graycolor);
		display: flex;
			flex-direction: column;
			align-items: center;
			justify-content: center;
		position: relative;
		transition: var(--transition-time);
	}
		.envi-link__items a::after{
			width: 1.8rem;
			height: 1.8rem;
			background-image: url(../images/index/company-img-arrow.svg);
				background-size: contain;
				background-repeat: no-repeat;
				background-position: center;
			position: absolute;
				right: 2rem;
				top: 50%;
				transform: translateY(-50%);
				-webkit-transform: translateY(-50%);
			content: "";
			z-index: 5000;
		}
		.envi-link__items a:hover{
			opacity: 1;
			transform: translateY(-0.5rem);
			background: var(--bg-bluecolor);
		}
	.c-l__items__img{
		background: #fff;
		width: 15.6rem;
		height: 15.6rem;
			padding: 2.8rem;
			border-radius: 50%;
		margin-bottom: 3rem;
		display: flex;
			align-items: center;
			justify-content: center;
		transition: var(--transition-time);
	}
		.envi-link__items a:hover .c-l__items__img{
			transform: scale(1.1);
		}
	.c-l__items__mds{
		font-size: 2.1rem; /*2.4rem;*/
			letter-spacing: 0;
			line-height: 1.5;
			font-weight: 700;
			color: var(--maincolor);
			text-align: center;
		transition: var(--transition-time);
	}
		.envi-link__items a:hover .c-l__items__mds{
			transform: scale(1.1);
		}


/*-----swiper----*/
.Tm-environment {
	width: 100%;
	margin-bottom: 1rem;
	padding-bottom: 0;
	overflow: hidden;
	z-index: unset;
}
.Tm-environment__inner {
		margin-right: auto;
		margin-left: auto;
	overflow: visible;
}
.envi__swiper{
	width: 100vw;
	margin-left: calc(50% - 50vw);
	overflow: visible;
}  
.envi__swiper .swiper-slide {
	width: 34.4rem; /*43rem;*/
	height: 32rem; /*40rem;*/
		border-radius: 1rem;
		margin-left: 2.7rem;
		margin-right: 2.7rem;
		overflow: hidden;
}


/*-----swiper----*/
@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

}
@media screen and (max-width:768px){
		.Tm-environment::before {
			height: calc(100% - 20rem);
		}
	
		.Tm-environment .C-sub-title{
			margin-bottom: 9.7rem;
		}
		.envi-link__block{
			margin-bottom: 12.7rem;
			flex-direction: column;
				gap: 3.4rem;
		}
		.envi-link__items {
			width: 100%;
		}
		.envi-link__items a{
				padding: 2.4rem 10rem 2.4rem 6rem;
				border-radius: 1.5rem;
				flex-direction: row;
				justify-content: flex-start;
		}
			.envi-link__items a::after{
				width: 4rem;
				height: 4rem;
					right: 6rem;
			}
		.c-l__items__img{
			background: #fff;
			width: 15.6rem;
			height: 15.6rem;
				padding: 2.5rem;
				border-radius: 50%;
			margin-bottom: unset;
			margin-right: 3.6rem;
		}
		.c-l__items__mds{
			width: calc(100% - 10rem - 15.6rem);
			font-size: 3rem;
			display: block;
		}
	
	/*-----swiper----*/
	.Tm-environment {
		width: 100%;
		margin-bottom: 1rem;
		overflow: hidden;
	}
	.Tm-environment__inner {
			margin-right: auto;
			margin-left: auto;
		overflow: visible;
	}
	.envi__swiper{
		width: 100%;
		overflow: visible;
	}  
	.envi__swiper .swiper-slide {
		width: 43rem !important;
		height: 40rem;
			border-radius: 1rem;
			overflow: hidden;
	}
}

/*-------------------------------
	御幸建設グループの総合力 Tm-strength
-------------------------------*/
.Tm-strength{
	position: relative;
	z-index: 1000;
}
	.Tm-strength::before{
		width: 100%;
		height: calc(100% + 16rem);
		background: var(--bg-graycolor);
		position: absolute;
			left: 0;
			top: -16rem;
		display: block;
		content: "";
		z-index: 2000;
	}
.Tm-strength__inner{
	position: relative;
	z-index: 3000;
}
.Tm-strength .sec_intro__txt{
	margin-bottom: 12rem; /*15rem;*/
}

.Tm-strength__block{
	gap: 5rem;
}
	.Tm-strength__txtbox{
		width: 53%;
			min-width: unset;
	}
	.Tm-strength__imgbox{
		width: calc(100% - 5rem - 53%);
			max-width: 44rem;
	}
.strength__mds{
	margin-bottom: 3.15rem; /*3.5rem;*/
	font-size: 2.1rem; /*2.4rem;*/
		letter-spacing: 0;
		line-height: 1.3;
		font-weight: 700;
}
.strength__ptxt{
	font-size: 1.5rem; /*1.7rem;*/
		letter-spacing: 0.01em;
		line-height: 2;
		font-weight: 500;
}
	.strength__ptxt + .strength__ptxt{
		margin-top: 2em;
	}
@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){
	.Tm-strength__block{
		flex-direction: column-reverse;
		gap: 12rem;
	}
		.Tm-strength__txtbox{
			width: 100%;
				min-width: unset;
		}
		.Tm-strength__imgbox{
			width: 100%;
				max-width: unset;
				max-width: 55rem;
		}
}
@media screen and (max-width:768px){
	.Tm-strength{
	}
		.Tm-strength::before{
			height: calc(100% + 20rem);
				top: -20rem;
		}
	.Tm-strength__inner{
	}
	.Tm-strength .sec_intro__txt{
		margin-bottom: 6.6rem;
	}
	
	.Tm-strength__block{
		flex-direction: column-reverse;
		gap: 12rem;
	}
		.Tm-strength__txtbox{
			width: 100%;
				min-width: unset;
		}
		.Tm-strength__imgbox{
			width: 100%;
				max-width: unset;
		}
	.strength__mds{
		margin-bottom: 3.5rem;
		font-size: 3rem;
	}
	.strength__ptxt{
		font-size: 2.8rem;
	}
}



/*-------------------------------
	 営業所 Tm-office 
-------------------------------*/
.Tm-office{
	background: var(--bg-graycolor);
}
	.Tm-office::before{
		background: var(--bg-bluecolor);
	}

.Tm-office .Tm-office__sub-title02 .bg_box{
		width: 16.8rem;
		height: 2.7rem;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 9999px;
		line-height: 1.8;
		background: var(--maincolor);
	font-size: 1.4rem;
		letter-spacing: 0.05em;
		color: #fff;
		text-align: center;
		font-weight: 700;
	position: absolute;
		right: 1.6rem;
		top: 50%;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
}

/*----------Tm-office__sub-title02---------*/
.Tm-office__sub-title02{
	width: 100%;
	margin-bottom: 4.5rem;
	padding: 0.35em 1em;
		border-radius: 9999px;
		line-height: 1.2;
		background: #fff;
	font-size: 2.8rem;
		letter-spacing: 0.05em;
		color: var(--maincolor);
		text-align: center;
		font-weight: 700;
	position: relative;
}
	.Tm-office__sub-title02.-white{
		color: #fff;
	}

.Tm-office__container + .Tm-office__container{
	margin-top: 14.7rem;
}
.Tm-office__container .C-button{
	margin-top: 4.3rem;
}
/*-------Tm-office__block------*/
	.Tm-office__block + .Tm-office__block{
		margin-top: 8rem;
	}
.office__txt{
	margin-bottom: 4rem;
	font-size: 1.5rem;
	line-height: 1.333333
}
.office__map{
	width: 100%;
	height: 25rem;
}
	.office__map iframe{
		width: 100%;
		height: 100%;
	}
.Tm-office__imgbox{
	height: 40rem;
	border-radius: 1rem;
	overflow: hidden;
}
.five-button{
	width: 45rem;
}
@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

	.Tm-office .Tm-office__sub-title02 {
        padding: 0.5em 2em 1.8em 2em;
	}
	.Tm-office .Tm-office__sub-title02 .bg_box{
        width: max-content;
		position: absolute;
			right: 50%;
			top:unset;
			bottom: 0.6em;
			transform: translateX(50%);
			-webkit-transform: translateX(50%);
	}
}
@media screen and (max-width:768px){
	.Tm-office{
		padding-top: var(--padding-topbottom);
		padding-bottom: var(--padding-topbottom);
	}
		.Tm-office::before{
		}
	.Tm-office .Tm-office__sub-title02 {
        padding: 0.5em 2em 2.2em 2em;
		font-size: 3.4rem;
		margin-bottom: 5.8rem;
	}
	.Tm-office .Tm-office__sub-title02 .bg_box{
        width: max-content;
		padding: 0.35em 2em;
		font-size: 2.4rem;
		height: 4.8rem;
			letter-spacing: 0;
			line-height: 1;
		position: absolute;
			right: 50%;
			top:unset;
			bottom: 0.6em;
			transform: translateX(50%);
			-webkit-transform: translateX(50%);
	}
	/*.Tm-office__container{
		margin-bottom: 12rem;
	}*/
	.Tm-office__container + .Tm-office__container{
		margin-top: 12rem;
	}
	/*-------Tm-office__block------*/
		.Tm-office__block + .Tm-office__block{
			margin-top: 4rem;
		}
		.Tm-office__block{
			/*margin-bottom: 8rem;*/
			gap: 2.8rem;
		}
	.office__txt{
		margin-bottom: 5.8rem;
		font-size: 2.8rem;
	}
	.office__map{
		width: 100%;
		height: 34.2rem;
		border: 1px solid var(--maincolor);
	}
	.Tm-office__imgbox{
		height: 54.8rem;
	}
	.Tm-office__container .C-button{
		width: 51rem;
		margin-top: 5rem;
	}
	.five-button{
		width: 51rem;
        text-align: center;
	}
	.five-button a{
		height: 12rem;
		border-radius: 6rem;
	}
	.five-button span{
		line-height: calc(4 / 3);
		border-radius: 6rem;
	}
	.Tm-office__container.-five{
		margin-bottom: 0;
	}

}



/*-------------------------------
	MIYUKI×サステナブル Tm-sustainable
-------------------------------*/
.Tm-sustainable{
	background: var(--bg-bluecolor);
}
	.Tm-sustainable::before{
		background: #fff;
	}

.Tm-sustainable__sub-title{
	margin-bottom: 4rem;
}
.Tm-sustainable__sub-title .title_in-flex{
	margin-top: 3rem;
	display: flex;
		align-items: center;
		justify-content: center;
}
	.Tm-sustainable__sub-title .title_in-flex .sust-in__item01{
		width: 29rem;
		margin-right: 2rem;
		display: inline-block;
	}
	.Tm-sustainable__sub-title .title_in-flex .sust-in__item02{
		width: 5.8rem;
		margin-right: 2rem;
		display: inline-block;
	}
	.Tm-sustainable__sub-title .title_in-flex .sust-in__item03{
		font-size: 3.5rem;
			margin-right: 2em;
	}
/*-------------.sustainable__block-----*/
.sustainable__block{
	margin-bottom: 13rem;
	display: flex;
		justify-content: center;
		align-items: center;
		flex-wrap: wrap;
	gap: 2rem;
}
.sustainable__item{
	width: calc((100% - (2rem * 3)) / 4);
		min-width: 20rem;
}
.sustainable__item-imgbox{
	margin-bottom: 2rem;
	display: block;
}
.sustainable__item-ptxt{
	display: block;
	text-align: center;
}

/*---------------SDGs----------*/
.sdgs__block{
	width: 100%;
	background: #fff;
	border: 2px solid var(--maincolor);
	display: flex;
		align-items: stretch;
		justify-content: center;
		flex-wrap: wrap;
}
.sdgs__item{
	width: 50%;
}
.sdgs__txtbox{
	padding: 6rem;
	display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
}
.sdgs__txtbox img{
	width: 100%;
	display: inline-block;
	margin-bottom: 2.6rem;
}
.sdgs__p{
	font-size: 1.6rem;
		letter-spacing: 0;
		line-height: 2;
		text-align: left;
}
@media screen and (min-width:769px) , print{

}
@media screen and (max-width:1240px) and (min-width: 769px){

}
@media screen and (max-width:960px) and (min-width: 769px){

	.Tm-sustainable__sub-title .title_in-flex .sust-in__item03{		
		margin-right: 0;
	}
	
	.sdgs__block{
		border: 0.4rem solid var(--maincolor);
		max-width: 65rem;
		margin-left: auto;
		margin-right: auto;
	}
	.sdgs__item{
		width: 100%;
	}
	.sdgs__txtbox{
		padding: 3.7rem 6rem;
	}
	.sdgs__txtbox img{
		width: 100%;
		margin-bottom: 3.1rem;
	}
}

@media screen and (max-width:768px){
	.Tm-sustainable{}
	
	.Tm-sustainable__sub-title{
		margin-bottom: 7rem;
	}
	.Tm-sustainable__sub-title .title_in-flex{
		margin-top: 3rem;
		display: flex;
			align-items: center;
			justify-content: center;
	}
		.Tm-sustainable__sub-title .title_in-flex .sust-in__item01{
			width: 27rem;
			margin-right: 3rem;
		}
		.Tm-sustainable__sub-title .title_in-flex .sust-in__item02{
			width: 4.5rem;
			margin-right: 3rem;
		}
		.Tm-sustainable__sub-title .title_in-flex .sust-in__item03{
			font-size: 3.5rem;
				margin-right: 0;
		}
	/*-------------.sustainable__block-----*/
	.sustainable__block{
		margin-bottom: var(--padding-topbottom);
		gap: 3rem;
	}
	.sustainable__item{
		width: calc((100% - 3rem) / 2);
			min-width: unset;
	}
	.sustainable__item-imgbox{
		margin-bottom: 0.8rem;
		display: block;
	}
	.sustainable__item-ptxt{
		display: block;
		text-align: center;
	}
	
	/*---------------SDGs----------*/
	.sdgs__block{
		border: 0.4rem solid var(--maincolor);
	}
	.sdgs__item{
		width: 100%;
	}
	.sdgs__txtbox{
		padding: 3.7rem 6rem;
	}
	.sdgs__txtbox img{
		width: 100%;
		margin-bottom: 3.1rem;
	}
	.sdgs__p{
		font-size: 2.8rem;
	}
}