/* 公共css */
body, html {
    min-width: 320px;
    max-width: 100%;
    overflow-x: hidden;
    background-color: transparent;
    -webkit-font-smoothing: antialiased;
}

a {
    color: inherit;
    -webkit-tap-highlight-color: transparent;
}
input,a,div{
    border: none;
    outline: none;
    -webkit-appearance: none;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}
.wh1600 {
    max-width: 1600px;
    margin: 0 auto;
}
@media screen and (max-width: 1900px) {
    .wh1600 {
        margin: 0 5% !important;
    }
}

/*xlt-k*/
::-webkit-scrollbar
{
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track
{
    background-color: #ffffff;
}

::-webkit-scrollbar-thumb
{
    background-color: #fabf00;
}
/*xlt-g*/
/*----------------------*/

.pub_banner{
    display: block;
}
.mi_pub_banner{
    display: none;
    margin-top: 18vw;
}
.fsdb24{
    font-size: 24px;
}
.fsdb22{
    font-size: 22px;
}
.fsdb20{
    font-size: 20px;
}
.fsdb18{
    font-size: 18px;
}
.fsdb16{
    font-size: 16px;
}
.fsdb14{
    font-size: 14px;
}











.head {
    width: 100%;
    z-index: 999;
    transition: all 0.5s;
    padding: 1% 0;
    position: relative;
    background-color: #ffffff;
}
.head_logo{
    float: left;
    width: 19.6875%;
}
.head_fr{
    float: right;
    width: 68%;
}
.head .contact{
    height: 22px;
    line-height: 22px;
    letter-spacing: 1px;
    float: right;
    color: #333333;
    padding-left: 35px;
    background: url(../image/head_dh.png)no-repeat left;
    background-size: 7.5%;
}

.head_menu{
    text-align: right;
}
.head_menu .CAli{
    display: inline-block;
    transition: all 0.2s;
    margin: 3% 0 0 5%;
}
.head_menu .CAli .CAa{
    color: #333333;
    display: block;

    transition: all 0.2s;
}
.head_menu .CAli:hover .CAa{
    color: #19596b;
}
.head_menu .on{
    color: #19596b;
}
.head_menu .on .CAa{
    color: #19596b!important;
}



.mi_head_all{
    display: none;
}
.mi_head{
    width: 100%;
    background-color: #ffffff;
    transition: all 0.3s;
    top: 0;
    position: fixed;
    z-index: 100;
    box-shadow: none;
    height: 18vw;
}

.mi_head .logo {
    width: 50%;
    padding: 4%;
    float: left;
}
.mi_head .mi_Cal{
    float: right;
    width: 15%;
    position: relative;
    right: 0;
    padding: 9% 0;
}
.mi_head .mi_Cal .mmitem{
    position: absolute;
    width: 10vw;
    height: 2px;
    background-color: #666;
    display: block;
    transition: all .3s;
}
.mi_head .mi_Cal .mmitem:nth-of-type(1){
    top: 7vw;
}
.mi_head .mi_Cal .mmitem:nth-of-type(2){
    top: 10vw;
}
.mi_head .mi_Cal .mmitem:nth-of-type(3){
    width: 6vw;
    top: 13vw;
    margin-left: 4vw;
}
.menuls{
    position: fixed;
    right: 0;
    width: 60%;
    transform: translateX(100%);
    top: 0;
    z-index: 101;
    height: 100%;
    background-color: #ffffff;
    transition: all .3s;
    overflow-y: scroll;
    overflow-x: hidden;
    opacity: 0;
    box-shadow: 0 0 8px 0 rgba(0,0,0,.1);
}
.menuls .menu_one {
    line-height: 18vw;
    height: 18vw;
    background-color: #19596b;
}

.menuls .menu_one .span1 {
    display: inline-block;
    font-size: 4vw;
    color: #ffffff;
    margin-left: 10%;
    letter-spacing: 1px;
}
.menuls .menu_one .headclose {
    width: 10vw;
    height: 10vw;
    position: absolute;
    left: -15vw;
    top: 5vw;
    display: none;
}

.menuls .menu_two ul {
    width: 100%;
}
.menuls .menu_two ul li {
    line-height: 15vw;
    width: 100%;
    border-top: 1px solid #f2f2f2;
}
.menuls .menu_two ul li>a{
    font-size: 4vw;
    display: block;
    width: 84%;
    padding: 0 10%;
    color: #777;
    transition: color 0.3s ease 0s;
}
.show .mi_head{
    transform: translateX(-60%);
}
.show .logo{
    /*padding: 5% 0;*/
}
.show .menuls{
    opacity: 1;
    transform: translateX(0%);
}
.show .mmitem:nth-child(2n){
    opacity: 0;
}
.show .mmitem:nth-of-type(1) {
    transform: rotate(45deg);
    top: 9vw!important;
}
.show .mmitem:nth-of-type(3) {
    transform: rotate(-45deg);
    width: 10vw!important;
    top: 9vw!important;
    margin-left: 5vw!important;
    right: 5vw!important;
}
.show .headclose{
    display: block!important;
}







.bottom-fix{
    background-color: #19596b;
    display: none;
    width: 100%;
    position: fixed;
    bottom: 0;
    z-index: 999;
}
.bottom-fix>a>img {
    width: 33.3333%;
    float: left;
    display: block;
    height: 13.5vw;
}


.position_all{
    padding: 2% 0;
    background-color: #ffffff;
    letter-spacing: 1px;
}


.public_list{
    padding: 3% 0;
    background-color: #eeeeee;
}
.Inside_title{
    text-align: center;
    color: #333333;
    padding: 1% 0 1%;
    text-transform: uppercase;
    letter-spacing: 2px;
}
.Inside_title .dnra{
    letter-spacing: 1px;
}
.Inside_title .dnrb{
    letter-spacing:10px;
    margin: 2% 0 0;
    font-size: 36px;
    padding-left: 10px;
}
.category_list{
    position: relative;
    text-align: center;
    font-size: 0;
}

.category_list ul li{
    display: inline-block;
    background-color: #ffffff;
    width: 12%;
    margin: 2% 1%;
    letter-spacing: 1px;
    color: #333333;
}
.category_list ul li a{
    display: block;
    padding: 10% 0;
}
.category_list .on{
    background-color: #19596b;
    color: #ffffff;
}
.list_all{
    padding: 3% 0 0;
}


.content_show{
    padding: 2% 0 0;
}
.content_show .tit {
    font-size: 30px;
    line-height: 2;
    color: #333333;
}
.content_show .info {
    margin: 2% 0;
    font-size: 14px;
    color: #535353;
    letter-spacing: 1px;
}
.content_show .info .returnls {
    float: right;
}
.content_show .allnr {
    width: 100%;
    overflow: hidden;
    border-top: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
    padding: 2% 0;
    margin-bottom: 2%;
    line-height: 2;
}

.upperandlower {
    padding: 1% 0 0 0;
}
.upperandlower .next{
    width: 25%;
    background-color: #626262;
    padding: 1.5% 2%;
    color: #ffffff;
    font-size: 14px;
    overflow: hidden;
    text-overflow:ellipsis;
    white-space: nowrap;
    transition: all 0.3s;
}
.upperandlower .next .arrow{
    margin: 0 10%;
}
.upperandlower .next *{
    color: #ffffff!important;
}
.upperandlower .tl{
    text-align: left;
}
.upperandlower .tr{
    text-align: right;
}
.upperandlower .next:hover{
    background-color: #19596b;
}



.paging {
    text-align:center;
    padding: 2% 0 2%;
}
.paging a{
    display: inline-block;
    padding: 0.65% 0.9%;
    border:1px solid #333333;
    color: #333333;
    margin:0 0.5%;
    transition: ease-in 0.1s;
    border-radius: 2px;
    background-color: #ffffff;
}
.paging span{
    margin:0 5px;
}
.paging a:hover,
.case_lisst .cate-box a:hover{
    border:1px solid #19596b;
    color: #19596b;
}
.paging .currPage{
    border:1px solid #19596b;
    color: #ffffff;
    background-color: #19596b;
}




@charset "UTF-8";


html {
    overflow-y:scroll; /*中央配置ズレ回避*/
    height: 100%;
}

table {
    font-size: inherit;
}

pre,code,kbd,samp,tt {
    font-family: monospace;
    line-height: 100%;
}

ul ol,
ol ul {
    font-size: 100% !important;
}

sup {
    vertical-align: top;
}

sub {
    vertical-align: baseline;
    font-size: 77%;
}

img {
    vertical-align: top;
}


.center,
.center-position{
    text-align: center;
}


.clear{
    clear: both;
}

.img_center{
    text-align: center;
    margin-bottom: 50px;
}


.img_right{
    float: right;
    margin: 0 0 0 40px;
}

.img_left{
    float: left;
    margin: 0 40px 0 0;
}


/* テキスト位置 */
.t-aR{
    text-align:right !important;}

.t-aC{
    text-align:center;}

.t-aL{
    text-align:left !important;}

.nybanner{
    width: 65%;
    float: right;
    height: 180px;
    background-size: cover;
    background-image: url(../image/bg_cate.png);
}

/* マージン設定 */
.mbSS{
    margin-bottom:0.5em !important;}

.mbS{
    margin-bottom:1em !important;}

.mbM{
    margin-bottom:2em !important;}

.mbL{
    margin-bottom:3em !important;}

.mbLL{
    margin-bottom:4em !important;}

.mtLL{
    margin-top:4em !important;}

.mtSS{
    margin-top:0.5em !important;}



.box{
    cursor: pointer;
}
.box:hover{ opacity: 0.7;}

/******** Basic XHTML */


body {
    font-family: "思源黑体","Arial";
    font-weight: 500;
    text-align: center;
    line-height: 2.0;
    color: #000;
    font-size: 14px;
}

a{
    color: #000;
    text-decoration: none;
}

a:hover{
    color: #000;
    opacity: 0.6;
}



img{
    max-width: 100%;
    height: auto;
}



/* container */

#container{

}
.inner{
    max-width: 1200px;
    margin: 0px auto;
}
.inner_in{
    max-width: 1000px;
    margin: 0px auto;
}
@media screen and (max-width: 1024px){
    .inner,
    .inner_in{
        width: 90%;
        margin: 0 5%;
    }

}


.linkbtn{
    display: inline-block;
    font-size: 1.1em;
    padding: 0.8em 5em 0.8em 5em;
    font-weight: bold;
    background: #fabf00;
}
.exbtn{
    display: inline-block;
    margin: 0.5em 0;
    padding: 0.3em 1.8em;
    background: #000;
    color: #FFF;
}
.exbtn:hover{
    background: #000;
    color: #FFF;
}


.column{
    margin: 1em 0;
    padding: 1% 0;
    text-align:  center;
    border: 1px #ccc solid;
    font-size: 1.1em;
}

.column{
    background: #fabf00;
    margin-bottom: 0;
    font-weight: bold;
}
.column:hover{
    opacity: 0.8;
}
.column p{
    margin: 0!important;
}
.column1{
    margin-bottom: 5%;
}
.column2{
    overflow: hidden;
}
.column2 .col{
    width: 49%;
    margin: 0 2% 0 0;
    float: left;
}
.column2 .col:nth-child(2n){
    margin-right: 0;
}
.column3{
    overflow: hidden;
}
.column3 .col{
    width: 32%;
    margin: 0 2% 0% 0;
    float: left;
}
.column3 .col:nth-child(3n){
    margin-right: 0;
}
.column4{
    overflow: hidden;
}
.column4 .col{
    width: 23.5%;
    margin: 0 2% 5% 0;
    float: left;
}
.column4 .col:nth-child(4n){
    margin-right: 0;
}


.pc_img{
    display: block;
}
.sp_img{
    display: none;
}




/* header */
#header-fixed
{
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 110px;
    z-index: 7777;
}


#header-bk {
    background-color:#FFF;
    height:110px;
    width:100%;
}


header{
    overflow: hidden;
    padding: 0;
}

#logo{
    padding: 15px 30px;
    text-align: left;
    float: left;
    background: #FFF;
}

#nav_toggle{
    display: none;
}

header ul{
    float: right;
    margin-top: 40px;
    padding-right: 230px;
    text-align: right;
    overflow: hidden;

}
header li{
    margin-right: 30px;
    display: inline-block;
    font-size: 1.3em;
    font-weight: bold;
}
header li.current a{
    border-bottom: 3px #fabf00 solid;
}
header li.sp_nav{
    display: none;
}
header p{
    position: absolute;
    right: 0;
    top: 0;
    width: 220px;
    height: 110px;
    background: #fabf00;
    z-index: 8888;
}
header p a{
    font-size: 1.4em;
    font-weight: bold;
    display: block;
    padding-top: 12px;
  /*  background: url("../image/i_contact.png") no-repeat center 25px;*/
}




/* side */

#side{
    position: absolute;
    z-index: 7777;
    left: 1.5%;
    top: 150px;
}

#side li{
    margin: 15px 0;
    display: block;
    text-align: center;
}

#side #copy{
    margin-bottom: 70px;
    display: block;
    font-size: 1.1em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}




/* main_visual */

#main_visual{
    margin-top: 110px;
    margin-bottom: 10px;
    padding: 0;
}
#main_visual img{
    width: 100%;
    max-width: 100%;
}



/* top_contents */

#top_contents{
    text-align: left;
}
#top_contents section{
    padding-top: 50px;
}

#top_contents h2{
    position: relative;
    margin: 1% 0 2%;
    font-size: 1.2em;
    line-height: 1.3;
    font-weight: normal;
    padding-bottom: 1em;
    letter-spacing: 3px;
}
#top_contents h2 span{
    display: block;
    font-size: 2.0em;
    font-weight: bold;
    font-family: initial;
    margin: 0 0 1% 0;
}
#top_contents h2:after {
    width: 60px;
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    border-bottom: 4px solid #fabf00;
}
#top_contents p{
    margin-bottom: 0.5em;
}

.linkbox{
    cursor: pointer;
}

#top_products{
    overflow: hidden;
}
#top_products dl{
    width: 33.3%;
    overflow: hidden;
    float: left;
    text-align: center;
    border-bottom: 1px #f2f2f2 solid;
}
#top_products dl:hover{
    background: #f2f2f2;
}
#top_products dt{
    border-bottom: 5px solid #fabf00;
}
#top_products dd{
    padding-top: 1em;
    font-size: 1.3em;
    font-weight: bold;
    line-height: 1.0;
    border-left: 1px #f2f2f2 solid;
}

#top_products dd.more{
    font-size: 1.1em;
}

#top_products dl:last-child dd{
    border-right: 1px #f2f2f2 solid;
}


#top_benefits{
    overflow: hidden;
}
#top_benefits dl{
    width: 33.3%;
    overflow: hidden;
    float: left;
    text-align: center;
    border-top: 1px #f2f2f2 solid;
    border-bottom: 1px #f2f2f2 solid;
}
#top_benefits dl:hover{
    background: #f2f2f2;
}
#top_benefits dt{
    padding: 3%;
    border-left: 1px #f2f2f2 solid;
}
#top_benefits dd{
    font-size: 1.5em;
    font-weight: bold;
    line-height: 3.0;
    border-left: 1px #f2f2f2 solid;
}
#top_benefits dl:last-child dt,
#top_benefits dl:last-child dd{
    border-right: 1px #f2f2f2 solid;
}
#top_benefits dd.more{
    font-size: 1.1em;
}

#top_news{
}
#top_news .column2 .col{
    margin: 0;
}
#top_news .column2 .col_txt{
    margin: 30px 0px 20px;
}

#top_news dl{
    font-size: 1.4em;
    margin-bottom: 0.5em;
}
#top_news dt{
    font-weight: bold;
}

#top_about{
    overflow: hidden;
    background: url("../image/bg_top_about.png") no-repeat center center;
    background-size: cover;
}
#top_about h2{
    color: #FFF;
    padding-top: 0.2em;
}
#top_about .inner{
}
#top_about p{
}
#top_about #link_story{
    padding: 0.5em;
    float: right;
}
#top_about .inner .img_left{
    margin-top: -20px;
}



#pagetop{
    position: fixed;
    right: 20px;
    bottom: 200px;
}


/* footer */

footer{
}
#bnr{
    margin: 0;
    padding: 2em 0;
    background: #f2f2f2;
    text-align: center;
}
#bnr li{
    margin: 0 35px;
    display: inline-block;
}

#ft_nav{
    padding: 1em 0;
    text-align: left;
    overflow: hidden;
}
#ft_nav .col{
    width: 25%;
    float: left;
}
#ft_nav dt,
#ft_nav p{
    font-weight: bold;
    font-size: 1.2em;
}


#ft_info{
    padding: 0 0 20px;
    overflow: hidden;
}
#ft_info dt{
    float: left;
}
#ft_info dd{
    padding-top: 1em;
    font-size: 1.2em;
    float: right;
    text-align: right;
}
#ft_info dd span{
    display: block;
}

#ft_contact{
    display: none;
}



.trim-front h1{
    position: relative;
    margin-bottom: 3em;
    font-size: 1.1em;
    line-height: 1.3;
    font-weight: normal;
    padding-top: 3em;
    padding-bottom: 1em;
    text-align: left;
}
.trim-front h1 span{
    display: block;
    font-size: 1.8em;
    margin-bottom: 0.5em;
    font-weight: bold;
    font-family: initial;
}
.trim-front h1:after {
    width: 60px;
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    border-bottom: 4px solid #fabf00;
}


.wh{height: 230px!important; margin-bottom: 0; position: relative;margin-top: 110px;}
.main { position: relative; width: 100%; height: calc(100% - 18px); box-sizing: border-box; padding-left: 5%; }
.main .inners { overflow: hidden; position: absolute; height: 100%; width: calc(100% - 9%); float: right; top: 0; right: 0; }


.slider_top { position: relative; height: 100%; float: right; width: calc(70% - 5%); z-index: 2; }
.slider_top .clip-body .clip { z-index: 101; }

.slider { width: 100%; position: relative; height: 180px;  }
.slider .slide {}
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }
.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0; height: 100%;}
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }
.slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
.slick-track { position: relative; top: 0; left: 0; display: block; height: 100%; }

.slick-slide { display: none; float: left; height: 100%; min-height: 1px; }
[dir='rtl'] .slick-slide { float: right; }

.slider_top .slick-initialized .slick-slide { display: table; }





#breadcrumb{
    clear: both;
    padding-bottom: 2em;
    float: right;
    text-align: right;
}
#breadcrumb li{
    font-size: 1.1em;
    padding-left: 10px;
    display: inline-block;
}
#breadcrumb li:after{
    content: "/";
    margin-left: 10px;
}
#breadcrumb li:last-child:after{
    content: "";
}




/* contents */

#contents{
    clear: both;
    text-align: left;
}
#contents section{
    padding: 50px 0;
}
#contents section#story{
    padding-top: 100px;
}
#contents h2{
    font-size: 1.6em;
    line-height: 1.2;
    margin-bottom: 0.5em;
    font-weight: bold;
}
#contents h3{
    font-size: 1.2em;
    margin-bottom: 0.5em;
    font-weight: bold;
}
#contents h4{
    font-size: 1.1em;
    margin-bottom: 0.5em;
    font-weight: bold;
}
#contents p{
    /*margin-bottom: 2em;*/
}
#contents ul{
}
#contents li{
    font-size: 1.2em;
    font-weight: bold;
    padding-left:1em;
    text-indent:-1em;
    margin-bottom: 1em;
}
#contents li:before{
    content: "■";
}
#contents table{
    width: 100%;
    margin-bottom: 0;
    border-top: 1px #e8e8e8 solid;
}
#contents th{
    width: 15%;
    font-weight: bold;
    padding: 10px;
    white-space: nowrap;
    vertical-align: top;
    border-bottom: 1px #e8e8e8 solid;
}
#contents td{
    padding: 10px;
    border-bottom: 1px #e8e8e8 solid;
}

#contents #page_nav{
    margin: 0 0 2% 0;
}
#page_nav li{
    margin-right: 40px;
    padding-right: 40px;
    display: inline-block;
    border-right: 1px #000 solid;
    line-height: 1.3;
    font-size: 1.1em;
    font-weight: normal;
}
#page_nav li:before{
    content: "";
}
#page_nav li:last-child{
    border-right: none;
}
#page_nav li a{
    border-bottom: solid 1px;
    font-weight: bold;
}




#contents #sitemap p,
#contents #sitemap dt{
    font-size: 1.3em;
    font-weight: bold;
    margin-bottom: 1em;
    border-bottom: 1px #ccc solid;
}
#contents #sitemap p{
    margin-bottom: 2em;
}
#contents #sitemap dl{
    margin-bottom: 3em;
}
#contents #sitemap dd{
    font-size: 1.2em;
    font-weight: bold;
    padding-left:1em;
    text-indent:-1em;
    margin-bottom: 1em;
}
#contents #sitemap dd:before{
    content: "■";
}



#contact input,
#contact textarea,
#contact select{
    margin-right: 5px;
    padding: 4px 5px;
    border: 1px solid #CCC;
}
#contact td span {
    display: inline-block;
    padding: 6px 5px 0 0;
}
#contact td div {
    margin-top: 10px;
}
#contact td .input1 {
    width: 10%;
}
#contact td .input2 {
    width: 30%;
}
#contact td .input3 {
    width: 50%;
}
#contact td .error-cell {
    background: #fcc;
}
#contact td .error-box {
    margin-top: 3px;
    color: #f60;
    font-size: 10px;
}
#contact td .current-cell {
    background: #ffc;
}





#pagetop{
    position: fixed;
    right: 20px;
    bottom: 200px;
}


/* footer */

footer{
}
#bnr{
    margin: 0;
    padding: 2em 0;
    background: #f2f2f2;
    text-align: center;
}
#bnr li{
    margin: 0 35px;
    display: inline-block;
}

#ft_nav{
    padding: 1em 0;
    text-align: left;
    overflow: hidden;
}
#ft_nav .col{
    width: 25%;
    float: left;
}

#ft_nav dt,
#ft_nav p{
    font-weight: bold;
    font-size: 1.2em;
    margin: 2% 0;
}
#ft_nav .col dd{
    margin: 5% 0;
    display: block;
}

#ft_info{
    padding: 0 0 20px;
    overflow: hidden;
}
#ft_info dt{
    float: left;
}
#ft_info dd{
    padding-top: 1em;
    font-size: 1.2em;
    float: right;
    text-align: right;
    font-size: 14px;
}
#ft_info dd span{
    display: block;
}

#ft_contact{
    display: none;
}










@media screen and (max-width: 1200px) {
    html{
        overflow: auto!important;
    }

    /*xlt-k*/
    ::-webkit-scrollbar
    {
        width: 0;
        height: 0;
    }

    ::-webkit-scrollbar-track
    {
        background-color: #ffffff;
    }

    ::-webkit-scrollbar-thumb
    {
        background-color: #19596b;
    }
    /*xlt-g*/

    .body {
        width: 100%;
    }
    .mi_pub_banner{
        display: block;
    }
    .wh1600 {
        margin: 0 2% !important;
    }

    .fsdb24{
        font-size: 4vw;
    }
    .fsdb22{
        font-size: 4vw;
    }
    .fsdb20{
        font-size: 4vw;
    }
    .fsdb18{
        font-size: 4vw;
    }
    .fsdb16{
        font-size: 3.5vw;
    }
    .fsdb14{
        font-size: 3vw;
    }


    .img_gallery {
        display: block;
    }
    .train_banner {
        margin-top: 0!important;
    }
    .nybanner{
        display: none;
    }
    .train_banner_left,.train_banner_right{
        display: none;
    }


    .img_right{
        float: none;
        margin: 0;
    }

    .img_left{
        float: none;
        margin: 0;
    }
    #top_about .inner .img_left{
        margin-top: 0px;
    }


    .linkbtn{
        padding: 0.8em 2em 0.8em 1.5em;
    }

    .column2 .col{
        width: 100%;
        margin: 0 0 5%;
        float: none;
    }
    .column2 .col img{
        text-align: center;
    }
    .column3 .col{
        width: 100%;
        margin: 0 0 5%;
        float: none;
        text-align: center;
    }
    .column3 .col img{
        text-align: center;
    }
    .column4 .col{
        width: 100%;
        margin: 0 0 5%;
        float: none;
    }




    .pc_img{
        display: none;
    }
    .sp_img{
        display: block;
    }













    /*開閉ボタン*/
    #nav_toggle{
        display: block;
        position: absolute;
        height: 55px;
        top: 0;
        right: 0;
        padding: 15px 15px 5px;
        z-index: 100;
        background: #000;
    }
    #nav_toggle div {
        width: 45px;
        position: relative;
    }

    #nav_toggle span{
        display: block;
        height: 2px;
        background: #fabf00;
        position:absolute;
        width: 100%;
        left: 0;
        -webkit-transition: 0.5s ease-in-out;
        -moz-transition: 0.5s ease-in-out;
        transition: 0.5s ease-in-out;
    }
    #nav_toggle span:nth-child(1){
        top:0px;
    }
    #nav_toggle span:nth-child(2){
        top:10px;
    }
    #nav_toggle span:nth-child(3){
        top:20px;
    }

    #nav_toggle:before{
        content: "MENU";
        float: left;
        font-size: 1.1em;
        line-height: 1.5;
        margin-top: 30px;
        color: #fabf00;
    }




    /*開閉ボタンopen時*/
    .open #nav_toggle:before{
        content: "CLOSE";
    }
    .open #nav_toggle span:nth-child(1) {
        top: 12px;
        -webkit-transform: rotate(135deg);
        -moz-transform: rotate(135deg);
        transform: rotate(135deg);
    }
    .open #nav_toggle span:nth-child(2) {
        width: 0;
        left: 50%;
    }
    .open #nav_toggle span:nth-child(3) {
        top: 12px;
        -webkit-transform: rotate(-135deg);
        -moz-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }


    /*メニュー部分*/
    header nav{
        display: none;
        position: absolute;
        z-index: 9999;
        width: 100%;
        background: #fabf00;
        left: 0;
        top: 75px;
        padding: 5% 0;
    }


    #header-fixed{
        position: relative;
        height: auto;
    }
    #header-bk {
        height: auto;
    }


    header{
        height: 75px;
        padding: 0;
    }

    #logo{
        padding-top: 3%;
        padding-left: 5%;
        width: 40%;
    }
    header ul{
        width: 90%;
        float: none;
        margin: 0 auto;
        padding-right: 0;
        text-align: left;
    }
    header li{
        margin-right: 0;
        padding: 0.5em;
        display: block;
        text-align: left;
        font-size: 1.4em;
        border-bottom: 1px #000 solid;
    }
    header li.sp_nav{
        display: block;
    }
    header p{
        display: none;
    }


    /* side */


    #side{
        position: relative;
        left: 0;
        top: 0;
    }
    #side #copy{
        display: none;
    }
    #side ul{
        margin-top: 5%;
        text-align: center;
    }
    #side li{
        display: inline-block;
        border: none;
        font-weight: bold;
        margin: 0 1px;
    }

    /* main_visual */

    #main_visual{
        margin-top: 0;
    }



    /* top_contents */

    #top_contents section{
        margin-bottom: 5%;
    }

    #top_contents h2{
        font-size: 1.1em;
    }
    #top_contents h2 span{
        font-size: 2.3em;
    }
    #top_contents h2:after {
        width: 50px;
    }



    #top_products dl{
        width: 100%;
        float: none;
        text-align: left;
        margin-bottom: 5%;
        border: none;
    }
    #top_products dt{
        margin-bottom: 0.5em;
        border-bottom: none;
    }
    #top_products dd{
        float: left;
        margin-top: 0;
        font-size: 1.0em;
        line-height: 2.0;
        border-left: none;
    }
    #top_products dd img{
        height: 32px;
    }

    #top_products dd.more{
        width: 40%;
        float: right;
    }
    #top_products dl:last-child dd{
        border-right: none;
    }
    #top_products .linkbtn{
        padding: 0.8em 1em;
    }



    #top_benefits.inner{
        width: 100%;
        margin: 0 0 10%;
    }
    #top_benefits h2{
        margin-left: 5%;
    }
    #top_benefits dl{
        width: 85%;
        margin-left: 5%;
        padding: 5%;
        float: none;
        text-align: left;
        border-top: none;
        border-bottom: none;
        background: #f2f2f2;
    }
    #top_benefits dt{
        padding: 3%;
        border-left: none;
    }
    #top_benefits dd{
        font-size: 1.5em;
        font-weight: bold;
        line-height: 3.0;
        border-left: none;
        padding-left: 5%;
    }
    #top_benefits dl:last-child dt,
    #top_benefits dl:last-child dd{
        border-right: none;
    }
    #top_benefits dd.more{
        display: none;
    }


    #top_news .column2 .col{
        text-align: left;
    }
    #top_news .column2 .col_txt{
        margin: 0;
    }



    #top_about{
        margin-right: 0;
        padding: 5% 0;
        background: url("../images/bg_top_about_sp.png") no-repeat right top;
        background-size: cover;
        position: relative;
    }
    #top_about h2{
        font-size: 1.0em;
    }
    #top_about h2 span{
        font-size: 1.8em;
        line-height: 2.0;
    }
    #top_about #link_story{
        float: none;
        padding-top: 20px;
        text-align: center;
    }


    footer{
        position: relative;
        padding-bottom: 50px;
    }
    #pagetop{
        position: absolute;
        bottom: 60px;
        right: 5%;
        text-align: center;
    }
    #pagetop img{
        width: 9px;
    }
    #bnr{
        margin: 0;
        padding: 3% 0 10%;
    }
    #bnr li{
        margin: 8% 0 0;
        display: block;
    }
    #bnr li:nth-child(1) img{
        height: 26px;
        height: 56px;
    }
    #bnr li:nth-child(2) img{
        height: 26px;
        height: 56px;
    }
    #bnr li:nth-child(3) img{
        height: 42px;
    }

    #ft_nav{
        display: none;
    }

    #ft_info{
        padding: 10% 0;
    }
    #ft_info dt{
        width: 50%;
        margin: 0 auto 1em;
        float: none;
    }
    #ft_info dd{
        width: 70%;
        margin: 0px auto;
        padding-top: 1em;
        font-size: 0.7em;
        float: none;
        text-align: center;
    }
    #ft_info dd span{
        display: block;
    }


    #ft_contact{
        display: block;
        position: fixed;
        bottom: 0;
        width: 100%;
        height: 50px;
        background: #fabf00;
        z-index: 8889;
    }
    #ft_contact a{
        padding-top: 0.3em;
        display: inline-block;
        font-size: 1.4em;
        font-weight: bold;
        padding-left: 40px;
        background: url("../image/i_contact.png") no-repeat left center;
    }







    /*.main .inners {font-size: 26px; }
    .wh{margin-bottom: 10%;}
    .main { height: calc(100% - 35px); padding-left: 5%; }
    .trim-title span { left: -18%;}
    .wh p{
        font-size: 1.1em;
        width: calc(100% - 5%);
    }
    .wh p:after {
        width: 40px;
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        border-bottom: 4px solid #fabf00;
    }
    */
    .wh{height: 120px!important;  margin: 5% 0;}
    .slider_top { display: none;}
    .slider { width: 100%; position: relative; height: 90px;  }
    .trim-front h1{
        margin-bottom: 1em;
        font-size: 1.0em;
    }
    .trim-front h1 span{
        font-size: 1.4em;
        margin-bottom: 0.2em;
    }



    #breadcrumb{
        display: none;
    }

    #contents #page_nav{
        margin-bottom: 10%;
    }
    #page_nav li{
        margin-right: 2%;
        padding-right: 2%;
    }

    #contents section{
        margin-top:0;

        margin-bottom: 10%;
        padding: 0;
    }

    #contents h2{
        margin-bottom: 0.5em;
    }

    #contents th{
        width: 96%;
        padding: 2%;
        display: block;
    }
    #contents td{
        width: 96%;
        padding: 2%;
        display: block;
    }



    #contact td .input1 {
        width: 10%;
    }
    #contact td .input2 {
        width: 25%;
    }
    #contact td .input3 {
        width: 80%;
    }









}


















