@charset "UTF-8";


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

#hed { height: 40vh; margin: 0px auto; }
#hed .contents_main_title > div:nth-child(1) p { color: #111; text-shadow: none; }
#hed .contents_main_title > div:nth-child(2) p { color: #111; text-shadow: none; }


/*
-------------------------------------------*/
.hed_btm_wrap{
margin: 0 0 60px;
border-top: 1px solid #121212;
border-bottom: 1px solid #121212;
padding:15px 0 15px;
box-sizing: border-box;
background: rgba(0,0,0,.05);
}

.cou_btn_list{
position: relative;
margin: 0 auto 0;
width:90%;
min-width: 1200px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.cou_btn_list li{
width: 24%;
position: relative;
}

.cou_btn_list li a{
display: block;
background: #00275f;
padding: 10px 10px;
box-sizing: border-box;
text-align: center;
color: #FFF;
font-weight: 700;
transition: .5;
line-height: 1;
border-radius: .5rem;
}

.cou_btn_list li a:hover{
opacity:.5;
transition:.5s;
}

.cou_btn_list li a .arrow{
position: absolute;
top: 8px;
right: 6px;
width: 14px;
}


/*
-------------------------------------------*/
.download_btn_list{
width: 1000px;
margin: 0 auto 120px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.download_btn_list li { width: 48%; }

.download_btn_list li a{
display: block;
background: #0066a1;
padding:20px 10px;
box-sizing: border-box;
text-align: center;
font-weight: 800;
color: #FFF;
font-size: 1.2rem;
line-height: 1;
border-radius:.6rem;
transition: .5s;
position: relative;
}
.download_btn_list li a:hover { opacity: .5; transition: .5s; }

.download_btn_list li a .arrow{
position:absolute;
top:18px;
right: 10px;
width:20px;
}


/*
-------------------------------------------*/
#machinary { margin: 0 auto 220px; position: relative; }

#machinary .block { position: relative; margin: 0 auto 120px; }
#machinary .block .s_ttl {
font-size: 3.2rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .1rem;
text-align: center;
margin: 0 0 40px;
}
#machinary .block .red_txt {
font-size: 1.2rem;
font-weight: 600;
text-align: center;
margin: 0 0 60px;
}


#machinary .block .coupling_list {
width: 60%;
margin: auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#machinary .block .coupling_list li { position: relative; }
#machinary .block .coupling_list li:first-child,
#machinary .block .coupling_list li:last-child { width:44%; }
#machinary .block .coupling_list li:nth-child(2){
width:12%;
position: relative;
display: flex;
align-items: center;
padding: 3%;
box-sizing: border-box;
}

#machinary .block .coupling_list li:nth-child(2) img { border-radius: 0; }
#machinary .block .coupling_list li img { border-radius: 1rem; overflow: hidden; }

#machinary .block .coupling_list li p{
text-align: center;
font-weight:800;
font-size: 1.2rem;
margin-top: 5px;
}
#machinary .block .coupling_list li:last-child p { color:#e60216; }



#machinary .parallax_img{
width: 100%;
height:36vh;
overflow: hidden;
margin:0 auto 160px;
}



#machinary .block_sub {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
position: relative;
margin: 0 auto 100px;
width:90%;
background: #f2f5fc;
}

#machinary .block_sub .txt_box { width: 55%; padding:45px; box-sizing: border-box; }
#machinary .block_sub .txt_box .s_ttl {
font-size: 2.4rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .1rem;
margin: 0 0 40px;
text-align: left;
}
#machinary .block_sub .txt_box .s_ttl span {
display:table;
padding: 3px 15px;
background:#0066a1;
font-size: 1rem;
color: #FFF;
border-radius: 50rem;
margin-bottom: 5px;
}
#machinary .block_sub .txt_box .red_txt {
font-size: 1.2rem;
font-weight: 600;
text-align:left;
margin: 0;
}

#machinary .block_sub .img { width: 45%; }



#machinary .block2 { position: relative; margin: 0 auto 120px; }
#machinary .block2 .s_ttl {
font-size: 2.6rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .1rem;
text-align: center;
margin: 0 0 40px;
}

#machinary .block2 .pro_list {
width:80%;
min-width: 1200px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 auto 20px;
}
#machinary .block2 .pro_list li {
width: 32.33%;
background: #00275f;
padding: 10px;
box-sizing: border-box;
border-radius: 1rem;
}
#machinary .block2 .pro_list li a {
display: block;
transition: .5;
position: relative;
}
#machinary .block2 .pro_list li a:hover { opacity: .5; transition: .5; }

#machinary .block2 .pro_list li .img {
margin: 0 0 10px;
border: rgba(255,255,255,.1);
border-radius: .6rem;
overflow: hidden;
position: relative;
}
#machinary .block2 .pro_list li .img p {
position: absolute;
bottom: 0px;
right: 10px;
font-size: 0.9rem;
color: #fff;
}

#machinary .block2 .pro_list li h3 {
text-align: center;
color: #FFF;
font-size: 1.4rem;
}

#machinary .block2 .pro_list li a .read_more {
text-align: center;
color: #FFF;
font-size: .9rem;
}

#machinary .block2 .txt { text-align: center; }



#machinary .block3 { position: relative; margin: 0 auto 120px; }
#machinary .block3 .s_ttl {
font-size: 2.6rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .1rem;
text-align: center;
margin: 0 0 40px;
}

#machinary .block3 .pro_list {
width:80%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 auto 60px;
}
#machinary .block3 .pro_list li {
width: 32.33%;
margin-bottom:1%;
background: #f4f4f4;
padding: 3px;
box-sizing: border-box;
}
#machinary .block3 .pro_list li .img { border: rgba(255,255,255,.1); }

#machinary .block3 .pro_list li h3 {
text-align: center;
padding: 5px;
box-sizing: border-box;
}



#machinary .block4 {
position: relative;
width: 100%;
margin: 0 auto 120px;
padding: 55px 25%;
background: #f2f5fc;
box-sizing: border-box;
}
#machinary .block4 .ttl {
font-size: 2.6rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .1rem;
margin: 0 0 40px;
text-align: center;
}

#machinary .block4 .s_ttl {
font-size:1.8rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .1rem;
margin: 0 0 40px;
text-align: center;
}
#machinary .block4 .red_txt {
font-size: 1rem;
font-weight: 600;
text-align:left;
margin: 0;
}



#machinary .block5 { position: relative; margin: 0 auto 120px; width:90%; }
#machinary .block5 .ttl {
width: 100%;
font-size: 2.6rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .1rem;
margin: 0 0 40px;
text-align: center;
}

#machinary .block5 .network_wrap { width: 70%; margin: 0 auto; min-width: 1000px; }

.tab4 {
display: flex;
flex-direction: row;
text-align: center;
background-color: #fff !important;
margin: 0 !important;
}
.tab4__item {
flex: 1;
}
.tab4__link {
position: relative;
display: block;
text-decoration: none;
color: #666666;
font-size: 1.6rem;
font-weight: 800;
cursor: pointer;
}

.tab4__link.on {
color: #0066a1;
}

.tab4__link:before {
content: '';
position: absolute;
bottom: 0;
right: 50%;
width: 0;
height: 2px;
background-color: #0066a1;
transition: all 0.4s ease-out;
}
.tab4__link:after {
content: '';
position: absolute;
bottom: 0;
left: 50%;
width: 0;
height: 2px;
background-color: #0066a1;
transition: all 0.4s ease-out;
}
.tab4__link.on:before {
width: 50%;
}

.tab4__link.on:after {
width: 50%;
}

.tab4-body {
position: relative;
background:#171717;
}
.tab4-body__item {
position: absolute;
width: 100%;
opacity: 0;
transition: all 0.6s ease-out;
}
.tab4-body__item.on {
opacity: 1;
position: relative;
}


.network_box { position: relative; }

.network_box .network_txt_box {
position: absolute;
top: 80px;
left: 8%;
width: 45%;
min-width: 460px;
background: rgba(255,255,255,1);
padding: 25px;
box-sizing: border-box;
}

.network_box .network_txt_box h3 {
font-size: 1.4rem;
font-weight: 800;
line-height: 1;
margin: 0 0 10px;
border-bottom: 1px solid #121212;
padding-bottom: 5px;
}

.network_box .network_txt_box dl {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 20px;
}
.network_box .network_txt_box dl dt {
width: 25%;
padding: 5px;
box-sizing: border-box;
font-weight: 600;
}
.network_box .network_txt_box dl dd {
width: 75%;
padding: 5px;
box-sizing: border-box;
}

.network_box .network_txt_box .area {
padding:20px;
box-sizing: border-box;
background: #0066a1;
}
.network_box .network_txt_box .area h4 {
font-size: 1.2rem;
line-height: 1;
font-weight: 800;
color: #FFF;
margin: 0 0 10px;
}
.network_box .network_txt_box .area p { color: #FFF; font-weight: 500; }



.box {
position: relative;
margin:0 auto 100px;
width: 90%;
background:#f2f5fc;
padding: 35px;
box-sizing: border-box;
}

.box .rinen_box {
border: 1px solid rgba(0,0,0,.1);
padding: 35px;
box-sizing: border-box;
border-radius:1rem;
background:#FFF;
margin: 0 auto 40px;
}
.box .rinen_box:last-child { margin-bottom: 0; }

.box h4 {
font-size: 2.2rem;
font-family: "Zen Old Mincho", serif;
line-height: 1;
text-align: center;
margin: 0 0 40px;
}

.box .rinen_box h5 {
font-size: 1.4rem;
font-family: "Zen Old Mincho", serif;
line-height: 1.4;
margin: 0 0 20px;
}

.box .rinen_box p {
font-family: "Zen Old Mincho", serif;
font-size: 1.2rem;
line-height:2.2;
}


}





/*sp*/
@media only screen and (max-width: 767px) {

#hed { height: 25vh; margin: 0px auto; }
#hed .contents_main_title > div:nth-child(1) p { color: #111; text-shadow: none; }
#hed .contents_main_title > div:nth-child(2) p { color: #111; text-shadow: none; }


/*
-------------------------------------------*/
.hed_btm_wrap{
margin: 0 0 40px;
border-top: 1px solid #121212;
border-bottom: 1px solid #121212;
padding:15px 0 15px;
box-sizing: border-box;
background: rgba(0,0,0,.05);
}

.cou_btn_list{
position: relative;
margin: 0 auto 0;
width:90%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.cou_btn_list li{
width: 49%;
position: relative;
margin-bottom: 1%;
}

.cou_btn_list li a{
display: block;
background: #00275f;
padding: 10px 20px;
box-sizing: border-box;
text-align: center;
color: #FFF;
font-weight: 700;
transition: .5;
line-height: 1;
border-radius: .5rem;
font-size: .8rem;
}

.cou_btn_list li a:hover{
opacity:.5;
transition:.5s;
}

.cou_btn_list li a .arrow{
position: absolute;
top: 8px;
right: 5px;
width: 14px;
}


/*
-------------------------------------------*/
.download_btn_list{
width: 90%;
margin: 0 auto 60px;
}

.download_btn_list li{
width:100%;
margin-bottom: 20px;
}

.download_btn_list li:last-child{
margin-bottom: 0;
}

.download_btn_list li a{
display: block;
background: #0066a1;
padding:20px 10px;
box-sizing: border-box;
text-align: center;
font-weight: 800;
color: #FFF;
font-size:1rem;
line-height: 1;
border-radius:.6rem;
transition: .5s;
position: relative;
}
.download_btn_list li a:hover{
opacity: .5;
transition: .5s;
}

.download_btn_list li a .arrow{
position:absolute;
top:18px;
right: 10px;
width:10px;
}


/*
-------------------------------------------*/
#machinary { margin: 0 auto 60px; position: relative; }

#machinary .block { position: relative; margin: 0 auto 60px; }
#machinary .block .s_ttl {
font-size: 1.4rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .1rem;
text-align: center;
margin: 0 0 20px;
padding: 0 5%;
box-sizing: border-box;
}
#machinary .block .red_txt {
font-size: 1rem;
font-weight: 600;
text-align: center;
margin: 0 0 60px;
padding: 0 5%;
box-sizing: border-box;
}


#machinary .coupling_list {
width: 90%;
margin: auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#machinary .coupling_list li { position: relative; }
#machinary .coupling_list li:first-child,
#machinary .coupling_list li:last-child { width:45%; }
#machinary .coupling_list li:nth-child(2) {
width:10%;
position: relative;
display: flex;
align-items: center;
padding: 1.5%;
box-sizing: border-box;
}
#machinary .coupling_list li:nth-child(2) img { border-radius: 0; }
#machinary .coupling_list li img { border-radius: 1rem; overflow: hidden; }
#machinary .coupling_list li p {
text-align: center;
font-weight:800;
font-size: .9rem;
margin-top: 5px;
line-height: 1.2;
}
#machinary .coupling_list li:last-child p { color:#e60216; }



#machinary .parallax_img {
width: 100%;
height:120px;
overflow: hidden;
margin:0 auto 60px;
}



#machinary .block_sub {
position: relative;
margin: 0 auto 60px;
width:90%;
background: #f2f5fc;
padding:5%;
box-sizing: border-box;
}
#machinary .block_sub .txt_box { width:100%; margin: 0 0 20px; }
#machinary .block_sub .s_ttl {
font-size: 1.2rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .1rem;
margin: 0 0 20px;
text-align: left;
}
#machinary .block_sub .s_ttl span {
display:table;
padding: 3px 15px 0;
background:#0066a1;
font-size: .8rem;
color: #FFF;
border-radius: 50rem;
margin-bottom: 5px;
}
#machinary .block_sub .red_txt {
font-size: .9rem;
font-weight: 600;
text-align:left;
margin: 0;
}
#machinary .block_sub .img { width: 80%; margin: auto; }



#machinary .block2 { position: relative; margin: 0 auto 60px; }
#machinary .block2 .s_ttl {
font-size: 1.4rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .1rem;
text-align: center;
margin: 0 0 20px;
}

#machinary .block2 .pro_list { width:90%; margin: 0 auto 20px; }
#machinary .block2 .pro_list li {
width:100%;
background: #00275f;
padding: 10px;
box-sizing: border-box;
border-radius: 1rem;
margin-bottom: 15px;
}
#machinary .block2 .pro_list li:last-child { margin-bottom: 0; }

#machinary .block2 .pro_list li a {
display: block;
transition: .5;
position: relative;
}

#machinary .block2 .pro_list li .img {
margin: 0 0 10px;
border: rgba(255,255,255,.1);
border-radius: .6rem;
overflow: hidden;
}

#machinary .block2 .pro_list li h3 { text-align: center; color: #FFF; font-size: 1rem; }

#machinary .block2 .pro_list li a .read_more {
text-align: center;
color: #FFF;
font-size: .9rem;
}



#machinary .block3 { position: relative; margin: 0 auto 60px; }
#machinary .block3 .s_ttl {
font-size:1.4rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .1rem;
text-align: center;
margin: 0 0 20px;
padding: 0 5%;
box-sizing: border-box;
}

#machinary .block3 .pro_list {
width:90%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 auto 30px;
}
#machinary .block3 .pro_list li {
width:49%;
margin-bottom:1%;
background: #f4f4f4;
padding: 5px;
box-sizing: border-box;
}
#machinary .block3 .pro_list li .img { margin: 0 0 10px; border: rgba(255,255,255,.1); }
#machinary .block3 .pro_list li h3 { text-align: center; font-size: .8rem; }



#machinary .block4 {
margin: 0 auto 60px;
width:100%;
background:#f2f5fc;
padding:8% 5%;
box-sizing: border-box;
}

#machinary .block4 .ttl {
font-size: 1.4rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .1rem;
margin:0 0 20px;
text-align: center;
}
#machinary .block4 .txt_box .s_ttl {
font-size:1.2rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .05rem;
margin: 0 0 20px;
text-align: left;
}
#machinary .block4 .txt_box .red_txt {
font-size:.8rem;
font-weight: 600;
text-align:left;
margin: 0 0 40px;
}



#machinary .block5 { position: relative; margin: 0 auto 0; width:90%; }
#machinary .block5 .ttl {
width: 100%;
font-size: 1.4rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .1rem;
margin: 0 0 20px;
text-align: center;
}

#machinary .block5 .network_wrap { width: 100%; margin: 0 auto; }

.tab4 {
background-color: #fff !important;
margin: 0 !important;
}
.tab4__item {
flex: 1;
}
.tab4__link {
position: relative;
display: block;
text-decoration: none;
color: #666666;
font-size: 1.2rem;
font-weight: 800;
cursor: pointer;
}

.tab4__link.on {
color: #0066a1;
}

.tab4__link:before {
content: '';
position: absolute;
bottom: 0;
right: 50%;
width: 0;
height: 2px;
background-color: #0066a1;
transition: all 0.4s ease-out;
}
.tab4__link:after {
content: '';
position: absolute;
bottom: 0;
left: 50%;
width: 0;
height: 2px;
background-color: #0066a1;
transition: all 0.4s ease-out;
}

.tab4__link.on:before {
width: 50%;
}

.tab4__link.on:after {
width: 50%;
}

.tab4-body {
position: relative;
background:#171717;
}
.tab4-body__item {
position: absolute;
width: 100%;
opacity: 0;
transition: all 0.6s ease-out;
}
.tab4-body__item.on {
opacity: 1;
position: relative;
}


.network_box { position: relative; background: #000; }
.network_box .network_txt_box {
position: relative;
width:100%;
background: rgba(255,255,255,1);
padding: 15px;
box-sizing: border-box;
}
.network_box .network_txt_box h3 {
font-size: 1rem;
font-weight: 800;
line-height: 1;
margin: 0 0 10px;
border-bottom: 1px solid #121212;
padding-bottom: 5px;
}

.network_box .network_txt_box dl {
font-size: .8rem;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 20px;
}
.network_box .network_txt_box dl dt {
width: 25%;
padding: 5px;
box-sizing: border-box;
font-weight: 600;
}
.network_box .network_txt_box dl dd {
width: 75%;
padding: 5px;
box-sizing: border-box;
}

.network_box .network_txt_box .area {
padding:10px;
box-sizing: border-box;
background: #0066a1;
}
.network_box .network_txt_box .area h4 {
font-size: 1rem;
line-height: 1;
font-weight: 800;
color: #FFF;
margin: 0 0 10px;
}
.network_box .network_txt_box .area p { color: #FFF; font-weight: 500; }



.box {
position: relative;
margin:0 auto 60px;
background:#f2f5fc;
padding:20px;
box-sizing: border-box;
}

.box .rinen_box {
border: 1px solid rgba(0,0,0,.1);
padding: 20px;
box-sizing: border-box;
border-radius:1rem;
background:#FFF;
margin: 0 auto 30px;
}
.box .rinen_box:last-child { margin-bottom: 0; }

.box .rinen_box h5 {
font-size: 1rem;
font-family: "Zen Old Mincho", serif;
line-height: 1.4;
margin: 0 0 20px;
}
.box .rinen_box p {
font-family: "Zen Old Mincho", serif;
font-size: .9rem;
line-height:1.8;
}


}