@charset "utf-8";

/* recruit */

/* header
----------------------------------------- */
.page-visual {
	background: url(../images/page-visual_sp.jpg) center center no-repeat;
	background-size: cover;
}


/* contents
----------------------------------------- */
#contents {
	margin-top: 45px;
}

/* page-inner-link */
.page-inner-link {
	margin-bottom: 50px;
}

/* recruit-intro-area */
.recruit-intro-area {
	position: relative;
	margin-bottom: 115px;
	padding: 20px 0 80px;
	overflow: hidden;
}
.recruit-intro-area::before {
	content: "";
	display: block;
	position: absolute;
	top: 170px;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #EFF0F2;
	z-index: -10;
}
.recruit-intro-left {
	position: relative;
	padding-bottom: 0;
	overflow: hidden;
}
.recruit-intro-bg-copy {
	display: block;
	font-family: 'Cormorant Garamond', serif;
	font-weight: 400;
	position: absolute;
	bottom: -70px;
	left: -45px;
	font-size: 30.0rem;
	letter-spacing: -0.03em;
	z-index: -5;
	color: #fff;
	line-height: 1.0;
	white-space: nowrap;
}
.recruit-intro-ttl {
	position: relative;
	margin-bottom: 40px;
	padding: 0 0 10px 88px;
}
.recruit-intro-ttl::before {
	content: "";
	display: block;
	position: absolute;
	top: 16px;
	left: 0;
	width: 60px;
	height: 1px;
	background-color: #111;
}
.recruit-intro-ttl .jpn {
	display: block;
	margin-bottom: 8px;
	font-size: 2.8rem;
	line-height: 1.0;
}
.recruit-intro-ttl .eng {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	display: block;
	padding-left: 3px;
	font-size: 1.4rem;
	line-height: 1.0;
	color: #E31D23;
}
.recruit-intro-copy {
	margin-bottom: 35px;
	padding: 0 40px;
	font-size: 2.0rem;
	line-height: 1.6;
}
.recruit-intro-lead {
	margin-bottom: 60px;
	padding: 0 40px;
}
.recruit-intro-lead p {
	margin-bottom: 22px;
	font-size: 1.3rem;
	line-height: 2.2;
}
.recruit-intro-lead p:last-child {
	margin-bottom: 0;
}
.recruit-intro-right {
}
.recruit-intro-img {
}

/* discussion-area */
.discussion-area {
	padding-top: 20px;
}
.discussion-area-ttl {
	position: relative;
	margin-bottom: 40px;
	padding-bottom: 95px;
	text-align: center;
}
.discussion-area-ttl::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 1px;
	height: 60px;
	background-color: #111;
}
.discussion-area-ttl .eng {
	font-family: 'Cormorant Garamond', serif;
	font-weight: 700;
	display: block;
	margin-bottom: 8px;
	font-size: 4.0rem;
	letter-spacing: 0.01em;
	line-height: 1.0;
}
.discussion-area-ttl .jpn {
	display: block;
	font-size: 1.3rem;
	line-height: 1.0;
}
.typo-red {
	color: #E31D23;
}

/* discussion-area-member-list */
.discussion-area-member-list {
	display: flex;
	flex-wrap: wrap;
}
.discussion-area-member-list li {
	display: flex;
	align-items: flex-end;
	width: calc(50% - 0.5px);
	height: 330px;
}
.discussion-area-member-list li.member01 {
	margin: 0 1px 1px 0;
	background: url(../images/member-img01.jpg) center center no-repeat;
	background-size: cover;
}
.discussion-area-member-list li.member02 {
	margin: 0 0 1px 0;
	background: url(../images/member-img02.jpg) center center no-repeat;
	background-size: cover;
}
.discussion-area-member-list li.member03 {
	margin: 0 1px 0 0;
	background: url(../images/member-img03.jpg) center center no-repeat;
	background-size: cover;
}
.discussion-area-member-list li.member04 {
	background: url(../images/member-img04.jpg) center center no-repeat;
	background-size: cover;
}
.member-info {
	position: relative;
	width: 100%;
	padding: 20px 25px;
	background-color: rgba(17,17,17,0.6);
	color: #fff;
}
.member-name {
	margin-bottom: 10px;
}
.member-name .name {
	display: block;
	margin-bottom: 5px;
	font-size: 1.8rem;
	letter-spacing: 0.01em;
	line-height: 1.2;
}
.member-name .info {
	display: block;
	font-size: 1.2rem;
	letter-spacing: 0.01em;
	line-height: 1.2;
}
.member-department {
	font-size: 1.1rem;
	letter-spacing: 0.01em;
}
.member-num {
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	position: absolute;
	top: 0;
	right: 5px;
}

/* discussion-introduction-area */
.discussion-introduction-area {
	position: relative;
	margin-bottom: 10px;
	padding: 80px 40px 50px;
	overflow: hidden;
}
.introduction-img-side {
	margin-bottom: 55px;
}
.introduction-text-side {

}
.introduction-ttl {
	position: relative;
	margin:  0 0 25px -40px;
	padding: 0 0 10px 88px;
}
.introduction-ttl::before {
	content: "";
	display: block;
	position: absolute;
	top: 16px;
	left: 0;
	width: 60px;
	height: 1px;
	background-color: #111;
}
.introduction-ttl .jpn {
	display: block;
	margin-bottom: 8px;
	font-size: 2.8rem;
	line-height: 1.0;
}
.introduction-ttl .eng {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	display: block;
	padding-left: 3px;
	font-size: 1.4rem;
	line-height: 1.0;
	color: #E31D23;
}
.introduction-lead {
	font-size: 1.3rem;
	line-height: 2.4;
}
.introduction-bg-typo {
	display: block;
	font-family: 'Cormorant Garamond', serif;
	font-weight: 400;
	position: absolute;
	bottom: 60px;
	left: -30px;
	font-size: 25.0rem;
	letter-spacing: -0.03em;
	z-index: -5;
	color: #EFF0F2;
	line-height: 1.0;
	white-space: nowrap;
}

/* discussion-talk-area */
.discussion-talk-area {
	margin-bottom: 50px;
	padding: 40px 30px 40px;
	background-color: #EFF0F2;
}
.discussion-talk-area-inner {
}
.question-box {
	margin-bottom: 50px;
}
.question-box:last-child {
	margin-bottom: 0;
}
.question-ttl-set {
	position: relative;
	margin-bottom: 30px;
}
.question-num {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	padding-bottom: 3px;
	font-size: 2.4rem;
}
.question-num::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #E31D23;
}
.question-ttl {
	padding: 12px 0 0 60px;
	font-size: 1.8rem;
	line-height: 1.5;
}
.question-list {
	padding: 30px 20px;
	background-color: #fff;
}
.question-list li {
	display: flex;
	margin-bottom: 30px;
}
.question-list li:last-child {
	margin-bottom: 0;
}
.question-member-img {
	width: 50px;
	margin-right: 20px;
}
.question-member-name {
	margin-top: 4px;
	font-size: 1.1rem;
	text-align: center;
}
.question-text {
	width: calc(100% - 70px);
	font-size: 1.3rem;
	line-height: 2.4;
}

/* application-area */
.application-area {
	margin-bottom: 50px;
	padding: 20px 30px 0;
}
.application-ttl {
	margin-bottom: 40px;
	text-align: center;
}
.application-ttl .jpn {
	display: block;
	margin-bottom: 12px;
	font-size: 2.6rem;
	line-height: 1.0;
}
.application-ttl .eng {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	display: block;
	padding-left: 3px;
	font-size: 1.2rem;
	line-height: 1.0;
	color: #E31D23;
}
.application-tbl {
	margin-bottom: 50px;
	border: 1px solid #ddd;
}
.application-tbl li {
	border-bottom: 1px solid #ddd;
}
.application-tbl li:last-child {
	border-bottom: none;
}
.application-tbl .application-th {
	padding: 15px 20px;
	background-color: #F8F8F8;
}
.application-tbl .application-td {
	padding: 15px 20px;
}
.application-tbl .application-th {
	line-height: 2.1;
	font-size: 1.3rem;
}
.application-tbl .application-td p {
	margin-bottom: 8px;
	line-height: 2.1;
	font-size: 1.3rem;
}
.application-tbl .application-td p:last-child {
	margin-bottom: 0;
}
.application-tbl .application-td .sttl {
	font-weight: 700;
}

.application-contact-text {
	position: relative;
	margin: 70px 0 100px;
	padding-bottom: 80px;
	font-size: 1.6rem;
	text-align: center;
}
.application-contact-text::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 0;
	height: 0;
	margin-left: -20px;
	border-style: solid;
	border-width: 30px 20px 0 20px;
	border-color: #e31d24 transparent transparent transparent;
}

/* apply-contact-area */
.apply-contact-area {
	margin-bottom: 120px;
}
.apply-contact_ttl {
	margin-bottom: 20px;
	text-align: center;
	font-size: 2.0rem;
}
.apply-contact_lead {
	margin-bottom: 20px;
}
.apply-contact_lead a {
	color: #E31D23;
	text-decoration: underline;
}
.apply-contact_address {
	padding: 20px 25px;
	background-color: #EFF0F2;
}















































/* tablet 560px - 959px */
@media only screen and (min-width: 560px) {

/* header
----------------------------------------- */
.page-visual {
	background: url(../images/page-visual_pc.jpg) center center no-repeat;
	background-size: cover;
}


/* contents
----------------------------------------- */
#contents {
	margin-top: 70px;
}

/* page-inner-link */
.page-inner-link {
	margin-bottom: 80px;
}

/* recruit-intro-area */
.recruit-intro-area {
	position: relative;
	margin-bottom: 120px;
	padding: 30px 0 80px;
	overflow: hidden;
}
.recruit-intro-area::before {
	content: "";
	display: block;
	position: absolute;
	top: 194px;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #EFF0F2;
	z-index: -10;
}

.recruit-intro-left {
	position: relative;
	padding-bottom: 0;
	overflow: hidden;
}
.recruit-intro-bg-copy {
	display: block;
	font-family: 'Cormorant Garamond', serif;
	font-weight: 400;
	position: absolute;
	bottom: -70px;
	left: -45px;
	font-size: 30.0rem;
	letter-spacing: -0.03em;
	z-index: -5;
	color: #fff;
	line-height: 1.0;
	white-space: nowrap;
}

.recruit-intro-ttl {
	position: relative;
	margin-bottom: 45px;
	padding: 0 0 10px 118px;
}
.recruit-intro-ttl::before {
	content: "";
	display: block;
	position: absolute;
	top: 16px;
	left: 0;
	width: 70px;
	height: 1px;
	background-color: #111;
}
.recruit-intro-ttl .jpn {
	display: block;
	margin-bottom: 8px;
	font-size: 2.8rem;
	line-height: 1.0;
}
.recruit-intro-ttl .eng {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	display: block;
	padding-left: 3px;
	font-size: 1.4rem;
	line-height: 1.0;
	color: #E31D23;
}
.recruit-intro-copy {
	margin-bottom: 45px;
	padding: 0 80px;
	font-size: 2.4rem;
	line-height: 1.6;
}
.recruit-intro-lead {
	margin-bottom: 60px;
	padding: 0 80px;
}
.recruit-intro-lead p {
	margin-bottom: 25px;
	font-size: 1.4rem;
	line-height: 2.2;
}
.recruit-intro-lead p:last-child {
	margin-bottom: 0;
}
.recruit-intro-right {
}
.recruit-intro-img {
}

/* discussion-area */
.discussion-area {
	padding-top: 30px;
}
.discussion-area-ttl {
	position: relative;
	margin-bottom: 50px;
	padding-bottom: 115px;
	text-align: center;
}
.discussion-area-ttl::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 1px;
	height: 70px;
	background-color: #111;
}
.discussion-area-ttl .eng {
	font-family: 'Cormorant Garamond', serif;
	font-weight: 700;
	display: block;
	margin-bottom: 10px;
	font-size: 4.6rem;
	letter-spacing: 0.01em;
}
.discussion-area-ttl .jpn {
	display: block;
	font-size: 1.4rem;
	line-height: 1.0;
}
.typo-red {
	color: #E31D23;
}

/* discussion-area-member-list */
.discussion-area-member-list {
	display: flex;
	flex-wrap: wrap;
}
.discussion-area-member-list li {
	display: flex;
	align-items: flex-end;
	width: calc(50% - 0.5px);
	height: 340px;
}
.discussion-area-member-list li.member01 {
	margin: 0 1px 1px 0;
	background: url(../images/member-img01_tb.jpg) center center no-repeat;
	background-size: cover;
}
.discussion-area-member-list li.member02 {
	margin: 0 0 1px 0;
	background: url(../images/member-img02_tb.jpg) center center no-repeat;
	background-size: cover;
}
.discussion-area-member-list li.member03 {
	margin: 0 1px 0 0;
	background: url(../images/member-img03_tb.jpg) center center no-repeat;
	background-size: cover;
}
.discussion-area-member-list li.member04 {
	background: url(../images/member-img04_tb.jpg) center center no-repeat;
	background-size: cover;
}
.member-info {
	position: relative;
	width: 100%;
	padding: 20px 25px;
	background-color: rgba(17,17,17,0.6);
	color: #fff;
}
.member-name {
	margin-bottom: 10px;
}
.member-name .name {
	display: block;
	margin-bottom: 5px;
	font-size: 2.2rem;
	letter-spacing: 0.01em;
	line-height: 1.2;
}
.member-name .info {
	display: block;
	font-size: 1.4rem;
	letter-spacing: 0.01em;
	line-height: 1.2;
}
.member-department {
	font-size: 1.3rem;
	letter-spacing: 0.01em;
}
.member-num {
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	position: absolute;
	top: 0;
	right: 5px;
}

/* discussion-introduction-area */
.discussion-introduction-area {
	position: relative;
	margin-bottom: 40px;
	padding: 80px 80px 50px;
	overflow: hidden;
}
.introduction-img-side {
	margin-bottom: 65px;
}
.introduction-text-side {

}
.introduction-ttl {
	position: relative;
	margin:  0 0 25px -80px;
	padding: 0 0 20px 108px;
}
.introduction-ttl::before {
	content: "";
	display: block;
	position: absolute;
	top: 16px;
	left: 0;
	width: 70px;
	height: 1px;
	background-color: #111;
}
.introduction-ttl .jpn {
	display: block;
	margin-bottom: 8px;
	font-size: 3.0rem;
	line-height: 1.0;
}
.introduction-ttl .eng {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	display: block;
	padding-left: 3px;
	font-size: 1.4rem;
	line-height: 1.0;
	color: #E31D23;
}
.introduction-lead {
	font-size: 1.4rem;
	line-height: 2.4;
}
.introduction-bg-typo {
	display: block;
	font-family: 'Cormorant Garamond', serif;
	font-weight: 400;
	position: absolute;
	bottom: 60px;
	left: -30px;
	font-size: 25.0rem;
	letter-spacing: -0.03em;
	z-index: -5;
	color: #EFF0F2;
	line-height: 1.0;
	white-space: nowrap;
}

/* discussion-talk-area */
.discussion-talk-area {
	margin-bottom: 80px;
	padding: 60px 60px 70px;
	background-color: #EFF0F2;
}
.discussion-talk-area-inner {
}
.question-box {
	margin-bottom: 50px;
}
.question-box:last-child {
	margin-bottom: 0;
}
.question-ttl-set {
	position: relative;
	margin-bottom: 50px;
}
.question-num {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	padding-bottom: 3px;
	font-size: 2.4rem;
}
.question-num::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #E31D23;
}
.question-ttl {
	padding: 12px 0 0 60px;
	font-size: 1.8rem;
	line-height: 1.5;
}
.question-list {
	padding: 60px 50px;
	background-color: #fff;
}
.question-list li {
	display: flex;
	margin-bottom: 40px;
}
.question-list li:last-child {
	margin-bottom: 0;
}
.question-member-img {
	width: 60px;
	margin-right: 40px;
}
.question-member-name {
	margin-top: 4px;
	font-size: 1.1rem;
	text-align: center;
}
.question-text {
	width: calc(100% - 100px);
	font-size: 1.3rem;
	line-height: 2.4;
}

/* application-area */
.application-area {
	margin-bottom: 50px;
	padding: 30px 60px 0;
}
.application-ttl {
	margin-bottom: 60px;
	text-align: center;
}
.application-ttl .jpn {
	display: block;
	margin-bottom: 15px;
	font-size: 2.8rem;
	line-height: 1.0;
}
.application-ttl .eng {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	display: block;
	padding-left: 3px;
	font-size: 1.3rem;
	line-height: 1.0;
	color: #E31D23;
}
.application-tbl {
	margin-bottom: 60px;
	border: 1px solid #ddd;
}
.application-tbl li {
	border-bottom: 1px solid #ddd;
}
.application-tbl li:last-child {
	border-bottom: none;
}
.application-tbl .application-th {
	padding: 20px 25px;
	background-color: #F8F8F8;
}
.application-tbl .application-td {
	padding: 20px 25px;
}
.application-tbl .application-th {
	line-height: 2.1;
	font-size: 1.4rem;
}
.application-tbl .application-td p {
	margin-bottom: 10px;
	line-height: 2.1;
	font-size: 1.4rem;
}
.application-tbl .application-td p:last-child {
	margin-bottom: 0;
}
.application-tbl .application-td .sttl {
	font-weight: 700;
}

.application-contact-text {
	position: relative;
	margin: 70px 0 150px;
	padding-bottom: 90px;
	font-size: 1.8rem;
	text-align: center;
	line-height: 2.0;
}
.application-contact-text::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 0;
	height: 0;
	margin-left: -20px;
	border-style: solid;
	border-width: 30px 20px 0 20px;
	border-color: #e31d24 transparent transparent transparent;
}

/* apply-contact-area */
.apply-contact-area {
	margin-bottom: 160px;
}
.apply-contact_ttl {
	margin-bottom: 20px;
	text-align: center;
	font-size: 2.0rem;
}
.apply-contact_lead {
	margin-bottom: 25px;
}
.apply-contact_lead a {
	color: #E31D23;
	text-decoration: underline;
}
.apply-contact_address {
	padding: 25px 30px;
	background-color: #EFF0F2;
}

} /* tablet end */






















































/* PC 960px - */
@media only screen and (min-width: 960px) {

/* header
----------------------------------------- */
.page-visual {
	background: url(../images/page-visual_pc.jpg) center center no-repeat;
	background-size: cover;
}


/* contents
----------------------------------------- */
#contents {
	margin-top: 70px;
}

/* page-inner-link */
.page-inner-link {
	margin-bottom: 120px;
}

/* recruit-intro-area */
.recruit-intro-area {
	display: flex;
	justify-content: space-between;
	position: relative;
	margin-bottom: 180px;
	padding-bottom: 0;
	overflow: hidden;
}
.recruit-intro-area::before {
	content: "";
	display: block;
	position: absolute;
	top: 352px;
	left: 0;
	width: 85%;
	height: 100%;
	background-color: #EFF0F2;
	z-index: -10;
}
.recruit-intro-left {
	position: relative;
	width: 53%;
	padding: 130px 0 140px 0;
	overflow: hidden;
}
.recruit-intro-bg-copy {
	display: block;
	font-family: 'Cormorant Garamond', serif;
	font-weight: 400;
	position: absolute;
	bottom: 0;
	left: -45px;
	font-size: 30.0rem;
	letter-spacing: -0.05em;
	z-index: -5;
	color: #fff;
	line-height: 1.2;
	white-space: nowrap;
}

.recruit-intro-ttl {
	position: relative;
	margin-bottom: 60px;
	padding: 0 0 10px 24%;
}
.recruit-intro-ttl::before {
	content: "";
	display: block;
	position: absolute;
	top: 20px;
	left: 0;
	width: 12%;
	height: 1px;
	background-color: #111;
}
.recruit-intro-ttl .jpn {
	display: block;
	margin-bottom: 15px;
	font-size: 3.4rem;
	line-height: 1.0;
}
.recruit-intro-ttl .eng {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	display: block;
	padding-left: 3px;
	font-size: 1.4rem;
	line-height: 1.0;
	color: #E31D23;
}
.recruit-intro-copy {
	margin-bottom: 45px;
	padding: 0 40px 0 24%;
	font-size: 2.2rem;
	line-height: 1.8;
}
.recruit-intro-lead {
	margin-bottom: 110px;
	padding: 0 25% 0 24%;
}
.recruit-intro-lead p {
	margin-bottom: 25px;
	font-size: 1.4rem;
	line-height: 2.6;
}
.recruit-intro-lead p:last-child {
	margin-bottom: 0;
}
.recruit-intro-right {
	width: 47%;
	max-width: 800px;
	min-width: 600px;
	padding-bottom: 150px;
	text-align: right;
}
.recruit-intro-img {
	text-align: right;
}

/* discussion-area */
.discussion-area {
	padding-top: 30px;
}
.discussion-area-ttl {
	position: relative;
	margin-bottom: 80px;
	padding-bottom: 130px;
	text-align: center;
}
.discussion-area-ttl::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 1px;
	height: 80px;
	background-color: #111;
}
.discussion-area-ttl .eng {
	font-family: 'Cormorant Garamond', serif;
	font-weight: 700;
	display: block;
	margin-bottom: 12px;
	font-size: 5.8rem;
	letter-spacing: 0.01em;
}
.discussion-area-ttl .jpn {
	display: block;
	font-size: 1.6rem;
	line-height: 1.0;
}
.typo-red {
	color: #E31D23;
}

/* discussion-area-member-list */
.discussion-area-member-list {
	display: flex;
	flex-wrap: nowrap;
}
.discussion-area-member-list li {
	display: flex;
	align-items: flex-end;
	width: 25%;
	height: 540px;
}
.discussion-area-member-list li.member01 {
	margin: 0 1px 0 0;
	background: url(../images/member-img01.jpg) center center no-repeat;
	background-size: cover;
}
.discussion-area-member-list li.member02 {
	margin: 0 1px 0 0;
	background: url(../images/member-img02.jpg) center center no-repeat;
	background-size: cover;
}
.discussion-area-member-list li.member03 {
	margin: 0 1px 0 0;
	background: url(../images/member-img03.jpg) center center no-repeat;
	background-size: cover;
}
.discussion-area-member-list li.member04 {
	background: url(../images/member-img04.jpg) center center no-repeat;
	background-size: cover;
}
.member-info {
	position: relative;
	width: 100%;
	padding: 34px 45px;
	background-color: rgba(17,17,17,0.6);
	color: #fff;
	overflow: hidden;
}
.member-name {
	margin-bottom: 10px;
}
.member-name .name {
	display: block;
	margin-bottom: 5px;
	font-size: 2.2rem;
	letter-spacing: 0.01em;
	line-height: 1.2;
}
.member-name .info {
	display: block;
	font-size: 1.4rem;
	letter-spacing: 0.01em;
	line-height: 1.2;
}
.member-department {
	font-size: 1.4rem;
	letter-spacing: 0.01em;
}
.member-num {
	font-family: 'Lato', sans-serif;
	font-weight: 300;
	position: absolute;
	top: auto;
	bottom: -5px;
	right: -5px;
	font-size: 5.0rem;
	line-height: 1;
}

/* discussion-introduction-area */
.discussion-introduction-area {
	display: flex;
	align-items: center;
	position: relative;
	margin-bottom: 80px;
	padding: 300px 0 0 120px;
	overflow: hidden;
}
.introduction-img-side {
	width: 55%;
	margin-bottom: 65px;
}
.introduction-text-side {
	width: 45%;
	padding: 0 110px 50px 130px;
}
.introduction-ttl {
	position: relative;
	margin:  0 0 40px -130px;
	padding: 0 0 0 130px;
}
.introduction-ttl::before {
	content: "";
	display: block;
	position: absolute;
	top: 16px;
	left: -40px;
	width: 100px;
	height: 1px;
	background-color: #111;
}
.introduction-ttl .jpn {
	display: block;
	margin-bottom: 14px;
	font-size: 3.2rem;
	line-height: 1.0;
}
.introduction-ttl .eng {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	display: block;
	padding-left: 3px;
	font-size: 1.4rem;
	line-height: 1.0;
	color: #E31D23;
}
.introduction-lead {
	font-size: 1.4rem;
	line-height: 2.6;
}
.introduction-bg-typo {
	display: block;
	font-family: 'Cormorant Garamond', serif;
	font-weight: 400;
	position: absolute;
	top: 78px;
	bottom: auto;
	left: auto;
	right: -207px;
	font-size: 30.0rem;
	letter-spacing: -0.04em;
	z-index: -5;
	color: #EFF0F2;
	line-height: 1.0;
	white-space: nowrap;
}

/* discussion-talk-area */
.discussion-talk-area {
	margin-bottom: 190px;
	padding: 90px 0 150px;
	background-color: #EFF0F2;
}
.discussion-talk-area-inner {
	max-width: 1000px;
	margin: 0 auto;
}
.question-box {
	margin-bottom: 85px;
}
.question-box:last-child {
	margin-bottom: 0;
}
.question-ttl-set {
	position: relative;
	margin-bottom: 60px;
}
.question-num {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	padding-bottom: 3px;
	font-size: 3.2rem;
}
.question-num::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #E31D23;
}
.question-ttl {
	padding: 12px 0 0 80px;
	font-size: 2.4rem;
	line-height: 1.5;
}
.question-list {
	padding: 100px 100px;
	background-color: #fff;
}
.question-list li {
	display: flex;
	margin-bottom: 50px;
}
.question-list li:last-child {
	margin-bottom: 0;
}
.question-member-img {
	width: 100px;
	margin-right: 60px;
}
.question-member-name {
	margin-top: 8px;
	font-size: 1.5rem;
	text-align: center;
}
.question-text {
	width: calc(100% - 160px);
	padding-top: 10px;
	font-size: 1.5rem;
	line-height: 2.2;
}

/* application-area */
.application-area {
	margin-bottom: 50px;
	padding: 30px 60px 0;
}
.application-ttl {
	margin-bottom: 80px;
	text-align: center;
}
.application-ttl .jpn {
	display: block;
	margin-bottom: 15px;
	font-size: 3.2rem;
	line-height: 1.0;
}
.application-ttl .eng {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	display: block;
	padding-left: 3px;
	font-size: 1.3rem;
	line-height: 1.0;
	color: #E31D23;
}
.application-tbl {
	max-width: 900px;
	margin: 0 auto 100px;
	border: 1px solid #ddd;
}
.application-tbl li {
	display: flex;
	border-bottom: 1px solid #ddd;
}
.application-tbl li:last-child {
	border-bottom: none;
}
.application-tbl .application-th {
	width: 25%;
	padding: 20px 45px;
	background-color: #F8F8F8;
}
.application-tbl .application-td {
	width: 75%;
	padding: 20px 45px;
}
.application-tbl .application-th p {
	line-height: 2.1;
	font-size: 1.4rem;
}
.application-tbl .application-td p {
	margin-bottom: 15px;
	line-height: 2.1;
	font-size: 1.4rem;
}

.application-tbl .application-td p:last-child {
	margin-bottom: 0;
}
.application-tbl .application-td .sttl {
	font-weight: 700;
}

.application-contact-text {
	position: relative;
	margin: 60px 0 200px;
	padding-bottom: 110px;
	font-size: 1.8rem;
	text-align: center;
	line-height: 2.0;
}
.application-contact-text::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 0;
	height: 0;
	margin-left: -25px;
	border-style: solid;
	border-width: 40px 25px 0 25px;
	border-color: #e31d24 transparent transparent transparent;
}

/* apply-contact-area */
.apply-contact-area {
	max-width: 680px;
	margin: 0 auto 180px;
}
.apply-contact_ttl {
	margin-bottom: 20px;
	text-align: center;
	font-size: 2.0rem;
}
.apply-contact_lead {
	margin-bottom: 25px;
}
.apply-contact_lead a {
	color: #E31D23;
	text-decoration: underline;
}
.apply-contact_address {
	padding: 35px 30px;
	background-color: #EFF0F2;
	text-align: center;
}

} /* PC end */






















































