@charset "utf-8";

#breadCrumb h1:before {
background:url(../../img/company/common/bread_icon_company.png) no-repeat 0 0
}

.company #catImg {
background:#B0D8FF url(../../img/company/common/cat_top_ttl_bg.jpg) no-repeat center 0
}

.company #content,.company .conteInr {
width:100%!important
}

.company .conteInr .w960 h3 {
float:left;
margin-left:30px;
margin-right:55px;
width:461px
}

.company .conteInr .w960 p {
float:left;
font-size:100%;
font-weight:700;
line-height:2.1;
margin-top:-14px;
width:400px
}

.infiniteslide ul {
	display:flex !important
 }
.loopSlider {
clear:both;
height:240px;
overflow:hidden;
position:relative
}

.company .catNav {
margin-bottom:50px;
margin-top:50px
}

.company .catNav1 {
margin-bottom:0;
margin-top:90px
}

.company .catNav2 {
margin-bottom:150px;
margin-top:0
}

.history {
background:url(../../img/company/top/img10.png) no-repeat 0 0;
height:168px;
margin-bottom:40px
}

.history h4 {
float:left;
margin:13px 0 0 20px
}

.history ul {
float:left;
margin:28px 0 0 10px
}

.history li {
float:left;
margin-right:3px
}

.topmessage .conteInr {
background:url(../../img/company/topmessage/conte_bg.png) no-repeat center 405px;
float:left;
margin:0;
width:700px!important
}

.topmessage p {
text-align:center
}

.about h4 {
border-bottom:#E9E0CE 1px solid;
color:#6A3A1E;
font-size:138.5%;
font-weight:700;
margin:30px 0 0;
padding:0 0 10px
}

.about table.line {
font-size:100%;
width:100%
}

.about table.line p {
display:block;
padding-left:15px;
text-indent:-15px
}

.about table.line p .co-b {
color:#59322C
}

.about table.line p .co-v {
color:#A9853F
}

.about table.line p .lst {
display:block;
padding-left:30px
}

.about table.line th {
background:#FDFAF4;
border-bottom:#E9E0CE 1px solid;
color:#6A3A1E;
font-weight:700;
padding:10px 5px 10px 20px;
width:100px
}

.about table.line td {
border-bottom:#E9E0CE 1px solid;
border-left:1px dotted #E9E0CE;
padding:10px 5px 10px 20px
}

.about table.line td.first {
font-weight:700;
padding-right:20px;
width:110px
}

.about p.text {
font-size:100%;
padding:20px 0
}

.about table.dot {
font-size:100%;
margin:20px 0 80px;
width:100%
}

.about table.dot th {
background:none;
border-bottom:1px dotted #E9E0CE;
font-weight:700;
padding:10px 0;
width:190px
}

.about table.dot td {
border-bottom:1px dotted #E9E0CE;
border-left:1px dotted #E9E0CE;
padding:10px 0 10px 20px
}

.about .maps {
height:0;
overflow:hidden;
padding-bottom:56.25%;
padding-top:30px;
position:relative
}

.about .maps iframe,.about .maps object,.about .maps embed {
height:100%;
left:0;
position:absolute;
top:0;
width:100%
}

.mission p.image {
margin:50px 0 40px;
text-align:center
}

.mission .mission {
overflow:hidden
}

.mission .mission dd {
margin:15px 0 40px
}

.mission .mission .m01 {
display:block;
float:left;
width:236px
}

.mission .mission .m02 {
display:block;
float:left;
width:271px
}

.history1 .conteInr h3 img,.history2 .conteInr h3 img,.history3 .conteInr h3 img {
display:block;
height:auto;
margin:0 auto;
max-width:100%
}

.stickyNav {
background:url(../../img/company/history_cmn/anchor_bg.png) no-repeat 0 0;
height:39px;
margin-left:30px;
margin-top:40px;
padding:3px;
position:absolute;
width:894px
}

.stickyNav.sticky {
margin-top:40px;
position:fixed;
top:0;
z-index:1000
}

.history1 .section p {
margin:25px 0 40px
}

.history1 #section01 .secInr {
background:url(../../img/company/history1/img04.png) no-repeat right 0;
margin:-8px 0 0;
min-height:284px;
padding:8px 0 0
}

.history1 #section02 .secInr {
background:url(../../img/company/history1/img06.png) no-repeat 555px 13px;
min-height:285px;
min-height:285px
}

.history1 #section03 .secInr {
background:url(../../img/company/history1/img11.png) no-repeat right 30px;
margin-top:-100px;
min-height:490px
}

.history1 #section03 .secInr table {
position:relative;
top:100px
}

.history1 #section04 .secInr {
background-image:url(../../img/company/history1/img1401.png),url(../../img/company/history1/img1402.png),url(../../img/company/history1/img1403.png),url(../../img/company/history1/image1404.png),url(../../img/company/history1/image1405.png),url(../../img/company/history1/img1406.png);
background-position:right 10px top 0px,right 10px top 370px,right 10px top 570px,right 10px top 900px,right 10px top 1200px,right 10px top 1450px;
background-repeat:no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat
}

.history2 .section table th {
color:#6A391E;
padding:15px 0;
white-space:nowrap;
width:110px
}

.history2 .section table th,.history2 .section table td {
border-bottom:#AAA 1px dashed;
padding:15px 5px;
vertical-align:top;
word-break:break-all
}

.history2 #section01 .secInr {
background:url(../../img/company/history2/img04.png) no-repeat 505px 8px;
min-height:284px
}

.history2 #section02 .secInr {
background:url(../../img/company/history2/img06.png) no-repeat 545px 10px;
min-height:285px
}

.history2 #section03 .secInr {
background:url(../../img/company/history2/img11.png) no-repeat right 5px;
margin-top:-100px;
min-height:346px
}

.history2 #section03 .secInr table {
max-width:450px;
position:relative;
top:100px;
width:auto
}

.history2 #section04 .secInr table img {
float:right;
padding-left:15px
}

.history2 #section04 .secInr table div {
float:left;
width:125px
}

.history2 #section04 .secInr table span {
display:inline-block;
margin:8px 0
}

.history2 #section04 .secInr table td {
vertical-align:top
}

.history2 #section04 .secInr table ul {
clear:both
}

.history2 #section04 .secInr table ul li {
padding:0 0 5px
}

.history2 #section04 .secInr table ul.hf li {
display:inline-block;
vertical-align:top;
width:48%
}

.history3 #catImg ul:after {
background:url(../../img/company/common/cat_history_icon.png) no-repeat 0 0;
content:'';
display:block;
height:54px;
left:475px;
position:absolute;
top:-317px;
width:50px
}

.history3 .section {
margin:0 auto 80px;
width:900px
}

.history3 .section .secInr h4,.history3 .section table.tbl02 {
font-size:100%;
width:290px
}

.history3 #section01 .secInr {
background:url(../../img/company/history3/img02_01.png) no-repeat 0 0;
margin:0 auto;
min-height:252px;
width:710px
}

.history3 #section01 .secInr h4,.history3 #section01 .secInr table {
margin-left:260px
}

.history3 #section02 .secInr {
background:url(../../img/company/history3/img05.png) no-repeat right 0;
margin:-35px auto 0;
min-height:200px;
padding:35px 0 0;
width:760px
}

.history3 #section03 .secInr {
background:url(../../img/company/history3/img06.png) no-repeat 0 0;
margin:0 auto;
min-height:304px;
width:760px
}

.history3 #section03 .secInr h4,.history3 #section03 .secInr table {
margin-left:300px
}

.history3 #section04 {
margin-top:-60px;
padding-top:60px
}

.history3 #section04 .secInr {
background:url(../../img/company/history3/img09.png) no-repeat right 0;
margin:0 auto;
min-height:543px;
width:760px
}

.company .conteInr .w960,.topmessage #content,.about #content,.mission #content {
margin:0 auto;
width:960px
}

.company .catNav li,.stickyNav li {
float:left
}

.company .catNav li:nth-child(1) img,.company .catNav li:nth-child(2) img {
margin-right:-1px
}

.topmessage #catImg,.about #catImg,.mission #catImg {
background:#B0D8FF url(../../img/company/common/cat_under_ttl_bg.jpg) no-repeat center 0
}

.topmessage #catImg h2,.about #catImg h2,.mission #catImg h2 {
margin:0 auto 55px;
width:960px
}

.topmessage h3,.about h3,.mission h3 {
margin-bottom:45px
}

.about .conteInr,.mission .conteInr {
float:left;
margin:0;
width:700px!important
}

.about table.line p .co-g,.about table.line p .maru {
color:#868686
}

.mission .mission .m03,.mission .mission .m04,.mission .mission .m05 {
display:block;
float:left;
width:199px
}

.history1 #breadCrumb,.history2 #breadCrumb,.history3 #breadCrumb {
position:relative;
z-index:100
}

.history1 #breadCrumb h1,.history2 #breadCrumb h1,.history3 #breadCrumb h1 {
left:0;
position:relative
}

.history1 #breadCrumb h1:before,.history2 #breadCrumb h1:before,.history3 #breadCrumb h1:before {
background:none!important
}

.history1 #catImg,.history2 #catImg,.history3 #catImg {
background:url(../../img/company/common/cat_hisotory_ttl_bg.jpg) no-repeat center 0;
margin-top:-30px;
position:relative;
z-index:0
}

.history1 #catImg ul:after,.history2 #catImg ul:after {
background:url(../../img/company/common/cat_history_icon.png) no-repeat 0 0;
content:'';
display:block;
height:127px;
left:450px;
position:absolute;
top:-300px;
width:195px
}

.history1 #catImg ul,.history2 #catImg ul,.history3 #catImg ul {
height:157px;
left:20px;
margin:-170px auto 0;
position:relative;
width:960px;
z-index:100
}

.history1 #catImg ul li,.history2 #catImg ul li,.history3 #catImg ul li {
float:left;
margin-right:10px;
margin-top:-40px
}

.history1 #content,.history2 #content,.history3 #content {
background:url(../../img/company/top/conte_bg.jpg) no-repeat 51% 0
}

.history1 .conteInr,.history2 .conteInr,.history3 .conteInr {
width:960px
}

.history1 .conteInr h3,.history2 .conteInr h3,.history3 .conteInr h3 {
margin-bottom:40px;
margin-bottom:15px;
padding-top:30px;
text-align:center
}

.history1 .section,.history2 .section {
margin:0 auto 60px;
width:900px
}

.history1 .section table,.history3 .section .secInr h4,.history3 .section table {
font-size:100%;
width:450px
}

.history1 .section table th,.history3 .section table th {
color:#6A391E;
width:140px
}

.history1 .section table th,.history1 .section table td,.history3 .section table th,.history3 .section table td {
border-bottom:#AAA 1px dashed;
padding:15px 5px;
vertical-align:top
}

.history1 #section01,.history2 #section01,.history3 #section01 {
margin-top:90px;
padding-top:60px
}

.history1 #section02,.history1 #section03,.history2 #section02,.history2 #section03,.history3 #section02,.history3 #section03 {
margin-top:-60px;
padding-top:60px
}

.history1 #section03 ul,.history2 .section p,.history2 #section03 ul {
margin:25px 0
}

.history1 #section04,.history2 #section04 {
margin-bottom:80px;
margin-top:-80px;
padding-top:60px
}

.history2 #section01 .secInr table,.history2 #section02 .secInr table {
max-width:450px;
width:auto
}
/*アコーディオンcss*/
summary{
position: relative;
padding: 0px 50px 10px 0px;
cursor: pointer;
background-color: #FFF;
color: #353535;
}
summary::-webkit-details-marker{
position: absolute;
color: transparent;
}
summary:hover, details[open] summary {
background-color: #FFF;
margin-bottom: 0px;
}
summary::after {
content: '+';
font-size: 130%;
position: absolute;
top: 45%;
right: 30px;
transform: translateY(-50%);
transition: transform.5s;
}
details[open] summary::after{
transform:translateY(-50%) rotate(45deg);
}
.answer {
background-color: #FFF;
max-width: 630px;
margin: auto;
}
.answer p {
background: none;
}
details[open] .answer{
animation:fadein .5s ease-in-out;
}
@keyframes fadein {
0% { opacity: 0; }
100%{ opacity: 1; }
}
/*アコーディオンcss*/
.modal-wrapper {
  z-index: 999;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 60px 10px;
  text-align: center
}

.modal-wrapper:not(:target) {
  opacity: 0;
  visibility: hidden;
  transition: opacity .3s, visibility .3s;
}

.modal-wrapper:target {
  opacity: 1;
  visibility: visible;
  transition: opacity .4s, visibility .4s;
}

.modal-wrapper::after {
  display: inline-block;
  height: 100%;
  margin-left: -.05em;
  vertical-align: middle;
  content: ""
}

.modal-wrapper .modal-window {
  box-sizing: border-box;
  display: inline-block;
  z-index: 20;
  position: relative;
  width: auto;
  max-width: 600px;
  padding: 5px 5px 5px;
  border-radius: 2px;
  background: #fff;
  box-shadow: 0 0 30px rgba(0, 0, 0, .6);
  vertical-align: middle
}

.modal-wrapper .modal-window .modal-content {
  max-height: 80vh;
  overflow-y: auto;
}

.modal-overlay {
  z-index: 10;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, .8)
}

.modal-wrapper .modal-close {
  z-index: 20;
  position: absolute;
  top: 0;
  right: 0;
  width: 35px;
  color: #95979c !important;
  font-size: 20px;
  font-weight: 700;
  line-height: 35px;
  text-align: center;
  text-decoration: none;
  text-indent: 0
}

.modal-wrapper .modal-close:hover {
  color: #2b2e38 !important
}
