﻿/* all page */
/*fonts*/
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap');
.maru, .font_bar, #pc_nav li a, #intro h2, #contents h2, #contents2 h2, #contents3 h2, #top_cms h2, #top_info h2, #page_title, .footer_right #footer_nav li a, footer #copyright, #page_title, .cate_list li a, .cate_list li .cate_no, .cate_title, .sub_cate_title, .box_title, .box_title1, a[href^="tel:"], .pager li a {
    font-family: 'Zen Maru Gothic', "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif!important;
}
/*スクショ*/
/*html, body{overflow: auto}*/
/*.pp-section{position: static}*/


/* color ---------------------------------------------------------------------------------------------*/
.linkStyle{color: #160a0a;text-decoration: underline;transition: opacity .3s;}
.linkStyle:hover{opacity: 0.7}
.txt_color1, .hvr_txt_color1:hover{color: #EC721A;}
/*.txt_color2, .hvr_txt_color2:hover{color: #e6e6e6}*/
.txt_color3, .hvr_txt_color3:hover{color: #ffab7a;}
/*.txt_color4, .hvr_txt_color4:hover{color: #c9baa9}*/

/* background-color */
.bg_color1, .hvr_bg_color1:hover{background-color: #EC721A;}
/*.bg_color2, .hvr_bg_color2:hover{background-color: #e6e6e6}*/
.bg_color3, .hvr_bg_color3:hover{background-color: #F6C0A8;}
/*.bg_color4, .hvr_bg_color4:hover{background-color: #c9baa9}*/

/* border-color ※!important */
.border_color1, .hvr_border_color1:hover{border-color: #EC721A;}
/*.border_color2, .hvr_border_color2:hover{border-color: #e6e6e6}*/
.border_color3, .hvr_border_color3:hover{border-color: #F6C0A8;}
/*.border_color4, .hvr_border_color4:hover{border-color: #c9baa9}*/

#wrap{
    overflow: hidden;
}

/* header */

/*固定バナー*/
.banner__fixed {
    position: fixed;
    top: 20px;
    right: 110px;
    max-width: 300px;
	min-height: 80px;
    z-index: 7;
}
.banner__fixed a {
	padding: 22px;
	background-color: #ffa781;
}

/* footer */



/* top ----------------------------------------------------------------*/

/* main img */
#custom .grid_container {
display: grid;
grid-template-columns: repeat(1, 1fr);
grid-template-rows: repeat(1, 1fr);
grid-column-gap: 0px;
grid-row-gap: 0px;
width: 100%;
    height: 100%;
}
/*#custom .grid_container {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-template-rows: repeat(3, 1fr);
grid-column-gap: 0px;
grid-row-gap: 0px;
width: 100%;
    height: 100%;
}

#custom .grid_box1 { grid-area: 1 / 1 / 2 / 2; }
#custom .grid_box2 { grid-area: 1 / 2 / 2 / 3; }
#custom .grid_box3 { grid-area: 1 / 3 / 2 / 4; }
#custom .grid_box4 { grid-area: 1 / 4 / 2 / 5; }
#custom .grid_box5 { grid-area: 2 / 1 / 3 / 2; }
#custom .grid_box6 { grid-area: 2 / 2 / 3 / 3; }
#custom .grid_box7 { grid-area: 2 / 3 / 3 / 4; }
#custom .grid_box8 { grid-area: 2 / 4 / 3 / 5; }
#custom .grid_box9 { grid-area: 3 / 1 / 4 / 2; }
#custom .grid_box10 { grid-area: 3 / 2 / 4 / 3; }
#custom .grid_box11 { grid-area: 3 / 3 / 4 / 4; }
#custom .grid_box12 { grid-area: 3 / 4 / 4 / 5; }*/

.main_r{
    top: 0;
    right: 0;
    height: 100vh;
    opacity: 0;
    
    /*transition: 2s;*/
    animation: slideIn 2s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
    animation-delay: 4.0s;
}
/*.main_r.active{*/
    /*opacity: 1;*/
    
/*}*/
.main_r img{
    height: 100%;
    width: auto;
}
@keyframes slideIn {
  0% {
    filter: blur(5px);
    opacity: 0;
  }
  100% {
      filter: none;
    opacity: 1;
  }
}

#main_h_logo{
    transform: translate(-50%, -50%) scale(1.1);
    opacity: 0;
    filter: blur(5px);
    transition: 2s;
    transition-property: transform, opacity, filter;
    padding: 20px 40px;
    background-color: rgba(255,255,255,0.6);
}
#main_h_logo.active{
    transform: translate(-50%, -50%);
    opacity: 1;
    filter: none;
}
#main_h_logo img{
    width: 100%!important;
}

#custom .grid_container .grid_item{
    opacity: 0;
    transition: opacity 1s;
}
#custom .grid_container .grid_item.fadeUp {
    opacity: 1;
}

/*#custom .catch {*/
/*    bottom: 10%;*/
/*    right: 5%;*/
/*    transition: 2s;*/
/*    transform: rotate(-4deg);*/
/*    width: 45%;*/
/*    max-width: 770px;*/
/*    filter: blur(5px);*/
/*    opacity: 0;*/
/*}*/
/*#custom .catch.active{*/
/*    opacity: 1;*/
/*    filter: none;*/
/*}*/


/* main */

/* intro */
#intro .intro_right div {
    background-position: top center;
}

/* contents */
#contents .con_bg, #contents2 .contents2_wrap{
    background-image: url('./Dup/img/con_bg.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
#contents .con_box1::before{
    display: none;
}
#contents .con_box1{
	padding-bottom: 0;
	margin-bottom: 0;
}
#contents .con_no, #contents2 .con_no {
    font-size: 23px;
    font-weight: bold;
    display: inline-block;
    padding: 5px;
    background-color: #fff;
    border-radius: 100%;
    color: #ec721a;
    width: 50px;
    height: 50px;
    text-align: center;
}
#contents .con_btn a{
    line-height: 1;
}
#contents .con_btn a:hover{
    background-color: #fff;
    border-color: #fff;
    color: #ec721a;
}
#contents2 .btn-wrap a{
    color: #fff;
	background-color: #ec721a;
	border: 1px solid #fff;
	border-radius: 50px;
	transition: all 0.3s;
	padding: 20px;
}
#contents2 .btn-wrap a:hover{
    color: #ec721a;
	background-color: #fff;
	border: 1px solid #fff;
}


/* topcms */
/* ---------- loopSlider ---------- */
.loopSliderWrap{
    top: 0;
    left: 0;
    height: 450px;
}
.loopSlider {
    margin: 0 auto;
    height: 450px;
    text-align: left;
    position: relative;
    overflow: hidden;
}
.loopSlider .ul {
    height:450px;
    float: left;
    overflow: hidden;
}
.loopSlider .ul .li {
    width: 450px;
    height: 450px;
    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;
}
/*リンクボタン*/
.btn {
    z-index: 3;
    display: block;
}
.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;
}
.btn a::before {
    content: '';
    position: absolute;
    bottom: 55px;
    right: 27%;
    width: 42%;
    height: 1px;
    background: #333;
    transition: all .3s;
}
.btn a span, .btn a strong {
    text-align: center;
}
.btn a::after {
    content: '';
    position: absolute;
    bottom: 60px;
    right: 27%;
    width: 15px;
    height: 1px;
    background: #333;
    transform: rotate(35deg);
    transition: all .3s;
}
.btn a:hover {
    background: #2a2a32;
    color: #fff;
}
.btn a:hover::before {
    right: 16%;
    background: #fff;
}
.btn a:hover::after {
    right: 15%;
    background: #fff;
}
.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;
}
.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;
    margin-top: 50px;
}
}
@media screen and (max-width: 667px){
#top_conveyor,.loopSliderWrap,.loopSlider,.loopSlider .ul,.loopSlider .ul .li{
	height: 179px!important;
}
.loopSlider .ul .li{
    width: 179px;
}
/*リンクボタン*/
.btn a::after {
    bottom: 35px;
    right: 27%;
}
.btn a::before {
    bottom: 30px;
    right: 27%;
}
.btn a {
    font-size: 17px;
    width: 140px;
    height: 140px;
    background-color: rgba(255,255,255,0.62);
}
.btn a span::before{
    top: 25px;
}
}

/* under page ----------------------------------------------------------------*/
#page_title{
    padding-top: 300px;
}


/* ---------- 1536px ---------- */
@media screen and (max-width: 1536px){}
/* ---------- 1366px ---------- */
@media screen and (max-width: 1366px){}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.banner__fixed {
    top: 0;
    right: 60px;
}
.banner__fixed a {
    padding: 10px;
}
.main_r {
    height: auto;
    width: 100%;
    top: auto;
    bottom: 0;
}
.main_r img{
    height: auto;
    width: 100%;
}

#page_title {
    padding-top: 150px;
}

}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
#pc_nav li a{
    padding-top: 5px;
    padding-bottom: 5px;
}
#custom .grid_container {
display: grid;
grid-template-columns: repeat(1, 1fr);
grid-template-rows: repeat(1, 1fr);
height: 100vh;
}

/*#custom .grid_container {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: repeat(4, 1fr);
height: 100vh;
}

#custom .grid_box1 { grid-area: 1 / 1 / 2 / 2; }
#custom .grid_box2 { grid-area: 1 / 2 / 2 / 3; }
#custom .grid_box3 { grid-area: 1 / 3 / 2 / 4; }
#custom .grid_box4 { grid-area: 2 / 1 / 3 / 2; }
#custom .grid_box5 { grid-area: 2 / 2 / 3 / 3; }
#custom .grid_box6 { grid-area: 2 / 3 / 3 / 4; }
#custom .grid_box7 { grid-area: 3 / 1 / 4 / 2; }
#custom .grid_box8 { grid-area: 3 / 2 / 4 / 3; }
#custom .grid_box9 { grid-area: 3 / 3 / 4 / 4; }
#custom .grid_box10 { grid-area: 4 / 1 / 5 / 2; }
#custom .grid_box11 { grid-area: 4 / 2 / 5 / 3; }
#custom .grid_box12 { grid-area: 4 / 3 / 5 / 4; }*/

#intro h2{font-size: 21px;}
#page_title {
    padding-top: 120px;
}

}

/*20230523*/
#main_h_logo {width: 450px;}
/* ---------- 1366px ---------- */
@media screen and (max-width: 1366px){
#main_h_logo {width: 400px;}
}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#main_h_logo {width: 320px;}

}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
#main_h_logo {
    width: 270px;
    padding: 10px 40px;
}
#custom, #custom .custom_wrap{
    height: 100vh!important;
    overflow: hidden!important;
}
#custom .grid_container{
    overflow: hidden;
}
#intro{
    background-color: #fff;
    position: relative;
    z-index: 2!important;
}
    
}


/*20230525*/
.flow_type3 .cate{counter-reset: box;}
.flow_type3 .cate_box{counter-increment: box;}
.flow_type3 .box_item{padding-top: 20px;}
.flow_type3 .box_title1{z-index: 0}
.flow_type3 .box_title1::before, .flow_type3 .box_title1::after{
	position: absolute;
	content: "";
	display: block;
	pointer-events: none
}
.flow_type3 .box_title1::before {
	content: "0"counter(box);
	font-size: 86px;
	color: #ebebeb;
	left: 0;
	top: -80px;
	z-index: -1;
}
.flow_type3 .box_title1::after{
	width: 100%;
	height: 1px;
	bottom: 0;
	left: 0;
	background-color: #222
}
/*-------- スマートフォン --------*/
@media screen and (max-width: 667px){
.flow_type3 .box_title1::before{
	left: auto;
	right: 0;
	top: -80px;
}
.flow_type3 .box_item {
    padding-top: 36px;
}
}


/*20230705*/
#cms_2-h .box_img1, #cms_2-h .box_img2 {width: 33.33333%!important;}
#cms_2-h .box_title1:before {bottom: -10px;}
#cms_6-a .btn_container a{padding: 8px 30px;}
#cms_6-c .box_item figure {
    width: -webkit-calc(50.0% - 8px);
    width: calc(50.0% - 8px);
}
#cms_6-c .box_img1, #cms_6-c .box_img3 {margin-right: 11px;}
#cms_6-a .box_image figure {width: 31.33333%!important;}
/*-------- スマートフォン --------*/
@media screen and (max-width: 667px){
#cms_2-h .box_img1, #cms_2-h .box_img2 {width: 100%!important;}
#cms_6-c .box_item figure {width: 100%;}
#cms_6-c .box_img1, #cms_6-c .box_img3 {margin-right: 0;}
#cms_6-a .box_image figure {width: 100%!important;}
.flow_type3 .box_item {padding-top: 5px;}

}

/*20231027*/
#main_h_logo {padding: 20px;}
.banner__fixed a {padding: 0;background:none;}
.banner__fixed {
    max-width: 340px;
    min-height: auto;
}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.banner__fixed {max-width: 300px;}
}
/*-------- スマートフォン --------*/
@media screen and (max-width: 667px){
#main_h_logo {padding: 10px;}
.banner__fixed {max-width: 210px;}
}

/*20240117*/
.banner__fixed {max-width: 300px;}
/* 左右に斜め線(両端を丸く) */
#contents2 .con2_txt {
  align-items: center;
  display: flex;
  justify-content: center;
}
#contents2 .con2_txt::before,
#contents2 .con2_txt::after {
  background-color: #fff;
  border-radius: 5px;
  content: "";
  height: 5px;
  width: 40px;
}
#contents2 .con2_txt::before {
  margin-right: 10px;
  transform: rotate(60deg);
}
#contents2 .con2_txt::after {
  margin-left: 10px;
  transform: rotate(-60deg);
}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.banner__fixed {max-width: 300px;}
}
/*-------- スマートフォン --------*/
@media screen and (max-width: 667px){
.banner__fixed {
    max-width: 220px;
    top: auto;
    right: auto;
    left: 10px;
    bottom: 10px;
}
#contents2 .con2_txt::before,#contents2 .con2_txt::after {width: 15%;}
.toppage footer > div > div {padding-bottom: 150px!important;}
.footer_right {padding-bottom: 100px!important;}
}

/*20240123*/
#page05 .cate_box{
    background-color: #f7f7f7;
}

/*20240325*/
.banner__fixed {
    top: auto;
    bottom: 20px;
}
#header_menu{
    z-index: 10;
    background-color: rgba(255,255,255,0.7);
}
#cms_3-b .btn_container a{padding: 8px 30px;}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
footer > div{padding-bottom: 70px;}
}
/*-------- スマートフォン --------*/
@media screen and (max-width: 667px){
footer > div{padding-bottom: 0;}
}

/*20240403*/
.banner__fixed {max-width: 350px;}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.banner__fixed {max-width: 300px;}
}
/*-------- スマートフォン --------*/
@media screen and (max-width: 667px){
.banner__fixed {max-width: 250px;}
}


/*20241119*/
#main_h_logo {
    transform: translate(-50%, -50%) scale(1.1);
    padding: 0;
    background: none;
    width: 28%;
    max-width: 530px;
}
#main_h_logo.active {
    transform: translate(-50%, -40%);
}
#main_h_logo .logo {
    padding: 20px 40px;
    background-color: rgba(255, 255, 255, 0.6);
}
.main_maru{
    transform: translate(0%, -8%) scale(1.1);
    opacity: 0;
    filter: blur(5px);
    transition: 2s;
    transition-property: transform, opacity, filter;
}
.main_maru.active{
    transform: translate(0%, -8%);
    opacity: 1;
    filter: none;
}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#main_h_logo {width: 65%;}
}
/*-------- スマートフォン --------*/
@media screen and (max-width: 667px){
#main_h_logo {width: 95%;}
}

/*20241126*/
/*-------- スマートフォン --------*/
@media screen and (max-width: 667px){
#main_h_logo.active {transform: translate(-50%, -50%);}
#main_h_logo {width: 85%;}
.main_maru {width: 80%;}
.main_maru.active {transform: translate(10%, -14%);}

}

/*20241204*/
/*-------- スマートフォン --------*/
@media screen and (max-width: 667px){
.main_maru {
    position: absolute;
    bottom: 3px;
    left: 50%;
    transform: translate(-50%, 0);
    width: 72%;
}
.main_maru.active {transform: translate(-50%, 0);}

}

/*20250512*/
#contents2 .btn-wrap a {
    background-color: #06c755;
}
