@charset "utf-8";
@media only screen and (max-width: 750px) {
	/*--------------------*/
	/*---- pc_cont.css ----*/
	/*--------------------*/

	/*----- common ------*/
	html {
		font-size: 62.5%;
		overflow: auto;
	}

	body {
		-webkit-text-size-adjust: 100%;
		font-size: 1.2rem;
		overflow: hidden;
		background: #fff;
	}
	body.fixed {
		position: fixed;
		right: 0;
		left: 0;
		overflow-y: scroll;
	}

	img {
		width: 100%;
		max-width: 100%;
		height: auto;
		vertical-align: bottom;
	}

	.spNone {
		display: none !important;
	}

	.fontRed {
		color: #b71a35;
		text-decoration: underline;
	}

	/*------------------------------------
		section共通設定
	-------------------------------------*/
	.spPadding {
		padding: 0 5.3vw;
	}

	/*------------------------------------
		共通パーツ
	-------------------------------------*/
	/* ---------ボタンの設定 -----------*/
	.contactBtnBox {
		height: 45px;
		border-radius: 100px;
		background-color: #b71a35;
		border: 1px solid #b71a35;
	}
	.contactBtnBox a {
		color: #fff;
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		height: 100%;
		padding: 10px 20px;
		padding-left: 35px;
		border-radius: 100px;
		transition: 0.5s;
	}
	/* ボタンテキスト設定 */
	.contactBtnBox a > .btnTxt {
		color: #fff;
		margin-right: 10px;
		font-size: 1.2rem;
		letter-spacing: 0.15em;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		transition: all 0.3s linear;
	}
	/* ボタンアイコン設定 */
	.contactBtnBox a > .btnIcon {
		width: 25px;
		height: 6px;
		background-image: url(../img/common/sp/arrow_menu_sp.svg);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
	}
	/* ------各種ボタン幅設定------- */
	/* header */
	.contactBtnBox.headerBtn {
		min-width: 210px;
		width: 100%;
		background-color: #ffffff;
	}
	.contactBtnBox.headerBtn a > .btnTxt {
		color: #b71a35;
	}
	.contactBtnBox.headerBtn a > .btnIcon {
		background-image: url(../img/common/sp/arrow_btn_sp.svg);
	}

	/* --------- 共通ボタン -----------*/
	.commonBtnBox {
		display: inline-block;
		/* height: 45px; */
		height: 34px;
		border-radius: 100px;
		background-color: #b71a35;
		border: 1px solid #b71a35;
	}
	.commonBtnBox.btnL {
		height: 50px;
	}
	.freeWidth {
		width: 100%;
	}
	.white.commonBtnBox {
		background-color: #fff;
		border: 1px solid #b71a35;
	}
	.commonBtnBox a {
		color: #fff;
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		height: 100%;
		padding: 10px 20px;
		padding-left: 35px;
		border-radius: 100px;
		text-decoration: none !important;
	}
	.white.commonBtnBox a {
		color: #b71a35;
	}
	/* ボタンテキスト設定 */
	.commonBtnBox a > .btnTxt {
		color: #fff;
		margin-right: 37px;
		font-size: 1.2rem;
		letter-spacing: 0.15em;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		transition: all 0.3s linear;
	}
	.white.commonBtnBox a > .btnTxt {
		color: #b71a35;
	}
	/* ボタンアイコン設定 */
	.commonBtnBox a > .btnIcon {
		width: 25px;
		height: 6px;
		background-image: url(../img/common/sp/arrow_menu_sp.svg);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
	}
	.white.commonBtnBox a > .btnIcon {
		background-image: url(../img/common/sp/arrow_menu_red_sp.svg);
	}

	/*------------------------------------
		パンくずリスト
	-------------------------------------*/
	.heroHeader {
		display: flex;
		flex-wrap: wrap;
		flex-direction: column-reverse;
	}
	.breadcrumbListOutline {
		width: 100%;
		/* display: flex;
		flex-wrap: wrap;
		flex-direction: column-reverse; */
	}
	.breadcrumbListWrap {
		background-color: #f7f7fa;
		height: 100%;
		padding-bottom: 34px;
	}
	.heroHeader .breadcrumbListWrap {
		margin-top: 50px;
		padding-bottom: 0;
	}
	.breadcrumbListOutline .breadcrumbListWrap {
		height: auto;
		/* margin-top: 50px; */
		margin-top: 0;
		padding-bottom: 0;
		background: unset;
	}
	.heroHeader .breadcrumbListInner {
		min-height: 40px;
		padding-top: 12.5px;
		padding-bottom: 12.5px;
		background: #9a001b;
	}
	.breadcrumbListOutline .breadcrumbListInner {
		min-height: 40px;
		padding-top: 12.5px;
		padding-bottom: 12.5px;
		background: #9a001b;
	}
	.breadcrumbListBox {
		display: flex;
		align-items: center;
		justify-content: left;
	}
	.breadcrumbListBox ul {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 8px 9px;
	}
	.breadcrumbListBox li {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		font-size: 1.15rem;
		line-height: 1.4;
		color: #333;
		word-break: break-all;
		text-align: left;
	}
	.heroHeader .breadcrumbListBox li {
		color: #fff;
	}
	.breadcrumbListOutline .breadcrumbListBox li {
		color: #fff;
	}
	.breadcrumbListBox li::after {
		content: ">";
		display: inline-block;
		padding-left: 9px;
	}
	.breadcrumbListBox li:last-child:after {
		content: none;
	}
	.breadcrumbListBox li a {
		color: #333;
		text-decoration: underline;
	}
	.heroHeader .breadcrumbListBox li a {
		color: #fff;
	}
	.breadcrumbListOutline .breadcrumbListBox li a {
		color: #fff;
	}

	/*------------------------------------
		メニュー
	-------------------------------------*/
	header {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 50px;
		background-color: #fff;
		z-index: 500;
	}
	body.fixed header {
		background-color: #fff;
	}
	/* ヘッダーロゴ */
	.headerLogo {
		position: relative;
		width: 30px;
		height: 50px;
		padding-left: 5.3333vw;
		transition: 0.3s;
	}
	.headerLogo img {
		position: absolute;
		top: 50%;
		bottom: 50%;
		transform: translate(0, -50%);
		width: 71px;
		height: auto;
		transition: 0.3s;
	}
	.img1 {
		opacity: 1;
	}
	.img2 {
		opacity: 0;
	}
	.gNavMenuWrap {
		position: fixed;
		top: 50px;
		height: 0;
		width: 100%;
		overflow: hidden;
		transition: all 0.3s linear;
	}
	.gNavMenuWrap.is-active {
		/* height: 345px; */
		height: 737px;
		height: 75vh;
		overflow-y: auto;
		background-color: #b71a35;
		/*IE(Internet Explorer)・Microsoft Edgeへの対応*/
		-ms-overflow-style: none;
		/*Firefoxへの対応*/
		scrollbar-width: none;
	}
	/*Google Chrome、Safariへの対応*/
	.gNavMenuWrap.is-active::-webkit-scrollbar {
		display: none;
	}
	.gNavMenuWrap.is-active .gNavMenuInner {
		opacity: 1;
	}
	.gNavMenuInner {
		display: flex;
		flex-wrap: wrap;
		flex-direction: column-reverse;
		background-color: #b71a35;
		padding: 30px 5.3333vw 42px;
		opacity: 0;
		transition: all 0.3s linear;
	}
	.contactBtnWrap {
		display: flex;
		flex-wrap: wrap;
		gap: 20px;
	}
	.gNavList {
		margin-bottom: 30px;
		font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	}
	.gNavListSecond {
		padding-left: 20px;
	}

	/*全てのリスト・リンク共通*/
	ul.gNavList li.gNavItem a {
		position: relative;
		color: #fff;
		display: block;
		width: 100%;
		padding: 10px 10px;
		padding-right: 70px;
		line-height: 1.5;
		font-size: 1.3rem;
		letter-spacing: 0.05em;
		font-weight: bold;
		word-break: break-all;
		transition: all 0.3s;
	}
	ul.gNavList li.gNavItem a::after {
		content: "";
		position: absolute;
		top: 50%;
		bottom: 50%;
		right: 10px;
		transform: translate(0, -50%);
		display: block;
		width: 25px;
		height: 6px;
		background-image: url(../img/common/sp/arrow_menu_sp.svg);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
	}
	ul.gNavList li.gNavItem a:hover {
		opacity: 0.6;
		transition: all 0.3s linear;
	}

	/* 第一階層（ソリューションのaタグだけリンクを無効化） */
	ul.gNavList > li.gNavItem.arrowNone > a {
		pointer-events: none;
	}
	ul.gNavList > li.gNavItem.arrowNone > a::after {
		content: none;
	}

	/*--------------------------
	|        メニューアイコン        |
	---------------------------*/
	/* ハンバーガーメニュー */
	.gNavMenuBtn {
		position: fixed;
		top: 0;
		right: 0;
		display: grid;
		place-items: center;
		width: 50px;
		height: 50px;
		background: #b71a35;
		transition: 0s;
	}
	body.fixed .gNavMenuBtn {
		transition: 0s;
	}
	.gNavMenuBtnLine {
		position: absolute;
		width: 20px;
		height: 1px;
		background: #fff;
		transition: all 0.3s linear;
	}
	.gNavMenuBtnLine.lineTop {
		transform: translateY(-5px);
	}
	.gNavMenuBtnLine.lineBottom {
		transform: translateY(5px);
	}
	/* アニメーション後 */
	.gNavMenuBtn.is-active {
		display: grid;
	}
	.gNavMenuBtn.is-active .gNavMenuBtnLine.lineTop {
		transform: rotate(45deg);
	}
	.gNavMenuBtn.is-active .gNavMenuBtnLine.lineMiddle {
		display: none;
	}
	.gNavMenuBtn.is-active .gNavMenuBtnLine.lineBottom {
		transform: rotate(-45deg);
	}

	/*------------------------------------
		mainvisual
	-------------------------------------*/
	.mainVisualInner {
		position: relative;
		display: flex;
		justify-content: center;
		width: 100%;
		height: 400px;
		margin-top: 50px;
		/* padding-top: 50px; */
		/* background: url(../img/top/main_top_img.jpg) no-repeat center center/cover; */
		background-image: url(../img/top/sp/main_top_img_sp.jpg);
		background-size: cover;
		background-position: center top;
		background-repeat: no-repeat;
	}
	.mainVisualBox {
		position: absolute;
		top: 180px;
		text-align: center;
	}
	.mainVisualCatchCopy01 {
		margin-bottom: 10px;
		color: #fff;
		font-size: 1.5rem;
		line-height: 1;
		letter-spacing: 0.15em;
	}
	.mainVisualCatchCopy02 {
		margin-bottom: 23px;
		color: #fff;
		font-size: 1.2rem;
		line-height: 1.75;
		letter-spacing: 0.15em;
	}
	.mainVisualLogo {
		width: 245px;
		height: auto;
		margin: 0 auto;
	}
	@media only screen and (max-width: 320px) {
		.mainVisualCatchCopy01 {
			margin-bottom: 10px;
			font-size: 1.3rem;
		}
		.mainVisualCatchCopy02 {
			font-size: 1.1rem;
		}
		.mainVisualLogo {
			width: 100%;
			max-width: 245px;
			height: auto;
		}
	}
	.mainVisualArrow {
		position: absolute;
		bottom: 10px;
		width: 10px;
		height: 15px;
		background-image: url(../img/top/arrow_pager.svg);
		background-position: center;
		background-size: contain;
		background-repeat: no-repeat;
		transform: rotate(-90deg);
	}
	.mainVisualArrow a {
		display: block;
		width: 10px;
		height: 15px;
	}

	/*------------------------------------
		section共通
	-------------------------------------*/
	.sectionCommon {
		text-align: center;
	}
	.sectionTitle {
		font-size: 2.5rem;
	}

	/*------------------------------------
		footer
	-------------------------------------*/
	.footerMenuWrap {
		padding-top: 37.5px;
	}
	.footerMenuInner {
		padding-bottom: 15px;
	}
	.footerMenuList {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		gap: 15px 25px;
		/* padding-top: 45px; */
		padding-top: 30px;
		padding-bottom: 40px;
	}
	.footerMenuItem {
		font-weight: bold;
		line-height: 1.4;
		letter-spacing: 0.05em;
	}
	.footerMenuItem:last-child {
		margin-right: 0;
	}
	.footerBox {
		display: flex;
		align-items: center;
		justify-content: center;
		height: 50px;
		font-size: 1.2rem;
		letter-spacing: 0.05em;
		color: #fff;
		background-color: #7d7d7d;
	}
	/* ページトップボタン */
	#gPagetop {
		right: 10px;
		width: 50px;
		height: 50px;
		border-radius: 100%;
		z-index: 100;
	}
	#gPagetop a {
		display: block;
		width: 50px;
		height: 50px;
		border-radius: 100%;
	}
	#gPagetop a img {
		width: 50px;
		height: 50px;
		border-radius: 100%;
	}

	/* SNSボタン */
	/* SNSボタン共通設定 */
	.snsBox {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 20px;
		/* margin-top: 37.5px; */
		/* padding-top: 37.5px; */
	}
	.snsBtn {
		position: relative;
	}
	.snsBtn a {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 45px;
		height: 45px;
		transition: 0.3s;
		background-color: #b71a35;
		border-radius: 100%;
	}
	.snsBtn a::before {
		content: "";
		margin: auto;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		pointer-events: none;
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
	}
	.snsBtn a::after {
		content: "";
		margin: auto;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		pointer-events: none;
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		transition: 0.3s;
	}
	/* .snsBtn a:hover::after {
		opacity: 0;
	} */

	/* X(旧:Twitter)アイコン */
	/* .twitterBtn a::before {
		background-image: url(../img/common/x_btn_icon_hover.svg);
	} */
	.xBtn a::after {
		background-image: url(../img/common/x_btn_icon.svg);
	}

	/* Facebookアイコン */
	/* .facebookBtn a::before {
		background-image: url(../img/common/facebook_btn_icon_hover.svg);
	} */
	.facebookBtn a::after {
		background-image: url(../img/common/facebook_btn_icon.svg);
	}

	/* YouTubeボタンアイコン */
	/* .youtubeBtn a::before {
		background-image: url(../img/common/youtube_btn_icon_hover.svg);
	} */
	.youtubeBtn a::after {
		background-image: url(../img/common/youtube_btn_icon.svg);
	}

	/*------------------------------------
		contentsMainVisual
	-------------------------------------*/
	.contentsMainVisualWrap {
		padding-top: 50px;
	}
	.heroHeader .contentsMainVisualWrap {
		padding-top: 0px;
	}
	.contentsMainVisualBox {
		width: 100%;
	}
	.contentsMainVisualInner {
		position: relative;
		width: 100%;
		height: 125px;
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
	}
	.contentsMainVisualBoxBg {
		width: 100%;
		height: 125px;
		background-color: #000;
		opacity: 0.35;
	}
	.contentsMainVisualBox {
		position: absolute;
		top: 0;
		height: 125px;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.contentsMainVisualBox .contentsMainVisualTitle {
		font-size: 2.25rem;
		font-weight: bold;
		letter-spacing: 0.15em;
		color: #fff;
	}
	/* DC3とはページ */
	#about .contentsMainVisualInner {
		background-image: url(../img/about/sp/sp_about_main_img.jpg);
	}
	/* FAQページ */
	#faq .contentsMainVisualInner {
		background-image: url(../img/faq/sp/sp_faq_main_img.jpg);
	}
	/* 活用分野 */
	#field .contentsMainVisualInner {
		background-image: url(../img/field/sp/sp_field_main_img.jpg);
	}
	/* 関連ソリューション */
	#solution .contentsMainVisualInner {
		background-image: url(../img/solution/sp/sp_solution_main_img.jpg);
	}
	/* 導入事例 */
	#caseStudy .contentsMainVisualInner {
		background-image: url(../img/case-study/sp/sp_caseStudy_main_img.jpg);
	}
	/* コラム */
	#column .contentsMainVisualInner {
		background-image: url(../img/column/sp/sp_column_main_img.jpg);
	}
	/* 資料ダウンロード */
	#document .contentsMainVisualInner {
		background-image: url(../img/document/sp/sp_document_main_img.jpg);
	}

	/*------------------------------------
		活用分野（一覧ページ）
	-------------------------------------*/
	.contentsWrap {
		background-color: #f7f7fa;
	}
	.contentsInner {
		display: block;
		margin: 0 auto;
		padding-bottom: 10px;
	}

	/*--------------------------
	|       記事カードリスト         |
	---------------------------*/
	.contentsListInner {
		padding-bottom: 72px;
	}

	/* 各コンテンツ */
	.contentsBoxWrap {
		display: flex;
		flex-wrap: wrap;
		gap: 30px;
		margin-bottom: 25px;
	}
	.contentsBox {
		width: 100%;
	}
	.contentsBox a {
		display: block;
		background-color: #fff;
	}
	.contentsBox:first-child a {
		padding-top: 0;
	}
	.contentsBox:last-child a {
		border-bottom: 0;
	}
	/*--- 画像部分 ---*/
	.contentsImgBox {
		position: relative;
		/* min-width: 73.33vw; */
		/* min-height: 41.25vw; */
		width: 100%;
		height: auto;
		background-color: #fff;
	}
	.contentsImgBox > img {
		width: 100%;
		object-fit: contain;
		aspect-ratio: 16/9;
	}
	/* Safari専用の「object-fit: contain;」と「aspect-ratio」を
	使用した際に画像の端に予期せぬ余白が入ることを防ぐ記述↓ */
	/* _::-webkit-full-page-media, _:future, :root .contentsImgBox > img {
		width: auto;
		min-width: 100%;
		max-width: 100%;
	} */
	/*--- 記事テキスト部分 ---*/
	.contentsDetailBox {
		padding: 16px 15px;
	}
	/* テキスト設定 */
	.contentsTextBox {
		text-align: left;
		word-break: break-all;
	}
	.contentsInfoBox .contentsDate {
		font-size: 1.4rem;
		font-weight: bold;
	}
	.contentsInfoBox .contentsDateArticle {
		font-size: 1.5rem;
		font-weight: bold;
	}
	#newsArticle .contentsInfoBox .contentsDate {
		font-size: 1.5rem;
	}
	.contentsTextBox .contentsTitle {
		font-size: 1.4rem;
		line-height: 1.6;
	}
	.contentsTextBox .contentsSentence {
		margin-top: 15px;
		font-size: 1.4rem;
		line-height: 1.6;
	}
	/* 情報ボックス */
	.contentsInfoBox {
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-wrap: wrap;
		gap: 10px;
		margin-bottom: 8px;
	}
	/* タグ設定 */
	.contentsTagBox {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 10px 8px;
	}
	.contentsTagBox .contentsTag {
		display: inline-block;
		padding: 4px 15px 2px;
		background-color: #fff;
		text-align: left;
	}
	.contentsTagBox span {
		display: inline-block;
		font-size: 1.25rem;
		line-height: 1.3;
	}
	.contentsTagBox .navy {
		color: #fff;
		background-color: #3b6687;
		border-radius: 5px;
	}
	.contentsTagBox .red {
		color: #fff;
		background-color: #ce4a67;
		border-radius: 5px;
	}

	/*--------------------------
	|           pager           |
	---------------------------*/
	.pagerBox {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		gap: 12px 0px;
		width: 100%;
		margin-top: 60px;
		text-align: center;
	}

	/* 現在ページ */
	.pagerBox li div {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		text-align: center;
		border-radius: 6px;
		color: #ffffff;
		border: 1px solid #b71a35;
		background: #b71a35;
	}

	/*--- 共通設定 ---*/
	.pagerBox li {
		position: relative;
		letter-spacing: normal;
		margin: 0px 5.5px;
	}
	.pagerBox li a {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		text-align: center;
		border-radius: 6px;
		border: 1px solid #e1e5ec;
		background: #ffffff;
		text-decoration: none;
		transition: 0.3s;
	}
	.pagerBox li a::before {
		content: "";
		margin: auto;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		pointer-events: none;
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
	}
	.pagerBox li a::after {
		content: "";
		margin: auto;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		pointer-events: none;
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		transition: 0.3s;
	}

	/*--- 各種ボタン設定 ---*/
	/* トップボタン */
	.pagerBox li.top a::after {
		width: 13px;
		height: 11px;
		right: 2px;
		background-image: url(../img/common/pager/pager_top.svg);
	}

	/* プレフボタン */
	.pagerBox li.pref a::after {
		width: 6px;
		height: 11px;
		background-image: url(../img/common/pager/pager_pref.svg);
		right: 3px;
	}

	/* エンドボタン */
	.pagerBox li.end a::after {
		width: 13px;
		height: 11px;
		left: 2px;
		background-image: url(../img/common/pager/pager_end.svg);
	}

	/* ネクストボタン */
	.pagerBox li.next a::after {
		width: 6px;
		height: 11px;
		background-image: url(../img/common/pager/pager_next.svg);
		left: 2px;
	}

	/*--------------------------
	|       コンテンツヘッダー      |
	---------------------------*/
	.contentsHeader {
		text-align: left;
		margin-bottom: 33px;
	}
	.contentsHeader h1 {
		font-size: 2.25rem;
		font-weight: bold;
		line-height: 1.5;
	}
	/* 情報ボックス */
	.contentsHeader .contentsInfoBox {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		flex-wrap: wrap;
		gap: 20px;
		margin-bottom: 13px;
	}

	/*--------------------------
	|        コンテンツボディ       |
	---------------------------*/
	.contentsBodyInner {
		padding-bottom: 93px;
	}

	.contentsHeader {
		text-align: left;
	}
	.contentsBody {
		margin-bottom: 57px;
		text-align: center;
	}

	.contentsBodyInner *:last-child {
		margin-bottom: 0;
	}

	/* ノーマルテキスト */
	.bodyWpPost .contentsBodyInner {
		line-height: 1.9;
	}
	.contentsBodyInner p {
		margin-bottom: 45px;
		font-size: 1.4rem;
		line-height: 1.9;
		text-align: left !important;
	}
	.bodyWpPost .contentsBodyInner p {
		margin-bottom: 0px;
	}

	/* 見出し大 */
	.contentsBodyInner .headlineL {
		position: relative;
		margin-bottom: 32.5px;
		font-size: 2rem;
		line-height: 1.5;
		font-weight: bold;
		text-align: left;
		color: #fff;
		padding: 10px 15px;
		border-radius: 5px;
		background-color: #b71a35;
	}
	.bodyWpPost .contentsBodyInner .headlineL {
		margin-bottom: 0px;
	}

	/* 見出し中 */
	.contentsBodyInner .headlineM {
		position: relative;
		margin-bottom: 30px;
		font-size: 2rem;
		line-height: 1.6;
		font-weight: bold;
		padding-left: 18px;
	}
	.bodyWpPost .contentsBodyInner .headlineM {
		margin-bottom: 10px;
	}

	.contentsBodyInner .headlineM::before {
		content: "";
		display: block;
		position: absolute;
		top: -1px;
		left: 0;
		width: 9px;
		height: 102%;
		border-radius: 3px;
		background-color: #b71a35;
	}

	/* 見出し小 */
	.contentsBodyInner .headlineS {
		margin-bottom: 25px;
		font-size: 1.7rem;
		line-height: 1.6;
		font-weight: bold;
		padding-left: 20px;
		text-indent: -20px;
	}
	.bodyWpPost .contentsBodyInner .headlineS {
		margin-bottom: 10px;
	}
	.contentsBodyInner .headlineS::before {
		content: "";
		display: inline-block;
		width: 12px;
		height: 12px;
		margin-right: 8px;
		margin-bottom: 1px;
		border-radius: 3px;
		background-color: #b71a35;
	}

	/* 画像 */
	.contentsBodyInner img {
		width: 100%;
		height: auto;
		margin-bottom: 45px;
	}
	.bodyWpPost .contentsBodyInner img {
		margin-bottom: 0px;
	}

	/* カラーボックス */
	.contentsBodyInner blockquote {
		margin-bottom: 45px;
		padding: 15px 21px 17px;
		font-size: 1.4rem;
		line-height: 1.9;
		text-align: left;
		border-radius: 8px;
		background-color: #e1e5ec;
	}
	.bodyWpPost .contentsBodyInner blockquote {
		margin-bottom: 0px;
	}

	/* コンテンツ量に応じたカラーボックス */
	.colorBox {
		display: table;
		margin: 0 auto;
		margin-bottom: 47.5px;
		padding: 20px;
		border-radius: 8px;
		line-height: 1.9;
		background-color: #e1e5ec;
	}
	.bodyWpPost .contentsBodyInner .colorBox {
		margin-bottom: 0px;
	}

	/* リスト */
	.contentsBodyInner ul {
		margin-bottom: 30px;
		font-size: 1.4rem;
		line-height: 1.9;
		text-align: left;
	}
	.bodyWpPost .contentsBodyInner ul {
		margin-bottom: 0px;
	}
	.contentsBodyInner ul li {
		margin-bottom: 10px;
		padding-left: 1.2em;
		text-indent: -1.2em;
	}
	.contentsBodyInner ul li:last-child {
		margin-bottom: 0;
	}
	.contentsBodyInner ul li::before {
		content: "";
		display: inline-block;
		width: 8px;
		height: 8px;
		margin-bottom: 2px;
		margin-right: 10px;
		background-color: #333;
		border-radius: 100%;
	}
	.contentsBodyInner ul[style="list-style-type: circle;"] li::before {
		content: "";
		display: inline-block;
		width: 8px;
		height: 8px;
		margin-bottom: 2px;
		margin-right: 10px;
		background-color: #ffffff;
		border: 1px solid #333333;
		border-radius: 100%;
	}
	.contentsBodyInner ul[style="list-style-type: square;"] li::before {
		content: "";
		display: inline-block;
		width: 8px;
		height: 8px;
		margin-bottom: 2px;
		margin-right: 10px;
		background-color: #333;
		border-radius: 0px;
	}

	/* リンク */
	.contentsBodyInner a {
		color: #b71a35;
		text-decoration: underline;
		text-underline-offset: 3px;
	}

	/*------------------------------------
		エンドユーザーページ endUser
	-------------------------------------*/
	/*------------------------------------
		コンテンツボディ【endUser向け】
	-------------------------------------*/
	/*----- ページ固有の設定 ------*/
	#endUser .contentsWrap {
		border-bottom: 1px solid #e1e5ec;
		background-color: #fff;
	}
	#endUser .contentsInner {
		padding-top: 50px;
	}

	/*----- 各セクションの設定 ------*/
	#endUser .sectionBox {
		margin-bottom: 55px;
	}
	#endUser .contentsBodyBox {
		margin-bottom: 44px;
	}

	/* セクション個別設定 */
	#endUser #section01 {
		margin-bottom: 51px;
	}
	#endUser #section01 .contentsBodyBox .firstText {
		font-weight: 700;
		font-size: 1.2rem;
		line-height: 1.9;
		text-align: center;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
		margin-bottom: 26px;
	}
	#endUser #section02 {
		margin-bottom: 55px;
	}
	#endUser #section03 {
		margin-bottom: 55px;
	}
	#endUser #section04 {
		margin-bottom: 56px;
	}
	#endUser #section05 {
		margin-bottom: 51px;
	}

	/* 2列ボックス */
	#endUser .contentsBodyBox.column2 {
		display: flex;
		flex-direction: column;
		gap: 20px;
	}
	/* pタグ設定 */
	#endUser .contentsBodyBox p {
		text-align: justify;
		font-feature-settings: "palt";
	}
	/* 注釈 */
	#endUser .contentsBodyBox .note {
		display: inline-block;
		margin-top: 10px;
		font-size: 1.1rem;
	}

	/* Youtube動画埋め込み */
	#endUser .youtubeMV {
		width: 89.33vw !important;
		max-width: 100% !important;
		height: calc(89.33vw * 0.562) !important;
		margin: 32px 0 0;
	}
	#endUser .youtubeMV iframe {
		width: 100% !important;
		height: 100% !important;
	}

	/* Youtube以外の動画 */
	#endUser .mvBox {
		width: 100%;
		height: auto;
		margin: 32px 0 0;
	}
	#endUser .mvBox video {
		width: 100%;
		height: 100%;
	}

	/*------------------------------------
		Newsスライダー
	-------------------------------------*/
	.newsSliderWrap {
		position: relative;
		padding-top: 40px;
		padding-bottom: 50px;
		background-color: #b71a35;
	}
	.newsSliderWrap .spPadding {
		padding: 0 8vw;
	}

	.swiper > .titleImg {
		margin-bottom: 30px;
	}
	.swiper > .titleImg > img {
		width: 80px;
		height: auto;
	}

	/* 各コンテンツ */
	.newsSliderWrap .contentsBoxWrap {
		display: flex;
		flex-wrap: nowrap;
		gap: 0px;
		margin-bottom: 32px;
	}

	.swiper-slide {
		color: #ffffff;
	}

	/* タイトルテキストが3行以上の時に3点リーダーを表示する */
	.newsSliderWrap .contentsTextBox .contentsTitle {
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		overflow: hidden;
	}

	/* 前後記事が無い時に矢印ボタンを半透明にする */
	.swiper-button-disabled.swiper-button-next::after,
	.swiper-button-disabled.swiper-button-prev::after,
	.swiper-button-disabled.swiper-button-next::before,
	.swiper-button-disabled.swiper-button-prev::before {
		opacity: 0.5;
	}

	/* 前へ次への矢印カスタマイズ */
	.swiper-button-prev,
	.swiper-button-next {
		cursor: pointer;
	}

	/* 前への矢印カスタマイズ */
	.swiper-button-prev {
		position: absolute;
		width: 6vw;
		height: 6vw;
		top: 42%;
		left: 3vw;
		border-radius: 100%;
		z-index: 100;
	}
	.swiper-button-prev::after {
		content: "";
		position: absolute;
		top: 50%;
		bottom: 50%;
		left: 50%;
		right: 50%;
		transform: translate(-50%, -50%);
		width: 6vw;
		height: 6vw;
		border-radius: 100%;
		background-color: #a90924;
		z-index: 100;
	}
	.swiper-button-prev::before {
		content: "";
		position: absolute;
		top: 50%;
		bottom: 50%;
		left: 50%;
		right: 50%;
		transform: translate(-50%, -50%);
		width: 10px;
		height: 14px;
		background-image: url(../img/common/arrow_swiper.svg);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		z-index: 200;
	}

	/* 次への矢印カスタマイズ */
	.swiper-button-next {
		position: absolute;
		width: 6vw;
		height: 6vw;
		top: 42%;
		right: 3vw;
		border-radius: 100%;
		z-index: 100;
	}
	.swiper-button-next::after {
		content: "";
		position: absolute;
		top: 50%;
		bottom: 50%;
		left: 50%;
		right: 50%;
		transform: translate(-50%, -50%);
		width: 6vw;
		height: 6vw;
		border-radius: 100%;
		background-color: #a90924;
		z-index: 100;
	}
	.swiper-button-next::before {
		content: "";
		position: absolute;
		top: 50%;
		bottom: 50%;
		left: 55%;
		right: 50%;
		transform: translate(-50%, -50%) rotate(180deg);
		width: 10px;
		height: 14px;
		background-image: url(../img/common/arrow_swiper.svg);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		z-index: 200;
	}

	/*--- 記事テキスト部分 ---*/
	.newsSliderWrap .contentsDetailBox {
		padding: 14px 15px 19px;
	}

	/*------------------------------------
		共通セクションスタイル
	-------------------------------------*/
	/*----- 汎用セクション ------*/
	.sectionWrap {
		padding: 45px 0 50px;
	}
	.sectionWrap.bgc0 {
		background-color: #fff;
	}
	.sectionWrap.bgc1 {
		background-color: #e2e6ed;
	}
	.sectionWrap.bgc2 {
		background-color: #f7f7fa;
	}
	.sectionWrap.bgc3 {
		background-color: #eff1f5;
	}
	.sectionWrap.bgc4 {
		color: #fff;
		background-color: #080808;
	}
	.sectionWrap.bgc5 {
		color: #fff;
		background-color: #b71a35;
	}
	.sectionWrap.bgc6 {
		color: #fff;
		background-color: #7c7c7c;
	}
	.sectionInner {
		text-align: center;
	}

	/* mb調整 */
	.sectionWrap .mbSp1 {
		margin-bottom: 25px !important;
	}
	.sectionWrap .mbSp2 {
		margin-bottom: 35px !important;
	}
	.sectionWrap .mbSp3 {
		margin-bottom: 38px !important;
	}
	.sectionWrap .mbSp4 {
		margin-bottom: 40px !important;
	}
	.sectionWrap .mbSp5 {
		margin-bottom: 60px !important;
	}

	/* フォント設定 */
	.sectionWrap.white {
		color: #fff;
	}
	.sectionInner .txtArea {
		font-weight: 700;
		font-size: 1.2rem;
		line-height: 1.9;
		text-align: left;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
		margin-bottom: 35px;
	}
	.sectionInner .headlineTxt {
		font-weight: 700;
		font-size: 2rem;
		line-height: 1;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
		margin-bottom: 30px;
	}
	.sectionInner .headlineTxtS {
		font-weight: 700;
		font-size: 1.8rem;
		line-height: 1;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
	}
	.sectionInner .headlineTxtM {
		font-weight: 700;
		font-size: 2.3rem;
		line-height: 1;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
	}
	.sectionWrap .headlineTxtL {
		font-weight: 700;
		font-size: 2.5rem;
		line-height: 1;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
		margin-bottom: 34px;
	}

	.sectionWrap.about {
		color: #fff;
		background-image: url(../img/top/sp/about_bg01-sp.png);
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
	}
	.sectionWrap.about .aboutImg01 {
		width: 100%;
		height: auto;
		margin: 0 auto;
	}

	/* リストボックス */
	.sectionWrap .txtArea.bgGray {
		display: inline-block;
		padding: 25px;
		background-color: #eff1f5;
		border-radius: 7.5px;
	}
	.sectionWrap .txtArea.listBox {
		max-width: 100%;
		padding: 25px 22px;
		text-align: left;
	}
	.sectionWrap .txtArea ul li {
		display: flex;
		align-items: flex-start;
		line-height: 1.9;
		margin-bottom: 5px;
	}
	.sectionWrap .txtArea ul li:last-child {
		margin-bottom: 0;
	}
	.sectionWrap .txtArea ul li::before {
		content: "●";
	}

	/* 導入について */
	.introductionArea {
		display: flex;
		flex-wrap: wrap;
		gap: 46px;
	}
	.introductionAreaBox .imgBox {
		width: 100%;
		height: auto;
		padding: 0 8vw;
		margin-bottom: 15px;
	}
	.introductionAreaBox .imgBox img {
		width: 100%;
		height: auto;
	}
	.introductionAreaBox .contentBox .title {
		font-size: 1.8rem;
		font-weight: 700;
		line-height: 1.5;
		margin-bottom: 6px;
	}
	.introductionAreaBox .contentBox .content {
		font-size: 1.3rem;
		line-height: 1.7;
		letter-spacing: 0.05em;
		margin-bottom: 15px;
	}
	.sectionWrap.introductionAreaSection {
		padding: 45px 0 48.5px;
	}
	.sectionWrap.introductionAreaSection .sectionInner .txtArea {
		margin-bottom: 35px;
	}

	/* よくある質問 FAQ */
	.sectionWrap.faqSection {
		padding: 45px 0;
	}
	.sectionInner .headlineTxt.faqImg::after {
		content: "";
		display: block;
		width: 43px;
		height: 18px;
		margin: 20px auto 0;
		background: url(../img/common/faq_heading@2x.png) no-repeat center center/contain;
	}

	/*------------------------------------
		FAQの設定
	-------------------------------------*/
	.faqWrap {
		background-color: #eff1f5;
	}
	.p-index-faq {
		padding: 0px 0 44px;
		text-align: left;
	}

	.p-index-faq .l-inner {
		padding: 0px;
	}

	.p-index-faq__title {
		display: flex;
		flex-direction: column;
		gap: 10px;
		margin-bottom: 20px;
		align-items: center;
		font-weight: 700;
		font-size: 1.5rem;
		line-height: 1;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
	}

	.p-index-faq__link a {
		position: relative;
		display: flex;
		align-items: center;
		width: 170px;
		height: 34px;
		margin: 0 auto;
		padding-left: 24px;
		padding-right: 31px;
		color: #fff;
		border-radius: 50px;
		border: 1px solid #b71a35;
		background-color: #b71a35;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		font-size: 1.2rem;
		letter-spacing: 0.15em;
		line-height: 1;
		transition: all 0.3s linear;
	}

	.p-index-faq__link a:hover {
		color: #b71a35;
		background-color: #fff;
	}

	.p-index-faq__link a:hover .p-index-faq__arrow {
		fill: #b71a35;
	}

	.p-index-faq__arrow {
		right: 21px;
		position: absolute;
		width: 27px;
		height: 9px;
		fill: #fff;
		scale: 0.5;
		transform: translateX(50%);
	}

	.p-index-faq__category {
		display: block;
		flex-wrap: wrap;
		padding-top: 32.5px;
		padding-bottom: 32.5px;
		background-color: #f7f7fa;
	}

	.p-index-faq__button a {
		position: relative;
		display: flex;
		align-items: center;
		width: 100%;
		height: 40px;
		margin-bottom: 12.5px;
		padding-left: 15px;
		padding-right: 30px;
		border-radius: 20px;
		background-color: #b71a35;
		color: #fff;
		font-weight: 700;
		font-size: 1.2rem;
		line-height: 1.3;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
		transition: all 0.3s linear;
	}
	.p-index-faq__button:last-child a {
		margin-bottom: 0;
	}

	.p-index-faq__button a:hover {
		color: #262626;
		background-color: #fff;
	}

	.p-index-faq__button a:hover::after {
		border-color: #262626 transparent transparent transparent;
	}

	.p-index-faq__button a span {
		letter-spacing: 0.07em;
	}

	.p-index-faq__button a::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 15px;
		transform: translateY(-50%);
		border-style: solid;
		border-width: 5px 3px 0 3px;
		border-color: #fff transparent transparent transparent;
	}

	.p-index-faq__list {
		width: 100%;
		margin: 0 auto;
	}

	.p-index-faq__list:last-child {
		margin-bottom: 0;
	}

	.p-index-faq__list-title {
		margin-bottom: 30px;
		padding-top: 39px;
		font-weight: 700;
		font-size: 1.5rem;
		line-height: 1;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
		text-align: center;
	}

	.p-index-faq__list .p-index-faq__list-item.active .p-index-faq__question {
		background-color: #e2e6ed;
	}

	.p-index-faq__list .p-index-faq__list-item.active .p-index-faq__question::after {
		transform: translateY(-50%) rotate(90deg);
	}

	.p-index-faq__list .p-index-faq__question {
		position: relative;
		display: flex;
		align-items: center;
		width: 100%;
		margin-bottom: 10px;
		padding: 11px 37px;
		font-weight: 700;
		font-size: 1.2rem;
		color: #262626;
		line-height: 1.5;
		text-align: left;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
		background-color: #fff;
		border-radius: 20px;
	}

	.p-index-faq__list .p-index-faq__question::before {
		content: "";
		position: absolute;
		left: 16px;
		width: 11px;
		height: 16px;
		background: url(../img/faq/icon_question@2x.png) no-repeat center center/contain;
	}

	.p-index-faq__list .p-index-faq__question::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 16px;
		transform: translateY(-50%);
		border-style: solid;
		border-width: 3px 0 3px 5px;
		border-color: transparent transparent transparent #262626;
		transition: 0.3s;
	}

	.p-index-faq__list .p-index-faq__answer {
		height: 0;
		overflow: hidden;
		transition: height 3s;
	}

	.p-index-faq__list .p-index-faq__answer .p-index-faq__answer-text {
		position: relative;
		display: flex;
		align-items: start;
		margin: 5px 0 25px;
		padding: 0 51px;
		padding-left: 37px;
		font-weight: 700;
		font-size: 1.2rem;
		line-height: 1.5;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
	}

	.p-index-faq__list .p-index-faq__answer .p-index-faq__answer-text::before {
		content: "";
		position: absolute;
		top: 4px;
		left: 16px;
		width: 13px;
		height: 15px;
		background: url(../img/faq/icon_answer@2x.png) no-repeat center center/contain;
	}

	/*------------------------------------
		導入について service
	-------------------------------------*/
	.u-sp {
		display: none !important;
	}

	.aboutIntroduction .fontRed {
		color: #b71a35;
		text-decoration: underline;
	}

	/*----- メインビジュアル ------*/
	.p-lower-mainvisual {
		position: relative;
		display: flex;
		justify-content: center;
		width: 100%;
		min-width: 300px;
		/* height: 535px; */
		height: 250px;
		margin-top: 50px;
	}
	.p-lower-mainvisual__wrapper {
		position: absolute;
		display: flex;
		flex-direction: column;
		justify-content: center;
		/* height: 447px; */
		height: 209px;
		/* top: 88px; */
		top: 50%;
		bottom: 50%;
		transform: translate(0, -50%);
		margin-top: 21px;
		/* background-color: #47b163; */
	}
	.p-lower-mainvisual__title {
		display: flex;
		flex-direction: column;
		align-items: center;
		padding-top: 10px;
		padding-left: 10px;
		padding-right: 10px;
		margin-bottom: 30px;
		color: #fff;
		font-weight: 700;
		font-size: 2.15rem;
		line-height: 1;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
		text-align: center;
		line-height: 1.3;
	}
	.p-lower-mainvisual__title .fontS {
		font-weight: 700;
		font-size: 1.6rem;
		margin-bottom: 12px;
		letter-spacing: 0.1em;
	}
	/* .p-lower-mainvisual__title::before {
		display: block;
		content: "";
		width: 110px;
		height: 14px;
		margin-bottom: 17px;
		background: url(../img/introduction/lower/lower-mv_heading.png) no-repeat center center/contain;
	} */
	.p-lower-mainvisual__container {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		-moz-column-gap: 15px;
		column-gap: 15px;
	}
	/* 赤い丸 */
	.p-lower-mainvisual__circle {
		display: grid;
		place-items: center;
		width: 135px;
		height: 135px;
		border-radius: 50%;
		background-color: rgba(183, 26, 53, 0.8);
	}
	.p-lower-mainvisual__circle:nth-child(3) {
		transform: translateY(-6px);
	}
	.p-lower-mainvisual__text {
		color: #fff;
		font-weight: 700;
		font-size: 1.1rem;
		line-height: 1.66667;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
		text-align: center;
	}
	/* メインビジュアル背景画像 */
	/* サービス事業者様へ */
	.p-service-mainvisual {
		position: relative;
		background: url(../img/introduction/lower/service-mv_bg-sp.jpg) no-repeat center center/cover;
	}
	/* コンテンツ提供者様へ */
	.p-contents-mainvisual {
		position: relative;
		background: url(../img/introduction/lower/contents-mv_bg-sp.jpg) no-repeat center center/cover;
	}
	/* プレイヤー提供者様へ */
	.p-player-mainvisual {
		position: relative;
		background: url(../img/introduction/lower/player-mv_bg-sp.jpg) no-repeat center center/cover;
	}
	/* エンドユーザーの皆様へ */
	.p-user-mainvisual {
		position: relative;
		background: url(../img/introduction/lower/user-mv_bg-sp.jpg) no-repeat center center/cover;
	}
	/* DC3とは */
	.p-about-mainvisual {
		position: relative;
		background: url(../img/about/sp/main_about_img_sp.jpg) no-repeat center center/cover;
	}

	/*----- セクション遷移メニュー ------*/
	.sectionMenuWrap {
		display: flex;
		align-items: center;
		justify-content: center;
		/* min-height: 105px; */
		padding: 25px 0;
		background-color: #000;
	}
	.sectionMenuInner ul {
		display: inline-flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 15px 30px;
	}
	.sectionMenuInner ul li a {
		display: flex;
		align-items: center;
		justify-content: center;
		font-weight: bold;
		font-size: 1.3rem;
		line-height: 1.5;
		letter-spacing: 0.1em;
		text-align: left;
		color: #fff;
		transition: 0.3s;
	}
	.sectionMenuInner ul li a::after {
		content: "";
		display: block;
		width: 9px;
		height: 7px;
		margin-left: 7px;
		background-image: url(../img/common/arrow_sectionMenu.svg);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
	}
	.sectionMenuInner ul li a:hover {
		opacity: 0.8;
	}

	/*----- ファーストセクション ------*/
	#merit .anchor {
		display: block;
		padding-top: 30px;
		margin-top: -30px;
	}
	.sectionWrap.firstSection .sectionInner img {
		margin: 0 auto;
	}
	.sectionWrap.firstSection {
		padding: 55px 0 26px;
	}
	.sectionWrap.firstSection .headlineTxt {
		margin-bottom: 0px;
	}
	.sectionWrap.firstSection .sectionInner .txtArea {
		margin-bottom: 0;
		text-align: left;
	}
	.sectionWrap.firstSection .txtArea.widthLimit {
		width: 100%;
		text-align: left;
	}
	.sectionWrap.firstSection .txtArea.widthLimit .headline {
		font-weight: 700;
		font-size: 1.75rem;
		line-height: 1.5;
		text-align: center;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.1em;
		margin-bottom: 20px;
	}

	/*----- 各セクション(Detail1~5、導入までの流れ) ------*/
	.l-inner {
		max-width: 100%;
		padding: 0 5.3333vw;
	}
	/* 画像設定 */
	.p-lower-solution__img {
		width: 100%;
		height: auto;
	}
	.p-lower-solution__box {
		width: 100%;
	}
	.p-lower-solution__content {
		display: flex;
		flex-direction: column-reverse;
		justify-content: space-between;
		height: auto;
		padding-top: 40px;
		padding-left: 5.3333vw;
		padding-bottom: 38px;
	}
	.p-lower-solution .solution01__content,
	.p-lower-solution .solution03__content,
	.p-lower-solution .solution05__content {
		flex-direction: column-reverse;
		gap: 40px;
		padding-right: 0;
		padding-top: 40px;
		padding-left: 5.3333vw;
	}
	.p-lower-solution .solution02__content,
	.p-lower-solution .solution04__content,
	.p-lower-solution .solution06__content {
		gap: 40px;
	}
	/* Detail1 */
	.p-lower-solution .solution01 {
		background-color: #b71a35;
		color: #fff;
	}
	.p-lower-solution .solution01__content {
		position: relative;
		z-index: 1;
	}
	.p-lower-solution .solution01__content::after {
		display: none;
	}
	/* Detail3 */
	.p-lower-solution .solution03 {
		background-color: #7d7d7d;
		color: #fff;
	}
	.p-lower-solution .solution03__content {
		position: relative;
		z-index: 1;
	}
	.p-lower-solution .solution03__content::after {
		display: none;
	}
	/* Detail5 */
	.p-lower-solution .solution05 {
		background-color: #b71a35;
		color: #fff;
	}

	/*----- Detail1〜5の共通設定 ------*/
	.p-lower-solution__heading {
		max-width: 1240px;
		margin-bottom: 10px;
		font-size: 1.2rem;
		font-weight: 700;
		line-height: 1;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
	}
	/* Detailの数字 */
	.p-lower-solution__number {
		width: 60px;
		height: auto;
		margin-bottom: 19px;
	}
	/* Detailの下の大文字の文章 */
	.p-lower-solution__read {
		margin-bottom: 10px;
		font-weight: 700;
		font-size: 1.5rem;
		line-height: 1.6666;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
		font-feature-settings: "palt";
	}
	/* Detailの下の大文字の下の説明文章 */
	.p-lower-solution__text {
		width: 100%;
		font-size: 1.2rem;
		line-height: 1.91666;
		letter-spacing: 0.1em;
		font-feature-settings: "palt";
	}
	.p-lower-solution__text span {
		display: block;
		margin-bottom: 5px;
		font-size: 1rem;
		line-height: 1.5;
	}
	.p-lower-solution__text span:nth-child(2) {
		margin-top: 15px;
	}

	/*----- 導入までの流れ ------*/
	.p-lower-flow {
		background-color: #eddc0d;
		padding: 45px 0 57.5px;
	}
	.p-lower-flow__wrapper {
		display: flex;
		justify-content: center;
		flex-direction: column;
		align-items: start;
	}
	.p-lower-flow__headBox {
		text-align: center;
		margin-bottom: 0px;
	}
	.p-lower-flow__heading {
		display: block;
		margin-bottom: 10px;
		font-weight: 700;
		font-size: 1.2rem;
		line-height: 1;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
	}
	.p-lower-flow__title {
		margin-bottom: 33px;
		font-weight: 700;
		font-size: 2rem;
		line-height: 1;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
	}
	.p-lower-flow__title::before {
		display: block;
		content: "";
		width: 27px;
		height: 9px;
		margin: 0 auto;
		margin-bottom: 10px;
		background: url(../img/introduction/lower/flow_heading.png) no-repeat center center/contain;
	}
	.p-lower-flow__list {
		display: grid;
		grid-template-columns: 1fr;
		-moz-column-gap: 10px;
		column-gap: 35px;
		row-gap: 30px;
		width: 100%;
	}
	.p-lower-flow__item {
		position: relative;
		height: 150px;
		padding: 14px 19px 0 13px;
		background-color: #fff;
	}
	.p-lower-flow__item::after {
		content: "";
		position: absolute;
		right: 50%;
		left: 50%;
		bottom: -21.25px;
		transform: translate(-50%, 0%);
		display: inline-block;
		width: 25px;
		height: 12.5px;
		background-image: url(../img/common/sp/arrow_right_sp.svg);
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
	}
	.p-lower-flow__item:last-child:after {
		content: none;
	}
	.p-lower-flow__head {
		position: relative;
		display: flex;
		align-items: center;
		margin-bottom: 13px;
	}
	.p-lower-flow__head::before {
		content: "";
		position: static;
		top: 0;
		left: 0;
		display: block;
		width: 2px;
		height: 35px;
		background-color: #000;
		margin: 0 13px 0 2px;
	}
	.p-lower-flow__step {
		position: relative;
		display: flex;
		align-items: center;
		margin-right: 25px;
		margin-bottom: 0;
	}
	.p-lower-flow__head img {
		width: 69px;
	}
	.p-lower-flow__read {
		display: flex;
		align-items: center;
		font-weight: 700;
		font-size: 1.4rem;
		line-height: 1;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.1em;
	}
	.p-lower-flow__text {
		font-size: 1.2rem;
		line-height: 1.91666;
		letter-spacing: 0.05em;
	}
	.p-lower-flow__arrow {
		display: none;
	}

	/*------------------------------------
		活用分野
	-------------------------------------*/
	/*----- アンカー位置調整 ------*/
	#field .anchor {
		display: block;
		padding-top: 40px;
		margin-top: -40px;
	}

	/*----- パンクズリスト部分 ------*/
	#field .breadcrumbListWrap {
		background-color: #fff;
	}

	/*----- 最初の文章 ------*/
	.firstSentenceWrap {
		text-align: center;
		padding-top: 40px;
		padding-bottom: 30px;
	}
	.firstSentenceWrap p {
		font-weight: 700;
		font-size: 1.2rem;
		line-height: 1.8;
		letter-spacing: 0.15em;
		text-align: left;
	}

	/*----- カテゴリボタン ------*/
	.p-index-field__category {
		display: grid;
		flex-wrap: wrap;
		justify-content: center;
		grid-template-columns: 1fr 1fr;
		gap: 12.5px;
		padding-top: 35px;
		padding-bottom: 55px;
		background-color: #f7f7fa;
	}
	.p-index-field__button a {
		position: relative;
		display: flex;
		align-items: center;
		width: 100%;
		height: 100%;
		min-height: 40px;
		padding: 10px 30px 10px 15px;
		border-radius: 22.5px;
		background-color: #b71a35;
		color: #fff;
		border: 1px solid #b71a35;
		font-weight: 700;
		font-size: 1.2rem;
		line-height: 1.3;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
		transition: all 0.3s linear;
	}
	.p-index-field__button a::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 15px;
		transform: translateY(-50%);
		border-style: solid;
		border-width: 5px 3px 0 3px;
		border-color: #fff transparent transparent transparent;
		transition: all 0.3s linear;
	}

	/*----- コンテンツ部分 ------*/
	#field .contentsInner {
		padding-bottom: 55px;
	}
	#field .contentsListInner {
		margin-top: 40px;
		padding-bottom: 0px;
		padding-left: 8vw;
		padding-right: 8vw;
	}
	.contentsBoxOutline .headline {
		font-weight: 700;
		font-size: 2.25rem;
		line-height: 1.5;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
		margin-bottom: 20px;
	}
	.contentsBoxOutline .contentsBoxWrap {
		margin-bottom: 55px;
	}
	.contentsBoxOutline .contentsTextBox .contentsTitle {
		font-weight: 700;
		font-size: 1.4rem;
		line-height: 1.6;
		text-align: center;
	}
	/* 記事テキスト部分 */
	.contentsBoxOutline .contentsDetailBox {
		padding: 18px 20px 22px;
	}

	/*----- 訴求ボックス ------*/
	.appealsBox {
		width: 100%;
		margin: 0 auto;
		padding: 27px 20px 31px;
		background-color: #e1e5ec;
		border-radius: 10px;
		text-align: center;
	}
	.appealsBox p {
		font-weight: 700;
		font-size: 1.2rem;
		line-height: 1.8;
		letter-spacing: 0.15em;
		text-align: left;
	}
	.appealsBox .commonBtnBox {
		margin-top: 30px;
	}

	/*------------------------------------
		活用分野個別ページ
	-------------------------------------*/
	#fieldPage .contentsBodyInner {
		padding-top: 40px;
		padding-bottom: 56px;
	}
	#fieldPage .contentsMainVisualTitle {
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		/* max-width: 1240px; */
		padding: 0 5.3vw;
		line-height: 1.4;
		text-align: center;
	}
	#fieldPage .contentsMainVisualTitle span {
		display: inline-block;
		width: 100%;
	}
	#fieldPage .contentsMainVisualTitle .fontS {
		font-size: 1.25rem;
		/* margin-bottom: 15px; */
	}

	/*------------------------------------
		トップページ
	-------------------------------------*/
	#home .sectionWrap {
		padding: 55px 0;
	}

	/* フォント設定 */
	#home .sectionWrap .headlineTxtM {
		font-weight: 700;
		font-size: 2.3rem;
		line-height: 1.5;
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		letter-spacing: 0.15em;
		margin-bottom: 55px;
	}

	/* 「DC3に込めた思い」背景画像一面セクション */
	#home .sectionWrap.bgImg01 {
		height: 300px;
		padding: 0;
		color: #fff;
		background-image: url(../img/top/sp/top_bgImg01_sp.jpg);
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
	}
	#home .sectionWrap.bgImg01 .txtArea {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		height: 300px;
	}
	#home .sectionWrap.bgImg01 .headlineTxtM {
		margin-top: 55px;
	}
	/* 「DC3に込めた思い」セクションのテキスト */
	#home .sectionWrap.thoughtsText {
		padding: 42px 0;
	}
	#home .sectionWrap.thoughtsText .txtArea {
		margin-bottom: 0;
		/* text-align: center; */
	}
	/* 縦の3点ドット */
	#home .sectionWrap.thoughtsText .txtArea .dot {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 3px;
		padding: 2px 0 10px;
		margin-left: 88px;
	}
	#home .sectionWrap.thoughtsText .txtArea .dot > span {
		display: inline-block;
		width: 100%;
		line-height: 1;
	}
	#home .sectionWrap.thoughtsText .txtArea .txtSpanBox {
		display: block;
		text-align: left;
	}
	#home .sectionWrap.thoughtsText .txtArea .txtSpanBox.spanMb {
		margin-bottom: 10px;
	}

	/* 2列のセクション */
	#home .sectionWrap.column2 {
		padding: 0;
	}
	#home .sectionWrap.column2 .sectionInner {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
	}
	#home .sectionWrap.column2.rowReverse .sectionInner {
		flex-direction: row-reverse;
	}
	#home .sectionWrap.column2 .bgImg02 {
		width: 100%;
		padding-top: 80%;
		background-image: url(../img/top/sp/top_bgImg02_sp.jpg);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
	}
	#home .sectionWrap.column2 .bgImg03 {
		width: 100%;
		padding-top: 80%;
		background-image: url(../img/top/sp/top_bgImg03_sp.jpg);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
	}
	#home .sectionWrap.column2 .txtArea {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		width: 100%;
		margin-bottom: 0;
		padding-top: 42px;
		padding-bottom: 58px;
		text-align: left;
	}
	#home .sectionWrap.column2.rowReverse .txtArea {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-end;
	}
	.sectionWrap.column2.rowReverse .txtArea p {
		display: block;
	}

	/* トップページのリスト設定 */
	#home .sectionWrap.column2 .txtArea ul {
		width: 100%;
	}
	#home .sectionWrap.column2 .txtArea ul li::before {
		content: "・";
	}

	/*----- ヒストリー ------*/
	#home .sectionWrap.history .headlineTxtS {
		text-align: center;
		margin-bottom: 20px;
	}
	#home .sectionWrap.history .txtArea img {
		margin: 0 auto;
	}
	#home .sectionWrap.history .txtArea {
		margin-bottom: 0;
		font-weight: 400;
	}

	/*------------------------------------
		DC3とはページ
	-------------------------------------*/
	/*----- 共通設定 ------*/
	#about .sectionMenuWrap.bgRed {
		background-color: #b71a35;
	}
	#about .sectionWrap .txtArea img {
		margin: 0 auto;
	}

	/*----- メインビジュアル ------*/
	/* #about .mainVisualInner {
		position: relative;
		display: flex;
		justify-content: center;
		width: 100%;
		height: 340px;
		margin-top: 90px;
		background-image: url(../img/about/sp/main_about_img_sp.jpg);
		background-size: cover;
		background-position: center bottom;
		background-repeat: no-repeat;
	} */
	/* #about .mainVisualBox {
		position: absolute;
		top: 80px;
		text-align: center;
	} */

	/*----- パンくずリスト ------*/
	/* #about .breadcrumbListOutline .breadcrumbListWrap {
		margin-top: -40px;
	} */

	/*----- DC3の理念 ------*/
	#about .sectionWrap.philosophy {
		padding-top: 55px;
		padding-bottom: 55px;
	}
	#about .sectionWrap.philosophy .txtArea {
		margin-bottom: 0;
	}

	/*----- DC3のエコシステム ------*/
	#about .sectionWrap.ecosystem {
		padding-top: 55px;
		padding-bottom: 55px;
	}
	#about .sectionWrap.ecosystem .txtArea {
		margin-bottom: 0;
	}

	/*----- DC3コンテンツとは ------*/
	#about .sectionWrap.aboutContent {
		padding-top: 55px;
		padding-bottom: 60px;
	}
	#about .sectionWrap.aboutContent .txtArea {
		margin-bottom: 0;
	}
	#about .sectionWrap .borderBox {
		padding: 22px 17px 25px;
		border-radius: 10px;
		border: 2px solid #eff1f5;
	}
	#about .sectionWrap .borderBox .headline {
		position: relative;
		margin-bottom: 30px;
		text-align: center;
	}
	#about .sectionWrap .borderBox .headline::after {
		content: "";
		position: absolute;
		left: 50%;
		right: 50%;
		transform: translate(-50%, 0%);
		display: block;
		width: 50px;
		height: 1px;
		margin-top: 10px;
		background-color: #fff;
	}
	#about .sectionWrap .borderBox .sentence {
		font-weight: 500;
		font-size: 1.1rem;
	}
	#about .sectionWrap .headlineTxtL {
		font-size: 2.25rem;
		line-height: 1.4;
	}

	/*----- DC3コンテンツの流通について ------*/
	#about .sectionWrap.distribution {
		padding: 0;
		padding: 55px 0 30px;
	}

	#about .sectionWrap.distribution .txtArea {
		margin-bottom: 0;
		text-align: center;
	}
	#about .sectionWrap.distribution .headlineTxtL {
		margin-bottom: 0;
	}

	/* 2列セクション */
	#about .sectionWrap.column2 .sectionInner {
		display: block;
		text-align: left;
		padding: 0 5.3vw;
	}
	#about .sectionWrap.column2 {
		padding: 47.5px 0 55px;
	}
	#about .sectionWrap.column2 .txtArea {
		margin-bottom: 40px;
	}
	#about .sectionWrap.column2 .txtArea .headlineTxtM {
		position: relative;
		font-size: 1.5rem;
		line-height: 1.5;
		margin-bottom: 17px;
		padding-left: 14px;
	}
	#about .sectionWrap.column2 .txtArea .headlineTxtM::before {
		content: "";
		position: absolute;
		top: 0px;
		left: 0;
		height: 100%;
		border-left: 4px solid #fff;
	}
	#about .sectionWrap.column2.rowReverse .txtArea .headlineTxtM::before {
		border-left: 4px solid #262626;
	}
	#about .sectionWrap.column2 .txtArea p {
		font-weight: 400;
		font-size: 1.2rem;
	}
	#about .sectionWrap.column2 .sectionInner img {
		width: 100%;
		height: auto;
	}

	/*----- DC3マイルームについて ------*/
	#about .sectionWrap.myroom {
		padding: 50px 0 50px;
		border-bottom: 1px solid #e1e5ec;
	}
	#about .sectionWrap.myroom .txtArea {
		display: flex;
		flex-wrap: wrap;
		flex-direction: column-reverse;
		text-align: left;
	}
	#about .sectionWrap.myroom .txtArea span {
		display: inline-block;
		font-weight: 500;
		font-size: 1.1rem;
		margin-top: 28px;
	}
	#about .sectionWrap.myroom .txtArea {
		margin-bottom: 0;
	}

	/*------------------------------------
		関連ソリューション、導入ページ共通設定
	-------------------------------------*/
	/*----- パンクズリスト部分 ------*/
	.listPage .breadcrumbListWrap {
		background-color: #fff;
	}

	/*----- コンテンツ部分 ------*/
	.listPage .contentsWrap {
		padding-top: 35px;
		border-bottom: 1px solid #e1e5ec;
	}
	.listPage .contentsInner {
		padding-bottom: 55px;
	}
	.listPage .contentsListInner {
		padding-bottom: 0px;
		padding-left: 8vw;
		padding-right: 8vw;
	}

	/*------------------------------------
		関連ソリューション、導入の個別ページ共通設定
	-------------------------------------*/
	#individualPage .contentsBodyInner {
		padding-top: 40px;
		padding-bottom: 56px;
	}
	#individualPage .contentsMainVisualTitle {
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		padding: 0 5.3vw;
		line-height: 1.4;
		text-align: center;
	}
	#individualPage .contentsMainVisualTitle span {
		display: inline-block;
		width: 100%;
	}
	#individualPage .contentsMainVisualTitle .fontS {
		font-size: 1.25rem;
	}
	#individualPage .contentsMainVisualTitle .maxFont {
		/* display: block;
		width: 10ch;
		font-family: "Courier New", Consolas, monospace;
		white-space: nowrap;
		text-overflow: ellipsis;
		overflow: hidden; */
	}

	/*----- コンテンツ部分 ------*/
	#individualPage .breadcrumbListWrap {
		background-color: #fff;
	}
	#individualPage .contentsWrap {
		background-color: #fff;
		border-bottom: 1px solid #e1e5ec;
	}

	/*------------------------------------
		導入事例
	-------------------------------------*/
	#caseStudy .contentsTitle {
		text-align: left;
	}

	/*------------------------------------
		コラム
	-------------------------------------*/
	#column .contentsTitle {
		text-align: left;
	}

	/*------------------------------------
		資料ダウンロード
	-------------------------------------*/
	#document .contentsTitle {
		text-align: left;
	}

	/*------------------------------------
		フォーム
	-------------------------------------*/

	/* 共通タイトルヘッダー */
	.commonHeaderContainer {
		display: flex;
		align-items: center;
		justify-content: center;
		height: 110px;
		margin-top: 50px;
		background-color: #bb2639;
		/* margin-bottom: 90px; */
	}
	.commonHeaderContainer .headerTitle {
		font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		font-size: 2rem;
		font-weight: 700;
		color: #ffffff;
	}

	/* 入力ページ＆共通部分 */
	.documentContainer {
		padding-top: 42px;
		background-color: #f7f7f9;
	}

	.documentWrap {
		display: block;
		width: 100%;
		margin: 0 auto;
		padding-bottom: 60px;
	}
	.documentBox {
		width: 100%;
		margin-bottom: 50px;
	}
	.documentBox img {
		margin-bottom: 26px;
	}
	.documentBox .title {
		font-size: 2rem;
		font-weight: bold;
		line-height: 1.5;
		margin-bottom: 30px;
	}
	.documentBox .textArea p {
		font-size: 1.5rem;
		line-height: 1.6;
	}

	.formWrap {
		border-top: 2px solid #d0d3d8;
	}

	.formTitle .formTopText {
		color: #252528;
		font-size: 1.5rem;
		line-height: 1.6;
		text-align: left;
		margin-top: 55px;
		margin-bottom: 40px;
	}

	.formGroup {
		width: 100%;
		margin: 0 0 33.5px;
	}
	.formGroup:last-child {
		margin-bottom: 0;
	}

	.formLabel {
		display: flex;
		align-items: center;
		position: relative;
		font-size: 1.5rem;
		font-weight: bold;
	}
	.formLabel.required:after {
		content: "必須";
		display: flex;
		align-items: center;
		justify-content: center;
		width: 50px;
		/* height: 20px; */
		margin-left: 15px;
		padding: 3px 0 4px;
		font-size: 1.2rem;
		color: #ffffff;
		background-color: #d6304c;
		border-radius: 20px;
	}
	/* safari用 */
	_::-webkit-full-page-media,
	_:future,
	:root .formLabel.required::after {
		padding: 4px 0 3px;
	}
	.formLabel .required2 {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 50px;
		height: 19px;
		font-size: 1.2rem;
		color: #ffffff;
		background-color: #d6304c;
		border-radius: 20px;
	}

	.formItem {
		margin: 12.5px 0 0;
	}
	.formControl {
		display: inline-block;
		width: 100%;
		height: 50px;
		padding: 9px 15px;
		font-size: 1.5rem;
		background: #ffffff;
		border: solid 1px #a3a3a3;
		border-radius: 0;
		transition: 0.2s;
		font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
	}
	.formControl:focus {
		background-color: #fff5f7;
		border: solid 1px #494949;
		outline: 0;
	}
	textarea {
		font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
		height: 190px;
	}

	.formSelectWrap {
		position: relative;
	}
	.formSelectWrap select {
		cursor: pointer;
		color: #222;
	}
	.formSelectWrap input {
		cursor: pointer;
	}
	.formSelectWrap::after {
		content: "";
		position: absolute;
		top: 50%;
		bottom: 50%;
		right: 17px;
		transform: translate(0, -50%);
		width: 17.4px;
		height: 10.1px;
		background: url(../../img/contact/form_select_arrow.svg);
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
		pointer-events: none;
	}

	.textBoxDiv {
		position: relative;
	}
	.textBoxDiv .placeholderDiv {
		position: absolute;
		top: 38%;
		left: 15px;
		font-size: 1.5rem;
		color: #252528;
		pointer-events: none;
	}
	.textBoxDiv .placeholderDiv.none {
		display: none;
	}
	.formCheckboxWrap {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		min-height: 57.5px;
		padding: 16px 20px 16px;
		background-color: #ffef9f;
	}
	.formCheckLabel {
		position: relative;
		display: inline-block;
		padding: 0 0 0 33px;
		position: relative;
		font-size: 1.5rem;
		line-height: 1.6;
		cursor: pointer;
	}
	.formCheckLabel a {
		border-bottom: 1px solid #000;
	}
	.formCheckLabel:before {
		content: "";
		display: block;
		width: 23px;
		height: 23px;
		position: absolute;
		top: 50%;
		bottom: 50%;
		left: 0;
		transform: translate(0, -50%);
		background: #ffffff;
		border: solid 1px #d15d76;
		border-radius: 5px;
	}
	.formCheckbox:checked + .formCheckLabel:before {
		background: #bb2639;
	}
	.formCheckbox:checked + .formCheckLabel:after {
		content: "";
		display: block;
		width: 16.6px;
		height: 12.1px;
		position: absolute;
		top: 50%;
		bottom: 50%;
		left: 4px;
		transform: translate(0, -50%);
		background: url(../img/document/form_check_icon.svg) no-repeat;
		background-size: contain;
	}
	.checkboxGroup {
		margin-top: 38px;
	}
	.checkboxGroup .checkboxText {
		font-size: 1.3rem;
		line-height: 1.6;
		margin-top: 18px;
	}

	.formButtonWrap {
		margin: 0 auto;
		text-align: center;
	}
	.formButtonWrap .formButton {
		width: 57.33%;
		min-width: 215px;
		height: 50px;
		border-radius: 100px;
		font-size: 1.75rem;
		font-weight: bold;
		letter-spacing: 0.3em;
		color: #ffffff;
		background-color: #bb2639;
		/* デフォルトボタンCSSリセット↓ */
		border: none;
		cursor: pointer;
		outline: none;
		margin: 0 auto;
	}

	/*------------------------------------
		資料ダウンロード(入力・完了)共通設定
	-------------------------------------*/
	.closeWrap {
		background-color: #fff;
		height: 145px;
		padding-top: 47px;
		text-align: center;
	}

	/* ボタンアイコン設定 */
	.documentDlBtn.commonBtnBox a {
		/* width: 180px; */
	}
	.documentDlBtn.commonBtnBox a > .btnIcon {
		width: 14px;
		height: 14px;
		background-image: url(../img/document/form_close_icon_hover.svg);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
	}
	.documentDlBtn.commonBtnBox a > .btnIcon::after {
		content: "";
		display: block;
		width: 12px;
		height: 12px;
		background-image: url(../img/document/form_close_icon.svg);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		transition: 0.5s;
	}

	/*--------------------------
	|         エラーページ         |
	---------------------------*/
	.formError {
		position: relative;
		font-size: 1.5rem;
		line-height: 1.5;
		font-weight: bold;
		color: #e01b3d;
		margin-top: 16px;
		margin-bottom: 10px;
		padding-left: 32px;
	}
	.formError:last-child {
		margin-bottom: 0;
	}
	.formError::before {
		content: "";
		position: absolute;
		top: -2px;
		left: 0;
		display: inline-block;
		width: 25px;
		height: 25px;
		background: url(../img/document/form_error.svg) no-repeat;
		background-size: contain;
	}
	#error .formButtonWrap .formButton.return {
		margin-right: 0px;
	}

	.formCheckboxWrap .formError {
		display: inline-block;
		margin-top: 15px;
	}

	.formGroup.error .formControl {
		background: #feffd7;
		border: solid 2px #e01b3d;
	}
	/* .formControl.error {
		background: #feffd7;
		border: solid 2px #e01b3d;
	} */

	/*--------------------------
	|         thanksページ         |
	---------------------------*/
	.thanksPageWrap {
		background-color: #f7f7f9;
	}
	.thanksPageBox {
		padding-top: 42px;
		padding-bottom: 55px;
	}
	.thanksPageBox .title {
		font-size: 2rem;
		font-weight: bold;
		line-height: 1.5;
		text-align: left;
		margin-bottom: 32px;
	}
	.thanksPageBox .text {
		font-size: 1.5rem;
		line-height: 1.6;
		text-align: left;
		margin-bottom: 32px;
	}

	.thanksPageBox .commonBtnBox {
		width: 100%;
		max-width: 335px;
		height: 50px;
		margin-bottom: 75px;
	}
	.thanksPageBox .commonBtnBox a > .btnTxt {
		font-size: 1.25rem;
	}

	/* ボタンアイコン設定 */
	.thanksPageBox .commonBtnBox a > .btnIcon {
		width: 23.5px;
		height: 9px;
		background-image: url(../img/document/arrow_thanksPage_over.svg);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
	}
	.thanksPageBox .commonBtnBox a > .btnIcon::after {
		content: "";
		display: block;
		width: 23.5px;
		height: 9px;
		background-image: url(../img/document/arrow_thanksPage.svg);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		transition: 0.5s;
	}

	.thanksPageBox .snsText {
		font-size: 1.5rem;
		line-height: 1.5;
		font-weight: bold;
		text-align: left;
		margin-bottom: 20px;
	}
	.thanksPageBox .snsBox {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 20px;
		margin-bottom: 42px;
	}

	.thanksPageBox .contactBox.colorBox {
		/* display: inline-block; */
		display: table;
		margin: 0 auto;
		padding: 27px 20px 31px;
		border-radius: 8px;
		background-color: #e1e5ec;
	}
	.thanksPageBox .contactBox .contactTitle {
		font-size: 1.8rem;
		font-weight: bold;
		margin-bottom: 26px;
	}
	.thanksPageBox .contactBox .contactText {
		font-size: 1.5rem;
		line-height: 1.5;
		text-align: left;
		margin-bottom: 20px;
	}
	.thanksPageBox .contactBox .contactMail {
		display: inline-block;
		font-size: 1.5rem;
		font-weight: bold;
	}
	.thanksPageBox .contactBox .contactMail a::before {
		content: "";
		display: inline-block;
		width: 23.5px;
		height: 16.5px;
		margin-right: 8px;
		vertical-align: middle;
		background-image: url(../img/document/mail_icon.svg);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
	}

	body#documentDl {
		display: flex;
		flex-direction: column;
		min-height: 100vh;
	}
	#documentDl footer {
		margin-top: auto;
	}

	* {
		/* outline: 1px solid #000; */
	}
}
/* ↑(max-width: 750px) END */
