@charset "utf-8";
/* sp_lecture */

/* title

-------------------------*/
.main_message .i_profile {
    display: flex;
    align-items: center;
    column-gap: 4rem;
    width: 80%;
    margin: 0 auto;
}

.main_message .i_profile figure {
    margin: 0;
    padding: 0;
}

.main_message .i_profile figure img {
    width: 140px;
}

.main_message .i_profile dl dt {
    font-size: 2.4rem;
    display: flex;
    align-items: baseline;
    margin-bottom: 1.5rem;
}

.main_message .i_profile dl dt span {
    font-size: 1.5rem;
}

.main_message .i_profile dl dt span.occupation {
    position: relative;
    top: -1rem;
}

.main_message .i_profile dl dt rt {
    font-weight: normal;
    margin-bottom: .1rem;
}

.main_message .sub_box {
	letter-spacing: .1rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: #fff3c3;
	margin: 4rem 0 8rem 0rem;
	padding: 1rem;
}

.main_message .sub_box dl dt {
	font-size: 2.2rem;
	font-weight: normal;
	line-height: 3.5rem;
	margin-bottom: 1rem;
}

.main_message .sub_box dl dd {
	line-height: 2.8rem;
}

.main_message .sub_box figure {
	margin: 0 0 0 3rem;
	padding: 0;
}

.main_message .sub_box img {
	max-width: 250px;
}

.timeline {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
    padding: 0 1.5rem;
    font-size: 1.3rem;
    width: 100%;
    }

    .timeline-column {
      width: 48%;
    }

    .timeline-item {
      margin: 1rem 0;
        text-indent: -6.5rem;
        margin-left: 6.5rem;
    }

    .year {
      font-weight: bold;
      margin-right: 10px;
    }

@media screen and (orientation: portrait) and (max-width: 767px){
    
    .main_message .i_profile {
    display: block;
    width: 100%;
    margin: 0 auto;
}
    
    .main_message .i_profile figure {
    margin: 0 0 1rem 0;
    padding: 0;
        text-align: center;
}
    
    .main_message .i_profile dl dt {
    justify-content: center;
        font-size: 2.3rem;
}
    
    .main_message .i_profile dl dt rt {
    margin-top: .5rem;
}
		
	.main_message .sub_box {
	display: block;
	padding: 1.5rem;
}
	
	.main_message .sub_box dl dt {
	font-size: 2rem;
	line-height: 3.2rem;
}
	
	.main_message .sub_box dl dd {
	line-height: 2.5rem;
}
	
	.main_message .sub_box figure {
	margin: 2rem 0 0 0rem;
		text-align: center;
}
	
.main_message .sub_box img {
	max-width: 250px;
}	
    
    .timeline {
    display: block;
    padding: 0 .3rem;
    }
    
    .timeline-column {
      width: 100%;
    }
    
    .timeline-item {
        line-height: 1.8rem;
      margin: .3rem 0;
        text-indent: -6.5rem;
        margin-left: 6.5rem;
    }
	
	
}

/* contents

-------------------------*/

.br_sp {display: none;}
.br_pc {display: block;}

.contents {
	letter-spacing: .1rem;
	line-height: 3rem;
}

.contents figure {
	padding-bottom: 2rem;
}

.contents figure p {
    margin: 0 4rem;
    text-align: right;
    font-size: 1.2rem;
}

section.main_message {
	padding: 4rem 0 1rem;
}

section.outline {
	padding-bottom: 2rem;
}

section.outline .toc {
    width: 90%;
	margin: 1rem auto;  
    display: flex;
}

section.outline .toc .toc_t {
    writing-mode: vertical-rl;
    display: inline-block;
    text-align: center;
    box-shadow: 3px 3px 10px -2px #777777;
    margin-right: 4rem;
    padding: 2rem;
    font-size: 2rem;
}

section.outline .toc .toc_menu {
    display: flex;
    column-gap: 4rem;
    width: 100%;
    font-size: 1.8rem;
}

section.outline .toc .toc_menu ul {
    width: 50%;
}

section.outline .toc .toc_menu ul li {  
    height: 7rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

section.outline .toc .toc_menu ul li:nth-of-type(2),
section.outline .toc .toc_menu ul li:nth-of-type(4) {
    border-top: 1px solid #555;
    border-bottom: 1px solid #555;
    padding: .5rem 0;
}

section.outline .toc .toc_menu ul li span.f_s {
    font-size: 1.4rem;
}

section.outline table {
	width: 90%;
	margin: 4rem auto;
} 

section.outline table th,
section.outline table td {
	padding: 1rem 3rem;
	border: 1px solid gray;
}

section.outline table td span {
		font-size: .9em;
	}

section.outline table td span.asta_link_pdf::after {
    content: "\f1c1";
    font-family: FontAwesome;
}

section.outline table th {
	background-color: #ebeff0;
	font-weight: normal;
	text-align: center;
}



section.outline table td ul.time_table {
	display: flex;
	justify-content: space-between;
}

section.conte_list {
	padding: 4rem 0 3rem;
}

section.conte_list dl {
	margin-bottom: 3rem;
}

section.conte_list dl dt {
	font-size: 1.2em;
	color: #0093bf;
	margin-bottom: .5rem;
	text-indent: -3rem;
	margin-left: 3rem;
}

section.conte_list dl dd {
	margin-left: 3rem;
}

section.benefit .booklet {
	padding: 2rem 0;
	display: flex;
}

section.benefit .booklet dl {

}

section.benefit .booklet dl dt {
	font-size: 1.2em;
	color: #0093bf;
	margin: 1.5rem 0;
}

section.benefit .booklet dl dd {
	text-align: justify;
}

section.benefit .booklet dl dd.asta {
	font-size: .9em;
}

section.benefit .booklet figure {
	margin-left: 3rem;
}

section.benefit .booklet:nth-child(3) figure {
	margin-top: 2rem;
}

section.benefit .booklet figure img {
	max-width: 270px;
}

.apply_early {
    margin: 5rem 0 -2rem 0;
}

.apply_early dl dt {
    background: #E60087;
    background: linear-gradient(90deg,rgba(230, 0, 135, 1) 0%, rgba(255, 161, 0, 1) 100%);
    padding: 1.2rem;
    text-align: center;
    color: #fff;
    font-size: 1.8rem;
    margin: 0
}

.apply_early dl dt span {
    font-size: 1.9rem;
    font-weight: bold;
}

.apply_early dl dd {
    width:0;
    height:0;
    border-style:solid;
    border-width: 15px 13px 0 13px;
    border-color: #F35342 transparent transparent transparent;
    margin: 0 auto;
}


@media screen and (orientation: portrait) and (max-width: 767px){
	
	.br_sp {display: block;}
    .br_pc {display: none;}
    
    .contents figure p {
    margin: 0 1rem;
    text-align: left;
    font-size: 1.2rem;
}
	
	section.main_message {
	padding: 1.5rem 0 0rem;
}
    
    section.outline .toc {
	margin: 1rem auto;  
    display: block;
}
    
    section.outline .toc .toc_t {
    writing-mode: horizontal-tb;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 3px 3px 8px -2px #777777;
    margin-right: 0rem;
        margin-bottom: 3rem;
    padding: .6rem 0rem;
    font-size: 1.8rem;
}
    
    section.outline .toc .toc_menu {
    display: block;
    font-size: 1.8rem;
}
    
    section.outline .toc .toc_menu ul {
    width: 100%;
}

section.outline .toc .toc_menu ul li {  
    height: 6.5rem;   
    padding: 2rem 0;
}
    
    section.outline .toc .toc_menu ul:not(:last-of-type) li:nth-of-type(3) {
    border-bottom: 1px solid #555;
    padding: .5rem 0;
}
    
    section.outline .toc .toc_menu ul li span.f_s {
    font-size: 1.6rem;
}
	
	section.outline table th,
section.outline table td {
	padding: .5rem 1rem;
}
	
	section.outline table td ul.time_table {
	display: block;
}
	
	section.conte_list {
	padding: 4rem 0 .1rem;
}
	
	section.benefit .booklet {
	padding: 0rem 0;
	display: block;
}
	section.benefit .booklet figure {
	margin-left: 0rem;
		text-align: center;
}

section.benefit .booklet figure img {
	max-width: 250px;
}
	
	
}



/* voice

-------------------------*/

.voice {
    margin: 0rem 0rem 6rem;
}

.voice figure {
    display: flex;
    justify-content: center;
    margin-bottom: 3rem;
}

.voice figure img {
    width: auto;
}

.voice figure img:nth-of-type(1) {
    display: block;
}

.voice figure img:nth-of-type(2) {
    display: none;
}

.voice .col_2 {
    display: flex;
    flex-wrap: wrap;
    column-gap: 6.8rem;
}

.voice .col_2 dl {
    width: calc(100% / 2 - 3.4rem);
    margin-bottom: 4rem;
}

.voice .col_2 dl dt {
    color: #0093bf;
}

.voice .col_2 dl dd {
    text-align: justify;
}

@media screen and (orientation: portrait) and (max-width: 767px){
    
    .voice figure img {
    width: 90%;
}
    
    .voice figure img:nth-of-type(1) {
    display: none;
}

    .voice figure img:nth-of-type(2) {
    display: block;
}
    
    .voice .col_2 {
    display: block;
}
    
    .voice .col_2 dl {
    width: 100%;
    margin-bottom: 4rem;
}
    
}


