@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/


/*共通*/
.fv-wide {
	height:650px;
}
.l-footer__widgetArea {
	display:none
}
.config-error {
display:none!important;
}
.c-widget+.c-widget {
    margin-top: 0em;
}
.p-fixBtnWrap  {
display:none;
}
.c-widget__title.-spmenu {
	display:none;
}
.p-spMenu__body {
	padding-top:20px
}
.c-listMenu a {
    padding: 1.15em 1em 1.15em 1.5em;
    transition: padding .25s;
	letter-spacing:1px
}
.c-gnav>.menu-item>a .ttl {
	font-family: "Libre Baskerville", serif;
	letter-spacing:1px;
	font-weight:500;
	font-size:14px
}
.wp-block-categories-list>li>a:before {
	display:none;
}
.c-smallNavTitle {
	font-size:11px;
	letter-spacing:0.5px;
	color:#000;
	opacity:1;
	font-weight:500;
}

.c-gnav>.menu-item>a {
    color: inherit;
    display: flex;
    height: 100%;
    justify-content: center;
    padding: 0 15px;
    position: relative;
    white-space: nowrap;
	gap:2px
}
.fv-wide .swell-block-fullWide__inner {
	
	top:40%;
	transform: translateY(-50%);
}
.fv-title {
	font-size:40px!important;
	font-weight:500;
	font-family: "Noto Serif JP", serif;
	letter-spacing:2px!important
}
.fv-box {
	position:absolute;
	bottom:0px;
	background:#fff;
	z-index:100;
	left:-2px;
	margin-bottom:0px!important
}
.fv-text {
	font-size:25px;
	letter-spacing:1px;
	font-family: "Noto Serif JP", serif;
}

.top #content {
    padding-top: 0em;
}
.fv-img1 img {
	position:absolute;
	width:420px;
	right:400px;
	top:50%;
	transform: translateY(-50%);
}
.fv-img2 img {
	position:absolute;
	width:360px;
	right:20px;
	top:50%;
	transform: translateY(-50%);
}
@media (min-width: 1600px) {
	.fv-wide {
	height:750px;
}
	.fv-title {
	font-size:44px!important;
	font-weight:500;
	font-family: "Noto Serif JP", serif;
	letter-spacing:2px!important
}
	.fv-text {
	font-size:27px;
	letter-spacing:1px;
	font-family: "Noto Serif JP", serif;
}
	.fv-img1 img {
	position:absolute;
	width:480px;
	right:450px;
	top:50%;
	transform: translateY(-50%);
}
	.fv-img2 img {
	position:absolute;
	width:410px;
	right:20px;
	top:50%;
	transform: translateY(-50%);
}
}
 .l-content {
        padding-top: 0em;
    }
.post-template-default .l-content {
    margin: 4em auto 4em;
}
.stylepost-template-default .l-content {
	 margin: 5em auto 4em;
}
.c-taxList__link {
    background: #333333;
    color: #fff;
	padding:5px 5px
}
.blog .l-content {
    margin: 5em auto 4em;
}
.blog .p-postList__excerpt {
	display:none
}
.-type-simple .p-postList__meta {
    margin: 0 0 0px;
}
body {
	color:#444444!important;
	line-height:1.8!important
}
:root {
	--swl-box_shadow: 6px 6px 20px #33333354;
}
.c-pageTitle {
	text-align:center;
	font-family: "Libre Baskerville", serif;
	font-size:50px;
	color:#fff;
	letter-spacing:4px;
	font-weight:200;
	top:-17px;
}
.header-btn {
		font-family: "Libre Baskerville", serif;
}
.page-id-26 .c-pageTitle::before {
	content:"日本デジタル絵画協会について";
	position:absolute;
	left:0;
	right:0;
	font-size:23px;
	font-family: "Noto Serif JP", serif;
	bottom:-30px;
	
}
.page-id-1359 .c-pageTitle::before {
	content:"お問い合わせ";
	position:absolute;
	left:0;
	right:0;
	font-size:26px;
	font-family: "Noto Serif JP", serif;
	bottom:-30px;
	
}
.page-id-224 .c-pageTitle::before { content:"養成講座"; position:absolute; left:0; 
	right:0; font-size:26px; 
	font-family: "Noto Serif JP", serif;
	bottom:-30px; }


.blog .c-pageTitle::before { content:"お知らせ"; position:absolute; left:0; 
	right:0; font-size:26px; 
	bottom:-30px; }
.reserve-text {
	font-size:20px;
	line-height:2;
	font-family: "Noto Serif JP", serif;
	letter-spacing:2px
}
.page-id-426 .c-pageTitle::before { content:"講師紹介"; position:absolute; left:0; 
	right:0; font-size:26px; 
	bottom:-30px; }
.reserve-text {
	font-size:20px;
	line-height:2;
	font-family: "Noto Serif JP", serif;
	letter-spacing:2px
}


.footer-text {
	line-height:2;
	font-size:18px;
	letter-spacing:1px
}
.footer-menu-title {
	font-family: "Noto Serif JP", serif;
	font-size:23px;
	letter-spacing:2px;
	margin-bottom: 10px !important;
}
.footer-menu-text {
	font-size:16px
}
.w-beforeFooter {
    margin: 0em auto 0em!important;
    overflow: hidden;
}

.footer-menu-text a:hover{
	opacity:0.7;
	transition:0.5s
}
.l-content {
    margin: 0 auto 0em;
}

.news-post .p-postList__body {
	border-radius:0px!important;
padding:3px;
	gap:5px!important
}
.news-post .p-postList__item a {
box-shadow:none;
	border-radius:0px
}
.menu-num {
	font-size:20px;
	letter-spacing:1px;
	font-weight:500
}
.menu-title {
	letter-spacing:1px!important;
	font-size:22px!important;
	font-weight:500!important;
}
.sub-column .menu-title {
	font-size:22px!important;
	line-height:1.7
}
.menu-text {
	font-size:19px;
	line-height:1.8
}
.menu-price {
font-size:21px;
	letter-spacing:1px
}
.menu-price .u-fz-s {
font-weight:400!important;
}
.reason-text {
	line-height:1.8;
}
.concept-title {
	font-size:24px;
	font-weight:600;
	letter-spacing:1.5px
}
.concept-text {
	line-height:2.3;
	font-weight:500;
	font-size:18px;
	letter-spacing:1px
}
.concept-img-left {
	position:absolute;
	top:50%;
	left:0;
	width:33%;
	transform: translateY(-50%);
	max-width:360px
}
.concept-img-right {
	position:absolute;
	top:50%;
	right:0;
	transform: translateY(-50%);
	width:33%;
	max-width:360px
	
}
@media (max-width: 767px) {
	
	.concept-title {
	font-size:20px;
	font-weight:600;
	letter-spacing:1.5px
}
.concept-text {
	line-height:1.8;
	font-weight:500;
	font-size:16px;
}
	.concept-img-left {
	position:absolute;
	top:50%;
	left:0;
	width:33%;
	transform: translateY(-50%);
	max-width:470px;
}
.concept-img-right {
	position:absolute;
	top:50%;
	right:0;
	transform: translateY(-50%);
	width:33%;
	max-width:470px;
	
}
	.menu-num {
	font-size:18px;
	letter-spacing:1px;
	font-weight:500
}
.menu-title {
	letter-spacing:1px!important;
	font-size:18px!important;
	font-weight:500!important;
	padding-left:0px;
	padding-right:0px

}
.menu-text {
	font-size:16px;
	line-height:1.8
}
.menu-price {
font-size:19px;
	letter-spacing:1px
}
.menu-price span {
font-weight:500;
}
	.reserve-text {
	font-size:16px;
	line-height:1.8;
	letter-spacing:1px;
margin-bottom:10px!important
	
}
	.footer-text {
	line-height:2;
	font-size:16px;
	letter-spacing:1px
}
.footer-menu-title {
	font-family: "Noto Serif JP", serif;
	font-size:20px;
	margin-bottom:10px
	
}
.footer-menu-text {
	font-size:16px
}
}

/*foryouセクション*/
.for-p-title {
	font-size:22px;
	font-weight:500;
	line-height:1.9
}
.for-column li {
	font-size:15px
}

.for-column .-list-under-dashed li {
  list-style: none;
  position: relative;
  padding-left: 30px;
	padding-top:10px;
	padding-bottom:15px
}

.for-column .-list-under-dashed li::before {
  content: "";
  position: absolute;

  left: 0;
  width: 25px;
  height: 25px;
  background: url("http://test-pagesite.site/test41/wp-content/uploads/2026/08/design-2.webp") center / contain no-repeat;
}
.for-column .wp-block-list {
	padding:0px
}
@media (max-width: 767px) {
	.for-p-title {
	font-size:17px;
	font-weight:500;
	
}
	.for-column li {
	font-size:15px
}

.for-column .-list-under-dashed li {
  list-style: none;
  position: relative;
  padding-left: 23px;
	padding-top:8px;
	padding-bottom:12px
}
.for-column .-list-under-dashed li::before {
  content: "";
  position: absolute;

  left: 0;
  width: 20px;
  height: 20px;
  background: url("http://test-pagesite.site/test41/wp-content/uploads/2026/08/design-2.webp") center / contain no-repeat;
}
}


@media (max-width: 767px) {
	
	.c-pageTitle {
	text-align:center;

	font-size:30px;
	letter-spacing:4px;
	top:-20px
}
.l-topTitleArea {
        min-height: 300px;
        padding: 1em 0;
    }
 .c-pageTitle::before {
	position:absolute;
	left:0;
	right:0;
	font-size:18px!important;
	bottom:-30px;
}
		.fv-title {
	font-size:22px!important;
	font-weight:500;
	font-family: "Noto Serif JP", serif;
	letter-spacing:1px!important;
			line-height:2;
}
	.fv-text {
	font-size:17px;
	letter-spacing:1px;
		line-height:2.2;
	font-family: "Noto Serif JP", serif;
}
	.fv-box {
    position: absolute;
    bottom: 0px;
    background: #fff;
    z-index: 100;
    left: 0px;
    margin-bottom: 0px !important;
}
}


@media (min-width: 767px) {
    .l-topTitleArea {
        min-height: 380px;
        padding: 1em 0;
    }
}

.h2-title {
	font-size:44px!important;
	font-family: "Libre Baskerville", serif;
		font-weight:200!important;
	line-height:1!important;
	letter-spacing:3px!important;
	color:#444444!important
}
.h3-title {
	font-size:30px!important;
	line-height:1.7!important;

	font-weight:500!important;
	color:#444444!important
}

.sub-title {
		font-size:21px!important;
	font-family: "Noto Serif JP", serif;
}

.p-text {
	font-size:20px;
	line-height:2;
	font-weight:500;
}




/*about*/

.com-title {
	font-size:27px!important;
	font-weight:700!important;
	
}

.com-text {
	font-size:18px;
	line-height:1.8;
	letter-spacing:1px
}

@media (max-width: 767px) {
	.h2-title {
	font-size:32px!important;
	line-height:1.3!important;
}
.h3-title {
	font-size:24px!important;
	line-height:1.7!important;
	
	font-weight:500!important;
}

.sub-title {
		font-size:18px!important;
	font-family: "Noto Serif JP", serif;
}

.p-text {
	font-size:16px;
	line-height:1.9
}
	
	
.com-title {
	font-size:20px!important;
	font-weight:600!important;

}

.com-text {
	font-size:16px;
}
}


/*manu*/
.group {
	position:relative;
}
.menu-img {
position:absolute;
	right:0;
	width:45%;
	top:0;
	max-width:600px
}
.products-title {
	font-size:19px;
	letter-spacing:1px
}
.products-subtitle {
	font-size:24px;
	letter-spacing:1px
}
.products-text {
	font-size:18px
}
@media (max-width: 767px) {
	.products-title {
	font-size:17px;
}
.products-subtitle {
	font-size:23px;
}
.products-text {
	font-size:16px
}
		.menu-img {
position:absolute;
	right:0;
	width:55%;
	top:0
}
}

/*flow*/
.flow-title {
	font-weight:500!important;
	font-size:30px!important;
	letter-spacing:1px!important;
}
.flow-text {
	font-size:19px!important;
}
.btn-colomn {
	gap:20px
}
.flow-reserve-title {
	font-size:42px!important;
	font-weight:500!important;
	letter-spacing:1px!important;
}
.flow-reserve-text {
	font-size:20px
}
.flow-column-title {
	font-size:24px!important;
	font-weight:500!important;
	letter-spacing:2px!important;
}
.flow-column-text {
	line-height:1.8
}



@media (max-width: 767px) {
	.flow-title {
	font-weight:500!important;
	font-size:24px!important;
	letter-spacing:1px!important;
}
.flow-text {
	font-size:16px!important;
}
	.btn-colomn {
	gap:10px;
		display:grid!important
}
	.btn-colomn img {
		width:70%!important;
		height:auto!important
	}
	.flow-reserve-title {
	font-size:30px!important
}
.flow-reserve-text {
	font-size:16px
}
	.flow-column-title {
	font-size:25px!important;
	font-weight:500!important;
	letter-spacing:2px!important;
}
}

/*staff*/
.staff-group {
	padding-left:15px;
	border-left:solid
}
.staff-title {
	font-size:20px;
	letter-spacing:1.5px;
	font-weight:500;
	font-family: "Noto Serif JP", serif;
}
.staff-name {
	font-size:25px!important;
	font-weight:600!important;
	letter-spacing:1px!important;
}
.staff-name-small {
	font-size:18px;
	margin-top:5px!important;
	letter-spacing:1px;
	font-family: "Noto Serif JP", serif;
}

.staff-img {
	width:30%;
	position:absolute;
	top:25%;
	left:0;
}
.staff-img1 {
	width:30%;
	position:absolute;
	bottom:0;
	right:0;
}
.staff-title-en {
font-size:22px;
	border-bottom:solid 1px;
	letter-spacing:2px;
	width:160px;
	margin:0 auto;
	margin-bottom:10px;
	padding-bottom:5px
}
.staff-title-jp {
	font-size:25px;
	margin-bottom:15px;
	letter-spacing:2px;
}
.staff-box-text {
	line-height:2;
	letter-spacing:1px
}
@media (max-width: 767px) {
	.staff-title {
	font-size:16px;
	font-weight:300
}
.staff-name {
	font-size:30px!important;
}
.staff-name-small {
	font-size:16px;
	margin-top:5px!important
}
	.staff-img {
	width:60%;
	position:absolute;
	top:15%;
	left:0;
}
		.staff-img1 {
	width:60%;
	position:absolute;
	top:21%;
	right:0;
}
	.profile-info__label {
    position: relative;
    width: 140px!important;
    margin-right: 10px!important;
    padding-bottom: 8px;
    font-size: 15px!important;
    font-weight: 600;
    letter-spacing: 0.18em;
    line-height: 1;
    text-align: center;
    flex-shrink: 0;
}
	.profile-info__value {
font-size:15px!important
	}
	.staff-title-en {
font-size:20px;
	border-bottom:solid 1px;
	letter-spacing:2px;
	width:140px;
	margin:0 auto;
	margin-bottom:10px;
	padding-bottom:5px
}
.staff-title-jp {
	font-size:20px;
	margin-bottom:15px;
	letter-spacing:2px;
}
	.staff-colomn-bottom .swell-block-columns__inner {
		flex-direction: column-reverse;
	}
}

/*アクセス*/
.table td {
	padding:15px!important;
	font-size:16px;
	letter-spacing:1px
}

.access-title {
		font-size:27px!important;
	font-weight:500!important;
	letter-spacing:1px!important;
}
.access-text {
	line-height:2;
	font-size:18px
}

@media (max-width: 767px) {
	.table td {
	padding:10px!important;
	font-size:14px;
	letter-spacing:1px
}

.access-title {
		font-size:24px!important;
	font-weight:500!important;
	letter-spacing:1px!important;
	margin-bottom:10px!important
}
.access-text {
	line-height:2;
	font-size:16px
}
}

.voice-com {
	background-color:#fff;
	box-shadow: 0px 0px 6px #a0a0a07d;
	border-radius:15px;
	padding:18px!important
}
.voice-name {
font-size:16px;
	margin-bottom:5px!important;
	font-weight:500;
}

.voice-star {
	font-size:18px;
	color:#F8EC00;
	margin-bottom:5px!important
}

.voice-menu  {
	font-size:15px;
	margin-bottom:4px!important
}
.voice-column {
border-radius:15px
}
.voice-text {
	font-size:14px
}
@media (max-width: 767px) {
	.voice-name {
font-size:16px;
	margin-bottom:5px!important
}

.voice-star {
	font-size:18px;
	color:#F8EC00;
	margin-bottom:5px!important
}

.voice-menu  {
	font-size:14px;
	margin-bottom:4px!important
}
.voice-column {
border-radius:15px
}
}


.faq-btn a {
	font-weight:500!important;
	letter-spacing:3px;
}
.swell-block-accordion__title {
	font-weight:600!important;
	font-size:18px
}
.swell-block-accordion .swl-bg-color {
	padding:15px;
	padding-top:4px;
	padding-bottom:4px;

	font-weight:500;
	font-size:20px
	
}
.swell-block-accordion.is-style-simple .swell-block-accordion__body {
    border-top: 1px dashed var(--color_border);
    margin: 0px;
    padding: 18px;
}
.swell-block-accordion__body p {
	font-weight:500;
}
.is-style-simple>.swell-block-accordion__item:first-child {
    border-top: 0px solid var(--color_border);
}
.is-style-simple>.swell-block-accordion__item {
    border-bottom: 0px solid var(--color_border);
}
.swell-block-accordion {
	
}
.swell-block-accordion .wp-block-paragraph {
  display: inline-flex;
  align-items: center;
  gap: 1em;
}

.swell-block-accordion .wp-block-paragraph .swl-bg-color {
  flex: 0 0 auto;
}
.swell-block-accordion__label {
  display: inline-flex;
  align-items: center;
  gap: 1em;
}

.swell-block-accordion__label > .swl-bg-color {
  flex: 0 0 auto;
}
.faq-h2-title {
	font-size:30px!important;
	font-weight:500!important;
	margin-bottom:10px!important
}

.swell-block-accordion__item {
margin-bottom:35px!important;
	background-color:#fff;
	box-shadow:1px 1px 10px #8a8a8a9c
}
.faq-border {
	height:3px;
border-radius:100px;
	left:0!important;
	margin:0px!important;
	margin-left:0!important;
	margin-right:auto!important;
	margin-bottom:50px!important;
	margin-top:20px!important;
	width:90px
}
@media (max-width: 767px) {
	.faq-h2-title {
	font-size:21px!important;
	font-weight:500!important;
	margin-bottom:10px!important
}
	.faq-btn a {
	font-weight:500!important;
	letter-spacing:1px;
		font-size:13px
}
	.swell-block-accordion .swl-bg-color {
	padding:14px;
	padding-top:5px;
	padding-bottom:6px;

	font-weight:500;
	font-size:17px
	
}
	.swell-block-accordion.is-style-simple .swell-block-accordion__body {
		padding:15px
	}
	.swell-block-accordion__title {
	font-weight:500;
	font-size:15px
}
}
   
/*美容コラム*/
.p-postList__body {
    position: relative;
    transition: opacity .25s;
    flex-direction: column-reverse;
    display: flex;
	gap:15px!important;
	padding:15px;
	padding-bottom:25px;
	
}.p-postList__thumb {
	box-shadow:none
}

.blog {
	background-color:#f8f8f8
}
.p-postList .p-postList__title {
	font-size:18px;
	font-weight:500!important
}
.p-postList__meta :before {
	display:none;
}
.p-postList__meta {
	font-size:16px;
}
.p-postList__cat  {
	background-color:#424242;
	color:#fff;
	font-size:15px;
	padding:5px 20px
}

.u-thin {
    opacity: 1;
}
.-type-card .p-postList__item {
    margin-bottom: 2.5em;
    margin-top: 0;
    padding: 0 1em!important;
}
.follow-us {
	position:absolute;
	bottom:0;
	z-index:100;
	background:#fff;
	margin:0px!important;
	left:0
}
@media (max-width: 767px) {
	.swell-block-fullWide.pc-py-60.sp-py-40.has-bg-img.alignfull.fv-wide.u-mb-ctrl.u-mb-0.lazyloaded {
		background-image: url("http://test-pagesite.site/test41/wp-content/uploads/2026/07/Group-102199-1-scaled.webp")!important;
	}
	.p-postList .p-postList__title {
	font-size:15px;
}
	.p-postList__meta {
	font-size:14px;
}
	.p-postList__cat  {
	background-color:#424242;
	color:#fff;
	font-size:12px;
	padding:5px 20px
}
	.news-post .p-postList__body {
display: grid;
		gap:10px!important
	}
	.fv-img1 img {
    position: absolute;
    width: 230px;
    right:40px;
    top: 30%;
    transform: translateY(-50%);
}
	.fv-img2 img {
    position: absolute;
    width: 180px;
    right: 0px;
    bottom:0;
    transform: translateY(-20%);


}
	.fv-wide .swell-block-fullWide__inner {
    top: 40%;
    transform: translateY(-50%);
}
	.fv-wide {
	height:91vh;
}
	    .follow-us {
        padding: 20px 10px!important;
    }
	.follow-us__btn {
        width: 50%!important;
        max-width: none;
    }
	    .follow-us__buttons {

        gap: 10px!important;

    }
	
}
.fade-in,
.fade-in1,
.fade-in2 {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 1s ease, transform 1s ease;
}

.fade-in.is-active,
.fade-in1.is-active,
.fade-in2.is-active {
  opacity: 1;
  transform: translateY(0);
}

.fade-in1.is-active {
  transition-delay: 0.2s;
}

.fade-in2.is-active {
  transition-delay: 0.4s;
}

/* SWELL・WordPress編集画面では常に表示 */
.editor-styles-wrapper .fade-in,
.editor-styles-wrapper .fade-in1,
.editor-styles-wrapper .fade-in2,
.block-editor-block-list__layout .fade-in,
.block-editor-block-list__layout .fade-in1,
.block-editor-block-list__layout .fade-in2 {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

figure.fade-img-ue img,
figure.fade-img-shita img {
  opacity: 0;
  filter: blur(20px);
  transition:
    opacity 1.9s ease,
    filter 1.9s ease,
    translate 1.9s cubic-bezier(.22, 1, .36, 1);
  will-change: opacity, filter, translate;
}

/* 上から下 */
figure.fade-img-ue img {
  translate: 0 -65px;
}

/* 下から上 */
figure.fade-img-shita img {
  translate: 0 65px;
}

figure.fade-img-ue.is-active img,
figure.fade-img-shita.is-active img {
  opacity: 1;
  filter: blur(0);
  translate: 0 0;
}

/* SWELL編集画面では表示 */
.editor-styles-wrapper figure.fade-img-ue img,
.editor-styles-wrapper figure.fade-img-shita img,
.block-editor-block-list__layout figure.fade-img-ue img,
.block-editor-block-list__layout figure.fade-img-shita img {
  opacity: 1 !important;
  filter: none !important;
  translate: none !important;
  transition: none !important;
}

@media (min-width: 960px) {
    .-series .l-header__logo {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        margin-right: 24px;
        padding: 10px 0;
    }
}



.wp-block-categories-list{
  display:flex;
  flex-wrap:wrap;
  gap:15px;
  margin:0;
  padding:0;
  list-style:none;
}

.wp-block-categories-list .cat-item{
  flex:0 0 calc((100% - 60px) / 5);
  margin:0;
}

.wp-block-categories-list .cat-item a{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:45px;
  padding:0 10px;
  box-sizing:border-box;

  font-size:16px;
  color:#333;
  text-decoration:none;

  border:1px solid #8f8f8f;
  background:#fff;
  transition:.3s;
}

.wp-block-categories-list .cat-item a:hover{
  background:#333;
  color:#fff;
}
.archive .c-pageTitle__subTitle {
	display:none;
}
.archive .c-pageTitle {
	font-size:35px;
	color:#444444;
	text-shadow:none
}
.archive .l-content {
	margin:5em 0em;
}
.p-postList__times {

	display: flex;
	align-items: center;
	gap: 12px;

}

.p-postList__customCat {

	position: static;
	display: inline-block;
	padding: 3px 10px;
	font-size: 12px;
	line-height: 1.5;
	color: #fff;
	background-color: #333333;

}
.-type-card .p-postList__excerpt {
	margin:0px;
	font-size:15px;
	line-height:1.7
}
@media (max-width:767px){
	.archive .c-pageTitle {
	font-size:25px
}
  .wp-block-categories-list{
    gap:10px;
  }

  .wp-block-categories-list .cat-item{
    flex:0 0 calc((100% - 10px) / 2);
  }

  .wp-block-categories-list .cat-item a{
    height:40px;
    font-size:14px;
  }
}

.p-postList__body {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 15px 15px 25px;
}

.p-postList__meta {
	order: 1;
}

.p-postList__title {
	order: 2;
}

.p-postList__excerpt {
	order: 3;
}

.stylepost-pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 50px;
}
[class*="page-numbers"] {
background-color:#fff;
	color:#000
}
.stylepost-pagination .page-numbers {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	color: #000;
	text-decoration: none;
}

.stylepost-pagination .page-numbers.current {
	color: #fff;
}
.stylepost-pagination .page-numbers:hover {
	color:#fff;
}

.cf7__list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 60px;
}

.cf7__list dt:nth-of-type(n + 2),
.cf7__list dd:nth-of-type(n + 2) {
  margin-top: 30px;
}

.cf7__list dt {
  width: 35%;
  padding-top: 15px;
}

.cf7__list dd {
  width: 65%;
}

/* 必須・任意 */
.cf7__required,
.cf7__optional {
  margin-right: 15px;
  padding: 6px 14px;
  color: #fff;
  font-size: 12px;
  vertical-align: 1px;
}

.cf7__required {
  background: #BE1D1D;
}

.cf7__optional {
  background: #878D8E;
}

/* input・textarea */
.cf7__list dd input[type="text"],
.cf7__list dd input[type="tel"],
.cf7__list dd input[type="email"],
.cf7__list dd textarea {
  width: 100%;
  padding: 15px 20px;
  background: #F4F4F4;
}

/* ドロップダウンメニュー */
.cf7__select {
  position: relative;
}

.cf7__select:before {
  position: absolute;
  top: 50%;
  right: 20px;
  z-index: 10;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 8px solid #000;
  border-right: 6px solid transparent;
  border-left: 6px solid transparent;
  pointer-events: none;
  content: '';
}

.cf7__select select {
  width: 100%;
  padding: 19px 20px;
  background: #F4F4F4;
  color: #a5a5a5;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

/* チェックボックス・ラジオボタン */
.cf7__list dd .wpcf7-checkbox,
.cf7__list dd .wpcf7-radio {
  display: block;
  padding: 15px 0 10px;
}

/* 縦並び（チェックボックス・ラジオボタン） */
.cf7__list dd .wpcf7-list-item {
  display: block;
  margin: 0;
}

.cf7__list dd .wpcf7-list-item:nth-child(n + 2) {
  margin-top: 18px;
}

/* マウスカーソル（チェックボックス・ラジオボタン） */
.cf7__list dd .wpcf7-list-item label {
  cursor: pointer;
}

/* チェックボックス・ラジオボタン */
input[type="checkbox"],
input[type="radio"] {
  position: relative;
  width: 18px;
  height: 18px;
  margin-right: 8px;
  border: 1px solid #bcbcbc;
  vertical-align: -3px;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

/* チェックボックス */
input[type="checkbox"]:checked {
  border: 1px solid #000;
  background: #000;
}

input[type="checkbox"]:checked:before {
  position: absolute;
  top: 2px;
  left: 5px;
  transform: rotate(50deg);
  width: 6px;
  height: 10px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  content: '';
}

/* ラジオボタン */
input[type="radio"] {
  border-radius: 50%;
}

input[type="radio"]:checked:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #000;
  content: '';
}

/* プレースホルダー */
/* Google Chrome / Safari / Mozilla Firefox / Opera */
.cf7__list dd input[type="text"]::placeholder,
.cf7__list dd input[type="tel"]::placeholder,
.cf7__list dd input[type="email"]::placeholder,
.cf7__list dd textarea::placeholder {
  color: #a5a5a5;
}

/* Microsoft Edge */
.cf7__list dd input[type="text"]::-ms-input-placeholder,
.cf7__list dd input[type="tel"]::-ms-input-placeholder,
.cf7__list dd input[type="email"]::-ms-input-placeholder,
.cf7__list dd textarea::-ms-input-placeholder {
  color: #a5a5a5;
}

/* Internet Explorer */
.cf7__list dd input[type="text"]:-ms-input-placeholder,
.cf7__list dd input[type="tel"]:-ms-input-placeholder,
.cf7__list dd input[type="email"]:-ms-input-placeholder,
.cf7__list dd textarea:-ms-input-placeholder {
  color: #a5a5a5;
}

/* 送信ボタン */
.cf7__button {
  padding-left: 72px;
  text-align: center;
}

input[type="submit"] {
  width: 260px;
  height: 60px;
  background: #1e3a5f;
  color: #fff;
  transition: opacity .6s;
}

input[type="submit"]:hover {
  opacity: .6;
}

/* ajax-loader */
.wpcf7-spinner {
  vertical-align: middle;
}

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

  .cf7__list dt {
    width: 100%;
    margin-bottom: 15px;
    padding-top: 0;
  }

  .cf7__list dd {
    width: 100%;
  }

  .cf7__list dd:nth-of-type(n + 2) {
    margin-top: 0;
  }

  .cf7__list dd .wpcf7-checkbox,
  .cf7__list dd .wpcf7-radio {
    padding: 15px 0 0;
  }

  /* 送信ボタン */
  input[type="submit"] {
    width: 180px;
    height: 56px;
  }

}

html.is-loading,
body.is-loading {
  overflow: hidden;
}

.site-loader {
  position: fixed;
  inset: 0;
  z-index: 999999;
  width: 100%;
  height: 100dvh;
  background: #f7f7f5;
  overflow: hidden;
}

.site-loader::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,.98) 0%,
    rgba(235,235,232,.45) 50%,
    rgba(255,255,255,.98) 100%
  );
}

.site-loader__noise {
  position: absolute;
  inset: 0;
  opacity: .03;
  pointer-events: none;
  background-image:
    url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.7'/%3E%3C/svg%3E");
}

.site-loader__inner {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  width: 95%;
  transform: translate(-50%, -50%);
}

.site-loader__percent {
  display: flex;
  align-items: baseline;
  justify-content: center;
  margin-bottom: 34px;
  font-family:
    "Yu Mincho",
    "YuMincho",
    "Hiragino Mincho ProN",
    "Hiragino Mincho Pro",
    "Noto Serif JP",
    serif;
  font-size: clamp(40px, 5vw, 69px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -.04em;
  color: #161616;
}

.site-loader__percent small {
  margin-left: .2em;
  font-size: 25px;
  letter-spacing: 0;
  color: #161616;
}

.site-loader__line {
  position: relative;
  width: 100%;
  height: 7px;
  overflow: hidden;
  background: rgba(0, 0, 0, .09);
  border-radius: 100px;
}

.site-loader__line span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(
    90deg,
    #111 0%,
    #555 55%,
    #111 100%
  );
  transition: width .08s linear;
}

.site-loader__bottom {
  display: flex;
  justify-content: space-between;
  margin-top: 20px;
  font-family: Arial, sans-serif;
  font-size: 17px;
  letter-spacing: .2em;
  color: #777;
}

.site-loader.is-finish {
  animation: loaderOut 1s cubic-bezier(.76, 0, .24, 1) forwards;
}

@keyframes loaderOut {
  0% {
    clip-path: inset(0 0 0 0);
  }

  100% {
    clip-path: inset(0 0 100% 0);
    visibility: hidden;
  }
}

@media (max-width: 767px) {
  .site-loader__percent {
    margin-bottom: 24px;
    font-size: 44px;
  }

  .site-loader__percent small {
    font-size: 18px;
  }

  .site-loader__bottom {
    margin-top: 16px;
    font-size: 14px;
    letter-spacing: .16em;
  }
}