/*************************************
style.css
*************************************/

.f_bold {font-weight: bold;}

.f_ss {font-size: 80%;}
.f_l {font-size: 120%;}

h1.h1ttl {
  text-align: center;
    font-size: 1.8rem;
    letter-spacing: .2rem;
}

.sp_br {
	display: block;
}
.pc_br {
	display: none;
}

.p_asta {
    margin: .5rem 0rem;
    font-size: .9rem;    
    text-indent: -1rem;
    margin-left: 1rem;
}

.p_asta::before {
    content: "※";
}


.top_image {
  text-align: center;
    margin-bottom: 2rem;
}
.top_image img {
  width: 750px;
}

.main_message {
  width: fit-content;
  margin: 2rem auto 4rem auto;
	font-size: 1.1rem;
    padding-top: 1rem;
}

.main_message p {
	text-align: justify;
	line-height: 2rem;
	letter-spacing: .1rem;
    margin: 0;
}

.main_message p.p_asta {
        margin-left: 1rem;
    }

.main_message p span {
    display: inline-block;
    margin-bottom: 1rem;
}
	
.link_wrap .link_list li {
	width: 35%;
}


.main_step {
	max-width: 960px;
	display: flex;
	flex-flow: column;
	justify-content: center;
	margin: 5rem auto .5rem auto;
}
.main_step_title {
  display: flex;
  align-items: center;
  font-size: 1.5rem;
  color: #036eb8;
  margin-bottom: 1.8rem;
  letter-spacing: .1rem;
}
.main_step_title:before, .main_step_title:after {
  border-top: 1px solid;
  content: "";
  flex-grow: 1;
}
.main_step_title:before {
  margin-right: 1rem; /* 文字の右隣 */
}
.main_step_title:after {
  margin-left: 1rem; /* 文字の左隣 */
}

.triangle {
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 30px solid #87cefa;
  border-right: 0;
  margin: auto 1.5rem;	
}

.application > section {
	display: flex;
	justify-content: center;
	margin-bottom: 1rem;
}
.triangle_application {
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 20px solid transparent;
  border-left: 20px solid transparent;
  border-top: 30px solid #036eb8;
  border-bottom: 0;
}


@media screen and (orientation: portrait) and (max-width: 767px){
    
    h1.h1ttl {
    font-size: 1.6rem;
    letter-spacing: .15rem;
}
	
  .sp_br {
	display: none;
}
  .pc_br {
	display: block;
}

    .top_image img {
  width: 100%;
        object-fit: cover;
        object-position: center;
}

.main_message {
    width: 90%;
    margin: 2rem auto 3rem auto;
  }
	
	
.main_message p {
	line-height: 1.8rem;
	letter-spacing: .05rem;
}	

.main_step {
	margin: 3rem 0rem 1rem;
}
.main_step_title {
	font-size: 1.2rem;
}
.main_step_title:before, .main_step_title:after {
  width: 5rem; /* 線の長さ */
}

	
.application > section {
	margin-bottom: 0rem;
}
 
.triangle {
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-left: 12px solid #87cefa;
  border-right: 0;
  margin: 0px auto 2px auto;	
  transform: rotate(90deg);
}

		
}


/* date_place
============================ */

.conte_image {
    display: flex;
    justify-content: center;
    width: 75%;
    margin: 0 auto;
}

.conte_image a {
    margin-right: 4rem;
}

.conte_image a:hover {
    opacity: .6;
}

.conte_image a img {
    width: 170px;
    box-shadow: 0px 0px 15px -5px #777777;
}

.conte_image a figcaption {
    text-align: center;
    margin-top: .5rem;
}

.conte_image a figcaption::after {
    font-family: "Font Awesome 5 Free";
    content: '\f00e';
    font-weight: 900;
    margin-left: .5rem;
}

.date_place {
    width: fit-content;
    margin: 0;
    letter-spacing: .13rem;
}

.date_place dl {
    margin-bottom: 2rem;
}

.date_place dl dt {
    font-size: 1.9rem;
    margin-bottom: 1rem;
}

.date_place dl dd {
    font-size: 1.2rem;
    margin-bottom: 1rem;
    margin-left: -.5rem;
}

@media screen and (orientation: portrait) and (max-width: 767px){
    
    .conte_image {
    display: block;
    width: 100%;
    margin: 0 auto;
}
    
    .conte_image a {
    margin-right: 0rem;
        text-align: center;
}
    
    .date_place {
    width: 90%;
    margin: 2rem auto 0;
    letter-spacing: .1rem;
}
    
    .date_place dl {
        width: fit-content;
        margin: 0 auto;
    }
    
    .date_place dl dt {
        text-align: center;
    }
    
}


/* profile
============================ */

.profile {
    width: 90%;
    margin: 0 auto;
    letter-spacing: .05rem;
    display: flex;
    align-items: flex-start;
    background-color: #f0f8ff;
    padding: 1.5rem;
}

.profile img {
    width: 140px;
    margin-right: 3rem;
}

.profile dl {
    
}

.profile dl dt {
    white-space: nowrap;
    margin-bottom: 1.5rem;
}

.profile dl dt h3 {
    font-size: 1.3rem;
}

.profile dl dt h3 span {
    font-size: 1rem;
}

.profile dl dt h4 {
    font-size: .95rem;
    margin-bottom: 1rem;
}

.profile dl dt h5 {
    font-size: .85rem;
    margin-bottom: 1rem;
    font-weight: bold;
}

.profile dl dt h6 {
    font-size: .8rem;
    margin-bottom: .1rem;
}

.profile dl dd {
    text-align: justify;
}

@media screen and (orientation: portrait) and (max-width: 767px){
    
    .profile {
    width: 90%;
        padding: 1rem;
        display: block;
}
    
    .profile img {
    width: 90px;
    margin: 0 1.5rem 0rem 0;
        float: left;
}
    
    .profile dl dt {
    margin-bottom: 1rem;
}
    
}

/* toc
============================ */

.profile dl dd .toc {
    display: flex;
    column-gap: 4rem;
    margin-top: 2rem;
}

.profile dl dd .toc p {
    margin: 0;
    font-weight: bold;
    
}

@media screen and (orientation: portrait) and (max-width: 767px){
    
    .profile dl dd .toc {
    display: block;
        margin-top: 1rem;
}
    
    .profile dl dd .toc p {
        border-bottom: 1px solid #555;
    }
    
}

/* benefits
============================ */

.benefits {
    width: 90%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    margin-top: 3rem;
    align-items: center;
    letter-spacing: .1rem;
}

.benefits dl dt {
    font-size: 1.6rem;
    margin-bottom: .5rem;
    border-bottom: 1px solid #555;
}

.benefits dl dd {
    font-size: 1.2rem;
}

.benefits figure {
    margin-left: 2rem;
}

.benefits figure img {
    width: 180px;
}

@media screen and (orientation: portrait) and (max-width: 767px){
    
    .benefits {
    width: 90%;
    margin: 0 auto;
    display: block;
    margin-top: 3rem;
}
    
    .benefits figure {
    margin-left: 0rem;
        text-align: center;
        margin-top: 1rem;  
}
    
    .benefits figure img {
    width: 200px;
}
    
}


/* phone
============================ */
.contact_banner.phone .contact_txt {
  display: none;
}

.contact_banner.phone .phone_ikebukuro,
.contact_banner.phone .phone_shibuya,
.contact_banner.phone .phone_kichijoji {
  display: none;
}