﻿.banner {
    max-width: 300px;
    margin-top: 30px;
}

#cms_2-f .cate_img1 {
    max-height: none;
    width: 70% !important;
    margin: auto;
}
#cms_2-f .cate_img1{
    max-height:none;
}
#cms_2-f .yanocard .box_title1 {
    font-size: 14px;
    letter-spacing: 0;
}
@media screen and (max-width:1450px){
    #page_title .title_img {
    height: 180px;
    }
}
a.linkStyle {
    color: #006ac1;
    text-decoration: underline;
}

.sp_menu{
line-height: 2;
transition: .3s;
z-index: 3;
position: fixed;
bottom: 0;
left: 0;
width: 100%;
font-size: 12px;
letter-spacing: 0px;
}
.sp_menu li{
width: 25%;
border-top: 1px solid #fff;
border-bottom: 1px solid #fff;
border-right: 1px solid #fff;
box-sizing: border-box;
}
.sp_menu li:nth-of-type(1),.sp_menu li:nth-of-type(5){border-left: 1px solid #fff;}
.sp_menu li:nth-of-type(5),.sp_menu li:nth-of-type(6){border-top: none;}
.sp_menu li a{padding: 10px 3px;height: 100%;box-sizing: border-box;}
.sp_menu_btn{
width: 20%;
padding: 5px 9px;
position: absolute;
top: -38px;
cursor: pointer;
}
.sp_menu_btn .nav_btn{
display: inline-block;
width: 15px;
height: 15px;
margin-right: 5px;
position: relative;
top: 3px;
}
.sp_menu_btn .nav_btn span{
display: block;
background-color: #fff;
height: 3px;
width: 15px;
position: absolute;
left: 5px;
top: 5px;
transition: .3s;
}
.sp_menu_btn .nav_btn.open_btn span:nth-child(1){
transform: rotate(-55deg);
left: -1px;
width: 13px;
}
.sp_menu_btn .nav_btn.open_btn span:nth-child(2){
transform: rotate(55deg);
right: -1px;
width: 13px;
}
.sp_menu_btn .nav_btn.close_btn span{left: 0;}
.sp_menu_btn .nav_btn.close_btn span:nth-child(1){transform: rotate(45deg);}
.sp_menu_btn .nav_btn.close_btn span:nth-child(2){transform: rotate(-45deg);}
.sp_menu_btn .close,.sp_menu_btn .open{
display: inline-block;
font-size: 14px;
}
.sp_menu_btn.opennow .open{display: none!important;}
.sp_menu.navclose{bottom: -91px;}

.page_inner {
    background: white;
    padding-left: 20px;
    padding-right: 20px;
}
#cms_2-b .cate_box {
    background: white;
}
#main_menu ul li a::before {
    background-color: #006ac1; 
}

article.page_wrap{
    position:relative;
}
footer {
    border-top: 0 !important;
}
article.page_wrap:before {
    width: 310px;
    height: 300px;
    content: "";
    left: 0;
    position: absolute;
    background: url(Dup/img/page_bottom1.png) no-repeat;
    bottom: 0;
    background-size: contain;
    z-index: -1;
}
article.page_wrap:after {
    width: 500px;
    height: 160px;
    content: "";
    position: absolute;
    background: url(Dup/img/page_bottom2.png) no-repeat;
    bottom: 0;
    right: 0;
    background-size: contain;
    z-index: -1;
}

#page_title .page_box:before {
    width: 550px;
    height: 250px;
    content: "";
    position: absolute;
    background: url(Dup/img/page_title_left.png) no-repeat;
    top: 0;
    left: 0;
    background-size: contain;
}
#page_title .page_box:after {
    width: 250px;
    height: 400px;
    content: "";
    position: absolute;
    background: url(Dup/img/main_b3.png) no-repeat;
    top: 0;
    right: 0;
    background-size: contain;
}
#page_title .page_box {
    position: relative;
}
section#top_cms {
    background: url(Dup/img/page_bottom3.png) no-repeat;
    background-position: right top;
    background-size: 380px;
    position: relative;
    padding-bottom: 100px;
}
section#top_cms:before {
    width: 310px;
    height: 300px;
    content: "";
    position: absolute;
    background: url(Dup/img/page_bottom1.png) no-repeat;
    bottom: 0;
    background-size: contain;
}
section#top_cms:after {
    width: 500px;
    height: 160px;
    content: "";
    position: absolute;
    background: url(Dup/img/page_bottom2.png) no-repeat;
    bottom: 0;
    right: 0;
    background-size: contain;
}
.cms_2-f .box_item_img.top_card img {
    position: relative;
}
.cms_2-f .box_wrap .box_item {
    width: calc(20% - 20px) !important;
}
.cms_2-f .box_wrap {
    box-shadow: none;
    flex-wrap: wrap;
    gap: 30px 25px;
    justify-content: flex-start;
}
/* ---------- loopSlider ---------- */
section#top_conveyor {
    margin-bottom: 100px;
    margin-top: 100px;
}
.loopSliderWrap{
    top: 0;
    left: 0;
    height: 350px;
}
.loopSlider {
    margin: 0 auto;
    height: 350px;
    text-align: left;
    position: relative;
    overflow: hidden;
}
.loopSlider .ul {
    height:350px;
    float: left;
    overflow: hidden;
}
.loopSlider .ul .li {
    width: 350px;
    height: 350px;
    float: left;
    display: inline;
    overflow: hidden;
	position: relative;
	box-sizing: border-box;
	padding: 0;

}

.loopSlider .ul .li img{
    border-radius: 0;
}
.loopSliderWrap:after {
    content: "";
    display: none;
    clear: none;
}
/*リンクボタン*/
#top_conveyor .btn {
    z-index: 3;
    display: block;
    top:60%;
}
#top_conveyor .btn a {
    background: #fff;
    color: #212121;
    width: 200px;
    height: 200px;
    display: flex;
    align-content: center;
    justify-content: center;
    border-radius: 50%;
    flex-wrap: wrap;
    transition: all 0.4s;
    font-size: 20px;
}
#top_conveyor .btn a::before {
    content: '';
    position: absolute;
    bottom: 55px;
    right: 27%;
    width: 42%;
    height: 1px;
    background: #333;
    transition: all .3s;
}
#top_conveyor .btn a span,#top_conveyor .btn a strong {
    text-align: center;
}
#top_conveyor .btn a::after {
    content: '';
    position: absolute;
    bottom: 60px;
    right: 27%;
    width: 15px;
    height: 1px;
    background: #333;
    transform: rotate(35deg);
    transition: all .3s;
}
#top_conveyor .btn a:hover {
    background: #006ac1;
    color: #fff;
}
#top_conveyor .btn a:hover::before {
    right: 16%;
    background: #fff;
}
#top_conveyor .btn a:hover::after {
    right: 15%;
    background: #fff;
}
#top_conveyor .btn a span::before {
    content: '';
    display: inline-block;
    width: 25px;
    height: 25px;
    background-image: url("../dup/img/btn_icon.png");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 49px;
    left: 0;
    right: 0;
    margin: auto;
    transition: all .3s;
    opacity: 0.8;
}
#top_conveyor .btn a:hover span::before{
    background-image: url("../dup/img/btn_icon_hvr.png");
}
@media screen and (max-width: 768px){
#top_conveyor,.loopSliderWrap,.loopSlider,.loopSlider .ul,.loopSlider .ul .li{
	height: 280px;
}
.loopSlider .ul .li{
    width: 280px;
}
#top_conveyor {
    padding-bottom: 0;
    padding-top: 0;
}
}
@media screen and (max-width: 667px){
#top_conveyor,.loopSliderWrap,.loopSlider,.loopSlider .ul,.loopSlider .ul .li{
	height: 179px!important;
}
.loopSlider .ul .li{
    width: 179px;
}
/*リンクボタン*/
#top_conveyor .btn a::after {
    bottom: 35px;
    right: 27%;
}
#top_conveyor .btn a::before {
    bottom: 30px;
    right: 27%;
}

#top_conveyor .btn a {
    font-size: 17px;
    width: 140px;
    height: 140px;
    background-color: rgba(255,255,255,0.62);
}
#top_conveyor .btn a span::before{
    top: 25px;
}
}
/*-----------------------ここまで--------------------------*/


.yanocard .box_wrap .box_title1 {
    padding: 0 !important;
    text-align: center;
    margin-top: 10px;
    color: black;
    font-size: 16px;
}
.yanocard .box_wrap .box_title1:after{
    display:none !important;
}
.yanocard .box_wrap {
    display: flex;
    flex-wrap: wrap;
}
.yanocard .box_wrap .cate_box {
    width: 30% !important;
}
.yanocard .box_wrap .cate_box .box_item {
    width: 100% !important;
}
.yanocard .box_wrap .cate_box {
    width: 30% !important;
    flex-direction: column;
}
.btn_container a {
    display: block;
    background: #006ac1;
    text-align: center;
    padding: 8px;
    box-sizing: border-box;
    color: white;
    max-width: 400px;
}
.btn_container{
        margin-top:10px;
}
#cms_4-a h4.box_txt {
    color: #006ac1;
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 5px;
    margin-top: 10px;
}
#cms_2-g .cate_title {
    color: #006ac1;
}
.hvr_bg_color1:hover {
    background-color: #006ac1;
}
#contents2 {
    background: url(Dup/img/main_b2.png) ,url(Dup/img/main_b3.png);
    background-repeat: no-repeat;
    background-position: left bottom , right top;
}
.border_color1 {
    border-color: #006ac1;
}

.js-hover-fade:before {
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    z-index: 5;
    left:0;
}

 .off {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    transition: .1s ease;
  }
  .on {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
  }
  .on, .off {
    display: block;
  }




div#main_txt {

    position: absolute;
    top: 130px;
    left: 150px;
    width: 22vw;
    z-index:3;
}
div#inner_wrap:before {
    width: 300px;
    height: 420px;
    content: "";
    position: absolute;
    background: url(Dup/img/main_b3.png) no-repeat;
    background-size: contain;
    right: 0;
    top: 0;
}
div#inner_wrap:after {
    width: 610px;
    height: 396px;
    content: "";
    position: absolute;
    background: url(Dup/img/main_b4.png) no-repeat;
    background-size: contain;
    right: 0;
    bottom: 0;
    z-index: 2;
}
div#inner_wrap:before {
    width: 300px;
    height: 420px;
    content: "";
    position: absolute;
    background: url(Dup/img/main_b3.png) no-repeat;
    background-size: contain;
    right: 0;
    top: 0;
}
#main_img:before {
    width: 260px;
    height: 350px;
    content: "";
    position: absolute;
    background: url(Dup/img/main_b1.png) no-repeat;
    background-size: contain;
    left: 0;
    top: 0;
}
#main_img:after {
    width: 320px;
    height: 350px;
    content: "";
    position: absolute;
    background: url(Dup/img/main_b2.png) no-repeat;
    background-size: contain;
    left: 0;
    bottom: 0;
    z-index: 2;
}

div#main_b img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
div#inner_wrap {
    width: 100%;
    height: 100%;
    padding: 3% 5%;
    box-sizing: border-box;
    position: relative;
}
div#main_b {
    height: 90vh;
    position: relative;
    border-radius: 50px;
    overflow: hidden;
    border: 3px solid white;
}
header {
    background: #fcfeff !important;
    width: 300px;
    border: 8px solid #006ac1;
    box-sizing: border-box;
}
.button:hover::after {
    box-shadow: inset 0 0 0 15em rgb(102 209 237);
}
.bg_color3 {
    background-color: #006ac1;
}
.border_color3 {
    border-color: #006ac1;
}
#main_img {
    z-index: 1;
    overflow: hidden;
    position: relative;
    background: #d8eff7;
}
.main_box {
    width: calc(100% - 300px);
    margin-left: 300px;
}
.head_box:before {
    content: "";
    position: absolute;
    bottom: 58px;
    width: 100%;
    height: 8px;
    background: #006ac1;
}
.head_box{
    position:relative;
}
.txt_color1 {
    color: #006ac1;
}
.bg_color1 {
    background-color: #006ac1;
}
#contents3 {
    background: url(Dup/img/bg.jpg);
    position:relative;
}
#contents3:before {
    width: 100%;
    height: 100%;
    background: #1c89d3cc;
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    mix-blend-mode: multiply;
}
#contents3 div {
    position: relative;
}
.txt_color3 {
    color: #ffc800;
}



#contents1 .box_wrap {
    display: flex;
    align-items: center;
}
#contents1 .box_wrap .box_left {
    width: 60%;
}
#contents1 .box_wrap .box_right {
    width: 40%;
}

footer div {
    position: relative;
}

footer:before {
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background: #ffffff63;
}
footer {
    background: url(Dup/img/bg.jpg);
    position: relative;
}

/*-------------------------------タブレット------------------------------------*/
@media screen and (max-width:768px){
    div#main_txt {
    top: 120px;
    left: 70px;
    width: 230px;
}
    .head_box:before{
        display:none;
    }
    header #logo {
    padding: 0 10px;
    max-width: 90px;
}
header{
    border:0;
}
.main_box {
    width: 100%;
    margin-left: 0;
}
div#main_b {
    height: 450px; 
}
#main_img:after {
    width: 210px;
    height: 200px;
}
div#inner_wrap:after {
    width: 332px;
    height: 216px; 
}
div#inner_wrap:before {
    width: 150px;
    height: 220px; 
}
#main_img:before {
    width: 140px;
    height: 190px; 
}
div#main_txt {
    position: absolute;
    top: 80px;
    left: 80px;
    width: 220px;
    z-index: 3;
}
.js-hover-fade:before{
    display:none;
}
div#main_b img.off {
    display: none;
}
#contents1 .box_wrap {
    flex-direction: column;
}
#contents1 .box_wrap .box_left {
    width: 100%;
}
#contents1 .box_wrap .box_right{
    width: 80%;
}
#contents2 {
    background-size: 250px,200px;
}
section#top_cms {
    background-size: 250px; 
}
.cms_2-f .box_wrap .box_item {
    width: 30% !important;
}
section#top_cms:after,article.page_wrap:after{
    width: 350px;
    height: 120px; 
}
section#top_cms:before,article.page_wrap:before{
    width: 180px;
    height: 180px; 
}
header .head_banner {
    display: none;
}
.sp_menu li a {
    background:#015499;
}
#page_title .page_box:before {
    width: 320px; 
}
#page_title .page_box:after {
    width: 160px; 
}
.page_inner {
    background: white;
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 20px;
}
#contents_box img {
    filter: grayscale(0);
}
#top_conveyor .btn {

    top: 80%;
}
div#inner_wrap:after {
    width: 360px;
    height: 234px;
}
#page_title .title_img {
    height: 140px;
}
}

/*-----------------------------------------スマホ---------------------------------------------*/
@media screen and (max-width:667px){
    header #logo {
    padding: 0 10px;
    max-width: 75px;
}
header {
    padding: 5px 0 !important;
}
div#main_txt {
    top: 40px;
    left: 40px;
    width: 160px;
}
#main_img:before {
    width: 90px;
    height: 120px;
}
#main_img:after {
    width: 130px;
    height: 140px;
}
div#inner_wrap:after {
    width: 252px;
    height: 164px;
}
div#inner_wrap:before {
    width: 90px;
}
div#main_b {
    height: 450px;
}
#contents1 {
    padding: 50px 10%;
}
#contents1 .box_wrap .box_right {
    width: 100%;
}
#contents2 {
    background-size: 180px,130px;
}
section#top_cms {
    background-size: 170px;
}
#top_conveyor .btn {
    top: 100%;
}
section#top_cms:after, article.page_wrap:after {
    width: 220px;
    height: 70px;
}
section#top_cms:before, article.page_wrap:before {
    width: 130px;
    height: 130px;
}
.cms_2-f .box_wrap .box_item {
    width: 48% !important;
}
.cms_2-f .box_wrap {

    gap: 10px 4%; 
}
.cms_2-f .box_item_img{
    padding-top:0;
}
div#inner_wrap {
    padding: 10% 5%; 
}
div#main_txt {
    top: 60px;
    left: 40px;
    width: 160px;
}
#page_title .page_box:before {
    width: 230px;
}
#page_title .page_box:after {
    width: 100px;
    height: 140px;
}
.page_inner {
    background: transparent;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
}
.yanocard .box_wrap .cate_box {
    width: 50% !important;
    flex-direction: column;
}
.yanocard .box_wrap .box_title1 {
    padding: 0 !important;
    text-align: center;
    margin-top: 0;
    color: black;
    font-size: 12px;
}
.con_tel_box {
    background: white;
}
#page7 .box_wrap {
    background: white;
}
.cms_2-f.cms_wrap {
    margin-bottom: 0;
}
.cms_2-f .box_wrap {
    margin-bottom: 0; 
}
#cms_4-a .cate_box {
    margin-bottom: 30px;
}
section#page9 {
    background: white;
}
#page_title .title_img {
    height: 70px;
}
#cms_2-f .yanocard .box_title1 {
    font-size: 12px;
}
#cms_2-f .cate_img1 {
    width: 100% !important;
}
.banner {
    margin-bottom: 20px; 
}
}
/* fix_banner -------------------------------------- */
.fix_banner{
	max-width: 350px;
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 10;
	transition: 0.5s;
}
.fix_banner .close_bt {
    position: absolute;
    bottom: 65px;
    right: 335px;
    display: block;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    transition: 0.5s;
    background-color: #fff;
    /* border: solid 2px #ddc21b; */
    z-index: 11;
    cursor: pointer;
}
.fix_banner .close_bt:hover{opacity: 0.7;}
.fix_banner .close_bt span{
	position: relative;
	display: block;
	width: 30px;
	height: 30px;
}
.fix_banner .close_bt span:before,.fix_banner .close_bt span:after{
	content: "";
	display: block;
	background-color: #221e03;
	height: 4px;
	width: 20px;
	position: absolute;
	top:50%;
	left: 50%;
}
.fix_banner .close_bt span:before{
	-ms-transform: translate(-50%,-50%) rotate(-45deg);
	-webkit-transform: translate(-50%,-50%) rotate(-45deg);
	transform: translate(-50%,-50%) rotate(-45deg);
}
.fix_banner .close_bt span:after{
	-ms-transform: translate(-50%,-50%) rotate(45deg);
	-webkit-transform: translate(-50%,-50%) rotate(45deg);
	transform: translate(-50%,-50%) rotate(45deg);
}
.fix_banner.close{right: -450px;}
.fix_banner.close2{right: -450px;}
@media  screen and (max-width: 768px){
.fix_banner{max-width: 300px;}
.fix_banner .close_bt {
    bottom: 75px;
    right: 277px;
}
}
@media  screen and (max-width: 667px){
.fix_banner{max-width: 60%;
   right: 20%;}
.fix_banner .close_bt {
    width: 22px;
    height: 22px;
    bottom: 52px;
    right: 94%;
}
.fix_banner .close_bt span {
    width: 22px;
    height: 22px;
}
}
/* fix_banner end -------------------------------------- */
