@charset "utf-8";
/*BASE*/

/*NAVI*/
header nav .company .en {
	color:rgba(72,143,187,1) !important;
}

/*HEADER*/
.keyvisual {
	background-image:url(../images/company/keyvisual.jpg);
}

/*SP*/
@media screen and (max-width: 767.98px) {
/*BASE*/

/*HEADER*/

/*CONTENTS*/
section {
	padding:4rem 0;
}
main section:nth-of-type(even) {
	background-color:rgba(239,243,245,1);
}

/*ごあいさつ*/
#greeting {
	padding:4rem 1rem;
}
#greeting .content-box {
	background: linear-gradient(180deg, rgba(92,177,162,0) 0, rgba(92,177,162,0) 105px, rgba(97,116,185,.25) 105px, rgba(92,177,162,.25) 100%);
	padding:1rem;
}
#greeting .content-box .img-box {
	width:240px;
	margin:0 auto 1.5rem;
}
#greeting .content-box .txt-box {
}
#greeting .txt-box h2 {
	font-family:"Noto Serif JP", serif;
	font-size:18px; 
	font-weight:700;
	text-align:center;
	margin-bottom:1rem;
}

/*会社概要*/
#profile .content-box {
	padding:0 1rem;
}
#profile .content-box > .table {
	border-top:solid 1px #999;
}
#profile .content-box > .table > .tr > .th,
#profile .content-box > .table > .tr > .td {
	font-weight:normal;
	padding:1rem 1rem;
}
#profile .content-box > .table > .tr > .th {
	background-color:rgba(97,116,185,.1);
}
#profile .content-box > .table > .tr:not(:last-of-type) > .td {
	border-bottom:solid 1px #999;
}
#profile .table ul.ul li:not(:last-child) {
	margin-bottom:.5rem;
}
#profile .table dl.post {
	display:grid;
	grid-template-columns:auto 1fr;
	gap:0 2rem;
}
#profile .table dl.post dt {
	text-align: justify;
    text-align-last: justify;
}
#profile .table dl.post dd:not(:last-of-type) {
	margin-bottom:.5rem;
}
#profile .table dl.address dd {
	padding-left:1em;
}
#profile .table dl.address dd:not(:last-of-type) {
	padding-bottom:1rem;
	margin-bottom:1rem;
	border-bottom:dotted 1px #999;
}
#profile .license span.type {
	display:block;
}
#profile .license a {
	color:#333;
}
#profile .table .supplier ul {
	list-style-type:disc;
	list-style-position:outside;
	margin-left:1.5em;
}
#profile .table .supplier ul li:not(:last-child) {
	margin-bottom:.5rem;
}

/*沿革*/
#history .content-box {
	padding:0 1rem;
}
#history .content-box > dl {
	padding-top:1rem;
	border-top:solid 1px #999;
}
#history .content-box > dl > dt,
#history .content-box > dl > dd {
	display:block;
	padding:1rem;
}
#history .content-box > dl > dt {
	letter-spacing:.2em;
	padding-top:.5rem;
	padding-bottom:.5rem;
}
#history .content-box > dl > dt .yyyy {
	display:inline-block;
	margin-right:.5rem;
}
#history .content-box > dl > dd {
	text-align:justify;
	padding-top:.25rem;
	padding-bottom:2rem;
	margin-left:2.5rem;
	border-left: dotted 2px #CCC;
}
#history .content-box > dl > dd:last-of-type {
	border-bottom:none 0;
	padding-bottom:0;
}
#history  table.license,
#history  table.license tbody,
#history  table.license tr,
#history  table.license th,
#history  table.license td {
	display:block;
	text-align:left;
	font-weight:normal;
}
#history  table.license {
	padding-top:.5rem;
	padding-left:1rem;
}
#history  table.license tr:not(:last-of-type) {
	padding-bottom:.5rem;
}
#history  table.license td {
	padding-left:1rem;
}
#history  table.license .industry li {
	display:inline-block;
	margin-right:1rem;
}

/*アクセスマップ*/
#map {
	background-image:url(../images/tmpl/bgimg_section-paper.gif);
}
#map .map {
	width:calc( 100% - 4rem );
	max-width:540px;
	margin:auto;
	border-radius:10px;
	overflow:clip;
}
#map iframe {
	width:100%;
	height:auto;
}
@media (orientation: portrait){
#map iframe { aspect-ratio: 3 / 4 ; }
}
/*縦向き*/
@media (orientation: landscape){
#map iframe { aspect-ratio: 16 / 7 ; }
}
}

/*PC NPC TAB*/
@media screen and (min-width: 768px), print {
/*BASE*/
	
/*HEADER*/

/*ごあいさつ*/
#greeting {
	padding:100px 80px;
}
#greeting .content-box {
	background-repeat:no-repeat;
	background-size: 100%;
	background-position:top 140px left 120px;
	max-width:1440px;
	margin:auto;
	display:flex;
	flex-wrap:nowrap;
	justify-content:flex-start;
	align-items:center;
}
#greeting .content-box .img-box {
	background-color:rgba(232,234,237,1);
	width:50%;
	max-width:480px;
}
#greeting .content-box .txt-box {
	flex:1;
}
#greeting .txt-box h2 {
	font-family:"Noto Serif JP", serif;
	font-size:clamp(24px, 2.4vw, 32px); 
	font-weight:700;
	padding:40px 50px;
}
#greeting .txt-box .message-box {
	text-align:justify;
	background-color:rgba(232,234,237,1);
	padding:40px 50px;
}

/*会社概要*/
#profile {
	background-color:rgba(250,250,250,1);
	padding:100px 80px;
}
#profile .content-box {
	max-width:1240px;
	margin:auto;
}
#profile .content-box > .table {
}
#profile .content-box > .table > .tr > .th,
#profile .content-box > .table > .tr > .td {
	font-weight:normal;
	text-align:left;
	vertical-align:top;
	padding:1.5rem 2rem;
	border-bottom:solid 1px #999;
}
#profile .content-box > .table > .tr:last-of-type > .th,
#profile .content-box > .table > .tr:last-of-type > .td {
	border-bottom: none 0;
}
#profile .content-box > .table > .tr > .th {
	width:30%;
	text-align: justify;
    text-align-last: justify;
	padding-left:3em;
	padding-right:3em;
	border-right:solid 1px #999;
}
#profile .content-box > .table > .tr > .th > span {
	display:block;
	width:6em;
	margin:auto 0 auto auto;
}
#profile .table ul.ul li:not(:last-child) {
	margin-bottom:.5rem;
}
#profile .table dl.post {
	display:grid;
	grid-template-columns:auto 1fr;
	gap:0 2rem;
}
#profile .table dl.post dt {
	text-align: justify;
    text-align-last: justify;
}
#profile .table dl.post dd:not(:last-of-type) {
	margin-bottom:.5rem;
}
#profile .table dl.address {
}
#profile .table dl.address dd {
	padding-left:1em;
}
#profile .table dl.address dd:not(:last-of-type) {
	padding-bottom:1rem;
	margin-bottom:1rem;
	border-bottom:dotted 1px #999;
}
#profile .license span.type {
	display:inline-block;
	width:9em;
	text-align: justify;
    text-align-last: justify;
}
#profile .license a {
	color:#333;
}
#profile .content-box > .table > .tr > .td.supplier {
	padding-top:1rem;
	padding-bottom:1rem;
}
#profile .table .supplier > ul {
	display:grid;
	gap:1px 1px;
	grid-template-columns:1fr 1fr;
	place-items:stretch stretch;
}
#profile .table .supplier > ul li {
	padding:.5rem 1rem;
}
#profile .table .supplier > ul li:nth-child(2n+1) {
  padding-left: 0;
}
#profile .table .supplier > ul li:not(:nth-child(-n+2)){
	border-top: dotted 1px #999;
}
#profile .table .supplier > ul li:not(:nth-child(2n)){
	border-right: dotted 1px #999;
}

/*沿革*/
#history {
	padding:100px 80px;
}
#history .content-box {
	max-width:1240px;
	margin:auto;
}
#history .content-box > dl {
	display:grid;
	grid-template-columns:30% 1fr;
}
#history .content-box > dl > dt,
#history .content-box > dl > dd {
	font-weight:normal;
	letter-spacing:.06em;
	text-align:left;
	vertical-align:top;
	padding:1.5rem 2rem;
	border-bottom:solid 1px #999;
}
#history .content-box > dl > dt:last-of-type,
#history .content-box > dl > dd:last-of-type {
	border-bottom: none 0;
}
#history .content-box > dl > dt {
	padding-right:3em;
	border-right:solid 1px #999;
}
#history .content-box > dl > dt > div {
	width:max-content;
	margin:auto 0 auto auto;
}
#history .content-box > dl > dt > div span {
	display:inline-block;
	text-align:right;
}
#history .content-box > dl > dt > div span {
	width:2.4em;
}
#history  table.license th {
	font-weight:normal;
	text-align:justify;
	text-align-last:justify;
	padding-right:1rem;
}
#history  table.license .industry li {
	display:inline-block;
	margin-right:1rem;
}

/*アクセスマップ*/
#map {
	background-image:url(../images/tmpl/bgimg_section-paper.gif);
	padding:100px 80px;
}
#map .map {
	width:100%;
	max-width:1440px;
	margin:auto;
	border-radius:10px;
	overflow:clip;
}
#map iframe {
	width:100%;
	height:480px;
}
}