@charset "utf-8";
/* CSS Document */

/*================ common ================*/

body {
	font-family:'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
	font-size: 1rem;
	line-height: 1.5;
	color: #333333;
	background-color: #ffffff;
	height: 100%;
	margin: 0;
}
ul,ol {
    list-style: none;
}
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

/*---------- btn ----------*/
.btn-wrap {
	padding: 50px 0;
	text-align: center;
	margin: 0 auto;
}
.btn-wrap a {
    display: block;
    background-color: #ee0000;
    text-align: center;
    width: 56%;
    margin: 20px auto;
    padding: 14px 0 12px;
    font-size: 1.75rem;
    border-radius: 50px;
    color: #ffffff;
    text-decoration: none;
    font-weight: bold;
    transition: 0.3s;
}	
.btn-wrap p {
    font-size:  1.5rem;
    line-height: 1;
}
.btn-wrap p span {
    font-size:  0.9rem;
}
.btn_text-arrow {
	display: flex;
    justify-content: center;
	align-items: center;
    margin: 0;
    padding: 0;
}
.btn_text-arrow li img {
	margin-left: 20px;
}
.btn-wrap a:hover,
.btn-wrap-head a:hover {
    background-color: #fbaa0f;
    transform: translateY(2px);
}
.bg-gray {
    background-color: #cccccc;
}
.btn-close {
    background: #989898;
    text-align: center;
    display: block;
    width: 56%;
    margin: 20px auto;
    padding: 12px 0 10px;
    font-size: 1.75rem;
    border-radius: 50px;
	color: #ffffff;
	text-decoration: none;
	font-weight: bold;
}


/*================ header ================*/

.title-wrap {
	background: url("../img/bg_main.png") center top repeat-x;
	width: 100%;
	background-size: cover;
}
.sp-logo {
    display: none;
}
.title-text-area {
	max-width: 1040px;
	width: 100%;
	margin: 0 auto;
	padding: 40px 0;
	display: flex;
	justify-content: flex-start;
}
.title-left-side {
	width: 60%;
	vertical-align: top;
	margin-left:10px; 
}
.title-left-side .h1-title {
    margin: 0;
    font-size: 3rem;
    line-height: 1.2;
    font-weight: bold;
}
.title-left-side .h1-title ul {
    display: flex;
     justify-content: flex-start;
     padding: 0;
     margin: 0;
}
.title-left-side .h1-title ul li {
    color: #ffffff;
    font-size: 2rem;
}
.title-left-side .h1-title p {
    /*margin-top: 10px;*/
	color: #cc0000;
	font-size: 3.5rem;
}
.title-left-side ul.label {
    background:	#000000;
    width: 90%;
    color: #FFF;
    display: flex;
    justify-content: center;
    padding: 9px 0 6px;
    line-height: 1.2;
    margin: 20px 0 0;
}
.title-left-side ul.label li {
    font-size:1.7rem;
}
.title-left-side ul.label li.small {
    font-size: 0.75rem;
    padding-left: 10px;
}
.title-left-side .title-date {
    color: #ffffff;
    font-size: 2rem;
    margin: 0;
     font-weight: bold;
}
.title-left-side ul.title-date {
    display: flex;
    justify-content: center;
    align-items: center;
}
.title-left-side ul.title-date li:nth-child(2) {
    font-size: 1.5rem;
    line-height: 1.2;
}

.bgblack{
	background: #000; 
	width: 90%;
}

.btn-wrap-head a {
    background: #ed0000;;
    text-align: center;
    display: block;
    width: 90%;
    margin: 20px 0;
    padding: 12px 0 10px;
    font-size: 1.75rem;
    border-radius: 50px;
	color: #ffffff;
	text-decoration: none;
	font-weight: bold;
    transition: 0.3s;
}
.btn-close-head {
    background: #989898;
    text-align: center;
    display: block;
    width: 90%;
    margin: 20px 0;
    padding: 12px 0 10px;
    font-size: 1.75rem;
    border-radius: 50px;
	color: #ffffff;
	text-decoration: none;
	font-weight: bold;
}
.title-right-side {
	width: 40%;
	text-align: right;
}
.title-right-side a {
    display: block;
    /*background: #FFFFFF;*/
    width: 200px;
    float: right;
    padding: 5px 5px 0;
    line-height: 1;
}
.title-right-side img {
    display: initial;
}


/*================ main ================*/

/*---------- read ----------*/
.read-wrap{
	max-width: 1000px;
	width: 100%;
	margin: 50px auto;
	padding: 0 20px;
}

/*---------- moderator ----------*/
.moderator-wrap,
.program-wrap {
    background-color: #000000;
    padding: 50px 0;
}
.moderator-wrap h2,
.program-wrap h2,
.summary-wrap h2{
    font-size: 2rem;
    text-align: center;
	color: #FFF;
}

.helpdesk-wrap h2{
   font-size: 2rem;
   text-align: center;
}

.moderator-wrap .red-box,
.program-wrap .red-box,
.helpdesk-wrap .red-box {
    margin: 0 auto 30px;
    width: 100px;
    height: 6px;
    background: linear-gradient(to bottom, #cc0000, #cc0000);
}

.summary-wrap .red-box{
    margin: 0 auto 30px;
    width: 100px;
    height: 6px;
    background: linear-gradient(to bottom, #FFFFFF, #FFFFFF);
}




.moderator-wrap h3 {
    font-size: 1.6rem;
    text-align: center;
    max-width: 1040px;
    margin: 0px auto;
    background-color: #cc0000;
    padding: 9px 0 6px;
	color: #FFFF;
}
.moderator-wrap .moderator-list {
    max-width: 1040px;
    margin: 0px auto 6px;
    background-color: #ffffff;
}
.moderator-list ul {
    max-width: 1040px;
    margin: 0 auto;
    padding: 30px;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
}
.moderator-list .other-list {
    border-top: 2px solid #e2e7e8;
}
.moderator-list ul .img-area {
    width: 21%;
    margin-right: 30px;
}
.moderator-list ul .prof-area {
    width: 76%;
    font-size: 0.9rem;
}
.prof-area .emph-txt {
    font-size: 1rem;
    font-weight: bold;
}
.prof-area .name {
    font-size: 1.8rem;
    font-weight: bold;
    padding: 4px 0 8px;
}
.prof-area .prof {
    line-height: 1.6;
}
.facilitator-list ul .img-area {
    width: 16%;
}
.facilitator-list ul .prof-area {
    width: 82%;
}

/*---------- program ----------*/
.program-wrap .team-box {
    position: relative;
    box-sizing: border-box;
    max-width: 1040px;
    margin: 0px auto 14px;
    background: #eaeeef;
}
.program-wrap .team-box table {
      border-collapse: collapse;
      width: 100%;
      line-height: 1.5;
}	  
.program-wrap .team-box th {
      padding: 30px 0;
      border-top: solid 2px #f6f6f6;
      width: 18%;
      background-color: #cc0000;
      vertical-align: middle;
      text-align: center;
      font-style: normal;
      font-weight: bold;
	  color: #FFF;
}
.program-wrap .team-box .program-last {
      padding: 0;
}  
.program-wrap .team-box td {
      overflow: hidden;
      padding: 20px 20px;
      border-top: solid 2px #f6f6f6;
      background-color: #FFFFFF;
      text-align: left;
      vertical-align: top;
      word-break: break-all;
      word-wrap: break-word;
      font-feature-settings: "palt";
}
.program-wrap .team-box td h3 {
     color: #cc0000;
     padding-bottom: 16px;
}	
.program-wrap .team-box td p {
     font-size: 0.9rem;
}
.program-wrap .team-box td .program-name {
     font-size: 1rem;
     font-weight: bold;
}
.program-wrap .team-box td .session-list {
     padding-top: 6px;
}
.program-wrap .caution-txt {
     font-size: 0.8rem;
     max-width: 1040px;
     margin: 0 auto;
     text-align: right;
	 color: #FFFFFF;
}

/*---------- summary ----------*/
.summary-wrap {
	/*background: url("../img/bg_summary.png") left top no-repeat;*/
	background: #cc0000;
	/*background-size: cover;*/
	margin: 0 0 30px;
    padding: 50px 0;
	width: 100%;
    color: #ffffff;
}
.summary-wrap .summary-area {
	max-width: 800px;
    margin: 0 auto;
}
.summary-wrap .summary-area .summary-text {
    margin-bottom: 14px;
}
.summary-wrap .summary-area .summary-text dt {
	background-color: #000000;
    border-radius: 7px;
    padding: 8px 0;
    margin: 0 16px 8px 0;
    width: 10%;
    text-align: center;
    vertical-align: middle;
    float: left;
    clear: left;
}
.summary-wrap .summary-area .summary-text dd {
    float: left;
    margin-left: 1rem;
    padding: 8px 0;
    margin-bottom: 8px;
	border-bottom: 1px solid #000;

}
.summary-wrap .summary-area .summary-text dd span,
.summary-wrap .summary-area p {
    font-size: 0.8rem;
}
.summary-wrap .summary-area p {
    margin-bottom: 6px;
}

/*---------- helpdesk ----------*/
.helpdesk-wrap{
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	padding: 20px 0 40px;
}

.helpdesk-wrap .helpdesk-text {
    max-width: 940px;
	margin: 0 auto;
    text-align: center;
    font-size: 1.1rem;
}
.helpdesk-wrap .helpdesk-text h4{
    font-weight: normal;
}
.helpdesk-wrap .mail-link a{
    display: block;
    padding: 16px 10px;
    text-align: center;
	text-decoration: none;
    color: #ee0000;
	border: 1px solid #ee0000;
	width: 60%;
	margin: 10px auto 0;
}
.helpdesk-wrap .mail-link a:hover {
    background-color: #f6f6f6;
}
.helpdesk-wrap .mail-link a img{
    display: inline;
    vertical-align: middle;
    padding-right: 10px;
}	


/*================ footer ================*/

footer {
    color: #ffffff;
    text-align: center;
    background-color: #000000;
    padding: 4px 0;
}






/* @media ================================================================*/

@media screen and (max-width: 896px) {

.title-left-side ul.label {
	padding: 10px;
	font-size: 1.5rem;
}
.title-left-side ul.title-date {
	display: block;
}
.title-right-side {
	width: 30%;
	text-align: right;
}
.title-left-side {
	width:70%;
}
.title-left-side .h1-title ul li:nth-child(2) {
	font-size: 4rem;
}
.moderator-wrap h3,
.moderator-wrap .moderator-list,
.program-wrap .team-box,
.summary-wrap .summary-area {
    width: 94%;
}
}/* end */


@media screen and (max-width: 768px) {

.sp-logo {
	display: block;
	max-width: 148px;
	width: 30%;
    text-align: right;
    float: right;
    overflow: hidden;
    padding: 5px;
}
.sp-logo a{
	display: block;

	padding: 5px;
}
.btn-wrap-head a {
    margin: 0 auto;
}
.btn-close-head {
    margin: 10px auto;    
}
.btn-wrap a {
    width: 80%;
}
.btn-close {
    width: 80%;  
}
.title-right-side{display: none ;}
.title-left-side{ width:  90% ; margin: 0 auto}
.title-left-side ul.label{
	display: flex;
	text-align: left;
	width: 100%;
}
.title-left-side ul.label li.small{
	font-size: 1rem;
}
.title-left-side ul.title-date{
	display: flex;
	justify-content: center;
}
.title-left-side a img{
	width: 100%;
	margin: 0 auto;
}
.title-left-side .h1-title{
	font-size: 4rem;
}
.title-left-side .h1-title ul li:first-child {
	font-size: 2.75rem;
    margin: 0 auto;

}
.title-left-side .h1-title ul li:first-child span{
	font-size: 2rem;
}
.title-left-side .h1-title ul li:nth-child(2){
	font-size: 5rem;
}
.summary-wrap .summary-area .summary-text dd {
    float: none;
}
}/* end */


@media screen and (max-width: 590px) {

.title-left-side .h1-title p{font-size: 2.5rem;}

.title-text-area {
    padding: 20px 0 10px;
}
.title-left-side{
	width: 96%;
}
.title-left-side a{
	line-height: 1.2;
	margin: 20px auto 40px;
}
.title-left-side ul.label{
	text-align: center;
	padding: 10px;
	font-size: 1.25rem;
}
.title-left-side ul.label li {
    font-size: 1.25rem;
}
.title-left-side ul.label li.small {
    font-size: 0.75rem;
}
.title-left-side ul.title-date {
	display: block;
	font-size: 1.5rem;
	text-align: center;
}
.title-left-side ul.title-date li:nth-child(2) {
    font-size: 1.25rem;
    line-height: 1.2;
}
.title-left-side .h1-title ul li:first-child {
	font-size: 1.75rem;
}
.title-left-side .h1-title ul li:first-child span{
	font-size: 1rem;
}
.title-left-side .h1-title ul li:nth-child(2){
	font-size: 2.75rem;
}
/* btn */
.btn-wrap{
	padding: 30px 0;
}
.btn-wrap a {
	width: 96%;
}
.btn-wrap a img{
	margin: 0;
	padding: 0;
}
.btn-wrap p {
	font-size: 1rem;
}
.btn-wrap p span {
    display: block;
    margin-top: 6px;
}
.btn_text-arrow{
	align-items: center;
}
.btn_text-arrow li:first-child {
	width: 79%;
	font-size: 1.2rem;
	line-height: 1.2;
}
.btn-close-head {
	font-size: 1.2rem;
	line-height: 1.2;
}
.btn-close {
    width: 96%;
    font-size: 1.2rem;
}
/* read */
.read-wrap {
    margin: 40px auto;
}
/* moderator */
.moderator-wrap h2,
.program-wrap h2,
.summary-wrap h2,
.helpdesk-wrap h2 {
    font-size: 1.9rem;
}
.moderator-wrap, .program-wrap {
    padding: 30px 0;
}  
.moderator-list ul {
    display: block;
}
.moderator-list ul .img-area {
    width: 56%;
    margin: 0 auto;
}
.moderator-list ul .prof-area {
    width: 100%;
    padding-top: 10px;
}    
.prof-area .emph-txt {
    display: block;
}
.prof-area .name .emph-txt {
    display: inline;
}
/* program */
.program-wrap .team-box th {
    width: 20%;
    font-size: 0.8rem;
}
.program-wrap .caution-txt {
    width: 94%;
    text-align: left;
	color: #FFFFFF;
}
/* summary */
.summary-wrap{
	margin-bottom: 20px;
}
.summary-wrap .summary-area .summary-text dt {
    margin: 0 auto;
    width: 40%;
    float: none;
}
/* helpdesk */
.helpdesk-wrap{
    padding: 0 10px 20px;
}
.helpdesk-wrap .helpdesk-text {
    font-size: 0.9rem;
    display: block;
    justify-content: center;
}
.helpdesk-wrap .helpdesk-text span {
    display: block;
    padding-bottom: 10px;
}
.helpdesk-wrap .mail-link a{
	width: 90%;
	padding: 10px 0;
}


.bgblack{
	width: 100%;
}
}/* end */

