/*--------------------------------------------------

    共通

--------------------------------------------------*/

.wrap__hew{
    max-width: 1920px;
    width: 100%;
    margin: 0 auto;
    color: #4d4d4d;
    letter-spacing: 1;
    /*font-family: 'Oswald', sans-serif;*/
}

:root {
    --color-blue: #0071bc;
    --color-yellow: #fac02c;
    --background-gray: #e6e6e6;
}


/*--------------------------------------------------

    MV

--------------------------------------------------*/

.mv__contents{
    display: flex;
    align-items: end;
	justify-content: space-between;
	flex-wrap: wrap;
    flex-shrink: 0;
    position: relative;
}

.mv__logo{
    width: 200px;
    position: absolute;
    top: 50px;
    left: 50px;
}

.mv__heading,
.mv__thumb{
    width: calc(100% / 2 - 10px);
}

.mv__heading{
    display: inline-block;
    padding: 0 50px;
    position: relative;
}

.mv__heading::before{
    content: '';
    display: inline-block;
    width: 90px; 
    height: 2px;
    transform: translate(-50%); 
    background-color: var(--color-blue);
    position: absolute;
    left: 100px;
    top: 0;
}

.mv__title{
    padding: 50px 0;
}

.mv__description{
    font-size: 16px;
    line-height: 40px;
}


/*--------------------------------------------------

    LINE UP

--------------------------------------------------*/

.lineup__inner{
    padding: 100px 20px;
}

.lineup__contents h2{
    text-align: center;
    color: var(--color-blue);
    font-size: 45px;
    font-weight: bold;
    position: relative;
}

.lineup__contents h2::before{
    content: '';
    display: inline-block;
    width: 90px; 
    height: 2px;
    transform: translate(-50%); 
    background-color: var(--color-blue);
    position: absolute;
    left: 50%;
    bottom: -30px;
}

.lineup__list{
    display: flex;
    align-items: center;
    justify-content: space-around;
	flex-wrap: wrap;
    flex-shrink: 0;
    margin-top: 120px;
}
.lineup__list:nth-child(n+1) {
    margin-top: 130px;
}
.lineup__list--reverse{
    flex-direction: row-reverse;
}

.lineup__thumb{
    width: 30%
}

.lineup__category{
    background: #f8f8f8;
    width: 55%;
    padding: 50px 80px;
}

.lineup__major{
    color: var(--color-blue);
    font-size: 20px;
}

.lineup__heading{
    padding: 35px 0;
}

.lineup__title{
    padding-bottom: 15px;
    font-size: 24px;
	line-height: 1.5em;
}

.lineup__tag li{
    display: inline-block;
    background: var(--background-gray);
    padding: 5px 20px;
    border-radius: 100px;
    text-align: center;
    font-size: 12px;
}

.lineup__desctiption{
    font-size: 14px;
    line-height: 35px;
}

.lineup__btn{
    display: inline-block;
    border-radius: 100px;
    background: var(--color-yellow);
    text-align: center;
    width: 40%;
    margin: 50px auto 0;
    padding: 15px;
    font-size: 14px;
}
.lineup__btn:hover{
    background: #e1ac27;
    transition: all ease 0.2s;
}


/*--------------------------------------------------

    list 他学科

--------------------------------------------------*/

.list__inner{
    padding: 100px 75px 60px;
}

.list__contents h2{
    text-align: center;
    padding-bottom: 30px;
    font-size: 30px;
}

.list__list{
    display: flex;
	align-items:center;
	justify-content: center;
	flex-wrap: wrap;
    flex-shrink: 0;
}

.list__list li{
    display: inline-flex;
    align-items: center;
	flex-wrap: wrap;
    width: calc(100% / 5 - 10px);
    margin-bottom: 10px;
    font-size: 12px;
}

.list__link{
    width: 100%;
    display: inline-flex;
    align-items: center;
	flex-wrap: wrap;
    background: var(--background-gray);
    border-radius: 10px;
	margin: 0 10px
}

.list__link:hover{
    opacity: 0.8;
    transition: all ease 0.2s;
}

.list__name{
    padding-left: 20px;
	font-size: 1.2em;
    color: var(--color-blue);
}

.list__thumb{
    width: 60px;
    border-radius: 10px 0 0 10px;
}


/*--------------------------------------------------

    フッター

--------------------------------------------------*/

.footer__inner{
    padding: 60px 20px;
    position: relative;
}

.footer__inner::before{
    content: '';
    display: inline-block;
    width: 180px; 
    height: 2px;
    transform: translate(-50%); 
    background-color: var(--color-blue);
    position: absolute;
    left: 50%;
    top: 0;
}

.footer__contents{
    text-align: center;
}

.footer__logo{
    width: 300px;
    padding-bottom: 30px;
}

.footer__copyright{
    font-size: 14px;
}
