@charset "utf-8";

/*------reset-------*/
*,*::before,*::after{
box-sizing:border-box;
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
}
html,body,header,footer,menu,nav,article,section,aside,div,h1,h2,h3,h4,h5,h6,p,span,strong,em,b,i,a,hr,ul,ol,li,dl,dt,dd,table,th,td,figure,img,form,fieldset,input,textarea,checkbox,label,select,button,iframe{
margin:0;
padding:0;
border:0;
outline:0;
vertical-align:baseline;
}
table{
border-collapse:collapse;
}
ul,li{
list-style:none;
}
img{
border:0;
line-height:0;
vertical-align:top;
}
a{
text-decoration:none;
}
em,i{
font-style:normal;
}
strong{
font-weight:bold;
}
::before,
::after{
content:'';
content:none;
}


/*------common-------*/
html{
}
body{
width:100%;
background:#ffffff;
text-align:center;
line-height:1.8;
font-family:Arial,sans-serif;
color:#333333;
}
h1,h2,h3,h4,h5,h6{
font-weight:500;
}
h1,h2,h3{
line-height:1.3;
}
a{
color:#006953;
}
img{
max-width:100%;
}

/*------switch-------*/
@media screen and (min-width:768px){
.pc{
display:inline-block!important;
}
.sp{
display:none!important;
}
a:hover{
opacity:0.8;
}
}
@media screen and (max-width:767px){
.pc{
display:none!important;
}
.sp{
display:inline-block!important;
}
a{
text-decoration:underline;
}
}

/*------font-------*/
html{
font-size:62.5%;
}
@media screen and (max-width:767px){
html{
font-size:100%;
}
}
body,h1,h2,h3,h4,h5,h6{
font-size:1.4rem;
}
@media screen and (max-width:767px){
body,h1,h2,h3,h4,h5,h6{
font-size:3.6vw;/*28px*/
}
}
h1,h2,h3{
font-family:'Noto Sans JP',Arial,sans-serif;
}
/*12,14,24*/


/*------module-------*/
mt0{margin-top:0;}
mb0{margin-bottom:0;}


/*------layout------*/
#container{
width:100%;
padding:0;
overflow:hidden;
}
article{
}
aside{
}
.page_title h1,
article .inner,
aside{
width:88%;
max-width:1000px;
margin:0 auto;
text-align:left;
}
#pagetop{
margin-top:40px;
}
@media screen and (max-width:767px){
header+article{
margin-top:16vw;
}
#pagetop{
margin-top:12vw;
}
}
#top+#pagetop{
margin-top:0;
}


/*------header------*/
header .inner{
display:flex;
align-items:center;
margin:0 auto;
}
#sitename{
flex-grow:1;
}
#sitename a{
display:flex;
align-items:center;
text-align:left;
}
#sitename a img{
max-width:initial;
height:100%;
}
@media screen and (min-width:768px){
header{
position:relative;
}
header.fixed{
position:fixed;
top:0;
z-index:1;
width:100%;
background:rgba(255,255,255,0.9);
}
header .inner{
width:98%;
max-width:1200px;
height:80px;
}
header.fixed .inner{
height:60px;
}
#sitename a{
height:46px;
font-size:2rem;
white-space:nowrap;
}
header.fixed #sitename a{
height:38px;
font-size:1.8rem;
}
#sitename a img{
margin-right:20px;
}
}
@media screen and (max-width:1200px){
#sitename a img{
margin-right:1vw;
}
}
@media screen and (max-width:950px){
#sitename a{
font-size:2vw;
}
}
@media screen and (max-width:767px){
header{
position:fixed;
top:0;
z-index:100;
width:100%;
background:#ffffff;

}
header .inner{
width:88%;
height:16vw;
}
#sitename a{
height:9vw;
font-size:3.6vw;
text-decoration:none;
}
#sitename a img{
margin-right:1em;
}
}


@media screen and (min-width:768px){
header nav{
display:flex;
width:640px;
margin-left:20px;
}
#h_menu{
display:flex;
justify-content:space-between;
width:100%;
align-items:center;
}
#h_menu>li{
display:flex;
align-items:center;
height:80px;
}
header.fixed #h_menu>li{
height:60px;
}
#h_menu>li>a{
position:relative;
display:flex;
align-items:center;
height:40px;
font-weight:700;
line-height:1;
color:#333333;
white-space:nowrap;
}
#h_menu>li>a::after{
visibility:hidden;
opacity:0;
content:'';
position:absolute;
bottom:-20px;
left:50%;
margin-left:-6px;
border:8px solid transparent;
border-bottom:10px solid #006953;
-webkit-transition:all .5s ease;
transition:all .5s ease;
}
header.fixed #h_menu>li>a::after{
bottom:-10px;
}
#h_menu>li:hover>a::after{
visibility:visible;
opacity:1;
}
#h_menu>li.mail:hover>a::after{
display:none;
}
#h_menu>li.mail{
width:30px;
}
#h_menu>li.search{
width:25px;
}
#h_menu>li.mail img,
#h_menu>li.search img{
width:100%;
}
#h_menu>li .sub_menu{
visibility:hidden;
opacity:0;
z-index:1;
position:absolute;
top:80px;
left:0;
width:100%;
max-height:150px;
padding:25px 0 30px;
border-top:5px #006953 solid;
background:rgba(248,248,248,0.95);
-webkit-transition:all .5s ease;
transition:all .5s ease;
}
header.fixed #h_menu>li .sub_menu{
top:60px;
}
#h_menu>li:hover .sub_menu{
visibility:visible;
opacity:1;
}
#h_menu .sub_menu dl{
display:flex;
width:98%;
max-width:1000px;
margin:0 auto;
text-align:left;
}
#h_menu .sub_menu dt{
width:200px;
font-size:16px;
font-weight:700;
}
#h_menu .sub_menu dd{
border-left:1px #006953 solid;
padding-left:30px;
font-size:13px;
max-height:100px;
}
#h_menu .sub_menu dd ul{
display:flex;
flex-wrap:wrap;
flex-direction:column;
height:100%;
}
#h_menu .sub_menu dd li{
padding:5px 65px 5px 0;
}
#h_menu .sub_menu dd a{
position:relative;
display:block;
padding:5px;
line-height:1;
}
#h_menu .sub_menu dd a:after{
content:'';
display:block;
position:absolute;
width:6px;
height:6px;
border-right:1px #006953 solid;
border-top:1px #006953 solid;
transform:rotate(45deg);
right:0;
top:50%;
margin-top:-3px;
}
#sub_menu_special dd li a{
width:85px;
}
#sub_menu_biz dd li a{
width:230px;
}
#sub_menu_biz dd li:nth-child(n+4) a{
width:115px;
}
#sub_menu_company dd li:nth-child(-n+3) a{
width:110px;
}
#sub_menu_company dd li:nth-child(n+4) a{
width:125px;
}
#sub_menu_recruit dd li a{
width:110px;
}
#sub_menu_ir dd li:nth-child(-n+3) a{
width:135px;
}
#sub_menu_ir dd li:nth-child(n+4) a{
width:85px;
}
#h_menu .sub_menu a{
color:#006953;
}
#h_menu #sub_menu_search.sub_menu .h_search_box{
display:flex;
justify-content:flex-end;
width:100%;
max-width:1000px;
margin:0 auto;
text-align:center;
}
.menu_btn,
.menu_ico{
display:none;
}
#search_btn {
border: 0px;
width: 49px;
height: 22px;
background: url(../img/ico_search.svg) no-repeat;
background-size:20px;
position: absolute;
right: 10px;
text-indent:-9999px;
}
}
@media screen and (max-width:1200px){
}
@media screen and (max-width:767px){
header nav{
position:fixed;
right:0;
top:16vw;
width:100vw;
height:100vh;
background:#F8F8F8;
/**/transform:translateX(100%);
transition:transform 250ms ease-in-out;
z-index:1;
}
header input[type="checkbox"]:checked~nav{
transform:translateX(0);
}
header nav a{
color:#333333;
text-decoration:none;
}
.menu_btn{
display:none;
}
.menu_ico{
width:16vw;
height:16vw;
position:absolute;
right:0;
cursor:pointer;
transition:all 0.3s;
z-index:1;
}
.menu_ico i{
position:absolute;
top:50%;
left:50%;
width:8vw;
height:3px;
margin-left:-4vw;
margin-top:-2px;
cursor:pointer;
background:#000000;
transition:all 0.3s;
}
.menu_ico i:before,
.menu_ico i:after{
display:block;
content:'';
position:absolute;
top:0;
left:0;
width:8vw;
height:3px;
cursor:pointer;
background:#000000;
transition:all 0.3s;
}
.menu_ico i:before{
margin-top:-0.5em;
}
.menu_ico i:after{
margin-top:0.5em;
}
header input[type="checkbox"]:checked~.menu_ico i{
background:transparent;
}
header input[type="checkbox"]:checked~.menu_ico i:before{
margin-top:0;
transform:rotate(135deg);
}
header input[type="checkbox"]:checked~.menu_ico i:after{
margin-top:0;
transform:rotate(-135deg);
}
#h_menu{
display:flex;
flex-wrap:wrap;
width:100%;
text-align:left;
}
#h_menu>li{
display:flex;
flex-wrap:wrap;
width:100%;
font-size:4.2vw;
}
#h_menu>li{
border-top:1px #b3b3b3 solid;
}
#h_menu>li>a{
width:80%;
padding:0 2vw 0 5vw;
display:flex;
align-items:center;
}
#h_menu>li>i{
position:relative;
display:block;
width:20%;
height:12.66vw;
cursor:pointer;
}
#h_menu>li>i:before,
#h_menu>li>i:after{
content:'';
display:block;
width:3vw;
height:1px;
background:#000000;
position:absolute;
top:50%;
right:5vw;
}
#h_menu>li>i:before{
}
#h_menu>li>i:after{
transform:rotate(90deg);
transition:all .3s;
}
#h_menu>li>i.open:after{
transform:rotate(180deg);
}
#h_menu .sub_menu{
display:none;
width:100%;
background:#ffffff;
font-size:3.6vw;
}
#h_menu i.open+.sub_menu{
display:block;
}
#h_menu .sub_menu dt{
display:none;
}
#h_menu .sub_menu li{
border-top:1px #b3b3b3 solid;
}
#h_menu .sub_menu li a{
position:relative;
display:block;
padding:2vw 8vw;
}
#h_menu .sub_menu li a:after{
position:absolute;
top:50%;
right:6vw;
display:block;
content:'';
width:2.2vw;
height:2.2vw;
margin-top:-1.1vw;
border-right:1px #000000 solid;
border-top:1px #000000 solid;
transform:rotate(45deg);
}
#h_menu>li.mail{
justify-content:center;
}
#h_menu>li.mail a{
width:88%;
margin:8vw 0 4vw;
padding:2vw 5vw;
background:#b3b3b3;
color:#ffffff;
justify-content:center;
}
#h_menu>li.mail a img{
width:6.13vw;
margin-right:1em;
}
#h_menu>li.search{
order:-1;
border:none;
}
#h_menu>li.search a{
display:none;
}
#h_menu>li.search .sub_menu{
display:block;
background:#F8F8F8;
justify-content:center;
}
.h_search_box{
margin:4vw auto;
width:88%;
/*
position:relative;
display:flex;
background:#ffffff;
*/
}
#h_menu>li.search .sub_menu input[type="text"]{
width:70%;
border:none;
background:transparent;
padding:2vw;
}
#search_btn{
border: 0px;
height: 4vw;
background: url(../img/ico_search.svg) no-repeat;
background-size:3vw;
text-indent:-9999px;
}
}


/*googleカスタム検索用*/
#___gcse_0{
width:500px;
padding-right:50px;
background:#ffffff;
border:1px #cccccc solid;
}
#___gcse_1{/*result*/
}
#___gcse_0 td,
#___gcse_1 td{
border:none;
}
form.gsc-search-box{
margin:0!important;
}
table.gsc-search-box{
margin:0!important;
}
.gsc-input-box {
padding:0!important;
border:none!important;
border-radius:0!important;
}
.gsc-search-box-tools .gsc-search-box .gsc-input {
padding:0 0 0 5px!important;
display:block;
}
.gsib_a{
padding:0!important;
height:40px;
}
.gscb_a{
line-height:40px!important;
}
.cse .gsc-search-button-v2,
.gsc-search-button-v2{
padding:0!important;
border:none!important;
    border-radius: 0!important;
    -moz-border-radius:  0!important;
    -webkit-border-radius: 0!important;
    border-color: none!important;
    background-color: none!important;
    background-image: none!important;
background: none!important;
position: absolute;
right:-40px;
bottom:0;
width:40px!important;
height:40px!important;
background:url(../img/ico_search.svg) center center no-repeat!important;
background-size:25px!important;
}
.gsc-search-button-v2 svg {
display:none!important;
}
/*
*/
.under_3col_side .gsc-search-button-v2{
    right: 18px;
}
#___gcse_1 .gsc-search-button-v2{
    bottom: -17px;
}
td.gsc-search-button{
    position: relative;
    width: 0;
}
.slabel {
    padding-left: 20px;
    margin-bottom: 10px;
}
.gsc-search-box-tools .gsc-search-box .gsc-input{
    padding-right: 0;
}
@media screen and (max-width:767px){
#___gcse_0,
#___gcse_1{
width:100%;
padding-right:10vw;
}
.gsib_a{
height:8vw;
}
.gscb_a{
line-height:8vw!important;
}
.cse .gsc-search-button-v2,
.gsc-search-button-v2{
right:-8vw;
width:8vw!important;
height:8vw!important;
background-size:5vw!important;
}
}


/*------Language-------*/
@media screen and (min-width:768px){
#lang{
display:flex;
align-items:center;
flex-shrink:0;
width:80px;
margin-left:30px;
}
#lang li{
overflow:hidden;
}
#lang li:first-child{
border-top-left-radius:15px;
border-bottom-left-radius:15px;
}
#lang li:last-child{
border-top-right-radius:15px;
border-bottom-right-radius:15px;
}
#lang li>span,
#lang li a{
display:flex;
width:40px;
height:30px;
align-items:center;
justify-content:center;
font-size:1.2rem;
color:#ffffff;
}
#lang li>span{
background:#006953;
}
#lang li a{
background:#cccccc;
}
}
@media screen and (max-width:1200px){
#lang{
margin-left:1.5vw;
}
}
@media screen and (max-width:767px){
#lang li:first-child{
display:none;
}
#lang li a{
text-align:center;
font-size:4.2vw;
}
}


/*------pagetop-------*/
#pagetop{
position:relative;
width:100%;
max-width:1400px;
margin:0 auto;
}
#pagetop.fixed{
position:fixed;
bottom:0;
left:50%;
transform:translateX(-50%);
}
#pagetop a{
position:absolute;
display:flex;
align-items:flex-end;
justify-content:center;
border-radius:50%;
background:#7F7F7F;
color:#ffffff;
}
#pagetop a::before,
#pagetop a::after{
content:'';
display:block;
position:absolute;
}
#pagetop a::before{
left:50%;
top:13%;
width:1px;
height:35%;
background:#ffffff;
}
#pagetop a::after{
left:39%;
top:17%;
width:25%;
height:25%;
border-right:1px #ffffff solid;
border-top:1px #ffffff solid;
transform:rotate(-45deg);
}
@media screen and (min-width:768px){
#pagetop a{
right:20px;
bottom:20px;
width:80px;
height:80px;
padding-bottom:13px;
}
}
@media screen and (max-width:767px){
#pagetop a{
right:3vw;
bottom:3vw;
width:15vw;
height:15vw;
padding-bottom:2.5vw;
font-size:3.2vw;
text-decoration:none;
}
}


/*------footer-------*/
footer{
background:#006953;
}
footer,
footer a{
line-height:1;
color:#ffffff;
}
footer a:link{
text-decoration:none;
}
footer .inner{
text-align:left;
}
@media screen and (min-width:768px){
footer{
padding:45px 0 40px;
}
footer .inner{
width:98%;
max-width:1200px;
margin:0 auto;
}
#f_menu{
}
#f_menu>ul{
display:flex;
width:100%;
}
#f_menu>ul>li{
width:20%;
padding:0 20px;
border-left:1px #ffffff solid;
font-weight:700;
}
#f_menu li ul{
margin:30px 0;
}
#f_menu li li{
margin-top:20px;
font-size:1.2rem;
font-weight:300;
}
#footer_end{
width:100%;
margin-top:55px;
}
#footer_end ul{
display:flex;
float:right;
}
#footer_end ul li{
margin-left:2rem;
font-size:1.2rem;
}
#footer_end p{
font-size:1.2rem;
white-space:nowrap;
}
}
@media screen and (max-width:767px){
#f_menu>ul>li{
position:relative;
width:100%;
border-bottom:1px #ffffff solid;
font-size:4.26vw;
}
#f_menu>ul>li>a{
display:block;
padding:4.2vw 4.2vw 4.2vw 6vw;
}
#f_menu>ul>li>i{
position:absolute;
right:0;
top:0;
width:20%;
height:12.66vw;
cursor:pointer;
}
#f_menu>ul>li>i:before,
#f_menu>ul>li>i:after{
content:'';
display:block;
width:3vw;
height:1px;
background:#ffffff;
position:absolute;
top:50%;
right:5vw;
}
#f_menu>ul>li>i:before{
}
#f_menu>ul>li>i:after{
transform:rotate(90deg);
transition:all .3s;
}
#f_menu>ul>li>i.open:after{
transform:rotate(180deg);
}
#f_menu li ul{
display:none;
background:#378A79;
}
#f_menu li li{
border-top:1px #ffffff solid;
font-size:3.8vw;
}
#f_menu li li a{
position:relative;
display:block;
padding:4.2vw 4.2vw 4.2vw 12vw;
}
#f_menu li li a:after{
content:'';
display:block;
position:absolute;
width:2.2vw;
height:2.2vw;
margin-top:-1.1vw;
border-right:1px #ffffff solid;
border-top:1px #ffffff solid;
transform:rotate(45deg);
top:50%;
right:6vw;
}
#footer_end{
text-align:center;
}
#footer_end ul{
margin-top:5vw;
}
#footer_end ul li{
width:100%;
font-size:3.2vw;
}
#footer_end ul li a{
display:block;
padding:3vw;
}
#footer_end p{
padding:6.6vw;
font-size:2.66vw;
}
}


/*------modal------*/


/*------pageTitle(H1)-------*/
.page_title{
position:relative;
left:50%;
right:50%;
width:100vw;
margin-left:-50vw;
margin-right:-50vw;
background-position:center center;
background-repeat:no-repeat;
background-size:cover;
}
.page_title{background-image:url(../img/mv_sub.png);}
/*#top .page_title{background-image:url(../img/mv_top.png);}*/
#biz .page_title{background-image:url(../img/mv_biz.png);}
#company .page_title{background-image:url(../img/mv_company.png);}
#ir .page_title{background-image:url(../img/mv_ir.png);}
#recruit .page_title{background-image:url(../img/mv_recruit.png);}
#design .page_title{background-image:url(../img/mv_design.png);}
.page_title h1{
display:flex;
align-items:center;
height:120px;
font-size:3.6rem;
color:#ffffff;
}
/*#top .page_title h1{
display:block;
height:400px;
}*/
#biz .page_title h1,
#company .page_title h1,
#ir .page_title h1,
#recruit .page_title h1{
display:block;
height:220px;
}
#design .page_title h1{
display:block;
height:230px;
}
.page_title h1>span{
display:block;
}
.page_title h1 .eng{
display:flex;
align-items:flex-end;
height:52%;
font-size:6.0rem;
}
/*#top .page_title h1 .eng{
height:40%;
font-weight:900;
}*/
.page_title h1 .title{
margin-top:10px;
font-size:1.8rem;
}
/*#top .page_title h1 .title{
margin-top:10px;
font-size:2.0rem;
line-height:1.8;
}*/
.page_title h1 .title2{
margin-top:8px;
font-size:3.0rem;
font-weight:700;
}
.page_title h1 .title2 .small{
font-size:2.2rem;
}
@media screen and (min-width:768px){
/*#top .page_title h1 .eng{
font-size:4.8rem;
}*/
}
@media screen and (max-width:767px){
.page_title h1{
height:16vw;
font-size:6.4vw;
}
/*#top .page_title h1{
height:53vw;
}*/
#biz .page_title h1,
#company .page_title h1,
#ir .page_title h1,
#recruit .page_title h1{
height:29.3vw;
}
.page_title h1 .eng{
height:42%;
font-size:8vw;
}
/*#top .page_title h1 .eng{
height:46%;
line-height:1.1;
}*/
.page_title h1 .title{
margin-top:2vw;
font-size:3.2vw;
}
/*#top .page_title h1 .title{
margin-top:4vw;
font-size:3.7vw;
}*/
.page_title h1 .title2{
margin-top:1vw;
font-size:4.8vw;
}
.page_title h1 .title2 .small{
font-size:4.2vw;
}
}


/*------titleBox(H2,H3)-------*/
.title_box{
position:relative;
display:flex;
}
article .title_box{
margin-top:50px;
}
.title_box:before,
.title_box:after{
content:'';
position:absolute;
left:50%;
right:50%;
display:block;
width:100vw;
height:2px;
margin-left:-50vw;
margin-right:-50vw;
background:#000000;
}
.title_box:before{
top:0;
}
.title_box:after{
bottom:0;
}
.title_box>*{
display:flex;
align-items:center;
line-height:1.2;
}
aside .title_box>*{
font-size:1.4rem;
font-weight:700;
}
.title_box>*:first-child{
min-width:170px;
margin-right:20px;
padding-right:20px;
border-right:2px #000000 solid;
}
.title_box .pagename{
flex-direction:column;
align-items:stretch;
justify-content:center;
}
.title_box .eng{
font-size:2.4rem;
font-weight:700;
}
.title_box .name{
margin-top:15px;
font-size:1.8rem;
}
.title_box h2{
font-size:3.6rem;
}
.title_box h2 img{
width:80px;
margin-right:30px;
}
#contact+aside .title_box>*:first-child{
border-right:none;
}
@media screen and (min-width:768px){
article .title_box{
height:120px;
}
aside .title_box{
height:70px;
}
}
@media screen and (max-width:767px){
article .title_box{
min-height:16vw;
margin-top:7vw;
}
aside .title_box{
min-height:13vw;
}
.title_box:before,
.title_box:after{
height:1px;
}
aside .title_box>*{
font-size:3.6vw;
}
.title_box>*:first-child{
min-width:27%;
margin-right:5vw;
padding-right:4vw;
border-right:1px #000000 solid;
}
.title_box .pagename{
display:none;
}
.title_box h2{
padding-left:2.6vw;
font-size:4.8vw;
font-weight:700;
}
.title_box h2 img{
width:10.7vw;
margin-right:4vw;
}
}


/*------endContactList-------*/
.endcontact_box ul{
display:flex;
}
.endcontact_box li{
display:flex;
align-items:center;
}
.endcontact_box li a{
display:flex;
align-items:center;
color:#333333;
text-decoration:none;
}
.endcontact_box li .ico{
margin-right:1em;
}
@media screen and (min-width:768px){
#end_contact{
margin-top:40px;
}
.endcontact_box{
padding:50px 0;
}
.endcontact_box dt{
font-size:1.8rem;
}
.endcontact_box dd{
margin-top:-10px;
}
.endcontact_box ul{
flex-wrap:wrap;
margin-left:-45px;
}
.endcontact_box li{
margin-left:45px;
margin-top:30px;
}
.endcontact_box li.pdf{
width:100%;
}
.endcontact_box li .ico{
width:30px;
}
.endcontact_box li strong{
font-size:24px;
font-weight:500;
line-height:1;
display:inline-block;
margin-left:0.3em;
}
}
@media screen and (max-width:767px){
#end_contact{
margin-top:7vw;
}
.endcontact_box{
padding:6vw 0;
}
.endcontact_box dd{
margin-top:3.5vw;
}
.endcontact_box dd ul{
flex-direction:column;
}
.endcontact_box dd li+li{
margin-top:6.7vw;
}
.endcontact_box dd ul li:nth-child(1){
font-weight:700;
order:1;
}
.endcontact_box dd ul li:nth-child(2){
order:2;
}
.endcontact_box dd ul li:nth-child(3){
order:4;
}
.endcontact_box dd ul li:nth-child(4){
order:3;
}
.endcontact_box dd li .ico{
width:6.7vw;
}
.endcontact_box dd li strong{
font-size:4.8vw;
line-height:1;
display:inline-block;
margin-left:0.3em;
}
}


/*------Table/base-------*/
table{
width:100%;
}
th,
td{
border:1px #B3B3B3 solid;
font-weight:500;
vertical-align:top;
}
th{
background:#F8F8F8;
}


/*------Link/pdf,zip-------*/
a.ico_pdf,
a[href$=".pdf"],
a.ico_zip,
a[href$=".zip"]{
color:#333333;
display:inline-block;
}
a.ico_pdf:after,
a[href$=".pdf"]:after,
a.ico_zip:after,
a[href$=".zip"]:after{
display:inline-block;
vertical-align:middle;
content:'';
width:20px;
height:20px;
margin-left:10px;
background-size:100%;
background-position:center center;
background-repeat:no-repeat;
}
a.ico_pdf:after,
a[href$=".pdf"]:after{
background-image:url(../img/ico_pdf.png);
}
a.ico_zip:after,
a[href$=".zip"]:after{
background-image:url(../img/ico_zip.png);
}
a.ico_none:after{
background-image:none;
}
@media screen and (max-width:767px){
a.ico_pdf:after,
a[href$=".pdf"]:after,
a.ico_zip:after,
a[href$=".zip"]:after{
width:1.6em;
height:1.6em;
margin-top:-0.5em;
margin-left:0.8em;
}
}


/*------Link/targetBlank(otherSite)-------*/
a.ico_blank_bl{
color:#333333;
}
a.ico_blank_gr{
}
a.ico_blank_bl:after,
a.ico_blank_gr:after{
display:inline-block;
content:'';
width:10px;
height:10px;
margin-left:10px;
background-size:100%;
background-position:center center;
background-repeat:no-repeat;
vertical-align:middle;
}
a.ico_blank_gr:after{
background-image:url(../img/ico_link_g.png);
}
a.ico_blank_bl:after{
background-image:url(../img/ico_link.png);
}
@media screen and (min-width:768px){
}
@media screen and (max-width:767px){
a.ico_blank_bl:after,
a.ico_blank_gr:after{
width:0.8em;
height:0.8em;
margin-left:0.75em;
background-size:100%;
background-position:center center;
background-repeat:no-repeat;
vertical-align:middle;
}
}


/*------List/olStyle-------*/
ol{
display:table;
}
ol li{
display:table-row;
counter-increment:ol;
}
ol li:before{
content:counter(ol) '.';
display:table-cell;
width:2em;
padding-right:0.5em;
text-align:right;
}
/*
ol li:after{
content:'';
display:block;
margin-bottom:20px;
}
ol li:last-child:after{
margin-bottom:0;
}
*/


/*------btn_01,btn_02-------*/
.btn_01,
.btn_02{
position:relative;
display:inline-block;
min-width:120px;
padding:0.8em 2em 0.8em 1em;
border-radius:0 1.4em 1.4em 0;
color:#ffffff;
font-size:1.2rem;
line-height:1;
font-weight:700;
}
.btn_01{
background:#006953;
}
.btn_02{
background:#333333;
}
@media screen and (max-width:767px){
.btn_01,
.btn_02{
min-width:32vw;
font-size:3.2vw;
text-decoration:none;
}
}


/*------Local_NaviBox-------*/
.lnav_box ul{
width:100%;
padding:50px 0;
}
.lnav_box li a{
position:relative;
display:flex;
align-items:center;
font-size:2.1rem;
line-height:1;
font-weight:700;
}
.lnav_box li a:before,
.lnav_box li a:after{
display:inline-block;
content:'';
vertical-align:middle;
}
.lnav_box li a:before{
width:0.9em;
height:0.9em;
margin-right:0.5em;
background:#006953;
}
.lnav_box li a:after{
position:absolute;
left:0;
top:50%;
width:0.4em;
height:0.4em;
margin-top:-0.3em;
margin-left:0.25em;
border-right:1px #ffffff solid;
border-top:1px #ffffff solid;
transform:rotate(135deg);
}
@media screen and (min-width:768px){
.lnav_box ul{
display:flex;
justify-content:space-between;
}
}
@media screen and (max-width:767px){
.lnav_box ul{
padding:8vw 0;
}
.lnav_box li+li{
margin-top:7vw;
}
.lnav_box li a{
font-size:4.8vw;
font-weight:500;
text-decoration:none;
}
.lnav_box li a:before{
width:1em;
height:1em;
}
.lnav_box li a:after{
margin-left:0.3em;
}
}


/*------iframeNewsList_Box(default)-------*/
#news_list{
text-align:left;
}
#news_list a{
color:#333333;
}
#select_genre{
display:flex;
width:100%;
}
@media screen and (max-width:767px){
.area_genre{
width:100%;
overflow-x:auto;
}
#select_genre{
width:120%;
}
}
#select_genre li{
display:flex;
}
#select_genre a{
display:flex;
align-items:center;
justify-content:center;
}
#select_year{
display:flex;
margin-top:40px;
}
#select_year li{
display:flex;
align-items:center;
}
#select_year li:after{
content:'';
width:1px;
height:1em;
background:#000000;
}
#select_year a{
display:inline-block;
padding:0 15px;
line-height:1;
}
.y21 #y2021,
.y20 #y2020,
.y19 #y2019,
.y18 #y2018,
.y17 #y2017{
text-decoration:underline;
}
#news_list .function_box{
margin-top:40px;
}
#news_list .genre01 .date:after{background:#C2002F;content:"お知らせ"}
#news_list .genre02 .date:after{background:#1D4189;content:"適時開示情報"}
#news_list .genre03 .date:after{background:#006953;content:"決算資料"}
#news_list .genre04 .date:after{background:#93397F;content:"株主総会"}
#news_list .genre05 .date:after{background:#008AAB;content:"その他IR資料"}
#news_list .genre06 .date:after{background:#999999;content:"新型コロナ関連"}
#news_list .genre07 .date:after{background:#8B5200;content:"中期経営計画"}
#news_list .date{
display:flex;
}
#news_list .date:after{
display:inline-block;
width:100px;
margin-right:15px;
text-align:center;
font-size:1.2rem;
color:#ffffff;
}
@media screen and (min-width:768px){
#news_list .date{
justify-content:space-between;
}
#select_genre li{
display:block;
width:calc(100% / 8);
}
#select_genre a{
width:100%;
height:50px;
border:1px #ffffff solid;
border-bottom:1px #000000 solid;
}
.all #all,
.g01 #genre01,
.g02 #genre02,
.g03 #genre03,
.g04 #genre04,
.g05 #genre05,
.g06 #genre06,
.g07 #genre07{
border:1px #000000 solid;
border-bottom:1px #ffffff solid;
}
#news_list .function_box li{
margin-bottom:20px;
align-items:flex-start;
line-height:20px;
}
#news_list .date{
flex-shrink:0;
width:200px;
align-items:center;
justify-content:space-between;
}
}
@media screen and (max-width:767px){
#news_list a{
text-decoration:none;
}
#select_genre{
justify-content:space-between;
border:1px #B3B3B3 solid;
}
#select_genre li{
flex-grow:1;
height:10vw;
}
#select_genre li+li{
border-left:1px #B3B3B3 solid;
}
#select_genre a{
width:100%;
height:100%;
font-size:3.2vw;
line-height:1.1;
}
.all #all,
.g01 #genre01,
.g02 #genre02,
.g03 #genre03,
.g04 #genre04,
.g05 #genre05,
.g06 #genre06,
.g07 #genre07{
background:#B3B3B3;
color:#ffffff;
}
#select_year{
margin-top:4vw;
}
#select_year a{
padding:2vw 4vw;
}
#news_list .function_box{
width:100vw;/*in iframe*/
margin:4vw auto 0;
}
#news_list .function_box li{
width:100%;
padding:3vw 0;
flex-wrap:wrap;
line-height:1.5;
border-bottom:1px #cccccc solid;
}
#news_list .function_box li span.txt,
#news_list .function_box li a{
position:relative;
display:block;
margin-top:-6vw;
padding-top:8vw;
padding-right:6vw;
width:100%;
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
}
#news_list .function_box li a[href$=".pdf"]:after{
position:absolute;
right:0;
top:0;
margin-top:1em;
}
#news_list .date:after{
width:26.7vw;
margin-left:1em;
margin-right:0;
font-size:3.2vw;
line-height:1.8;
}
}


/*------News_Box-------*/
.news_box{
padding-top:25px;
}
.news_box .if_news{
width:100%;
overflow:hidden;
}


/*------Special-------*/
.featurelist_box a{
display:block;
color:#333333;
}
.featurelist_box a[href$=".pdf"]:after{
display:none;
}
.featurelist_box .ttl,
.featurelist_box .txt{
line-height:1.2;
}
.featurelist_box .ttl i{
display:inline-block;
vertical-align:middle;
}
.featurelist_box .ttl i:before{
display:inline-block;
vertical-align:middle;
content:'';
}
/*---基本は＞---*/
.featurelist_box .ttl i:after{
display:inline-block;
vertical-align:middle;
content:'';
width:6px;
height:6px;
margin-top:-3px;
margin-left:0.6em;
border-right:1px #000000 solid;
border-top:1px #000000 solid;
transform:rotate(45deg);
}
@media screen and (max-width:767px){
.featurelist_box .ttl i:after{
width:2.2vw;
height:2.2vw;
margin-top:-1.1vw;
}
}
/*---外部リンクは＞とアイコン---*/
.featurelist_box a[target="_blank"] .ttl i:before{
width:0.6em;
height:0.6em;
margin-left:0.3em;
background:url(../img/ico_link.png) center center no-repeat;
background-size:100%;
}
@media screen and (max-width:767px){
.featurelist_box a[target="_blank"] .ttl i:before{
width:0.8em;
height:0.8em;
margin-left:0.8em;
}
}
/*---PDFは＞削除とアイコン変更---*/
.featurelist_box a[href$=".pdf"] .ttl i:before{
width:1.2em;
height:1.2em;
margin-left:0.3em;
background:url(../img/ico_pdf.png) center center no-repeat;
background-size:100%;
}
.featurelist_box a[href$=".pdf"] .ttl i:after{
display:none;
}
@media screen and (min-width:768px){
.featurelist_box{
min-height:660px;
padding:50px 0;
}
.featurelist_box ul{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
padding:30px 0;
}
.featurelist_box ul:after{
content:'';
display:block;
width:32%;
height:0;
}
.featurelist_box li{
width:32%;
max-width:320px;
margin-bottom:3em;

}
.featurelist_box .ttl{
margin-top:1.2em;
vertical-align:middle;
font-size:1.8rem;
}
.featurelist_box .cap{
margin-top:0.5em;
}
}
@media screen and (max-width:767px){
.featurelist_box{
padding:7vw 0;
}
.featurelist_box a{
text-decoration:none;
position:relative;
}
.featurelist_box ul{
padding:5vw 0 0;
}
.featurelist_box li{
width:100%;
}
.featurelist_box li::after{
content:'';
display:block;
clear:both;
}
.featurelist_box li+li{
margin-top:6vw;
}
.featurelist_box li .img{
width:48%;
float:left;
}
.featurelist_box li .ttl{
margin-left:52%;
font-weight:700;
}
.featurelist_box li .cap{
width:48%;
margin-left:52%;
margin-top:0.3em;
}
}


/*------Contact-------*/
.contact_box{
}
.contact_box .form_box{
background-color:#F8F8F8;
}
.contact_box select{
width:100%;
border:1px #cccccc solid;
}
.contact_box .cap{
text-align:right;
}
.contact_box iframe{
height:1600px;
}
@media screen and (min-width:768px){
.contact_box .message_box{
padding:50px 0;
}
.contact_box .form_box{
display:flex;
align-items:center;
width:100%;
margin:0 auto;
padding:5px 10%;
}
.contact_box h2{
width:300px;
font-size:1.8rem;
flex-shrink:0;
}
.contact_box .select_box{
flex-grow:1;
}
.contact_box select{
padding:20px;
}
.contact_box .cap{
padding-bottom:100px;
font-size:1.2rem;
}
}
@media screen and (max-width:767px){
.contact_box .message_box{
padding:8vw 0;
}
.contact_box .form_box{
padding:3vw;
}
.contact_box h2{
font-size:3.6vw;
}
.contact_box .select_box{
margin-top:2vw;
}
.contact_box select{
padding:2.5vw;
}
.contact_box .cap{
padding-bottom:10vw;
font-size:2.8vw;
}
}

/*------Contact newVersion-------*/
.contact_box{
padding:50px 0;
}
@media screen and (max-width:767px){
.contact_box{
padding:8vw 0;
}
}


/*------Access-------*/
.access_box{
padding:50px 0;
}
.access_box+.access_box{
border-top:1px #B3B3B3 solid;
}
.access_box h2{
font-size:2.4rem;
line-height:1;
}
.access_box .url{
display:inline-block;
margin-top:10px;
font-weight:700;
text-decoration:underline;
}
.access_box .url:after{
width:10px;
height:10px;
margin-left:0.5em;
display:inline-block;
content:'';
background:url(../img/ico_link.png);
background-size:100%;
}
.access_box .address{
margin-top:20px;
}
.access_box .contact a{
display:inline-block;
margin-top:15px;
padding:0.8em 2em 0.8em 1em;
background:#006953;
border-radius:0 1.4em 1.4em 0;
color:#ffffff;
font-size:1.2rem;
line-height:1;
font-weight:700;
}
.access_box .img,
.access_box .map{
overflow:hidden;
position:relative;
aspect-ratio:490/300;
height:auto;
}
.access_box .map iframe{
aspect-ratio:490/900;
width:100%;
height:auto;
transform:translateY(-33.3%);
}
.access_box .gmap_link{
position:absolute;
right:0;
top:0;
display:inline-block;
padding:0.1em 0.5em;
background:#ffffff;
}
.access_box .gmap_link a{
color:#333333;
font-size:80%;
line-height:1;
text-decoration:none;
}
@media screen and (min-width:768px){
.access_box .view{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}
.access_box .img,
.access_box .map{
width:49%;
margin-top:20px;
}
}
@media screen and (max-width:767px){
.access_box{
padding:7vw 0 5vw;
}
.access_box h2{
font-size:4.8vw;
line-height:1.2;
font-weight:700;
}
.access_box .url{
margin-top:10px;
}
.access_box .url:after{
width:4vw;
height:4vw;
}
.access_box .view+.address{
margin-top:5vw;
}
.access_box .address{
margin-top:2vw;
font-size:3.6vw;
}
.access_box .contact a{
margin-top:3vw;
font-size:3.2vw;
text-decoration:none;
}
.access_box .img,
.access_box .map{
width:100%;
margin-top:5.3vw;
}
}


/*------Rule-------*/
.rule_box{
padding:50px 0;
}
.rule_box h2{
font-size:2.4rem;
}
.rule_box p+h2{
margin-top:40px;
}
.rule_box p{
margin-top:20px;
}
@media screen and (max-width:767px){
.rule_box{
padding:8vw 0;
}
.rule_box h2{
font-size:4.8vw;
font-weight:700;
}
.rule_box p+h2{
margin-top:7vw;
}
.rule_box p{
margin-top:3.5vw;
font-size:3.6vw;
}
}


/*------Privacy-------*/
.privacy_box{
padding:50px 0;
}
.privacy_box h2{
font-size:2.4rem;
}
.privacy_box h3{
margin-top:40px;
}
.privacy_box p{
margin-top:20px;
}
.privacy_box p.end_name{
text-align:right;
}
.privacy_box ol{
margin-top:20px;
}
.privacy_box ol li:after{
content:'';
display:block;
margin-bottom:20px;
}
.privacy_box ol li:last-child:after{
margin-bottom:0;
}
.privacy_box .notes{
margin-top:15px;
font-size:1.2rem;
}
.privacy_box li .notes{
margin-left:-2em;
}
@media screen and (min-width:768px){
.privacy_box+.privacy_box{
border-top:1px #B3B3B3 solid;
}
.privacy_box h3{
font-size:1.8rem;
}
}
@media screen and (max-width:767px){
.privacy_box{
padding:8vw 0;
}
.privacy_box h2{
font-size:4.8vw;
font-weight:700;
}
.privacy_box h3{
margin-top:3vw;
font-weight:700;
line-height:1.8;
}
.privacy_box p+h3{
margin-top:4vw;
}
.privacy_box p{
margin-top:3vw;
}
.privacy_box h3+p{
margin-top:0;
}
.privacy_box ol{
margin-top:3vw;
}
.privacy_box ol li:before{
width:1em;
}
.privacy_box ol li:after{
margin-bottom:3vw;
}
.privacy_box ol li:last-child:after{
margin-bottom:0;
}
.privacy_box .notes{
margin-top:1vw;
font-size:2.8vw;
}
.privacy_box li .notes{
margin-left:-1em;
}
}


/*------Modal/base------*/
.modal{
display:none;
position:fixed;
top:0;
left:0;
width:100%;
height:100vh;
z-index:999;
}
.modal_bg{
position:absolute;
width:100%;
height:100vh;
background:rgba(0,0,0,0.8);
}
.modal_content{
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
width:80%;
}
.modal_close{
position:absolute;
top:-50px;
right:-50px;
}
.modal_close a{
position:relative;
display:block;
width:40px;
height:40px;
text-indent:-9999px;
overflow:hidden;
}
.modal_close a:before,
.modal_close a:after{
position:absolute;
left:0;
top:50%;
display:block;
content:'';
width:100%;
height:2px;
background:#ffffff;
transform:rotate(-45deg);
}
.modal_close a:after{
transform:rotate(45deg);
}
@media screen and (max-width:767px){
.modal_content{
width:96%;
}
.modal_close{
right:0;
}
}


/*------Slider-------*/
.cnt_box .slider{
width:100%;
margin:0 auto;
}
.cnt_box .slick-slide{
margin:0;
}
.cnt_box .slick-slide img{
width:100%;
height:100%;
}
.cnt_box .slick-prev:before,
.cnt_box .slick-next:before{
color:black;
}
.cnt_box .slick-slide{
transition:all ease-in-out .3s;
opacity:1;
}
.cnt_box .slick-active{
opacity:1;
}
.cnt_box .slick-current{
opacity:1;
}
.cnt_box .slick-prev,
.cnt_box .slick-next{
width:40px;
height:40px;
border:1px #ffffff solid;
background:rgba(0,0,0,0.5);
border-radius:50%;
z-index:1;
}
.cnt_box .slick-prev{left:10px;}
.cnt_box .slick-next{right:10px;}
.cnt_box .biz_slider .slick-prev{left:17%;}
.cnt_box .biz_slider .slick-next{right:17%;}
.cnt_box .biz_slider .slick-prev,
.cnt_box .biz_slider .slick-next{
margin-top:-40px;
}
.cnt_box .slick-prev:hover,
.cnt_box .slick-prev:focus,
.cnt_box .slick-next:hover,
.cnt_box .slick-next:focus{
background:rgba(0,0,0,0.5);
}
.cnt_box .slick-prev::before,
.cnt_box .slick-next::before{
position:absolute;
top:50%;
left:0;
content:'';
width:16px;
height:16px;
margin-top:-8px;
border-right:2px #ffffff solid;
border-top:2px #ffffff solid;
}
.cnt_box .slick-prev::before{
margin-left:14px;
transform:rotate(-135deg);
}
.cnt_box .slick-next::before{
margin-left:8px;
transform:rotate(45deg);
}
.cnt_box .slick-dots{
display:flex;
flex-wrap:wrap;
align-items:center;
justify-content:center;
width:100%;
margin:0 auto;
}
.cnt_box .slick-dots li{
background:#cccccc;
width:8%;
max-width:100px;
height:10px;
}
.cnt_box .slick-dots li.slick-active{
background:#999999;
}
.cnt_box .slick-dots li button::before {
display:none;
}
@media screen and (max-width:767px){
.cnt_box .slick-prev{left:0;}
.cnt_box .slick-next{right:0;}
.cnt_box .biz_slider .slick-prev{left:3%;}
.cnt_box .biz_slider .slick-next{right:3%;}
.cnt_box .biz_slider .slick-prev,
.cnt_box .biz_slider .slick-next{
margin-top:-16vw;
}
.cnt_box .slick-dots{
bottom:-10vw;
}
.cnt_box .slick-dots li{
width:10%;
height:7.5vw;
margin:0.75vw;
}
.cnt_box .biz_slider.slider{
margin-bottom:10vw;
}
}


/*------NotFound-------*/
.notfound_box{
display:flex;
align-items:center;
justify-content:center;
min-height:50vh;
padding:100px 0;
}
.notfound_box div{
text-align:center;
}
.notfound_box h2{
font-size:200%;
line-height:2;
margin-bottom:1em;
}
.notfound_box p{
font-size:120%;
line-height:2;
}


/*------OnlineShop-------*/
#shop a{
color:#333333;
text-decoration:none;
}
#shop .mainvs{
margin-bottom:5rem;
}
#shop .mainvs img{
width:100%;
max-width:initial;
}
#shop .read_box{
margin-bottom:2.5rem;
}
#shop .read_box p{
font-size:1.6rem;
}
#shop .bannerlist_box{
}
#shop .itemlist_box{
margin-top:5rem;
}
#shop .bannerlist_box ul,
#shop .itemlist_box ul{
display:flex;
flex-wrap:wrap;
align-items:flex-start;
width:100%;
}
#shop .bannerlist_box li,
#shop .itemlist_box li{
width:32%;
margin-left:2%;
margin-top:4rem;
display:block;
}
#shop .bannerlist_box .cap,
#shop .itemlist_box .cap{
margin-top:1.5rem;
font-size:1.7rem;
line-height:1.35;
}
#shop .endlink{
margin-top:9rem;
}
#shop .endlink li+li{
margin-top:3rem;
}
#shop .endlink li{
text-align:right;
}
#shop .endlink li span{
display:block;
padding-top:1rem;
font-size:1.4rem;
line-height:1.2;
}
#shop .endlink li a{
font-size:1.7rem;
line-height:1.35;
font-weight:700;
}
#shopfooter{
width:100%;
height:5rem;
margin-top:3rem;
padding:0;
background:#e6c1be;
}
#shopfooter p{
text-align:center;
font-size:1.2rem;
line-height:5rem;
color:#000000;
}
@media screen and (min-width:768px){
#shop .bannerlist_box li:nth-child(3n+1),
#shop .itemlist_box li:nth-child(3n+1){
margin-left:0;
}
#shop .ttl{
display:none;
}
}
@media screen and (max-width:767px){
#shop .mainvs{
margin-bottom:2vw;
}
#shop .read_box{
margin-bottom:5.3vw;
}
#shop .read_box p{
font-size:3.7vw;
}
#shop .bannerlist_box{
}
#shop .ttl{
margin-top:10.7vw;
text-align:center;
}
#shop .ttl img{
width:33%;
}
#shop .itemlist_box{
margin-top:10.7vw;
}
#shop .bannerlist_box li,
#shop .itemlist_box li{
width:100%;
margin-top:6.6vw;
margin-left:0;
}
#shop .bannerlist_box li a,
#shop .itemlist_box li a{
display:flex;
align-items:flex-start;
width:100%;
}
#shop .bannerlist_box li a{
align-items:center;
font-weight:700;
}
#shop .bannerlist_box li .img,
#shop .itemlist_box li .img{
width:48%;
}
#shop .bannerlist_box .cap,
#shop .itemlist_box .cap{
width:48%;
margin-top:0;
margin-left:4%;
font-size:3.7vw;
line-height:1.32;
}
#shop .endlink{
margin-top:26vw;
}
#shop .endlink li+li{
margin-top:4vw;
}
#shop .endlink li span{
padding-top:0.5vw;
font-size:1.9vw;
}
#shop .endlink li a{
font-size:2.3vw;
}
#shopfooter{
height:13.3vw;
margin-top:10.6vw;
}
#shopfooter p{
font-size:2.6vw;
line-height:13.3vw;
}

}



