@media screen and (min-width: 1280px) {
	.item-list {
	    width: 700px;
        margin: 0 50px;
	}

    #carousel img {
        height: 352px;
        width: 700px;
    }
}

@media screen and (max-width: 1279px) {
    /******************************** for main **************************************/
    #top-login-bar {
        padding: 0 0.5rem 0 2rem;
    }

    #top-login-bar div {
        display: none !important;
    }

	#top-navigation-bar {
        flex-flow: column nowrap;
        align-items: stretch;

        padding: 0;
    }

    #top-navigation-bar > div {
        justify-content: center !important;
    }

    #top-navigation-bar > div:first-child span:nth-child(1) {
        display: none;
    }

    #top-navigation-bar > div:first-child span:nth-child(2) {
        display: inline;
    }

    #top-navigation-bar > div:first-child {
        position: absolute;
        top: 0px;
        

        color: #f2f2f2;

        height: 60px;
        width: 100%;

        padding: 0;
    }

    #top-navigation-bar > div:first-child img {
        height: 30px;
    }

    #top-navigation-bar > div:first-child span:last-child {
        font-size: 1.25rem;

        margin-left: 1rem;
    }

    #top-navigation-bar ul.wp-menu > li {
        padding: 0 0.75rem;

        margin: 0 !important;
    }

    .list-container {
        flex-flow: column;

        background-color: transparent !important;

        padding: 0;
    }

    .item-list {
        width: auto;

        flex: 1 0 auto;

        padding: 2rem 10%;
        margin: 0;
    }

    #carousel-container {
        padding: 0;
    }

    .item-list .list-head .title {
        font-size: 1.2rem;
    }
    
    .item-list .extra-list-head {
        padding: 0;
    }

    .item-list .list-body {
        padding: 0.5rem 0;
    }
    
    .list-container .item-list:first-child {
        background-color: #f0f0f0;
    }
    
    #carousel img {
        width: 100% !important;
    }

    #training-parade {
        background-color: #f0f0f0;
        padding: 3rem 5%;
        width: 90%;
    }

    #training-parade li {
        height: 160px;
    }

    #training-parade li a span {
        font-size: 1rem;
    }

    #footer > div:first-child {
        display: flex;
        flex-flow: column nowrap;
    }

    /******************************** for listcolumn **************************************/
    #list-wrapper .wp_article_list {
        width: auto;
        margin: 4rem 10% 0.5rem;
    }
    
    #wp_paging_w1205 {
        margin: 0 auto 6rem;
    }

    .wp_paging {
        display: flex;
        justify-content: center;

        width: 100%;
    }

    li.pages_count,
    li.page_jump {
        display: none;
    }

    /******************************** for displayinfo **************************************/
    #info-wrapper {
        min-width: auto;

        margin: 2rem 10% !important;
    }

    #info-wrapper p img {
        width: 100%;
    }

    #info-wrapper p img.original {
        width: auto;
    }

    #img-container {
        height: auto !important;
    }
    
    #img-container .pic-intro {
        padding: 4rem 2rem 2rem !important;
    }

    #img-container .pic-intro .content {
        font-size: 1.5rem !important;
    }

    .text {
        width: auto !important;
        margin: 2rem 10% !important;
    }

    .pd-combo img {
        width: 100%;
    }

    .pd-combo .description {
        display: none;
    }
    
    .pd-combo .description div {
        margin-left: 20% !important;
    }

    .pd-combo .description div:first-child {
        margin-left: 20% !important;
        margin-top: 10% !important;
    }
}

/******************** this break point (<=767px) is configured specifically for ipad-mini, which is 768 pixels wide  **********************/
@media screen and (max-width: 767px) {
    #top-login-bar {
        height: 50px;
    }

    #mobile-navi-bar {
        display: flex;
    }

    #top-navigation-bar {
        height: auto;
    }

    #top-navigation-bar > div:first-child {
        height: 50px;
    }
    
    #top-navigation-bar > div:first-child img {
        height: 24px;

        position: relative;
        top: 2px;
    }

    #top-navigation-bar > div:first-child span:last-child {
        font-size: 1rem !important;
    }

    #top-navigation-bar > div:last-child > div:first-child {
        width: 100% !important;
    }

    #top-navigation-bar ul.wp-menu {
        overflow: hidden;

        flex-flow: column nowrap;

        height: 0px;
    }
    
    #top-navigation-bar ul.wp-menu li {
        margin: 0 !important;
        padding: 0.65rem 0 0.5rem 2.5rem !important;

        background-color: #f0f0f0 !important;
        
        border-bottom: 1px solid #fff !important;
    }

    #top-navigation-bar ul.wp-menu li a {
        width: 100% !important;
        height: 100% !important;
    }

    #top-navigation-bar ul.wp-menu li a span {
        font-weight: normal !important;
    }

    #top-navigation-bar ul.wp-menu > li.i3 {
        border-bottom: none !important;

        padding: 0 !important;
    }
    
    #top-navigation-bar ul.wp-menu > li.i3 > a {
        width: 0 !important;
    }

    #top-navigation-bar ul.wp-menu > li.i3 > a span {
        display: none;
    }
    
    #top-navigation-bar ul.sub-menu {
        display: flex;
        flex-flow: column nowrap !important;
        
        position: static;
        
        border: none;
        
        background-color: transparent;
        
        box-shadow: none !important;

        width: 100% !important;

        top: 0;
    }
    
    #top-navigation-bar ul.sub-menu li {
        padding: 0.65rem 0 0.5rem 2.5rem !important;
        
        width: auto !important;

        transition: unset;
    }
    
    #top-navigation-bar ul.sub-menu li a {
        padding: 0 !important;

        text-align: left;
    }
    
    #top-navigation-bar ul.sub-menu li a span {
        display: none;
    }

    #carousel-container {
        height: 220px;
    }

    #carousel > div:first-child {
        height: 100% !important;
    }

    #training-parade {
        width: 80%;
        
        padding: 3rem 10%;

        flex-flow: column nowrap !important;
    }

    #training-parade li {
        height: auto !important;
    }

    #training-parade li a span {
        width: auto !important;

        line-height: 2.5rem;
    }

    .pd-combo {
        margin: 2rem 0 !important;

        height: 260px !important;
    }

    #list-wrapper .wp_article_list {
        margin: 2rem 10% 0.5rem;
    }
}

