@charset "utf-8";

/* -------------記事装飾----------- */

.blogInfo{
	padding-top: 10px;
}

.blog_list_day{
	padding-right: 14px;
	margin-right: 14px;
	border-right: solid 1px #DEDCE8;
}

.singleCategory-list{
	column-gap: 10px;
}

.singleCategory-listItem{
	padding: 2px 8px;
	border-radius: 50px;
	font-size: 12px; 
	background-color: #EFEFF2;
	line-height: 160%;
}


.singleBody h2 {
	font-size: 26px;
	font-weight: bold;
	padding-bottom: 30px;
	margin-top: 60px;
	margin-bottom: 20px;
	line-height: 160%;
	letter-spacing: normal;
	border-bottom: solid 1px #DFDFDF;
}

.serviceSingleDetail .singleTtl h2 {
	padding-bottom: 0;
	border-bottom: unset;
	text-align: center;
	margin-bottom: 40px;
}

.singleBody h3 {
	font-size: 20px;
	font-weight: bold;
	line-height: 160%;
	margin-bottom: 20px;
	margin-top: 40px;
	padding-left: 20px;
	position: relative;
}

.singleBody h3::before{
	content: "";
	display: block;
	height: 100%;
	width: 3px;
	background-color: #282828;
	position: absolute;
	left: 0;
	top: 0;
}

.singleBody h4,
.singleBody h5,
.singleBody h6 {
	font-size: 14px;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 20px;
	margin-top: 30px;
}
.singleBody p{
	margin-top: 20px;
}

.wp-block-image{
	margin-bottom: 40px;
}

.mokuji-list{
	margin-top: 60px;
	padding: 40px;
	background-color: #EFEFF2;
	border-radius: 10px;
}

.mokuji-list li{
	margin: 0!important;
	font-size: 18px;
	font-weight: 600;
	letter-spacing: normal;
	line-height: 180%;
	list-style: none!important;
}

.mokuji-list li a{
	transition: all .3s;
}

.mokuji-list li a:hover{
	color: #2638E6;
}

.mokuji-list>li>ul{
	padding-top: 20px;
}

.mokuji-list ul li{
	margin: 0;
}

.mokuji-list ul li a{
	padding-bottom: 14px;
	margin-bottom: 14px;
	border-bottom: solid 1px #D9D9D9;
}

.mokuji-list ul li ul{
	margin-left: 20px;
}

.mokuji-list ul li a{
	display: block;
	color: #000000;
	text-decoration: unset;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: normal;
	line-height: 160%;
} 


@media screen and (max-width:768px) {
	.singleCategory-list{
		flex-wrap: wrap;
		row-gap: 6px;
	}

	.singleCategory-listItem{
		padding: 2px 8px;
		font-size: 10px; 
	}

	.singleBody h2 {
		margin-top: 60px;
	}

	.singleBody h3 {
		margin-top: 30px;
	}

	.singleBody h4,
	.singleBody h5,
	.singleBody h6 {
		margin-top: 20px;
	}
}

/* リスト */
.singleBody ul li,
.singleBody ol li {
	margin-left: 40px;
}

.singleBody ul li {
	list-style-type: disc;
}

.singleBody ol li {
	list-style-type: decimal;
}

/* 引用文 */
blockquote {
	position: relative;
	padding: 20px 15px 10px 60px;
	box-sizing: border-box;
	font-style: italic;
	background: #efefef;
	color: #555;
}

blockquote:before {
	display: inline-block;
	position: absolute;
	top: 18px;
	left: 15px;
	content: url(../img/quote-left-solid.svg);
}

blockquote p {
	padding: 0;
	margin: 10px 0;
	line-height: 1.7;
}

blockquote cite {
	display: block;
	text-align: right;
	color: #888888;
	font-size: 0.9em;
}

/* テーブル */
.singleBody table {
	border: 1px solid #afafaf;
	margin: 30px 0;
}

.singleBody thead {
	background: #333;
	color: #fff;
	text-align: center;
	padding: 4px 5px;
}

.singleBody tbody tr {
	border-bottom: 1px solid #afafaf;
}

.singleBody tbody tr:last-child {
	border-bottom: 0px;
}

.singleBody table thead th,
.singleBody table tbody th,
.singleBody table tbody td {
	border-right: 1px solid #afafaf;
	padding: 0 5px;
}

.singleBody table thead th:last-child,
.singleBody table tbody td:last-child {
	border-right: 0px;
}

.singleBody table tbody th {
	background: #f5f5f5;
	text-align: center;
	font-weight: bold;
	padding: 3px 5px;
}

/* 定義リスト */
.singleBody dl {
	margin: 30px 0;
}

.singleBody dl dt {
	font-weight: bold;
	font-size: 120%;
}

.singleBody dl dd {
	margin: 0 0 20px 40px;
}

/* Youtubeを横100％表示 */
.singleBody .wp-block-embed__wrapper {
	padding-bottom: 56.25%;
	/* アスペクト比16:9の場合 */
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	margin-bottom: 2rem;
	/* YouTubeの下に余白をつける */
}

.singleBody .is-provider-youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* リンク */
.singleBody a {
	color: #2151F5;
	text-decoration: underline;
}

/* 長い英単語でも折り返し表示できる */
.siglePnTxtNext h3,
.siglePnTxt h3,
.singleTtlWrap h1,
.bc,
.columnListTxt,
.archiveListTxt {
	-ms-word-wrap: break-word;
	word-wrap: break-word;
}


/* ページャー -------------------- */

.pagenation {
	margin: 100px auto 0;
}

.page-numbers {
	display: flex;
	justify-content: center;
}

.page-numbers>li>span,
.page-numbers>li>a {
	display: block;
	font-size: 14px;
	background: #fff;
	border: 1px solid #DEDCE8;
	color: #0F0F0F;
	line-height: 1;
	border-radius: 5px;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	align-items: center;
	width: 55px;
	height: 55px;
	transition: .3s;
}

.page-numbers>li {
	margin-right: 10px;
}

.page-numbers.current {
	background: #2638E6;
	border: 1px solid #2638E6;
	color: #fff;
}

.page-numbers>li>a:hover {
	background: #2638E6;
	border: 1px solid #2638E6;
	color: #fff;
	opacity: 1;
}

.writerWrap{
	display: none;
}

.writerImg{
	width: 50px;
	margin-right: 20px;
}

.writerInfo p{
	font-weight: 600;
	line-height: 160%;
	letter-spacing: normal;
}

.writerInfo p:first-of-type{
	font-size: 14px;
	color: #5F5F5F;
}

.snsContainer{
	padding-top: 10px;
}

.sns-list{
	justify-content: flex-end;
	column-gap: 10px;
}

.sns-listItem{
	width: 32px;
}

.day02{
	font-size: 12px;
	letter-spacing: normal;
	color: #74727D;
	text-align: right;
}

.sns-list02{
	column-gap: 20px;
}

.sns-listItem02{
	padding: 25px 0;
	border: solid 1px #DEDCE8;
	border-radius: 5px;
	width: calc((100% - (20px * 1)) / 2);
	background-color: transparent;
	transition: all .3s;
	list-style-type: unset!important;
	margin: 0!important;
}

.sns-listItem02-face:hover{
	background-color: #0866FF;
}

.sns-listItem02-x:hover{
	background-color: #000000;
}

.sns-listItem02:hover path{
	transition: all .3s;
}

.sns-listItem02:hover path{
	fill: #fff;
}

.faceIcon{
	width: 15px;
	height: 30px;
	margin: 0 auto;
}

.xIcon{
	width: 30px;
	height: 30px;
	margin: 0 auto;
}


@media screen and (max-width:768px) {
	.pagenation {
		margin-top: 48px;
	}
	.page-numbers>li>span,
	.page-numbers>li>a {
		width: 40px;
		height: 40px;
	}

	.singleBody h2 {
		font-size: 22px;
	}

	.singleBody h3 {
		font-size: 18px;
		font-weight: bold;
		line-height: 160%;
		margin-bottom: 20px;
		margin-top: 40px;
		padding-left: 20px;
		position: relative;
	}


	.mokuji-list{
		padding: 30px;
	}

	.mokuji-list li{
		font-size: 16px;
		margin: 0!important;
	}


	.mokuji-list ul li a{
		padding-bottom: 12px;
		margin-bottom: 12px;
	}

	.writerImg{
		width: 40px;
		margin-right: 10px;
	}


	.writerInfo p:first-of-type{
		font-size: 12px;
	}

	.sns-list02{
		column-gap: 20px;
		list-style: none;
	}

	.sns-listItem02{
		list-style: none;
		padding: 10px 0;

	}

	.faceIcon{
		width: 10px;
		height: 25px;
	}

	.xIcon{
		width: 15px;
		height: 15px;
	}


}

.searchForm{
	position: relative;
}

.search form input {
	flex: 1 1 auto;
	padding: 18px 24px;
	background: #FFFFFF;
	border: 1px solid #FFFFFF; 
	width: 100%;
	border-radius: 10px;
	line-height: 100%;
	letter-spacing: normal;
	margin-right: 10px;
}

.serachInput::placeholder {
	color: #74727D;
	line-height: 100%;
	letter-spacing: normal;
}


.search-btn{
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 130px;
	width: 130px;
	height: 100%;
	padding: 16px 18px;
	background-color: var(--primary);
	border: solid 1px var(--primary);
	border-radius: 5px;
	transition: all .3s;
}

.search-btn:hover{
	background-color: #fff;
}

.search-btn p{
	color: #fff;
	line-height: 100%;
	letter-spacing: normal;
	transition: all .3s;
}

.search-btn:hover p{
	color: var(--primary);
}

.searchIcon{
	width: 24px;
	height: 24px;
	margin-right: 4px;
	position: relative;
}

.searchIcon svg{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

.search-btn path{
	transition: all .3s;
}

.search-btn:hover path{
	fill: var(--primary);
}

/* ---------------------------------------
* イベント・セミナー
------------------------------------------ */

.webinorTable table{
	margin: 0;
}

.webinorTable td{
	line-height: 160%;
	letter-spacing: normal;
}

.webinorTable td:first-of-type{
	width: 140px;
	padding: 10px 20px;
	background-color: #EFEFF2;
	font-weight: 600;
}

.webinorTable td:last-of-type{
	padding: 10px;
}

.webinorBtn{
	width: 260px;
	margin: 40px 0;
}

.webinorBtn a{
	padding: 20px;
	background-color: var(--primary);
	border: solid 1px var(--primary);
	color: #fff;
	line-height: 100%;
	font-weight: 600;
	letter-spacing: normal;
	border-radius: 5px;
	transition: all .3s;
	text-decoration: unset;
}

.webinorBtn a:hover{
	background-color: #fff;
	color: var(--primary);
}

.webinorBtn span{
	display: inline-block;
}

.webinorBtn span:last-of-type{
	width: 18px;
	height: 18px;
}

.webinorBtn path{
	transition: all .3s;
}

.webinorBtn a:hover path{
	fill: var(--primary);
}

/* ---------------------------------------
* 事例
------------------------------------------ */

.has-cyan-bluish-gray-color{
	color: #74727D!important;
}

.singleMember-listItem{
	margin: 0!important;
}

.singleMember-listItem:not(:first-of-type){
	padding-top: 40px;
}

.singleMember-listImg{
	width: 40%;
}

.singleMember-listImg .img {
	position: relative;
	width: 100%;
	overflow: hidden;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	transition: .5s;
}

.singleMember-listImg .img::before {
	content: "";
	display: block;
	padding-top: 78.88%;
}

.singleMember-listTxt{
	width: 52%;
}

.singleMember-listTxt .position{
	margin: 0;
}

.singleMember-listTxt .ttl2_main,.singleMember .ttl2_main{
	font-size: 24px;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
	position: relative;
	border: unset;
}

.singleMember-listTxt .ttl2_main::before{
	display: none;
}

.singleMember-listTxt .memberTxt{
	margin: 0;
	font-size: 16px;
	letter-spacing: normal;
}

/* ---------------------------------------
* サービス
------------------------------------------ */
.PageHeading-singleService{
	padding-top: 190px;
}

.serviceSingleWrap{
	position: relative;
	z-index: 2;
}

.serviceSingleTtl{
	width: 43.75%;
}

.PageHeadingTitle_main span{
	display: block;
	padding-bottom: 10px;
	font-size: 12px;
	line-height: 100%;
	letter-spacing: normal;
	color: #74727D;
}

.serviceSingleTtl p{
	padding: 30px 0;
	line-height: 180%;
	letter-spacing: normal;
}

.serviceSingleTtl .pageBtn-list{
	justify-content: unset;
	padding-top: 0;
}

.servicesingleForm,.blogform{
	width: 43.75%;
	padding: 30px;
	background-color: #EFEFF2;
	border-radius: 5px;
}

.blogform{
	width: 100%;
	font-size: 16ppx;
}

.servicesingleForm h3{
	font-weight: 600;
	padding-bottom: 20px;
	font-size: 20px;
	line-height: 160%;
	letter-spacing: normal;
}

.blogform h3{
	padding-left: 0;
	margin: 0;
}

.blogform h3::before{
	display: none;
}

.blogform .singleForm-defListDesc,.blogform .singleForm-defList{
	margin: 0;
}

.blogform .singleForm-defListTtl p{
	font-size: 16px;
	margin-top: 10px;
}

.blogform .singleForm-defListDesc p{
	margin-top:4px;
}

.servicesingleForm .formInput ,.blogform .formInput{
	padding: 10px 20px;
	background: #fff;
	border: solid 1px #DEDCE8;
	width: 100%;
	border-radius: 5px;
	line-height: 160%;
	letter-spacing: normal;
}

.blogform .form-btn02 p{
	margin: 0;
}

.blogform .form-btnWrap>p a{
	color: #232031;
}


.serviceSingleContents{
	padding: 60px 0 80px;
	background-color: #fff;
	border-radius: 5px;
}

.serviceSingleContents:not(:last-of-type){
	margin-bottom: 30px;
}

.serviceSingleDetail{
	width: 78.125%;
	margin: 0 auto;
}

.singleTtl h2{
	margin-top: 0;
}

.singleTtl>p{
	font-family: "halyard-display", sans-serif;
	font-size: 20px;
	text-align: center;
	font-weight: 500;
	line-height: 120%;
	letter-spacing: normal;
	padding-bottom: 20px;
	color: var(--primary);
	margin: 0;
}

.doWrap{
	background-color: #EFEFF2;
	padding: 20px;
	margin-top: 20px;
}

.doDetail{
	padding: 20px;
	background-color: #fff;
}

.doDetail p{
	margin: 0;
}

.singleOut-list .feature-listItem02{
	list-style-type: unset!important;
	margin: 0;
	width: calc((100% - (30px * 1) ) / 2);
}

.singleOut-list .feature-listTxt h4{
	margin-top: 0;
	padding: 0;
}

.singleOut-list .feature-listTxt p {
	margin: 0;
}

.serviceBlog_list{
	width: calc((100% - (30px * 1) ) / 2);
}

.serviceBlog_list .usecase-listItem{
	margin: 0;
	list-style: none;
}

.serviceBlog_list a{
	text-decoration: unset;
	color: #232031;
}

.serviceBlog_list .usecaseTtl {
	font-size: 18px;
	line-height: 160%;
	letter-spacing: normal;
	font-weight: 600;
	padding: 10px 0;
	margin: 0;
	padding-left: 0;
}

.serviceBlog_list .usecaseTtl::before{
	display: none;
}

.serviceBlog_list .usecaseTxt,.serviceBlog_list .usecaseOther p{
	margin: 0;
}

.servicefaq .ttl2_main{
	border: unset;
	margin: 0;
	padding: 0;
}

.servicefaq .faq-defList{
	margin: 0;
}

.servicefaq .faq-defDesc{
	margin: 0;
}

.serviceSingleDetail .member-listIItem{
	list-style: none;
	margin: 0;
	width: calc((100% - (30px * 1)) / 2);
}

.serviceSingleDetail .ttl2_main {
	font-size: 24px;
	margin: 0;
	padding-left: 0;
}

.serviceSingleDetail .ttl2_main::before{
	display: none;
}

.serviceSingleDetail .member-listInfo p{
	margin: 0;
}


/* ---------------------------------------
* ノウハウ・レポート
------------------------------------------ */
.keyword{
	padding-top: 20px;
}

.keyword p span{
	display: block;
}

.keyword p span:first-of-type{
	width: 20px;
	height: 20px;
	position: relative;
}

.keyword p span:first-of-type svg{
	position: absolute;
	left: 0;
	top: 0;
}

.keyword p span:last-of-type{
	font-size: 14px;
	line-height: 160%;
	letter-spacing: normal;
	font-weight: 600;
	margin-left: 4px;
}

.keyword-list{
	padding-top: 20px;
	column-gap: 20px;
	row-gap: 10px;
}

.keyword-listItem a{
	display: block;
	font-weight: 600;
	line-height: 160%;
	letter-spacing: normal;
	text-decoration: underline;
}

.singleBody .btn03{
	color: #fff;
	text-decoration: unset;
	width: 280px;
	margin-top: 10px;
}

.singleBody .btn03:hover{
	color: #2151F5;
}

@media screen and (max-width:768px) {
	/* ---------------------------------------
	* イベント・セミナー
	------------------------------------------ */

	.webinorTable table{
		margin: 0;
	}

	.webinorTable td{
		line-height: 160%;
		letter-spacing: normal;
	}

	.webinorTable td:first-of-type{
		width: 100px;
		padding: 10px 20px;
		background-color: #EFEFF2;
		font-weight: 600;
	}

	.webinorTable td:last-of-type{
		padding: 10px;
	}

	.webinorBtn{
		width: 260px;
		margin: 40px 0;
	}

	.webinorBtn a{
		padding: 20px;
		background-color: var(--primary);
		border: solid 1px var(--primary);
		color: #fff;
		line-height: 100%;
		font-weight: 600;
		letter-spacing: normal;
		border-radius: 5px;
		transition: all .3s;
		text-decoration: unset;
	}

	.webinorBtn a:hover{
		background-color: #fff;
		color: var(--primary);
	}

	.webinorBtn span{
		display: inline-block;
	}

	.webinorBtn span:last-of-type{
		width: 18px;
		height: 18px;
	}

	.webinorBtn path{
		transition: all .3s;
	}

	.webinorBtn a:hover path{
		fill: var(--primary);
	}

	/* ---------------------------------------
	* 事例
	------------------------------------------ */

	.has-cyan-bluish-gray-color{
		color: #74727D!important;
	}

	.singleMember-listItem{
		margin: 0!important;
	}

	.singleMember-listItem:not(:first-of-type){
		padding-top: 40px;
	}

	.singleMember-listImg{
		width: 100%;
	}


	.singleMember-listTxt{
		width: 100%;
		padding-top: 20px;
	}

	.singleMember-listTxt .position{
		margin: 0;
	}

	.singleMember-listTxt .ttl2_main,.singleMember .ttl2_main{
		font-size: 20px;
	}

	.singleMember-listTxt .ttl2_main::before{
		display: none;
	}

	.singleMember-listTxt .memberTxt{
		margin: 0;
		font-size: 16px;
		letter-spacing: normal;
	}

	/* ---------------------------------------
	* サービス
	------------------------------------------ */
	.serviceSingleDetail .singleTtl h2 {
		padding-bottom: 0;
		border-bottom: unset;
		text-align: center;
		margin-bottom: 30px;
		font-size: 20px;
	}

	.serviceSingleContents .btn{
		padding: 14px 30px;
	}


	.PageHeading-singleService{
		padding-top: 120px;
	}

	.serviceSingleTtl{
		width: 100%;
	}

	.servicesingleForm{
		display: none;
	}

	.blogform{
		padding: 30px 20px;
	}

	.servicesingleForm h3,.blogform h3{
		font-size: 18px;
	}

	.servicesingleForm .formInput {
		padding: 10px 20px;
		background: #fff;
		border: solid 1px #DEDCE8;
		width: 100%;
		border-radius: 5px;
		line-height: 160%;
		letter-spacing: normal;
	}

	.serviceSingleContents{
		padding: 40px 20px 60px;
	}

	.serviceSingleContents:not(:last-of-type){
		margin-bottom: 30px;
	}

	.serviceSingleDetail{
		width: 100%;
	}

	.singleTtl>p{
		font-size: 16px;
		padding-bottom: 10px;
	}

	.doWrap{
		padding: 10px;
	}

	.doDetail{
		padding: 10px;
	}

	.doDetail p{
		margin: 0;
		font-size: 12px;
	}

	.singleOut-list .feature-listItem02{
		width: 100%;
	}

	.singleOut-list .feature-listItem02:not(:last-of-type) {
		margin-bottom: 40px;
	}

	.serviceBlog_list{
		width: 100%;
	}

	.serviceBlog_list .usecase-listItem{
		margin: 0;
		list-style: none;
	}

	.serviceSingleDetail .member-listIItem{
		list-style: none;
		margin: 0;
		width: 100%;
	}

	.serviceSingleDetail .member-listIItem:not(:last-of-type){
		margin-bottom: 40px;
	}

	.serviceSingleDetail .ttl2_main {
		font-size: 20px;
	}

	/* ---------------------------------------
	* ノウハウ・レポート
	------------------------------------------ */

	.keyword-list{
		padding-top: 20px;
		column-gap: 10px;
	}

	.singleBody .btn03{
		color: #fff;
		text-decoration: unset;
		width: 280px;
		margin: 10px 0 0;
	}


	.search-btn{
		flex: 0 0 100px;
		width: 100px;
		height: 100%;
		padding: 16px 12px;
	}

	.searchIcon {
		width: 20px;
		height: 20px;
	}

}

.singleForm-defListDesc input[type="checkbox"]::before {
	background-image: url(../img/common/check03.svg);
	background-repeat: no-repeat;
}


.singleForm-defListDesc input[type="checkbox"]:checked::before  {
	background-image: url(../img/common/check.svg);
}

