/* --------------------------------------------------------------
   Media query - Responsive 
   -------------------------------------------------------------- */

/* =====================================================
   1199px
   ===================================================== */
@media screen and (max-width: 1199px) {
    body, #wrapper{
        width: 1200px;
        min-width: 1200px;
    }
}

/* =====================================================
   992px - Tablet + Mobile
   ===================================================== */
@media screen and (max-width:992px) {
    
:root {
    --font-size: 16px;
    --font-size-xxl: 180%;
    --font-size-xl: 160%;
    --font-size-l: 140%;
    --font-size-m: 120%;
}

/* Scroll Lock */
.no-scroll {
    height: 100vh;
    overflow: hidden;
}


/* Common */
.sp{ display: block; }
.pc{ display: none; }

body, #wrapper, .box_full{
    width: 100%;
    min-width: 100%;
}
#main, .box{
    width: 92%;
    min-width: 92%;
}

/* Header */
#h_box{ padding: 15px 0; }
#h_left {
    flex: 0 0 70%;
}

#h_right {
    flex: 0 0 26%;
    text-align: right;
}

#main_img_wrap{
    background: url(common_lp/images/bg_main.jpg) no-repeat center;
    background-size: 90%;
    min-height: auto;
    padding: 10% 16%;
    margin-top: -50px;
    bottom: -50px;
    margin-bottom: 150px;
}

/* pagetop ---------------------------------------------------------- */
#scTop {
    position: fixed;
    width: 35px;
    height: 35px;
}
.fixed_bnr dd {
	font-size: 110%;
}

/* Content Layout Adjust */
.section{ margin-bottom:10%; }
.container{ margin-bottom:8%; }
.case{ margin-bottom:6%; }
.pack{ margin-bottom:4%; }
.item{ margin-bottom:2%; }

/* voice 
----------------------------------- */
#voice .title_main{
    background-size: 100px;
    padding-left: 120px;
    margin-left: 0px;
}
#voice .hilight p{
    background-size: 25px;
    padding: 10px 40px;
}
.magazine.box {
	width: 100%;
	min-width: 100%;
}
.magazine-inner {
	width: 94%;
	min-width: 94%;
	margin: 0 auto;
}
.magazine::before {
	width: 100%;
	background: linear-gradient(170deg, #f1f4f8 80%, #ffffff 80%);
}

}

/* =====================================================
   768px - Mobile
   ===================================================== */
@media screen and (max-width: 768px) {
    /* magazine 
    ----------------------------------- */    
    .magazine {
        padding: 40px 0 50px;
    }
	
    .magazine-inner {
        flex-direction: column;
        gap: 36px;
    }

    .magazine-image img {
        max-width: 200px;
        margin: 0 auto;
    }

    .magazine h2 {
        line-height: 1.5;
        text-align: center;
    }
    .magazine .content-row {
        flex-direction: row;
        align-items: flex-start;
        gap: 12px;
    }
    .magazine .badge {
        flex-shrink: 0;
    }
    .magazine .description {
        max-width: none; 
    }

    /* point 
    ----------------------------------- */ 
    #point{
        /*margin-top: -15%;*/
    }

    /* voice 
    ----------------------------------- */ 
    #voice .title_main{
        background-size: 85px;
        padding-left: 100px;
    }
    #voice .hilight p br{ display: none;}

    #history .career-item {
        flex-direction: column;
        gap: 8px;
    }

   /* campaign 
    ----------------------------------- */ 
    #campaign{
        /*margin-top: -20%;*/
    }
}


/* =====================================================
   576px - Mobile
   ===================================================== */
@media screen and (max-width:576px) {

#h_box {
    flex-direction: column;
    align-items: stretch;
}
#h_left,
#h_right {
    flex: 0 0 auto;
    text-align: center;
}
#h_right img{
    width: 200px;
    margin-top: 10px;
}
#header h1 {
   font-size: var(--font-size-ss);
}
.sp_h_link {
	text-align: right;
	font-size: 80%;
}
.sp_h_link a {
	color: #fff;
}
#footer{ 
	position: relative;
	
	padding: 30px 0 70px 0;
}
.collum3,
.collum4 {
    gap: 3.5%;
}
.collum3 li,
.collum4 li {
    width: calc(50% - 1.75%);
    margin-bottom: 3.5%;
}


.tb_cell th,
.tb_cell td{
    width:100% !important;
    display:block;
}

.pic_l,
.pic_r {
    flex-direction: column;
}
.container .msg,
.container .img {
    flex: 0 0 100%;
}
.container .img {
    margin-bottom: 4%;
}
.img_top .img{ margin-bottom:4%; }
.img_top .msg{ margin-bottom:0%; }

.menu_list ul a{ width:82%; }
.menu_list .trigger{ width:15%; }

/* magazine 
----------------------------------- */ 
.magazine {
    /*padding: 40px 0 320px;*/
}
.magazine::before {
	background: linear-gradient(170deg, #f1f4f8 90%, #ffffff 90%);
}
/* point 
----------------------------------- */ 
 #point{
    /*margin-top: -30%;*/
}

/* campaign 
----------------------------------- */ 
#campaign{
	/*margin-top: -35%;*/
}

/* message 
----------------------------------- */ 
#message ul li {
	width: 100px;
	height: 100px;
	font-size: var(--font-size-s);
	margin: 0 5px;
}

/* strong 
----------------------------------- */ 
#strong .ul_btn {
	display: block;
}
#strong .ul_btn li {
	width: 100%;
}
#strong .ul_btn li:first-child {
	margin-right: 0;
	margin-bottom: 20px;
}

}
