@charset "UTF-8";
/* CSS Document */

@import url(reset.css);

html { scroll-behavior: smooth; }

.cf::after{
	content: "";
	display: block;
	clear: both;
}
img {
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic;
}
main { display: block; } /* IE11対策*/



/* =====　全体　===== */
body {
	font-family:'Nunito Sans', '游ゴシック Medium',YuGothic,YuGothicM,'Hiragino Kaku Gothic ProN','Hiragino Kaku Gothic Pro',メイリオ,Meiryo,sans-serif;
	font-size: 87.5%;
}
img.auto { width: 100%; height: auto; }

.txtFont { font-family: 'Nunito Sans', sans-serif; }
.txtNavy { color: #1f2b61; }

a { color: #1f2b61; }

a.pic { transition: all .4s ease; }
a.pic:hover { opacity: .6; }



/* SP用 */
.forPC { display: none; }
.br4pc { display: none; }

/* ヘッダ */
header.ghead {
	padding: 25px;
	background-color: #edf6fc;
	text-align: center;
}
header.ghead h1 { width: 50px; }
header.ghead h2 { display: none; }

/* ハンバーガー */
.humberger {
	width: 45px;
	height: 31px;
	position: fixed;
	top: 20px;
	right: 20px;
	z-index: 1000;
}
.humberger span,
.humberger::before,
.humberger::after {
	display: block;
	width: 35px;
	height: 1px;
	position: absolute;
	left: 5px;
	top: 50%;
	transform: translate(0, -50%);
	background-color: #ffed00;
	transition: all .4s ease;
}
.humberger span {
	top: 50%;
	background-color: #ffed00;
}
.humberger::before {
	content: "";
	top: 20%;
	background-color: #187fc2;
}
.humberger::after {
	content: "";
	top: 80%;
	background-color: #e40013;
}
.humberger.close span,
.humberger.close::before,
.humberger.close::after {
	background-color: white; 
	top: 50%;
}
.humberger.close span {	transform: translate(0, -50%) rotate(-45deg); }
.humberger.close::before {
	transform: translate(0, -50%) rotate(45deg);
	opacity: 0;
}
.humberger.close::after { transform: translate(0, -50%) rotate(45deg); }

/* ドロワー */
.drawer {
	position: fixed;
	right: -120%;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(24, 127, 195, .9);
	z-index: 500;
	transition: all .4s ease-in-out;
	overflow: auto;
	box-sizing: border-box;
	padding: 80px 1vw 60px;
	display: flex;
	justify-content: center;
	font-size: 92.5%;
	line-height: 1.25;
}
.drawer ul { margin: 0 4vw; }
.drawer ul li { margin-bottom: 10px; }
.drawer ul li:last-child { margin-bottom: 0; }
.drawer ul li.page {
	margin-top: 2em;
	font-weight: 700;
}
.drawer ul li.accs { margin-top: 4em; }
.drawer ul li a{
	text-decoration: none;
	color: white;
}
.drawer.show { right: 0; }

/* フッタ */
footer.gfoot {
	background-color: #ededed;
	padding: 50px 30px 30px;
	display: flex;
	justify-content: center;
	line-height: 1.35;
	font-size: 90%;
}
footer.gfoot .logo {
	width: 70px;
	margin-right: 30px;
}
footer.gfoot .foot_info p:first-child { font-weight: 700; }
footer.gfoot .foot_info p:nth-child(4) { font-weight: 700; margin-top: 15px; }
footer.gfoot .foot_info p:nth-child(2),
footer.gfoot .foot_info p:nth-child(5) { margin: 6px 0 4px; }
footer.gfoot .foot_info p.foot_copy {
	margin-top: 20px;
	color: #5a5a5a;
	font-size: 90%;
}

/* PAGE UP!!! */
#pageup {
	position: fixed;
	bottom: 30px;
}
#pageup p {
	width: 50px;
	height: 50px;
	background: rgba(24, 127, 195, .5) url(../images/arrow_pageup.svg) center center / 20px auto no-repeat;
	cursor: pointer;
	transition: all .4s ease;
	position: relative;
}



/* 下層共通 */
.cate_tit_sec {
	text-align: center;
	padding: 40px 25px 20px;
	box-sizing: border-box;
}
.cate_tit_sec h1 { font-size: 180%; }
.cate_tit_sec .tit_jpn {
	color: #505050;
	margin-top: 12px;
	line-height: 1.5;
	letter-spacing: .5em;
}
.cate_tit_sec .tit_jpn span { padding-left: .5em; }
.cate_tit_sec .tit_cap {
	text-align: left;
	line-height: 2;
}
.cont_sec { padding: 50px 25px 35px; }
.cont_sec.bg_blue { background-color: #edf6fc; }
.cont_sec h1.sec_tit {
	font-size: 144%;
	color: #0080ca;
	font-weight: 700;
	letter-spacing: .3em;
	border-left: solid 10px #ffee00;
	padding-left: 15px;
}
.cont_sec .cont_wrap { margin-top: 30px; }
.cont_sec .txt { line-height: 2; }



/* 会社案内 */
.cate_tit_sec .cate_tit_company {
	background: url(../images/top_sec1_illst_sp.png) center bottom / contain no-repeat;
	height: 122vw;
}
.cont_sec .cont_wrap .message_cont { margin-top: 25px; }
.cont_sec .cont_wrap .message_cont .signature {
	margin-top: 50px;
	display: flex;
	justify-content: flex-end;
}
.cont_sec .cont_wrap .message_cont .signature .title {
	padding-top: .5em;
	margin-right: 20px;
	letter-spacing: .15em;
	font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
}
.cont_sec .cont_wrap .message_cont .signature .sign img { width: 150px; height: auto; }
.cont_sec .cont_wrap dl.history { line-height: 1.35; }
.cont_sec .cont_wrap dl.history dt {
	margin-top: 1.5em;
	width: 5em; 
}
.cont_sec .cont_wrap dl.history dd {
	padding-left: 5em;
	margin-top: -1.35em;
}
.cont_sec .cont_wrap dl.history dd p { margin-top: 1em; }

.cont_sec .cont_wrap .chart {
	max-width: 550px;
	margin: 0 auto;
}

.cont_sec .cont_wrap dl.profile { line-height: 1.35; }
.cont_sec .cont_wrap dl.profile dt {
	font-weight: 700;
	margin-top: 1.2em;
}
.cont_sec .cont_wrap dl.profile dd {
	padding-left: .8em;
	margin-top: 8px;
}
.cont_sec .cont_wrap dl.profile dd > ul { margin: 0 0 1.6em 1.35em; }
.cont_sec .cont_wrap dl.profile dd > ul > li { margin-top: 8px; }
.cont_sec .cont_wrap dl.profile dd > p {
	text-indent: -1.35em;
	margin-left: 1.35em;
}

.cont_sec .cont_wrap dl.profile dd > ul.permit > li span { display: block; }
.cont_sec .cont_wrap dl.profile dd.clms span.txtS { font-size: 90%; }

.cont_sec .cont_wrap dl.profile dd .qualify_ttl {
	margin-top: 2em;
	line-height: 2;
	font-weight: 700;
	position: relative;
}
.cont_sec .cont_wrap dl.profile dd .qualify_ttl .logo {
	width: 80px;
	position: absolute;
	top: -20px;
	right: 30px;
}
.cont_sec .cont_wrap dl.profile dd.clms ul.qualify > li {
	margin-top: 0;
	line-height: 2;
	display: flex;
	justify-content: space-between;
}
.cont_sec .cont_wrap dl.profile dd.clms ul.qualify > li span.tit { text-align: left; }
.cont_sec .cont_wrap dl.profile dd.clms ul.qualify > li span.num {
	text-align: right;
	margin-left: .5em;
}



/* 事業紹介 */
.cate_tit_sec .cate_tit_service {
	background: url(../images/service_main_sp.png) 50% 80px / 90% auto no-repeat;
}
.cate_tit_sec .cate_tit_service .tit_cap { padding-top: 94vw; }

.service_btns_list { margin-top: 30px; }
.service_btns_list li { margin-top: 20px; }
.service_btns_list li a {
	display: block;
	font-size: 115%;
	font-weight: 700;
	text-decoration: none;
	color: #187fc3;
	text-align: center;
	background-color: #edf6fc;
	padding: 16px 15px 13px 5px;
	position: relative;
}
.bg_blue .service_btns_list li a { 	background-color: white; }
.service_btns_list li a:hover { background-color: #fffccc; } 
.service_btns_list li a::after {
	content: "";
	display: block;
	width: 12px;
	height: 16px;
	background: url(../images/arrow_skyblue.svg) right center / contain no-repeat;
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translate(0, -50%);
}
.ntt_list li { padding-left: 1em; }

/* 事業紹介　下層（solution / nttbiz） */
h1.solution_tit {
	color: #187fc3;
	font-size: 150%;
	line-height: 1.25;
	font-weight: 700;
	border-left: solid 10px #187fc3;
	padding: 2px 0 0 20px;
}
dl.solution_cont_list { margin-top: 40px; }
dl.solution_cont_list dt {
	color: #187fc3;
	font-weight: 700;
	margin-top: 20px;
}
dl.solution_cont_list dd {
	margin-top: 5px;
	line-height: 2;
}
dl.solution_cont_list dd ul li {
	line-height: 1.5;
	text-indent: -1.25em;
	margin: 10px 0 0 1.25em;
}
ul.solution_box_list { margin-top: 30px; }
ul.solution_box_list li {
	color: #187fc3;
	font-weight: 700;
	background-color: #ededed;
	text-align: center;
	box-sizing: border-box;
	padding: 12px 5px 10px;
	margin-top: 20px;
}
.cont_sec.solution_fig {
	padding: 25px 25px;
	background-color: #f5f5f5;
}
.cont_sec.ntt_fig {
	padding: 0;
	background-color: #f5f5f5;
}



/* 取扱商材 */
.cate_tit_sec .cate_tit_product {
	background: url(../images/top_sec3_illst_sp.png) 50% 80px / 90% auto no-repeat;
}
.cate_tit_sec .cate_tit_product .tit_cap { padding-top: 98vw; }
.prtnr_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.prtnr_list li { 
	width: 40vw;
	margin-top: 7vw;
}
.prtnr_list li:nth-child(1),
.prtnr_list li:nth-child(2) { margin-top: 0; }
.prtnr_list li a { 
	display: block;
	text-align: center;
	text-decoration: none;
	color: black;
	box-sizing: border-box;
	height: 40vw;
	background: white url(../images/arrow_navy.svg) 54% 90% / 14px auto no-repeat;
	padding: 10px;
	line-height: 1.25;
	position: relative;
}
.prtnr_list li a .logo { 
	position: absolute;
	top: 54%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 84%;
	height: 15vw;
	background-position: center center;
	background-size: contain;
	background-repeat: no-repeat;
}
.prtnr_list li:nth-child(1) a .logo { background-image: url(../images/partner_logo_1.png); }
.prtnr_list li:nth-child(2) a .logo { background-image: url(../images/partner_logo_2.png); }
.prtnr_list li:nth-child(3) a .logo { background-image: url(../images/partner_logo_3.png); }
.prtnr_list li:nth-child(4) a .logo { background-image: url(../images/partner_logo_4.png); }
.prtnr_list li:nth-child(5) a .logo { background-image: url(../images/partner_logo_5.png); }
.prtnr_list li:nth-child(6) a .logo { background-image: url(../images/partner_logo_6.png); }
.prtnr_list li:nth-child(7) a .logo { background-image: url(../images/partner_logo_7.png); }
.prtnr_list li:nth-child(8) a .logo { background-image: url(../images/partner_logo_8.png); }
.prtnr_list li:nth-child(9) a .logo { background-image: url(../images/partner_logo_9.png); }
.prtnr_list li:nth-child(10) a .logo { background-image: url(../images/partner_logo_10.png); }
.prtnr_list li:nth-child(11) a .logo { background-image: url(../images/partner_logo_11.png); }
.prtnr_list li:nth-child(12) a .logo { background-image: url(../images/partner_logo_12.png); }
.cmdty_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.cmdty_list li { 
	width: 40vw;
	margin-top: 7vw;
}
.cmdty_list li:nth-child(1),
.cmdty_list li:nth-child(2) { margin-top: 0; }
.cmdty_list li a { 
	display: block;
	text-align: center;
	text-decoration: none;
	color: black;
	box-sizing: border-box;
	padding: 10px 10px 40px;
	line-height: 1.25;
	height: 100%;
	background-color: #edf6fc;
	position: relative;
}
.cmdty_list li a::after { 
	content: "";
	display: block;
	width: 14px;
	height: 16px;
	background: url(../images/arrow_navy.svg) center center / contain no-repeat;
	position: absolute;
	left: 54%;
	bottom: 12px;
	transform: translate(-50%, 0);
}
.cmdty_list li a .cate {
	line-height: 1.25;
	font-weight: 700;
}
.cmdty_list li a .logo {
	margin: 10px auto 0;
	width: 90%;
	height: 100px;
	background-position: center center;
	background-size: contain;
	background-repeat: no-repeat;
}
.cmdty_list li:nth-child(1) a .logo { background-image: url(../images/commodity_logo_1.png); }
.cmdty_list li:nth-child(2) a .logo { background-image: url(../images/commodity_logo_2.png); }
.cmdty_list li:nth-child(3) a .logo { background-image: url(../images/commodity_pic_1.png); }
.cmdty_list li:nth-child(4) a .logo { background-image: url(../images/commodity_logo_4.png); }
.cmdty_list li:nth-child(5) a .logo { background-image: url(../images/solutioin_2_logo.png); }
.cmdty_list li:nth-child(6) a .logo { background-image: url(../images/commodity_logo_6.png); }
.cmdty_list li a h2 {
	margin-top: 15px;
	line-height: 1.25;
}
.cmdty_list li a h2 .tit { font-size: 115%; }
.cmdty_list li a h2 .subtit {
	margin-top: 5px;
	font-size: 90%;
}
.cmdty_list li a .cap {
	margin-top: 10px;
	font-size: 90%;
	text-align: left;
	line-height: 1.5;
}


/* SDGs */
.cate_tit_sec .cate_tit_sdgs {
	background: url(../images/top_sec6_illst_sp.png) 50% 80px / 90% auto no-repeat;
}
.cate_tit_sec .cate_tit_sdgs .tit_cap { padding-top: 86vw; }
.cont_sec.sdgs_sec {
	padding: 50px 25px 0;
}
.cont_sec.sdgs_sec .cont_area {
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 60vw auto;
}
.cont_sec.sdgs_sec.sdgd_bg1 .cont_area {
	background-image: url(../images/csr_illust_6.gif);
	padding-bottom: 74vw
}
.cont_sec.sdgs_sec.sdgd_bg2 .cont_area {
	background-image: url(../images/csr_illust_6.gif);
	padding-bottom: 62vw
}
.cont_sec.sdgs_sec.sdgd_bg3 .cont_area {
	background-image: url(../images/csr_illust_6.gif);
	padding-bottom: 86vw
}
.cont_sec.sdgs_sec.sdgd_bg4 .cont_area {
	background-image: url(../images/csr_illust_6.gif);
	padding-bottom: 68vw
}
.cont_sec.sdgs_sec.sdgd_bg5 .cont_area {
	background-image: url(../images/csr_illust_6.gif);
	padding-bottom: 82vw
}
.cont_sec.sdgs_sec.sdgd_bg6 .cont_area {
	background-image: url(../images/csr_illust_6.gif);
	padding-bottom: 82vw
}
.cont_sec.csr_sec h2 {
	font-weight: 700;
	font-size: 128%;
	line-height: 1.35;
	margin-bottom: 20px;
}
.cont_sec.csr_sec .csr_list li {
	line-height: 1.5;
	margin: 10px 0 0 1em;
	text-indent: -1em;
}


/* CSR */
.cate_tit_sec .cate_tit_csr {
	background: url(../images/top_sec4_illst_sp.png) 50% 80px / 90% auto no-repeat;
}
.cate_tit_sec .cate_tit_csr .tit_cap { padding-top: 86vw; }
.cont_sec.csr_sec {
	padding: 50px 25px 0;
}
.cont_sec.csr_sec .cont_area {
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 60vw auto;
}
.cont_sec.csr_sec.csr_bg1 .cont_area {
	background-image: url(../images/csr_illust_1.png);
	padding-bottom: 74vw
}
.cont_sec.csr_sec.csr_bg2 .cont_area {
	background-image: url(../images/csr_illust_2.png);
	padding-bottom: 62vw
}
.cont_sec.csr_sec.csr_bg3 .cont_area {
	background-image: url(../images/csr_illust_3.png);
	padding-bottom: 86vw
}
.cont_sec.csr_sec.csr_bg4 .cont_area {
	background-image: url(../images/csr_illust_4.png);
	padding-bottom: 68vw
}
.cont_sec.csr_sec.csr_bg5 .cont_area {
	background-image: url(../images/csr_illust_5.png);
	padding-bottom: 82vw
}
.cont_sec.csr_sec h2 {
	font-weight: 700;
	font-size: 128%;
	line-height: 1.35;
	margin-bottom: 20px;
}
.cont_sec.csr_sec .csr_list li {
	line-height: 1.5;
	margin: 10px 0 0 1em;
	text-indent: -1em;
}



/* 就職案内 */
.cate_tit_sec .cate_tit_recruit {
	background: url(../images/top_sec5_illst_sp.png) 50% 80px / 90% auto no-repeat;
}
.cate_tit_sec .cate_tit_recruit .tit_cap { padding-top: 120vw; }


/* ムービーリンク */
.cont_sec .cont_wrap .mov_area {
	margin: 30px auto 0;
	max-width: 592px;
}
.cont_sec .cont_wrap .mov_area a {
	display: block;
	position: relative;
}
.cont_sec .cont_wrap .mov_area a::before,
.cont_sec .cont_wrap .mov_area a::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
}
.cont_sec .cont_wrap .mov_area a::before {
	width: 72px;
	height: 72px;
	border-radius: 50%;
	background-color: rgba(0, 0, 0, .4);
	transform: translate(-50%, -50%);
}
.cont_sec .cont_wrap .mov_area a::after {
	width: 30px;
	height: 30px;
	background: url(../images/icon_arrow_w.svg) center center / contain no-repeat;
	transform: translate(-40%, -50%);
}
.cont_sec .cont_wrap .mov_area a .cap {
	position: absolute;
	left: 50%;
	top: 76%;
	transform: translate(-50%, 0);
	font-size: 16px;
	color: #177FC3;
	font-weight: 700;
	background-color: #FFED01;
	text-align: center;
	padding: 5px 40px 3px;
}
.cont_sec .cont_wrap .mov_area + .txt { margin-top: 30px; }
/* ショート動画 */
.cont_sec .cont_wrap .mov_area.short {
	max-width: 230px;
}
.cont_sec .cont_wrap .mov_area.short a .cap {
	font-size: 15px;
	color: #fff;
	background-color: #177FC3;
	padding: 5px 10px 3px;
	white-space: nowrap;
	top: 82%;
}


.rcrt_fig { margin: 40px 0 50px; }
.rcrt_voices li { margin-top: 40px; }
.rcrt_voices li .tit {
	margin-top: 25px;
	font-size: 90%;
	font-weight: 700;
	line-height: 1.5;
}
.rcrt_voices li .tit span { font-size: 115%; }
.rcrt_voices li .cap {
	margin-top: 20px;
	font-size: 90%;
	line-height: 2;
}
.rcrt_apply { margin-top: 60px; }
.rcrt_apply h2 {
	font-size: 108%;
	font-weight: 700;
}
.rcrt_apply dl { line-height: 1.35; }
.rcrt_apply dl dt {
	font-weight: 700;
	margin-top: 1.2em;
}
.rcrt_apply dl dd {
	padding-left: .8em;
	margin-top: 8px;
}

.rcrt_fig_area { margin-top: 40px; }
.rcrt_fig_area .fig_ttl {
	color: #187FC3;
	background-color: #C5DFF0;
	text-align: center;
	font-weight: 700;
	padding: 8px 0 7px;
}
.rcrt_fig_area .rcrt_fig_1 { margin-top: 20px; }
.rcrt_fig_area .fig_2_area {
	margin-top: 20px;
	background-color: #fff;
}
.rcrt_fig_area .fig_2_area .rcrt_fig_2 { padding: 20px 10px; }


/* 個人情報保護方針 */
.cont_sec.sec_policy { padding: 50px 25px 0; }
.cont_sec.sec_policy.btm { padding: 50px 25px 35px; }
.cont_sec.sec_policy a { color: #187fc3; }
.cont_sec.sec_policy h1.policy_tit {
	color: #1f2b61;
	font-size: 144%;
	font-weight: 700;
	border-left: solid 10px #1f2b61;
	padding: 3px 0 3px 15px;
	line-height: 1.2;
}
.cont_sec.sec_policy .cont_wrap {
	font-size: 90%;
	line-height: 2;
}
.cont_sec.sec_policy .cont_wrap ul.num_list { margin-top: 2em; }
.cont_sec.sec_policy .cont_wrap ul.num_list li {
	text-indent: -1.1em;
	margin-left: 1.1em;
}
.cont_sec.sec_policy .cont_wrap ul.num_list li h1 { font-weight: 700; }
.cont_sec.sec_policy .cont_wrap ul.num_sublist li {
	text-indent: -2.9em;
	margin-left: 2.9em;
}
.cont_sec.sec_policy .cont_wrap ul.dot_sublist li {
	text-indent: -1em;
	margin-left: 1em;
}
.cont_sec.sec_policy .cont_wrap .privacy_note { margin-top: 2em; }
.cont_sec.sec_policy .cont_wrap .policy_note { margin-top: 2em; }
.cont_sec.sec_policy .cont_wrap .freetel {
	display: flex;
	text-indent: 0;
}
.cont_sec.sec_policy .cont_wrap .pdf_btn { margin-top: 50px; }
.cont_sec.sec_policy .pdf_btn a {
	margin-top: 50px;
	display: inline-block;
	background: #1f2b61 url(../images/icon_pdf.svg) 30px 50% / 20px 24px no-repeat;
	color: white;
	font-size: 120%;
	font-weight: 700;
	padding: 16px 32px 16px 62px;
}





/* トップページ */
header.ghead.top_head {
	padding-bottom: 0;
}
.top_sec1 {
	background: #edf6fc url(../images/top_main_sp.png) center bottom / contain no-repeat;
	box-sizing: border-box;
	height: 160vw;
	padding-top: 8vw;
	text-align: center;
}
.top_sec1 h1.lead { line-height: 2; }

.top_sec {
	text-align: center;
	padding: 50px 25px 35px;
}
.top_sec.bg_blue { background-color: #edf6fc; }
.top_sec a.top_link {
	display: inline-block;
	color: #505050;
	text-decoration: none;
	padding-bottom: 48px;
	background: url(../images/arrow_navy.svg) center bottom / 22px auto no-repeat;
}
.top_sec a.top_link h1 { font-size: 180%; }
.top_sec a.top_link .top_cap {
	margin-top: 12px;
	line-height: 1.5;
}
.top_sec .top_company {
	background: url(../images/top_sec1_illst_sp.png) center bottom / contain no-repeat;
	height: 134vw;
}
.top_service_slider { margin-top: 20px; }
.top_service_slider li {
	padding-top: 94vw;
	box-sizing: border-box;
}
.top_service_slider li:nth-child(1) { background: url(../images/top_sec2_1_illst.png) center top / 80% auto no-repeat; }
.top_service_slider li:nth-child(3) { background: url(../images/top_sec2_2_illst.png) center top / 80% auto no-repeat; }
.top_service_slider li:nth-child(4) { background: url(../images/top_sec2_3_illst.png) center top / 80% auto no-repeat; }
/* 
.top_service_slider li:nth-child(4) { background: url(../images/top_sec2_4_illst.png) center top / 80% auto no-repeat; }
*/

/* added by .D design - 2024.12.4 */
.top_service_slider li:nth-child(2) {
	background: url(../images/top_sec2_add_illst.png) center top / 90% auto no-repeat;
}

.top_service_slider li a {
	display: block;
	text-decoration: none;
}
.top_service_slider li a .top_srvc_tit {
	font-size: 128%;
	font-weight: 700;
	text-decoration: underline;
}
.top_service_slider li a .top_srvc_cap { 
	margin-top: 10px;
	line-height: 1.6;
	text-align: left;
}

.top_sec .top_product {
	background: url(../images/top_sec3_illst_sp.png) center bottom / contain no-repeat;
	height: 140vw;
}

.top_sec .top_sdgs {
	background: url(../images/top_sec6_illst_sp.png) center bottom / contain no-repeat;
	height: 124vw;
}
	
.top_sec .top_csr {
	background: url(../images/top_sec4_illst_sp.png) center bottom / contain no-repeat;
	height: 124vw;
}
.top_sec .top_recruit {
	background: url(../images/top_sec5_illst_sp.png) center bottom / 84% auto no-repeat;
	height: 140vw;
}
	.maparea {
		border-top: solid 5px #ffee00;
		height: 120vw;
	}




/* PC用 */
@media only screen and (min-width:768px) {
	
	a { transition: all .4s ease; }
	a:hover { color: #0080ca; }
	
	.forPC { display: block; }
	.br4sp { display: none; }
	.br4pc { display: inline; }
	
	.wrap_all { min-width: 1140px; }
	
	/* ヘッダ */
	header.ghead {
		padding: 62px 70px 37px;
		box-sizing: border-box;
		position: relative;
	}
	header.ghead h1 {
		position: absolute;
		top: 35px;
		left: 70px;
		width: 70px;
	}
	header.ghead h2 {
		display: block;
		line-height: 2;
		font-size: 115%;
	}
	
	/* ハンバーガー */
	.humberger {
		top: 55px;
		right: 65px;
		cursor: pointer;
	}
	
	/* ドロワー */
	.drawer {
		right: -640px;
		width: auto;
		max-width: 640px;
		height: auto;
		max-height: 100%;
		padding: 150px 20px 0 40px;
		font-size: 108%;
	}
	.drawer ul { margin: 0 50px; }
	.drawer ul li { margin-bottom: 15px; }
	.drawer ul li:last-child { margin-bottom: 120px; }
	.drawer ul li.page { margin-top: 40px; }
	.drawer ul li a { transition: all .4s ease; }
	.drawer ul li a:hover { color: #ffee00; }
	
	/* フッタ */
	nav.footnav { display: flex; }
	nav.footnav ul { margin-left: 30px; }
	nav.footnav ul li { font-size: 90%; }
	nav.footnav ul li:first-child { font-weight: 700; }
	nav.footnav ul li a {
		display: block;
		text-decoration: none;
		border-left: solid 1px #c7cad7;
		padding: 10px 0 0 20px;
	}
	nav.footnav ul li:last-child a {
		padding: 10px 0 10px 20px;
		border: none;
	}
	nav.footnav ul:last-child li:first-child { font-weight: 400; }
	nav.footnav ul:last-child li:first-child a { padding-bottom: 2.2em; }
	nav.footnav ul:last-child li:last-child {
		border-left: solid 1px #c7cad7;
		padding: 25px 0 0 20px;
	}
	nav.footnav ul:last-child li.privacy img { width: 61px; height: auto; }
	
	/* PAGE UP!!! */
	#pageup { bottom: 60px; }
	#pageup p:hover { background-color: rgba(24, 127, 195, .8); }
	
	
	
	/* 下層共通 */
	.cate_tit_sec { padding: 60px 0 20px; }
	.cate_tit_sec .inner { height: 420px; }
	.cate_tit_sec h1 { font-size: 280%; }
	.cate_tit_sec .tit_jpn { margin-top: 15px; }
	.cate_tit_sec .tit_cap {
		text-align: center;
		margin-top: 50px;
		font-size: 108%;
	}
	
	.page_nav { padding-bottom: 10px; }
	.page_nav ul {
		max-width: 1200px;
		margin: 0 auto;
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
	}
	.page_nav.nav_company ul { flex-wrap: nowrap; }
	.page_nav ul li {
		width: 240px;
		margin: 0 20px 35px 0;
	}
	.page_nav ul li:last-child { margin-right: 0; }

	.page_nav.rows ul {
		width: 760px;
		margin-bottom: 35px;
		gap: 20px;
	}
	.page_nav.rows ul li { margin: 0; }


	.page_nav ul li a {
		display: block;
		text-align: center;
		text-decoration: none;
		color: #187fc3;
		border: solid 1px #187fc3;
		padding: 12px 5px 10px;
		font-size: 16px;
		font-weight: 700;
		transition: all .4s ease;
		position: relative;
	}
	.page_nav ul li a::before,
	.page_nav ul li a::after {
		content: "";
		display: block;
		width: 1px;
		height: 14px;
		background-color: #187fc3;
		position: absolute;
		right: 16px;
		top: 50%;
		transform-origin: center bottom;
		transition: all .4s ease;
	}
	.page_nav ul li a::before { transform: translate(-50%, -50%) rotate(30deg); }
	.page_nav ul li a::after { transform: translate(-50%, -50%) rotate(-30deg); }
	.page_nav ul li a:hover {
		background-color: #187fc3;
		color: white;
	}
	.page_nav ul li a:hover::before,
	.page_nav ul li a:hover::after { background-color: white; }
	
	.cont_sec { padding: 80px 0; }
	.cont_sec h1.sec_tit {
		font-size: 172%;
		letter-spacing: 1em;
	}
	.cont_sec .cont_area {
		width: 908px;
		margin: 0 auto;
		font-size: 108%;
	}
	.cont_sec .cont_wrap { margin-top: 70px; }
	.cont_sec .cont_wrap.cont_clm { display: flex; }
	.cont_sec .txt { line-height: 2.6; }
	
	
	
	/* 会社案内 */
	.cate_tit_sec .cate_tit_company { background: url(../images/company_main.png) center bottom / 1103px auto no-repeat; }
	.cont_sec .cont_wrap .message_pic {
		width: 325px;
		margin-right: 30px;
	}
	.cont_sec .cont_wrap .message_cont {
		margin-top: 0;
		width: 553px;
	}
	#history .cont_wrap.cont_clm { gap: 0 80px; }
	.cont_sec .cont_wrap dl.history dt:first-child { margin-top: 0; }
	.cont_sec .cont_wrap dl.profile dt {
		margin-top: 1.5em;
		width: 12.5em;
		font-weight: 400;
	}
	.cont_sec .cont_wrap dl.profile dd {
		padding-left: 12.5em;
		margin-top: -1.35em;
	}
	.cont_sec .cont_wrap dl.profile dt.rows_2 + dd { margin-top: -2.7em; }
	.cont_sec .cont_wrap dl.profile dd > ul.permit > li { display: flex; }
	.cont_sec .cont_wrap dl.profile dd > ul.permit > li span.ttl { width: 12em; }

	.cont_sec .cont_wrap dl.profile dd.clms {
		display: flex;
		gap: 0 80px;
	}
	.cont_sec .cont_wrap dl.profile dd .qualify_ttl:first-child { margin-top: 0; }

	
	
	/* 事業紹介 */
	.cate_tit_sec .cate_tit_service {
		background: url(../images/service_main.png) center bottom / 1088px auto no-repeat;
	}
	.cate_tit_sec .cate_tit_service .tit_cap { padding-top: 0; }
	.service_btns_list {
		margin-top: 35px;
		width: 630px;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.service_btns_list li {
		width: 290px;
		margin-top: 40px;
	}
	
	/* 事業紹介　下層（solution / nttbiz） */
	.cont_sec.solution_cont {
		padding-bottom: 40px;
	}
	h1.solution_tit {
		font-size: 172%;
		padding: 4px 0 1px 27px;
		position: relative;
	}
	h1.solution_tit p.logo {
		width: 145px;
		position: absolute;
		right: 0;
		top: 50%;
		transform: translate(0, -50%);
	}
	h1.solution_tit p.logo.sltn2 { width: 195px; }
	ul.solution_box_list {
		display: flex;
		flex-wrap: wrap;
		margin-top: 30px;
	}
	ul.solution_box_list li {
		width: 277px;
		margin: 30px 38px 0 0;
	}
	ul.solution_box_list li:nth-child(3n) { margin-right: 0; }
	.cont_sec.solution_fig { padding: 40px 0; }
	.cont_sec.solution_fig.fig_min { padding: 40px 0 160px; }
	
	
	
	/* 取扱商材 */
	.cate_tit_sec .cate_tit_product {
		background: url(../images/product_main.png) center bottom / 1105px auto no-repeat;
	}
	.cate_tit_sec .cate_tit_product .tit_cap { padding-top: 0; }
	.prtnr_list li { 
		width: 270px;
		margin-top: 50px;
	}
	.prtnr_list li:nth-child(3) { margin-top: 0; }
	.prtnr_list li a { 
		font-size: 108%;
		height: 270px;
		background: white url(../images/arrow_navy.svg) 54% 228px / 16px auto no-repeat;
		padding: 38px 0 0;
	}
	.prtnr_list li a .logo { 
		width: 230px;
		height: 110px;
		top: 50%;
	}
	.prtnr_list li a:hover { background-color: #fffccc; }
	.prtnr_list li:nth-child(1) a .logo { background-size: 140px auto; }
	.prtnr_list li:nth-child(2) a .logo { background-size: 105px auto; }
	.prtnr_list li:nth-child(3) a .logo { background-size: 180px auto; }
	.prtnr_list li:nth-child(4) a .logo { background-size: 150px auto; }
	.prtnr_list li:nth-child(5) a .logo { background-size: 125px auto; }
	.prtnr_list li:nth-child(6) a .logo { background-size: 210px auto; }
	.prtnr_list li:nth-child(7) a .logo { background-size: 180px auto; }
	.prtnr_list li:nth-child(8) a .logo { background-size: 230px auto; }
	.prtnr_list li:nth-child(9) a .logo { background-size: 220px auto; }
	.prtnr_list li:nth-child(10) a .logo { background-size: 200px auto; }
	.prtnr_list li:nth-child(11) a .logo { background-size: 160px auto; }
	.prtnr_list li:nth-child(12) a .logo { background-size: 210px auto; }
	.cmdty_list li { 
		width: 270px;
		margin-top: 50px;
	}
	.cmdty_list li:nth-child(3) { margin-top: 0; }
	.cmdty_list li a { padding: 36px 21px 72px; }
	.cmdty_list li a:hover { background-color: #fffccc; }
	.cmdty_list li a::after { 
		width: 16px;
		height: 20px;
		bottom: 20px;
	}
	.cmdty_list li a .cate { font-size: 105%; }
	.cmdty_list li a .logo {
		margin: 20px auto 0;
		height: 130px;
	}
	.cmdty_list li:nth-child(1) a .logo { width: 80%; }
	.cmdty_list li:nth-child(2) a .logo { width: 60%; }
	.cmdty_list li a h2 { margin-top: 25px; }
	.cmdty_list li a .cap { margin-top: 15px; }
	.cont_sec.ntt_fig { min-height: 540px; }
	
	
		/* SDGs */
	.cate_tit_sec .cate_tit_sdgs {
		background: url(../images/sdgs_main.png) center bottom / 1105px auto no-repeat;
	}
	.cate_tit_sec .cate_tit_sdgs .tit_cap { padding-top: 0; }
	.cont_sec.sdgs_sec { padding: 0; }
	.cont_sec.sdgs_sec .cont_area {
		background-position: right center;
		padding: 80px 240px 80px 0;
		box-sizing: border-box;
		background-size: 235px auto;
	}
	.cont_sec.csr_sec.csr_bg1 .cont_area { padding-bottom: 80px; }
	.cont_sec.csr_sec.csr_bg2 .cont_area { padding-bottom: 80px; }
	.cont_sec.csr_sec.csr_bg3 .cont_area { padding-bottom: 80px; }
	.cont_sec.csr_sec.csr_bg4 .cont_area { padding-bottom: 80px; }
	.cont_sec.csr_sec.csr_bg5 .cont_area { padding-bottom: 80px; }
	
	
	/* CSR */
	.cate_tit_sec .cate_tit_csr {
		background: url(../images/csr_main.png) center bottom / 1105px auto no-repeat;
	}
	.cate_tit_sec .cate_tit_csr .tit_cap { padding-top: 0; }
	.cont_sec.csr_sec { padding: 0; }
	.cont_sec.csr_sec .cont_area {
		background-position: right center;
		padding: 80px 240px 80px 0;
		box-sizing: border-box;
		background-size: 235px auto;
	}
	.cont_sec.csr_sec.csr_bg1 .cont_area { padding-bottom: 80px; }
	.cont_sec.csr_sec.csr_bg2 .cont_area { padding-bottom: 80px; }
	.cont_sec.csr_sec.csr_bg3 .cont_area { padding-bottom: 80px; }
	.cont_sec.csr_sec.csr_bg4 .cont_area { padding-bottom: 80px; }
	.cont_sec.csr_sec.csr_bg5 .cont_area { padding-bottom: 80px; }
	
	
	
		/* 就職案内 */
	.cate_tit_sec .cate_tit_recruit {
		background: url(../images/recruit_main.png) center bottom / 1105px auto no-repeat;
	}
	.cate_tit_sec .cate_tit_recruit .tit_cap { padding-top: 0; }


	/* ムービーリンク */
	.cont_sec .cont_wrap.mov_top { margin-top: 50px; }
	.cont_sec .cont_wrap .mov_area a::before {
		width: 100px;
		height: 100px;
	}
	.cont_sec .cont_wrap .mov_area a::after {
		width: 36px;
		height: 36px;
	}
	.cont_sec .cont_wrap .mov_area a .cap {
		font-size: 20px;
		padding: 6px 80px 4px;
	}
	.cont_sec .cont_wrap .mov_area + .txt { margin-top: 50px; }


	.rcrt_fig { margin: 70px 0 80px; }
	.rcrt_voices {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.rcrt_voices li { width: 430px; }
	.rcrt_apply { margin-top: 70px; }
	.rcrt_apply dl { font-size: 108%; }
	.rcrt_apply dl dt {
		margin-top: 1.5em;
		width: 12.5em; 
		font-weight: 400;
	}
	.rcrt_apply dl dd {
		padding-left: 12.5em;
		margin-top: -1.35em;
	}
	
	.rcrt_fig_area { margin-top: 70px; }
	.rcrt_fig_area .rcrt_fig_1 { margin-top: 40px; }
	.rcrt_fig_area .fig_2_wrap {
		display: flex;
		gap: 0 30px;
	}
	.rcrt_fig_area .fig_2_area {
		flex: 1;
		margin-top: 30px;
	}
	.rcrt_fig_area .fig_2_area .rcrt_fig_2 { padding: 30px 10px; }

	
	
	
	
	
	
	
	
	
	
	/* 個人情報保護方針 */
	.cont_sec.sec_policy { padding: 80px 0 0; }
	.cont_sec.sec_policy.btm { padding: 80px 0; }
	.cont_sec.sec_policy h1.policy_tit {
		font-size: 172%;
		padding: 3px 0 3px 45px;
	}
	
	
	
	
	
	/* トップページ */
	header.ghead.top_head {
		padding: 35px 70px 0;
		box-sizing: border-box;
	}
	header.ghead.top_head h1 { position: static; }
	.top_sec1 {
		background: none;
		background-color: #edf6fc;
		height: auto;
		padding-top: 0;
	}
	.top_sec1 h1.lead {
		font-size: 128%;
		padding-top: 8px;
	}
	.top_mainimg img { width: 100%; height: auto; }
	.top_main_belt {
		display: block;
		height: 120px;
		box-sizing: border-box;
		border-color: #f4f4f4;
		border-style: solid;
		border-width: 30px 70px; 
	}
	.top_sec { padding: 60px 25px 35px; }
	.top_sec a.top_link {
		padding-bottom: 64px;
		background-size: 30px auto;
		transition: none;
	}
	.top_sec a.top_link:hover {
		background-image: url(../images/arrow_navy_on.svg);
	}
	.top_sec a.top_link h1 { font-size: 280%; }
	.top_sec a.top_link .top_cap { margin-top: 15px; }
	.top_sec .top_company {
		background: url(../images/top_sec1_illst.png) center bottom / 1105px auto no-repeat;
		height: 435px;
	}
	.top_service_slider {
		width: 904px;
		margin: 12px auto 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.top_service_slider li {
		padding-top: 360px;
		width: 400px;
	}
	.top_service_slider li:nth-child(1),
	.top_service_slider li:nth-child(3),
	.top_service_slider li:nth-child(4) { background-size: 65% auto; }
	.top_service_slider li:nth-child(2) { background-size: 73% auto; }


	.top_service_slider li a .top_srvc_tit { transition: all .4s ease; }
	.top_service_slider li a:hover .top_srvc_tit { color: #0080ca; }
	.top_sec .top_product {
		background: url(../images/top_sec3_illst.png) center bottom / 1089px auto no-repeat;
		height: 385px;
	}
	.top_sec .top_sdgs {
		background: url(../images/top_sec6_illst.png) center bottom / 1115px auto no-repeat;
		height: 445px;
	}
	.top_sec .top_csr {
		background: url(../images/top_sec4_illst.png) center bottom / 1115px auto no-repeat;
		height: 445px;
	}
	.top_sec .top_recruit {
		background: url(../images/top_sec5_illst.png) center bottom / 1190px auto no-repeat;
		height: 530px;
	}
	.maparea {
		height: 350px;
	}







}
