body {
		color: #292929;
		font-family: "Noto Sans JP", sans-serif;
		font-size: 1.6rem;
		font-weight: 500;
		line-height: 1.6;
}
figure, picture {
		max-width: 100%;
		width: 100%;
		line-height: 0;
		display: inline-block;
		margin: 0;
}
figcaption{
		line-height: 1.4;
}
img {
		max-width: 100%;
		width: 100%;
		height: auto;
		vertical-align: middle;
}
p{
		font-size: 1.6rem;
}
a {
		color: #000000;
		display: block;
		text-decoration: unset;
		transition: all 0.4s ease-in-out;
}
a:hover {
		opacity: 0.8;
}
a:active, a:focus, a:focus-visible, a:focus-within, a:visited, a:target {
		color: #000000;
}
ul {
		list-style: none;
		margin: 0;
		padding: 0;
}
.screen-reader-text:focus {
		color: #000000;
}
.br_pc {
		display: block;
}
.br_sp {
		display: none;
}
.only_sp {
		display: none;
}
select {
		-webkit-appearance: none;
		appearance: none;
}
#wrapper {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		min-height: 100vh;
}
main {
		flex: 1;
}
.inner {
		max-width: 1200px;
		width: 100%;
		margin: 0 auto;
}
.center {
		text-align: center;
}
.flex {
		display: flex;
}

/* Btn ---------------------------------------*/
.link-btn {
		position: relative;
}
.link-btn a {
		font-size: 1.6rem;
		font-weight: 600;
		display: inline-block;
		padding: 1.25rem 5rem;
		position: relative;
}
.link-btn.color-bgbk a{
		background-color: #000;
		color: #fff;
}
.link-btn.line-bl a::after {
		content: "";
		background-color: #1e87f0;
		display: block;
		width: 4rem;
		height: 2px;
		position: absolute;
		top: 50%;
		right: -2rem;
		transform: translateY(-50%);
		transition: 0.5s;
}
.link-btn.line-bl a:hover::after {
		right: -3rem;
}
.link-arrow {
		font-size: 2rem;
}
.link-arrow a {
		line-height: 1.5;
		display: inline-block;
		padding-right: 3rem;
		position: relative;
}
.link-arrow .circle {
		display: block;
		background-color: #000;
		width: 1em;
		aspect-ratio: 1 / 1;
		border-radius: 50%;
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
		transition: 0.5s;
}
.link-arrow .circle::after {
		content: "";
		width: 0.25em;
		aspect-ratio: 1 / 1;
		border: 2px solid;
		border-color: #fff #fff transparent transparent;
		position: absolute;
		transform: translate(-50%, -50%) rotate(45deg);
		top: 50%;
		left: 40%;
}
.link-arrow a:hover .circle {
		background-color: #1477bc;
		transition: 0.5s;
		right: -0.5rem;
}

/* fonts ---------------------------------------*/
h2 {
		font-size: clamp(2.6rem, 2.5vw, 3.4rem);
		font-weight: 600;
		line-height: 1.5;
		position: relative;
		margin: 0;
}
h3 {
		font-size: clamp(2.2rem, 2.2vw, 3rem);
		font-weight: 600;
		line-height: 1.5;
		position: relative;
		margin: 0;
}
/* title -------*/
.title-sub-en h2 {
		margin-bottom: 2.5rem;
}
.title-sub-en.gradation{
		margin-bottom: 4rem;
}
.title-sub-en.gradation h2::after {
		content: "";
		display: block;
		height: 3px;
		width: 200px;
		background: linear-gradient(to right, #1477bc, #1c91e2, #5865b9);
		position: absolute;
		left: 0;
		bottom: -1.5rem;
}
.title-sub-en.gradation span {
		letter-spacing: 2px;
		display: inline-block;
		background: linear-gradient(to right, #1477bc, #1c91e2, #5865b9);
		background-clip: border-box;
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
}
.title-sub-en.gradation.flex h3 {
		padding-left: 1.5rem;
		border-left: 6px solid #1477ac;
		line-height: 1;
}
.title-sub-en.gradation.flex h2 {
		padding-left: 1.5rem;
		border-left: 6px solid #1477ac;
		line-height: 1;
}
.title-sub-en.gradation.flex {
		align-items: center;
		gap: 5rem;
}
/* footer -------------------------------------*/
#footer {
		background: center center/cover no-repeat url(/wp-content/uploads/2025/09/bg_footer.png);
}
.footer-content .inner.flex{
		justify-content: space-between;
		padding: 2.5rem 0;
		gap: 5rem;
}
.footer-nav.flex {
		gap: 0.5rem 2rem;
		flex-wrap: wrap;
}
.footer-nav a {
		color: #292929;
		font-size: 1.5rem;
}
#copyright {
		padding: 0.5rem 0;
}
#copyright p {
		font-size: 1.2rem;
		margin-top: 0;
}

/* Top ----------------------------------------*/
#Partner_info {
		padding: 5rem 0;
}
#Message {
		background: top center/cover no-repeat url(/wp-content/uploads/2025/09/message_bg.png);
		padding: 10rem 0 20rem;
		position: relative;
}
#Message .message-content.flex{
		gap: 2rem;
		align-items: center;
}
#Message .message-text {
		width: calc(50% - 2rem);
}
#Message .message-text p {
		line-height: 2.2;
		filter: drop-shadow(0 0 3px #fff);
}
#Message .message-images {
		justify-content: space-between;
		width: 50%;
		gap: 1.5rem;
}
#Message .message-images figure:last-child {
		position: relative;
		top: 7rem;
}
#Message::after {
		content: "";
		display: block;
		position: absolute;
		background-color: #fff;
		width: 100%;
		height: 10vw;
		bottom: -1px;
		left: 0;
		clip-path: polygon(0 0, 100% 100%, 0 100%);
}
#Works {
		background: bottom center/cover no-repeat url(/wp-content/uploads/2025/09/bg_works.png);
		padding-bottom: 10rem;
}
#works-content{
		flex-direction: column;
		gap: 5rem;
}
#Works .works-box {
		position: relative;
		overflow: hidden;
		padding: 10rem 0;
}
#Works .works-box figure {
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
		width: 55%;
		height: 100%;
		margin: 0;
}
#Works .works-box figure img {
		object-fit: cover;
		height: 100%;
		width: 100%;
}
#Works .works-box-text {
		margin-left: 60%;
		flex-direction: column;
		gap: 5rem;
}
#Works .works-box-text .title-sub-en.gradation {
		margin-bottom: 0;
}
#Works .works-box-text p {
		line-height: 2;
		margin: 0;
}
#About-us {
		position: relative;
		padding-top: 7vw;
		padding-bottom: 5rem;
}
#About-us::before {
		content: "";
		display: block;
		width: 100%;
		height: 14vw;
		position: absolute;
		background: top center/contain no-repeat url(/wp-content/uploads/2025/09/BEAUTY-LIFE.png);
		top: 1.5rem;
		left: 50%;
		transform: translateX(-50%);
}
#About-us .about-us-content.flex {
		gap: 2rem;
		margin-top: 10rem;
}
#About-us .about-us-content a {
		padding: 0;
}
#About-us .about-us-content figcaption {
		position: relative;
		display: inline-block;
		margin-top: 1rem;
		padding-right: 3.5rem;
}
#News{
		margin: 3rem 0 5rem;
}
#News .news-content{
		gap: 7rem;
		background-color: #efefef;
		padding: 5rem;
		align-items: center;
}
#News .news-content .title-sub-en.gradation {
		width: 30%;
}
#News .news-content .news_list.flex {
		width: calc(70% - 7rem);
		flex-direction: column;
		gap: 4rem;
}
#News .news_list.flex a {
		display: inline-flex;
		gap: 2rem;
}

/* footer CTA ------------------------------------*/
#Common-cta {
		background: center center/cover url(/wp-content/uploads/2025/09/img-common-cta.png);
		padding: 5rem 0;
}
#Common-cta .Cta-content.flex{
		justify-content: space-between;
}
#Common-cta .Cta-content-left {
		width: 35%;
}
#Common-cta .Cta-content-left p {
		filter: drop-shadow(0 0 3px #fff);
		font-weight: 500;
}
#Common-cta .Cta-content-right {
		max-width: 60%;
		width: 100%;
		gap: 2rem;
}
#Common-cta .Cta-box {
		width: calc((100% - 2rem) / 2);
		flex-direction: column;
		align-items: center;
		justify-content: center;
		background-color: rgba(255,255,255,0.8);
		padding: 3rem 1.5rem;
		gap: 2.5rem;
}
#Common-cta .Cta-box figure {
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 2rem;
}
#Common-cta .Cta-box figure img {
		max-width: 60px;
		width: 100%;
}
#Common-cta .Cta-content-right li:first-child a {
		font-size: clamp(2.5rem, 3vw, 3.5rem);
		flex-direction: column;
}
#Common-cta .Cta-content-right li:last-child a {
		font-size: 1.4rem;
}
#Common-cta .Cta-box a span{
		font-size: 0.4em;
}

/* Archive ------------------------------------*/
.blog .post-info,
.archive.category .post-info {
		margin-bottom: 3rem;
}
.blog .post-list,
.archive.category .post-list {
		min-height: 50vh;
		margin-bottom: 10rem;
}
.blog .post-info .post-date,
.archive.category .post-info .post-date {
		color: transparent;
		background: linear-gradient(to right, #1477bc, #1c91e2, #5865b9);
		background-clip: border-box;
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
}
.blog .post-info .post-title,
.archive.category .post-info .post-title {
		font-size: clamp(2rem, 1.5vw, 2.6rem);
		line-height: 1;
		border-left: 4px solid #1477ac;
		padding-left: 1rem;
		margin-top: 0.75rem;
}
.blog .post-info .post-title a,
.archive.category .post-info .post-title a {
		display: inline-block;
}
.pagination .page-numbers {
		text-align: center;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 1rem;
		margin: 1rem 0;
		gap: 0.5rem;
		border-radius: 6px;
		line-height: 1;
}
.pagination .page-numbers a {
		background-color: #1477bc;
		color: #fff;
		margin: 0;
}
.pagination .page-numbers span {
		border: 1px solid #1477bc;
		color: #1477bc;
}
/* 下層 ----------------------------------------*/
body:not(.home) .entry-content h2 {
		text-align: center;
		font-size: clamp(3rem, 5vw, 4rem);
		margin: 2rem auto 3rem;
		position: relative;
		width: fit-content;
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 0.5rem;
}
body:not(.home) .entry-content h2::after {
		content: "";
		background: linear-gradient(to right, #1477bc, #1c91e2, #5865b9);
		width: 60%;
		height: 0.75rem;
		display: block;
}
/* サービスページ ----------------*/
.cont-introduction {
		margin: 5rem 0 10rem 0;
}
.cont-introduction p {
		line-height: 2;
}
.service-lineup.flex {
		flex-wrap: wrap;
		gap: 6.5rem 1rem;
		margin-top: 5rem;
}
.service-lineup.flex .flex-box {
		width: calc((100% - 2rem) / 3);
		flex-direction: column;
		gap: 1rem;
		align-items: center;
}
.service-lineup.flex .flex-box figcaption {
		margin-top: 0.5rem;
}
.service-lineup.flex .flex-box h3 {
		font-size: clamp(1.8rem, 2.2vw, 2.2rem);
}
.service-please-contact {
		margin: 10rem auto 10rem;
		text-align: center;
}
.parentheses-decoration {
		margin: 10rem auto 10rem;
}
.parentheses-decoration.center p {
		font-size: 1.25em;
		position: relative;
		width: fit-content;
		margin: 0 auto;
		padding: 0 2rem;
}
.parentheses-decoration.center p::before {
		content: "";
		background: center center/contain no-repeat url(/wp-content/uploads/2025/12/parentheses-decoration-left.svg);
		width: 5rem;
		height: 5rem;
		position: absolute;
		left: -5rem;
		top: -3rem;
}
.parentheses-decoration.center p::after {
		content: "";
		background: center center/contain no-repeat url(/wp-content/uploads/2025/12/parentheses-decoration-right.svg);
		width: 5rem;
		height: 5rem;
		position: absolute;
		right: -5rem;
		bottom: -3rem;
}

/* 施工実績 ---------*/
body:not(.home) .works-list h2 {
		margin: 0;
		text-align: left;
		border-left: 6px solid #ddd;
		padding-left: 1.5rem;
		line-height: 1;
		font-size: clamp(2.2rem, 5vw, 3rem);
}
body:not(.home) .works-list h2::after {
		content: none;
}
.works-list {
		display: flex;
		flex-direction: column;
		gap: 5rem;
}
.works-table {
		border: 1px solid #ddd;
		margin-top: 3rem;
}
.works-table td {
		vertical-align: middle;
		padding: 2rem 1.5rem;
}
.works-table td.column-1 {
		background-color: #f0f0f0;
		width: 20%;
		font-size: 1.2em;
		text-align: center;
}
/* 採用 ---------------------------------------*/
.department-box {
		padding-bottom: 5rem;
}
.recruit-info {
		width: 100%;
}
.recruit-table {
		margin: 3rem 0;
}
.recruit-table {
		border: 1px solid #ddd;
		margin-top: 3rem;
}
.recruit-table td.column-1 {
		background-color: #f0f0f0;
		width: 20%;
		text-align: center;
}
.recruit-table td {
		vertical-align: middle;
		padding: 2rem 1.5rem;
}

/* 会社概要 -----------------------------------*/
.googlemap {
		margin: 2rem 0;
}
.googlemap iframe {
		width: 100%;
		max-height: 350px;
}
#corporate-guidelines {
		margin: 3rem 0;
		display: flex;
		flex-direction: column;
		gap: 5rem;
}
#corporate-guidelines > div {
		border-bottom: 3px dotted #ddd;
		padding-bottom: 5rem;
}
#corporate-guidelines > div:last-child {
		border-bottom: none;
}
#corporate-guidelines .title-sub-en.gradation {
		margin-bottom: 2rem;
}
.guideline-catchphrase {
		background: linear-gradient(-20deg, #ececec, #fff);
		padding: 2.5rem;
		overflow: hidden;
		border-radius: 20px 0 20px 0;
}
.guideline-catchphrase p {
		font-size: 2.2rem;
		line-height: 2;
		margin: 0;
		filter: drop-shadow(5px 5px 2px #d4d4d4);
}

/* Contact ------------------------------------*/
.contact .cont-introduction {
		margin-bottom: 5rem;
}
.form-area {
		flex-direction: column;
		gap: 2rem;
		padding: 1rem;
		background-color: #fff;
		max-width: 80%;
		margin: 0 auto 0 0;
}
.form-area label {
		font-size: 2rem;
		font-weight: 600;
}
.form-item label.flex {
		align-items: center;
		gap: 0.5rem;
}
.form-area .contact-note {
		color: #A5A5A5;
}
.required, .arbitrary {
		display: inline-block;
		font-size: 0.5em;
}
.required {
		color: #DF005E;
}
.arbitrary {
		background-color: #A5A5A5;
}
.wpcf7-list-item {
		margin: 0 2.2em 0 0;
}
.wpcf7-list-item label {
		font-weight: 400;
		font-size: 2rem;
}
.wpcf7-checkbox span{
		font-size: 1.7rem;
}
.text-in input, .form-item.text-in textarea, .wpcf7-form-control.wpcf7-select {
		font-family: "Noto Sans JP", sans-serif;
		font-size: 1.6rem;
		width: 100%;
		box-sizing: border-box;
		padding: 1.5rem 1rem;
		margin-top: 1rem;
		border: 1px solid #A5A5A5;
		background-color: #F5F5F5;
}
.wpcf7-form-control.wpcf7-select {
		max-width: 60%;
		font-size: 1.6rem;
}
.form-item.text-in input::placeholder, .form-item.text-in textarea::placeholder {
		font-family: "Noto Sans JP", sans-serif;
		color: #A5A5A5;
		font-weight: 500;
		opacity: unset;
}
.form-submit-area {
		max-width: 80%;
		margin: 0 auto;
}
.form-submit-area a {
		display: inline-block;
}
.form-submit-area .submit-btn {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
}
.form-submit-area .submit-btn span {
		margin: 2rem auto;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
		text-align: center;
		margin: 0 auto;
		border: none;
		color: #DF005E;
		background-color: #fff4f4;
		max-width: 100% !important;
		padding: 3rem 1rem;
}
.wpcf7-form-control.wpcf7-submit.has-spinner {
		color: #fff;
		font-size: 1.8rem;
		font-weight: 600;
		text-align: center;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		background: linear-gradient(90deg, #00c14c, #b0dd10);
		box-shadow: unset;
		border: unset;
		border-radius: 100px;
		width: 350px;
		box-sizing: border-box;
		padding: 1.5rem 0;
		margin: 2rem auto 0;
		cursor: pointer;
}
.type-selects {
		color: #292929 !important;
}
.form-area .select_wrapper {
		max-width: 60%;
		position: relative;
		margin: 0;
}
.form-area .select_wrapper::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 5%;
		width: 0.8rem;
		height: 0.8rem;
		border-right: 2px solid #292929;
		border-bottom: 2px solid #292929;
		box-sizing: border-box;
		transform: rotate(45deg) translate(-50%, 0);
}
.select_wrapper .wpcf7-form-control.wpcf7-select{
		max-width: 100%;
}

/*投稿ページ ---------------------------------*/
.single .entry-content {
		padding: 5rem 0;
}
.single.single-post .entry-content.inner {
		margin: 0 auto;
		width: 100%;
}
.single.single-post h2 {
		font-size: clamp(2.4rem, 2.5vw, 2.6rem);
		font-weight: 600;
		line-height: 1.6;
		letter-spacing: 3px;
		color: #333;
		margin: 3rem 0;
		padding: 0.25rem 0.5rem 0.25rem 1.5rem;
}
.single.single-post h3 {
		font-size: clamp(2.2rem, 2.3vw, 2.4rem);
		font-weight: 600;
		line-height: 1.6;
		letter-spacing: 2px;
		background-color: #1477bc;
		color: #fff;
		margin: 3rem 0 2rem 0;
		padding: 1.25rem 1.5rem;
}
.single.single-post h4 {
		font-size: clamp(1.8rem, 1.5vw, 2.2rem);
		font-weight: 600;
		border-left: 4px solid #1477bc;
		line-height: 1.4;
		letter-spacing: 2px;
		display: inline-block;
		margin: 1rem 0 0;
		padding: 0.25rem 0.5rem;
}
.single.single-post h5 {
		font-size: clamp(1.7rem, 1.5vw, 2rem);
		font-weight: 600;
		line-height: 1.2;
		letter-spacing: 1px;
		color: #1477bc;
		margin: 0.5rem 0;
}
.single.single-post p {
		line-height: 1.8;
		letter-spacing: 2.5px;
		margin: 1.5rem 0;
}
.single.single-post img {
		max-width: 768px;
		width: 100%;
		margin: 2rem auto;
}

@media screen and (max-width: 780px) {
		.single #content .entry-content.inner{
				max-width: 92%;
				margin: 0 auto;
		}
}
/* カスタム投稿 協力会社様 ------------------*/
.single-partner_company .content-partner {
		padding: 5rem 0;
		flex-direction: column;
		gap: 7rem;
}
.single-partner_company .partner-info {
		gap: 2rem;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
}
.single-partner_company .partner-name.flex {
		align-items: center;
		justify-content: space-between;
		gap: 3rem;
		width: 100%;
		border-bottom: 1px solid #ddd;
		padding-bottom: 2rem;
		flex-wrap: wrap;
}
.single-partner_company .partner-name figure {
		max-width: 400px;
		width: fit-content;
		max-height: 100px;
		height: 100%;
}
.single-partner_company .partner-name figure img {
		display: block;
		width: 100%;
		max-height: 100px;
		height: 100%;
		object-fit: contain;
}
body:not(.home) .partner-name h2 {
		font-size: clamp(2.2rem, 2.2vw, 3rem);
		margin: 0;
		padding-left: 1.5rem;
		border-left: 6px solid #1477ac;
		line-height: 1;
}
body:not(.home) .partner-name h2::after {
		content: none;
}
.single-partner_company .partner-type.flex {
		flex-wrap: wrap;
		gap: 0.5rem 1rem;
		width: 100%;
}
.single-partner_company .partner-type li a {
		display: inline-block;
		padding: 0.25rem 2rem;
		background-color: #f7f7f7;
		box-shadow: 1px 1px 0 #ddd;
}
.single-partner_company h3 {
		font-size: clamp(1.8rem, 2vw, 2.2rem);
		align-items: center;
		gap: 1rem;
}
.single-partner_company .partner-website a {
		display: inline-block;
		text-decoration: underline;
}
.single-partner_company .partner-website h3::before,
.single-partner_company .partner-intro h3::before {
		content: "";
		display: block;
		width: 3rem;
		height: 3rem;
}
.single-partner_company .partner-website h3::before {
		background: center center/contain no-repeat url(/wp-content/uploads/2025/12/icon-website.svg);
}
.single-partner_company .partner-intro h3::before {
		background: center center/contain no-repeat url(/wp-content/uploads/2025/12/icon-partner-intro.svg);
}

/* 協力会社様 一覧 --------------------------*/
.post-type-archive-partner_company .post-list.flex,
.archive.tax-attribute-type .post-list.flex {
		gap: 1.5rem;
		flex-wrap: wrap;
		padding-bottom: 5rem;
}
.post-type-archive-partner_company .post-box,
.archive.tax-attribute-type .post-box {
		display: flex;
		flex-direction: column;
		max-width: calc((100% - 3rem) / 3);
		width: 100%;
		flex: fit-content;
		gap: 2rem;
		padding: 2rem 1.5rem;
		border: 1px solid #ddd;
}
.post-type-archive-partner_company .post-box > a,
.archive.tax-attribute-type .post-box > a {
		padding: 2rem 0.5rem;
		border: 1px solid #ddd;
		border-radius: 8px;
		box-shadow: 0 0 4px #eee;
}
.post-type-archive-partner_company .post-box figure,
.archive.tax-attribute-type .post-box figure {
		align-items: center;
		justify-content: center;
		display: flex;
		max-width: 80%;
		width: fit-content;
		height: 150px;
		margin: 0 auto;
}
.post-type-archive-partner_company .post-box figure img,
.archive.tax-attribute-type .post-box figure img {
		object-fit: contain;
		max-height: 100px;
}
.post-type-archive-partner_company .post-box .partner-type,
.archive.tax-attribute-type .post-box .partner-type {
		width: 100%;
		flex-wrap: wrap;
		gap: 0.75rem 1rem;
}
.post-type-archive-partner_company .post-box h3,
.archive.tax-attribute-type .post-box h3 {
		font-size: 2rem;
		font-weight: 500;
		margin-bottom: 1rem;
}

.post-type-archive-partner_company .post-box .partner-type li a,
.archive.tax-attribute-type .post-box .partner-type li a {
		font-size: 0.8em;
		padding: 0.25rem 1.5rem;
		background-color: #f7f7f7;
		box-shadow: 1px 1px 0 #ddd;
}

/* 404 --------------------------------------*/
.error404 #page_not-found {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		text-align: center;
		min-height: 20vw;
		margin: auto;
		padding: 15rem 0;
}
.error404 #page_not-found a {
		color: #fff;
		font-size: 1.4rem;
		background: linear-gradient(to right, #1477bc, #1c91e2, #5865b9);
		display: inline-block;
		padding: 1rem 3.5rem;
		margin-top: 3rem;
}


/*Media Query ---------------------------------*/
@media screen and (max-width: 1240px) {
		.inner {
				max-width: 92%;
		}
}
@media screen and (max-width: 920px) {
		.parentheses-decoration.center p {
				padding: 4rem;
		}
		.parentheses-decoration.center p::before {
				top: 0;
				left: 0;
		}
		.parentheses-decoration.center p::after {
				bottom: 0;
				right: 0;
		}
}
@media screen and (min-width: 768px) and (max-width: 920px){
		.title-sub-en.gradation.flex {
				flex-direction: column;
				align-items: flex-start;
				gap: 0.5rem;
		}
		#Common-cta .Cta-content-right li:last-child a {
				padding: 1.25rem 2.5rem;
		}
}
@media screen and (max-width: 768px) {
		.only_sp {
				display: block;
		}
		#Message .message-content.flex{
				flex-direction: column;
		}
		#Message .message-text, #Message .message-images {
				width: 100%;
		}
		#Works {
				padding-bottom: 0;
		}
		#works-content {
				flex-direction: column;
				gap: 0;
		}
		#Works .works-box {
				padding: 0 0 5rem;
		}
		#Works .works-box figure {
				position: unset;
				width: 100%;
				transform: unset;
		}
		#Works .works-box-text {
				margin: 2rem 0;
				width: 100%;
		}
		#Works .works-box-text p br {
				display: none;
		}
		#About-us .about-us-content.flex {
				margin-top: 0;
		}
		#Common-cta .Cta-content.flex {
				flex-direction: column;
		}
		#Common-cta .Cta-content-left,
		#Common-cta .Cta-content-right{
				max-width: 100%;
				width: 100%;
		}
		/* 下層ページ ----------*/
		.service-lineup.flex .flex-box {
				width: calc((100% - 1rem) / 2);
				flex-direction: column;
		}
		.parentheses-decoration {
				margin: 5rem auto 10rem;
		}
		.parentheses-decoration.center p {
				padding: 4rem;
				font-size: 1em;
		}
		/* 投稿ページ ----------*/
		.all-post .post-box, .archive .post-box {
				width: calc((100% - 1rem) / 2);
		}
		/* 協力会社様 ----------*/
		.post-type-archive-partner_company .post-box,
		.archive.tax-attribute-type .post-box {
				max-width: calc((100% - 1.5rem) / 2);
		}
		/* Contact -------------*/
		.form-area {
				max-width: 100%;
				padding: 1rem 0;
		}
		/*Footer ---------------*/
		#footer{
				padding-bottom: 60px;
		}
}
@media screen and (max-width: 640px) {
		.title-sub-en.gradation.flex{
				gap: 2rem;
				flex-wrap: wrap;
		}
		#News .news-content{
				flex-direction: column;
				align-items: flex-start;
				gap: 1rem;
				padding: 4rem 2rem;
		}
		#News .news-content .title-sub-en.gradation {
				width: 100%;
				margin: 0 0 2rem 0;
		}
		#News .news-content .news_list.flex {
				width: 100%;
				gap: 1.5rem;
		}
		.news_date {
				font-size: 0.85em;
		}
		/* 下層ページ ----------*/
		.works-table td.column-1, .works-table td.column-2 {
				display: block;
				width: 100%;
		}
}
@media screen and (max-width: 480px) {
		.br_pc {
				display: none;
		}
		.br_sp {
				display: block !important;
		}
		#About-us .about-us-content.flex {
				flex-direction: column;
				margin-top: 0;
		}
		#News .news_list.flex a {
				flex-direction: column;
				gap: 0;
		}
		#Common-cta .Cta-content-right.flex{
				flex-direction: column;
		}
		#Common-cta .Cta-box {
				width: 100%;
		}
		.footer-content .inner.flex {
				flex-direction: column;
				gap: 1rem;
		}
		/* 下層ページ ----------*/
		.service-lineup.flex .flex-box {
				width: 100%;
		}
		/* 投稿ページ ----------*/
		.all-post .post-box, .archive .post-box {
				width: 100%;
		}
		/* 協力会社様 ----------*/
		.post-type-archive-partner_company .post-box,
		.archive.tax-attribute-type .post-box {
				max-width: 100%;
		}
		/* Contact -------------*/
		.wpcf7-checkbox span {
				font-size: 1.6rem;
		}
		.form-area .select_wrapper{
				max-width: 90%;
		}
		.wpcf7-form-control.wpcf7-submit.has-spinner{
				width: 85%;
		}
		.form-submit-area {
				max-width: 100%;
		}
		.form-submit-area p {
				font-size: 1.5rem;
				text-align: left !important;
		}
		.wpcf7 form.invalid .wpcf7-response-output,
		.wpcf7 form.unaccepted .wpcf7-response-output,
		.wpcf7 form.payment-required .wpcf7-response-output {
				max-width: 100%;
		}
}