@charset "utf-8";

@media only screen and (max-width: 768px) {
	main,
	main.mypage {
		padding: 0;
	}
	main.mypage .top-content {
		padding-bottom: 40px;
	}
	.wrap {
		width: 95%;
	}
	h2 {
		font-size: 13px;
	}
	h2 span {
		font-size: 24px;
		margin-right: 10px;
	}
	p.login-message {
		margin-bottom: 15px;
		font-size: 13px;
	}
	p.password-msg {
		margin-bottom: 15px;
		font-size: 13px;
	}

	table.login,
	table.email {
		width: 100%;
	}
	table.login tr th,
	table.email tr th {
		width: 25%;
		border-bottom: 5px solid #002855;
		font-size: 13px;
	}
	table.login tr td,
	table.email tr td {
		padding: 4px;
		border-bottom: 5px solid #002855;
		font-size: 13px;
	}
	.session-title {
		margin: 0 10px 20px 10px;
		font-size: 13px;
	}

	/* submit */
	.submit {
		padding: 30px 0;
	}
	.submit li input {
	  width: 100%;
	  border-radius: 30px;
	  font-size: 14px;
	  margin: 0;
	  padding: 0 25px;
	}

	#mypage {
		width: 100%;
		padding: 0 10px;
		text-align: center;
		position: relative;
	}
	#mypage p.mypage-msg {
		font-size: 12px;
		margin: 0 auto 10px;
		padding: 0;
	}
	.mypage-head-line {
		padding: 10px 4px !important;
	}
	main .mypage-msg {
		margin: 10px 0 20px;
	}
	main .mypage-msg a {
		text-decoration: underline;
	}

	/* mypage menu */
	.menu {
		padding: 20px 0;
		margin-bottom: 40px;
	}
	.mypage-menu {
		gap: 20px;
		margin: 0 auto 30px;
	}
	.mypage-menu li {
		width: 48%;
	}
	.mypage-menu li a {
		font-size: 13px;
		padding: 15px 0;
	}
	.mypage-menu li:not(.disabled) a:hover {
		opacity: 1;
	}
	.mypage-menu li div.icon {
		margin: 0 auto;
		padding: 0 7px;
		height: 18vw;
	}

	.mypage-menu li.session div.icon img {
		width: 7vw;
	}
	.mypage-menu li.jukou div.icon img {
		width: 12vw;
	}
	.mypage-menu li.cancel div.icon img {
		width: 5vw;
	}
	.mypage-menu li.download div.icon img {
		width: 7vw;
	}
	.mypage-menu li.disabled div.icon span {
		background-color: #ddd;
	}
	.mypage-menu li div.text {
		width: 100%;
		font-size: 13px;
	}
	.mypage-menu li div.text span {
		display: none;
	}
	
	/* mypage session */
	#mypage-session {
		width: 100%;
		padding: 0;
	}
	.session_menu table.session tr {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.session_menu table.session tr td.time{
		order: 1;	
	}
	.session_menu table.session tr td.code{
		order: 2;	
	}
	.session_menu table.session tr td.title{
		order: 3;	
	}
	.session_menu table.session tr td.speaker{
		order: 4;
		display: flex;
		gap:20px 0;
	}
	table.session tr td.time {
		width: 100%;
		display: inline-flex;
		font-size: 13px;
	}
	table.session tr td.time img {
		margin-right: 5px;
	}
	table.form td div.speaker-container {
	  gap:20px;
	  margin-bottom: 0px;
	}
	table.form td div.info div {
		align-items: center;
		width: 100%;
	}
	table.form td div.info p {
	  font-size: 13px;
	}
	table.form td div.info img {
	  width: 15px;
	  height: auto;
	}
	table.session tr td.code span.code {
		border: none;
	}
	table.session tr td.title {
		font-size: 13px;
	}

	/* session message */
	#mypage-session p.session-msg {
		margin: 0 auto 16px;
		font-size: 12px;
		text-align: center;
		padding: 0 6%;
	}

	/* cancel message */
	#mypage-cancel p.mypage-msg {
		margin: 40px auto;
		font-size: 14px;
		text-align: center;
		padding: 0 6%;
	}
	.cancel-menu {
		gap: 40px;
		margin: 0 auto 30px;
	}
	.cancel-menu li {
		width: 80%;
	}
	.cancel-menu li a {
	  padding:15px 0;
	  font-size: 16px;
	}
	.cancel-menu li a .text {
		font-size: 16px;
	}
	a.download {
		margin: 20px auto 0;
	}
	.no-download {
		max-width: 90%;
	}
}