/*
追記
****************************************/

.gnav ul.clearfix{
    text-align: right;
}
.gnav ul.clearfix > li {
    text-align: right;
    padding: 0 0 0 25px;
    display: inline-block;
    width: auto;
}
.gnav ul.clearfix > li a{
    padding:20px 0 20px;
    height: auto;
    line-height: initial;
    display: inline-block;
}
.gnav ul.clearfix > li a::after{
    bottom: -2px;
}

@media screen and (max-width: 1024px) {
    .gnav ul{
        text-align: right;
    }
    .gnav ul li {
        padding: 0 10px;
    }
}

/*
gnav(サブメニュー)
****************************************/
.gnav ul li ul.submenu {
    left:initial;
    /*right:0;*/
    right:-70%;
}
.gnav ul li:nth-last-of-type(2) ul.submenu{
    right: 0;
}

/*
 gnav(スマホメニュー)
****************************************/

@media (max-width: 1199px) {
    .gnav {
        display: block;
    }
    .gnav ul{
    }
    .gnav ul li {
        width: auto;
        display: inline-block;
    }
    .gnav ul li a {}

    #panel-btn{
        display:none;
    }
}

@media (max-width: 1023px) {
    .gnav {
        display: none;
    }
    #panel-btn-wrap {
        float: right;
        margin: 0 2% 0 0;
    }
    #footer #panel-btn-wrap {
        display: none;
    }
    #panel-btn,
    #panel ul li a:hover {
    }
    #panel-btn {
        display: inline-block;
        position: absolute;
        width: 50px;
        height: 50px;
        /*top: 10px;*/
        right: 2%;
        z-index:200;
    }
    #panel-btn:hover {
    }
    #panel-btn-icon {
        display: block;
        position: absolute;
        top: 50%;
        left: 34%;
        width: 62%;
        height: 2px;
        margin: -1px 0 0 -7px;
        transition: .2s;
    }
    #panel-btn-icon:before,
    #panel-btn-icon:after {
        display: block;
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        width: 100%;
        height: 2px;
        transition: .3s;
    }
    #panel-btn-icon:before {
        margin-top: -10px;
    }
    #panel-btn-icon:after {
        margin-top: 9px;
    }
    #panel-btn .close {
        background: transparent;
    }
    #panel-btn .close:before,
    #panel-btn .close:after {
        margin-top: 0;
    }
    #panel-btn .close:before {
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
    }
    #panel-btn .close:after {
        transform: rotate(-135deg);
        -webkit-transform: rotate(-135deg);
    }
    #panel {
        display: none;
        padding: 10vh 0;
        position: fixed;
        left: 0;
        top: 0vh;
        width: 100%;
        overflow-y: scroll;
        height: 100vh;
        z-index: 100;
        box-sizing: border-box;
        z-index: 100;
    }
    #panel ul li {
        text-align: left;
    }
    #panel ul li a {
        padding: 15px 5%;
        width: 100%;
        box-sizing: border-box;
        text-decoration: none;
        display: block;
        border: 1px solid;
    }
}


@media (max-width: 1199px) {
    .wrapper {
        width: 98%;
        margin: 0px auto;
    }
}
#header .hd_main > h1 {
  display: table-caption;
}
#header .hd_main .left,
#header.head_info_pattern2 .hd_main .left{
    min-width: initial;
    width: auto;
    position: relative;
}
#header .hd_main .left a,
#header.head_info_pattern2 .hd_main .left a {
    padding: 0;
    display: inline-block;
}
#header .hd_main .right,
#header.head_info_pattern2 .hd_main .right {
    box-sizing: border-box;
    height: 50px;
    vertical-align: bottom;
    display: table-cell;
    top: initial;
}
#header .hd_main .left img {
  max-height: 50px;
  max-width: 270px;
  object-fit: cover;
}
@media (max-width: 1199px) {
    #header {
        padding:0;
    }
    #header .hd_top {
        width: 100%;
        margin: 8px auto;
    }
    #header .hd_main {
        display: table;
        width: 98%;
        margin: 0 auto;
    }
}
@media screen and (max-width: 1199px) {
    #header .hd_main .left img {
        max-width: 250px;
    }
    #header .hd_top {
        display:block;
        width: 100%;
    }
    #header .hd_top .LR_box {}
    #header .hd_top .LR_box .left {
        display: block;
        float: left;
    }
    #header .hd_top .LR_box .right {
        display: block;
        float: right;
    }
    #header .hd_main .left,
    #header.head_info_pattern2 .hd_main .left{
        padding: 10px 0;
    }
    #header .hd_main .right{
        padding:0 0 0 30px;
        width: auto;
    }
}
@media (max-width: 1023px) {
    #header .hd_top {
        display:none;
    }
    #header .hd_top .LR_box {}
    #header .hd_top .LR_box .left {
        float: none;
        display: table-cell;
    }
    #header .hd_top .LR_box .right {
        float: none;
        display: table-cell;
    }
    #header .hd_main {
        display: table;
        width: 98%;
        margin: 0 auto;
    }
    #header .hd_main .right,
    #header.head_info_pattern2 .hd_main .right {
        display: none;
    }
    #header .hd_main .left,
    #header.head_info_pattern2 .hd_main .left{
        top: 0;
    }
}
/*
 gnav(スマホ ハンバーガーメニュー時)
****************************************/

@media screen and (max-width: 1199px) {
    #panel-btn,
    #panel ul li a:hover {
        background: rgba(255, 255, 255, 0.7);
    }
    #panel-btn-icon {
        background: #000;
    }
    #panel-btn-icon:before,
    #panel-btn-icon:after {
        background: #000;
    }
    #panel {
        /*background: #fbfbfb;*/
    }
    #panel ul li a {
        background: rgba(0, 0, 0, 0.9);
        color: #fff;
        border: none;
        -webkit-transition: all 0.3s ease-out;
            transition: all 0.3s ease-out;
                border-bottom: 1px solid #313131;
    }
    #panel ul li a:hover {
        background: rgba(0, 0, 0, 0.7);
        color: #cccccc;
    }
}


@media screen and (max-width: 1199px) {
    .h2_wrap {
        width: 100%;
        padding:0;
    }
    .h2_wrap .left{
        display: block;
        width: 100%;
        padding:0 0px 0px 0;
    }
    .h2_wrap .right{
        display: block;
        width: 100%;
    }
    .h2_wrap .right h2,
    section.top_section .h2_wrap .right h2,
    .lower_main .h2_wrap .right h2{
        text-align: left;
    }
    .pattern1 .h2_wrap.bdr_btm,
    .pattern2 .h2_wrap.bdr_btm,
    .pattern3 .h2_wrap.bdr_btm{
        width:100%;
    }
    .lower_main .h2_wrap {
        padding: 75px 0% 0;
    }
}

@media (max-width: 1199px) {
    .col_12{
        width:100%;
    }
    .col_11{
        width:87%;
    }
    .col_10{
        width:77%;
    }
    .col_9{
        width:77%;
    }
    .col_8{
        width:67%;
    }
    .col_7{
        width:67%;
    }
    .col_6{
        width:49%;
    }
    .col_5{
        width:30%;
    }
    .col_4{
        width:30%;
    }
    .col_3{
        width:20%;
    }
    .col_2{
        width:20%;
    }
    .col_1{
        width:10%;
    }
    .LR_box .col_12{
        width:100%;
    }
    .LR_box .col_11{
        width:87%;
    }
    .LR_box .col_10{
        width:77%;
    }
    .LR_box .col_9{
        width:77%;
    }
    .LR_box .col_8{
        width:67%;
    }
    .LR_box .col_7{
        width:67%;
    }
    .LR_box .col_6{
        width:49%;
    }
    .LR_box .col_5{
        width:30%;
    }
    .LR_box .col_4{
        width:30%;
    }
    .LR_box .col_3{
        width:20%;
    }
    .LR_box .col_2{
        width:20%;
    }
    .LR_box .col_1{
        width:10%;
    }
}
@media (max-width: 768px) {
    .col_12,
    .col_11,
    .col_10,
    .col_9,
    .col_8,
    .col_7,
    .col_6,
    .col_5,
    .col_4,
    .col_3,
    .col_2,
    .col_1{
        width:100%;
    }
    .LR_box .col_12,
    .LR_box .col_11,
    .LR_box .col_10,
    .LR_box .col_9,
    .LR_box .col_8,
    .LR_box .col_7,
    .LR_box .col_6,
    .LR_box .col_5,
    .LR_box .col_4,
    .LR_box .col_3,
    .LR_box .col_2,
    .LR_box .col_1{
        width:100%;
    }
}
@media (max-width: 1200px) {
   .detail_box4 li{
        width:25%;
        width:calc(25% - 22.5px);
        margin-left:30px;
    }
    .detail_box4 li:first-child,
    .detail_box4 li:nth-child(4n+1){
        margin-left:0;
    } 
    .detail_box5 li{
        width:18%;
        /*width:calc(20% - 30px);*/
        margin-left:2.5%;
    }
    .detail_box5 li:first-child,
    .detail_box5 li:nth-child(5n+1){
        margin-left:0%;
    }
    .detail_box4 li .more_btn a,
    .detail_box5 li .more_btn a{
        width: 98%;
        min-width: auto;
        padding: 2% 1%;
    }
}
@media screen and (min-width: 769px) and (max-width: 1199px) {
    .LR_box{
        width: 100%;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    .LR_box.bg-img .col_4 div a {
        min-height: 196px;
        min-width: 296px;
    }
    .concept_box .areaL,
    .LR_box .left{
        display: table-cell;
        float: none;
        table-layout: fixed;
        vertical-align: top;
        width:auto;
    }
    .concept_box .areaR,
    .LR_box .right{
        display: table-cell;
        float: none;
        table-layout: fixed;
        vertical-align: top;
        width:auto;
    }
    .concept_box .areaL.col_4,
    .LR_box .left.col_4,
    .concept_box .areaR.col_4,
    .LR_box .right.col_4{
        width: 30%;
    }
    .concept_box .areaL.col_8,
    .LR_box .left.col_8,
    .concept_box .areaR.col_8,
    .LR_box .right.col_8{
        width: 65%;
    }
    .concept_box .areaL.col_6,
    .LR_box .left.col_6,
    .concept_box .areaR.col_6,
    .LR_box .right.col_6,
    .concept_box .areaL.w50,
    .LR_box .left.w50,
    .concept_box .areaR.w50,
    .LR_box .right.w50{
        width: 48%;
    }
    .concept_box .areaL.img + .areaR,
    .LR_box .left + .right{
        padding-left: 20px;
    }
    .concept_box .areaR.img + .areaL,
    .LR_box .right + .left{
        padding-right: 20px;
    }
    
    .content_reverse{
        display: flex;
        flex-direction: row-reverse;
    }
    
    
   .article_list.detail_box2 li{
       width:50%;
        width:calc(50% - 15px);
    }
    .detail_box2 li:first-child,
    .detail_box2 li:nth-child(2n+1){
        margin-left:0px;
    }
    .detail_box2 li:nth-child(2n+2){
        margin-left:30px;
        /*margin-left:2%;*/
    }
    .detail_box_wrap .detail_box2 li {
        width:50%;
        width:calc(50% - 15px);
    }
    .detail_box_wrap .detail_box2 li:first-child {
        margin-left:0px;
    }
    .detail_box_wrap .detail_box2 li:nth-child(2n+1) {}
    .detail_box_wrap .detail_box2 li:nth-child(2n+2){
        margin-left:30px;
    }
   .detail_box3 li{
        width:32%;
        /*width:calc(33% - 20px);*/
        margin-left:2%;
    }
    .detail_box3 li:first-child,
    .detail_box3 li:nth-child(3n+1){
        margin-left:0;
    } 
   .detail_box4 li{
        width:25%;
        width:calc(25% - 22.5px);
        margin-left:22px;
    }
    .detail_box4 li:first-child,
    .detail_box4 li:nth-child(4n+1){
        margin-left:0;
    } 
    .detail_box5 li{
        width:18%;
        /*width:calc(20% - 30px);*/
        margin-left:2.5%;
    }
    .detail_box5 li:first-child,
    .detail_box5 li:nth-child(5n+1){
        margin-left:0%;
    }   
}
@media (max-width: 768px) {
    ul.detail_box2,
    ul.detail_box3,
    ul.detail_box4,
    ul.detail_box5{
        /*font-size:0;*/
    }
    .detail_box_wrap .detail_box2 li:first-child,
    .detail_box_wrap .detail_box3 li:first-child,
    .detail_box_wrap .detail_box4 li:first-child,
    .detail_box_wrap .detail_box5 li:first-child{
        margin-top: 0;
        margin-bottom:0;
    }
    .detail_box_wrap .detail_box2 li:nth-child(-n+2),
    .detail_box_wrap .detail_box3 li:nth-child(-n+3),
    .detail_box_wrap .detail_box4 li:nth-child(-n+4),
    .detail_box_wrap .detail_box5 li:nth-child(-n+5){
        margin-top: 30px;
        margin-bottom:0;
    }
    .detail_box_wrap .detail_box2 li:nth-child(2n+1),
    .detail_box_wrap .detail_box3 li:nth-child(3n+1),
    .detail_box_wrap .detail_box4 li:nth-child(4n+1),
    .detail_box_wrap .detail_box5 li:nth-child(5n+1){
        margin-left:0;
    }
    .detail_box2 li{
        width:100%;
    }
    .detail_box2 li:nth-child(2n+2){
        margin-left:0%;
    }
    .detail_box3 li{
        width:100%;
        margin-left:0;
        margin-bottom: 10px;
    }
    .detail_box3 li:first-child,
    .detail_box3 li:nth-child(3n+1){
        margin-left:0%;
    }
    .detail_box4 li{
        width:100%;
        margin-left:0%;
    }
    .detail_box4 li:nth-child(2n+2){
        margin-left:0%;
    }
    .detail_box5 li{
        width:100%;
        margin-left:0%;
    }
    .detail_box5 li:nth-child(2n+2){
        margin-left:0%;
    }
    
    .detail_box3 li img,
    .detail_box4 li img,
    .detail_box5 li img{
        width: 100%;
    }
    /*
    .detail_box2.sp_side2 li{
        width:49%;
        margin-bottom: 0;
        float: left;
    }
    */
    .detail_box_wrap .detail_box2 li:first-child,
    .detail_box_wrap .detail_box3 li:first-child,
    .detail_box_wrap .detail_box4 li:first-child,
    .detail_box_wrap .detail_box5 li:first-child{
        margin-left:0%;
    }
    /*
    .detail_box2.sp_side2 li:nth-child(2n+2){
        margin-left:2%;
    }
    .detail_box3.sp_side2 li{
        width:32%;
        margin-left:3%;
        margin-bottom: 0px;
    }
    .detail_box3.sp_side2 li:first-child {}
    .detail_box3.sp_side2 li:nth-child(-n+3) {}
    .detail_box3.sp_side2 li:nth-child(3n+1){
        margin-left:2%;
    }
    .detail_box4.sp_side2 li{
        width:49%;
        margin-left:2%;
        margin-bottom: 0;
    }
    .detail_box4.sp_side2 li:nth-child(2n+2){
        margin-left:2%;
    }
    .detail_box5.sp_side2 li{
        width:49%;
        margin-left:2%;
        margin-bottom: 0;
    }
    .detail_box5.sp_side2 li:nth-child(2n+2){
        margin-left:2%;
    }*/
}

@media screen and (min-width: 769px) and (max-width: 1199px) {
   .article_list.detail_box3 li {
        width:32%;
        margin-left: 2%;
        float: left;
        position: relative;
    }
    .article_list.detail_box3 li:first-child,
    .article_list.detail_box3 li:nth-child(3n+1) {
        margin-left: 0%;
    }
    .col_9 .article_list.detail_box3 li {
        width:100%;
        float: none;
        margin-left: 0%;
    }
    .left.col_9 .article_list.float_left li .image{
        width:30%;
    }
    .left.col_9 .article_list.float_left li .image img {margin-bottom: 0px;}
    .lower_main .left.col_9 .article_list.float_left li .pattern1 .textArea h3 {margin-bottom: 10px;}
    .left.col_9 .article_list.float_left li .article_contents{
        width:65%;
    }
    .left.col_9 .article_list.float_left li .more_btn a {
        /*width: 100%;*/
    }
}
/*
@media screen and (min-width: 769px) and (max-width: 1199px) {
    .pattern1 .h2_wrap.bdr_btm,
    .pattern2 .h2_wrap.bdr_btm,
    .pattern3 .h2_wrap.bdr_btm{
        width:100%;
    }
}
*/

#side_sns.fixed {
    padding: 20px 5px;
}
@media (max-width: 1199px) {
    .mv_cap_in{
        width: 90%;
        margin: 0 auto;
        left: 0;
        right: 0;
    }
}
@media (max-width: 768px) {
    #side_sns.fixed {
        padding: 0px;
    }
    #side_sns .sns_icon{
        paddoing:25px 0;
    }
}

@media (max-width: 768px) {
    .menu_wrap.detail_box_wrap .detail_box2.sp_side2 li {
        float: none;
        width: auto;
    }
    .menu_wrap.detail_box_wrap .detail_box2.sp_side2 li:first-child {}
    .menu_wrap.detail_box_wrap .detail_box2.sp_side2 li:nth-child(2n+2) {
        margin-left: 0;
    }
    .menu_wrap.detail_box_wrap .detail_box2.sp_side2 li:nth-child(-n+2) {}
}