@charset "UTF-8";

.writing_speaking-box {
	max-width:1200px;
	margin: 0 auto;
	color : #fff;
}

.writing_speaking-box > h3:before {
	content: "";                       
  display: inline-block;             
  width: 3rem;                       
  height: 3rem;                         
	vertical-align: middle;               
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; 
	
	margin-right:.3rem;
}

.writing_speaking-box > h3.title_writing:before {
  background-image: url("../img/character_kishi_man_03_blue.png");
}
.writing_speaking-box > h3.title_teaching:before {
  background-image: url("../img/character_yusha_woman_green.png");
}
.writing_speaking-box > h3.title_speaking:before {
  background-image: url("../img/character_mahotsukai_01_purple.png");
}


.writing_speaking-list {
		display: flex;
    flex-wrap: wrap;
    column-gap: 40px;
    margin: 0 auto;
    padding: 0 50px 0;
}

.writing_speaking-list .author {
	display : flex;
	column-gap : 1rem;
	border-top: dashed 1px #fff;
	border-bottom: dashed 1px #fff;
  padding-top: 1em;
  padding-bottom: 1em;
  margin-bottom: 1em;
}


.writing_speaking-list .author_img {
	width:40%;
	display:inline-block;
}


.writing_speaking-list .author_img > img {
	width:100%;
	display:block;
}

.writing_speaking-list .author_name {
	display:flex;
	align-items: start;
	width:60%;
	font-size:1.4rem;
	flex-direction:column;
	justify-content:center;
}

.writing_speaking-list .author_name .position {
	font-size:1rem;
}

.writing_speaking-list .author_name a {
	text-decoration:underline;
}
.writing_speaking-list .author_name span {
	font-weight:bold;
}

.writing_speaking-list .link > a {
	text-decoration:underline;

}
.writing_speaking-list .link > a:before {
    content: "";
    display: inline-block;
    width: 1rem;
    height: 1rem;
    background-image: url(../img/pointer-white.png);
    background-repeat: no-repeat;
    background-size: contain;
	}
.writing_speaking-list .link > a:after {
    content: "";
    display: inline-block;
    width: 1.1rem;
    height: 1.1rem;
    background-image: url(../img/tl_external_link.png);
    background-repeat: no-repeat;
    background-size: contain;
    margin-left: 0.3rem;
}

.writing_speaking-box > h3 {
	margin-left:30px;
	font-family:"Emulogic";
	color : #000;
	padding-top:40px;
	letter-spacing:.3rem;
}
.writing_speaking-box > h3:first-child {
	padding-top:0;
}

.writing_speaking-box ul li {
    margin-bottom: 40px;
	  display: flex;
    flex-direction: column;
}
.writing_speaking-box ul li .pic {
	background: url(../img/writing_speaking_rpg01.png) #000 no-repeat right bottom;
	background-size:cover;
}

.writing_speaking-box ul li .pic:empty {
    background: url(../img/writing_speaking_rpg02.png) #000 no-repeat right bottom;
	background-size:cover;
}

.writing_speaking-box ul li .content {
	padding-bottom:0;
}
.writing_speaking-box ul li .period {
	border-bottom: solid 1px #fff;
	padding-bottom: 0.5em;
  margin-bottom: 0.5em;
}
.writing_speaking-box ul li .footer {
	margin-top:auto;
	padding: 0.5em 1.5em 1em;
}
.writing_speaking-box ul li .pic img {
	height:85%;
	width:100%;
	object-fit: contain;
  object-position: center;
	position:absolute;
	top:1rem;
	left:0;
	transform:none;
}
.writing_speaking-box ul li .pic img.image-fill {
	height:100%;
	width:100%;
	object-fit: cover;
  object-position: center;
	position:absolute;
	top:0;
	left:0;
	transform:none;
}
.writing_speaking-box ul li .content .title {
	font-size:1.3em;
}