@charset "utf-8";

/*
/*    CSS MENU -PCTB
*/


/*
*********************************************************************************
/*
/* 大枠
/*
/*******************************************************************************/

body {
	min-width: 1280px;
}

.inner,
.inner_s,
.inner_940,
.inner_950,
.main_col02 {
	margin-left: auto;
	margin-right: auto;
}

.inner,
.main_col02 {
	width: 1200px;
}

.inner_s {
	width: 1086px;
}
.inner_940{
	width: 940px;
}

.inner_950 {
	width: 950px;
}

.pc_tac {
	text-align: center;
}



/*
*********************************************************************************
/*
/* header
/*
/*******************************************************************************/

header .hamburger {
	display: none;
}

header {
	height: 90px;
	border-width: 2px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	min-width: 1280px;
}

header .logo {
	width: 364px;
	margin-left: 30px;
	padding-top: 5px;
}

header .h_con a {
	font-size: 1.6rem;
	width: 150px;
	padding: 3px 0 0 0;
	position: absolute;
	top: 0;
	margin: 0;
	height: 100%;
	right: 0;
}

header nav {
	display: block;
	margin-left: auto;
	margin-right: 173px;
	width: calc(100% - 580px);
	text-align: right;
	padding-top: 3px;
}

header nav a {
	text-decoration: none;
}

header .en_change {
	font-size: 1.3rem;
	padding: 3px 17px;
}

header .main_nav {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	line-height: 1.37;
}

header .subnav_close {
	display: none;
}

header .subnav {
	display: none;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	width: 100vw;
	background: var(--blue);
}

header nav a.parent {
	padding: 10px 17px;
}

header .main_nav > li > a {
	position: relative;
	isolation: isolate;
	z-index: 10;
}

header .main_nav > li > a:hover {
	opacity: 1;
}

header .main_nav > li > a:before {
	content: '';
	display: block;
	position: absolute;
	bottom: 3px;
	left: 50%;
	width: calc(100% - 34px);
	height: 2px;
	z-index: 1;
	background: var(--blue);
	transform: translateX(-50%);
	opacity: 0;
	transition: 0.5s;
}

header .main_nav > li:has(.subnav) > a:after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100px;
	pointer-events: none;
	transition: 0.5s ease;
	background: url(../images/h_nav2.png) no-repeat center 48px / 17px auto;
}

header .main_nav > li.js_hover:has(.subnav) > a:after {
	background-image: url(../images/h_nav.png);
	transition: 0.5s ease;
	top: -2px;
}

header .main_nav > li:hover > a:after {
	pointer-events: auto;
}

header .main_nav > li.cr > a:before,
header .main_nav > li:hover > a:before {
	opacity: 1;
}

header .subnav {
	opacity: 0;
	pointer-events: none;
	transition: 0.5s;
	display: block !important;
	left: 0;
	transform: inherit;
	width: 100%;
}

header .main_nav .inner {
	position: relative;
}

header .subnav_close {
	position: absolute;
	display: block;
	top: 10px;
	right: 0;
	background: #001F58;
}

header .subnav_close a {
	color: #fff;
	text-decoration: none;
	width: 24px;
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 300;
	letter-spacing: 0;
	line-height: 24px;
	padding-top: 1px;
	height: 24px;
}

header .main_nav > li.js_hover .subnav {
	opacity: 1;
	pointer-events: auto;
}

.js_subnav_closing header .main_nav > li:hover .subnav {
	opacity: 0;
	pointer-events: none;
}

header .nav_recruit {
	margin-left: 26px;
}

header .nav_recruit > a > span {
	position: relative;
}

header .nav_recruit > a > span:before {
	background: #003391;
	position: absolute;
	content: "";
	width: 1px;
	height: 22px;
	top: 2px;
	left: -30px;
}

header .subnav_in {
	width: 950px;
	margin: 0 0 0 auto;
	padding: 30px 40px 30px 0;
	color: #fff;
}

header .subnav_dl {
	display: grid;
	grid-template-columns: 120px 1fr;
	gap: 40px;
	text-align: left;
}

header .subnav_dl > * {
	padding: 10px 0;
}

header .subnav_dl > dt {
	font-weight: 700;
	font-size: 2rem;
	border-right: 1px solid rgb(194 203 213 / 50%);
}

header .subnav_dl > dt a {
	color: #fff;
}

header .subnav_dl .subnav_con .stl {
	font-size: 1.6rem;
	font-weight: 500;
	margin-bottom: 8px;
}

header .subnav_dl > dd > .subnav_con:not(:first-child) .stl {
	margin-top: -10px;
}

header .subnav_dl .subnav_con + .subnav_con {
	margin-top: 40px;
}

header .subnav_con a {
	border-bottom: 1px solid var(--gray);
	border-right: 1px solid var(--gray);
	text-align: center;
	color: #fff;
	text-decoration: none;
	font-size: 1.6rem;
	font-weight: 500;
	height: 70px;
	display: grid;
	place-content: center;
	place-items: center;
	padding-top: 1px;
}

header .subnav_con > ul {
	display: grid;
	grid-template-columns: repeat(3, 250px);
}

header .subnav_con04 > ul {
	grid-template-columns: repeat(4, 1fr);
}

header .subnav_con > ul:not(.nav_works_bnr) {
	border-left: 1px solid var(--gray);
}

header .subnav_con:not(.subnav_con04) > ul > li:nth-child(-n+3) a {
	border-top: 1px solid var(--gray);
}

header .subnav_con04 > ul > li:nth-child(-n+4) a {
	border-top: 1px solid var(--gray);
}

header .subnav_con .nav_works_bnr a {
	background: #f76430 url(../images/works/nav_refractory_pc.png) no-repeat center center / cover;
	color: #fff;
	font-weight: 700;
	position: relative;
	border: none !important;
	font-family: var(--pick);
}

header .subnav_con .nav_works_bnr a:before {
	position: absolute;
	content: "";
	top: 7px;
	left: 7px;
	background: url(../images/works/logo_cm.svg) no-repeat left top / contain;
	width: 66px;
	height: 9px;
}

header .subnav_con .nav_works_bnr .ceramicsand a {
	background-image: url(../images/works/nav_ceramicsand_pc.png);
	background-color: #00b2f2;
}

header .subnav_con .nav_works_bnr .carbonneutral a {
	background-image: url(../images/works/nav_carbonneutral_pc.png);
	background-color: #00d9b1;
}


/*
*********************************************************************************
/*
/* footer + pagetop
/*
/*******************************************************************************/

.pagetop {
	width: 60px;
	height: 60px;
	bottom: 15px;
	right: 25px;
}

.pagetop:before {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	border-radius: 50%;
	background: #fff;
	z-index: 1;
}

.pagetop > a {
	position: relative;
	z-index: 1;
}

footer {
	margin-top: 150px;
}

body :has(.footer_top_m) > footer {
	margin-top: 80px;
}

footer .f_contactus {
	background-image: url(../images/contact/foot_bg_pc.png);
	padding: 40px 0 60px;
}

footer .f_contactus .ori_tl {
	font-size: 3.6rem;
	margin-bottom: 30px;
}

footer .f_contactus.f_contactus_recruit .ori_tl {
	font-size: calc(30* var(--px-rem));
}

footer .f_contactus .width_col02 {
	display: grid;
	gap: 40px;
	grid-template-columns: 1fr 1fr;
}

footer .f_contactus .width_col02 .colbox {
	font-size: 1.6rem;
	padding: 33px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	line-height: 1.6;
}

footer .f_contactus .width_col02 .colbox + .colbox {
	margin: 0;
}

footer .f_contactus .width_col02 .colbox.tel_a_box a {
	padding: 33px;
	pointer-events: none;
}

footer .f_contactus .btn a {
	margin: 30px auto 0;
	width: 260px;
	padding: 18px 16px 15px 16px;
}

footer .f_contactus .btn a:before {
	width: 10px;
	right: 20px;
}

footer .f_contactus .btn a:after {
	width: 20px;
	left: 22px;
}

footer .f_contactus .tel_block {
	margin-top: 13px;
	font-size: 4.5rem;
}

footer .f_contactus .tel_block p {
	padding-left: 40px;
	line-height: 1.3;
}

footer .f_contactus .tel_block p:before {
	width: 24px;
	height: 26px;
	top: 20px;
	left: 0;
}

footer .f_contactus .time {
	font-size: 1.2rem;
	margin-top: 10px;
}

footer .f_navwrap {
	padding: 80px 0 40px;
}

footer .f_navwrap .f_logo {
	grid-column: 2 / 3;
	grid-row: 1 / 2;
}

footer .f_navwrap .f_logo a {
	width: 184px;
	margin: 0;
}

footer .f_navwrap .f_link_in {
	grid-column: 2 / 3;
	grid-row: 2 / 3;
}

footer .f_navwrap .f_link_in a {
	margin: 37px 0 0 0;
	width: 100%;
	padding: 6px 6px 5px 39px;
}

footer .f_navwrap .f_link_in a:before {
	width: 20px;
	top: 9px;
	left: 20px;
}

footer .f_nav_block {
	display: grid;
	grid-template-columns: 1fr 184px;
	grid-template-rows: 127px 1fr 51px;
}

footer .f_navwrap nav {
	grid-column: 1 / 2;
	grid-row: 1 / 4;
}

footer .f_navwrap .f_recruit {
	grid-column: 2 / 3;
	grid-row: 3 / 4;
	display: grid;
	align-items: end;
	justify-items: end;
}

footer .f_navwrap .f_recruit a {
	margin: 0;
	font-size: 1.4rem;
	padding: 11px;
	width: 184px;
}

footer .f_navwrap .f_nav {
	font-size: 1.4rem;
}

footer .f_navwrap .subnav_con {
	padding-left: 0;
	margin-top: 10px;
}

footer .f_navwrap .subnav_con li.kaigyou:after {
	display: none;
}

footer .f_navwrap .subnav_con li:nth-child(2n+1) {
	padding: 0;
}

footer .f_navwrap .subnav_con li {
	min-width: inherit;
	padding-right: 2em !important;
}

footer .f_navwrap .f_nav > li > .parent {
	margin-top: 30px;
}

footer .f_navwrap .subnav_con .stl {
	width: 73px;
}

footer .f_navwrap .subnav_con .stl:after {
	height: 15px;
	top: 7px;
}

footer .f_navwrap .subnav_con .stl + ul {
	width: 511px;
	margin-left: 20px;
}

footer .f_navwrap .subnav_con + .subnav_con {
	margin-top: 5px;
}

footer .f_navwrap .f_ad_wrap {
	margin-top: 40px;
	padding-top: 30px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

footer .f_navwrap .f_privacy {
	margin: 0;
}

footer .f_navwrap small {
	text-align: right;
	width: 100%;
	display: block;
	margin-top: 10px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
cookie  */

.cky-consent-container .cky-consent-bar {
	max-width: 1160px;
	margin: 0 auto 20px;
	padding: 15px 0 !important;
	position: relative;
}

.cky-notice-btn-wrapper .cky-btn {
	font-size: 1.6rem;
	width: 150px;
	height: 50px;
	padding: 10px;
}

.cky-notice-btn-wrapper {
	margin: 0;
	width: 150px;
}

.cky-notice-des {
	padding: 0 0 0 25px;
}

.cky-notice-group {
	display: grid;
	grid-template-columns: 1fr 180px;
	align-items: center;
}

.cky-consent-bar .cky-banner-btn-close {
	width: 20px !important;
	height: 20px !important;
	top: 6px !important;
	bottom: inherit !important;
	right: 5px !important;
}

.cky-consent-bar .cky-banner-btn-close:before {
	font-size: 18px!important;
}



/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
cookie-notice  */
#cookie-notice.cookie-revoke-hidden .cookie-notice-container {
	width: 1160px !important;
	min-width: initial !important;
	margin: 0 auto 20px auto;
	padding: 13px 28px !important;
	display: grid !important;
	grid-template-columns: 1fr 150px;
	align-items: center;
	justify-content: center;
	gap: 20px;
	min-width: 1160px;
	left: 50%;
	transform: translate(-50%, 0%);
	position: absolute !important;
	bottom: 0;
	z-index: 500;
}

#cookie-notice .cookie-notice-container {
	font-size: 1.4rem !important;
	line-height: 1.7 !important;
}

#cookie-notice #cn-accept-cookie {
	font-size: 16px !important;
	padding: 17px 42px  !important;!!important;
	margin: 0 !important;
}

#cookie-notice #cn-notice-text {
margin:0 !important;
}

#cookie-notice .cn-close-icon {
	right: calc(50% - 572px);
	top: 22px;
	width: 13px;
	height: 13px;
	bottom: inherit;
}


#cookie-notice .cn-close-icon:after, #cookie-notice .cn-close-icon:before {
	height: 12px;
}

/*
*********************************************************************************
/*
/* モジュール
/*
/*******************************************************************************/


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
main */

.main_col02_snav {
	position: relative;
	margin-top: -20px;
}

.main_col02_snav .main_col02_r {
	order: 2;
}

.main_col02_snav .main_col02_r .first_block {
	padding-top: 20px;
}

.main_col02.main_col02_snone .main_col02_r {
	order: 2;
	grid-column: 2 / 3;
}

.main_col02_indent {
	padding-left: 59px;
	border-left: 1px solid var(--gray);
}


/*------------------------------------------------------------------------------
サイドナビ */

.main_col02_snav .main_col02_l {
	border: none;
	position: sticky;
	top: 0;
	left: 0;
	top: 90px;
	width: 240px;
	margin-bottom: 40px;
	height: max-content;
	padding-top: 20px;
}

.main_col02_snav .side_nav_btn {
	display: none;
}

.main_col02_snav .side_nav_in_li li {
	position: relative;
}

.main_col02_snav .side_nav_in_li li:before {
	position: absolute;
	content: "";
	transition: 0.5s ease;
	opacity: 0;
	background: #F53F1D;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	top: 11px;
	left: 0;
}

#prod_cerabeads .main_col02_snav .side_nav_in_li li:before {
	background: #24B2F2
}

#prod_aeronite .main_col02_snav .side_nav_in_li li:before {
	background: #26D9B1
}

.main_col02_snav .side_nav_in_li li.cur:before {
	transition: 0.5s ease;
	opacity: 1;
}

.main_col02_snav .main_col02_l .side_nav .snav_cat {
	font-size: 2rem;
	padding-bottom: 14px;
	margin-top: 10px;
}

.main_col02_snav .main_col02_l .side_nav .side_nav_li > li p:not(.snav_cat),
.main_col02_snav .main_col02_l .side_nav .side_nav_li > li p:not(.snav_cat) a {
	font-size: 2rem;
	padding: 10px 0;
}

.main_col02_snav .main_col02_l .side_nav .side_nav_li > li p:not(.snav_cat) {
	padding: 0;
}

.main_col02_snav .main_col02_l .side_nav .side_nav_in_li a {
	font-size: 1.4rem;
	padding: 7px 0 7px 20px;
}

.main_col02_snav .main_col02_l .side_nav .side_nav_in_li {
	margin-bottom: 20px;
}

.main_col02_snav .main_col02_l .snav_lv01 + .side_nav_in_li {
	margin-top: 15px;
}

.main_col02_snav .main_col02_l .side_nav .side_nav_li > li + li {
	margin-top: 0;
}

.main_col02_snav .main_col02_l .side_nav .btn a {
	width: 139px;
	margin-top: 25px;
	padding: 7px 15px 5px 13px;
}

.main_col02_snav .main_col02_l .side_nav .btn a:before {
	right: 9px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
テキスト */

.copy01 {
	font-size: 3rem;
}

.pick_lead {
	max-width: 600px;
	font-size: 2.4rem;
	line-height: 2.7;
	margin: 0 auto;
	text-align: center;
}

.pick_lead p {
	display: inline-block;
	text-align: left;
}

.w_tl_pen_ja .lead {
	text-align: center;
	font-size: 2rem;
	margin-bottom: 60px;
}

.w_tl_pen_ja .b_lead {
	font-size: 2.6rem;
	margin-bottom: 40px;
}

.w_tl_pen_ja .tl_pen_ja + .b_lead {
	margin-top: 80px;
}

.w_tl_pen_ja > .txt {
	line-height: 2.3;
}

.cs_txt {
	font-size: 8rem;
	line-height: 1;
	padding-bottom: 120px;
}

.txt_lh_l_pc {
	line-height: 2.4em;
}

/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
タイトル */

.page_tl {
	margin-bottom: 130px;
	height: 440px;
	margin-top: 90px;
	background: url(../images/page_tl_pc.png) no-repeat center top / auto 100%;
}

.page_tl .ja {
	margin-top: 140px;
	font-size: 5.6rem;
	padding: 8px 10px 0px;
}

.page_tl_big {
	height: 670px;
	background-image: url(../images/works/catbg_refractory_pc.png);
	margin-top: 90px;
	margin-bottom: 90px;
}

.page_tl_big.page_tl_ceramicsand {
	background-image: url(../images/works/catbg_ceramicsand_pc.png);
}

.page_tl_big.page_tl_carbonneutral {
	background-image: url(../images/works/catbg_carbonneutral_pc.png);
}

.page_tl_big .ceratechmade {
	width: 427px;
	padding-top: 40px;
}

.page_tl_big .tl {
	height: 76px;
	margin-top: 170px;
}

.page_tl_big .txt {
	font-size: 3.5rem;
	margin-top: 65px;
}

.page_tl_m {
	margin-top: 90px;
	height: 440px;
	background-image: url(../images/works/catbg_refractory_pc.png);
	padding-bottom: 15px;
	margin-bottom: 130px;
}

.page_tl_m.page_tl_ceramicsand {
	background-image: url(../images/works/catbg_ceramicsand_pc.png);
}

.page_tl_m.page_tl_carbonneutral {
	background-image: url(../images/works/catbg_carbonneutral_pc.png);
}

.page_tl_m .tl_cat {
	font-size: 2.4rem;
}

.page_tl_m .tl {
	font-size: 6rem;
	margin-top: 5px;
}

.tl_lv01 {
	font-size: 3.2rem;
	margin-bottom: 60px;
	margin-top: 130px;
}

.tl_lv01 .stxt {
	font-size: 1.6rem;
	padding-top: 3px;
}

.tl_lv02 {
	font-size: 2.4rem;
	padding-top: 70px;
	margin-bottom: 55px;
}

.tl_lv03 {
	font-size: 2rem;
	padding-top: 50px;
	margin-bottom: 20px;
}

.maru_tl {
	padding-top: 25px;
}

.tl_enja {
	font-size: 3.2rem;
	margin-top: -10px !important;
}

.tl_enja .stxt {
	padding-top: 8px;
}

.tl_simple {
	margin-bottom: 20px;
	padding-top: 60px;
}

.tl_simple02 {
	margin-bottom: 12px;
	padding-top: 40px;
}

.tl_simple03 {
	font-size: 2rem;
	margin-top: 50px;
	margin-bottom: 20px;
	padding-top: 15px;
}

.tl_simple04 {
	margin-bottom: 20px;
	padding-top: 35px;
}

.tl_simple04 > li:before {
	margin-bottom: 20px;
	padding-top: 60px;
}

.tl_pen_ja {
	margin-bottom: 35px;
	margin-top: 150px;
}

.tl_pen_ja .en {
	font-size: 1.6rem;
}

.tl_pen_ja .ja {
	font-size: 5rem;
}

.tl_pen_ja .en + .ja {
	margin-top: 15px;
}

.stl_pen_ja:before {
	width: 30px;
}

.stl_pen_ja .en {
	font-size: 1.4rem;
}

.stl_pen_ja .en + .ja {
	margin-top: 7px;
}

.stl_pen_ja .ja {
	font-size: 3rem;
}

.stl_pen_ja .en + .ja .stxt {
	font-size: 2rem;
}

.blue_tl01 {
	margin-top: 100px;
	font-size: 3rem;
	padding-bottom: 40px;
	margin-bottom: 50px;
}

.green_obi_tl {
	font-size: 2rem;
	padding: 11px 10px 9px;
	margin-top: 60px;
	margin-bottom: 12px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
画像 */

figcaption {
	padding-top: 14px;
	font-size: 1.4rem;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
リスト */


/*------------------------------------------------------------------------------
mission_ol */

.mission_ol > li {
	grid-template-columns: 105px 1fr;
}

.mission_ol > li + li {
	margin-top: 50px;
}

.mission_ol .mission_num {
	padding-top: 3px;
}

.mission_ol .txt {
	font-size: 1.8rem;
}


/*------------------------------------------------------------------------------
usage_li */

.usage_li {
	grid-template-columns: repeat(3, 1fr);
	gap: 6px;
}

.usage_li > li {
	padding: 15px 10px;
	font-size: 1.4rem;
	min-height: 50px;
}

.site_txt_area .usage_li_col02 {
	grid-template-columns: repeat(2, 230);
}

.usage_li_col03 {
	grid-template-columns: repeat(3, 1fr);
}

.usage_li_col04 {
	grid-template-columns: repeat(4, 1fr);
}

.usage_li_col05 {
	grid-template-columns: repeat(5, 1fr);
}


/*------------------------------------------------------------------------------
li_dot */

.li_dot.li_dot_txts {
	font-size: 12px;
}


/*------------------------------------------------------------------------------
lineup_li */

.lineup_li {
	gap: 57px;
	justify-items: center;
}

.lineup_li > li {
	max-width: 275px;
}

.lineup_li figure img {
	border-radius: 10px;
}


/*------------------------------------------------------------------------------
li_num */

.li_num {
	margin-top: 50px;
	font-size: 1.4rem;
}


/*------------------------------------------------------------------------------
li_circle */

.li_circle > li {
	padding-left: 16px;
}

.li_circle > li + li {
	margin-top: 0px;
}

.li_circle > li:before {
	width: 6px;
	height: 6px;
	top: 8px;
}

.li_circle02 > li {
	padding-left: 20px;
}

.li_circle02 > li:before {
	width: 8px;
	height: 8px;
	top: 7px;
}

.li_circle02_220 {
	display: grid;
	grid-template-columns: 220px 1fr;
	gap: 3px 10px;
}

.li_circle02_250 {
	display: grid;
	grid-template-columns: 250px 1fr;
	gap: 3px 10px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
ボタン */

.btn a,
.btn_style {
	width: auto;
	min-width: 200px;
	padding: 8px 35px 6px 35px;
	display: inline-block;
	margin-top: 30px;
}

.btn a:before,
.btn_style:before {
	width: 10px;
	right: 14px;
}

.btn_contact a:after {
	width: 20px;
	left: 15px;
}

.btn_dl a:after {
	width: 15px;
	left: 15px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
リンク */

.anchor_slink a {
	padding: 0 18px 0 0;
	margin-top: 15px;
}

.anchor_slink a:before {
	width: 10px;
	margin-top: -2px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
表 */

table tr > * {
	padding: 26px 0px;
	font-size: 1.4rem;
}

table tbody th {
	width: 90px;
	padding-right: 2px;
}

table.th_pc128 tbody th {
	width: 128px;
}


/*------------------------------------------------------------------------------
table_col02 */

.table_col02 {
	display: grid;
	gap: 40px;
	grid-template-columns: 1fr 1fr;
}

.table_col02 > table + table {
	border-top: 1px solid var(--gray);
}

.table_col02.h_fix {
	align-items: stretch;
}

.table_col02.h_fs {
	align-items: flex-start;
}

.table_col02.h_fs_re_under > table + table > tbody > tr:last-child > * {
	border-bottom: none;
}

.table_col02.h_fs_re_under {
	position: relative;
}

.table_col02.h_fs_re_under:before {
	position: absolute;
	content: "";
	background: var(--gray);
	height: 1px;
	width: 450px;
	bottom: 0;
	right: 0;
}

.main_col02 .site_tl01 {
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 3px;
}


/*------------------------------------------------------------------------------
access_table */

.access_table tr > td:nth-of-type(1) {
	width: 315px;
}

.access_table tr > td:nth-of-type(3) {
	text-align: right;
}

.access_table tr > td:nth-of-type(3) a {
	padding-right: 40px;
}

.access_table tr > td:nth-of-type(3) a:after {
	width: 7px;
	height: 7px;
	margin-top: 1px;
	right: 20px;
}


/*------------------------------------------------------------------------------
history_table */

.history_table tbody th {
	width: 60px;
}

.history_table tbody th + th {
	width: 50px;
}


/*------------------------------------------------------------------------------
detail_table / character_table */

.detail_table_wrap .detail_table,
.detail_table_wrap .character_table {
	width: 100%;
}

.detail_table tr > *,
.character_table tr > * {
	height: inherit;
	padding: 5px 5px 4px;
	font-size: 1.4rem
}

.detail_table_col11 tr > * {
	padding: 5px 2px 4px;
	font-size: 1.3rem;
}

.character_table tr > *:not(:first-child) {
	width: 21.087%;
}

.character_table tbody tr:first-child td {
	padding: 5px;
}


/*------------------------------------------------------------------------------
table_sptate */

.table_sptate th,
.table_sptate td {
	display: table-cell;
	padding: 18px 0;
	line-height: 1.65;
	font-size: 1.6rem;
}

.table_sptate th {
	width: 180px;
	padding-right: 10px;
	border-bottom: 1px solid var(--gray);
}

.table_sptate td {
	width: auto;
}

.table_sptate .td_wbtn {
	display: grid;
	grid-template-columns: 1fr 260px;
	gap: 10px;
	align-items: center;
}

.table_sptate .btn {
	margin: -8px 0px;
}

.table_sptate .btn a {
	margin-top: 0;
	width: 260px;
	padding: 9px 8px 7px;
}

.table_sptate_th_s th {
	width: 168px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
gmap */

.gmap {
	height: 300px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
youtube */


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
side_nav */

.main_col02_snav .main_col02_l .side_nav_li {
	display: block;
}

.main_col02_snav .main_col02_l:after {
	display: none;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
prod_cat_tl_box */

.prod_list_block02 {
	padding-bottom: 40px;
}

.prod_cat_tl_box .txt {
	font-size: 2.4rem;
	padding: 16px 30px 11px 30px;
	margin-top: 60px;
}

#cat_house_refractory .prod_cat_tl_box .txt {
	background-image: url(../images/works/tl_refractory_pc.png);
}

#cat_house_ceramicsand .prod_cat_tl_box .txt {
	background-image: url(../images/works/tl_ceramicsand_pc.png);
}

#cat_house_carbonneutral .prod_cat_tl_box .txt {
	background-image: url(../images/works/tl_carbonneutral_pc.png);
}

.prod_list_box .prod_list {
	display: grid;
	grid-template-columns: 1fr 280px;
	grid-template-rows: max-content 1fr;
	column-gap: 40px;
}

.prod_list_box .txt {
	grid-column: 1 / 2;
	grid-row: 1 / 2;
	font-size: 1.4rem;
}

.prod_list_box figure {
	grid-column: 2 / 3;
	grid-row: 1 / 3;
	margin-top: 0;
}

.prod_list_box .btn {
	grid-column: 1 / 2;
	grid-row: 2 / 3;
}

.prod_list_box + .prod_list_box,
.prod_list_block02 > .prod_list_box:first-of-type,
.prod_list_block_col02_wide + .prod_list_block_col02 {
	margin-top: 40px;
	padding-top: 40px;
}

.prod_list_block_col02 .prod_list_box:nth-of-type(2) {
	padding-top: 0px;
}

.prod_list_block.prod_list_block_col02 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 40px;
}

.prod_list_block_col02 .prod_list {
	grid-template-columns: 1fr 170px;
	grid-template-rows: max-content;
	column-gap: 30px;
}

.prod_list_block_col02 .prod_list_box + .prod_list_box {
	margin: 0;
	border: none;
}

.prod_list_block_col02 .prod_list_box:not(:nth-child(1)):not(:nth-child(2)) {
	border-top: 1px solid var(--gray);
	margin-top: 30px;
}

.prod_list_block_col02 .prod_list_box:nth-child(-n+2) .tl_simple {
	padding-top: 0;
}

.prod_list_block_col02 .prod_list figure {
	margin-top: 0;
	grid-row: 1 / 2;
}

.prod_list_block.prod_list_block_col02_wide {
	grid-template-columns: 1fr;
}

.prod_cat_tl_box {
	position: relative;
	margin-bottom: 30px;
}

.prod_cat_tl_box .contact_type {
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translate(0%, -50%);
}

.prod_cat_tl_box .contact_type a {
	width: 190px;
	padding: 6px 5px 4px 5px;
}

.prod_cat_tl_box .contact_type a:after {
	width: 20px;
	left: 15px;
}

.prod_cat_tl_box .contact_type a:before {
	width: 9px;
	right: 15px;
}

.prod_list_block_wbtn {
	padding-bottom: 0;
}
.prod_list_block_wbtn .tl_box {
	display: grid;
	grid-template-columns: 1fr 240px;
	gap: 30px;
	margin-bottom: 20px;
	align-items: end;
}

.prod_list_block_wbtn .btn {
	position: relative;
	bottom: inherit;
	left: inherit;
	grid-column: 2 / 3;
	grid-row: 1 / 2;
}

.prod_list_block_wbtn .btn a {
	width: 100%;
	margin: 0;
}

.prod_list_block_col02 .prod_list_box:nth-child(-n+2) .tl_simple {
	margin-bottom: 0;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
work_type_link */

.work_type_link {
	width: 170px;
}

.prod_cat_tl_box .work_type_link {
	width: 170px;
	top: 50%;
	right: 215px;
	transform: translate(0%, -50%);
}

.prod_list .work_type_link {
	margin-top: 20px;
}

.work_type_link a,
.work_type_link .a_style {
	font-size: 1.2rem;
	height: 30px;
	padding-top: 9px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
organization */

.organization_li ul:after {
	width: 2px;
	top: 24px;
	left: -37px;
}

.organization_li li {
	gap: 72px;
	grid-template-columns: 181px 1fr;
}

.organization_li li + li {
	margin-top: 10px;
}

.organization_li ul > li:last-child:after {
	width: 2px;
	top: 26px;
	left: -37px;
}

.organization_li_wrap .posi {
	border-width: 2px;
	font-size: 1.4rem;
	padding: 7px 5px 5px;
	height: 50px;
	width: 181px;
	border-radius: 3px;
}

.organization_li ul > li:first-child > .posi:before {
	left: -79px;
}

.organization_li .kaisou02 li .posi:before {
	width: 180px;
	top: 22px;
	left: -37px;
	height: 2px;
}

.organization_li .kaisou04 li {
	grid-template-columns: 181px;
}

.organization_tuika {
	top: 70px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
pagelink_prodcat_area */

.pagelink_prodcat_area {
	padding-bottom: 80px;
}

.pagelink_prodcat {
	display: grid;
	grid-auto-columns: 350px;
	grid-auto-flow: column;
	gap: 50px;
	justify-content: center;
}

.pagelink_prodcat > li + li {
	margin-top: 0;
}

.pagelink_prodcat .stl {
	padding: 5px;
}

.pagelink_prodcat .stl:after {
	width: 10px;
	right: 20px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
ceratechmade_link_area */

.ceratechmade_link_area {
	margin-top: 80px;
}

.ceratechmade_link {
	display: grid;
	grid-auto-columns: 1fr;
	grid-auto-flow: column;
	margin: 0 auto;
	width: 1000px;
}

.ceratechmade_link_col03 {
	width: 100%;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
site_txt_area */

.site_txt_area {
	font-size: 1.4rem;
}

.site_txt_area .tl {
	margin-bottom: 35px;
	padding-top: 20px;
	font-size: 2.7rem;
}

.site_txt_wrap .w_cdl {
	width: 650px;
}

.site_txt_wrap_plus {
	position: relative;
	padding-top: 40px;
	margin-top: 60px;
}

.site_txt_wrap_wimg .site_txt_area {
	grid-column: 1 / 2;
	grid-row: 1 / 2;
}

.site_txt_wrap_wimg > :not(.site_txt_area):not(.figure_block):not(.btn) {
	grid-column: 1 / 3;
}

.site_txt_wrap .figure_block {
	grid-column: 2 / 3;
	grid-row: 1 / 2;
	margin-top: 95px;
}

.site_txt_wrap .figure_block figure + figure,
.site_txt_wrap .figure_block .figure_type + figure {
	margin-top: 10px;
}

.site_txt_wrap.site_txt_wrap_wimg {
	display: grid;
	grid-template-columns: 1fr 280px;
	gap: 38px;
}

.site_txt_wrap .btn a {
	width: 240px;
}

.site_txt_wrap .btn {
	position: absolute;
	top: 28px;
	right: 0;
	z-index: 10;
}

.site_txt_wrap .btn_box {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	width: 485px;
	position: absolute;
	top: 9px;
	right: 0;
}

.site_txt_wrap.site_txt_wrap_plus_nob .btn {
	top: -12px;
}

.first_block.site_txt_wrap .btn {
	top: 20px;
}

.first_block.site_txt_wrap .btn a {
	margin-top: 0;
}

.site_txt_wrap .btn_box .btn {
	position: relative;
	top: inherit;
	right: inherit;
}

.site_txt_wrap .btn_box .btn+.btn a {
	margin-top: 30px;
}

.site_txt_area.w_btn_box .tl {
	width: 440px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
hr_block */

.hr_block {
	margin-top: 80px;
	padding-top: 80px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
works_circle */

.works_circle {
	margin: 100px auto 0;
	position: relative;
	width: 1047px;
	height: 1210px;
}

.works_circle li {
	width: 525px;
	position: absolute;
	top: 0;
	left: 50px;
}

.works_circle li img {
	pointer-events: none;
}

.works_circle .ceramicsand {
	top: 340px;
	left: inherit;
	right: 50px;
}

.works_circle .carbonneutral {
	top: inherit;
	bottom: 0;
}

.works_circle li:after {
	position: absolute;
	content: "";
	background: url(../images/works/clink_hover.png) no-repeat center center / contain;
	width: 903px;
	height: 903px;
	transition-duration: .6s;
	scale: 0.5;
	top: -189px;
	left: -189px;
	z-index: -1;
	pointer-events: none;
}

.works_circle li:hover:after {
	scale: 1.0;
}

.works_circle li + li {
	margin: 0;
}

.works_circle .li_a {
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.works_circle .li_a:hover {
	opacity: 1;
}

.works_circle_map img {
	width: 1047px;
	height: 1342px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
works_bnr */

.works_bnr a {
	background-image: url(../images/top/prod_tl_pc.png);
	display: grid;
	padding: 0 60px;
	height: 160px;
	grid-template-columns: 1fr 1fr;
	align-items: center;
	justify-content: space-between;
	text-align: left;
}

.works_bnr a .stl {
	font-size: 2.4rem;
}

.works_bnr a .btn_style {
	width: 200px;
	margin-top: 0;
	margin: 0 0 0 auto;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
news_lists_area */

.news_lists_area {
	margin-top: 100px;
	display: grid;
	grid-template-columns: 1fr 1065px;
	align-items: start;
}

.news_lists_area .news_lists {
	font-size: 1.4rem;
}

.news_lists_area .news_lists a {
	display: grid;
	grid-template-columns: 110px 1fr;
	padding: 17px 0 18px 0;
}

.news_lists_area .news_lists .date {
	padding: 0;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
並び */

.main_col02 {
	display: grid;
	grid-template-columns: 260px 1fr;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
.il_col */

.il_col_wrap {
	margin-top: 70px;
}

.il_col_wrap .il_col {
	margin-top: 60px;
	display: grid;
	grid-template-columns: 400px 1fr;
	gap: 75px;
}

.il_col_wrap .il_col:first-child {
	margin-top: 0;
}

.il_col .stl_pen_ja {
	margin-top: 0;
	padding-bottom: 20px;
	margin-bottom: 15px;
}

.il_col .txt,
.il_col li {
	font-size: 1.4rem;
}

.il_col_wrap .il_col figure {
	margin-bottom: 0;
}

.il_col_wrap .il_col .txt_block {
	align-content: center;
	display: grid;
	align-items: end;
}

.il_col_wrap .il_col:nth-of-type(2n) {
	grid-template-columns: 1fr 400px;
}

.il_col_wrap .il_col:nth-of-type(2n) figure {
	order: 2;
}

.il_col_wrap .il_col:nth-of-type(2n) .txt_block {
	order: 1;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
.tl_wbtn */

.tl_wbtn {
	padding-bottom: 0;
}

.table_sptate_th_ss th {
	width: 110px;
}

.tl_wbtn .btn {
	text-align: right;
	top: 8px;
	width: 200px;
	bottom: inherit;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
contact_list */

.contact_list {
	margin-top: 40px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.contact_list .colbox {
	padding: 28px 20px 40px;
}

.width_col01.contact_list {
	grid-template-columns: 1fr;
}

.contact_list .colbox.tel_a_box {
	padding: 0;
}

.contact_list .colbox.tel_a_box a {
	padding: 28px 20px 40px;
	pointer-events: none;
}

.width_col01.contact_list .colbox.other {
	background-image: url(../images/contact/recruit_bg_pc.png);
}

.contact_list .colbox + .colbox {
	margin: 0;
}

.contacl_list_stl {
	font-size: 2rem;
}

.contact_list .tel_block {
	font-size: 45px;
	margin-top: 10px;
}

.contact_list .tel_block p {
	padding-left: 35px;
	line-height: 1.2;
}

.contact_list .tel_block p:before {
	width: 24px;
	height: 26px;
	top: 18px;
}

.contact_list .tel_block {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}

.contact_list.width_col01 .tel_block p + p {
	margin-left: 30px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
pattern_li */

.pattern_li {
	grid-template-columns: repeat(5, 1fr);
	gap: 5px;
}

.pattern_li > li {
	padding: 18px;
	grid-template-rows: 100px 60px 1fr;
}

.pattern_li figure {
	margin-bottom: 20px;
	border-radius: 5px;
}

.pattern_li .li_tl {
	font-size: 18px;
}

.pattern_li .sent {
	font-size: 13px;
	line-height: 1.7;
}

.pattern_li .wip .wip_label {
	padding: 4px 0px 0 4px;
	font-size: 13px;
	width: 46px;
	height: 20px;
	border-radius: 3px;
	right: 18px;
	bottom: 20px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
pattern_li02 */

.pattern_li_tl {
	margin-top: 50px;
	margin-bottom: 10px;
	font-size: 2.4rem;
}

.pattern_li02 {
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
}

.pattern_li02 > li {
	padding: 25px 0 30px 0;
	grid-template-rows: 30px 135px 60px 1fr;
}

.pattern_li02 .li_tl {
	font-size: 2rem;
}

.pattern_li02 .txt {
	font-size: 13px;
	padding: 0 15px;
	line-height: 1.7;
}

.pattern_li02 .cat {
	font-size: 1.8rem;
	padding: 8px 15px 4px 15px;
	border-radius: 50px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
pattern_li03 */

.pattern_li_tl {
	margin-top: 50px;
	margin-bottom: 10px;
	font-size: 2.4rem;
}

.pattern_li03 {
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	margin-top: 60px;
}

.pattern_li03 > li {
	padding: 30px 0 5px 0;
	grid-template-rows: 30px 135px 60px 1fr;
}

.pattern_li03 .li_tl {
	font-size: 2rem;
	padding-bottom: 0;
}

.pattern_li03 .txt {
	font-size: 13px;
	padding: 0;
	line-height: 1.7;
}

.pattern_li03 figure {
	margin-bottom: 0;
}

.pattern_li03 .catch {
	font-size: 16px;
	padding-bottom: 20px;
}

.pattern_li03 .txt .li_dot li + li {
	margin-top: 10px;
}

.pattern_li03 .txt_area {
	padding: 0px 20px 20px 20px;
}


/*
*********************************************************************************
/*
/* ページ固有
/*
/*******************************************************************************/


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
TOP */

.top_mv {
	margin-top: 90px;
	width: 100%;
	min-width: 1280px;
	overflow: hidden;
	margin-bottom: -190px;
}

.top_mv > * {
	width: 1280px;
	margin: 0 auto;
}

.top_mv > * > * {
	display: block;
	margin: 0 -162px;
}

.top_lead p {
	gap: 33px;
}

.top_lead .top_lead_line {
	font-size: 3.3rem;
	padding: 2px 20px 3px;
	font-weight: 700;
	line-height: 1.1;
}

.top_lead .top_lead_line:before {
	padding: 0 20px 3px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
prof_mission */

.copy01.mission_copy {
	font-size: 3rem;
	padding-top: 17px;
	padding-bottom: 23px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
works_global */

.global_img_area {
	max-width: 940px;
	margin: 0 auto;
}

.global_img_area .img {
	height: 495px;
}

.global_img_area .img svg {
	height: 495px;
}

.global_img_area .txt {
	padding-top: 60px;
	text-align: center;
	line-height: 1.9;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
sustainability */

.sustainability_message {
	padding: 130px 0 0 0px;
	margin-bottom: 370px;
	background: none;
	position: relative;
}

.sustainability_message > * {
	position: relative;
	z-index: 2;
}

.sustainability_message:before {
	content: "";
	background: #1769b5 url(../images/sustainability/bg_guide_pc.jpg) no-repeat center bottom / 100% auto;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% + 32vw);
	z-index: -1;
}

.sustainability_message .tl {
	font-size: 1.6rem;
	margin-bottom: 40px;
}

.sustainability_message .lead {
	font-size: 1.8rem;
}

.sustainability_message_in {
	display: grid;
	grid-template-columns: 720px 252px;
	align-items: end;
	justify-content: space-between;
}

.sustainability_message .img_logo {
	width: 100%;
	margin: 0;
	padding-right: 25px;
}

.sdgs {
	position: relative;
	z-index: 5;
}

.sdgs .tl {
	font-size: 3.4rem;
	margin-bottom: 50px;
}

.sdgs .tl .stxt {
	font-size: 2.3rem;
}

.sdgs_li {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(3, 1fr);
}

.sdgs_li li {
	grid-template-columns: 120px 1fr;
	margin-top: 0 !important;
}

.sdgs_li p {
	padding: 10px 15px;
	font-size: 1.4rem;
}

.sdgs_cat_area {
	margin-top: 150px;
}

.sdgs_anchor > li {
	height: 200px;
}

.sdgs_anchor > li > a {
	background-image: url(../images/sustainability/anchor_environment_pc.jpg);
	font-size: 3.6rem;
	line-height: 1.6;
}

.sdgs_anchor > li.society > a {
	background-image: url(../images/sustainability/anchor_society_pc.jpg);
}

.sdgs_anchor > li.governance > a {
	background-image: url(../images/sustainability/anchor_governance_pc.jpg);
}

.sdgs_anchor > li > a .en {
	font-size: 2.2rem;
}

.sdgs_cat_box {
	margin-top: 100px;
	display: grid;
	grid-template-columns: 430px 1fr;
	gap: 0;
}

.sdgs_cat_block .box_tl {
	width: 430px;
	margin: 0;
	height: calc(100% - 120px);
}

.sdgs_cat_block .box_tl {
	background-image: url(../images/sustainability/bg_environment_pc.jpg);
	position: relative;
	display: flex;
	align-content: center;
	flex-wrap: wrap;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	font-size: 3.6rem;
	line-height: 1.6;
	padding: 45px;
}

.sdgs_cat_block #society .box_tl {
	background-image: url(../images/sustainability/bg_society_pc.jpg);
}

.sdgs_cat_block #governance .box_tl {
	background-image: url(../images/sustainability/bg_governance_pc.jpg);
}

.sdgs_cat_block .box_tl:before {
	position: absolute;
	content: "";
	width: 100%;
	height: 310px;
	top: 0;
	left: 0;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 50%, rgba(0, 0, 0, 0) 100%);
}

.sdgs_cat_block #society .box_tl:before {
	display: none;
}

.sdgs_cat_block #governance .box_tl:before {
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.15) 50%, rgba(0, 0, 0, 0) 100%);
}

.sdgs_cat_block .box_tl > * {
	position: relative;
}

.sdgs_cat_block .box_tl .en {
	font-size: 2.2rem;
}

.sdgs_cat_block .txt_area {
	padding: 60px;
	margin: 100px 0 0;
	line-height: 1.65;
	font-size: 1.4rem;
}

.sdgs_cat_block .txt_area:before {
	top: 0;
	left: -70px;
	width: 830px;
	height: 100%;
}

.sdgs_li_select {
	width: 630px;
	gap: 10px;
	grid-template-columns: repeat(8, 1fr);
	padding-bottom: 30px;
}

.sdgs_cat_box .txt_area > .txt_box .box_stl {
	padding-top: 30px;
	margin-bottom: 15px !important;
}

.sdgs_cat_block .sdgs_policy {
	margin-top: 30px;
}

.sdgs_cat_block .sdgs_policy > li + li {
	margin-top: 20px;
}

.sdgs_cat_block .sdgs_policy dt + dd {
	padding-top: 8px;
}

.sdgs_cat_block .txt_area > .txt_box + .txt_box {
	margin-top: 30px;
}

.sdgs_cat_box .txt_area > .txt_box .img {
	margin-top: 0;
	margin-bottom: 0;
}

.sustainability_img_col03 {
	margin-top: 30px;
	gap: 10px;
}

.sustainability_wimg_col {
	display: grid;
	grid-template-columns: 1fr 212px;
	gap: 15px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
news */


/*------------------------------------------------------------------------------
news_list */

.news_list a {
	display: grid;
	grid-template-columns: 110px 1fr;
	padding: 18px 0;
	font-size: 1.4rem;
}

.news_list .date {
	margin-bottom: 0;
}


/*------------------------------------------------------------------------------
news_detail */

#news_detail main {
	margin-top: 90px;
	padding-top: 100px;
}

#news_detail .date {
	font-size: 1.4rem;
	margin-bottom: 7px;
}

#news_detail .news_tl {
	font-size: 2rem;
	padding-bottom: 20px;
	margin-bottom: 40px;
}

#news_detail .txt {
	line-height: 2.1;
}

#news_detail .news_btn {
	text-align: center;
}

#news_detail .news_btn a {
	margin-top: 60px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
recruit */


/*------------------------------------------------------------------------------
recruit_profile_circle */

.recruit_profile_circle {
	width: 710px;
	margin: 0 auto;
}


/*------------------------------------------------------------------------------
recruit_bnr */

.recruit_bnr {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

.recruit_bnr a {
	height: 280px;
	background-image: url(../images/recruit/graduates_pc.jpg);
	padding: 50px;
}

.recruit_bnr .career a {
	background-image: url(../images/recruit/career_pc.jpg);
}

.recruit_bnr .en {
	font-size: 1.4rem;
}

.recruit_bnr .tl {
	font-size: 3rem;
	margin-top: 2px;
}

.recruit_bnr .txt {
	font-size: 1.4rem;
	margin-top: 10px;
}


/*------------------------------------------------------------------------------
recruit_bnr_mynavi */

.recruit_bnr_mynavi_wrap {
	margin-top: 100px;
	margin-bottom: 0;
}

.recruit_bnr_mynavi {
	--bottom: 15px;
	max-width: 950px;
	transform: translate(-50%);
	left: 50%;
}

.recruit_bnr_mynavi_wrap.js_stop .recruit_bnr_mynavi {
	left: 50%;
}

.recruit_bnr_mynavi a {
	box-shadow: 3px 3px 15px rgba(0, 0, 0, 0.15);
}


/*------------------------------------------------------------------------------
staff_intro */

.staff_intro {
	position: relative;
	min-height: 700px;
	padding-left: 360px;
}

.staff_intro .tl {
	padding: 4px 20px 3px 20px;
	margin-bottom: 40px;
	margin-top: 100px;
}

.staff_intro .tl .busyo {
	font-size: 1.8rem;
	padding-right: 17px;
	padding-top: 0;
}

.staff_intro .tl .name {
	font-size: 2.4rem;
}

.staff_box.staff_box01 figure {
	width: 320px;
	float: inherit;
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
}

.staff_intro .sent {
	font-size: 1.4rem;
	line-height: 1.8;
}

.staff_intro_r {
	padding-left: 0;
	padding-right: 360px;
}

.staff_intro_r .staff_box.staff_box01 figure {
	left: inherit;
	right: 0;
}

.staff_box .stl {
	width: 100%;
	font-size: 1.6rem;
	margin-bottom: 15px;
	margin-top: 30px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
404 */

.page404con {
	margin-top: 90px;
	padding-top: 100px;
}

.page404con .img404 {
	width: 620px;
	margin-bottom: 80px;
}

.page404con .lead {
	font-size: 2.6rem;
	margin-bottom: 35px;
}

.page404con .txt {
	text-align: center;
	line-height: 2;
}

.page404con .btn a {
	margin-top: 50px;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
privacy */

.privacy_time {
	font-size: 1.4rem;
	margin-bottom: 10px;
}

.privacy_name {
	margin-top: 35px;
	font-size: 1.4rem;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
/works/catalyst */

.catalyst_txt_matome {
	font-size: 2rem;
}


/*------------------------------------------------------------------------------
--------------------------------------------------------------------------------
投稿ページスタイル */

.news_con .alignright {
	width: auto;
	max-width: 100%;
	margin-right: 0;
	margin-left: 20px;
	float: right;
}

.news_con .alignleft {
	max-width: 100%;
	width: auto;
	margin-left: 0;
	margin-right: 20px;
	float: left;
}

.news_con p:has(.aligncenter):after {
	content: "";
	display: block;
	clear: both;
}

.news_con p:has(.alignnone):after {
	content: "";
	display: block;
	clear: both;
}