@charset "UTF-8";

/*----------------------------------------------------
  SECTION
----------------------------------------------------*/
@media print, screen and (min-width: 769px) {
section {
width: 100%;
min-width: 1080px;
font-size: 14px;
overflow: hidden;
position: relative;
}
}
@media screen and (max-width: 768px) {
section {
width: 100%;
font-size: 14px;
overflow: hidden;
position: relative;
}
}

/*----------------------------------------------------
  INDEX
----------------------------------------------------*/

/* ********** PC ********** */

@media print, screen and (min-width: 769px) {
section#index {
background: #eef2f5;
}
section#index #content1 {
width: 1080px;
margin: 0 auto;
border-left: 1px solid #e1e1e1;
border-right: 1px solid #e1e1e1;
overflow: hidden;
}
section#index #content1 .box {
float: left;
}
section#index #content1 .box:nth-child(5) {
clear: both;
}
section#index #content1 .box.box1 {
width: 25%;
overflow: hidden;
}
section#index #content1 .box.box2 {
width: 50%;
overflow: hidden;
}
section#index #content1 .box .image {
overflow: hidden;
}
section#index #content1 .box img {
width: 100%;
height: auto;
}
section#index #content1 .box .image img {
-webkit-transition:all .5s;
-moz-transition:all .5s;
-ms-transition:all .5s;
-o-transition:all .5s;
transition:all .5s;
-webkit-transform: scale(1.01);
-moz-transform: scale(1.01);
-ms-transform: scale(1.01);
-o-transform: scale(1.01);
transform: scale(1.01);
}
section#index #content1 .box1 .image img:hover {
-webkit-transform: scale(1.07);
-moz-transform: scale(1.07);
-ms-transform: scale(1.07);
-o-transform: scale(1.07);
transform: scale(1.07);
}
section#index #content2 {
width: 1080px;
margin: 0 auto;
padding: 40px;
border-left: 1px solid #e1e1e1;
border-right: 1px solid #e1e1e1;
background: #f3f3f3 url(../images/top/bg_news.png) repeat 0 0;
overflow: hidden;
}
section#index #content2 .inner {
overflow: hidden;
position: relative;
}
section#index #content2 h2 {
width: 200px;
float: left;
overflow: hidden;
}
section#index #content2 ul {
width: calc(100% - 240px);
float: right;
border: 1px solid #d7d7d7;
background: #fff;
}
section#index #content2 ul li {
font-size: 14px;
background: url(../images/top/ico_news.png) no-repeat 20px 27px;
}
section#index #content2 ul li:nth-child(2) {
background: #fafafa url(../images/top/ico_news.png) no-repeat 20px 27px;
}
section#index #content2 ul li a {
color: #000;
border: 1px dotted #e1e1e1;
display: block;
}
section#index #content2 ul li dl.no {
color: #000;
border: 1px dotted #e1e1e1;
display: block;
overflow: hidden;
}
section#index #content2 ul li dl.no dt {
width: 165px;
padding: 20px 20px 20px 40px;
float: left;
}
section#index #content2 ul li dl.no dd {
width: calc(100% - 165px);
padding: 20px 20px 20px 0;
float: left;
}
section#index #content2 ul li a dl {
overflow: hidden;
}
section#index #content2 ul li a dl dt {
width: 165px;
padding: 20px 20px 20px 40px;
float: left;
}
section#index #content2 ul li a dl dd {
width: calc(100% - 165px);
padding: 20px 20px 20px 0;
color: #1c60a7;
float: left;
}
section#index #content2 ul li a:hover dl dd {
text-decoration: underline;
}
section#index #content2 .btn {
width: 148px;
position: absolute;
left: 0;
bottom: 0;
}
section#index #content2 .btn img {
width: 100%;
height: auto;
}
}

/* ********** SP ********** */

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

section#index #content1 {
width: 100%;
overflow: hidden;
}
section#index #content1 .box {
float: left;
}
section#index #content1 .box:nth-child(5) {
clear: both;
}
section#index #content1 .box.box1 {
width: 50%;
overflow: hidden;
}
section#index #content1 .box.box2 {
width: 100%;
overflow: hidden;
}
section#index #content1 .box .image {
overflow: hidden;
}
section#index #content1 .box img {
width: 100%;
height: auto;
}
section#index #content1 .box .image img {
-webkit-transition:all .5s;
-moz-transition:all .5s;
-ms-transition:all .5s;
-o-transition:all .5s;
transition:all .5s;
-webkit-transform: scale(1.01);
-moz-transform: scale(1.01);
-ms-transform: scale(1.01);
-o-transform: scale(1.01);
transform: scale(1.01);
}
section#index #content1 .box1 .image img:hover {
-webkit-transform: scale(1.07);
-moz-transform: scale(1.07);
-ms-transform: scale(1.07);
-o-transform: scale(1.07);
transform: scale(1.07);
}
section#index #content2 {
width: 100%;
padding: 20px;
background: #f3f3f3;
overflow: hidden;
}
section#index #content2 .inner {
width: 100%;
margin: 0 auto;
overflow: hidden;
position: relative;
}
section#index #content2 h2 {
width: 100%;
height: 34px;
margin: 0 0 20px 0;
overflow: hidden;
}
section#index #content2 h2 img {
width: auto;
height: 100%;
}
section#index #content2 ul {
margin: 0 0 20px 0;
border: 1px solid #d7d7d7;
background: #fff;
}
section#index #content2 ul li {
font-size: 14px;
background: url(../images/top/ico_news.png) no-repeat 20px 17px;
}
section#index #content2 ul li:nth-child(2) {
background: #fafafa url(../images/top/ico_news.png) no-repeat 20px 17px;
}
section#index #content2 ul li a {

color: #000;
border: 1px dotted #e1e1e1;
display: block;
}
section#index #content2 ul li dl {
overflow: hidden;
}
section#index #content2 ul li dl dt {
padding: 10px 10px 5px 30px;
}
section#index #content2 ul li dl dd {
padding: 0 20px 10px 20px;
}
section#index #content2 ul li a dl dd {
color: #1c60a7;
}
section#index #content2 ul li a:hover dl dd {
text-decoration: underline;
}
section#index #content2 .btn {
width: 160px;
margin: 0 auto;
}
section#index #content2 .btn img {
width: 100%;
height: auto;
}
}

/*----------------------------------------------------
  SUB
----------------------------------------------------*/

/* ********** PC ********** */

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

section.sub {
background: #eef2f5;
}
section.sub .title {
width: 100%;
}
section.sub .title .inner {
width: 100%;
height: 200px;
position: relative;
}
section.sub .title h2 {
color: #fff;
margin: -34px 0 0 -510px;
padding: 10px 15px;
/*font-size: 40px;*/
font-size: 30px;
/*line-height: 1;*/
line-height: 1.4;
background: #1c60a7;
display: inline;
position: absolute;
top: 50%;
left: 50%;
}
section.sub .title h2 span {
height: 44px;
margin: 0 15px 0 0;
padding: 4px 15px 0 5px;
font-size: 18px;
/*border: 2px solid #fff;*/
border-right: 1px #fff solid;
vertical-align: top;
display: inline-block;
/*line-height: 1.8;*/
line-height: 2;
}
section.sub #breadcrumb {
width: 100%;
border-top: 1px solid #e0e0e0;
border-bottom: 1px solid #e0e0e0;
background: #fff url(../images/common/bg_shadow.png) repeat-x left bottom;
}
section.sub #breadcrumb ul {
width: 1040px;
margin: 0 auto;
padding: 15px 20px;
font-size: 12px;
overflow: hidden;
}
section.sub #breadcrumb ul li {
float: left;
}
section.sub #breadcrumb ul li a:hover {
text-decoration: underline;
}
section.sub #breadcrumb ul li:after {
padding: 0 10px;
content: "＞";
}
section.sub #breadcrumb ul li:last-child:after {
content: "";
}
section.sub #content {
width: 1080px;
margin: 0 auto;
padding: 40px 40px 60px 40px;
background: #fff;
overflow: hidden;
}
section.sub #content #leftColumn {
width: 720px;
float: left;
}
section.sub #content #leftColumn .inner {
padding: 0 0 60px 0;
overflow: hidden;
}
section.sub #content #leftColumn .desc {
margin: 0 0 30px 0;
padding: 20px 0 15px 0;
color: #1c60a7;
font-size: 22px;
font-weight: 500;
border-bottom: 2px solid #dfe5eb;
background: url(../images/common/bg_desc.jpg) no-repeat left top;
}
section.sub #content #leftColumn .desc.s {
font-size: 18px;
}
section.sub #content #leftColumn h3 {
margin: 0 0 30px 0;
padding: 7px 15px;
color: #000;
font-size: 22px;
font-weight: 500;
border-top: 1px solid #dfe5eb;
border-left: 5px solid #e96174;
border-right: 1px solid #dfe5eb;
border-bottom: 1px solid #dfe5eb;
background: #f6f6f6;
}
section.sub #content #rightColumn {
width: 250px;
float: right;
}
section.sub #content #rightColumn h3 {
padding: 10px 0;
color: #fff;
font-size: 18px;
font-weight: 500;
text-align: center;
background: #1c60a7;
}
section.sub #leftColumn h4 {
margin: 0 0 30px 0;
padding: 0 0 5px 22px;
font-size: 19px;
font-weight: 500;
border-bottom: 1px dotted #1c60a7;
background: url(../images/company/ico_square.png) no-repeat left 10px;
}
section.sub #content #rightColumn ul.sidenav {
margin: 0 0 20px 0;
padding: 0 0 13px 0;
background: url(../images/common/bg_sidenav_shadow.png) no-repeat center bottom;
}
section.sub #content #rightColumn ul.sidenav > li > a {
padding: 15px;
color: #000;
font-size: 16px;
border-left: 1px solid #dfe5eb;
border-right: 1px solid #dfe5eb;
border-bottom: 1px solid #dfe5eb;
background: url(../images/common/ico_snav.png) no-repeat 220px center;
display: block;
}
section.sub #content #rightColumn  ul.sidenav > li > a.current,
section.sub #content #rightColumn  ul.sidenav > li > a:hover {
background: #eef2f6 url(../images/common/ico_snav.png) no-repeat 220px center;
}
section.sub #content #rightColumn ul.sidenav > li > h4 {
margin: -1px 0 0 0;
padding: 5px 0;
color: #1c60a7;
font-size: 16px;
text-align: center;
border-top: 1px solid #a9b5c2;
border-left: 1px solid #dfe5eb;
border-right: 1px solid #dfe5eb;
border-bottom: 1px solid #a9b5c2;
}
section.sub #content #rightColumn ul.sidenav > li > ul > li > a {
padding: 15px 15px 15px 28px;
color: #000;
font-size: 14px;
border-left: 1px solid #dfe5eb;
border-right: 1px solid #dfe5eb;
border-bottom: 1px solid #dfe5eb;
background: url(../images/common/ico_snav_s.png) no-repeat 15px center;
display: block;
}
section.sub #content #rightColumn  ul.sidenav > li > ul > li > a.current,
section.sub #content #rightColumn  ul.sidenav > li > ul > li > a:hover {
background: #eef2f6 url(../images/common/ico_snav_s.png) no-repeat 15px center;
}
}

/* ********** SP ********** */

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

section.sub .title {
width: 100%;
}
section.sub .title .inner {
width: 100%;
height: 100px;
position: relative;
}
section.sub .title h2 {
margin: -17px 0 0 0;
padding: 6px 10px 6px 6px;
color: #fff;
font-size: 18px;
line-height: 1.1;
background: #1c60a7;
display: inline;
position: absolute;
top: 50%;
left: 20px;
}
section.sub .title h2 span {
height: 21px;
margin: 0 8px 0 0;
padding: 2px 10px 2px 5px;
font-size: 10px;
/*border: 1px solid #fff;*/
border-right: 1px solid #fff;
vertical-align: top;
display: inline-block;
line-height: 1.5;
}
section.sub #breadcrumb {
width: 100%;
border-top: 1px solid #e0e0e0;
border-bottom: 1px solid #e0e0e0;
background: url(../images/common/bg_shadow.png) repeat-x left bottom;
}
section.sub #breadcrumb ul {
width: 100%;
margin: 0 auto;
padding: 15px 10px;
font-size: 12px;
overflow: hidden;
}
section.sub #breadcrumb ul li {
float: left;
}
section.sub #breadcrumb ul li a:hover {
text-decoration: underline;
}
section.sub #breadcrumb ul li:after {
padding: 0 10px;
content: "＞";
}
section.sub #breadcrumb ul li:last-child:after {
content: "";
}
section.sub #content {
width: 100%;
margin: 0 auto;
padding: 0 0 40px 0;
overflow: hidden;
}
section.sub #content #leftColumn {
width: 100%;
padding: 0 15px;
float: left;
}
section.sub #content #leftColumn .inner {
padding: 0 0 30px 0;
overflow: hidden;
}
section.sub #content #leftColumn .desc {
margin: 0 0 15px 0;
padding: 15px 0 13px 0;
color: #1c60a7;
font-size: 18px;
font-weight: 500;
line-height: 1.4;
border-bottom: 2px solid #dfe5eb;
background: url(../images/common/bg_desc.jpg) no-repeat left top;
background-size: 100% auto;
}
section.sub #content #leftColumn h3 {
margin: 0 0 15px 0;
padding: 7px 15px;
color: #000;
font-size: 16px;
font-weight: 500;
border-top: 1px solid #dfe5eb;
border-left: 5px solid #e96174;
border-right: 1px solid #dfe5eb;
border-bottom: 1px solid #dfe5eb;
background: #f6f6f6;
}
section.sub #leftColumn h4 {
margin: 0 0 10px 0;
padding: 0 0 5px 22px;
font-size: 16px;
font-weight: 500;
border-bottom: 1px dotted #1c60a7;
background: url(../images/company/ico_square.png) no-repeat left 7px;
}
section.sub #content #rightColumn {
width: 100%;
margin: 0 0 10px 0;
padding: 15px;
}

section.sub #content #rightColumn h3 {
padding: 7px 0;
color: #fff;
font-size: 16px;
font-weight: 500;
text-align: center;
background: #1c60a7;
}
section.sub #content #rightColumn h3 span {
padding: 0 25px 0 0;
background: url(../images/common/ico_submenu_off.png) no-repeat right center;
}
section.sub #content #rightColumn h3.open span {
background: url(../images/common/ico_submenu_on.png) no-repeat right center;
}

section.sub #content #rightColumn .inner {
display: none;
}
section.sub #content #rightColumn ul.sidenav {
}
section.sub #content #rightColumn ul.sidenav > li > a {
padding: 15px;
color: #000;
font-size: 16px;
border-left: 1px solid #dfe5eb;
border-right: 1px solid #dfe5eb;
border-bottom: 1px solid #dfe5eb;
background: url(../images/common/ico_snav.png) no-repeat right 20px center;
display: block;
}
section.sub #content #rightColumn  ul.sidenav > li > a.current,
section.sub #content #rightColumn  ul.sidenav > li > a:hover {
background: #eef2f6 url(../images/common/ico_snav.png) no-repeat right 20px center;
}
section.sub #content #rightColumn ul.sidenav > li > h4 {
margin: -1px 0 0 0;
padding: 5px 0;
color: #1c60a7;
font-size: 16px;
text-align: center;
border-top: 1px solid #a9b5c2;
border-left: 1px solid #dfe5eb;
border-right: 1px solid #dfe5eb;
border-bottom: 1px solid #a9b5c2;
}
section.sub #content #rightColumn ul.sidenav > li > ul > li > a {
padding: 15px 15px 15px 28px;
color: #000;
font-size: 14px;
border-left: 1px solid #dfe5eb;
border-right: 1px solid #dfe5eb;
border-bottom: 1px solid #dfe5eb;
background: url(../images/common/ico_snav_s.png) no-repeat 15px center;
display: block;
}
section.sub #content #rightColumn  ul.sidenav > li > ul > li > a.current,
section.sub #content #rightColumn  ul.sidenav > li > ul > li > a:hover {
background: #eef2f6 url(../images/common/ico_snav_s.png) no-repeat 15px center;
}
section.sub #content #rightColumn p.banner img {
width: 100%;
height: auto;
border-left: 1px solid #dfe5eb;
border-right: 1px solid #dfe5eb;
border-bottom: 1px solid #dfe5eb;
}
}

/*----------------------------------------------------
  ABOUT
----------------------------------------------------*/

/* ********** PC ********** */

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

section#about .title {
background: url(../images/about/h2.jpg) no-repeat center center;
background-size: cover;
}
section#about #leftColumn .image {
width: 300px;
margin: 0 0 0 30px;
padding: 7px;
border: 1px solid #acc4de;
background: #eef2f6;
float: right;
}
section#about #leftColumn .image img {
width: 100%;
height: auto;
}
section#about #leftColumn dl {
text-align: right;
}
section#about #leftColumn dd {
font-size: 16px;
}
section#about #leftColumn .policy ul {
margin: 0 0 20px 0;
}
section#about #leftColumn .policy ul li {
padding: 10px 0;
font-size: 16px;
border-bottom: 1px dotted #d7d7d7;
}
section#about #leftColumn .policy ul li span,
section#about #leftColumn .policy ul li:first-letter {
padding: 0 10px 0 0;
color: #1c60a7;
font-size: 24px;
font-weight: 500;
}
section#about #leftColumn .mark,
section#about #leftColumn .policy p {
float: left;
}
}

/* ********** SP ********** */

@media screen and (max-width: 768px) {
section#about .title {
background: url(../images/about/h2.jpg) no-repeat center center;
background-size: cover;
}
section#about #leftColumn .image {
width: 100%;
margin: 0 0 10px 0;
padding: 7px;
border: 1px solid #acc4de;
background: #eef2f6;
float: right;
}
section#about #leftColumn .image img {
width: 100%;
height: auto;
}
section#about #leftColumn dl {
text-align: right;
}
section#about #leftColumn dd {
font-size: 16px;
}
section#about #leftColumn .policy ul {
margin: 0 0 20px 0;
}
section#about #leftColumn .policy ul li {
padding: 10px 0;
font-size: 14px;
border-bottom: 1px dotted #d7d7d7;
overflow: hidden;
}
section#about #leftColumn .policy ul li span,
section#about #leftColumn .policy ul li:first-letter {
padding: 0 10px 0 0;
color: #1c60a7;
font-size: 20px;
font-weight: 500;
}
section#about #leftColumn img {
max-width: 100%;
}
}

/*----------------------------------------------------
  ABOUT PHILOSOPHY (ADD.2023.7)
----------------------------------------------------*/

.philosophy .section{
  margin-bottom: 3rem;
}
section.sub #leftColumn .philosophy h4{
  background: none;
  border-left: 9px solid #0A559A;
  padding-left: 15px;
  font-size: 24px;
  font-weight: bold;
  color: #0A559A;
  border-bottom: none;
}
.philosophy .group{
  margin-bottom: 1rem;
}
.philosophy .logo-layout{
  display: flex;
  justify-content: space-between;
}
.philosophy .layout .image{
  width: 49%;
}
.philosophy .section p{
  margin-bottom: 1rem;
}
.create .row{
  margin-bottom: 2rem;
}
.create .row .ct{
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
}
.create .row .ct span{
  padding-left: 30px;
  font-weight: 500;
}

.message{
  margin-bottom: 2rem;
}

.symbol-layout{
  display: flex;
  justify-content: space-between;
}

.symbol-layout p{
  flex: 1;
  padding-right: 50px;
}
.symbol-layout .img{
  width: 198px;
}

.logo100th{
  text-align: center;
}

@media screen and (max-width: 768px) {
.philosophy .logo-layout{
  display: block;
  justify-content: space-between;
}
.philosophy .layout .image{
  width: 100%;
}

.create .row .ct img{
  height: 36px;
}
.create .row .ct span{
  padding-left: 0;
}
.symbol-layout{
  display: block;
}
.symbol-layout .img{
  width: 100%;
  text-align: center;
}
}



/*----------------------------------------------------
  COMPANY
----------------------------------------------------*/

/* ********** PC ********** */

@media print, screen and (min-width: 769px) {
section#company .title {
background: url(../images/company/h2.jpg) no-repeat center center;
background-size: cover;
}
section#company #leftColumn table {
width: 100%;
}
section#company #leftColumn table tr th {
width: 120px;
padding: 15px;
text-align: left;
border: 1px solid #dfe5eb;
background: #f4f7f9;
}
section#company #leftColumn table tr td {
padding: 10px 15px;
border: 1px solid #dfe5eb;
}
section#company #leftColumn table tr td table {
width: 100%;
margin: 0 0 20px 0;
}
section#company #leftColumn table tr td table th {
width: auto;
padding: 0;
color: #1c60a7;
font-size: 16px;
font-weight: 500;
text-align: left;
border: none;
background: #fff;
}
section#company #leftColumn table tr td table td {
padding: 0;
border: none;
}
section#company #leftColumn table tr td table td:nth-child(1) {
width: 150px;
}
section#company #leftColumn table tr td table td:nth-child(2) {
width: 120px;
font-weight: 500;
}
}

/* ********** SP ********** */

@media screen and (max-width: 768px) {
section#company .title {
background: url(../images/company/h2.jpg) no-repeat center center;
background-size: cover;
}
section#company #leftColumn table {
width: 100%;
font-size: 12px;
}
section#company #leftColumn table tr th {
width: 90px;
padding: 10px;
text-align: left;
border: 1px solid #dfe5eb;
background: #f4f7f9;
}
section#company #leftColumn table tr td {
padding: 10px 15px;
border: 1px solid #dfe5eb;
}
section#company #leftColumn table tr td table {
width: 100%;
margin: 0 0 20px 0;
font-size: 10px;
}
section#company #leftColumn table tr td table th {
width: auto;
padding: 0;
color: #1c60a7;
font-size: 14px;
font-weight: 500;
text-align: left;
border: none;
background: #fff;
}
section#company #leftColumn table tr td table td {
padding: 0;
border: none;
}
section#company #leftColumn table tr td table td:nth-child(1) {
width: 80px;
}
section#company #leftColumn table tr td table td:nth-child(2) {
width: 65px;
font-weight: 500;
}
section#company #leftColumn img {
width: 100%;
}

section#company #leftColumn table.narrow tr th {
width: 60px;
}
}

/*----------------------------------------------------
  HISTORY
----------------------------------------------------*/

/* ********** PC ********** */

@media print, screen and (min-width: 769px) {
section#history .title {
background: url(../images/company/h2_2.jpg) no-repeat center center;
background-size: cover;
}
section#history #leftColumn .left {
float: left;
}
section#history #leftColumn .right {
float: right;
}
section#history #leftColumn .image {
width: 230px;
}
section#history #leftColumn .image.right {
text-align: right;
}
section#history #leftColumn .image img {
width: 100%;
margin: 0 0 5px 0;
}
section#history #leftColumn .image p {
font-size: 12px;
text-align: center;
}
section#history #leftColumn .txt {
width: 460px;
}
section#history #leftColumn .txt .head {
width: 460px;
height: 99px;
margin: 0 0 25px 0;
background: url(../images/company/bg_head.jpg) no-repeat center center;
position: relative;
}
section#history #leftColumn .txt .head p {
width: 300px;
color: #1c60a7;
font-size: 20px;
font-weight: 500;
line-height: 1.4;
position: absolute;
top: 50%;
left: 140px;
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
}
section#history #leftColumn .txt span {
color: #1c60a7;
}
section#history #rightColumn ul.pnav {
padding: 20px 0 0 0;
background: url(../images/company/bg_pnav.jpg) no-repeat 7px 35px;
}
section#history #rightColumn ul.pnav li a {
padding: 7px 0 7px 25px;
color: #000;
background: url(../images/company/ico_pnav.png) no-repeat left center;
display: inline-block;
}
section#history #rightColumn ul.pnav li a:hover {
color: #1c60a7;
}
section#history #leftColumn .txt p{
  word-break: break-all;
}
}

#vision-banner{
  display: flex;
  justify-content: center;
  max-width: 500px;
  margin: auto;
}

#vision-banner a{
  display: block;
  position: relative;
  overflow: hidden;
}

#vision-banner a .bnr_image{
  transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

#vision-banner a .bnr_image img{
  max-width: none;
  width: 100%;
}


#vision-banner a:hover .bnr_image{
  transform: scale(1.1);
}

#vision-banner a .bnr_title{
  position: absolute;
  left: 5%;
  bottom: 5%;
  color: #000;
}

#vision-banner a .bnr_title h2{
  font-size: 32px;
  font-weight: bold;
}

#vision-banner a .bnr_title p{
  font-weight: bold;
  font-size: 13px;
}

#vision-banner a .bnr_title .logo{
  display: block;
  padding: 10px 0 0;
  margin-bottom: 10px;
}

#vision-banner a .bnr_title .logo img{
  min-width: 130px;
}



/* ********** SP ********** */

@media screen and (max-width: 768px) {
section#history .title {
background: url(../images/company/h2_2.jpg) no-repeat center center;
background-size: cover;
}
section#history #leftColumn .image {
width: 100%;
margin: 0 0 10px 0;
text-align: right;
}
section#history #leftColumn .image img {
width: 100%;
margin: 0 0 5px 0;
}
section#history #leftColumn .image p {
font-size: 12px;
text-align: center;
}
section#history #leftColumn .txt {
}
section#history #leftColumn .txt .head {
margin: 0 0 10px 0;
padding: 10px;
text-align: center;
border: 1px solid #1c60a7;
}
section#history #leftColumn .txt .head p {
color: #1c60a7;
font-size: 16px;
font-weight: 500;
line-height: 1.4;
}
section#history #leftColumn .txt span {
color: #1c60a7;
}
section#history #rightColumn ul.pnav {
padding: 20px 0 0 0;
background: url(../images/company/bg_pnav.jpg) no-repeat 7px 35px;
}
section#history #rightColumn ul.pnav li a {
padding: 7px 0 7px 25px;
color: #000;
background: url(../images/company/ico_pnav.png) no-repeat left center;
display: inline-block;
}
section#history #rightColumn ul.pnav li a:hover {
color: #1c60a7;
}
section#history #leftColumn img {
width: 100%;
}
section#history #leftColumn .txt p{
  word-break: break-all;
}

#vision-banner{
  display: block;
}
#vision-banner a{
  width: 100%;
}

#vision-banner a .bnr_title{
  bottom: 20px;
  left: 20px;
}

#vision-banner a .bnr_title h2{
  font-size: 20px;
}
}

/*----------------------------------------------------
  OFFICE
----------------------------------------------------*/

/* ********** PC ********** */

@media print, screen and (min-width: 769px) {
section#office .title {
background: url(../images/company/h2.jpg) no-repeat center center;
background-size: cover;
}
section#office #leftColumn .map {
width: 720px;
height: 482px;
margin: 0 0 40px 0;
position: relative;
}
section#office #leftColumn .map .m {
position: absolute;
}
section#office #leftColumn .map .m01 {
top: 243px;
left: 100px;
}
section#office #leftColumn .map .m02 {
top: 43px;
left: 370px;
}
section#office #leftColumn .map .m03 {
top: 151px;
left: 597px;
}
section#office #leftColumn .map .m04 {
top: 253px;
left: 545px;
}
section#office #leftColumn .map .m05 {
top: 332px;
left: 496px;
}
section#office #leftColumn .map .m06 {
top: 375px;
left: 489px;
}
section#office #leftColumn .map .m07 {
top: 404px;
left: 449px;
}
section#office #leftColumn .map .m08 {
top: 434px;
left: 399px;
}
section#office #leftColumn .map .m09 {
top: 215px;
left: 224px;
}
section#office #leftColumn .map .m10 {
top: 243px;
left: 138px;
}
section#office #leftColumn .map .m11 {
top: 299px;
left: 61px;
}
section#office #leftColumn .map .m12 {
top: 402px;
left: 283px;
}
section#office #leftColumn .map .m13 {
top: 331px;
left: 11px;
}
section#office #leftColumn .map .m14 {
top: 265px;
left: 142px;
}
section#office #leftColumn dl {
padding: 0 0 10px 0;
}
section#office #leftColumn dl dt {
margin: 0 0 5px 0;
padding: 0 0 0 7px;
font-size: 18px;
line-height: 1;
border-left: 5px solid #1c60a7;
}
section#office #leftColumn dl dt a {
margin: 0 0 0 20px;
padding: 7px 10px;
color: #fff;
font-size: 14px;
background: #1c60a7;
display: inline-block;
}
section#office #leftColumn dl dt a.sp {
display: none;
}
section#office #leftColumn dl dd {
margin: 0 0 20px 0;
padding: 0 0 20px 0;
border-bottom: 1px dotted #dbdbdb;
}
section#office #leftColumn dl dd .map {
width: 100%;
height: 410px;
margin: 0;
padding: 0;
border-bottom: none;
display: none;
}
section#office #leftColumn dl dd .map iframe {
margin: 10px 0 0 0;
}
}

/* ********** SP ********** */

@media screen and (max-width: 768px) {
section#office .title {
background: url(../images/company/h2.jpg) no-repeat center center;
background-size: cover;
}
section#office #leftColumn .map {
margin: 0 0 20px 0;
}
section#office #leftColumn .map img {
width: 100%;
}
section#office #leftColumn dl {
padding: 0 0 10px 0;
}
section#office #leftColumn dl dt {
margin: 0 0 5px 0;
padding: 0 0 0 7px;
font-size: 14px;
line-height: 1;
border-left: 5px solid #1c60a7;
}
section#office #leftColumn dl dd {
margin: 0 0 20px 0;
padding: 0 0 20px 0;
border-bottom: 1px dotted #dbdbdb;
}
section#office #leftColumn dl dt a {
margin: 0 0 0 10px;
padding: 7px 10px;
color: #fff;
font-size: 12px;
background: #1c60a7;
display: inline-block;
}
section#office #leftColumn dl dt a.pc {
display: none;
}
section#office #leftColumn dl dd .map,
section#office #leftColumn dl dd .map iframe {
display: none;
}
}

/*----------------------------------------------------
  GROUP
----------------------------------------------------*/

/* ********** PC ********** */

@media print, screen and (min-width: 769px) {
section#group .title {
background: url(../images/company/h2_1.jpg) no-repeat center center;
background-size: cover;
}
section#group .cat p {
margin: 0 0 20px 0;
padding: 5px 20px;
color: #fff;
font-size: 16px;
background: #1c60a7;
display: inline-block;
}
section#group .cat1 p {
background: #e96174;
}
section#group .cat2 p {
background: #0fcd9a;
}
section#group .cat3 p {
background: #ebc644;
}
section#group .cat4 p {
background: #ca0000;
}
section#group .cat5 p {
background: #0092ce;
}
section#group .cat6 p {
background: #008f70;
}
section#group .cat7 p {
background: #7567a4;
}
section#group ul.domestic {
margin: 0 0 10px 0;
overflow: hidden;
}
section#group ul.domestic li {
margin: 0 0 20px 0;
border: 1px solid #d7d7d7;
float: left;
}
section#group ul.domestic li:nth-child(2n) {
float: right;
}
section#group ul.domestic li a {
width: 350px;
height: 132px;
padding: 20px;
font-size: 15px;
color: #000;
display: block;
}
section#group ul.domestic li a:hover {
background: #eef2f6;
}
section#group ul.domestic li a dl dt {
padding: 0 0 0 20px;
background: url(../images/company/ico_square_p.png) no-repeat left 5px;
}
section#group ul.domestic1 li a dl dt {
background: url(../images/company/ico_square_p.png) no-repeat left 5px;
}
section#group ul.domestic2 li a dl dt {
background: url(../images/company/ico_square_g.png) no-repeat left 5px;
}
section#group ul.domestic3 li a dl dt {
background: url(../images/company/ico_square_y.png) no-repeat left 5px;
}
section#group ul.domestic li a dl dd {
margin: 5px 0 0 0;
padding: 7px 0 0 0;
font-size: 13px;
line-height: 1.4;
border-top: 1px dotted #d7d7d7;
}
section#group ul.domestic li a dl dd span {
font-size: 12px;
}
section#group ul.overseas {
margin: 0 0 20px 0;
overflow: hidden;
}
section#group ul.overseas li {
margin: 0 0 20px 0;
border: 1px solid #d7d7d7;
float: left;
}
section#group ul.overseas li:nth-child(2n) {
float: right;
}
section#group ul.overseas li a {
width: 350px;
padding: 20px 0 20px 20px;
font-size: 14px;
color: #000;
display: block;
}
section#group ul.overseas li a:hover {
background: #eef2f6;
}
section#group ul.overseas li a dl dt {
padding: 0 0 0 8px;
line-height: 1;
border-left: 5px solid #1c60a7;
}
section#group ul.overseas li a dl dt span {
font-size: 10px;
}
section#group ul.overseas1 li a dl dt {
border-left: 5px solid #ca0000;
}
section#group ul.overseas2 li a dl dt {
border-left: 5px solid #0092ce;
}
section#group ul.overseas3 li a dl dt {
border-left: 5px solid #008f70;
}
section#group ul.overseas4 li a dl dt {
border-left: 5px solid #7567a4;
}
section#group ul.overseas li a dl dt.c1 {
border-left: 5px solid #ca0000;
}
section#group ul.overseas li a dl dt.c2 {
border-left: 5px solid #0092ce;
}
section#group ul.overseas li a dl dt.c3 {
border-left: 5px solid #008f70;
}
section#group ul.overseas li a dl dt.c4 {
border-left: 5px solid #7567a4;
}
section#group ul.overseas li a dl dt span span {
font-size: 10px;
}
section#group ul.overseas li a dl dd {
margin: 10px 0 0 0;
padding: 10px 0 0 0;
border-top: 1px dotted #d7d7d7;
}

/*
section#group ul.overseas li a dl dd.usa {
background: url(../images/company/ico_usa.jpg) no-repeat left 12px;
}
section#group ul.overseas li a dl dd.china {
background: url(../images/company/ico_china.jpg) no-repeat left 12px;
}
section#group ul.overseas li a dl dd.taiwan {
background: url(../images/company/ico_taiwan.jpg) no-repeat left 12px;
}
section#group ul.overseas li a dl dd.korea {
background: url(../images/company/ico_korea.jpg) no-repeat left 12px;
}
section#group ul.overseas li a dl dd.india {
background: url(../images/company/ico_india.jpg) no-repeat left 12px;
}
section#group ul.overseas li a dl dd.indonesia {
background: url(../images/company/ico_indonesia.jpg) no-repeat left 12px;
}
section#group ul.overseas li a dl dd.thai {
background: url(../images/company/ico_thailand.jpg) no-repeat left 12px;
}
section#group ul.overseas li a dl dd.vietnam {
background: url(../images/company/ico_vietnam.jpg) no-repeat left 12px;
}
*/
section#group ul.overseas li a dl dd.none{
padding: 10px 0 0 0;
background: none;
}
section#group ul.overseas li a p {
margin: 5px 0 0 0;
font-size: 12px;
}
}

/* ********** SP ********** */

@media screen and (max-width: 768px) {
section#group .title {
background: url(../images/company/h2_1.jpg) no-repeat center center;
background-size: cover;
}
section#group .cat p {
margin: 0 0 10px 0;
padding: 5px 10px;
color: #fff;
font-size: 12px;
background: #1c60a7;
display: inline-block;
}
section#group .cat1 p {
background: #e96174;
}
section#group .cat2 p {
background: #0fcd9a;
}
section#group .cat3 p {
background: #ebc644;
}
section#group .cat4 p {
background: #ca0000;
}
section#group .cat5 p {
background: #0092ce;
}
section#group .cat6 p {
background: #008f70;
}
section#group .cat7 p {
background: #7567a4;
}
section#group ul.domestic {
width: 100%;
margin: 0 0 10px 0;
overflow: hidden;
}
section#group ul.domestic li {
width: 100%;
margin: 0 0 10px 0;
border: 1px solid #d7d7d7;
}

section#group ul.domestic li a {
width: 100%;
padding: 10px 15px 10px 15px;
color: #000;
font-size: 12px;
display: block;
}
section#group ul.domestic li a:hover {
background: #eef2f6;
}
section#group ul.domestic li a dl dt {
padding: 0 0 0 20px;
background: url(../images/company/ico_square_p.png) no-repeat left 3px;
overflow: hidden;
}
section#group ul.domestic1 li a dl dt {
background: url(../images/company/ico_square_p.png) no-repeat left 3px;
}
section#group ul.domestic2 li a dl dt {
background: url(../images/company/ico_square_g.png) no-repeat left 3px;
}
section#group ul.domestic3 li a dl dt {
background: url(../images/company/ico_square_y.png) no-repeat left 3px;
}
section#group ul.domestic li a dl dd {
margin: 5px 0 0 0;
padding: 7px 0 0 0;
line-height: 1.4;
border-top: 1px dotted #d7d7d7;
}
section#group ul.domestic li a dl dd span {
font-size: 10px;
}
section#group ul.overseas {
width: 100%;
margin: 0 0 20px 0;
overflow: hidden;
}
section#group ul.overseas li {
width: 100%;
margin: 0 0 10px 0;
border: 1px solid #d7d7d7;
}
section#group ul.overseas li a {
width: 100%;
padding: 10px;
font-size: 12px;
color: #000;
display: block;
}
section#group ul.overseas li a:hover {
background: #eef2f6;
}
section#group ul.overseas li a dl dt {
line-height: 1.4;
}
section#group ul.overseas li a dl dt span {
padding: 0 0 0 8px;
border-left: 5px solid #1c60a7;
display: block;
}
section#group ul.overseas li a dl dt.c1 span {
border-left: 5px solid #ca0000;
}
section#group ul.overseas li a dl dt.c2 span {
border-left: 5px solid #0092ce;
}
section#group ul.overseas li a dl dt.c3 span {
border-left: 5px solid #008f70;
}
section#group ul.overseas li a dl dt.c4 span {
border-left: 5px solid #7567a4;
}
section#group ul.overseas li a dl dt span span {
padding: 0;
font-size: 10px;
border-left: none!important;
}
section#group ul.overseas li a dl dd {
margin: 5px 0 0 0;
padding: 5px 0 2px 25px;
border-top: 1px dotted #d7d7d7;
}
section#group ul.overseas li a dl dd.usa {
background: url(../images/company/ico_usa.jpg) no-repeat left 9px;
background-size: 20px auto;
}
section#group ul.overseas li a dl dd.china {
background: url(../images/company/ico_china.jpg) no-repeat left 9px;
background-size: 20px auto;
}
section#group ul.overseas li a dl dd.taiwan {
background: url(../images/company/ico_taiwan.jpg) no-repeat left 9px;
background-size: 20px auto;
}
section#group ul.overseas li a dl dd.korea {
background: url(../images/company/ico_korea.jpg) no-repeat left 9px;
background-size: 20px auto;
}
section#group ul.overseas li a dl dd.india {
background: url(../images/company/ico_india.jpg) no-repeat left 9px;
background-size: 20px auto;
}
section#group ul.overseas li a dl dd.indonesia {
background: url(../images/company/ico_indonesia.jpg) no-repeat left 9px;
background-size: 20px auto;
}
section#group ul.overseas li a dl dd.thai {
background: url(../images/company/ico_thailand.jpg) no-repeat left 9px;
background-size: 20px auto;
}
section#group ul.overseas li a dl dd.vietnam {
background: url(../images/company/ico_vietnam.jpg) no-repeat left 9px;
background-size: 20px auto;
}
section#group ul.overseas li a dl dd.none{
padding: 5px 0 2px 0;
background: none;
}
section#group .map img {
width: 100%;
height: auto;
}
}

/*----------------------------------------------------
  GROUP DETAIL
----------------------------------------------------*/

/* ********** PC ********** */

@media print, screen and (min-width: 769px) {
section#groupDetail .title {
background: url(../images/company/h2_1.jpg) no-repeat center center;
background-size: cover;
}
section#groupDetail #leftColumn .caption {
margin: 0 0 30px 0;
color: #1c60a7;
font-size: 22px;
font-weight: 500;
}
section#groupDetail #leftColumn .image {
width: 300px;
margin: 0 0 0 30px;
padding: 7px;
border: 1px solid #acc4de;
background: #eef2f6;
float: right;
}
section#groupDetail #leftColumn .image img {
width: 100%;
height: auto;
}
section#groupDetail #leftColumn table {
width: 100%;
}
section#groupDetail #leftColumn table th {
padding: 15px;
text-align: left;
border: 1px solid #dfe5eb;
background: #f4f7f9;
white-space: nowrap;
}
section#groupDetail #leftColumn table.table1 th {
width: 180px;
}
section#groupDetail #leftColumn table.table2 th {
width: 120px;
}
section#groupDetail #leftColumn table td {
padding: 15px;
border: 1px solid #dfe5eb;
}
}

/* ********** SP ********** */

@media screen and (max-width: 768px) {
section#groupDetail .title {
background: url(../images/company/h2_1.jpg) no-repeat center center;
background-size: cover;
}
section#groupDetail #leftColumn .caption {
margin: 0 0 10px 0;
color: #1c60a7;
font-size: 18px;
font-weight: 500;
}
section#groupDetail #leftColumn .image {
width: 100%;
margin: 0 0 10px 0;
padding: 7px;
border: 1px solid #acc4de;
background: #eef2f6;
float: right;
}
section#groupDetail #leftColumn .image img {
width: 100%;
height: auto;
}
section#groupDetail #leftColumn table {
width: 100%;
font-size: 12px;
}
section#groupDetail #leftColumn table th {
padding: 10px;
text-align: left;
border: 1px solid #dfe5eb;
background: #f4f7f9;
}
section#groupDetail #leftColumn table.table1 th {
width: 150px;
}
section#groupDetail #leftColumn table.table2 th {
width: 100px;
}
section#groupDetail #leftColumn table td {
padding: 15px;
border: 1px solid #dfe5eb;
}
}

/*----------------------------------------------------
  GROUP DETAIL for オージーフィルム株式会社
----------------------------------------------------*/

/* ********** PC ********** */

@media print, screen and (min-width: 769px) {
section#groupDetail2 .title {
background: url(../images/company/h2_1.jpg) no-repeat center center;
background-size: cover;
}
section#groupDetail2 h5 {
margin: 0 0 5px 0;
color: #e10000;
font-size: 16px;
font-weight: 500;
}
section#groupDetail2 #leftColumn table {
width: 100%;
}
section#groupDetail2 #leftColumn table th {
padding: 10px;
border: 1px solid #dfe5eb;
background: #f4f7f9;
}
section#groupDetail2 #leftColumn table td {
padding: 10px;
border: 1px solid #dfe5eb;
}
section#groupDetail2 #leftColumn table td.y {
background: #feffd8;
}
section#groupDetail2 #leftColumn table td.r {
color: #e10000;
}
section#groupDetail2 #leftColumn table .m {
vertical-align: middle;
}
section#groupDetail2 #leftColumn .box {
margin: 20px 0 0 0;
padding: 20px;
font-size: 12px;
border: 1px solid #ccc;
}
section#groupDetail2 #leftColumn .red {
color: #e10000;
}
section#groupDetail2 #leftColumn img.image {
margin: 0 10px 0 0;
float: left;
}
}

/* ********** SP ********** */

@media screen and (max-width: 768px) {
section#groupDetail2 .title {
background: url(../images/company/h2_1.jpg) no-repeat center center;
background-size: cover;
}
section#groupDetail2 h5 {
margin: 0 0 5px 0;
color: #1c60a7;
font-size: 16px;
font-weight: 500;
}
section#groupDetail2 #leftColumn table {
width: 100%;
word-wrap: break-all;
font-size: 10px;
}
section#groupDetail2 #leftColumn table th {
padding: 5px;
border: 1px solid #dfe5eb;
background: #f4f7f9;
}
section#groupDetail2 #leftColumn table td {
padding: 5px;
border: 1px solid #dfe5eb;
}
section#groupDetail2 #leftColumn .box {
margin: 10px 0 0 0;
padding: 10px;
font-size: 10px;
border: 1px solid #ccc;
}
section#groupDetail2 #leftColumn img {
width: 100%;
}
section#groupDetail2 #leftColumn .red {
color: #e10000;
}
}

/*----------------------------------------------------
  BUSINESS
----------------------------------------------------*/

/* ********** PC ********** */

section#business.top .title {
  background: url(../images/business/h2.jpg) no-repeat center center;
  background-size: cover;
}
section#business #leftColumn .image img {
  width: 100%;
  height: auto;
}
section#business #leftColumn .description{
  margin-bottom: 20px;
}

section#business #leftColumn .category{
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
section#business #leftColumn .category li{
  width: calc(50% - 30px);
}

section#business #leftColumn .category li a .image{
  display: block;
  margin-bottom: 10px;
  overflow: hidden;
  height: 150px;
  line-height: 0;
}
section#business #leftColumn .category li a .image img{
  transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  height: auto;
}

section#business #leftColumn .category li a:hover .image img{
  transform: scale(1.1);
}
section#business #leftColumn .category li a .text{
  color: #000;
  text-decoration: none;
}

section#business #leftColumn .category li a .text::after{
  content: "";
  display: inline-block;
  position: relative;
  top: -2px;
  left: 6px;
  width:6px;
  height: 6px;
  border-top: 1px solid #0A559A;
  border-right: 1px solid #0A559A;
  transform: rotate(45deg);
}

section#business.single #leftColumn .category li a .image{
  height: 107px;
}

/* detail 
----------------------------*/
section#business.single #leftColumn h3{
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 50px;
  padding: 0;
  border: none;
  background: none;
}

section#business.single #leftColumn .lead{
  padding-bottom: 50px;
  margin-bottom: 50px;
  border-bottom: 20px solid #EBEBEB;
  
}

section#business.single #leftColumn .lead p{
  margin-bottom: 1rem;
}

section#business.single #leftColumn .row{
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 30px;
}

section#business.single #leftColumn .row h4{
  width: 190px;
  background: none;
  border: none;
  font-size: 14px;
  margin: 0;
  padding: 0;
}

section#business.single #leftColumn .row .post{
  flex: 1;
  border-left: 1px solid #0A559A;
  padding-left: 20px;
}

section#business.single #leftColumn .row .post p{
  margin-bottom: 1rem;
}


section#business.single #leftColumn .bottom-image{
  margin-top: 50px;
  text-align: center;
}



section#business #leftColumn table {
  width: 100%;
}
section#business #leftColumn table th {
  padding: 15px;
  border: 1px solid #dfe5eb;
  background: #f4f7f9;
}
section#business #leftColumn table th:first-child {
  width: 140px;
}
section#business #leftColumn table td {
  padding: 15px;
  border: 1px solid #dfe5eb;
}
section#business #leftColumn table td:first-child {
  background: #fafbfc;
}

section#business #leftColumn .left {
  width: 190px;
  float: left;
}
section#business #leftColumn .right {
  width: 530px;
  float: right;
  position: relative;
}
section#business #leftColumn span {
  color: #df0000;
}
section#business #leftColumn b {
  font-size: 16px;
  font-weight: 500;
}

/* ADD 20190402 */
section#business #leftColumn .inner .alignright {
  text-align: right;
  display: block;
}
section#business #leftColumn .inner .aligncenter {
  text-align: center;
  display: block;
}
section#business #leftColumn .inner strong {
  font-weight: bold;
}
section#business #leftColumn .inner em {
  font-style: italic;
}
section#business #leftColumn .inner span {
  text-decoration: underline;
}

section#business #leftColumn .inner img {
  max-width: 100%;
  height: auto;
}

section#business #leftColumn ul.companyList {
  overflow: hidden;
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
}
section#business #leftColumn ul.companyList li {
  width: calc(50% - 15px);
  font-size: 11px;
}


/* ********** SP ********** */

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


section#business #leftColumn .inner .scroll {
      overflow-x: scroll;
}

section#business #leftColumn .inner .scroll table{
  width: 800px;
}

section#business #leftColumn .inner .scroll td img {
  max-width: 100%;
  width: 130px;
}


section#business.top .title {
  background: url(../images/business/h2.jpg) no-repeat center center;
  background-size: cover;
}

section#business #leftColumn .category li{
  width: 100%;
}

section#business #leftColumn .category li a .image{
  border: none;
  background: none;
  padding: 0;
}

section#business #leftColumn .image {
  width: 100%;
  margin: 0 0 10px 0;
  padding: 7px;
  border: 1px solid #acc4de;
  background: #eef2f6;
}
section#business #leftColumn .image img {
  width: 100%;
  height: auto;
}
section#business #leftColumn ul.list {
  width: 100%;
  overflow: hidden;
}
section#business #leftColumn ul.list li {
  width: calc(50% - 5px);
  margin: 0 0 10px 0;
  display: table;
  float: left;
}
section#business #leftColumn ul.list li a {
  width: 100%;
  height: 80px;
  padding: 0 30px 0 15px;
  color: #000;
  vertical-align: middle;
  border: 1px solid #d7d7d7;
  display: table-cell;
  background: url(../images/common/ico_snav.png) no-repeat right 10px center;
}
section#business #leftColumn ul.list li:nth-child(2n) {
  margin: 0 0 10px 0;
  float: right;
}
section#business #leftColumn ul.list li a:hover {
  background: #eef2f6 url(../images/common/ico_snav.png) no-repeat right 10px center;
}
section#business #leftColumn table {
  font-size: 12px;
}
section#business #leftColumn table th {
  padding: 10px;
  border: 1px solid #dfe5eb;
  background: #f4f7f9;
}
section#business #leftColumn table th:first-child {
  width: 100px;
}
section#business #leftColumn table td {
  padding: 10px;
  border: 1px solid #dfe5eb;
}
section#business #leftColumn table td:first-child {
  background: #fafbfc;
}

section#business #leftColumn .left {
  width: 90px;
  float: left;
}
section#business #leftColumn .left img {
  width: 100%;
}
section#business #leftColumn .right {
  width: calc(100% - 100px);
  font-size: 10px;
  float: right;
  position: relative;
}
section#business #leftColumn span {
  color: #df0000;
}
section#business #leftColumn b {
  font-size: 14px;
  font-weight: 500;
}

section#business.single #leftColumn h3{
  margin-bottom: 30px;
  font-size: 20px;
}

section#business.single #leftColumn .lead{
  padding-bottom: 30px;
  margin-bottom: 30px;
  border-bottom: 10px solid #EBEBEB;

}

section#business.single #leftColumn .row h4{
  width: 100%;
  border-bottom: 1px solid #0A559A;
  padding: 0 0 10px 0;
}

section#business.single #leftColumn .row .post{
  width: 100%;
  border: none;
  padding: 10px 0 0 0;
}

section#business #leftColumn ul.companyList li {
}
  
}


/*----------------------------------------------------
  PRODUCTS
----------------------------------------------------*/

/* ********** PC ********** */

@media print, screen and (min-width: 769px) {
section#products .title {
background: url(../images/business/h2_10.jpg) no-repeat center center;
background-size: cover;
}
section#products #leftColumn .inner ul {
margin: 0 20px;
}
section#products #leftColumn .inner ul li {
padding: 15px 0 15px 20px;
font-size: 16px;
border-bottom: 1px dotted #dbdbdb;
background: url(../images/common/ico_snav.png) no-repeat left center;
}
section#products #leftColumn .inner ul li a img {
margin: 8px 0 0 10px;
}
section#products #leftColumn .inner ul li a:hover {
text-decoration: underline;
}
section#products #leftColumn .contact {
border: 1px solid #d6d6d6;
background: #f3f3f3;
}
section#products #leftColumn .contact dl dt {
margin: 15px 0 0 20px;
padding: 0 0 10px 0;
font-size: 16px;
font-weight: 500;
background: url(../images/business/border_products.png) no-repeat left bottom;
}
section#products #leftColumn .contact dl dd {
margin: 20px;
padding: 15px;
border: 1px solid #d6d6d6;
background: #fff;
}
section#products #leftColumn .right {
margin: 20px 0 0 0;
text-align: right;
}
}

/* ********** SP ********** */

@media screen and (max-width: 768px) {
section#products .title {
background: url(../images/business/h2_10.jpg) no-repeat center center;
background-size: cover;
}
section#products #leftColumn .inner ul {
margin: 0 20px;
}
section#products #leftColumn .inner ul li {
padding: 10px 0 10px 15px;
font-size: 14px;
border-bottom: 1px dotted #dbdbdb;
background: url(../images/common/ico_snav.png) no-repeat left center;
background-size: 8px auto;
}
section#products #leftColumn .inner ul li a {
padding: 0 20px 0 0;
}
section#products #leftColumn .inner ul li a img {
margin: 6px 0 0 10px;
}
section#products #leftColumn .inner ul li a:hover {
text-decoration: underline;
}
section#products #leftColumn .contact {
border: 1px solid #d6d6d6;
background: #f3f3f3;
}
section#products #leftColumn .contact dl dt {
margin: 15px 0 0 20px;
padding: 0 0 10px 0;
font-size: 16px;
font-weight: 500;
background: url(../images/business/border_products.png) no-repeat left bottom;
}
section#products #leftColumn .contact dl dd {
margin: 20px;
padding: 15px;
border: 1px solid #d6d6d6;
background: #fff;
}
section#products #leftColumn .right {
margin: 20px 0 0 0;
text-align: right;
}
}


/*----------------------------------------------------
  RECRUIT
----------------------------------------------------*/

/* ********** PC ********** */

@media print, screen and (min-width: 769px) {
section#recruit .title {
background: url(../images/recruit/h2.jpg) no-repeat center center;
background-size: cover;
}
section#recruit #leftColumn .door {
margin: 20px 0 0 0;
display: flex;
}
section#recruit #leftColumn .door a:last-child {
margin: 0 0 0 15px;
}
section#recruit #leftColumn .inner h4 {
margin: 40px 0 30px 0;
}
section#recruit #leftColumn .inner h4:nth-of-type(1) {
margin: 0 0 30px 0;
}
}

@media screen and (max-width: 768px) {
section#recruit .title {
background: url(../images/recruit/h2.jpg) no-repeat center center;
background-size: cover;
}
section#recruit #leftColumn .inner img {
max-width: 100%;
}
section#recruit #leftColumn .door {
margin: 10px 0 0 0;
}
section#recruit #leftColumn .door img {
margin: 10px 0 0 0;
display: block;
}
section#recruit #leftColumn .inner h4 {
margin: 20px 0 10px 0;
}
section#recruit #leftColumn .inner h4:nth-of-type(1) {
margin: 0 0 10px 0;
}
}


/*----------------------------------------------------
  VISION2023 (ADD.2023.7)
----------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500&display=swap');

section #rightColumn .sidenav .min{
  font-size: 12px;
}

.vision2033 img{
  max-width: 100%;
}

section#vision .title {
  background: url(../images/ir/h2.jpg) no-repeat center center;
  background-size: cover;
}
.vision2033 .section{
  margin-bottom: 3rem;
}
section.sub #leftColumn .vision2033 h4{
  background: none;
  border-left: 9px solid #0A559A;
  padding-left: 15px;
  font-size: 24px;
  font-weight: bold;
  color: #0A559A;
  border-bottom: none;
}

.vision2033 .lead{
  margin-bottom: 3rem;
}

.vision2033 .sugata{
  display: flex;
  flex-wrap: wrap;
}

.vision2033 .sugata .txt{
  flex: 1;
}
.vision2033 .sugata .img{
  width: 310px;
}
.vision2033 .sugata .txt p{
  font-size: 24px;
  font-weight: bold;
}

.vision2033 .mokuhyo{
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.vision2033 .mokuhyo .col{
  width: 49%;
  background-color: #226EB2;
  color: #fff;
  padding: 25px;
}
.vision2033 .mokuhyo .row{
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  flex-wrap: wrap;
}
.vision2033 .mokuhyo .row.bb{
  border-bottom: 1px solid #fff;
}
.vision2033 .mokuhyo .tit{
  font-weight: bold;
}
.vision2033 .mokuhyo .row .pip{
  text-align: right;
  font-weight: bold;
}
.vision2033 .mokuhyo .row .pip span{
  font-size: 50px;
  font-weight: bold;
  font-family: 'Barlow Condensed', sans-serif;
  letter-spacing: 2px;
}
.slohgan .row{
  background-color: #e9f6ff;
  padding: 25px;
  margin-bottom: 10px;
}
.slohgan .stage{
  font-size: 20px;
  color: #226EB2;
  font-family: 'Barlow Condensed', sans-serif;
}
.slohgan .tit{
  font-size: 20px;
  font-weight: bold;
}
.basic .layout{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.basic .col{
  width: 32%;
}
.basic .col .tit{
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  padding: 15px 0;
  text-align: center;
  margin-bottom: 1rem;
}
.basic .col .tit1{
  background-color: #1C9AD1
}
.basic .col .tit2{
  background-color: #2BB18D
}
.basic .col .tit3{
  background-color: #F0AC3E
}


section#vision #leftColumn .kinou .layout{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
section#vision #leftColumn .kinou .box{
  width: 31.333%;
  background-color: #e9f6ff;
  margin: 2% 1%;
  padding: 30px 20px;
  border-radius: 0;
}
section#vision #leftColumn .kinou .box .tit{
  color: #1A9AD1;
}
section#vision #leftColumn .kinou .box p{
  font-size: 14px;
}

@media screen and (max-width: 768px) {
.vision2033 img{
  max-width: 100%;
}
.vision2033 .sugata .img{
  width: 100%;
  text-align: center;
  padding-top: 2rem;
}
.vision2033 .mokuhyo .col{
  width: 100%;
  margin-bottom: 10px;
}

.basic .col{
  width: 100%;
  margin-bottom: 2rem;
}
section#vision #leftColumn .kinou .box{
  width: 100%;
  padding: 20px;
}
}


/* STAGE1
=============================*/
.vision2033.stage1 img{
  max-width: 100%;
}

.vision2033.stage1 .mokuhyo .frame{
  background-color: #226EB2;
  padding: 30px;
  color: #fff;
}

.vision2033.stage1 .mokuhyo .frame .tit{
  font-weight: bold;
}

.vision2033.stage1 .mokuhyo .frame .layout{
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  flex-wrap: wrap;
}

.vision2033.stage1 .mokuhyo .frame .box{
  width: 48%;
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  flex-wrap: wrap;
  backgorund: none;
  border-raidus: 0;
  margin: 0;
}
.vision2033.stage1 .mokuhyo .frame .box.bb{
  border-bottom: 1px solid #fff;
}
.vision2033.stage1 .mokuhyo .frame .box .tit{
  font-weight: bold;
}

.vision2033.stage1 .mokuhyo .frame .box .pip{
  text-align: right;
  font-weight: bold;
}

.vision2033.stage1 .mokuhyo .frame .box .pip span{
  font-size: 50px;
  font-weight: bold;
  font-family: 'Barlow Condensed', sans-serif;
  letter-spacing: 2px;
}

.vision2033.stage1 .section h5{
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  margin-bottom: 2rem;
}
.vision2033.stage1 .sec1 h5{
  background-color: #0A559A;
  padding: 20px;
  line-height: 1;
}
.vision2033.stage1 .sec2 h5{
  background-color: #2BB18D;
  padding: 20px;
  line-height: 1;
}
.vision2033.stage1 .sec3 h5{
  background-color: #F0AC3E;
  padding: 20px;
  line-height: 1;
}
.vision2033.stage1 .section h5 + p{
  margin-bottom: 2rem;
}


@media screen and (max-width: 768px) {
.vision2033.stage1 .mokuhyo .frame .box{
  width: 100%;
}
.vision2033.stage1 .mokuhyo .frame .box.bb-sp{
  border-bottom: 1px solid #fff;
}

}


/*----------------------------------------------------
  IR LIBRARY
----------------------------------------------------*/

/* ********** PC ********** */

@media print, screen and (min-width: 769px) {
section#library .title {
background: url(../images/ir/h2.jpg) no-repeat center center;
background-size: cover;
}
section#library #leftColumn table {
width: 100%;
}
section#library #leftColumn table tr th {
width: 120px;
padding: 15px;
text-align: left;
border: 1px solid #dfe5eb;
background: #f4f7f9;
}
section#library #leftColumn table tr td {
padding: 10px 15px;
line-height: 2;
border: 1px solid #dfe5eb;
}
section#library #leftColumn table tr td a {
padding: 0 30px 0 0;
background: url(../images/ir/ico_pdf.png) no-repeat right center;
}
section#library #leftColumn ul {
border-top: 1px solid #dfe5eb;
}
section#library #leftColumn ul li {
padding: 15px 0;
font-size: 16px;
border-bottom: 1px solid #dfe5eb;
}
section#library #leftColumn ul li a {
padding: 0 30px 0 0;
background: url(../images/ir/ico_pdf.png) no-repeat right center;
}
section#library #leftColumn h3 span {
padding: 0 0 0 10px;
font-size: 12px;
}
}

/* ********** SP ********** */

@media screen and (max-width: 768px) {
section#library .title {
background: url(../images/ir/h2.jpg) no-repeat center center;
background-size: cover;
}
section#library #leftColumn table {
width: 100%;
font-size: 12px;
}
section#library #leftColumn table tr th {
width: 95px;
padding: 10px;
text-align: left;
border: 1px solid #dfe5eb;
background: #f4f7f9;
}
section#library #leftColumn table tr td {
padding: 10px 15px;
line-height: 2;
border: 1px solid #dfe5eb;
}
section#library #leftColumn table tr td a {
padding: 0 25px 0 0;
background: url(../images/ir/ico_pdf.png) no-repeat right center;
}
section#library #leftColumn ul {
border-top: 1px solid #dfe5eb;
}
section#library #leftColumn ul li {
padding: 10px 0;
font-size: 14px;
border-bottom: 1px solid #dfe5eb;
}
section#library #leftColumn ul li a {
padding: 0 25px 0 0;
background: url(../images/ir/ico_pdf.png) no-repeat right center;
}
section#library #leftColumn h3 span {
padding: 0 0 0 10px;
font-size: 12px;
}
section#library #leftColumn img {
width: 100%;
}
}

/*----------------------------------------------------
  IR SHAREHOLDERS
----------------------------------------------------*/

/* ********** PC ********** */

@media print, screen and (min-width: 769px) {
section#shareholders .title {
background: url(../images/ir/h2.jpg) no-repeat center center;
background-size: cover;
}
section#shareholders #leftColumn table {
width: 100%;
}
section#shareholders #leftColumn table tr th {
width: 120px;
padding: 15px;
text-align: left;
border: 1px solid #dfe5eb;
background: #f4f7f9;
}
section#shareholders #leftColumn table tr td {
padding: 10px 15px;
line-height: 2;
border: 1px solid #dfe5eb;
}
section#shareholders #leftColumn table tr td a.pdf {
padding: 0 30px 0 0;
background: url(../images/ir/ico_pdf.png) no-repeat right center;
}
section#shareholders #leftColumn h3 span {
padding: 0 0 0 10px;
font-size: 12px;
}
section#shareholders #leftColumn #filesTable th{
	text-align: center;
	vertical-align: middle;
}
section#shareholders #leftColumn #filesTable th span{
display: block;
}
section#shareholders #leftColumn table tr td{
	vertical-align: middle;
}

section#shareholders #leftColumn table tr td .layout{
	display: flex;
	align-items: center;
}

section#shareholders #leftColumn table tr td .layout .pdfs{
}

section#shareholders #leftColumn .btns{
	width: 55%;
	padding-top: 50px;
}

section#shareholders #leftColumn .btns a.btn{
	position: relative;
	background: #287AEA;
	display: inline-block;
	padding: 12px 36px 12px 12px;
	color: #fff;
	text-align: center;
	border-radius: 5px;
	text-decoration: underline;
}
section#shareholders #leftColumn .btns a.btn:hover{
	background: #002B56;
}
section#shareholders #leftColumn .btns a.btn::after{
	content: "";
	display: block;
	position: absolute;
	width: 8px;
	height: 8px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	transform: rotate(45deg) translateY(-50%);
	top: 50%;
	right: 20px;
}

}

/* ********** SP ********** */

@media screen and (max-width: 768px) {
section#shareholders .title {
background: url(../images/ir/h2.jpg) no-repeat center center;
background-size: cover;
}
section#shareholders #leftColumn table {
width: 100%;
font-size: 12px;
}
section#shareholders #leftColumn table tr th {
width: 95px;
padding: 10px;
text-align: left;
border: 1px solid #dfe5eb;
background: #f4f7f9;
}
section#shareholders #leftColumn table tr td {
padding: 10px 15px;
line-height: 2;
border: 1px solid #dfe5eb;
}
section#shareholders #leftColumn table tr td a.pdf {
padding: 0 25px 0 0;
background: url(../images/ir/ico_pdf.png) no-repeat right center;
}
section#shareholders #leftColumn h3 span {
padding: 0 0 0 10px;
font-size: 12px;
}
section#shareholders #leftColumn img {
width: 100%;
}

section#shareholders #leftColumn table tr td{
	vertical-align: middle;
}

section#shareholders #leftColumn .btns{
	padding-top: 25px;
}

section#shareholders #leftColumn .btns .btn{
	position: relative;
	background: #287AEA;
	display: inline-block;
	padding: 12px 36px 12px 12px;
	color: #fff;
	text-align: center;
	border-radius: 5px;
	line-height: 150%;
	text-decoration: underline;

}
section#shareholders #leftColumn .btns .btn:hover{
	background: #002B56;
}
section#shareholders #leftColumn .btns .btn::after{
	content: "";
	display: block;
	position: absolute;
	width: 8px;
	height: 8px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	transform: rotate(45deg) translateY(-50%);
	top: 50%;
	right: 20px;
}
}

/*----------------------------------------------------
  NEWS
----------------------------------------------------*/

/* ********** PC ********** */

section#news .title {
background: url(../images/about/h2.jpg) no-repeat center center;
background-size: cover;
}
section#news #leftColumn li {
padding: 20px;
border-bottom: 1px #ccc dotted;
}
section#news #leftColumn li:last-child {
border: none;
}
section#news #leftColumn li small {
font-weight: bold;
}
section#news #leftColumn li p {
font-size: 14px;
}
section#news #leftColumn li p.title {
font-size: 16px;
}
section#news .pagination{
margin: 20px 0 0 0;
text-align: center;
}
section#news a.page-numbers,
section#news .pagination .current{
background: #fff;
border: solid 1px #ccc;
padding:5px 8px;
margin:0 2px;
text-decoration: none;
}
section#news .pagination .current{
background: #1c60a7;
border: solid 1px #1c60a7;
color: #fff;
}

section#news #detail h2 {
margin: 0 0 10px 0;
padding: 0 0 10px 0;
color: #1c60a7;
font-size: 18px;
border-bottom: 1px #ccc dotted;
}
section#news #detail small {
font-size: 12px;
font-weight: bold;
}
section#news #detail .content p {
margin: 0 0 20px 0;
font-size: 14px;
}
section#news #detail .pdf {
margin: 10px 0;
}
section#news #detail .pdf a {
padding: 0 30px 0 0;
background: url(../images/news/ico_pdf.png) no-repeat right center;
}
section#news #detail table th{
  border: 1px solid #aaa;
  padding: 6px;
}
section#news #detail table td{
  border: 1px solid #aaa;
  padding: 6px 12px;
}
section#news #detail ul.disc{
  list-style: disc;
  padding-left: 25px;
}
section#news #detail ul.disc li{
  border: none;
  padding: 0;
}


/* ********** SP ********** */

@media screen and (max-width: 768px) {
section#news .title {
background: url(../images/about/h2.jpg) no-repeat center center;
background-size: cover;
}
section#news #leftColumn li {
padding: 10px;
border-bottom: 1px #ccc dotted;
}
section#news #leftColumn li:last-child {
border: none;
}
section#news #leftColumn li small {
font-weight: bold;
}
section#news #leftColumn li p {
font-size: 14px;
}
section#news #leftColumn li p.title {
font-size: 16px;
}
section#news .pagination{
margin: 20px 0 0 0;
text-align: center;
}
section#news a.page-numbers,
section#news .pagination .current{
background: #fff;
border: solid 1px #ccc;
padding:5px 8px;
margin:0 2px;
text-decoration: none;
}
section#news .pagination .current{
background: #1c60a7;
border: solid 1px #1c60a7;
color: #fff;
}

section#news #detail {
margin: 10px 0 0 0;
}
section#news #detail h2 {
margin: 0 0 10px 0;
padding: 0 0 10px 0;
color: #1c60a7;
font-size: 16px;
border-bottom: 1px #ccc dotted;
}
section#news #detail small {
font-size: 12px;
font-weight: bold;
}
section#news #detail .content p {
margin: 0 0 20px 0;
font-size: 14px;
}
section#news #detail .content img {
max-width: 100%;
height: auto;
}
section#news #detail .pdf {
margin: 10px 0;
}
section#news #detail .pdf a {
padding: 0 30px 0 0;
background: url(../images/news/ico_pdf.png) no-repeat right center;
}
}

/*----------------------------------------------------
  SITEMAP
----------------------------------------------------*/

/* ********** PC ********** */

@media print, screen and (min-width: 769px) {
section#sitemap .title {
background: url(../images/about/h2.jpg) no-repeat center center;
background-size: cover;
}
section#sitemap #leftColumn ul {
font-size: 16px;
}
section#sitemap #leftColumn ul li {
padding: 0 0 0 15px;
background: url(../images/common/ico_snav.png) no-repeat left 12px;
background-size: 8px auto;
}
section#sitemap #leftColumn ul li ul li {
background: url(../images/common/ico_dot.png) no-repeat left 16px;
background-size: 6px auto;
}
section#sitemap #leftColumn ul li.obi {
  margin-bottom: 5px;
padding: 0;
background: none;
border-bottom: 1px #ccc dotted;
}
section#sitemap #leftColumn ul li span {
padding: 5px 0;
display: inline-block;
}
section#sitemap #leftColumn ul li a {
padding: 5px 0;
display: inline-block;
}
section#sitemap #leftColumn ul li a:hover {
text-decoration: underline;
}
}

/* ********** SP ********** */

@media screen and (max-width: 768px) {
section#sitemap .title {
background: url(../images/about/h2.jpg) no-repeat center center;
background-size: cover;
}
section#sitemap #leftColumn ul {
font-size: 14px;
}
section#sitemap #leftColumn ul li {
padding: 0 0 0 15px;
background: url(../images/common/ico_snav.png) no-repeat left 12px;
background-size: 8px auto;
}
section#sitemap #leftColumn ul li ul li {
background: url(../images/common/ico_dot.png) no-repeat left 16px;
background-size: 6px auto;
}
section#sitemap #leftColumn ul li.obi {
margin-bottom: 5px;
padding: 0;
background: none;
border-bottom: 1px #ccc dotted;
}
section#sitemap #leftColumn ul li span {
padding: 5px 0;
display: inline-block;
}
section#sitemap #leftColumn ul li a {
padding: 5px 0;
display: inline-block;
}
section#sitemap #leftColumn ul li a:hover {
text-decoration: underline;
}
}


/*----------------------------------------------------
  ビジュアルエディタ対応
----------------------------------------------------*/

.visualWrap p {
	margin-block-start: 1em;
	margin-block-end: 1em;
}

.visualWrap strong{
	font-weight: bold;
}

.visualWrap del {
	text-decoration: line-through;
}

.visualWrap em {
    font-style: italic;
}

.visualWrap ul {
	list-style-type: disc;
	padding-inline-start: 40px;
	margin-block-start: 1em;
	margin-block-end: 1em;
}

.visualWrap ol {
	list-style-type: decimal;
	padding-inline-start: 40px;
	margin-block-start: 1em;
	margin-block-end: 1em;
}


.visualWrap blockquote {
	display: block;
	margin-block-start: 1em;
	margin-block-end: 1em;
	margin-inline-start: 40px;
	margin-inline-end: 40px;
}


table.bosyu{
  margin-bottom: 30px;
}
table.bosyu th,
table.bosyu td{
  padding: 1.5rem;
  border-bottom: 1px solid #ccc;
}
table.bosyu tr:first-child th{
  border-top: 5px solid #0068b3;
}
table.bosyu tr:first-child td{
  border-top: 5px solid #ccc;
}
table.bosyu th{
  white-space: nowrap;
  width: 120px;
  
}
table.bosyu strong{
  font-weight: bold;
}

table.bosyu ul{
  padding-left: 2ex;
}
table.bosyu li{
  list-style-type: "・";
}
table .anno{
  display: block;
  font-size: 12px;
}