@charset "utf-8";

.lower {
	margin-top: 100px;
}
@media screen and (max-width:599px) {
	.lower {
		margin-top: 0;
	}
}

br.sp {
	display: none;
}
@media screen and (max-width:599px) {
	br.sp {
		display: block;
	}
}
/*=======================

	homeLead

=======================*/
#homeLead {}

.homeLead__inner {}

.homeLead__copy {
	font-size: 35px;
	color: #FF5F09;
	text-align: center;
	letter-spacing: 0.3em;
	margin-bottom: 45px;
}

.homeLead__txt_wrap {
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: center;
	line-height: 2.2777777778;
}

#homeLead .more_btn {
	margin-top: 50px;
	text-align: center;
}
@media screen and (max-width: 599px) {
	.homeLead__copy {
		font-size: 23px;
		letter-spacing: 0.3em;
		line-height: 2;
		margin-bottom: 25px;
	}

	.homeLead__txt_wrap {
		font-size: 14px;
		letter-spacing: 0.03em;
		text-align: center;
		line-height: 2;
	}

	#homeLead .more_btn {
		margin-top: 30px;
		text-align: center;
	}
}
/*=======================

	work

=======================*/
#work {}

#work .inner {}

.work__ttl {
	width: 395px;
	margin-bottom: 50px;
}
.otherwork__ttl {
	width: 395px;
	margin-bottom: 50px;
}

.work-desc {
	font-size: 20px;
	letter-spacing: 0.3em;
	line-height: 1.4;
	margin-bottom: 40px;
}

.work-list {
	display: flex;
	/* justify-content: space-between; */
	gap: 24px;
	flex-wrap: wrap;
}

.work-item {
	position: relative;
	width: calc((100% - 48px)/3);
}

.work-link {
	position: relative;
}

.work-thumbnail {
	margin-bottom: 13px;
	width: 100%;
	position: relative;
}

.work-thumbnail img {
	width: 100%;
}

.work-content {}

.work-category {
	position: absolute;
	left: 0;
	bottom: 20px;
	padding: 4px 16px 5px;
	font-size: 15px;
}

.work-category.report {
	background-color: #231815;
	color: #fff;
}

.work-category.interview {
	background-color: #fff;
	color: #231815;
}

.work-tags {
	font-size: 14px;
	margin-top: 13px;
	color: #71706F;
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}

.work-tags-item {
	white-space: nowrap;
	display: inline-block;
}

.work-tags-item:nth-child(n+2) {}

.work-title {
	font-size: 18px;
	letter-spacing: 0.12em;
	line-height: 1.4;
}
.otherwork__ttl {
	width: 218.61px;
	margin-bottom: 23px;
}
@media screen and (max-width: 599px) {
	#work {}

	#work .inner,
	#work__index .inner {
		padding: 0 6%;
	}

	.work__ttl {
		width: 143px;
		margin-bottom: 24px;
	}

	.work-desc {
		font-size: 15px;
		letter-spacing: 0.2em;
		line-height: 1.3;
		margin-bottom: 20px;
	}

	.work-list {
		gap: 26px;
		flex-direction: column;
	}

	.work-item {
		width: 100%;
	}

	.work-link {}

	.work-thumbnail {
		margin-bottom: 7px;
	}

	.work-thumbnail img {}

	.work-content {}

	.work-category {
		bottom: 16px;
		font-size: 13px;
	}

	.work-tags {
		font-size: 13px;
		margin-top: 12px;
		gap: 7px;
	}

	.work-tags-item {}

	.work-tags-item:nth-child(n+2) {}

	.work-title {
		font-size: 16px;
		letter-spacing: 0.1em;
		line-height: 1.3;
	}
}
/*=======================

	tags

=======================*/
#tags {}

	.tags__ttl {
		width: 192px;
		margin-bottom: 40px;
	}
	.tags__desc {
		font-size: 22px;
		color: #FF5F09;
		margin-bottom: 40px;
	}
	.tags-list {
		display: flex;
		flex-wrap: wrap;
		gap:28px;
	}
	.tags-list-item {
		font-size: 18px;
		color: #71706F;
		letter-spacing: .22em;
	}
	/* 絞り込みタイトル */
	.tagSearch-title {
		font-size: 22px;
		/* color: #FF5F09; */
		letter-spacing: .2em;
		margin-bottom: 40px;
		text-align: center;
	}
	.tagSearch-title .tagname {
		font-weight: bold;
		display: inline-block;
		padding: 4px 14px 5px;
		border-radius: 500px;
		background-color: #fafafa;
	}
	.tagSearch-title .tagdesc {
		margin-left: 4px;
	}
	@media screen and (max-width: 599px) {
		#tags .inner {
			padding: 0 6%;
		}
		.tags__ttl {
			width: 120px;
			margin-bottom: 24px;
		}
		.tags__desc {
			font-size: 18px;
			margin-bottom: 24px;
		}
		.tags-list {
			display: flex;
			flex-wrap: wrap;
			gap:20px;
		}
		.tags-list-item {
			font-size: 15px;
			letter-spacing: .22em;
		}
	}
/*=======================

	clients

=======================*/
#clients {}

#clients .inner {}

.clients__ttl {
	width: 498px;
	margin-bottom: 50px;
}

.clients__list {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	align-items: center;
	gap: 60px;
}

.clients__listItem {}

.clients__listItem img {}
@media screen and (max-width: 599px) {
	#clients .inner {
		padding: 0 6%;
	}

	.clients__ttl {
		width: 188px;
		margin-bottom: 44px;
	}

	.clients__list {
		justify-content: space-between;
		gap: 14px;
	}

	.clients__listItem {
		width: calc((100% - 28px)/3);
		text-align: center;
	}

	.clients__listItem:nth-child(n+3) {
		margin-top: 40px;
	}
}
/*=======================

	company

=======================*/
/*=======================

	award

=======================*/
#award {}

#award .inner {}

.award__ttl {
	width: 479px;
	margin-bottom: 50px;
}

.award__list {
	list-style-type: none;
	list-style: none;
}

.award__item + .award__item {
	margin-top: 8px;
}

.award__item a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 12px 0;
}
.award__item a:hover {
	opacity: .8;
	background-color: #fafafa;
}
.award__item a:hover .award__heading {
	text-decoration: underline;
}

.award__date {
	font-size: 18px;
	letter-spacing: 0.08;
	color: #777777;
	white-space: nowrap;
	width: 120px;
}

.award__heading {
	width: calc(100% - 120px);
	font-size: 18px;
	letter-spacing: .08em;
	line-height: 1.4;
}
@media screen and (max-width: 599px) {
	#award .inner {
		padding: 0 3%;
	}

	.award__ttl {
		width: 213.18px;
		margin-bottom: 44px;
	}

	.award__list {}

	.award__item a{
		align-items: flex-start;
	}
	.award__date {
		font-size: 16px;
	}

	.award__heading {
		font-size: 16px;
		margin-top: -3px;
	}
}
/*=======================

	company

=======================*/
#company .company__ttl {
	max-width: 675px;
	/* width: 67.5%; */
}

#company .inner {
	margin-bottom: 120px;
}
@media screen and (max-width:599px) {
	#company .company__ttl {
		max-width: 273.72px;
		margin-left: 6%;
	}
}

#company .company__content {
	max-width: 1024px;
	width: 96%;
	margin: 120px auto 0;
}
@media screen and (max-width:599px) {
	#company .company__content {
		margin-top: 12%;
	}
}

#company .company__content dl {
	display: flex;
	flex-wrap: wrap;
	font-size: min(2.67vw, 18px);
	line-height: 2;
}
@media screen and (max-width:599px) {
	#company .company__content dl {
		font-size: max(3.73vw, 14px);
	}
}

#company .company__content dl > dt {
	width: 23%;
	border-bottom: solid 1px var(--blk);
	padding: 32px 2%;
}
@media screen and (max-width:599px) {
	#company .company__content dl > dt {
		width: 100%;
		border-bottom: none;
		padding: 16px 2% 0;
	}
}

#company .company__content dl > dd {
	width: 77%;
	border-bottom: solid 1px var(--blk);
	padding: 32px 2%;
}
@media screen and (max-width:599px) {
	#company .company__content dl > dd {
		width: 100%;
		padding: 0 2% 16px;
	}
}

#company .company__content .small_txt {
	font-size: min(2.50vw,18px);
	display: block;
	margin-bottom: 8px;
}
@media screen and (max-width:599px) {
	#company .company__content .small_txt {
		font-size: max(3.2vw,13px);
		display: block;
		margin-bottom: 8px;
	}

	#company .company__content .location li {
		padding-left: 4.5rem;
		text-indent: -4.5rem;
	}

	#company .company__content .job__info li {
		padding-left: 2rem;
		text-indent: -2rem;
	}
}
/*=======================

	profile

=======================*/
#profile .profile__ttl {
	max-width: 465px;
	width: 67.5%;
}
@media screen and (max-width:599px) {
	#profile .profile__ttl {
		max-width: 197.17px;
		margin-left: 6%;
	}
}

#profile .profile__content {
	max-width: 1024px;
	width: 96%;
	margin: 120px auto 0;
}
@media screen and (max-width:599px) {
	#profile .profile__content {
		margin-top: 12%;
	}
}

#profile .profile__content dl {
	display: flex;
	flex-wrap: wrap;
	font-size: min(2.67vw, 18px);
	line-height: 2;
}
@media screen and (max-width:599px) {
	#profile .profile__content dl {
		font-size: max(3.73vw, 14px);
	}
}

#profile .profile__content dl > dt {
	width: 23%;
	border-bottom: solid 1px var(--blk);
	padding: 32px 2%;
}
@media screen and (max-width:599px) {
	#profile .profile__content dl > dt {
		width: 100%;
		border-bottom: none;
		padding: 16px 2% 0;
	}
}

#profile .profile__content dl > dd {
	width: 77%;
	border-bottom: solid 1px var(--blk);
	padding: 32px 2%;
}
@media screen and (max-width:599px) {
	#profile .profile__content dl > dd {
		width: 100%;
		padding: 0 2% 16px;
	}
}

#profile .profile__content .small_txt {
	font-size: min(2.50vw,18px);
	display: block;
	margin-bottom: 8px;
}
@media screen and (max-width:599px) {
	#profile .profile__content .small_txt {
		font-size: max(3.2vw,13px);
		display: block;
		margin-bottom: 8px;
	}

	#profile .profile__content .location li {
		padding-left: 4.5rem;
		text-indent: -4.5rem;
	}

	#profile .profile__content .job__info li {
		padding-left: 2rem;
		text-indent: -2rem;
	}
}
/*=======================

	message

=======================*/
#message .message__ttl {
	max-width: 604px;
	width: 60.4%;
}
@media screen and (max-width:599px) {
	#message .message__ttl {
		margin-left: 6%;
	}
}

#message .message__content {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	font-size: min(2.50vw,18px);
	letter-spacing: 0.1em;
	line-height: 1.80;
	margin-top: 120px;
}
@media screen and (max-width:599px) {
	#message .message__content {
		font-size: max(3.73vw, 14px);
		width: 90%;
		margin: 12% auto 0;
	}
}

#message .message__content .message__txt {
	width: 52%;
	margin-right: 4%;
}
@media screen and (max-width:599px) {
	#message .message__content .message__txt {
		width: 100%;
	}
}

#message .message__content .message__txt > p {
	margin-bottom: 40px;
}

#message .message__content .leader__img {
	width: 44%;
}
@media screen and (max-width:599px) {
	#message .message__content .leader__img {
		width: 80%;
		margin: 12% auto 0;
	}
}

#message .message__content .leader__info {
	margin-top: 40px;
}

#message .message__content .leader__info .info__job {
	letter-spacing: 0.2em;
}

#message .message__content .leader__info .info__name {
	font-size: min(4.77vw, 32px);
	letter-spacing: 0.2em;
}
@media screen and (max-width:599px) {
	#message .message__content .leader__info .info__name {
		font-size: max(5.33vw, 22px);
	}
}

#message .message__content .leader__info .en_name {
	font-size: min(2.50vw,18px);
	letter-spacing: 0.2em;
	margin-left: 20px;
	display: inline-block;
}
@media screen and (max-width:599px) {
	#message .message__content .leader__info .en_name {
		font-size: max(3.2vw,13px);
	}
}
/*=======================

	policy

=======================*/
#policy .policy__ttl {
	max-width: 1000px;
	width: 94%;
}

#policy .policy__content {
	width: calc(100% - 4%);
	margin: 80px auto;
}
@media screen and (max-width:599px) {
	#policy .policy__content {
		margin: 12% auto;
		font-size: 14px;
	}
}

#policy .policy__content p {
	margin-bottom: 1.8rem;
	line-height: 1.6;
}

#policy .policy__content li {
	line-height: 1.8;
}

#policy .policy__content .policy__item {
	margin-bottom: 40px;
}

#policy .policy__content .policy__address p {
	margin-bottom: 0;
}
/*=======================

	news

=======================*/
.lower #news__index .news__ttl {
	max-width: 391px;
	width: 39.1%;
}

.lower #news__index .news__list {
	margin: 80px auto 0;
	width: 96%;
}
@media screen and (max-width:768px) {
	.lower #news__index .news__list {
		margin: 40px auto 0;
	}
}

.lower #news__index .news__list .list__item:nth-of-type(1) {
	border-top: solid 1px #dadada;
}

.lower #news__index .news__list .list__item {
	border-bottom: solid 1px #dadada;
	padding: 32px 2%;
}

.lower #news__index .news__list .list__item a {
	display: flex;
	align-items: center;
}

.lower #news__index .news__list .list__item .news__thumb {
	width: 31.5%;
}

.lower #news__index .news__list .list__item .news__thumb img {
	border-radius: 32px;
	max-width: 378px;
	width: 100%;
	height: auto;
}
@media screen and (max-width:599px) {
	.lower #news__index .news__list .list__item .news__thumb img {
		border-radius: 8px;
	}
}

.lower #news__index .news__list .list__item .news__info {
	margin-left: 4%;
	width: 64%;
}

.lower #news__index .news__list .list__item .news__info > p {
	font-size: min(2.34vw, 22px);
	line-height: 1.68;
}
@media screen and (max-width:599px) {
	.lower #news__index .news__list .list__item .news__info > p {
		font-size: max(3.14vw, 14px);
	}
}

.lower #news__index .news__list .list__item .date {
	font-size: 16px;
	margin-bottom: 24px;
}
@media screen and (max-width:599px) {
	.lower #news__index .news__list .list__item .date {
		margin-bottom: 4px;
		font-size: max(2.93vw, 11px);
	}
}
@media screen and (max-width:599px) {
	.lower #news__index .news__list .list__item {
		font-size: max(3.45vw, 13px);
		padding: 24px 2%;
		line-height: 1.6;
	}
}
@media screen and (max-width:599px) {
	.lower #news__index .news__list .list__item .date {
		margin-right: 1.6rem;
	}
}
/*=======================

	news- single

=======================*/
.lower #news__post .news__content {
	max-width: 1000px;
	width: 96%;
	margin: 0 auto;
}

.lower #news__post .news__content .post__date {
	font-size: 18px;
}
@media screen and (max-width:599px) {
	.lower #news__post .news__content .post__date {
		font-size: max(3.45vw, 13px);
	}
}

.lower #news__post .news__content .post__ttl {
	font-size: 28px;
	/* font-style: italic; */
	font-weight: bold;
	line-height: 1.3;
	letter-spacing: 0.15em;
	margin-top: 16px;
}
@media screen and (max-width:599px) {
	.lower #news__post .news__content .post__ttl {
		font-size: 24px;
	}
}

.lower #news__post .news__content .post__thumb {
	margin-top: 40px;
}
@media screen and (max-width:599px) {
	.lower #news__post .news__content .post__thumb {
		margin-top: 8%;
	}
}

.lower #news__post .news__content .post__thumb img {
	max-width: 1000px;
	width: 100%;
	border-radius: 40px;
	height: 530px;
	object-fit: cover;
}
@media screen and (max-width:768px) {
	.lower #news__post .news__content .post__thumb img {
		border-radius: 24px;
		height: auto;
		object-fit: unset;
	}
}

.lower #news__post .news__content .post__content {
	margin-top: 80px;
	font-size: 17px;
	letter-spacing: 0.12em;
	line-height: 1.65;
  /* font-family: "Yu Gothic", "游ゴシック", YuGothic, 'Noto Sans JP', 'Hiragino Gothic ProN', "ヒラギノ角ゴ Pro W3",  sans-serif; */
}
@media screen and (max-width:599px) {
	.lower #news__post .news__content .post__content {
		font-size: 16px;
		line-height: 1.6;
		margin-top: 8%;
	}
}

.lower #news__post .news__content .post__content a {
	color: #5F5F5F;
	text-decoration: underline;
	margin: 12px auto;
	display: block;
	word-wrap: break-word;
}

.post__content p + p {
	margin-top: 1em;
}
.post__content img {
	margin-top: 20px;
	margin-bottom: 20px;
}
.post__content h1, .post__content h2, .post__content h3, .post__content h4 , .post__content h5 {
	font-weight: bold;
	margin-top: 2em;
	margin-bottom: .5em;
	font-size: 20px;
}

.lower #news__post .post__share {
	margin-top: 80px;
}

.lower #news__post .back__index {
	text-align: center;
	margin-top: 80px;
}

.lower #news__post .back__index a {
	border: solid 1px var(--blk);
	display: inline-block;
	padding: 20px 40px;
	background-color: #fff;
	transition: all 0.5;
}

.lower #news__post .back__index a:hover {
	background-color: var(--blk);
	color: #fff;
}
/*=======================

	ページャー

=======================*/
.pager {
	margin: 80px auto 0;
	text-align: center;
}

.pager .page-numbers {
	border: solid 1px var(--blk);
	padding: 8px 15px;
	margin: 0 5px;
}
@media screen and (max-width:599px) {
	.pager .page-numbers {
		padding: 8px;
		font-size: 12px;
	}
}

.pager .page-numbers:hover {
	opacity: 0.7;
}

.pager .next,
.pager .prev {
	border: none;
}

.pager .current {
	background-color: #EF814F;
	color: #fff;
	border: solid 1px #EF814F;
}
/*=======================

	404

=======================*/
.no_page .no__ttl {
	font-size: 28px;
	margin-bottom: 32px;
}

.no_page .back__home {
	background-color: #5F5F5F;
	color: #fff;
	display: inline-block;
	padding: 12px;
	margin-top: 40px;
}
/*=======================

	contact

=======================*/
.lower #contact__wrap .contact__ttl {
	max-width: 550px;
	width: 55%;
}
/*=======================

	recruit

=======================*/
.lower #recruit .recruit__ttl {
	max-width: 500px;
	width: 50%;
}
@media screen and (max-width:599px) {
	.lower #recruit .recruit__ttl {
		margin-left: 6%;
	}
}

.lower #recruit .recruit__content {
	display: flex;
	justify-content: space-between;
	margin-top: 120px;
}
@media screen and (max-width:599px) {
	.lower #recruit .recruit__content {
		flex-direction: column;
		margin-top: 12%;
	}
}

.lower #recruit .recruit__content .recruit__lead_txt {
	max-width: 641px;
	margin-bottom: 40px;
}
@media screen and (max-width:599px) {
	.lower #recruit .recruit__content .recruit__lead_txt {
		width: 90%;
		margin: 0 auto 8%;
	}
}

.lower #recruit .recruit__content .recruit__txt_wrap > p {
	font-size: min(2.33vw, 16px);
	letter-spacing: 0.12em;
	line-height: 2.18;
}
@media screen and (max-width:599px) {
	.lower #recruit .recruit__content .recruit__txt_wrap > p {
		font-size: max(3.73vw, 14px);
		width: 90%;
		margin: 0 auto 8%;
	}
}

.lower #recruit .recruit__content .recruit__img {
	max-width: 751px;
	width: 52.5%;
	margin-left: 48px;
}
@media screen and (max-width:599px) {
	.lower #recruit .recruit__content .recruit__img {
		width: 90%;
		margin: 0 auto;
	}
}
/*=======================

	contact_form

=======================*/
/*Contact Form 7カスタマイズ*/
/*スマホContact Form 7カスタマイズ*/
.inquiry {
	margin: 120px auto 0;
	width: 84%;
}

.inquiry .haveto {
	font-size: 16px;
	color: #E50012;
	letter-spacing: 0.12em;
	line-height: 1;
	padding-left: 6px;
}

.inquiry tr {
	display: flex;
	align-items: center;
	padding-bottom: 16px;
	justify-content: center;
}
@media(max-width:599px) {
	.inquiry tr {
		flex-direction: column;
	}
}

.inquiry th {
	text-align: left;
	font-size: 14px;
	padding-right: 5px;
	width: 30%;
	padding-bottom: 16px;
}

.inquiry td {
	font-size: 16px;
	padding-bottom: 16px;
	width: 70%;
}

.wpcf7-list-item {
	margin: 0 1.6em 10px 0 !important;
}

.inquiry td [type="checkbox"] {
	width: auto;
}

.inquiry td input,
.inquiry textarea {
	background-color: #efefef;
	width: 100%;
	padding: 10px;
}

.wpcf7-acceptance {
	text-align: center;
	margin: 80px auto 0;
	display: block;
}

.wpcf7-acceptance a {
	text-decoration: underline;
}
@media(max-width:599px) {
	.inquiry td,
	.inquiry th {
		display: block!important;
		width: 100%!important;
		border-top: none!important;
		-webkit-box-sizing: border-box!important;
		-moz-box-sizing: border-box!important;
		box-sizing: border-box!important;
	}
}
/*横の行とテーブル全体*/
.entry-content .inquiry tr,
.entry-content table {
	border: solid 1px #d7d7d7;
}
/*送信ボタンのデザイン変更*/
#formbtn {
	display: block;
	padding: 1em 0;
	margin-top: 30px;
	width: 50%;
	background: #FE6E00;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	max-width: 340px;
	text-align: center;
	margin: 80px auto;
	transition: all 0.3s;
	border: solid 1px #FE6E00;
}
/*送信ボタンマウスホバー時*/
#formbtn:hover {
	border: solid 1px #FE6E00;
	background: #fff;
	color: #FE6E00;
}
