@charset "utf-8";

@media only screen and (max-width: 768px) {
	header div.title {
		min-width: 100% !important;
		padding-top: 50px;
	}
	header div.title .tagline {
		font-size: 19px;
		margin: 30px auto 0;
	}
	header div.title h1 {
		font-size: 28px;
		margin: 0;
	}
	header div.title .subtitle {
		font-size: 18px;
	}
	header div.title .info {
		font-size: 16px;
		margin: 10px auto 30px;
	}
	header div.title .info span {
		display: block;
		margin: 6px auto 0;
	}
	header div.title .linkbtn {
		width: 33%;
	    right: 3%;
	    bottom: 15%;
	}
	header div.title .linkbtn a {
		font-size: 13px;
		font-weight: bold;
		border: 5px solid transparent;
	    border-image-slice: 1;
	    border-image-source: linear-gradient(90deg, #7855fa, #ff9178);
	    -webkit-box-sizing: border-box;
	    box-sizing: border-box;
	    padding: 5px 0;
	}

	h3 {
		font-size: 22px;
		margin-bottom: 40px;
	}
	h3:before {
		top: 30px;
		width: 140px;
	}
	h3 > span {
		font-size: 14px;
		margin-top: 20px;
	}

	.all-wrap {
		margin-top: 0;
		padding-top: 0;
	}

	/* for fixed nav */
	#greeting::before,
	#outline::before,
	#topics::before,
	#live::before,
	#faq::before {
		height: 0;
		margin-top: 0;
	}

	/* message */
	#message {
		width: 94%;
		padding: 65px 2% 0;
		white-space: normal;
	}
	#message p {
		font-size: 13px;
	}

	/* greeting */
	#greeting {
		width: 100%;
		min-width: 100%;
		margin: 0 auto;
		padding: 40px 15px;
		flex-wrap: wrap;
	}
	#greeting .wrap {
        width: 100%;
        padding: 0 3%;
	}
	#greeting .greeting_movie  {
	    width: 100%;
	     min-height: 250px;
	}
	#greeting .greeting_movie:after {
		display: none;
	}
	#greeting .wrap {
		width: 95%;
		margin: 0 auto;
	}
	#greeting p {
		font-size: 13px;
		line-height: 1.8;
	}

	/* outline */
	#outline {
		background: url(../../images/common/topics_bg.png) no-repeat right top/60%;
	}
	#outline .wrap {
		padding: 30px 0;
	}
	#outline h2 {
		font-size: 20px;
		width: 40%;
		margin: 0 0 60px;
	}
	#outline h2 span {
		font-size: 16px;
	}
	#outline table {
		width: 96%;
		margin: 0 auto 36px;
	}
	#outline table tr th {
		font-size: 13px;
		border-bottom: 1px solid #333;
	}
	#outline table tr td {
		font-size: 14px;
		border-bottom: 1px solid #333;
	}
	#outline table tr th {
		width: 20%;
		min-width: 62px;
		text-align: left;
	}
	#outline table tr td {
		padding: 8px 0;
	}
	#outline table tr td div {
		border-left: 2px solid #c1d42f;
		padding: 0 10px;
	}
	#outline table tr td div p.address {
		font-size: 10px;
		padding: 0;
		margin: 12px 0 0 0;
	}
	.sns_icon {
		margin: 20px auto 0;
		width: 100%;
		display: flex;
		justify-content: center;
	}
	.sns_icon a img{
		width: 50px;
		margin-right: 10px;
	}

	/* topics */
	#topics {
		background: url(../../images/common/topics_bg.png) no-repeat right top/60%;
	}
	#topics .wrap {
		padding: 30px 0;
	}
	#topics h2 {
		font-size: 20px;
		width: 40%;
		margin: 0px 0px 60px;
	}
	#topics h2 span {
		font-size: 16px;
	}
	ul.topics {
		gap: 40px;
	} 
	ul.topics li {
		width: 40%;
		height: 250px;
		margin: 0;
	}
	ul.topics li .description {
		font-size: 10px;
		padding: 0 10px;
		justify-content: center;
		top: 0;
	}
	ul.topics li .description .topic_title {
		font-size: 16px;
		margin: 20px 0 10px;
	}
	ul.topics li .thumbnail img {
		height: 250px;
		object-fit: cover;
	}

	/* live */
	#program {
		padding: 40px 10px;
		min-width: 90%;
	}
	#program .wrap .title-container {
		padding: 40px 0 40px;
		min-width: 90%;
	}

	/* live tab-menu */
	#program .tab-menu-wrapper {
		overflow-x: auto;
	}
	#program .tab-menu-container {
		margin: 0;
		justify-content: flex-start;
		overflow: visible;
		width: 100%;
	}
	#program .tab-menu-container li {
		min-width: 40%;
		flex-shrink: 0;
		flex-grow: 2;
	}
	#program .tab-menu-container li a:hover {
		border: 2px solid #fff;
	}
	#program .tab-menu-container li.selected a {
		border: 2px solid #555;
	}

	/* faq */
	#faq .wrap {
		width: 94%;
		padding: 40px 0 30px;
	}
	#faq .faq_list {
		padding: 0;
	}
	#faq .faq_list .answer {
		align-items: baseline;
	}
	#faq .faq_list .faq_item {
		padding: 0;
	}
	#faq .faq_list .faq_item p {
		font-size: 16px;
	}

	/* register */
	div.register {
		padding: 50px 0;
	}
	div.register a.box-button {
		width: 60%;
		font-size: 22px;
		padding: 12px 0;
	}
	/* sponsor */
	#sponsor  {
		background: url(../../images/common/sponsor_bg.png) no-repeat right top/60%;
	}
	#sponsor  .wrap {
		padding: 30px 0;
		width: 100%;
	}
	#sponsor  h2 {
		font-size: 20px;
		width: 40%;
		margin: 0 0 60px;
	}
	#sponsor  h2 span {
		font-size: 16px;
	}
	#sponsor .inner {
		padding: 20px;
		width: 95%;
		margin: 0 auto;
	}
	#sponsor .inner h3 {
		padding: 10px 15px;
		font-size: 18px;
	}
	#sponsor .inner h3::before,
	#sponsor .inner h3::after {
	  background-color: var(--purple);
	  content: "";
	  flex-grow: 1;
	  height: 2px;
	}
	#sponsor .inner h3::before {
	  margin-right: 10px;
	  width: auto;
	}
	#sponsor .inner h3::after {
	  margin-left: 10px;
	  width: auto;
	}
	#sponsor .inner p {
		margin: 10px 0 0;
		font-size: 13px;
	}
	#sponsor .inner ul.logo_list {
		margin: 30px 0;
		gap: 40px 80px;
	}
	#sponsor .inner ul.logo_list li a {
		font-size: 12px;
	}
	#sponsor .inner ul.logo_list.platinum {
		gap: 80px;
	}
	#sponsor .inner ul.logo_list.gold {
		gap: 40px;
		padding: 0;
	}
	#sponsor .inner ul.logo_list.silver {
		gap: 40px;
	}
	#sponsor .inner ul.logo_list.bronze {
		gap: 30px;
		padding: 0;
	}
	#sponsor .inner ul.logo_list.eco {
		gap: 30px;
		padding: 0;
	}
	#sponsor .inner ul.logo_list.ai {
		gap: 40px;
	}
	#sponsor .inner ul.logo_list.cloudnative {
		gap: 40px;;
	}
	#sponsor .inner ul.logo_list.service_provider {
		gap: 40px;
	}
	#sponsor .inner ul.logo_list.distributor {
		gap: 40px;
	}
	#sponsor .inner ul.logo_list.platinum li.two_logo {
		width: 100%!important;
		gap: 15px;
	}
	#sponsor .inner ul.logo_list.gold li.two_logo {
		width: 85%!important;
		gap: 15px;
		margin-left:0;
	}
	#sponsor .inner ul.logo_list.silver li.two_logo {
		width: 215px!important;
		gap: 15px;
	}
	#sponsor .inner ul.logo_list.platinum li.hpe_area {
	    width: 100%;
	}
	#sponsor .inner ul.logo_list li {
		width: 48%;
	}
	#sponsor .inner ul.logo_list.platinum li  {
		width: 70%;
		padding: 0;
	}

	#sponsor .inner ul.logo_list.gold li {
		width: 43%;
	}
	#sponsor .inner ul.logo_list.silver  li{
		width: 35%;
	}
	#sponsor .inner ul.logo_list.bronze li{
		width: 45%;
	}
	#sponsor .inner ul.logo_list.ai li{
		width: 35%;
	}
	#sponsor .inner ul.logo_list.cloudnative li{
		width: 35%;
	}
	#sponsor .inner ul.logo_list.service_provider li{
		width: 35%;
	}
	#sponsor .inner ul.logo_list.distributor li{
		width: 43%;
	}
	#sponsor .inner ul.logo_list li {
		width: 40%;
		gap: 20px 0;
	}
	#sponsor .inner ul.logo_list li.dell{
		width: 65%;
	}
	#sponsor .inner ul.logo_list li.uniadex{
		width: 50%;
	}
	#sponsor .inner ul.logo_list li.google{
		width: 59%;
	}
	#sponsor .inner ul.logo_list li img.hpe{
		width: 43%;
	}
	#sponsor .inner ul.logo_list li.amd{
		margin-left: 0;
	}
	#sponsor .inner ul.logo_list li img.nec_feelding {
	  width: 70%;
	}
	#sponsor .inner ul.logo_list li img.nec_feelding {
		width: 90%;
		margin-left: 26px;
	}
	#sponsor .inner ul.logo_list li img.nec {
		width: 110%;
        margin-left: -31px;
	}
}

@media only screen and (max-width: 480px) {
		header div.title .linkbtn {
			width: 33%;
		    right: 3%;
		    bottom: 9%;
		}
		header div.title .linkbtn a {
			font-size: 12px;
			font-weight: bold;
			border: 5px solid transparent;
		    border-image-slice: 1;
		    border-image-source: linear-gradient(90deg, #7855fa, #ff9178);
		    -webkit-box-sizing: border-box;
		    box-sizing: border-box;
		    padding: 5px 0;
		}
}
