@charset "utf-8";

/*//////////////////////////////////////////////////////
マーケター用
//////////////////////////////////////////////////////*/

.custom-cta-01 {}

/* popup maker */

.pum-theme-default-theme:not(#_) {
	background-color: rgba(0, 0, 0, .7);
}

.pum-container,
.pum-theme-default-theme .pum-container:not(#_) {
	margin: 0;
	padding: 0;
	box-shadow: none;
	background-color: transparent;
	border: none;
}

.pum-theme-default-theme .pum-content+.pum-close:not(#_) {
	line-height: 35px;
	font-size: 32px;
}

.pum-container.pum-responsive img {
	width: 100%;
}

@media screen and (max-width: 768px) {

	.pum-theme-default-theme .pum-content+.pum-close:not(#_) {
		line-height: 27px;
		font-size: 24px;
	}
}

/* adrotate */

.a-single {
	margin-top: 32px;
}

.a-single img {
	width: 100%;
}

div.editor h2 {
	margin-top: 50px;
}

div.editor h3 {
	margin-bottom: 30px;
	margin-top: 50px;
}

/* 後でCSSファイルに記載する */
@media screen and (max-width: 568px) {
	.policy_box {
		height: auto;
	}
}

/* 記事の監修者 */
.p-columnContent__author {
	padding: 16px;
	border: 1px solid #f2f2f2;
}

.p-columnContent__author>p {
	margin-bottom: 10px;
	font-weight: bold;
}

.p-columnContent__author__box {
	display: flex;
	gap: 16px;
}

.p-columnContent__author__cont {
	flex: 1;
}

.p-columnContent__author__cont p {
	font-size: 14px;
}

.p-columnContent__author__icon img {
	height: auto;
}

.p-columnList .p-columnList__author-icon img {
	height: 100%;
	object-fit: cover;
}

@media screen and (max-width: 431px) {
	.p-columnContent__author__box {
		flex-direction: column;
	}
}

/* 監修者コメント */
.supervisors-comment {
	margin: 24px 0;
	padding: 24px 20px 20px;
	display: flex;
	align-items: center;
	gap: 12px;
	position: relative;
	border: 1px solid #e3e3e3;
	font-family: "Noto Sans JP", sans-serif;

	@media screen and (max-width: 768px) {
		flex-direction: column;
	}
}

.supervisors-comment__tag {
	position: absolute;
	top: -15px;
	left: 20px;
	font-size: 12px;
	padding: 4px 12px;
	background-color: #12488d;
	color: white;
	display: flex;
	align-items: center;
	justify-content: center;
}

.supervisors-comment__img {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	overflow: hidden;
	aspect-ratio: 1/1;
}

.supervisors-comment__img:not(#_) img {
	max-width: 100%;
	height: 100%;
	object-fit: cover;
}

.supervisors-comment__comment:not(#_) p {
	margin: 0;
	font-size: 14px;
	letter-spacing: 0.02em;
}

/* 監修者コメント ここまで */

.p-columnContent__thum::before {
	content: "";
	display: block;
	padding-top: 56.67% !important;
}

code {
	display: inline-block;
	/* max-width: 100vw !important; */
	width: 100%;
	word-break: break-all !important;
	overflow-wrap: break-word;
}

.p-newsPost .c-breadcrumbs {
	bottom: -61px !important;
}

.p-newsContent {
	padding-top: 50px;
}


.p-columnList .p-columnList__thumb:before {
	padding-top: 52%;
}

.p-columnContent__thum::before {
	padding-top: 52% !important;
}

#popmake-32652 {
	max-width: 300px !important;
	left: 42% !important;
	top: 35% !important;
}

@media screen and (max-width: 768px) {
	#popmake-32652 {
		max-width: 300px !important;
		top: 35% !important;
		left: 12% !important;
	}
}


/**** Footer ****/

/*! CSS Used from: /system/wp-content/themes/pengin-corp-2025/assets/css/style.css?ver=20251221134640 ; media=all */
/*! CSS Used from: /system/wp-includes/css/dist/block-library/style.min.css?ver=6.8.3 ; media=all */
@media all {
	ul {
		box-sizing: border-box;
	}
}

/*! CSS Used from: /system/wp-content/themes/pengin-corp-2025/assets/css/style.css?ver=20251221134640 ; media=all */
footer {
	.l-wrapper {
		width: 90%;
		max-width: 1200px;
		margin: auto;
		position: relative;
	}

	.l-footer__copy,
	.l-footer__btn {
		font-size: 14px;
	}

	@media screen and (max-width: 768px) {

		.l-footer__copy,
		.l-footer__btn {
			font-size: 13px;
		}
	}

	@media screen and (max-width: 568px) {

		.l-footer__copy,
		.l-footer__btn {
			font-size: 12px;
		}
	}

	.l-footer.--hasCorner {
		position: relative;
		margin-top: 0;
	}

	.l-footer.--hasCorner:before {
		content: "";
		position: absolute;
		left: 0;
		bottom: calc(100% - 1px);
		width: 100%;
		height: 60px;
		border-radius: 60px 60px 0 0;
		background: #fff;
	}

	@media screen and (max-width: 768px) {
		.l-footer.--hasCorner:before {
			height: 20px;
			border-radius: 20px 20px 0 0;
		}
	}

	div,
	p,
	a,
	img,
	ul,
	li,
	footer,
	nav {
		margin: 0;
		padding: 0;
		border: 0;
		font-size: 100%;
		font: inherit;
	}

	footer,
	nav {
		display: block;
	}

	img {
		display: inherit;
	}

	ul {
		list-style: none;
	}

	* {
		box-sizing: border-box;
		word-break: normal;
		background-repeat: no-repeat;
	}

	::selection {
		background: #0B2F81;
		color: #fff;
	}

	p {
		line-height: 1.6;
	}

	a,
	a:hover,
	a:visited,
	a:link {
		color: #303339;
		text-decoration: none;
	}

	a {
		transition: background-color 0.4s ease, color 0.4s ease, opacity 0.4s ease;
	}

	a img {
		transition: opacity 0.4s ease;
	}

	a:hover {
		opacity: 0.8;
	}

	a:hover img {
		opacity: 0.8;
	}

	img {
		max-width: 100%;
		display: block;
		height: auto;
	}

	br {
		line-height: inherit;
	}

	*,
	*::before,
	*::after {
		box-sizing: border-box;
	}

	::placeholder {
		color: #ddd;
	}

	::selection {
		color: #fff;
		background: #0B2F81;
	}

	.c-btn01 {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 100%;
		font-weight: 700;
	}

	.c-btn01,
	.c-btn01:hover,
	.c-btn01:visited,
	.c-btn01:link {
		color: #fff;
		text-decoration: none;
	}

	.c-btn01 {
		flex-shrink: 0;
		border-radius: 9990px;
		border: 1px solid #fff;
		position: relative;
		width: 215px;
		height: 50px;
		line-height: 1;
		padding-bottom: 3px;
		padding-right: 15px;
	}

	.c-btn01::before {
		aspect-ratio: 1/1;
		background: #fff url(/system/wp-content/themes/pengin-corp-2025/assets/img/arrow/navy-right_01.svg) center center/11px no-repeat;
		position: absolute;
		border-radius: 50%;
		content: "";
		top: 50%;
		transform: translate(0, -50%);
		width: 25px;
		right: 15px;
		transition: right 0.3s ease;
	}

	.c-btn01:hover {
		opacity: 1;
	}

	.c-btn01:hover:before {
		right: 10px;
	}

	.c-btn01--white {
		border-color: transparent;
		background: #fff;
	}

	.c-btn01--white,
	.c-btn01--white:hover,
	.c-btn01--white:visited,
	.c-btn01--white:link {
		color: #0B2F81;
		text-decoration: none;
	}

	.c-btn01--white::before {
		background: #0B2F81 url(/system/wp-content/themes/pengin-corp-2025/assets/img/arrow/white-right_01.svg) center center/11px no-repeat;
	}

	.l-footer {
		background: #081831;
		position: relative;
		z-index: 20;
		padding-bottom: 96px;
	}

	.l-footer .l-wrapper {
		max-width: 1200px;
	}

	.l-footer.--hasCorner {
		padding-top: 40px;
	}

	.l-footer.--hasCorner:before {
		background: #081831;
	}

	.l-footer__clm {
		display: flex;
		gap: 64px;
	}

	@media screen and (max-width: 768px) {
		.l-footer__clm {
			flex-direction: column;
		}
	}

	.l-footer__info {
		width: fit-content;
	}

	.l-footer__logo {
		width: 176px;
		display: flex;
	}

	.l-footer__logo img {
		width: 100%;
	}

	.l-footer__copy {
		margin-top: 20px;
		color: #fff;
		font-weight: 500;
	}

	.l-footer__snsList {
		margin: 14px 0 0 -10px;
		display: flex;
		gap: 2px;
	}

	.l-footer__snsList-item {
		width: 40px;
	}

	.l-footer__nav {
		flex: 1;
		display: flex;
		justify-content: space-between;
		gap: 50px;
	}

	@media screen and (max-width: 568px) {
		.l-footer__nav {
			flex-direction: column;
		}
	}

	.l-footer__nav-item {
		display: flex;
		flex-direction: column;
		gap: 54px;
	}

	.l-footer__parent {
		color: #fff;
		font-size: 26px;
		font-weight: 700;
		letter-spacing: 0.01em;
		text-transform: uppercase;
	}

	.l-footer__parent--link,
	.l-footer__parent--link:hover,
	.l-footer__parent--link:visited,
	.l-footer__parent--link:link {
		color: #fff;
		text-decoration: none;
	}

	.l-footer__parent--link {
		padding-right: 31px;
		position: relative;
	}

	.l-footer__parent--link::before,
	.l-footer__parent--link::after {
		content: "";
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 0;
		transition: all 0.4s ease;
	}

	.l-footer__parent--link::before {
		width: 19px;
		aspect-ratio: 1;
		border-radius: 50%;
		background: #EDF2FA;
	}

	.l-footer__parent--link::after {
		width: 9px;
		right: 5px;
		aspect-ratio: 1;
		background: #fff url(/system/wp-content/themes/pengin-corp-2025/assets/img/arrow/navy-right_01.svg) center center/contain no-repeat;
	}

	.l-footer__parent--link:hover::before {
		right: -5px;
	}

	.l-footer__parent--link:hover::after {
		right: 0px;
	}

	.l-footer__navList {
		margin-top: 10px;
		gap: 14px;
		display: grid;
		grid-template-columns: repeat(1, 1fr);
	}

	.l-footer__navList--col2 {
		align-items: flex-start;
		grid-template-columns: repeat(2, 1fr);
	}

	@media screen and (max-width: 1280px) {
		.l-footer__navList--col2 {
			grid-template-columns: repeat(1, 1fr);
		}
	}

	.l-footer__navList-item a,
	.l-footer__navList-item a:hover,
	.l-footer__navList-item a:visited,
	.l-footer__navList-item a:link {
		color: #fff;
		text-decoration: none;
	}

	.l-footer__navList-item a {
		font-size: 14px;
		font-weight: 500;
		display: flex;
		padding-left: 20px;
		position: relative;
	}

	.l-footer__navList-item a::before,
	.l-footer__navList-item a::after {
		content: "";
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 0;
	}

	.l-footer__navList-item a::before {
		width: 12px;
		aspect-ratio: 1;
		border-radius: 50%;
		background: #edf2fa;
		border: 1px solid #dde3eb;
	}

	.l-footer__navList-item a::after {
		width: 5px;
		left: 4px;
		aspect-ratio: 1;
		background: url(/system/wp-content/themes/pengin-corp-2025/assets/img/arrow/navy-right_01.svg) center center/contain no-repeat;
	}

	.l-footer__btnWrap {
		margin-top: 2px;
		display: flex;
		flex-direction: column;
		gap: 13px;
	}

	.l-footer__bottom {
		margin-top: 24px;
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
		gap: 20px;
	}

	@media screen and (max-width: 768px) {
		.l-footer__bottom {
			align-items: flex-start;
			flex-direction: column;
		}
	}

	.l-footer__company-name {
		color: #fff;
		font-size: 14px;
		font-weight: 700;
	}

	.l-footer__company-addr {
		margin-top: 8px;
		color: #fff;
		font-size: 10px;
		font-weight: 700;
	}

	.l-footer__copyright {
		color: #fff;
		font-size: 10px;
		font-weight: 500;
		opacity: 0.6;
	}

	.l-footer__btn {
		height: 43px;
	}

	.u-en {
		font-family: "Nunito Sans", sans-serif;
	}
}

