/*
 * Theme Name: tarueyoshichika01
*/

@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 400;
  src: url(fonts/NotoSerifCJKjp-Regular.otf) format('opentype');
 }

* {
	-webkit-appearance: none!important;
}
input[type="button" i], input[type="submit" i], input[type="reset" i],
input[type="button"], input[type="submit"], input[type="reset"] {
	-webkit-appearance: none!important;
	border-radius: 0!important;
}

html, body {
	font-family: 'EB Garamond',"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", 'Noto Serif Japanese',serif;
	padding: 0;
	margin: 0;
	color: #363636;
	overflow: visible;
	line-height: 2.0;
	height: 100%;
	word-wrap: break-word;
}
body {
}
h1 {
	margin: 0;
}
h2, h3, h4 {
	line-height: 1.6;
}
ul {
	padding: 0;
}
ul li {
	list-style: none;
}
.clearfix:after {
	content: "";
	clear: both;
	display: block;
}
a {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
a:hover img {
	opacity: 0.8;
}
p {
	margin-top: 0;
}

.pc_only {
	display: block;
}
.sp_only {
	display: none;
}
@media screen and (max-width: 960px) {
	.pc_only {
		display: none;
	}
	.sp_only {
		display: block;
	}
}
.text_link {
	color: #557baf;
	text-decoration: none;
}

.object-fit-img {
	object-fit: contain;
	font-family: 'object-fit: contain;'
}

.youtube {
	position: relative;
	padding-bottom: 56.25%;
	position: relative;
	width: 100%;
	margin: 0 auto 20px;
}
.youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%!important;
	height: 100%!important;
}
.credit {
	margin-bottom: 50px;
}
/* index */
/*
body.home {
	background-image: url(img/index_pc01.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
	background-color: #ffffff;
	color: #fff;
	position: relative;
	font-size: 13px;
	line-height: 1.8;
	text-align: center;
}
*/
body.home {
	text-align: center;
}
.home .header_wrapper {
	position: fixed;
	bottom: 0;
	width: 100%;
	background: none;
	z-index: 100;
}
.home .header {
	background: rgba(0,0,0,0.5);
	z-index: 9999;
	position: fixed;
	bottom: 0;
	width: 100%;
}
.home .header .language_menu {
	
}
.home .header .gnav ul {
	padding-bottom: 0;
}
.home .header .gnav ul li a {
	color: rgba(255,255,255,0.5);
	padding: 30px 0;
}
.home .header .gnav ul li a::after {
	background: none;
}
.home .header .gnav ul li a:hover {
	color: rgba(255,255,255,1.0);
}
.index_logo {
	width: 40%;
	height: auto;
	margin-top: 100px;
	opacity: 0.5;
}
.index_logo path {
	color: #fff;
	fill: currentColor;
	opacity: 0.5;
}
@media (max-width: 1200px) {
	body.home {
		background-image: url(img/index_sp01.png);
	}
	.index_logo {
		width: 85%;
		margin-top: 120px;
	}
	.home .drawer-hamburger-icon, .home .drawer-hamburger-icon:after, .home .drawer-hamburger-icon:before {
		background-color: #fff;
		height: 1px;
	}
	.home.drawer-open .drawer-hamburger-icon {
		background-color: transparent;
	}
	.home .drawer-overlay {
		z-index: -10;
	}
}

/* header */
.header_wrapper {
	position: fixed;
	top: 0;
	width: 100%;
	border-bottom: 1px solid #eeeeee;
	background: rgba(255,255,255,0.9);
	z-index: 9999;
}
.header {
	width: 1200px;
	margin: 0 auto;
	position: relative;
}
.header .logo_area {
	width: 421px;
	margin: 0 auto;
	padding: 25px 0 10px;
}
.header .logo_area .logo {
	width: 100%;
	height: auto;
}
@media screen and (max-width: 960px) {
	.header .logo_area {
		padding: 20px 0 15px;
	}
	.header .logo_area .logo {
		width: 100%;
	}
}
.header .language_menu {
	position: absolute;
	right: 0;
	top: 20px;
}
.header .gnav ul.jp, .header .gnav ul.en {
	display: none;
}
.header .language_menu a {
	display: inline-block;
	background: #bebebe;
	color: #fff;
	border: #bebebe 1px solid;
	text-decoration: none;
	padding: 5px 15px;
	cursor: pointer;
}
.header .language_menu a.on {
	background: #fff;
	color: #363636;
}

@media screen and (max-width: 1200px) {
	.header .language_menu {
		display: none;
	}
}
.header .gnav ul {
	display: flex;
	justify-content: space-between;
	width: 700px;
	margin: 0 auto;
	padding-bottom: 20px;
}

.header .gnav ul li a {
	color: #363636;
	text-decoration: none;
	position: relative;
	display: inline-block;
	transition: .3s;
}
.header .gnav ul li a::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	content: '';
	width: 0;
	height: 1px;
	background-color: #363636;
	transition: .3s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.header .gnav ul li a:hover::after {
	width: 100%;
}

.gnav_sp {
	display: none;
}

/* footer */
.footer {
	width: 100%;
	margin-top: 100px;
	border-top: 1px #cccccc solid;
}
.footer_link {
	width: 960px;
	margin: 46px auto 20px;
}
.footer_link ul {
	display: flex;
	justify-content: space-between;
}
.footer_link ul li {
	border: #363636 1px solid;
	width: 23%;
	box-sizing: border-box;
	font-size: 1.375em;
}
.footer_link ul li i {
	margin-right: 10px;
}
.footer_link a {
	position: relative;
	display: block;
	color: #363636;
	text-decoration: none;
	padding: 15px 0 15px 10px;
}
.footer_link ul a:after {
	font-family: FontAwesome;
	content: "\f101";
	position: absolute;
	right: 7px;
}
.footer_link a:hover {
	cursor: pointer;
}
.copyright {
	text-align: center;
	font-size: 0.9em;
	margin: 0 auto 10px;
}
@media screen and (max-width: 960px) {
	.footer_link {
		width: 90%;
		margin: 0 auto;
	}
	.footer_link ul {
		flex-wrap: wrap;
	}
	.footer_link ul li {
		width: 48%;
		margin-bottom: 20px;
		font-size: 1em;
	}
}


/* totop */
.totop {
	position: fixed;
	bottom: 20px;
	right: 20px;
}
.totop img {
	width: 42px;
	height: 26px;
}
@media screen and ( max-width: 1200px ) {
	.single-post .totop {
		display: none!important;		
	}
}

/* main_vis */
.main_vis_wrapper {
	margin: 0 auto;
	width: 1200px;
	height: 782px;
	background: url(img/laptop-on-desk_4460x4460.png) no-repeat center center;
	background-size: contain;
	position: relative;
}
#main_vis {
	position: absolute;
	left: 710px;
	top: 160px;
	width: 220px;
	margin: 0 auto;
	display: flex;
}
#main_vis svg {
	height: 500px;
	align-items: center;
	display: inline-block;
}
@media screen and ( max-width: 1200px ) {
	.main_vis_wrapper {
		display: none;
		width: 100%;
		max-width: 100%;
	}
	#main_vis {
		display: none;
	}
	#main_vis svg {
		display: none;
	}
}

/* top for sp */
@media screen and ( max-width: 1200px ) {
	.header_wrapper {
		height: auto;
	}
	.header {
		width: 100%;
	}
	.header .logo_area {
		width: 68%;
		padding: 20px 0;
		line-height: 1;
	}
	.gnav {
		display: none;
	}
	.gnav_sp {
		display: block;
	}
	.gnav_sp .drawer-menu > li,
	.gnav_sp .drawer-menu > li > ul > li {
		text-align: center;
	}
	.gnav_sp .drawer-menu > li {
		border-bottom: #ccc 1px solid;
	}
	.gnav_sp .drawer-menu a {
		padding: 10px 15px;
		color: #333;
		text-decoration: none;
		display: block;
	}
	.gnav_sp .drawer-menu .fa-angle-right {
		margin-right: 10px;
	}
	.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
		height: 1px;
	}
}

/* page */
.page_wrapper {
	width: 920px;
	margin: 0 auto;
	padding-top: 120px;
}
.page_wrapper .h2_wrapper {
	margin: 80px auto;
	text-align: center;
}
.page_wrapper .h2_wrapper span {
	display: inline-block;
}
.page_wrapper .h2_jp_wrapper {
	text-align: center;
	margin-bottom: 5px;
}
.page_wrapper .h2_jp {
	position: relative;
	display: inline-block;
	font-size: 1.875rem;
	font-weight: normal;
}
.page_wrapper .h2_jp:before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	border-bottom: 1px #363636 solid;
	width: 80%;
	margin: 0 auto;
}
.page_wrapper .h2_en {
	font-size: 1.5rem;
	font-weight: normal;
}

.page_wrapper h3 {
	font-size: 1.875rem;
	font-weight: normal;
	margin: 0 0 20px;
}
@media screen and ( max-width: 960px ) {
	.page_wrapper {
		width: 85%;
		padding-top: 70px;
	}
	.page_wrapper .h2_wrapper {
		padding: 30px 0 10px;
		margin: 0 auto;
	}
	.page_wrapper h3 {
		font-size: 1.5rem;
		margin-bottom: 0;
	}
}



/* project */
.post-type-archive-project .page_wrapper {
	width: 920px;
	margin: 0 auto;
	padding-top: 200px;
}
.proj_lead {
	padding: 80px 75px;
	text-align: center;
	border: 1px #363636 solid;
	margin: 0 auto 108px;
	box-sizing: border-box;
	width: 100%;
}
.proj_lead .proj_page_title {
	margin-top: 0;
}
.proj_lead img {
	display: block;
	margin: 0 auto 60px;
	width: 350px;
	height: auto;
}
.proj_lead p {
	margin-bottom: 0;
	line-height: 2.0;
}
.proj_archive_list li {
	padding-bottom: 100px;
	text-align: center!important;
	margin-bottom: 90px;
	position: relative;
}
.proj_archive_list li:after {
	content: '';
	position: absolute;
	left: 50%;
	bottom: 15px;
	display: inline-block;
	width: 555px;
	height: 1px;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #363636;
}
.proj_archive_list li:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}
.proj_archive_list li:last-child:after {
	background: none;
}
.proj_name {
	width: 100px;
	margin: 0 auto 43px;
	display: block;
}
.proj_summary {
	margin: 0 auto 47px;
	line-height: 2.0;
}
.proj_more {
	border: 1px #363636 solid;
	padding: 4px 40px 7px;
	display: inline-block;
	font-size: 20px;
	color: #363636;
	text-decoration: none;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.proj_more:hover {
	background: #363636;
	color: #fff;
}
.proj_more .fa-angle-double-right {
	margin-left: 3px;
}
@media (max-width: 960px) {
	.post-type-archive-project .page_wrapper {
		width: 85%;
		padding-top: 100px;
	}
	.proj_lead {
		padding: 30px 20px;
		text-align: left;
		margin-bottom: 50px;
	}
	.proj_lead img {
		width: 80%;
		margin: 0 auto 30px;
	}
	.proj_archive_list li {
		padding-bottom: 90px;
		margin-bottom: 90px;
	}
	.proj_archive_list li:after {
		width: 90%;
	}
	.proj_name {
		width: 90px;
	}
	.proj_summary p {
		text-align: left!important;
	}
}

/* single_project */
.single-project .page_wrapper {
	width: 920px;
	margin: 0 auto;
	padding-top: 170px;
}
.single-project .header_title {
	border-bottom: 1px #363636 solid;
	padding-bottom: 10px;
	margin-bottom: 80px;
}
.single-project .header_title img {
	width: 165px;
	height: auto;
}
.single-project .youtube {
	margin-bottom: 20px;
}
@media screen and (max-width: 960px) {
	.single-project .page_wrapper {
		width: 85%;
		margin: 0 auto;
		padding-top: 70px;
	}
	.single-project .header_title {
		margin-bottom: 50px;
	}
	.single-project .entry_content p {
		text-align: left!important;
	}
	.single-project .entry_content h3, .single-project .entry_content h4 {
		margin-top: 30px;
	}
}

/* schedule */
/*
#slb_viewer_wrap .slb_theme_slb_baseline .slb_viewer_overlay {
	background-color: #fff!important;
}
#slb_viewer_wrap .slb_theme_slb_default .slb_data_title, #slb_viewer_wrap .slb_theme_slb_default .slb_group_status {
	font-family: 'EB Garamond', serif!important;
}
#slb_viewer_wrap .slb_theme_slb_default .slb_group_status {
	font-style: normal!important;
}
*/
.slbOverlay {
	z-index: 10000;
	background: #fff;
}
.slbWrapOuter {
	z-index: 10010;
}
.slbContentOuter {
	z-index: 10020;
}
.schedule_archive_list img {
	max-width: 100%;
	height: auto;
}
.slbImage {
	padding: 1em 0;
}
.slbCloseBtn {
	display: none;
}
.schedule_header {
	border-left: #363636 1px solid;
	padding-left: 20px;
	margin-bottom: 10px;
}
.schedule_archive_list li p {
	line-height: 1.7;
	margin-bottom: 10px;
}
.schedule_archive_list li .schedule_date, .schedule_archive_list li .schedule_title {
	font-size: 1.5rem;
}
.schedule_archive_list li .schedule_date {
	margin-bottom: 0;
	line-height: 1.5;
}
.schedule_archive_list li .schedule_title {
	display: inline-block;
/* 	border-bottom: #363636 1px solid; */
	margin-bottom: 0;
}
.schedule_archive_list li {
	margin-bottom: 85px;
}
.schedule_archive_list li a {
	color: #557baf;
	text-decoration: none;
}
.schedule_archive_list li a.permalink {
	text-decoration: none;
	color: #363636;
}
@media screen and (max-width: 960px) {
	.schedule_archive_list iframe {
		width: 100%!important;
		height: 100%!important;
	}
}

/* lesson */
.lesson h3 {
	font-size: 1.5rem;
	border-bottom: #363636 1px solid;
	margin-top: 80px;
	padding-bottom: 5px;
}
.lesson .lead {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.lesson .lead .lead_text {
	margin-right: 45px;
}
.lesson .lead .lesson_tarue {
	display: block;
}
.lesson h4 {
	border-left: #363636 1px solid;
	line-height: 1;
	font-size: 1.3rem;
	font-weight: normal;
	margin-bottom: 20px;
	padding: 0 0 0 10px;
}
.lesson .detail {
	display: flex;
	justify-content: space-between;
}
.lesson .detail .detail_01 {
	flex: 1;
}
.lesson dt {
	float: left;
	clear: left;
}
.lesson dd {
	margin-left: 85px;
}
.lesson .attention {
	margin-top: 20px;
	background: #eeeeee;
	padding: 20px 30px;
}
.lesson .lesson_contact {
	display: block;
	margin: 90px auto 0;
	padding: 10px 25px 10px 15px;
	position: relative;
	color: #363636;
	text-decoration: none;
	text-align: center;
	width: 330px;
	border: #363636 1px solid;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.lesson .lesson_contact:hover {
	background: #363636;
	color: #fff;
}
.lesson .lesson_contact:after {
	position: absolute;
	font-family: 'FontAwesome';
	content: "\f101";
	right: 10px;
	top: 25px;
	font-size: 1.2em;
}
@media screen and (max-width: 960px) {
	.lesson .lesson_contact {
		width: 85%;
		margin-top: 60px;
	}
	.lesson .lead {
		align-items: stretch;
		flex-direction: column-reverse;
	}
	.lesson .lead .lead_text {
		margin-right: 0;
	}
	.lesson .lead .lesson_tarue {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
		height: auto;
	}
	.lesson h3 {
		margin-top: 40px;
		margin-bottom: 10px;
	}
	.lesson h4 {
		line-height: 1.6;
	}
	.lesson .detail {
		display: block;
	}
}

/* session */
.session .youtube {
	margin-bottom: 20px;
}



/* single-post */
.single_post {
	margin-bottom: 50px;
}
.single_post img {
	max-width: 100%;
	height: auto;
}
.single_post > header {
	margin-bottom: 30px;
	-ms-word-wrap: break-word;
	word-wrap: break-word;
}
.single_post .entry_title {
	font-size: 36px;
	margin-bottom: 0;
}
.single_post .entry_date {
	font-family: 'andis_thin';
	font-size: 24px;
	margin-right: 20px;
	margin-bottom: 0;
}
.single_post .entry_terms ul {
	margin: 0;
}
.single_post .entry_terms li {
	float: left;
	font-size: 13px;
	margin-right: 10px;
	margin-bottom: 10px;
}
.single_post .entry_terms li.entry_category {
	background: #b9b9b9;
	padding: 3px 8px 2px;
}
.single_post .entry_terms li.entry_category a {
	color: #fff;
	text-decoration: none;	
}
.single_post .entry_terms li.entry_tags {
	height: 28px;
	border-top: #b9b9b9 1px solid;
	border-bottom: #b9b9b9 1px solid;
	border-left: #b9b9b9 1px solid;
	position: relative;
	margin-left: 10px;
}
.single_post .entry_terms li.entry_tags:after {
	content: '';
	background: url(img/_tag_parts.svg) no-repeat;
	position: absolute;
	height: 30px;
	width: 11px;
	right: -9px;
	top: -1px;
	display: inline-block;
}
.single_post .entry_terms li.entry_tags a {
	color: #b9b9b9;
	text-decoration: none;
	line-height: 28px;
	padding: 0 5px;
}
@media (max-width: 1200px) {
	.single_post .entry_title {
		font-size: 30px;
		line-height: 1.4;
	}
}


.entry_content {
	line-height: 2.0;
	-ms-word-wrap: break-word;
	word-wrap: break-word;
}
.entry_content h1 {
	border: none;
}
.entry_content h2 {
	font-size: 28px;
	padding: 12px 15px;
	margin-top: 70px;
	font-weight: bold;
	display: block;
	line-height: 1.6;
}
.first_element + h2 {
	margin-top: 0;
}
.entry_content h2:before {
	border: none;
}
.entry_content h3,
.entry_content h4 {
	font-size: 30px;
	padding: 0;
	font-weight: bold;
	margin-bottom: 0;
	margin-top: 70px;
}
.entry_content h5 {
	font-size: 18px;
}
.entry_content h5:before {
	content: "\f0da";
	color: #8b081d;
	font-family: 'FontAwesome';
	margin-right: 10px;
}
.entry_content h6 {
	font-size: 16px;
}
.entry_content blockquote {
	margin-left: 50px;
	padding: 10px 0 10px 30px;
	border-left: #333 1px dashed;
}
.entry_content table {
	border: #333 1px solid;
	border-collapse: collapse;
}
.entry_content th {
	color: #fff;
	background: #333;
	padding: 5px 10px;
	border: #fff 1px solid;
}
.entry_content th:last-child,
.entry_content tr:last-child th {
	border-right: none;
	border-bottom: none;
}
.entry_content a {
	color: #8b081d;
	text-decoration: underline;
}
.entry_content td {
	border: 1px #999 solid;
	padding: 5px 10px;
}
.entry_content ul {
	padding-left: 30px;
}
.entry_content ul li:before {
	content: "\f105";
	color: #8b081d;
	font-family: 'FontAwesome';
	margin-right: 10px;
}
.entry_content li {
	margin-bottom: 10px;
}
.entry_content strong {
	font-weight: bold;
	background: linear-gradient(transparent 50%, #fbfa8f 50%);
}
.entry_content .aligncenter {
	margin: 0 auto;
	display: block;
}
.entry_content .alignleft {
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
}
.entry_content .alignright {
	float: right;
	margin-left: 20px;
	margin-bottom: 20px;
}
.entry_content .wp-caption-text {
	font-size: 14px;
	color: #999999;
}
@media screen and (max-width: 960px) {
	.entry_content h3,
	.entry_content h4 {
		margin-top: 50px;
		font-size: 24px;
	}
}





/* pagenation */
.pagination_wrapper {
	text-align: center;
	margin-top: 80px;
}
.pagination {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.page-numbers {
	font-size: 20px;
	margin-right: 20px;
	padding: 2px 16px;
	border: 1px #bebebe solid;
	color: #363636;
	text-decoration: none;
	margin-top: 20px;
	display: block;
}
.page-numbers:last-child {
	margin-right: 0;
}
.page-numbers.current {
	background: none;
	font-weight: bold;
	background: #bebebe;
	color: #ffffff;
}

/* more_btn */
.more_btn {
	border: 1px #363636 solid;
	padding: 7px 40px 7px;
	display: inline-block;
	font-size: 16px;
	color: #363636;
	text-decoration: none;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.more_btn:hover {
	background: #363636;
	color: #fff;
}
.more_btn .fa-angle-double-right {
	margin-left: 3px;
}


/* profile */
.profile01 {
	margin-bottom: 100px;
}
/*
.profile01 .right {
	float: right;
	width: 49%;
	text-align: center;
}
.profile01 .right img.prof_img {
	display: block;
	margin: 0 auto;
}
.profile01 .right ul {
	display: inline-block;
}
.profile01 .right li {
	float: left;
	font-size: 30px;
	margin-right: 30px;
}
.profile01 .right li a,
.profile01 .right li a:hover {
	color: #9a9a9a;
	text-decoration: none;
}
.profile01 .right li:last-child {
	margin-right: 0;
}
.profile01 .left {
	float: left;
	width: 47%;
}
*/
.profile01 .prof_img {
	float: right;
	margin-left: 20px;
	margin-bottom: 20px;
}
@media screen and ( max-width: 960px ) {
	.profile01 {
		margin-bottom: 50px;
	}
	.profile01 .left,
	.profile01 .right {
		width: 100%;
		float: none;
		margin: 0 auto;
	}
	.prof_img {
		float: none;
		display: block;
		margin: 0 auto;
		width: 100%;
		height: auto
	}
	.profile01 .right {
		margin-bottom: 30px;
	}
	.profile01 h3 {
		line-height: 1.3;
	}
}

.music_video h3 {
	overflow: hidden;
	text-align: center;
	font-size: 1.5rem;
	margin-bottom: 20px;
}
.music_video h3 span {
  position: relative;
  display: inline-block;
  margin: 0 2.5em;
  padding: 0 1.2em;
  text-align: left;
}
.music_video h3 span::before,
.music_video h3 span::after {
  position: absolute;
  top: 50%;
  content: '';
  width: 400%;
  height: 1px;
  background-color: #333;
}
.music_video h3 span::before {
  right: 100%;
}
.music_video h3 span::after {
  left: 100%;
}
.music_video section {
	position: relative;
	padding-top: 40px;
}
.music_video section:first-child {
	padding-top: 0;
}
.music_video section:after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -40px;
  display: inline-block;
  width: 60%;
  height: 1px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #cccccc;
}
.music_video section:last-child:after {
	background: none;
}
@media screen and (max-width: 960px) {
	.music_video section {
		padding-top: 30px;
	}
	.subscription img {
		width: 80%;
		height: auto;	
	}
}

/* works */
.works_archive_list li {
	text-align: center!important;
	margin-bottom: 50px;
	padding-bottom: 50px;
	position: relative;
}
.works_archive_list li:after {
	content: '';
	position: absolute;
	left: 50%;
	bottom: 15px;
	display: inline-block;
	width: 555px;
	height: 1px;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #ccc;
}
.works_archive_list li:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}
.works_archive_list li:last-child:after {
	background: none;
}
.works_archive_list li a {
	color: #557baf;
	text-decoration: none;
}
@media screen and (max-width: 960px) {
	.works_archive_list li {
		text-align: left!important;
	}
}


/* contact */
.contact .lead {
	margin-bottom: 60px;
}
.ta_center {
  text-align: center;
}
.contact_list {
	margin: 0 auto;
	width: 540px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.contact_list dt {
	text-align: right;
	width: 135px;
	line-height: 1.2;
  margin: 0;
}
.contact_list dt .english {
	font-size: 0.9em;
	color: #898989;
}
.contact_list dd {
  width: calc(100% - 135px - 25px);
	margin: 0 0 38px;
  text-align: left;
  line-height: 1.2;
}
.contact_list dd p {
  text-align: left;
}
.contact_list input[type="text"],
.contact_list input[type="email"] {
	height: 35px;
	width: 100%;
	border: #363636 1px solid;
	font-size: 16px;
	padding: 0 5px;
	-webkit-appearance: none!important;
	border-radius: 0!important;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.contact_list textarea {
	width: 100%;
	height: 120px;
	font-size: 18px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-appearance: none!important;
	border-radius: 0!important;
}
.contact {
	text-align: center;
}
.contact input[type="submit"],
.contact input[type="button"] {
	display: inline-block;
	font-size: 20px;
	font-family: 'EB Garamond';
	border: 1px #363636 solid;
	padding: 10px 40px;
	color: #363636;
	-webkit-transition: all .3s;
	transition: all .3s;
	background: #fff;
	-webkit-appearance: none!important;
	border-radius: 0!important;
}
.contact input[type="submit"]:hover,
.contact input[type="button"]:hover {
	background: #363636;
	color: #fff;
}
.wpcf7-not-valid-tip {
  margin-top: 8px;
}
.wpcf7-spinner {
  display: none !important;
}
.wpcf7-previous {
  margin-right: 30px;
}
.wpcf7-response-output {
  border: none!important;
  color: #dc3232;
}
input[name="recaptcha-v3"] + br,
input[name="recaptcha-v3"] + br + br {
	display: none;
}
@media screen and (max-width: 960px) {
	.contact_list {
		width: 100%;
	}
  .contact_list p {
    margin-bottom: 0;
  }
	.contact_list dt {
		float: none;
		width: 100%;
		text-align: left;
    margin-bottom: 10px;
    border-bottom: 1px dotted #222222;
    padding-bottom: 5px;
	}
	.contact_list dt br {
		display: none;
	}
	.contact_list dt br:before {
		content: '';
		margin-left: 10px;
	}
	.contact_list dd {
		float: none;
		margin-left: 0;
    margin-bottom: 30px;
    width: 100%;
	}
}


