/* ========responsive for all page style======== */
@media only screen and (max-width: 1024px) {
	   header .container {
					padding: 0;
				}
				.header__inner {
					padding: 0 10px;
				}
    .header__logo h1 {
        font-size: 24px;
    }
    .header__inner {
        height: 120px;
        position: relative;
    }
    .wrap__nav {
        position: absolute;
        z-index: 1000;
        width: 100%;
        height: auto;
        top: 119px;
        left: 0;
        right: 0px;
        background-color: #fff;
        display: none;
        box-shadow: 0px 2px 6px 0px rgb(0, 0, 0, 25%);
    }
    .nav__inner {
        display: flex;
        flex-direction: column-reverse;
    }
    .header__menu.--main {
					display: block;
					margin: 0;
					padding: 0;
					list-style: none;
        flex-direction: column;
        row-gap: 0px;
        border-bottom: 1px solid #c2c2c2;
								background-color: #6a11cb;
    }
				.header__menu.--main li {
					margin: 0;
					padding:0;
					border-bottom: 1px solid #FFF;
				}
				.header__menu.--main .menu__item a {
					padding: 10px;
					color: #FFF;
				}
				.header__menu.--main .menu__item a:hover {
					color: #FFF;
				}
				.menu__item a {
					display: block;
					text-align: center;
				}
				.menu__item a img {
					display: inline-block;
					padding-right: 4px;
					vertical-align: 4px;
				}
				.header__menu .menu__item a,
				.header__menu .menu__item a:hover {
					margin: 0;
					padding: 10px 20px;
					color: #000;
				}
				.menu__item a span:before {
					display: none;
				}
    .header__menu {
        padding-bottom: 10px;
        padding-top: 10px;
    }
    .header__menu.--main .menu__item {
        width: 100%;
    }
    .header__menu {
        justify-content: center;
    }
    .menu__item a {
        justify-content: center;
    }
    .hamburger {
        display: block;
        opacity: 1;
        transition: opacity .4s;
        transition-timing-function: cubic-bezier(.165, .84, .44, 1);
        cursor: pointer;
    }
    .hamburger .__inner {
        display: flex;
        align-items: center;
        gap: 12px;
    }
    .hamburger__text {
        position: relative;
    }
    .hamburger__tit,
    .hamburger__tit-close {
        font-size: 12px;
    }
    .hamburger__tit {
        letter-spacing: 0em;
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0);
        transition: -webkit-clip-path .4s;
        transition: clip-path .4s;
        transition: clip-path .4s,-webkit-clip-path .4s;
        transition-timing-function: cubic-bezier(.5, 1, .89, 1);
    }
    .hamburger__tit-close  {
        position: absolute;
        top: 0;
        -webkit-clip-path: inset(100% 0 0 0);
        clip-path: inset(100% 0 0 0);
        transition: -webkit-clip-path .4s;
        transition: clip-path .4s;
        transition: clip-path .4s,-webkit-clip-path .4s;
        transition-timing-function: cubic-bezier(.5, 1, .89, 1);
    }
    .hamburger.close .hamburger__tit-close {
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0);
    }
    .hamburger.close .hamburger__tit {
        -webkit-clip-path: inset(0 0 100% 0);
        clip-path: inset(0 0 100% 0);
    }
    .hamburger__chunk {
        position: relative;
        width: 40px;
        height: 40px;
        background-color: #fff;
        border-radius: 50%;
        border: 1px solid #eaeaea;
    }
    .hamburger__chunk:before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        transform-origin: center;
        transform: scale(0);
        border-radius: 50%;
        background: #6a11cb;
        transition: transform .3s cubic-bezier(.45, 0, .55, 1);
    }
    .hamburger__chunk__bar {
        background-color: #6a11cb;
        height: 2px;
        display: inline-block;
        transition: transform .3s,opacity .3s,margin-left .3s,margin-bottom .3s,background-color .3s;
        transition-timing-function: cubic-bezier(.5, 1, .89, 1);
        position: absolute;
        top: calc(50% - 1px);
        width: 12px;
        left: calc(50% - 6px);
    }
    .hamburger__chunk__bar1 {
        display: block;
        margin-left: 5px;
        margin-top: -6px;
    }
    .hamburger__chunk__bar2 {
        margin-left: 1px;
    }
    .hamburger__chunk__bar3 {
        margin-left: -4px;
        margin-top: 6px;
    }
    .hamburger:hover .__inner .hamburger__chunk::before {
        transform: scale(1);
    }
    .hamburger:hover .__inner .hamburger__chunk .hamburger__chunk__bar {
        background-color: #fff;
    }
    .hamburger.close .hamburger__chunk__bar {
        margin-left: 0px;
    }
    .hamburger.close .hamburger__chunk__bar1 {
        transform: translate3d(0,7px,0) rotate(45deg);
    }
    .hamburger.close .hamburger__chunk__bar2 {
        opacity: 0;
    }
    .hamburger.close .hamburger__chunk__bar3 {
        transform: translate3d(0,-5px,0) rotate(-45deg);
    }
    /* end menu mobile */

    .program__img {
        padding-left: 0px;
        padding-right: 0px;
    }
    .program__img.d-flex {
					display: block;
				}
    .program__img.d-flex div {
					margin-bottom: 20px;
				}
    .mission__img {
        padding-left: 34px;
    }
    .hero-home h2 {
        font-size: 36px;
    }
    .curriculum__img {
        padding-right: 40px;
    }
    .curriculum__img::after {
        width: 80%;
    }
    .working-group__item {
        width: 47%;
    }
				.program__inner p {
					text-align: left;
				}
				.wrap-registration .__inner p {
					text-align: left;
				}
				
				.footer__inner {
					display: block;
				}
				
				.footer__menu {
					padding: 30px 0 0;
				}
				
				.footer__menu ul {
					flex-wrap: wrap;
					gap: 0;
				}
				
				.footer__menu ul li {
					width: 50%;
				}
}

@media only screen and (max-width: 768px) {
	   .pc {
					display: none;
				}
				
				.sp {
					display: block;
				}
				
				.header__logo {
					padding-right: 10px;
				}
				
    .btn {
        font-size: 16px;
    }
    .section-pd {
        padding: 60px 0px;
    }
    .hero-home h2 {
        font-size: 26px;
    }
    .header__logo h1 {
        font-size: 18px;
    } 
    .mission__inner {
        flex-wrap: wrap;
    }
    .mission__content {
        width: 100%;
        padding-bottom: 45px;
    }
    .mission__content h3,
    .curriculum__text h3 {
        font-size: 20px;
        line-height: 30px;
    }
    .wrap-registration .__inner {
        padding: 0px;
    } 
    .wrap-registration .__inner p,
    .program__inner p,
    .mission__content p,
    .curriculum__text p,
    .overview p {
        font-size: 16px;
        line-height: 26px;
    }
    .wrap-registration .__inner .btn {
        font-size: 16px;
    }
    .program__inner {
        padding: 0px;
    }
    .section__title h2 {
        font-size: 25px;
    }
    .curriculum .__inner {
        flex-direction: column-reverse;
        row-gap: 40px;
    }
    .curriculum__img {
        width: 100%;
        max-width: 600px;
    }
    .curriculum__text {
        width: 100%;
    }
    .news__content {
        padding: 0px;
    }
    .new__item .__date span {
        font-size: 14px;
    }
    .new__item h4 a {
        font-size: 16px;
        line-height: 26px;
    }
    #back-to-top {
        width: 60px;
        height: 60px;
    }
    #back-to-top svg {
        max-width: 26px;
    }
    .banner-page {
        height: 200px;
    }
    .working-group__item {
        width: 100%;
    }
    .mission__img {
        padding-left: 0px;
        padding-right: 50px;
    }
    .program__content::before {
        width: 300px;
        height: 50px;
    }
    .mission__img::after {
        width: 50px;
        height: 310px;
        right: 0px;
        top: unset;
        bottom: 0px;
    }
    .working-group__item {
        padding: 12px 24px;
    }
				.report {
	     padding: 20px 0;
					}
				
				.newsDetail {
					width: 100%;
				}
				
				.newsDetail h3 {
					line-height: 1.4;
				}
				.newsDetail .cont {
					padding: 40px 20px 1px;
				}


.indexIntro {
	padding: 0;
	font-size: 16px;
	line-height: 1.6;
}

.indexIntro p {
	margin: 0 0 30px;
}

.indexIntro p + h2 {
	margin: 60px 0 20px;
}

.indexIntro p.lead {
	font-size: 18px;
}

.indexIntro p.atten {
	font-size: 16px;
}

.indexIntro h2 {
	position: relative;
	margin: 0 0 20px;
	padding: 8px;
	font-weight: 500;
	font-size: 20px;
	background-color: #efeff5;
	line-height: 1.4;
}

.indexIntro h2:before {
	position: absolute;
	width: 20px;
	height: 20px;
	content: "";
	top: -5px;
	left: -15px;
	background-color: #6a11cb;
	transform: rotate(-30deg);
}

.indexIntro ol {
	margin: 0 40px 60px !important;
}

.indexIntro ol li {
	margin: 0 0 10px;
	list-style-type: decimal !important;
}

.indexIntro dl {
	display: block;
	flex-wrap: unset;
	margin: 0 0 60px;
}

.indexIntro dl dt {
	width: 100%;
	padding: 8px 6px;
	background-color: #efeff5;
	border-bottom: 1px solid #FFF;
	position: relative;
}

.indexIntro dl dt:before {
	position: absolute;
	top: calc( 50% - 10px );
	left: 0;
	width: 1px;
	height: 20px;
	background-color: #6a11cb;
	content: "";
}

.indexIntro dl dd {
	width: 100%;
	margin: 0 0 10px;
	padding: 8px 6px 8px 16px;
	border-bottom: 1px solid #CCC;
}

.indexIntro ul {
	margin: 0 40px 60px !important;
}

.indexIntro ul li {
	margin: 0 0 20px;
	list-style: disc !important;
}

.indexIntro ul li ul {
	margin: 10px 0 0 40px !important;
}

/*add202309*/
.indexIntro ul.ninteiLogo {
margin: 0 0 60px !important;
}

.ninteiLogo li img {
width: 40%;
margin: 0 10px;
}


}

@media only screen and (max-width: 479px) {
    .program__img {
        flex-wrap: wrap;
        row-gap: 24px;
    }
    .program__img img {
        width: 100%;
    }
    .curriculum__img {
        padding-right: 20px;
    }
    .curriculum__img::after {
        left: 40px;
        width: 90%;
    }
    .mission__img::after {
        width: 40px;
        height: 210px;
    }
    .mission__img img {
        min-height: 210px;
        object-fit: cover;
    }
    .program__content::before {
        width: 100%;
    }
    .footer__menu ul {
        justify-content: center;
    }
    .wrap-registration .__inner .btn {
        max-width: 100%;
    }
}