@charset 'UTF-8';
/* =====================================================
* Base
* ================================================== */

/*! normalize.css v3.0.0 | MIT License | git.io/normalize */

html {
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	font-family: sans-serif;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	margin: 0.67em 0;
	font-size: 2em;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	position: relative;
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	margin: 0;
	color: inherit;
	font: inherit;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
	cursor: pointer;
	-webkit-appearance: button;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	padding: 0;
	border: 0;
}

input {
	line-height: normal;
}

input[type=checkbox],
input[type=radio] {
	box-sizing: border-box;
	padding: 0;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
	height: auto;
}

input[type=search] {
	box-sizing: content-box;
	-webkit-appearance: textfield;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
	border: 1px solid #c0c0c0;
}

legend {
	padding: 0;
	border: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

.information-detail__container {
	max-width: var(--content-width);
	margin: 40px auto;
	padding: 40px;
	border-radius: 24px;
	background-color: #fff;
}

.u-width-narrow.information-detail__container {
	max-width: var(--content-width-narrow);
}

.u-width-compact.information-detail__container {
	max-width: var(--content-width-compact);
}

input[type=checkbox]:checked::after,
.c-breadcrumb__item:not(:last-child)::after,
.c-message-box::before,
.chat-window__main-content .chat-baloon .name[data-icon]:not([data-icon=''])::before,
.chat-window__main-content .chat-baloon .attachments .attachment::after,
.nav-arrow::after,
.sort-marker::after {
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-style: normal;
}

.modal__upload-attachment,
.modal__content {
	position: relative;
	width: 100%;
	max-width: 800px;
	padding: 40px;
	border-radius: 24px;
	background-color: #fff;
}

.modal__upload-attachment .close-button,
.modal__content .close-button {
	cursor: pointer;
	position: absolute;
	top: -40px;
	right: -24px;
	color: #fff;
	font-size: 32px;
}

@-webkit-keyframes anim-textLinkUnderline {
	0% {
		height: 0;
	}

	98% {
		height: 3px;
	}

	100% {
		height: 2px;
	}
}

@keyframes anim-textLinkUnderline {
	0% {
		height: 0;
	}

	98% {
		height: 3px;
	}

	100% {
		height: 2px;
	}
}

:root {
	--content-width: 1200px;
	--content-width-narrow: 800px;
	--content-width-compact: 560px;
	--header-height: 100px;
	--user-bar-height: 28px;
	--sp-mypage-nav-height: 48px;
}

/* -----------------------------------------------------
 * Init
 * -------------------------------------------------- */

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

/* normalize overwrite */

html {
	position: relative;
	min-height: 100%;
	font-family: 'Roboto', 'Noto Sans JP', serif;
}

body {
	z-index: 1;
	height: 100%;
	margin: 0;
	padding: 0;
	background: #fff9ed;
	color: #003b6a;
	font-size: 1rem;
	line-height: 1.5;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: unset;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
}

ul,
ol {
	margin: 1em 0 1em 1.5em;
}

ul li ul,
ul li ol,
ol li ul,
ol li ol {
	margin: 0 0 0 1em;
}

ul {
	list-style-type: inherit;
}

ul li::marker {
	color: #c2d3e2;
}

ol {
	list-style-type: decimal;
}

figure {
	margin: 0;
}

a {
	color: #0085ad;
	text-decoration: none;
	transition: opacity 0.15s ease-out;
}

a:hover {
	opacity: 0.7;
	text-decoration: underline;
}

a.has-ul {
	text-decoration: underline;
}

a.has-ul:hover {
	text-decoration: none;
}

a[target=_blank]::after {
	content: '\f2d2';
	margin-left: 0.5em;
	font-family: 'Font Awesome 6 Free';
	font-size: 90%;
	font-weight: 400;
	font-style: normal;
}

footer a[target=_blank]::after {
	font-weight: 900;
}

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

p {
	margin: 0;
}

.u-red-text {
	color: #dd3b3b;
}

dl {
	margin: 0;
}

dd {
	margin-left: 0;
}

hr {
	margin: 24px 0;
	border: none;
	border-top: 1px solid #c2d3e2;
}

button {
	cursor: pointer;
	padding: 0;
	border-style: none;
}

address {
	font-weight: 500;
	font-style: inherit;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
	border: 1px solid #c2d3e2;
	font-size: 0.875rem;
}

table th,
table td {
	padding: 10px 8px;
	border: 1px solid #c2d3e2;
	text-align: left;
	vertical-align: top;
}

table th {
	background-color: #e9f1f7;
}

br[data-only=sp] {
	display: none;
}

.scroll-to-top {
	cursor: pointer;
	display: none;
	position: fixed;
	z-index: 11;
	right: 32px;
	bottom: 32px;
}

.scroll-to-top:hover {
	opacity: 1;
}

.scroll-to-top i {
	box-shadow: 0 0 16px rgba(0, 0, 0, 0.2);
}

.counting-badge {
	display: inline-grid;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	min-width: 18px;
	height: 18px;
	padding: 2px 6px;
	border-radius: 18px;
	background-color: #dd3b3b;
	color: #fff;
	font-size: 0.6875rem;
	font-weight: bold;
	place-items: center;
}

.modal__container {
	display: none;
	position: fixed;
	z-index: 12;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background-color: rgba(0, 0, 0, 0.6);
}

.modal__content {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.modal__content--body {
	margin-bottom: 24px;
}

.modal__content--body.u-center-text {
	text-align: center;
}

.modal__content--actions {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
}

.project-list-table,
.msg-list-table {
	table-layout: fixed;
	width: 100%;
	border-right: none;
	border-left: none;
}

.project-list-table thead th,
.msg-list-table thead th {
	background-color: #003b6a;
	color: #fff;
}

.project-list-table thead th a,
.msg-list-table thead th a {
	color: #fff;
}

.project-list-table tbody tr,
.msg-list-table tbody tr {
	border-bottom: 1px solid #c2d3e2;
}

.project-list-table th,
.msg-list-table th,
.project-list-table td,
.msg-list-table td {
	padding: 16px;
	border: none;
	vertical-align: middle;
}

.project-list-table .checkbox,
.msg-list-table .checkbox {
	width: 3em;
	padding-right: 0;
}

.project-list-table .action,
.msg-list-table .action {
	padding: 8px 16px;
	text-align: center;
}

.project-list-table .sort-marker,
.msg-list-table .sort-marker {
	margin-left: 8px;
}

.project-list-table .ellipsis-text,
.msg-list-table .ellipsis-text {
	display: block;
	overflow: hidden;
	max-width: 100%;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.msg-list-table tbody tr {
	background-color: #f7fbfd;
}

.msg-list-table tbody tr td.datetime time {
	display: block;
	position: relative;
	padding-left: 4px;
}

.msg-list-table tbody tr.unread {
	background-color: #fff;
	font-weight: bold;
}

.msg-list-table tbody tr.unread td.datetime time::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: -12px;
	width: 8px;
	height: 8px;
	border-radius: 8px;
	background-color: #dd3b3b;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.msg-list-table td.date {
	padding-left: 24px;
}

.project-list-table tr.canceled {
	background-color: #e9f1f7;
}

.project-status {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 90px;
	padding: 4px 15px;
	border-radius: 12px;
	font-size: 0.6875rem;
	font-weight: bold;
}

.project-status.revision-request {
	background-color: #ffdf96;
}

.project-status.draft {
	background-color: #e9f1f7;
}

.project-status.establish {
	background-color: #afe7ff;
}

.project-status.pending {
	background-color: #fdd;
}

.project-status.published {
	background-color: #bbf2d0;
}

.project-status.canceled {
	background-color: #c2d3e2;
}

.user-type-h,
.user-type-j {
	padding: 4px 10px;
	border-radius: 50px;
	font-size: 0.6875rem;
	font-weight: bold;
	white-space: nowrap;
}

.user-type {
	display: flex;
	gap: 4px;
}

.user-type-j {
	background-color: #bbf2d0;
}

.user-type-h {
	background-color: #ffdf96;
}

button.non-appearance-button {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none transparent;
	background-clip: padding-box;
	color: inherit;
	font-size: inherit;
	vertical-align: middle;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
}

button.non-appearance-button::-ms-clear {
	display: none;
}

button.non-appearance-button::-ms-reveal {
	display: none;
}

button.non-appearance-button::-ms-expand {
	display: none;
}

.u-align-center {
	text-align: center;
}

.splide__arrow {
	width: 42px;
	height: 42px;
	background: linear-gradient(0deg, #00b9d8 0%, #0071d3 50%, #00b9d8 100%);
	background: linear-gradient(0deg, #00b9d8 0%, #0071d3 50%, #00b9d8 100%);
	background-position-y: 100%;
	background-size: 100% 200%;
	box-shadow: 0 0 16px rgba(0, 0, 0, 0.1);
	transition: all 0.2s ease;
}

.splide__arrow:hover {
	background-position-y: 0;
}

.splide__arrow svg {
	fill: #fff;
}

/* =====================================================
 * Module
 * ================================================== */

:where([data-icon]:not([data-icon=''])) {
	display: inline-flex;
	align-items: center;
}

:where([data-icon]:not([data-icon='']))::before {
	display: inline-block;
	margin-right: 8px;
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-style: normal;
}

[data-icon=pdf]::before {
	content: '\f1c1';
}

[data-icon=word]::before {
	content: '\f1c2';
}

[data-icon=excel]::before {
	content: '\f1c3';
}

[data-icon=zip]::before {
	content: '\f1c6';
}

[data-icon=attachment]::before {
	content: '\f0c6';
}

[data-icon=clipboard]::before {
	content: '\f46d';
}

[data-icon=tag]::before {
	content: '\f02b';
}

[data-icon=pencil]::before {
	content: '\f303';
}

[data-icon=chat]::before {
	content: '\f086';
}

[data-icon=comment]::before {
	content: '\f075';
}

[data-icon=user]::before {
	content: '\f007';
}

[data-icon=user-edit]::before {
	content: '\f4ff';
}

[data-icon=user-xmark]::before {
	content: '\f235';
}

[data-icon=building]::before {
	content: '\f1ad';
}

[data-icon=map-marker]::before {
	content: '\f3c5';
}

[data-icon=theirs]::before {
	content: '\f1ad';
}

[data-icon=ours]::before {
	content: '\f007';
}

[data-icon=arrow-rotate]::before {
	content: '\f021';
}

[data-icon=login]::before {
	content: '\f090';
}

[data-icon=logout]::before {
	content: '\f08b';
}

[data-icon=home]::before {
	content: '\f015';
}

[data-icon=star-full]::before {
	content: '\f005';
}

[data-icon=mail]::before {
	content: '\f0e0';
}

[data-icon=trash]::before {
	content: '\f2ed';
}

[data-icon=file-lines]::before {
	content: '\f15c';
}

[data-icon=file-circle-plus]::before {
	content: '\e494';
}

[data-icon=list-ul]::before {
	content: '\f0ca';
}

[data-icon=grd-guide]::before {
	content: '';
	width: 1.5rem;
	height: 1.5rem;
	margin-right: 8px;
	background-image: url('/img/icons/guide.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

[data-icon=grd-faq]::before {
	content: '';
	width: 1.5rem;
	height: 1.5rem;
	margin-right: 8px;
	background-image: url('/img/icons/faq.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

[data-icon=grd-information]::before {
	content: '';
	width: 1.5rem;
	height: 1.5rem;
	margin-right: 8px;
	background-image: url('/img/icons/info.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

[data-icon=grd-search]::before {
	content: '';
	width: 1.5rem;
	height: 1.5rem;
	margin-right: 8px;
	background-image: url('/img/icons/search.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

[data-icon=pdf]::before {
	color: #dd3b3b;
}

[data-icon=word]::before {
	color: #3b80dd;
}

[data-icon=excel]::before {
	color: #52af6e;
}

[data-icon=zip]::before {
	color: #ffb540;
}

/* -----------------------------------------------------
 * Display
 * -------------------------------------------------- */

.u-show-br-sp {
	display: none;
}

.u-show-br-pc {
	display: none;
}

/* -----------------------------------------------------
 * Text
 * -------------------------------------------------- */

/* font-family
---------------------------------------- */

.u-font-en {
	font-family: 'Roboto', 'Noto Sans JP', serif !important;
}

.u-font-ja {
	font-family: 'Roboto', 'Noto Sans JP', serif !important;
}

/* text-align
---------------------------------------- */

.u-al-left {
	text-align: left !important;
}

.u-al-center {
	text-align: center !important;
}

.u-al-right {
	text-align: right !important;
}

/* writing-mode
---------------------------------------- */

.u-wm-rl {
	-ms-writing-mode: tb-rl !important;
	-webkit-writing-mode: vertical-rl !important;
	writing-mode: vertical-rl !important;
}

.button {
	cursor: pointer;
	display: inline-grid;
	padding: 8px 24px;
	border-radius: 100px;
	box-shadow: 0 0 16px rgba(0, 0, 0, 0.1);
	font-size: 0.875rem;
	font-weight: bold;
	text-align: center;
	white-space: nowrap;
	transition: box-shadow, 0.25s ease-out;
	place-items: center;
}

.button:hover {
	opacity: unset;
	text-decoration: none;
}

.button.primary {
	background: linear-gradient(0deg, #00b9d8 0%, #0071d3 50%, #00b9d8 100%);
	background-position-y: 100%;
	background-size: 100% 200%;
	color: #fff;
	transition: all 0.2s ease;
}

.button.primary:hover {
	background-position-y: 0;
}

.button.secondary {
	background: linear-gradient(0deg, #ffe164 0%, #ffb086 50%, #ffe164 100%);
	background-position-y: 100%;
	background-size: 100% 200%;
	color: #003b6a;
	transition: all 0.2s ease;
}

.button.secondary:hover {
	background-position-y: 0;
}

.button.neutral {
	border: 1px solid #0085ad;
	background: #fff;
	color: #0085ad;
}

.button.neutral:hover {
	background: #0085ad;
	color: #fff;
}

.button:disabled,
.button.disabled {
	cursor: not-allowed;
	background: #c2d3e2;
	color: #fff;
}

.button.u-size-large {
	min-width: 284px;
	padding: 17px 50px;
	font-size: 1.125rem;
}

.button.u-size-x-large {
	min-width: 380px;
	padding: 27px 115px;
	font-size: 1.5rem;
}

.nav-arrow {
	display: inline-grid;
	width: 20px;
	height: 20px;
	border-radius: 1000px;
	background: linear-gradient(0deg, #00b9d8 0%, #0071d3 50%, #00b9d8 100%);
	background-position-y: 100%;
	background-size: 100% 200%;
	text-align: center;
	transition: all 0.2s ease;
	place-items: center;
}

.nav-arrow:hover {
	background-position-y: 0;
}

.nav-arrow.u-no-hover-effect {
	background-position-y: 100%;
	background-size: 100% 200%;
	transition: all 0.2s ease;
}

.nav-arrow::after {
	color: #fff;
	font-size: 0.625rem;
}

.nav-arrow--right::after {
	content: '\f105';
}

.nav-arrow--left::after {
	content: '\f104';
}

.nav-arrow--up::after {
	content: '\f106';
}

.nav-arrow--down::after {
	content: '\f107';
}

.nav-arrow.u-size-large {
	width: 42px;
	height: 42px;
}

.nav-arrow.u-size-large::after {
	font-size: 1.25rem;
}

.nav-arrow.u-size-x-large {
	width: 64px;
	height: 64px;
}

.nav-arrow.u-size-x-large::after {
	font-size: 1.25rem;
}

.nav-arrow.u-disabled {
	cursor: not-allowed;
	background: #c2d3e2;
}

.nav-arrow.u-disabled::after {
	color: #fff;
}

.sort-marker {
	display: inline-grid;
	text-align: center;
	place-items: center;
}

.sort-marker::after {
	color: #5a7893;
	font-size: 0.875rem;
}

.sort-marker[data-order=asc]::after {
	content: '\f0aa';
}

.sort-marker[data-order=desc]::after {
	content: '\f0ab';
}

.sort-marker.active::after {
	color: #afe7ff;
}

.chat-window {
	margin: 14px 0;
	border: 1px solid #c2d3e2;
	border-radius: 8px;
}

.chat-window__main-content {
	display: flex;
	overflow-y: auto;
	flex-direction: column;
	min-height: 128px;
	max-height: calc(100vh - 300px);
	padding: 24px;
	background-color: #e9f1f7;
	font-size: 1rem;
	gap: 16px;
}

.chat-window__main-content--empty {
	display: grid;
	place-items: center;
}

.chat-window__main-content .chat-baloon {
	display: grid;
	position: relative;
	width: 90%;
	padding: 20px;
	border-radius: 8px;
	grid-template-columns: 1fr -webkit-max-content;
	grid-template-columns: 1fr max-content;
	grid-template-rows: auto auto;
	grid-template-areas: 'name time' 'message message' 'attachment attachment';
	gap: 8px;
}

.chat-window__main-content .chat-baloon[data-isread=true]:before {
	content: '既読';
	position: absolute;
	bottom: 0;
	left: -8px;
	font-size: 0.75rem;
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
}

.chat-window__main-content .chat-baloon .name {
	font-size: 0.875rem;
	font-weight: bold;
	grid-area: name;
}

.chat-window__main-content .chat-baloon .name[data-icon]:not([data-icon=''])::before {
	font-size: 1.0625rem;
}

.chat-window__main-content .chat-baloon .timestamp {
	font-size: 0.75rem;
	grid-area: time;
}

.chat-window__main-content .chat-baloon .message {
	font-size: 1rem;
	grid-area: message;
}

.chat-window__main-content .chat-baloon.ours {
	margin-left: auto;
	background-color: #afe7ff;
}

.chat-window__main-content .chat-baloon.ours::after {
	content: '';
	position: absolute;
	bottom: 20px;
	left: 100%;
	border-right: 20px solid transparent;
	border-bottom: 15px solid #afe7ff;
}

.chat-window__main-content .chat-baloon.theirs {
	margin-right: auto;
	background-color: #fff;
}

.chat-window__main-content .chat-baloon.theirs::after {
	content: '';
	position: absolute;
	right: 100%;
	bottom: 20px;
	border-bottom: 15px solid #fff;
	border-left: 20px solid transparent;
}

.chat-window__main-content .chat-baloon .attachments {
	grid-area: attachment;
}

.chat-window__main-content .chat-baloon .attachments .attachment::after {
	content: '\f019';
	margin-left: 8px;
}

.chat-window__message-editor {
	padding: 8px;
	background-color: #f7fbfd;
}

.chat-window__message-editor__content {
	padding: 8px;
	border: 1px solid #c2d3e2;
	border-radius: 8px;
	background-color: #fff;
}

.chat-window__message-editor textarea {
	resize: vertical;
	width: 100%;
	height: 150px;
	padding: 8px;
	border: none;
	font-size: 0.875rem;
}

.chat-window__message-editor__attachments {
	padding: 8px;
}

.chat-window__message-editor__attachment-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 16px;
	border: 1px solid #c2d3e2;
	border-radius: 4px;
}

.chat-window__message-editor__buttons {
	display: flex;
	justify-content: flex-end;
	gap: 16px;
}

.modal__upload-attachment {
	text-align: center;
}

.modal__upload-attachment .dropzone {
	padding: 30px;
	border-radius: 8px;
	background-color: #e9f1f7;
	color: #c2d3e2;
	font-size: 0.875rem;
}

.modal__upload-attachment .dropzone p {
	margin: 16px 0;
}

.modal__upload-attachment .dropzone input[type=file] {
	display: none;
}

.modal__upload-attachment .cancel-upload {
	display: block;
	margin: 16px auto 0;
	font-size: 0.8125rem;
	font-weight: bold;
}

.c-page-head {
	display: flex;
	position: relative;
	overflow: hidden;
	justify-content: center;
	align-items: center;
	height: 120px;
	margin-bottom: 8px;
	background-image: url('/img/dummy-child-page-header-bg.webp');
	background-repeat: no-repeat;
	background-position: center;
	color: #fff;
	gap: 16px;
}

.c-page-head::before {
	content: '';
	position: absolute;
	z-index: -1;
	top: -12px;
	left: -12px;
	width: calc(100vw + 24px);
	height: calc(100% + 24px);
	background-image: url('/img/dummy-child-page-header-bg.webp');
	background-repeat: no-repeat;
	background-size: cover;
	-webkit-filter: blur(6px);
	filter: blur(6px);
}

.c-page-head__icon {
	font-size: 1.6875rem;
}

.c-page-head__title {
	font-size: 1.75rem;
	font-weight: bold;
}

.c-breadcrumb {
	display: flex;
	max-width: var(--content-width);
	margin: 16px auto 40px;
	padding-left: 0;
	font-size: 0.75rem;
	gap: 8px;
}

.c-breadcrumb__item {
	list-style: none;
}

.c-breadcrumb__item:hover {
	text-decoration: none;
}

.c-breadcrumb__item:not(:last-child)::after {
	content: '\f105';
	margin-left: 8px;
	font-size: 0.625rem;
}

.c-paginate-nav {
	display: flex;
	justify-content: center;
	margin: 32px 0;
	gap: 24px;
}

.c-paginate-nav .paginate-links {
	display: flex;
	gap: 8px;
}

.c-paginate-nav .paginate-link {
	display: grid;
	width: 36px;
	height: 42px;
	border: 1px solid #0085ad;
	border-radius: 4px;
	color: #0085ad;
	font-weight: bold;
	place-items: center;
}

.c-paginate-nav .paginate-link:hover {
	text-decoration: none;
}

.c-paginate-nav .paginate-link--current {
	background-color: #0085ad;
	color: #fff;
}

.c-paginate-nav .paginate-ellipsis {
	display: grid;
	width: 36px;
	height: 42px;
	font-size: 1.125rem;
	place-items: center;
}

.c-message-box {
	display: grid;
	align-items: center;
	margin: 24px 0;
	padding: 16px 24px;
	border-radius: 24px;
	font-weight: bold;
	gap: 16px;
	grid-template-columns: -webkit-max-content 1fr;
	grid-template-columns: max-content 1fr;
}

.c-message-box::before {
	font-size: 2rem;
}

.c-message-box[data-type=success] {
	background-color: #d9f0e0;
	color: #3daa80;
}

.c-message-box[data-type=success]::before {
	content: '\f058';
}

.c-message-box[data-type=error] {
	background-color: #ffebeb;
	color: #dd3b3b;
}

.c-message-box[data-type=error]::before {
	content: '\f071';
}

textarea,
select,
input {
	width: 100%;
	padding: 10px 16px;
	border: 1px solid #c2d3e2;
	border-radius: 6px;
	color: #003b6a;
}

textarea:focus,
select:focus,
input:focus {
	outline: none;
}

textarea.u-short-input,
select.u-short-input,
input.u-short-input {
	max-width: 200px;
}

:is(input: not([type]),
input[type=text],
input[type=search],
input[type=tel],
input[type=url],
input[type=email],
input[type=password],
input[type=number],
input[type=date],
input[type=time],
input[type=datetime-local],
input[type=month],
input[type=week],
input[type=color]) {
	box-sizing: border-box;
	height: 48px;
	line-height: 40px;
	-webkit-appearance: none;
	appearance: none;
}

input:not([type=radio]):not([type=checkbox]).has-error {
	background-color: #ffebeb;
}

input[type=radio] {
	cursor: pointer;
	position: relative;
	width: 18px;
	height: 18px;
	margin-right: 8px;
	border: none;
	-webkit-appearance: none;
	appearance: none;
}

input[type=radio]::before {
	content: '';
	position: absolute;
	top: 3px;
	left: 0;
	width: 18px;
	height: 18px;
	border: 1px solid #c2d3e2;
	border-radius: 36px;
	color: #c2d3e2;
}

input[type=radio]:checked::after {
	content: '';
	position: absolute;
	top: 7px;
	left: 4px;
	width: 10px;
	height: 10px;
	border-radius: 36px;
	background-color: #0085ad;
}

input[type=checkbox] {
	cursor: pointer;
	position: relative;
	width: 18px;
	height: 18px;
	margin-right: 8px;
	border: 1px solid #c2d3e2;
	border-radius: 4px;
	background-color: #fff;
	-webkit-appearance: none;
	appearance: none;
}

input[type=checkbox]:checked::after {
	content: '\f00c';
	display: grid;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 4px;
	background-color: #0085ad;
	color: #fff;
	place-items: center;
}

input + .unit {
	margin-left: 8px;
	font-size: 0.875rem;
	font-weight: bold;
	line-height: 40px;
}

label:has(input[type=checkbox]:disabled) {
	cursor: not-allowed;
	color: #c2d3e2;
}

select {
	height: 48px;
}

select.has-error {
	background-color: #ffebeb;
}

textarea {
	resize: vertical;
	min-height: 120px;
	padding: 16px;
}

textarea.has-error {
	background-color: #ffebeb;
}

label.has-error {
	color: #dd3b3b;
}

.error-msg {
	margin-top: 4px;
	color: #dd3b3b;
	font-size: 0.6875rem;
	font-weight: bold;
}

.search-form {
	display: grid;
	grid-template-columns: 1fr -webkit-max-content;
	grid-template-columns: 1fr max-content;
}

.search-form__input {
	padding: 10px;
	border: 1px solid #c2d3e2;
	border-radius: 6px 0 0 6px;
}

.search-form__submit {
	padding: 0 16px;
	border-radius: 0 6px 6px 0;
	background-image: linear-gradient(0deg, #00b9d8 0%, #0071d3 50%, #00b9d8 100%);
	background-position-y: 100%;
	background-size: 100% 200%;
	color: #fff;
	font-size: 0.8125rem;
	font-weight: bold;
	transition: all 0.2s ease;
}

.search-form__submit:hover {
	background-position-y: 0;
}

.form-frame {
	display: grid;
	margin: 24px 0;
	grid-template-columns: 200px 1fr;
	gap: 24px;
}

.form-frame dt {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-content: center;
	align-items: center;
	height: -webkit-fit-content;
	height: -moz-fit-content;
	height: fit-content;
	min-height: 40px;
	padding: 8px;
	font-weight: bold;
	gap: 6px;
}

.form-frame dt .guide {
	font-weight: normal;
}

.form-frame dd {
	width: 100%;
}

.form-frame dd.view-mode {
	display: flex;
	padding: 8px 0;
}

.form-frame dd .grid {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(2, 1fr);
}

.form-frame dd .error {
	display: none;
	margin-top: 4px;
	color: #dd3b3b;
	font-size: 0.75rem;
}

.form-frame.secondary {
	padding: 16px;
	border-radius: 24px;
	background-color: #e9f1f7;
	grid-template-columns: 184px 1fr;
}

.form-frame .guide {
	width: 100%;
	margin-top: 4px;
	font-size: 0.6875rem;
}

.form-buttons {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 24px 0;
	gap: 24px;
}

.form-buttons .align-left {
	margin-right: auto;
}

.form-buttons .align-right {
	margin-left: auto;
}

.form-buttons.u-divider {
	padding-top: 24px;
	border-top: 1px solid #c2d3e2;
}

.form-marker {
	padding: 2px 10px;
	border-radius: 14px;
	font-size: 0.625rem;
	font-weight: bold;
}

.form-marker--required {
	background-color: #fdd;
	color: #dd3b3b;
}

.mypage__sidebar {
	position: relative;
	width: 260px;
	min-height: 100vh;
	background-color: #164e7c;
	color: #fff;
	font-size: 0.875rem;
}

.mypage__sidebar::after {
	content: '';
	display: block;
	position: absolute;
	z-index: -1;
	top: 100%;
	left: 0;
	width: 100%;
	height: 150px;
	background-color: #164e7c;
}

.mypage__sidebar a {
	color: #fff;
}

.mypage__sidebar .sb__head {
	display: flex;
	flex-direction: column;
	width: -webkit-max-content;
	width: max-content;
	padding: 16px 24px;
	gap: 16px;
}

.mypage__sidebar .sb__head h1 {
	font-size: 1.125rem;
	font-weight: bold;
}

.mypage__sidebar .sb__nav ul {
	margin: 0;
	padding: 0;
}

.mypage__sidebar .sb__nav li {
	list-style: none;
}

.mypage__sidebar .sb__nav--primary ul {
	margin-bottom: 32px;
}

.mypage__sidebar .sb__nav--primary li {
	position: relative;
	border-top: 1px solid #5a7893;
}

.mypage__sidebar .sb__nav--primary li:last-child {
	border-bottom: 1px solid #5a7893;
}

.mypage__sidebar .sb__nav--primary .nav-item {
	display: flex;
	position: relative;
	justify-content: flex-start;
	align-items: center;
	padding: 16px 24px;
}

.mypage__sidebar .sb__nav--primary .nav-item.is-active,
.mypage__sidebar .sb__nav--primary .nav-item:hover {
	background-color: #003b6a;
}

.mypage__sidebar .sb__nav--primary .nav-item.is-active::after,
.mypage__sidebar .sb__nav--primary .nav-item:hover::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 5px;
	height: 100%;
	background-color: #0085ad;
}

.mypage__sidebar .sb__nav--primary .nav-item .counting-badge {
	margin-left: 8px;
}

.mypage__sidebar .sb__nav--secondary {
	margin: 24px;
}

.mypage__sidebar .sb__nav--secondary li {
	margin-bottom: 9px;
	border: 1px solid #5a7893;
	border-radius: 4px;
}

.mypage__sidebar .sb__nav--secondary .nav-item {
	display: flex;
	padding: 16px;
	border-radius: 4px;
}

.mypage__sidebar .sb__nav--secondary .nav-item .counting-badge {
	margin-left: auto;
}

.mypage__sidebar .sb__nav--secondary .nav-item.is-active,
.mypage__sidebar .sb__nav--secondary .nav-item:hover {
	background-color: #003b6a;
}

.mypage__sidebar .sb__sp-close {
	display: none;
	background-color: transparent;
}

.mypage__sidebar--sp-footbar {
	display: none;
}

.project-card {
	display: inline-grid;
	width: 100%;
	height: 100%;
	padding: 24px;
	border-radius: 24px;
	background-color: #fff;
	box-shadow: 0 0 16px rgba(0, 0, 0, 0.1);
	gap: 8px;
	grid-template-rows: repeat(4, auto) 1fr;
	grid-template-columns: 1fr auto;
	grid-template-areas: 'title title' 'props props' 'category category' 'tags tags' 'expires link';
}

.project-card__title {
	color: #0085ad;
	font-size: 1.25rem;
	font-weight: bold;
	grid-area: title;
}

.project-card__props {
	display: grid;
	font-size: 0.875rem;
	grid-area: props;
	grid-template-columns: -webkit-max-content 1fr;
	grid-template-columns: max-content 1fr;
}

.project-card__prop-label {
	display: grid;
	white-space: nowrap;
	grid-template-columns: auto 1fr auto;
}

.project-card__prop-label::after {
	content: '|';
	padding: 0 14px;
	color: #c2d3e2;
}

.project-card__prop-value {
	min-width: 0;
}

.project-card__prop-value span {
	display: inline-block;
}

.project-card__categories {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	margin: 2px 0;
	padding: 0;
	font-size: 0.6875rem;
	grid-area: category;
	gap: 2px;
}

.project-card__category {
	display: inline-block;
	padding: 4px 16px;
	border-radius: 4px;
	background-color: #d5eef8;
	font-size: 0.75rem;
}

.project-card__category a {
	color: #003b6a;
}

.project-card__tags {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	font-size: 0.6875rem;
	grid-area: tags;
	gap: 2px;
}

.project-card__tag {
	display: inline-block;
	margin: 2px 0;
	padding: 2px 16px;
	border-radius: 16px;
	background-color: #e9f1f7;
}

.project-card__tag a {
	color: #003b6a;
}

.project-card__expires {
	align-self: flex-end;
	font-size: 0.75rem;
	grid-area: expires;
}

.project-card__expires .label {
	margin-right: 8px;
	padding: 4px 6px;
	border-radius: 4px;
	background-color: #003b6a;
	color: #fff;
}

.project-card__more {
	align-self: flex-end;
	grid-area: link;
}

.project-card__more a {
	display: flex;
	align-content: center;
	align-items: center;
	font-weight: bold;
	justify-self: flex-end;
	gap: 4px;
}

.pj-search__form {
	display: grid;
	align-items: end;
	width: 100%;
	margin: 16px auto 24px;
	padding: 24px;
	border-radius: 24px;
	background-color: #003b6a;
	color: #fff;
	text-align: left;
	grid-template-columns: repeat(4, 1fr) auto;
	gap: 16px;
}

.pj-search__input {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.pj-search__input select,
.pj-search__input input[type=text] {
	width: 100%;
}

.pj-search__input label {
	font-size: 1rem;
	font-weight: bold;
}

.pj-search__submit .button {
	height: 48px;
}

/* =====================================================
 * Layout
 * ================================================== */

/* -----------------------------------------------------
 * footer
 * -------------------------------------------------- */

.l-footer {
	position: relative;
	width: 100%;
	margin-top: calc(10.4166666667vw + 100px);
	padding: 16px;
	padding-bottom: 80px;
	background-color: #003b6a;
	color: #fff;
}

.l-footer::before {
	content: '';
	position: absolute;
	z-index: -1;
	left: 0;
	width: 100%;
	background-image: url('/img/common-footer-wave.svg');
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
	aspect-ratio: 1440/200;
}

.l-footer::after {
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	overflow: hidden;
	width: 40vw;
	max-width: 623px;
	background-image: url('/img/common-footer-stardust.svg');
	background-repeat: no-repeat;
	background-position: 80px 40px;
	aspect-ratio: 623/609;
}

.l-footer__content {
	max-width: 100%;
	padding-left: 120px;
}

.l-footer__content .footer-site-info {
	margin: 32px 0;
	font-weight: normal;
}

.l-footer .footer-nav {
	display: flex;
	margin: 32px 0;
	gap: 24px;
}

.l-footer .footer-copyright {
	font-size: 0.875rem;
}

.l-footer a {
	color: #fff;
}

/* -----------------------------------------------------
 * header
 * -------------------------------------------------- */

.user-bar {
	display: flex;
	z-index: 8;
	justify-content: flex-end;
	align-items: center;
	width: 100%;
	height: var(--user-bar-height);
	padding: 5px 40px;
	background-color: #e9f1f7;
	font-size: 0.8125rem;
	font-weight: bold;
	gap: 24px;
}

.app-header {
	display: flex;
	z-index: 8;
	justify-content: space-between;
	align-items: center;
	height: var(--header-height);
	padding: 16px 40px;
	background-color: #fff;
}

.app-header .header-content {
	flex: 2;
}

.app-header .header-content__primary {
	display: flex;
	justify-content: flex-end;
	gap: 8px;
}

.app-header .header-content__secondary {
	display: flex;
	justify-content: flex-end;
	margin-top: 16px;
	font-weight: bold;
	gap: 22px;
}

.app-header .header-content__secondary a {
	position: relative;
}

.app-header .header-content__secondary a::after {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 0;
	background-color: #0085ad;
}

.app-header .header-content__secondary a:hover {
	text-decoration: none;
}

.app-header .header-content__secondary a:hover::after {
	-webkit-animation: anim-textLinkUnderline 0.15s ease forwards;
	animation: anim-textLinkUnderline 0.15s ease forwards;
}

.app-header .header-search__form {
	display: flex;
	margin-right: 8px;
}

.app-header .header-search__form label {
	position: relative;
	margin: auto 10px auto 0;
	font-weight: bold;
}

.app-header .sp-nav-toggle {
	display: none;
	font-size: 1.75rem;
}

body.user-bar-showing .app-header {
	top: var(--user-bar-height);
}

body.user-bar-showing .header-right {
	top: calc(var(--header-height) + var(--user-bar-height));
}

/* -----------------------------------------------------
 * layout
 * -------------------------------------------------- */

body {
	display: flex;
	flex-direction: column;
}

.l-wrapper {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

.l-main {
	flex-grow: 1;
	min-width: 320px;
}

.l-section a:not(.button) {
	white-space: normal;
	word-wrap: break-word;
	word-break: break-all;
}

/* =====================================================
 * Page
 * ================================================== */

.information-detail__datetime {
	font-size: 0.875rem;
}

.information-detail__post-title {
	margin-bottom: 40px;
	padding: 8px 0 16px;
	border-bottom: 1px solid #c2d3e2;
	font-size: 1.75rem;
	font-weight: bold;
}

.information-detail__post-body h2 {
	margin: 16px 0;
	padding: 8px 16px;
	background-color: #e9f1f7;
	font-size: 1.375rem;
	font-weight: bold;
}

.information-detail__post-body h3 {
	display: flex;
	margin: 16px 0;
	padding: 12px 0;
	border-bottom: 1px solid #c2d3e2;
	font-size: 1.25rem;
	font-weight: bold;
	gap: 8px;
}

.information-detail__post-body h3::before {
	content: '';
	display: block;
	width: 6px;
	height: 32px;
	border-radius: 2px;
	background-color: #c2d3e2;
}

.information-detail__post-body h4 {
	display: flex;
	margin: 16px 0;
	padding: 12px 0;
	border-bottom: 1px dashed #c2d3e2;
	font-size: 1.25rem;
	font-weight: bold;
	gap: 8px;
}

.information-detail__post-body h4::before {
	content: '';
	display: block;
	width: 2px;
	height: 32px;
	margin-right: 8px;
	border-radius: 2px;
	background-color: #c2d3e2;
	box-shadow: 4px 0 0 #c2d3e2;
}

.information-detail__post-body h5 {
	display: flex;
	margin: 16px 0;
	padding: 12px 0;
	font-size: 1.125rem;
	font-weight: bold;
	gap: 8px;
}

.information-detail__post-body h5::before {
	content: '';
	display: block;
	width: 3px;
	height: 32px;
	border-radius: 2px;
	background-color: #c2d3e2;
}

.information-detail__post-body h6 {
	display: flex;
	margin: 16px 0;
	padding: 12px 0;
	font-size: 1rem;
	font-weight: bold;
	gap: 8px;
}

.information-detail__post-body p {
	margin: 1em 0;
}

.information-detail .to-list {
	margin-top: 32px;
	text-align: center;
}

/* =====================================================
 * overwrite
 * ================================================== */

.l-footer::before {
	background-image: url('/kanapla/img/common-footer-wave.svg');
}

.l-footer::after {
	background-image: url('/kanapla/img/common-footer-stardust.svg');
}

.c-page-head {
	background-image: url('/kanapla/img/dummy-child-page-header-bg.webp');
}

.c-page-head::before {
	background-image: url('/kanapla/img/dummy-child-page-header-bg.webp');
}

@media screen and (min-width: 1280px) {
	.project-list-table .id,
  .msg-list-table .id {
		width: 8em;
		text-align: center;
	}

	.project-list-table .note,
  .msg-list-table .note {
		width: 100px;
		text-align: center;
	}

	.u-hide-pc {
		display: none !important;
	}

	.u-show-pc {
		display: block !important;
	}

	.u-show-br-pc {
		display: inline-block !important;
	}

	.form-frame dd .grid.col-3 {
		grid-template-columns: repeat(3, 1fr);
	}

	.form-frame dd .grid.col-5 {
		grid-template-columns: repeat(5, 1fr);
	}

	.app-header .header-search__form {
		height: 35px;
	}

	.app-header .header-search__form .search-form__input {
		height: 35px;
	}
}

@media screen and (max-width: 1279px) {
	.information-detail__container {
		margin-top: calc(var(--header-height) + 40px);
		margin-right: 16px;
		margin-left: 16px;
		padding: 24px;
	}

	.u-width-narrow.information-detail__container,
  .u-width-compact.information-detail__container {
		margin-right: auto;
		margin-left: auto;
	}

	.modal__upload-attachment,
  .modal__content {
		max-width: 85vw;
	}

	.project-list-table,
  .msg-list-table {
		table-layout: auto;
		border-top: none;
	}

	.project-list-table colgroup,
  .msg-list-table colgroup {
		display: none;
	}

	.project-list-table thead tr,
  .msg-list-table thead tr {
		display: flex;
	}

	.project-list-table thead th,
  .msg-list-table thead th {
		padding: 8px;
		background: none;
		color: #0085ad;
		font-weight: normal;
	}

	.project-list-table thead th a,
  .msg-list-table thead th a {
		color: #0085ad;
	}

	.project-list-table thead th.u-no-sort,
  .msg-list-table thead th.u-no-sort {
		display: none;
	}

	.project-list-table tbody tr,
  .msg-list-table tbody tr {
		display: flex;
		flex-direction: column;
		padding: 16px;
		gap: 10px;
	}

	.project-list-table tbody tr td,
  .msg-list-table tbody tr td {
		display: grid;
		padding: 0;
		grid-template-columns: 8em 1fr;
		-webkit-column-gap: 16px;
		-moz-column-gap: 16px;
		column-gap: 16px;
	}

	.project-list-table tbody tr td::before,
  .msg-list-table tbody tr td::before {
		content: attr(data-label);
		display: block;
		font-weight: normal;
	}

	.project-list-table tbody tr td.action,
  .msg-list-table tbody tr td.action {
		grid-template-columns: 1fr;
		justify-items: center;
	}

	.project-list-table .action::before,
  .msg-list-table .action::before {
		display: none;
	}

	.project-list-table .ellipsis-text,
  .msg-list-table .ellipsis-text {
		white-space: wrap;
	}

	.table-with-checkbox tbody tr {
		display: grid;
		padding: 16px;
		grid-template-columns: -webkit-max-content 1fr;
		grid-template-columns: max-content 1fr;
		gap: 10px;
	}

	.table-with-checkbox tbody tr :nth-child(1),
  .table-with-checkbox tbody tr :nth-child(2) {
		grid-column: span 1;
	}

	.table-with-checkbox tbody tr :nth-child(n+3) {
		grid-column: 2/-1;
	}

	.table-with-checkbox tbody tr .checkbox {
		width: 1rem;
	}

	.table-with-checkbox tbody tr .checkbox::before {
		display: none;
	}

	.sort-marker::after {
		color: #c2d3e2;
	}

	.sort-marker.active::after {
		color: #003b6a;
	}

	.c-breadcrumb {
		padding: 0 16px;
	}

	.form-buttons {
		flex-direction: column-reverse;
	}

	.form-buttons .align-left,
  .form-buttons .align-right {
		margin-right: unset;
		margin-left: unset;
	}

	.mypage__sidebar {
		position: fixed;
		z-index: 13;
		top: 0;
		left: 0;
		width: 100vw;
		height: 100vh;
		background-color: rgba(22, 78, 124, 0.95);
		transition: -webkit-transform 0.5s ease;
		transition: transform 0.5s ease;
		transition: transform 0.5s ease, -webkit-transform 0.5s ease;
		-webkit-transform: translateY(100%);
		transform: translateY(100%);
	}

	.mypage__sidebar.is-open {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}

	.mypage__sidebar--sp-footbar {
		display: grid;
		position: fixed;
		z-index: 13;
		bottom: 0;
		left: 0;
		width: 100%;
		height: var(--sp-mypage-nav-height);
		background-color: #164e7c;
		grid-template-columns: auto -webkit-max-content;
		grid-template-columns: auto max-content;
	}

	.mypage__sidebar--sp-footbar .mypagemenu-toggle-button {
		justify-content: center;
		width: 100%;
		background-color: transparent;
		color: #fff;
		font-weight: bold;
		text-align: center;
	}

	.mypage__sidebar--sp-footbar .mypagemenu-toggle-button i {
		margin-left: 8px;
	}

	.l-footer__content {
		max-width: var(--content-width);
		margin: 0 auto;
		padding-left: 0;
	}

	.user-bar {
		position: fixed;
		top: 0;
		left: 0;
		justify-content: flex-start;
		padding: 5px 16px;
	}

	.user-bar .ub-action {
		display: none;
	}

	.app-header {
		position: fixed;
		z-index: 12;
		top: 0;
		left: 0;
		width: 100vw;
		height: var(--header-height);
		padding: 12px 16px;
	}

	.app-header .header-left {
		max-width: 70vw;
	}

	.app-header .header-right {
		position: fixed;
		z-index: 13;
		top: var(--header-height);
		right: -100vw;
		width: 100%;
		height: calc(100vh - var(--header-height));
		padding: 16px;
		background-color: #fff;
		text-align: center;
		transition: right 0.25s ease-in;
	}

	.app-header .header-right.is-open {
		right: 0;
	}

	.app-header .header-content__primary {
		flex-direction: column;
		gap: 0;
	}

	.app-header .header-content__secondary {
		flex-direction: column;
		gap: 16px;
	}

	.app-header .header-search__form {
		justify-content: center;
	}

	.app-header .actions {
		margin: 24px 0;
	}

	.app-header .sp-nav-toggle {
		display: block;
	}

	.l-section {
		margin-top: var(--header-height);
	}

	.user-bar-showing .l-section {
		margin-top: calc(var(--user-bar-height) + var(--header-height));
	}

	.information-detail__container {
		margin-top: 0;
	}
}

@media screen and (max-width: 767px) {
	.u-width-narrow.information-detail__container,
  .u-width-compact.information-detail__container {
		margin-right: 16px;
		margin-left: 16px;
		padding: 24px;
	}

	:root {
		--content-width: 100vw;
		--content-width-narrow: 100vw;
		--content-width-compact: 100vw;
		--header-height: 64px;
	}

	ul,
  ol {
		margin-left: 0.5em;
		padding-left: 1em;
	}

	ul li ul,
  ul li ol,
  ol li ul,
  ol li ol {
		margin-left: 0.5em;
		padding-left: 1em;
	}

	br[data-only=pc] {
		display: none;
	}

	br[data-only=sp] {
		display: block;
	}

	.project-list-table thead,
  .msg-list-table thead {
		border: 1px solid #c2d3e2;
	}

	.u-hide-sp {
		display: none !important;
	}

	.u-show-sp {
		display: block !important;
	}

	.u-show-br-sp {
		display: inline-block !important;
	}

	.button {
		padding: 10px 24px;
		font-size: 16px;
	}

	.button.u-size-large {
		min-width: unset;
	}

	.button.u-size-x-large {
		width: 100%;
		min-width: unset;
		padding: 27px;
		font-size: 1rem;
	}

	.c-message-box {
		margin-right: 16px;
		margin-left: 16px;
	}

	.form-frame {
		display: block;
	}

	.form-frame dt {
		justify-content: flex-start;
		font-size: 0.875rem;
	}

	.form-frame dd:not(:last-child) {
		margin-bottom: 24px;
	}

	.mypage__sidebar::after {
		display: none;
	}

	.mypage__sidebar .sb__sp-close {
		display: block;
		position: absolute;
		top: 20px;
		right: 20px;
		font-size: 1.75rem;
	}

	.pj-search__form {
		display: flex;
		flex-direction: column;
		align-items: unset;
	}

	.pj-search__submit {
		text-align: center;
	}

	.pj-search__submit .button {
		width: 120px;
	}

	.l-footer {
		margin-top: calc(25vw + 100px);
		padding-top: 100px;
		padding-bottom: calc(var(--sp-mypage-nav-height) + 1em);
		font-size: 0.75rem;
	}

	.l-footer::before {
		top: 1px;
		left: -1px;
		background-image: url('/img/common-footer-wave-sp.svg');
		background-position: center top;
		background-size: cover;
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);
		aspect-ratio: 375/109;
	}

	.l-footer::after {
		bottom: calc(100% - 100px);
		width: 345px;
		background-position: 80px 0;
	}

	.l-footer .footer-nav {
		margin: 40px 0;
		gap: 16px;
	}

	.l-footer .footer-copyright {
		font-size: 0.625rem;
	}

	.app-header {
		text-align: left;
	}

	.app-header .header-search__form {
		flex-direction: column;
		margin-right: 0;
	}

	.app-header .header-search__form label {
		flex-grow: 1;
	}

	.app-header .header-search__form .search-form__input {
		flex: 1;
	}

	.app-header .actions {
		display: flex;
		margin: 24px 0;
		gap: 9px;
	}

	.app-header .actions .button {
		flex: 1;
	}

	.l-footer::before {
		background-image: url('/kanapla/img/common-footer-wave-sp.svg');
	}
}

@media screen and (min-width: 768px) and (max-width: 1279px) {
	.u-hide-md {
		display: none !important;
	}
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
	body {
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
}
/*# sourceMappingURL=kanapla.css.map */
