@charset "utf-8";

/*共通枠*/

* {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

body {
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-weight: 400;
	font-style: normal;
	line-height: 1;
	color: #464646;
	background-color: #EBE9DE;
}

body.is-menuOpen {
	position: fixed;
	width: 100%;
}

img {
	border:0;
	vertical-align:bottom;
}

*:focus {
	outline: none;
}

a {
	-webkit-tap-highlight-color:rgba(0,0,0,0);
	cursor: pointer;
	text-decoration: none;
}
.nolink {
	pointer-events: none;
}

/* 共通
======================================================*/

.container {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}
.container_wrap {
	padding: 0 35px;
}

@media screen and (max-width: 599px) {
.container_wrap {
	padding: 0 35px;
}
}

@media screen and (max-width: 374px) {
.container_wrap {
	padding: 0 15px;
}
}

.block1300 { display: none; }
@media screen and (max-width: 1300px) {
.block1300 { display: block; }
}
.block1200 { display: none; }
@media screen and (max-width: 1200px) {
.block1200 { display: block; }
}
.block1100 { display: none; }
@media screen and (max-width: 1100px) {
.block1100 { display: block; }
}
.block1024 { display: none; }
@media screen and (max-width: 1024px) {
.block1024 { display: block; }
}
.block999 { display: none; }
@media screen and (max-width: 999px) {
.block999 { display: block; }
}
.block900 { display: none; }
@media screen and (max-width: 900px) {
.block900 { display: block; }
}
.block800 { display: none; }
@media screen and (max-width: 800px) {
.block800 { display: block; }
}

.block768 { display: none; }
@media screen and (max-width: 768px) {
.block768 { display: block; }
}

.block599 { display: none; }
@media screen and (max-width: 599px) {
.block599 { display: block; }
}

.block374 { display: none; }
@media screen and (max-width: 374px) {
.block374 { display: block; }
}

.block359 { display: none; }
@media screen and (max-width: 359px) {
.block359 { display: block; }
}

@media screen and (max-width: 1200px) {
.none1200 { display: none; }
}

@media screen and (max-width: 1024px) {
.none1024 { display: none; }
}

@media screen and (max-width: 999px) {
.none999 { display: none; }
}

@media screen and (max-width: 900px) {
.none900 { display: none; }
}

@media screen and (max-width: 800px) {
.none800 { display: none; }
}

@media screen and (max-width: 768px) {
.none768 { display: none; }
}

@media screen and (max-width: 599px) {
.none599 { display: none; }
}

@media screen and (max-width: 374px) {
.none374 { display: none; }
}

.anchor {
	padding-top: 140px;
	margin-top: -140px;
	display: block;
	position: relative;
	z-index: -1;
}

@media screen and (max-width: 1024px) {

.anchor {
	padding-top: 80px;
	margin-top: -80px;
}

}

/* header
======================================================*/

.header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 116px;
	background-color: #EBE9DE;
	z-index: 999;
}
.header h1 {
	display: none;
}
.header nav {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
}
.header nav ul {
	display: -webkit-flex;
	display: flex;
	list-style: none;
}
.header nav ul li.hd_nav a {
	font-weight: 500;
	font-size: 20px;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	text-align: center;
	color: #464646;
	display: block;
	height: 116px;
	padding-top: 36px;
	box-sizing: border-box;
}
.header nav ul li.hd_nav a .en {
	font-family: "Fugaz One", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 14px;
	display: block;
}
.header nav ul li.hd_nav a .jp {
	font-weight: 500;
	font-size: 20px;
	margin-top: 10px;
	display: block;
}
.header nav ul li.hd_nav01 a {
	width: calc( 7em + 60px );
}
.header nav ul li.hd_nav01 a:hover .jp {
	color: #009798;
	font-weight: 700;
}
.header nav ul li.hd_nav02 a {
	width: calc( 4em + 60px );
}
.header nav ul li.hd_nav02 a:hover .jp {
	color: #4E9842;
	font-weight: 700;
}
.header nav ul li.hd_nav03 a {
	width: calc( 10em + 60px );
}
.header nav ul li.hd_nav03 a:hover .jp {
	color: #B77F00;
	font-weight: 700;
}
.header nav ul li.hd_nav04 a {
	width: calc( 4em + 60px );
}
.header nav ul li.hd_nav04 a:hover .jp {
	color: #E12F2F;
	font-weight: 700;
}
.header nav ul li.hd_nav05 a {
	width: calc( 4em + 60px );
}
.header nav ul li.hd_nav05 a:hover .jp {
	color: #5A61A7;
	font-weight: 700;
}
.header nav ul li.hd_nav06 a {
	width: calc( 6em + 60px );
}
.header nav ul li.hd_nav06 a:hover .jp {
	color: #464646;
	font-weight: 700;
}
.header nav ul li.hd_logo a {
	display: block;
	padding: 20px 30px 0 30px;
	box-sizing: border-box;
	height: 116px;
}
.header nav ul li.hd_insta a {
	display: block;
	padding: 33px 30px 0 30px;
	box-sizing: border-box;
	height: 116px;
	visibility: hidden;
	pointer-events: none;
}

.header nav ul li.hd_insta a span {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	border-radius: 100%;
	background-color: #464646;
	width: 54px;
	height: 54px;
	transition: background-color 0.3s;
}
.header nav ul li.hd_insta a:hover span {
	background-color: #C75291;
}

@media screen and (max-width: 1400px) {

.header nav ul li.hd_nav a {
	font-size: 16px;
	padding-top: 40px;
}
.header nav ul li.hd_nav a .en {
	font-size: 12px;
}
.header nav ul li.hd_nav a .jp {
	font-size: 16px;
	margin-top: 10px;
}
.header nav ul li.hd_nav01 a {
	width: calc( 7em + 30px );
}
.header nav ul li.hd_nav02 a {
	width: calc( 4em + 30px );
}
.header nav ul li.hd_nav03 a {
	width: calc( 10em + 30px );
}
.header nav ul li.hd_nav04 a {
	width: calc( 4em + 30px );
}
.header nav ul li.hd_nav05 a {
	width: calc( 4em + 30px );
}
.header nav ul li.hd_nav06 a {
	width: calc( 6em + 30px );
}
.header nav ul li.hd_insta a {
	padding: 33px 15px 0 15px;
}
}

@media screen and (max-width: 1024px) {

.header nav {
	display: none;
}
.header {
	height: 72px;
	background-color: #EBE9DE;
}
.header h1 {
	display: inline-block;
}
.header h1 a {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	height: 72px;
	padding: 0 20px;
}

}

@media screen and (max-width: 374px) {

.header h1 img {
	width: 240px;
	height: auto;
}

}

@media screen and (max-width: 359px) {

.header h1 img {
	width: 200px;
	height: auto;
}

}


/* g_nav
======================================================*/

.g_nav,
.openbtn-wrap {
	display: none;
}

@media screen and (max-width: 1024px) {

.openbtn-wrap {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	width: 90px;
	height: 72px;
	position: fixed;
	top: 0px;
	right: 0px;
	z-index: 9999;
	cursor: pointer;
}
.openbtn {
	display: block;
	width: 50px;
	height: 50px;
	cursor: pointer;
	position: relative;
	background-color: #464646;
	border-radius: 100%;
}

/* ハンバーガーSET */

.openbtn span {
	display: inline-block;
	position: absolute;
	transition: all .2s;
	border-radius: 1px;
	background: #fff;
  	width: 24px; /* line-width */
	height: 4px; /* line-height */
	transition: all 0.2s;
	left: 13px;
}

.openbtn span:nth-of-type(1) { top: 15px; }
.openbtn span:nth-of-type(2) { top: 23px; }
.openbtn span:nth-of-type(3) { top: 31px; }

/* 3line - active */

.openbtn-wrap.active .openbtn span:nth-of-type(1) {
	top: 23px;
	left: 13px;
	transform: rotate(135deg);
}
.openbtn-wrap.active .openbtn span:nth-of-type(2) { opacity: 0; /*center*/ }
.openbtn-wrap.active .openbtn span:nth-of-type(3) {
	top: 23px;
 	left: 13px;
	transform: rotate(-135deg);
}


/* Gナビ */

.g_nav {
	display: block;
}

.g_nav {
	position: fixed;
	z-index: 998;
	opacity: 0;
	top: 72px;
	right: -460px;
	width: 100%;
	max-width: 460px;
	height: calc( 100vh - 72px );
	overflow-y: auto;
	background-color: #EBE9DE;
	transition: all 0.4s;
	box-sizing: border-box;
	padding: 23px 0px 0px 0px;
}

.g_nav.panelactive {
	opacity: 1;
	right: 0;
	width: 100%;
}

.g_nav_inner {
	width: 100%;
	max-width: 375px;
	margin: 0 auto;
}
/* スクロールバー */
.g_nav::-webkit-scrollbar {
   width: 2px;
   opacity: 0.5;
}
.g_nav::-webkit-scrollbar-track {
   background-color: #eee;
}
.g_nav::-webkit-scrollbar-thumb {
   background-color: #8B8B8B;
}


/* Gナビ リスト */

.g_nav .g_nav_list {
	list-style: none;
}
.g_nav .g_nav_list li a {
	font-weight: 700;
	font-size: 18px;
	line-height: 1;
	color: #464646;
	display: block;
	padding: 21px 0 21px 35px;
	transition: opacity 0.3s;
	opacity: 1;
}
.g_nav .g_nav_list li a:hover {
	opacity: 0.7;
}
.g_nav .g_nav_list li.sp_hd_insta a {
	display: block;
	padding: 15px 0px 15px 35px;
	box-sizing: border-box;
	visibility: hidden;
}
.g_nav .g_nav_list li.sp_hd_insta a span {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	border-radius: 100%;
	background-color: #464646;
	width: 54px;
	height: 54px;
	transition: background-color 0.3s;
}
.g_nav .g_nav_list li.sp_hd_insta a:hover {
	opacity: 1;
}
.g_nav .g_nav_list li.sp_hd_insta a:hover span {
	background-color: #C75291;
}

}



/* footer
======================================================*/

.footer {
	width: 100%;
	height: 610px;
	background-image: url("../img/ft_img.png"), url("../img/ft_back.png");
	background-repeat: no-repeat, no-repeat;
	background-position: right 73px bottom 64px, center top;
	background-size: 304px auto, 100% 610px;
	background-color: #EBE9DE;
	box-sizing: border-box;
	padding-top: 166px;
}

@media screen and (max-width: 1920px) {

.footer {
	background-image: url("../img/ft_img.png"), url("../img/ft_back.svg");
	background-repeat: no-repeat, no-repeat;
	background-position: right 73px bottom 64px, center top;
	background-size: 304px auto, 1920px auto;
	background-color: #EBE9DE;
}

}

.footer_content_wrap {
	padding: 0 30px;
}
.footer_content {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.footer_left {
	width: 302px;
	position: relative;
}
.footer_right {
	width: 666px;
	display: -webkit-flex;
	display: flex;
	padding-top: 35px;
}
.ft_inst {
	position: absolute;
	top: 8px;
	right: 0;
}
.ft_inst a {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	border-radius: 100%;
	background: url(../img/insta.svg) center center no-repeat;
	background-size: 28.8px auto;
	background-color: #EBE9DE;
	width: 54px;
	height: 54px;
	transition: background-color 0.3s;
	visibility: hidden;
}
.ft_inst a:hover {
	background-color: #C75291;
}
.ft_inst a img {
	opacity: 1;
	transition: opacity 0.3s;
}
.ft_inst a:hover img {
	opacity: 0;
}
.ft_add {
	font-weight: 700;
	font-size: 16px;
	line-height: 2.125;
	color: #fff;
	margin-top: 19px;
}
.ft_btn {
	width: 256px;
	margin-top: 58px;
}
.ft_btn a {
	width: 100%;
	height: 60px;
	position: relative;
	border-radius: 100vh;
	overflow: hidden;
	background-color: #EBE9DE;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	text-align: center;
}
.ft_btn a::before {
	transition: transform 0.5s ease;
	display: block;
	content: "";
	width: 100%;
	height: 60px;
	background-color: #FFC95E;
	position: absolute;
	top: 0;
	right: 0;
	transform: scaleX(0);
	transform-origin: right;
}
.ft_btn a:hover::before {
	transform: scaleX(1);
	transform-origin: left;
}
.ft_btn a .txt {
	position: relative;
	z-index: 2;
	font-weight: 700;
	font-size: 16px;
	color: #464646;
}
.f_nav.f_nav01 {
	width: 262px;
}
.f_nav.f_nav02 {
	width: 200px;
}
.f_nav.f_nav03 {
	width: 204px;
}
.f_nav a {
	color: #EBE9DE;
	line-height: 1;
	opacity: 1;
	transition: opacity 0.3s;
}
.f_nav a:hover {
	opacity: 0.7;
}
.f_nav dl dt,
.f_nav p {
	font-weight: 700;
	font-size: 20px;
}
.f_nav dl dd {
	font-weight: 500;
	font-size: 16px;
	padding-left: 20px;
	margin-top: 25px;
}
.f_nav dl dd:nth-of-type(1) {
	margin-top: 30px;
}
.f_nav_art {
	margin-top: 30px;
}
.f_nav_news {
	margin-top: 20px;
}

@media screen and (max-width: 1100px) {

.f_nav dl dt,
.f_nav p {
	font-weight: 700;
	font-size: 18px;
}
.f_nav dl dd {
	font-size: 14px;
	padding-left: 20px;
	margin-top: 25px;
}
.footer_right {
	width: 606px;
}
.f_nav.f_nav01 {
	width: 232px;
}
.f_nav.f_nav02 {
	width: 180px;
}
.f_nav.f_nav03 {
	width: 194px;
}

}

@media screen and (max-width: 1024px) {

.footer {
	height: 520px;
	background: url("../img/ft_back.svg") center top no-repeat;
	background-size: 1920px auto;
	background-color: #EBE9DE;
}

.footer_content {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	display: block;
}
.footer_left {
	width: 100%;
	max-width: 375px;
	position: relative;
	margin: 0 auto;
}
.footer_right {
	display: none;
}

.ft_logo {
	text-align: center;
}
.ft_logo img {
	width: 162px;
	height: auto;
}
.ft_add {
	font-weight: 700;
	font-size: 16px;
	line-height: 1.875;
	color: #fff;
	margin-top: 19px;
	text-align: center;
}
.ft_btn {
	width: 256px;
	margin: 37px auto 0 auto;
}
.ft_inst {
	position: relative;
	top: auto;
	right: auto;
}
.ft_inst a {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	border-radius: 100%;
	background: url(../img/insta.svg) center center no-repeat;
	background-size: 28.8px auto;
	background-color: #EBE9DE;
	width: 54px;
	height: 54px;
	transition: background-color 0.3s;
	margin: 17px auto 0 auto;
}
.ft_inst a:hover {
	background-color: #C75291;
}
.ft_inst a img {
	opacity: 1;
	transition: opacity 0.3s;
}
}

@media screen and (max-width: 359px) {

.ft_add {
	font-size: 14px;
}

}

/* copy
======================================================*/

.copy {
	width: 100%;
	height: 60px;
	background-color: #009798;
}
.copy p {
	font-weight: 700;
	text-align: center;
	line-height: 60px;
	color: #fff;
	font-size: 16px;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
}

@media screen and (max-width: 1024px) {

.copy {
	height: 48px;
}
.copy p {
	line-height: 48px;
	font-size: 14px;
}

}

/* main
======================================================*/

main {
	padding: 116px 0 0 0;
}

@media screen and (max-width: 1024px) {

main {
	padding: 72px 0 0 0;
}

}


/* top_img
======================================================*/

.top_img {
	width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
}
.top_img .splide__slide img {
	width: 100%;
	height: auto;
	border-radius: 24px;
}
.top_img .splide__slide {
	padding: 0 50px;
}
.top_img01 {
	position: relative;
}
.top_img01 .txt {
	font-weight: 500;
	font-size: 90px;
	font-size: 4.6vw;
	letter-spacing: 0.05em;
	line-height: 1.55;
	color: #fff;
	position: absolute;
	top: 30%;
	right: 7%;
	color: #EBE9DE;
}
.top_img02 {
	position: relative;
}
.art_info_set {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	position: absolute;
	right: 60px;
	bottom: 30px;
	gap: 8px 0;
}
.art_info_set p {
	font-size: 20px;
	font-weight: 700;
	color: #464646;
	background-color: #fff;
	padding: 14px 24px;
	text-align: center;
}

@media screen and (max-width: 1600px) {

.art_info_set {
	right: 40px;
	bottom: 20px;
	gap: 6px 0;
}
.art_info_set p {
	font-size: 16px;
	font-weight: 700;
	color: #464646;
	background-color: #fff;
	padding: 10px 20px;
}

}

@media screen and (max-width: 1024px) {

.top_img {
	padding-top: 10px;
}
.top_img .splide__slide {
	padding: 0 37px;
}
.art_info_set {
	right: 20px;
	bottom: 14px;
	gap: 6px 0;
}
.art_info_set p {
	font-size: 12px;
	font-weight: 700;
	color: #464646;
	background-color: #fff;
	padding: 6px 10px;
}
}

@media screen and (max-width: 599px) {

.top_img .splide__slide img {
	border-radius: 14px;
}
.top_img01 .txt {
	font-size: 8.5vw;
	letter-spacing: 0.05em;
	line-height: 1.55;
	color: #fff;
	position: absolute;
	top: auto;
	bottom: 23%;
	right: -10px;
	width: 100%;
	text-align: center;
	color: #EBE9DE;
}
.art_info_set {
	right: 13px;
	bottom: 16px;
	gap: 10px 0;
}
.art_info_set p {
	font-size: 14px;
	font-weight: 700;
	color: #464646;
	background-color: #fff;
	padding: 6px 20px;
	text-align: center;
}
}

@media screen and (max-width: 374px) {
.top_img .splide__slide {
	padding: 0 15px;
}
}

/* link_btn
======================================================*/

.link_btn {
	width: 100%;
	max-width: 500px;
	height: 80px;
	border-radius: 24px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	background-color: #464646;
	box-sizing: border-box;
	position: relative;
	overflow: hidden;
	transition: background-color 0.5s ease;
}
.link_btn:hover {
	background-color: #FFC95E;
}
.link_btn::before {
	transition: transform 0.5s ease;
	display: block;
	content: "";
	width: 100%;
	height: 80px;
	background-color: #FFC95E;
	position: absolute;
	top: 0;
	right: 0;
	transform: scaleX(0);
	transform-origin: right;
}
.link_btn:hover::before {
	transform: scaleX(1);
	transform-origin: left;
}
.link_btn .txt {
	position: relative;
	z-index: 2;
	font-weight: 700;
	font-size: 20px;
	color: #EBE9DE;
	padding-left: 40px;
	transition: color 0.5s ease;
}
.link_btn:hover .txt {
	color: #464646;
}
.link_btn .icon {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	position: absolute;
	z-index: 2;
	transition: color 0.5s ease;
	width: 47px;
	height: 47px;
	border-radius: 100%;
	background-color: #FFC95E;
	box-sizing: border-box;
	padding-left: 4px;
	right: 37px;
	transition: background-color 0.5s ease;
}
.link_btn:hover .icon {
	background-color: #464646;
}
.link_btn .icon svg {
	fill: #464646;
	width: 21px;
	height: 23px;
	transition: fill 0.5s ease;
}
.link_btn:hover .icon svg {
	fill: #FFC95E;
}

@media screen and (max-width: 599px) {

.link_btn {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	height: 64px;
	border-radius: 100vh;
	text-align: center;
}
.link_btn::before {
	height: 64px;
}
.link_btn .icon {
	display: none;
}
.link_btn .txt {
	font-size: 16px;
	padding-left: 0px;
}
}


/* h2_top
======================================================*/

.h2_top {
	color: #EBE9DE;
}
.h2_top_bk {
	color: #464646;
}

.h2_top .en {
	font-family: "Fugaz One", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 14px;
	letter-spacing: 0.05em;
	line-height: 1;
	display: block;
}
.h2_top .jp {
	font-weight: 700;
	font-size: 30px;
	line-height: 1;
	display: block;
	margin-top: 16px;
}

@media screen and (max-width: 1024px) {

.h2_top .jp {
	font-size: 28px;
	margin-top: 12px;
}

}

@media screen and (max-width: 599px) {

.h2_top .jp {
	font-size: 26px;
	margin-top: 9px;
}

}
/* sc_top01
======================================================*/

.sc_top01 {
	padding: 100px 0 95px 0;
}
.top01_content {
	display: -webkit-flex;
	display: flex;
	position: relative;
}
.sc_top01 .txt {
	width: 560px;
}
.sc_top01 .txt h1 {
	font-weight: 700;
	font-size: 50px;
	line-height: 1.6;
}
.sc_top01 .txt .txt01 {
	font-weight: 700;
	font-size: 20px;
	line-height: 2;
	margin: 19px 0 20px 0;
}
.sc_top01 .txt .txt02 {
	position: relative;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.875;
	padding-left: 22px;
}

.sc_top01 .txt .txt02::before {
	content:"";
	display: block;
	position: absolute;
	top: 8px;
	left: 0px;
	width: 16px;
	height: 16px;
	border-radius: 100%;
	background-color: #E12F2F;
}
.sc_top01 .img {
	width: calc( 100% - 560px );
}
.sc_top01 .img img {
	width: 100%;
	height: auto;
}
.top01_link_btn {
	margin-top: 46px;
}

@media screen and (max-width: 1024px) {

.top01_content {
	display: block;
	padding-bottom: 140px;
}
.sc_top01 .txt {
	width: 100%;
	max-width: 500px;
	margin: 0 auto;
}
.sc_top01 .txt h1 {
	font-size: 38px;
}
.sc_top01 .txt .txt01 {
	font-weight: 700;
	font-size: 20px;
	line-height: 2;
	margin: 19px 0 20px 0;
}
.sc_top01 .txt .txt02 {
	position: relative;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.875;
	padding-left: 22px;
}
.sc_top01 .img {
	width: 100%;
	max-width: 500px;
	margin: 45px auto 0 auto;
}
.top01_link_btn {
	width: 100%;
	max-width: 500px;
	margin-top: 0;
	position: absolute;
	bottom: 0;
}
}

@media screen and (max-width: 599px) {

.sc_top01 {
	padding: 40px 0 70px 0;
}
.top01_content {
	padding-bottom: 94px;
}
.sc_top01 .txt h1 {
	font-size: 26px;
	line-height: 1.5;
}
.sc_top01 .img {
	margin: 30px auto 0 auto;
}
}

@media screen and (max-width: 599px) {

.sc_top01 .txt h1 {
	font-size: 24px;
}
.sc_top01 .txt .txt01 {
	font-size: 18px;
}
}


/* sc_top02
======================================================*/

.sc_top02 {
	background: url("../img/top02_back.jpg") center bottom no-repeat;
	background-size: cover;
	padding: 60px 0 80px 0;
}
.top02_content ol {
	list-style: none;
	counter-reset: number 0;
	margin-top: 60px;
}
.top02_content ol li {
	border: solid 1px #EBE9DE;
	background: url("../img/top02_list_back.png") center center no-repeat;
	background-size: 100% 100%;
	text-align: center;
	color: #EBE9DE;
	padding: 25px 0;
	position: relative;
}
.top02_content ol li:before {
	font-family: "Fugaz One", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 50px;
	color: #EBE9DE;
	letter-spacing: 0.05em;
	counter-increment: number 1;
	content: "0"counter(number) "";
	position: absolute;
	left: 1px;
	top: -20px;
}
.top02_content ol li:not(:first-child) {
	margin-top: 38px;
}
.top02_content ol li p:nth-of-type(1) {
	font-size: 24px;
	font-weight: 700;
}
.top02_content ol li p:nth-of-type(2) {
	font-size: 20px;
	font-weight: 700;
	margin-top: 20px;
}
.top02_link_btn {
	width: 100%;
	max-width: 500px;
	margin: 40px auto 0 auto;
}

@media screen and (max-width: 1024px) {

.sc_top02 {
	padding: 50px 0 65px 0;
}
.top02_content ol li:before {
	font-size: 40px;
	left: 1px;
	top: -20px;
}
.top02_content ol li:not(:first-child) {
	margin-top: 35px;
}
.top02_content ol li p:nth-of-type(1) {
	font-size: 22px;
	line-height: 1.7;
}
.top02_content ol li p:nth-of-type(2) {
	font-size: 18px;
	line-height: 1.7;
	margin-top: 16px;
}
}

@media screen and (max-width: 599px) {

.sc_top02 {
	background: url("../img/top02_back_sp.png") center top repeat-y;
	background-size: 100% auto;
	padding: 40px 0 50px 0;
}

.top02_content ol li:before {
	font-size: 30px;
	left: 1px;
	top: -16px;
}
.top02_content ol li:not(:first-child) {
	margin-top: 32px;
}
.top02_content ol li p:nth-of-type(1) {
	font-size: 20px;
	line-height: 1.7;
}
.top02_content ol li p:nth-of-type(2) {
	font-size: 16px;
	line-height: 1.7;
	margin-top: 13px;
}
}


/* sc_top03
======================================================*/

.sc_top03 {
	background: url("../img/top02_back.svg") center top 36px no-repeat;
	padding: 130px 0 110px 0;
}
.top03_content p {
	font-weight: 700;
	font-size: 30px;
	line-height: 2.66;
	text-align: center;
}
.top03_content p span {
	color: #E12F2F;
}
.top03_link_btn {
	margin: 37px auto 0 auto;
	width: 100%;
	max-width: 500px;
}

@media screen and (max-width: 1024px) {

.sc_top03 {
	background: url("../img/top02_back.svg") center top 33px no-repeat;
	background-size: 100% auto;
	padding: 100px 0 95px 0;
}
.top03_content p {
	font-size: 25px;
	line-height: 1.8;
}
}

@media screen and (max-width: 599px) {

.sc_top03 {
	background: url("../img/top02_back.svg") center top 33px no-repeat;
	background-size: 100% auto;
	padding: 68px 0 80px 0;
}
.top03_content p {
	font-size: 20px;
	line-height: 1.8;
}
.top03_link_btn {
	margin: 33px auto 0 auto;
}
}


/* sc_top04
======================================================*/

.sc_top04 {
	border-top: solid 1px #707070;
	padding: 94px 0 118px 0;
}
.top_collection_list {
	margin-top: 30px;
}
.top04_link_btn {
	margin: 60px auto 0 auto;
	width: 100%;
	max-width: 500px;
}

@media screen and (max-width: 1024px) {

.sc_top04 {
	padding: 60px 0 100px 0;
}
.top_collection_list {
	margin-top: 28px;
}
.top04_link_btn {
	margin: 50px auto 0 auto;
}
}

@media screen and (max-width: 599px) {

.sc_top04 {
	padding: 40px 0 80px 0;
}
.top_collection_list {
	margin-top: 25px;
}
.top04_link_btn {
	margin: 40px auto 0 auto;
}
}


/* collection_list
======================================================*/

.collection_list ul {
	list-style: none;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 30px 16px;
}
.collection_list ul li {
	width: calc(( 100% - 32px ) / 3 );
}
.collection_list .img {

}
.collection_list .img img {
	aspect-ratio: 356 / 230;
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: auto;
	border-radius: 24px;
	transition: opacity 0.3s;
	opacity: 1;
}
.collection_list a:hover .img img {
	opacity: 0.7;
}

.collection_list .collection_ct {
	width: 170px;
	height: 38px;
	border-radius: 100vh;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	font-family: "Fugaz One", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 14px;
	color: #EBE9DE;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	margin-top: 14px;
	text-align: center;
}
.collection_ct_illust {
	background-color: #5A61A7;
}
.collection_ct_creation {
	background-color: #E12F2F;
}
.collection_ct_painting {
	background-color: #82BD79;
}
.collection_ct_category {
	background-color: #009798;
}
.collection_ct_all {
	background-color: #464646;
}

.collection_list .collection_title {
	font-weight: 700;
	font-size: 20px;
	line-height: 1.4;
	color: #464646;
	margin-top: 12px;
	transition: opacity 0.3s;
	opacity: 1;
}
.collection_list a:hover .collection_title {
	opacity: 0.7;
}

@media screen and (max-width: 1200px) {

.collection_list .collection_title {
	font-size: 18px;
}

}

@media screen and (max-width: 1024px) {

.collection_list ul li {
	width: calc(( 100% - 16px ) / 2 );
}
.collection_list .collection_title {
	font-size: 20px;
}
}

@media screen and (max-width: 599px) {

.collection_list ul {
	gap: 26px 0;
}
.collection_list ul li {
	width: 100%;
}
.collection_list .img img {
	aspect-ratio: 250 / 154;
	border-radius: 14px;
}
.collection_list .collection_ct {
	width: 124px;
	height: 26px;
	margin-top: 10px;
}
.collection_list .collection_title {
	margin-top: 5px;
}
}


/* sc_top05
======================================================*/

.sc_top05 {
	border-top: solid 1px #707070;
	padding: 100px 0 140px 0;
}
.news_list_top_set {
	margin-top: 36px;
}
.top05_link_btn {
	margin: 40px auto 0 auto;
	width: 100%;
	max-width: 500px;
}

@media screen and (max-width: 1024px) {

.sc_top05 {
	padding: 73px 0 105px 0;
}
.news_list_top_set {
	margin-top: 30px;
}
}

@media screen and (max-width: 599px) {

.sc_top05 {
	padding: 45px 0 70px 0;
}
.news_list_top_set {
	margin-top: 25px;
}
}


/* news_list
======================================================*/

.news_list {
	list-style: none;
	border-top: solid 1px #707070;
}
.news_list li {
	border-bottom: solid 1px #707070;
}
.news_list li a {
	display: -webkit-flex;
	display: flex;
	width: 100%;
	padding: 25px 80px 25px 0;
	opacity: 1;
	transition: opacity 0.3s;
	position: relative;
}
.news_list li a:hover {
	opacity: 0.7;
}
.news_list li a::after {
	content:"";
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	text-align: center;
	position: absolute;
	top: calc(( 100% - 36px ) / 2 );
	right: 30px;
	width: 36px;
	height: 36px;
	background: url("../img/sankaku01.svg") center left 12px no-repeat;
	background-color: #464646;
	border-radius: 100%;
}
.news_list.news_list_page li a::after {
	background: url("../img/sankaku01.svg") center left 12px no-repeat;
	background-color: #5A61A7;
}
.news_list li a p {
	font-weight: 700;
	font-size: 20px;
	line-height: 1.4;
	color: #464646;
}
.news_list li a p:nth-of-type(1) {
	width: 268px;
	box-sizing: border-box;
	padding-left: 30px;
}
.news_list li a p:nth-of-type(2) {
	width: calc( 100% - 268px );
	box-sizing: border-box;
}

@media screen and (max-width: 1024px) {

.news_list li a {
	padding: 20px 70px 20px 0;
}
.news_list li a::after {
	top: 13px;
	right: 15px;
}
.news_list li a p {
	font-size: 16px;
}
.news_list li a p:nth-of-type(1) {
	width: 160px;
	box-sizing: border-box;
	padding-left: 0px;
}
.news_list li a p:nth-of-type(2) {
	width: calc( 100% - 160px );
	box-sizing: border-box;
}
}

@media screen and (max-width: 599px) {

.news_list li a {
	display: block;
	padding: 16px 0;
}
.news_list li a::after {
	display: none;
}
.news_list li a p:nth-of-type(1) {
	width: 100%;
}
.news_list li a p:nth-of-type(2) {
	width: 100%;
	margin-top: 10px;
}
}


/* topic_path
======================================================*/

.topic_path {
	padding-top: 40px;
}
.topic_path p {
	font-size: 14px;
	font-weight: 500;
	color: #464646;
}
.topic_path p a {
	color: #464646;
	opacity: 1;
	transition: opacity 0.3s;
	display: inline-block;
}
.topic_path p a:hover {
	opacity: 0.7;
}
.topic_path p .list {
	display: inline-block;
	padding: 0 8px;
}
.topic_path p .current {
	display: inline-block;
}

@media screen and (max-width: 1024px) {

.topic_path {
	padding-top: 20px;
}

}

@media screen and (max-width: 599px) {

.topic_path {
	padding-top: 14px;
}

}


/* page_h1
======================================================*/

.page_h1 {
	margin-top: 80px;
	border-bottom: solid 1px #707070;
	padding-bottom: 92px;
}
.page_h1 .jp {
	display: block;
	line-height: 1;
	font-weight: 500;
	letter-spacing: 0.05em;
	font-size: 26px;
}
.page_h1 .en {
	display: block;
	line-height: 1;
	font-family: "Fugaz One", sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 0.05em;
	font-size: 90px;
	color: #009798;
	margin-top: 26px;
}
.page_h1.page_h1_service .en {
	color: #82BD79;
}
.page_h1.page_h1_partner .en {
	color: #FFC95E;
}
.page_h1.page_h1_collection .en {
	color: #E12F2F;
}
.page_h1.page_h1_news .en {
	color: #5A61A7;
}
.page_h1.page_h1_contact .en {
	color: #464646;
}
.page_h1.page_h1_pp .en {
	color: #464646;
}
.page_h1.page_h1_404 .en {
	color: #464646;
}

@media screen and (max-width: 1200px) {

.collection_header .page_h1 {
	margin-top: 80px;
	border-bottom: solid 0px #707070;
	padding-bottom: 40px;
}

}

@media screen and (max-width: 1024px) {

.page_h1 {
	margin-top: 60px;
	padding-bottom: 70px;
}
.page_h1 .jp {
	font-size: 23px;
}
.page_h1 .en {
	font-size: 65px;
	margin-top: 20px;
}

.collection_header .page_h1 {
	margin-top: 30px;
	padding-bottom: 0px;
}

}

@media screen and (max-width: 599px) {

.page_h1 {
	margin-top: 45px;
	padding-bottom: 53px;
}
.page_h1 .jp {
	font-size: 20px;
}
.page_h1 .en {
	font-size: 40px;
	margin-top: 15px;
}
.page_h1.page_h1_partner .en {
	font-size: 38px;
	margin-top: 15px;
}
.page_h1.page_h1_pp .en {
	font-size: 38px;
	margin-top: 15px;
}
}


/* sc_about01
======================================================*/

.sc_about01 {
	padding: 95px 0 0 0;
}
.about_h2 {
	font-weight: 700;
	font-size: 30px;
	line-height: 1;
	letter-spacing: 0.05em;
}
.sc_about01 dl {
	margin-top: 43px;
}
.sc_about01 dl dt {
	font-weight: 700;
	font-size: 20px;
	line-height: 2;
	text-align: justify;
	word-break: break-all;
}
.sc_about01 dl dd {
	font-weight: 700;
	font-size: 16px;
	line-height: 2.25;
	margin-top: 27px;
	text-align: justify;
	word-break: break-all;
}

@media screen and (max-width: 1024px) {

}

@media screen and (max-width: 599px) {

.sc_about01 {
	padding: 40px 0 0 0;
}
.about_h2 {
	font-size: 26px;
	line-height: 1.53;
}
.sc_about01 dl {
	margin-top: 10px;
}
.sc_about01 dl dd {
	margin-top: 5px;
}

}


/* sc_about02
======================================================*/

.sc_about02 {
	padding: 145px 0 140px 0;
}

.sc_about02_content {
	margin-top: 40px;
	border-radius: 20px;
	background: url("../img/about02_line.png") left 42px top repeat-y;
	background-color: #FFFFFF;
	background-size: 14px auto;
	padding: 37px 266px 70px 106px;
	position: relative;
}
.sc_about02_content h3 {
	font-weight: 700;
	font-size: 20px;
	line-height: 2;
}
.sc_about02_content p {
	font-weight: 700;
	font-size: 16px;
	line-height: 2.25;
	text-align: justify;
	word-break: break-all;
	margin-top: 40px;
}
.sc_about02_content p:nth-of-type(1) {
	margin-top: 17px;
}
.sc_about02_content p.sign {
	font-size: 16px;
	text-align: right;
	margin-top: 26px;
}
.sc_about02_content p.sign span {
	font-size: 22px;
}
.sc_about02_content .img {
	display: block;
	width: 199px;
	height: 153px;
	background: url("../img/about02_back.png") center center no-repeat;
	background-size: cover;
	position: absolute;
	right: 20px;
	bottom: 25px;
}

@media screen and (max-width: 1024px) {

.sc_about02 {
	padding: 115px 0 125px 0;
}
.sc_about02_content {
	margin-top: 30px;
	border-radius: 15px;
	background: url("../img/about02_line.png") left 28px top repeat-y;
	background-color: #FFFFFF;
	background-size: 12px auto;
	padding: 34px 30px 120px 60px;
}
.sc_about02_content p.sign {
	text-align: left;
}
.sc_about02_content p.sign span {
	display: block;
}
.sc_about02_content .img {
	display: block;
	width: 160px;
	height: 123px;
	right: 20px;
	bottom: 25px;
}

}

@media screen and (max-width: 599px) {

.sc_about02 {
	padding: 85px 0 110px 0;
}
.sc_about02_content {
	margin-top: 25px;
	border-radius: 10px;
	background: url("../img/about02_line.png") left 14px top repeat-y;
	background-color: #FFFFFF;
	background-size: 9px auto;
	padding: 30px 24px 120px 39px;
}
.sc_about02_content p {
	line-height: 1.8;
	margin-top: 30px;
}
.sc_about02_content p.sign {
	font-size: 14px;
	text-align: left;
	margin-top: 30px;
}
.sc_about02_content p.sign span {
	font-size: 22px;
	display: block;
}
.sc_about02_content .img {
	display: block;
	width: 121px;
	height: 93px;
	background: url("../img/about02_back.png") center center no-repeat;
	background-size: cover;
	position: absolute;
	right: 13px;
	bottom: 25px;
}

}


/* sc_about03
======================================================*/

.sc_about03 {
	width: 100%;
	height: 498px;
	background: url("../img/about03_back.jpg") center center no-repeat;
	background-size: cover;
	position: relative;
	padding: 126px 0 0 0;
}
.sc_about03 h2 {
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1;
	color: #fff;
	font-size: 30px;
	position: relative;
	z-index: 2;
}
.sc_about03 p {
	font-weight: 700;
	font-size: 50px;
	line-height: 1;
	color: #fff;
	width: calc( 100% - (( 100% - 1100px ) / 2 ) - 170px );
	margin: 60px 0 0 auto;
	padding: 0 0 22px 6px;
	box-sizing: border-box;
	border-bottom: solid 2px #fff;
	position: relative;
	z-index: 2;
}
.sc_about03 .img {
	width: 564px;
	height: 368px;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	background: url("../img/about03_img.png") center center no-repeat;
	background-size: cover;
	aspect-ratio: 564 / 368;
}

@media screen and (max-width: 1920px) {

.sc_about03 .img {
	width: 29.375%;
	height: auto;
}

}

@media screen and (max-width: 1024px) {

.sc_about03 {
	height: 440px;
	padding: 60px 0 0 0;
}
.sc_about03 h2 {
	font-size: 28px;
}
.sc_about03 p {
	font-weight: 700;
	font-size: 40px;
	line-height: 1.66;
	margin: 25px 0 0 auto;
	box-sizing: border-box;
	border-bottom: solid 1px #fff;
}
.sc_about03 .img {
	width: 360px;
	height: auto;
}
}

@media screen and (max-width: 900px) {

.sc_about03 p {
	width: calc( 100% - 35px );
}
}

@media screen and (max-width: 768px) {

.sc_about03 .img {
	width: 244px;
	height: auto;
}

}

@media screen and (max-width: 599px) {

.sc_about03 {
	width: 100%;
	height: 384px;
	padding: 46px 0 0 0;
	background: url("../img/about03_back_sp.jpg") center center no-repeat;
	background-size: 100% 100%;
}
.sc_about03 h2 {
	font-size: 26px;
}
.sc_about03 p {
	font-weight: 700;
	font-size: 30px;
	line-height: 1.66;
	width: calc( 100% - 35px );
	margin: 25px 0 0 auto;
	padding: 0 0 26px 2px;
	box-sizing: border-box;
	border-bottom: solid 1px #fff;
}
.sc_about03 .img {
	width: 244px;
	height: auto;
}

}


/* sc_about04
======================================================*/

.sc_about04 {
	padding: 110px 0 0 0;
}
.about04_content {
	margin-top: 40px;
	width: 100%;
	max-width: 914px;
}
.about04_content dl {
	display: -webkit-flex;
	display: flex;
	border-bottom: solid 1px #009798;
}
.about04_content dl dt {
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 1;
	color: #009798;
	width: 190px;
	padding: 25px 0;
}
.about04_content dl dd {
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 2;
	width: calc( 100% - 190px );
	padding: 15px 0 13px 0;
}

@media screen and (max-width: 1024px) {

.sc_about04 {
	padding: 98px 0 0 0;
}
.about04_content dl dt {
	font-size: 18px;
	width: 160px;
	padding: 25px 0;
}
.about04_content dl dd {
	font-size: 18px;
	width: calc( 100% - 160px );
	padding: 15px 0 13px 0;
}
}

@media screen and (max-width: 599px) {

.sc_about04 {
	padding: 86px 0 0 0;
}

.about04_content {
	margin-top: 0px;
}

.about04_content dl {
	display: block;
}
.about04_content dl dt {
	font-size: 16px;
	width: 100%;
	padding: 20px 0 11px 0;;
}
.about04_content dl dd {
	font-size: 16px;
	line-height: 1.875;
	width: 100%;
	padding: 0px 0 13px 0;
}

}


/* sc_about05
======================================================*/

.sc_about05 {
	padding: 110px 0 130px 0;
}
.gmap {
	margin-top: 46px;
	width: 100%;
	height: 373px;
	border-radius: 20px;
	overflow: hidden;
}
.gmap iframe {
	width: 100%;
	height: 373px;
}
@media screen and (max-width: 1024px) {

.sc_about05 {
	padding: 98px 0 85px 0;
}
}

@media screen and (max-width: 599px) {

.sc_about05 {
	padding: 86px 0 40px 0;
}
.gmap {
	margin-top: 24px;
}
}


/* sc_service01
======================================================*/

.sc_service01 {
	padding: 95px 0 0px 0;
}
.service01_content {
	margin-top: 63px;
}
.service01_content ol {
	list-style: none;
	counter-reset: number 0;
}
.service01_content ol li {
	display: -webkit-flex;
	display: flex;
	padding: 0 0 0 80px;
	position: relative;
}
.service01_content ol li:not(:first-child) {
	margin-top: 64px;
}
.service01_content ol li::before {
	display: block;
	position: absolute;
	top: -23px;
	left: 0px;
	width: 80px;
	height: 80px;
	background: url("../img/sv01_list.svg") right bottom no-repeat;
	counter-increment: number 1;
	content: counter(number, decimal-leading-zero) " ";
	font-family: "Fugaz One", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 30px;
	letter-spacing: 0.05em;
	color: #fff;
	box-sizing: border-box;
	padding: 26px 0 0 19px;
}
.service01_content ol li dl {
	width: 550px;
}
.service01_content ol li dl dt {
	font-weight: 700;
	font-size: 24px;
	line-height: 1.66;
	padding-top: 7px;
}
.service01_content ol li dl dd {
	font-weight: 700;
	font-size: 16px;
	line-height: 2.25;
	margin-top: 12px;
	padding-right: 80px;
}

.service01_content ol li .img {
	width: calc( 100% - 550px );
	position: relative;
}
.service01_content ol li .img img {
	border-radius: 20px;
	position: relative;
	z-index: 2;
	width: calc( 100% - 20px );
	height: auto;
}
.service01_content ol li .img::after {
	content:"";
	display: block;
	position: absolute;
	top: 20px;
	right: 0px;
	aspect-ratio: 450 / 288;
	width: calc( 100% - 20px );
	height: auto;
	background: url("../img/sv01_img_back.jpg") right bottom no-repeat;
	border-radius: 20px;
}

@media screen and (max-width: 1024px) {

.sc_service01 {
	padding: 66px 0 0px 0;
}
.service01_content {
	margin-top: 47px;
}
.service01_content ol li {
	padding: 0 0 0 66px;
}
.service01_content ol li:not(:first-child) {
	margin-top: 40px;
}
.service01_content ol li::before {
	display: block;
	position: absolute;
	top: -10px;
	left: 0px;
	width: 58px;
	height: 58px;
	background: url("../img/sv01_list.svg") right bottom no-repeat;
	background-size: cover;
	font-size: 22px;
	color: #fff;
	padding: 18px 0 0 14px;
}
.service01_content ol li dl {
	width: 420px;
}
.service01_content ol li dl dt {
	font-size: 20px;
	line-height: 1.66;
	padding-top: 7px;
}
.service01_content ol li dl dd {
	font-size: 16px;
	line-height: 1.875;
	margin-top: 12px;
	padding-right: 20px;
	text-align: justify;
	word-break: break-all;
}
.service01_content ol li .img {
	width: calc( 100% - 420px );
}
.service01_content ol li .img img {
	border-radius: 10px;
	width: calc( 100% - 14px );
	height: auto;
}
.service01_content ol li .img::after {
	top: 14px;
	right: 0px;
	aspect-ratio: 450 / 288;
	width: calc( 100% - 14px );
	height: auto;
	background: url("../img/sv01_img_back.jpg") right bottom no-repeat;
	border-radius: 10px;
}

}

@media screen and (max-width: 800px) {

.service01_content ol li {
	display: block;
	position: relative;
}
.service01_content ol li dl {
	width: 100%;
}
.service01_content ol li .img {
	width: 420px;
	position: absolute;
	top: 90px;
	left: 66px;
}
.service01_content ol li dl dd {
	font-size: 16px;
	line-height: 1.875;
	margin-top: 300px;
	padding-right: 0px;
}
}

@media screen and (max-width: 599px) {

.sc_service01 {
	padding: 38px 0 0px 0;
}
.service01_content {
	margin-top: 30px;
}

.service01_content ol li {
	padding: 0 0 0 0px;
}
.service01_content ol li dl {
	width: 100%;
}
.service01_content ol li dl dt {
	padding-top: 4px;
	padding-left: 66px;
}
.service01_content ol li .img {
	width: 264px;
	position: absolute;
	top: 83px;
	left: 14px;
}
.service01_content ol li:nth-of-type(2) .img {
	top: 120px;
}
.service01_content ol li .img img {
	width: calc( 100% - 10px );
}
.service01_content ol li .img::after {
	top: 10px;
	right: 0px;
	aspect-ratio: 450 / 288;
	width: calc( 100% - 10px );
	height: auto;;
}
.service01_content ol li dl dd {
	margin-top: 200px;
}

}


/* sc_service02
======================================================*/

.sc_service02 {
	padding: 130px 0 120px 0;
}

.sc_service02 h3 {
	width: 378px;
	height: 98px;
	background: url("../img/sv02_title.svg") center center no-repeat;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	text-align: center;
	font-weight: 700;
	font-size: 24px;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	position: absolute;
	top: -49px;
	left: calc(( 100% - 378px ) / 2 );
}
.service02_content {
	box-sizing: border-box;
	position: relative;
	border-radius: 20px;
	border: solid 2px #82BD79;
	padding: 78px 0 65px 0;
	text-align: center;
}
.service02_content div {
	display: inline-block;
	text-align: left;
}
.service02_content dl {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	z-index: 2;
}
.service02_content dl dt {
	width: 273px;
	font-weight: 700;
	font-size: 20px;
	line-height: 1;
	letter-spacing: 0.05em;
	box-sizing: border-box;
	position: relative;
	padding: 31px 0 31px 86px;
}
.service02_content dl dd {
	width: calc( 100% - 273px );
	font-weight: 700;
	font-size: 16px;
	line-height: 1;
	letter-spacing: 0.05em;
	padding-left: 58px;
	box-sizing: border-box;
	position: relative;
	background: url("../img/sv02_list.svg") left center no-repeat;
}
.why01 dt::before {
	content:"";
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 56px;
	height: 53px;
	background: url("../img/sv02_01.svg") left top no-repeat;
}
.why02 dt::before {
	content:"";
	display: block;
	position: absolute;
	top: 5px;
	left: 0px;
	width: 56px;
	height: 68px;
	background: url("../img/sv02_02.svg") left top no-repeat;
}
.why03 dt::before {
	content:"";
	display: block;
	position: absolute;
	top: 16px;
	left: 0px;
	width: 56px;
	height: 54px;
	background: url("../img/sv02_03.svg") left top no-repeat;
}
.why04 dt::before {
	content:"";
	display: block;
	position: absolute;
	top: 15px;
	left: 0px;
	width: 56px;
	height: 56px;
	background: url("../img/sv02_04.svg") left top no-repeat;
}
.service02_content .img {
	display: block;
	width: 234px;
	height: 143px;
	background: url("../img/sv02_img02.svg") left top no-repeat;
	background-size: cover;
	position: absolute;
	right: -20px;
	bottom: -30px;
}

@media screen and (max-width: 1024px) {

.sc_service02 h3 {
	width: 302px;
	height: 78px;
	background: url("../img/sv02_title.svg") center center no-repeat;
	background-size: cover;
	font-size: 20px;
	top: -40px;
	left: calc(( 100% - 302px ) / 2 );
}
.service02_content {
	box-sizing: border-box;
	position: relative;
	border-radius: 20px;
	border: solid 2px #82BD79;
	padding: 60px 0 77px 0;
	text-align: center;
}
.service02_content dl {
	display: block;
	text-align: center;
}
.service02_content dl:not(:first-child) {
	margin-top: 35px;
}
.service02_content dl dt {
	width: auto;
	font-size: 20px;
	letter-spacing: 0.05em;
	padding: 0;
	display: inline-block;
}
.service02_content dl.why01 dt {
	padding-left: 45px;
}
.why01 dt::before {
	top: -10px;
	left: 0px;
	width: 36px;
	height: 34px;
	background: url("../img/sv02_01.svg") left top no-repeat;
	background-size: cover;
}
.service02_content dl.why02 dt {
	padding-left: 45px;
}
.why02 dt::before {
	top: -12px;
	left: 0px;
	width: 34px;
	height: 42px;
	background: url("../img/sv02_02.svg") left top no-repeat;
	background-size: cover;
}
.service02_content dl.why03 dt {
	padding-left: 50px;
}
.why03 dt::before {
	top: -12px;
	left: 0px;
	width: 39px;
	height: 37px;
	background: url("../img/sv02_03.svg") left top no-repeat;
	background-size: cover;
}

.service02_content dl.why04 dt {
	padding-left: 56px;
}
.why04 dt::before {
	top: -15px;
	left: 0px;
	width: 46px;
	height: 46px;
	background: url("../img/sv02_04.svg") left top no-repeat;
	background-size: cover;
}
.service02_content dl dd {
	width:100%;
	font-size: 16px;
	line-height: 1.875;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	text-align: center;
	padding-left: 0;
	box-sizing: border-box;
	position: relative;
	background: none;
	margin-top: 12px;
}
.service02_content .img {
	display: block;
	width: 168px;
	height: 102px;
	background: url("../img/sv02_img02.svg") left top no-repeat;
	background-size: cover;
	position: absolute;
	right: -17px;
	bottom: -40px;
}

}

@media screen and (max-width: 359px) {

.service02_content dl dd {
	font-size: 14px;
}

}


/* flow_list
======================================================*/

.flow_list.sc_service03 {
	background: url("../img/sv03_back.jpg") center center no-repeat;
	background-size: 100% 100%;
}
.flow_list.sc_partner03 {
	background: url("../img/pt03_back.jpg") center center no-repeat;
	background-size: 100% 100%;
}
.flow_content {
	margin-top: 90px;
	text-align: center;
}
.flow_content ol {
	list-style: none;
	counter-reset: number 0;
	display: inline-block;
	text-align: left;
}
.flow_content ol li::before {
	display: block;
	position: absolute;
	top: 8px;
	left: 0px;
	width: 60px;
	height: 73px;
	background: url("../img/flow_list.svg") left top no-repeat;
	counter-increment: number 1;
	content: counter(number, decimal-leading-zero) " ";
	font-family: "Fugaz One", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 30px;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	text-align: center;
	color: #82BD79;
	box-sizing: border-box;
	padding: 19px 0 0 0;
}
.flow_list.sc_partner03 .flow_content ol li::before {
	color: #FFC95E;
}
.flow_content ol li {
	padding: 0 0 0 90px;
	position: relative;
}
.flow_content dl {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	padding: 30px 0;
}
.flow_content dl dt {
	width: 167px;
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 0.05em;
}
.flow_content dl dd {
	width: calc( 100% - 167px );
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.05em;
	background: url("../img/flow_list02.svg") left center no-repeat;
	padding: 0 0 0 56px;
}

.flow_list.sc_partner03 .flow_content dl dt {
	width: 103px;
}
.flow_list.sc_partner03 .flow_content dl dd {
	width: calc( 100% - 103px );
}

@media screen and (max-width: 1024px) {

.flow_content dl {
	display: block;
	align-items: left;
	padding: 0px 0;
}
.flow_content dl dt {
	width: 100%;
}
.flow_content dl dd {
	width: 100%;
	background: none;
	padding: 0 0 0 0;
	line-height: 1.875;
	margin-top: 16px;
}
.flow_list.sc_partner03 .flow_content dl dt {
	width: 100%;
}
.flow_list.sc_partner03 .flow_content dl dd {
	width: 100%;
}

.flow_content ol li {
	padding: 0 0 0 57px;
	position: relative;
}
.flow_content ol li:not(:first-child) {
	margin-top: 26px;
}
.flow_content ol li::before {
	top: -15px;
	left: 0px;
	width: 47px;
	height: 57px;
	background: url("../img/flow_list.svg") left top no-repeat;
	background-size: cover;
	font-size: 22px;;
	padding: 16px 0 0 0;
}
}

@media screen and (max-width: 599px) {

.flow_content {
	margin-top: 32px;
}
.flow_list.sc_service03 {
	background: url("../img/sv03_back_sp.jpg") center center no-repeat;
	background-size: 100% 100%;
}
}



/* sc_service03
======================================================*/

.sc_service03 {
	padding: 90px 0 110px 0;
}

.sc_service03 .ft_txt {
	border-radius: 20px;
	background-color: #f7fff1;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	text-align: center;
	color: #E12F2F;
	padding: 35px 0;
	margin-top: 50px;
}

@media screen and (max-width: 1024px) {

.sc_service03 .ft_txt {
	line-height: 1.875;
	padding: 20px 0;
}

}

@media screen and (max-width: 599px) {

.sc_service03 .ft_txt {
	margin-top: 34px;
}

.sc_service03 {
	padding: 50px 0 50px 0;
}

}

@media screen and (max-width: 359px) {

.sc_service03 .ft_txt {
	font-size: 14px;
}
}


/* service_ft
======================================================*/

.service_ft {
	padding: 100px 0 120px 0;
}
.service_link_btn {
	margin: 0 auto 0 auto;
	width: 100%;
	max-width: 500px;
}
.fuki_sv {
	width: 334px;
	height: 81px;
	background: url("../img/fuki_sv.svg") center center no-repeat;
	text-align: center;
	padding-top: 25px;
	box-sizing: border-box;
	font-size: 16px;
	font-weight: 700;
	color: #E12F2F;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	margin: 0 auto 18px auto;
}

@media screen and (max-width: 1024px) {

.service_ft {
	padding: 70px 0 80px 0;
}

}

@media screen and (max-width: 599px) {

.service_ft {
	padding: 40px 0 40px 0;
}

.fuki_sv {
	width: 306px;
	height: 74px;
	background: url("../img/fuki_sv2.svg") center center no-repeat;
	padding-top: 23px;
}

}
@media screen and (max-width: 359px) {

.fuki_sv {
	width: 280px;
	height: 74px;
	background: url("../img/fuki_sv2.svg") center center no-repeat;
	background-size: 100% auto;
	padding-top: 21px;
	margin: 0 auto 10px auto;
}

}


/* sc_partner01
======================================================*/

.sc_partner01 {
	padding: 100px 0 0px 0;
}
.partner01_content {
	margin-top: 40px;
}
.partner01_content ul {
	list-style: none;
	width: 100%;
	max-width: 728px;
	margin: 0 auto;
}
.partner01_content ul li {
	border: solid 2px #FFC95E;
	border-radius: 20px;
	background-color: #f7f6f1;
	padding: 33px 0;
	font-weight: 700;
	font-size: 24px;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	text-align: center;
}
.partner01_content ul li:not(:first-child) {
	margin-top: 26px;
}

@media screen and (max-width: 1024px) {

.sc_partner01 {
	padding: 75px 0 0px 0;
}
.partner01_content {
	margin-top: 33px;
}
.partner01_content ul li {
	padding: 28px 0;
	font-size: 20px;
}
.partner01_content ul li:not(:first-child) {
	margin-top: 18px;
}

}

@media screen and (max-width: 599px) {

.sc_partner01 {
	padding: 50px 0 0px 0;
}
.partner01_content {
	margin-top: 25px;
}
.partner01_content ul li {
	padding: 18px 0;
	line-height: 1.5;
}
.partner01_content ul li:not(:first-child) {
	margin-top: 9px;
}
}


/* sc_partner02
======================================================*/

.sc_partner02 {
	padding: 110px 0 120px 0;
}
.partner02_content {
	margin-top: 40px;
}
.img_set01 {
	width: 100%;
	gap: 0 16px;
	display: -webkit-flex;
	display: flex;
}
.img_set01 .pt_mt_single {
	width: calc(( 100% - 32px ) / 3 );
}
.img_set02 {
	width: 100%;
	max-width: calc(( 728 / 1100 ) * 100% );
	gap: 0 16px;
	display: -webkit-flex;
	display: flex;
	margin: 28px auto 0 auto;
}
.img_set02 .pt_mt_single {
	width: calc(( 100% - 16px ) / 2 );
}

.pt_mt_single {
	box-sizing: border-box;
	text-align: center;
	padding: 28px 36px 26px 36px;
	border: solid 1px #FFC95E;
	background-color: #f7f6f1;
	border-radius: 20px;
}
.pt_mt_single p img {
	width: 100%;
	height: auto;
	border-radius: 20px;
}
.pt_mt_single dl {
	margin-top: 16px;
}
.pt_mt_single dl dt {
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	text-align: center;
	line-height: 1;
}
.pt_mt_single dl dd {
	font-weight: 700;
	font-size: 16px;
	text-align: center;
	line-height: 1.875;
	margin-top: 11px;
}
.pt02_br {
	display: none;
}

@media screen and (max-width: 1200px) {

.pt_mt_single dl dd {
	font-size: 14px;
}

}

@media screen and (max-width: 1024px) {

.sc_partner02 {
	padding: 100px 0 95px 0;
}
.partner02_content {
	margin-top: 30px;
}
.pt_mt_single p {
	padding: 0 16px;
}
.pt_mt_single {
	padding: 20px 20px 26px 20px;
}
.pt02_br {
	display: block;
}
}

@media screen and (max-width: 760px) {

.img_set01 {
	width: 100%;
	max-width: 460px;
	display: block;
	margin: 0 auto;
}
.img_set02 {
	width: 100%;
	max-width: 460px;
	display: block;
	margin: 0px auto 0 auto;
}
.img_set01 .pt_mt_single {
	width: 100%;
}
.img_set02 .pt_mt_single {
	width: 100%;
}
.img_set01 .pt_mt_single:not(:first-child),
.img_set02 .pt_mt_single {
	margin-top: 16px;
}
.pt_mt_single dl dd {
	font-size: 16px;
}
.pt02_br {
	display: none;
}

}

@media screen and (max-width: 599px) {

.sc_partner02 {
	padding: 80px 0 70px 0;
}
.partner02_content {
	margin-top: 20px;
}
}

@media screen and (max-width: 359px) {

.pt_mt_single dl dd {
	font-size: 14px;
}

}


/* sc_partner03
======================================================*/

.sc_partner03 {
	padding: 110px 0 128px 0;
}
.sc_partner03 .ft_txt {
	border-radius: 20px;
	background-color: #fffbd4;
	margin-top: 60px;
	padding: 52px 0  60px 0;
	text-align: center;
}
.sc_partner03 .ft_txt h3 {
	text-align: center;
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	line-height: 1;
}
.sien_set {
	display: inline-block;
	margin-top: 36px;
}
.sien_set dl {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	text-align: left;
}
.sien_set dl dt {
	width: 220px;
	background: url("../img/sien_list.svg") left center no-repeat;
	box-sizing: border-box;
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 0.05em;
	padding: 16px 0 16px 36px;
}
.sien_set dl dd {
	width: calc( 100% - 220px );
	padding-left: 57px;
	box-sizing: border-box;
	background: url("../img/sien_list02.svg") left center no-repeat;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.05em;
}
@media screen and (max-width: 1024px) {

.sc_partner03 {
	padding: 85px 0 96px 0;
}
.sien_set {
	margin-top: 30px;
}
}

@media screen and (max-width: 800px) {

.sien_set dl {
	display: block;
}
.sien_set dl:not(:first-child) {
	margin-top: 9px;
}
.sien_set dl dt {
	width: 100%;
	padding: 16px 0 16px 36px;
}
.sien_set dl dd {
	width: 100%;
	padding-left: 36px;
	background: none;
}
}

@media screen and (max-width: 599px) {

.sc_partner03 {
	padding: 60px 0 64px 0;
}
.sc_partner03 .ft_txt {
	border-radius: 10px;
	margin-top: 30px;
	padding: 30px 20px  30px 20px;
	box-sizing: border-box;
}
.sc_partner03 .ft_txt h3 {
	line-height: 1.5;
}
.sien_set {
	margin-top: 0px;
}
.sien_set dl dt {
	width: 100%;
	padding: 16px 0 11px 36px;
}
.sien_set dl dd {
	line-height: 1.875;
}
}


/* sc_pp
======================================================*/

.sc_pp {
	padding: 82px 0 150px 0;
}
.sc_pp .pp_head_txt {
	font-weight: 500;
	font-size: 16px;
	line-height: 1.875;
}
.sc_pp dl {
	margin-top: 31px;
}
.sc_pp dl dt {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.875;
}
.sc_pp dl dd {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.875;
}
.sc_pp dl dd ul {
	margin-left: 1.5em;
	margin-top: 30px;
}
.sc_pp .pp_foot_txt {
	font-weight: 500;
	font-size: 16px;
	line-height: 1.875;
	margin-top: 30px;
}

@media screen and (max-width: 1024px) {

.sc_pp {
	padding: 60px 0 95px 0;
}

}

@media screen and (max-width: 599px) {

.sc_pp {
	padding: 40px 0 40px 0;
}
.sc_pp dl {
	margin-top: 20px;
}
.sc_pp dl dd ul {
	margin-top: 20px;
}
.sc_pp .pp_foot_txt {
	margin-top: 20px;
}

}


/* sc_thanks
======================================================*/

.sc_thanks {
	padding: 90px 0 120px 0;
	text-align: center;
}
.sc_thanks h1 {
	font-weight: 700;
	font-size: 30px;
	line-height: 1;
}
.sc_thanks p {
	font-size: 16px;
	line-height: 1.875;
	margin: 45px 0 58px 0;
}

.go_top {
	width: 290px;
	margin: 0 auto;
}
.go_top a {
	width: 100%;
	height: 70px;
	position: relative;
	border-radius: 100vh;
	overflow: hidden;
	background-color: #464646;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	text-align: center;
	box-sizing: border-box;
	transition: background-color 0.5s ease;
}
.go_top a:hover {
	background-color: #EBE9DE;
}
.go_top a::before {
	transition: transform 0.5s ease;
	display: block;
	content: "";
	width: 100%;
	height: 70px;
	background-color: #EBE9DE;
	position: absolute;
	top: 0;
	right: 0;
	transform: scaleX(0);
	transform-origin: right;
}
.go_top a:hover::before {
	transform: scaleX(1);
	transform-origin: left;
}
.go_top a::after {
	transition: transform 0.5s ease;
	border-radius: 100vh;
	display: block;
	content: "";
	width: 100%;
	height: 70px;
	position: absolute;
	top: 0;
	right: 0;
	box-sizing: border-box;
	border: solid 2px #464646;
}
.go_top a .txt {
	position: relative;
	z-index: 2;
	font-weight: 700;
	font-size: 20px;
	color: #EBE9DE;
	transition: color 0.5s ease;
}
.go_top a:hover .txt {
	color: #464646;
}


@media screen and (max-width: 599px) {

.sc_thanks {
	padding: 60px 0 46px 0;
	text-align: center;
}
.sc_thanks h1 {
	font-size: 20px;
	line-height: 1.875;
}
.sc_thanks p {
	font-size: 16px;
	line-height: 1.875;
	margin: 26px 0 30px 0;
	text-align: left;
}

.go_top {
	width: 260px;
	margin: 0 auto;
}
.go_top a {
	height: 60px;
}
.go_top a::after {
	height: 60px;
}
.go_top a .txt {
	font-size: 18px;
}

}

/* collection_header
======================================================*/

.collection_header {
	position: relative;
}
.collection_hd_ct {
	position: absolute;
	top: 0;
	right: calc(( 100% - 1100px ) / 2 );
	width: 450px;
	border-left: solid 1px #707070;
	padding: 24px 0 0 20px;
	box-sizing: border-box;
}
.collection_hd_ct p {
	font-weight: 700;
	font-size: 16px;
	line-height: 1;
	letter-spacing: 0.05em;
}
.collection_hd_ct ul {
	list-style: none;
	margin-top: 16px;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 12px 16px;
}
.collection_hd_ct ul li {
	width: calc(( 100% - 36px ) / 3 );
}
.collection_hd_ct ul li a {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	text-align: center;
	border-radius: 100vh;
	color: #EBE9DE;
	font-family: "Fugaz One", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 14px;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	text-align: center;
	height: 28px;
	opacity: 1;
	transition: opacity 0.3s;
}
.collection_hd_ct ul li a:hover {
	opacity: 0.7;
}

.collection_hd_ct_illust a {
	background-color: #5A61A7;
}
.collection_hd_ct_creation a {
	background-color: #E12F2F;
}
.collection_hd_ct_painting a {
	background-color: #82BD79;
}
.collection_hd_ct_category a {
	background-color: #009798;
}
.collection_hd_ct_all a {
	background-color: #464646;
}

@media screen and (max-width: 1200px) {

.collection_header {
	border-bottom: solid 1px #707070;
	padding-bottom: 60px;
}
.collection_hd_ct {
	right: 36px;
}

}

@media screen and (max-width: 1024px) {

.collection_hd_ct {
	position: relative;
	top: auto;
	right: auto;
	width: 450px;
	border-left: solid 0px #707070;
	padding: 24px 0 0 36px;
	box-sizing: border-box;
}
.collection_hd_ct ul li {
	width: calc(( 100% - 36px ) / 3 );
}
}

@media screen and (max-width: 599px) {

.collection_header {
	padding-bottom: 50px;
}
.collection_hd_ct {
	position: relative;
	top: auto;
	right: auto;
	width: 305px;
	border-left: solid 0px #707070;
	padding: 16px 0 0 36px;
	box-sizing: border-box;
}
.collection_hd_ct ul {
	margin-top: 16px;
	gap: 12px 18px;
}
.collection_hd_ct ul li {
	width: calc(( 100% - 18px ) / 2 );
}

}

@media screen and (max-width: 374px) {

.collection_hd_ct {
	padding: 16px 0 0 15px;
}

}


/* page_collection_list
======================================================*/

.page_collection_list {
	padding: 84px 0 120px 0;
}

@media screen and (max-width: 1024px) {

.page_collection_list {
	padding: 60px 0 90px 0;
}

}

@media screen and (max-width: 599px) {

.page_collection_list {
	padding: 40px 0 60px 0;
}

}


/* sc_collection_single
======================================================*/

.sc_collection_single {
	padding: 84px 0 120px 0;
}

.collection_single_ct_box {
	display: -webkit-flex;
	display: flex;
	gap: 0 4px;
}
.single_collection_ct {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	text-align: center;
	width: 170px;
	height: 38px;
	font-family: "Fugaz One", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 14px;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	border-radius: 100vh;
	color: #EBE9DE;
}
.single_collection_ct_illust {
	background-color: #5A61A7;
}
.single_collection_ct_creation {
	background-color: #E12F2F;
}
.single_collection_ct_painting {
	background-color: #82BD79;
}
.single_collection_ct_category {
	background-color: #009798;
}
.single_collection_ct_all {
	background-color: #464646;
}
.collection_titile_h1 {
	font-weight: 700;
	font-size: 30px;
	line-height: 1.3;
	margin: 20px 0;
}
.sc_collection_single .art_img {
	text-align: center;
}
.sc_collection_single .art_img img {
	max-width: 100%;
	height: auto;
}
.artwork_data {
	margin-top: 68px;
}
.artwork_data .artwork_data_h2 {
	font-family: "Fugaz One", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 30px;
	letter-spacing: 0.05em;
	color: #E12F2F;
	line-height: 1;
}
.artwork_data_info {
	border-top: solid 1px #707070;
	margin-top: 30px;
}
.artwork_data_info dl {
	display: -webkit-flex;
	display: flex;
	padding: 30px 0;
	border-bottom: solid 1px #707070;
}
.artwork_data_info dl dt {
	width: 220px;
	box-sizing: border-box;
	font-family: "Fugaz One", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 20px;
	letter-spacing: 0.05em;
	color: #E12F2F;
	line-height: 1;
}
.artwork_data_info dl dd {
	width: calc( 100% - 220px );
	box-sizing: border-box;
	font-weight: 700;
}
.artwork_data_info dl dd .jp {
	font-size: 20px;
	display: inline-block;
}
.artwork_data_info dl dd .en {
	font-size: 16px;
	display: inline-block;
	margin-left: 12px;
}
.artwork_data_info dl dd .year {
	font-size: 20px;
}
.artwork_data_info dl dd .concept {
	font-size: 16px;
	line-height: 1.875;
	position: relative;
	top: -4px;
}

.go_collection_list {
	width: 290px;
	margin: 70px auto 0 auto;
}
.go_collection_list a {
	width: 100%;
	height: 70px;
	position: relative;
	border-radius: 100vh;
	overflow: hidden;
	background-color: #E12F2F;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	text-align: center;
	box-sizing: border-box;
	transition: background-color 0.5s ease;
}

.go_collection_list a::before {
	transition: transform 0.5s ease;
	display: block;
	content: "";
	width: 100%;
	height: 70px;
	background-color: #464646;
	position: absolute;
	top: 0;
	right: 0;
	transform: scaleX(0);
	transform-origin: right;
}
.go_collection_list a:hover::before {
	transform: scaleX(1);
	transform-origin: left;
}
.go_collection_list a .txt {
	position: relative;
	z-index: 2;
	font-weight: 700;
	font-size: 20px;
	color: #EBE9DE;
	transition: color 0.5s ease;
}

@media screen and (max-width: 1024px) {

.sc_collection_single {
	padding: 70px 0 105px 0;
}
.artwork_data {
	margin-top: 52px;
}
.artwork_data .artwork_data_h2 {
	font-size: 20px;
}
.artwork_data_info dl {
	padding: 24px 0;
}
.artwork_data_info dl dt {
	width: 180px;
	font-size: 16px;
}
.artwork_data_info dl dd {
	width: calc( 100% - 180px );
}
.go_collection_list {
	width: 290px;
	margin: 50px auto 0 auto;
}

}

@media screen and (max-width: 599px) {

.single_collection_ct {
	width: 124px;
	height: 26px;
	font-size: 14px;
}

.sc_collection_single {
	padding: 60px 0 90px 0;
}
.collection_titile_h1 {
	font-size: 20px;
	margin: 10px 0 27px 0;
}
.artwork_data {
	margin-top: 36px;
}
.artwork_data_info dl {
	display: block;
	padding: 24px 0;
	border-bottom: solid 1px #707070;
}
.artwork_data_info dl dt {
	width: 100%;
}
.artwork_data_info dl dd {
	width: 100%;
	margin-top: 15px;
}

.go_collection_list {
	width: 100%;
	max-width: 302px;
	margin: 30px auto 0 auto;
}
.go_collection_list a {
	height: 64px;
}

.go_collection_list a::before {
	height: 64px;
}
.go_collection_list a .txt {
	font-size: 16px;
}

}


/* sc_item_list
======================================================*/

.sc_item_list {
	padding: 100px 0 0px 0;
}
.sc_item_list h2 {
	font-weight: 700;
	font-size: 26px;
	line-height: 1;
	color: #E12F2F;
}
.item_list_content {
	margin-top: 36px;
}
.item_list_content ul {
	display: -webkit-flex;
	display: flex;
	list-style: none;
	gap: 16px 16px;
}
.item_list_content ul li {
	width: calc(( 100% - 32px ) / 2 );
}
.item_list_content ul li .img {
	display: block;
}
.item_list_content ul li .img img {
	width: 100%;
	height: auto;
	aspect-ratio: 356 / 230;
	object-fit: cover;
	object-position: center center;
	border-radius: 24px;
}
.item_list_content ul li .title {
	font-weight: 700;
	font-size: 20px;
	line-height: 1.6;
	color: #464646;
	margin-top: 20px;
	display: block;
}

@media screen and (max-width: 1024px) {

.sc_item_list {
	padding: 90px 0 0px 0;
}
.sc_item_list h2 {
	font-size: 23px;
}
.item_list_content ul {
	display: -webkit-flex;
	display: flex;
	list-style: none;
	gap: 10px 10px;
}
.item_list_content ul li {
	width: calc(( 100% - 20px ) / 2 );
}
.item_list_content ul li .img img {
	border-radius: 14px;
}
.item_list_content ul li .title {
	font-size: 16px;
	margin-top: 15px;
}
}

@media screen and (max-width: 599px) {

.sc_item_list {
	padding: 80px 0 0px 0;
}
.item_list_content {
	margin-top: 25px;
}
.sc_item_list h2 {
	font-size: 20px;
}
.item_list_content ul {
	display: block;
}
.item_list_content ul li {
	width: 100%;
}
.item_list_content ul li:not(:first-child) {
	margin-top: 27px;
}

}


/* sc_news_list
======================================================*/

.sc_news_list {
	padding: 124px 0 120px 0;
}

@media screen and (max-width: 1024px) {

.sc_news_list {
	padding: 93px 0 90px 0;
}

}

@media screen and (max-width: 599px) {

.sc_news_list {
	padding: 62px 0 60px 0;
}

}


/* sc_news_single
======================================================*/

.sc_news_single {
	padding: 90px 0 120px 0;
}
.news_single .date {
	font-weight: 700;
	font-size: 24px;
	line-height: 1;
}
.news_single .news_title {
	font-weight: 700;
	font-size: 30px;
	line-height: 1.3;
	margin-top: 20px;
}

.go_news_list {
	width: 290px;
	margin: 70px auto 0 auto;
}
.go_news_list a {
	width: 100%;
	height: 70px;
	position: relative;
	border-radius: 100vh;
	overflow: hidden;
	background-color: #5A61A7;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	text-align: center;
	box-sizing: border-box;
	transition: background-color 0.5s ease;
}

.go_news_list a::before {
	transition: transform 0.5s ease;
	display: block;
	content: "";
	width: 100%;
	height: 70px;
	background-color: #464646;
	position: absolute;
	top: 0;
	right: 0;
	transform: scaleX(0);
	transform-origin: right;
}
.go_news_list a:hover::before {
	transform: scaleX(1);
	transform-origin: left;
}
.go_news_list a .txt {
	position: relative;
	z-index: 2;
	font-weight: 700;
	font-size: 20px;
	color: #EBE9DE;
	transition: color 0.5s ease;
}


@media screen and (max-width: 1024px) {

.sc_news_single {
	padding: 68px 0 90px 0;
}
.news_single .date {
	font-size: 20px;
}
.news_single .news_title {
	font-size: 26px;
	margin-top: 20px;
}

}

@media screen and (max-width: 599px) {

.sc_news_single {
	padding: 45px 0 60px 0;
}

.news_single .date {
	font-size: 18px;
}
.news_single .news_title {
	font-size: 24px;
	margin-top: 14px;
}

.go_news_list {
	width: 100%;
	max-width: 302px;
	margin: 30px auto 0 auto;
}
.go_news_list a {
	height: 64px;
}

.go_news_list a::before {
	height: 64px;
}
.go_news_list a .txt {
	font-size: 16px;
}

}


/* pager
======================================================*/

.pager {
	margin-top: 100px;
	text-align: center;
}
.pager nav {
	display: inline-block;
}
.pager .nav-links {
	display: -webkit-flex;
	display: flex;
	gap: 0 18px;
}
.pager a,
.pager .dots {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	text-align: center;
	width: 58px;
	height: 58px;
	border-radius: 100%;
	background-color: #5A61A7;
	color: #EBE9DE;
	font-family: "Fugaz One", sans-serif;
	font-weight: 400;
	font-style: normal;
	transition: background-color 0.3s;
	font-size: 20px;
}
.pager a:hover {
	background-color: #464646;
}
.pager .current {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	text-align: center;
	width: 58px;
	height: 58px;
	border-radius: 100%;
	background-color: #464646;
	color: #EBE9DE;
	font-family: "Fugaz One", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 20px;
}

.pager_collection a {
	background-color: #E12F2F;
}
.pager_collection a:hover {
	background-color: #464646;
}

@media screen and (max-width: 1024px) {

.pager .nav-links {
	gap: 0 10px;
}
.pager a,
.pager .dots {
	width: 40px;
	height: 40px;
	font-size: 18px;
}
.pager .current {
	width: 40px;
	height: 40px;
	font-size: 18px;
}
}

@media screen and (max-width: 599px) {

.pager {
	margin-top: 50px;
	text-align: center;
}
.pager .nav-links {
	gap: 0 6px;
}
.pager a,
.pager .dots {
	width: 30px;
	height: 30px;
	font-size: 16px;
}
.pager .current {
	width: 30px;
	height: 30px;
	font-size: 16px;
}

}

@media screen and (max-width: 349px) {

.pager {
	margin-top: 50px;
	text-align: center;
}
.pager .nav-links {
	gap: 0 4px;
}
.pager a,
.pager .dots {
	width: 26px;
	height: 26px;
	font-size: 14px;
}
.pager .current {
	width: 26px;
	height: 26px;
	font-size: 14px;
}

}




/* news_single_post
======================================================*/

.news_single_post {
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-weight: 400;
	font-style: normal;
	margin-top: 60px;
}
.news_single_post h1,
.news_single_post h2,
.news_single_post h3,
.news_single_post h4,
.news_single_post h5,
.news_single_post h6 {
	line-height: 1.4;
	font-weight: 700;
	margin-top: 60px;
}
.news_single_post h1 { font-size: 30px; }
.news_single_post h2 { font-size: 26px; }
.news_single_post h3 { font-size: 20px; }
.news_single_post h4 { font-size: 18px; }
.news_single_post h5 { font-size: 16px; }
.news_single_post h6 { font-size: 14px; }

.news_single_post p {
	font-size: 16px;
	line-height: 1.875;
	font-weight: 700;
	margin-top: 50px;
}

.news_single_post ul {
	margin-top: 50px;
}
.news_single_post ul li {
	font-size: 16px;
	line-height: 1.875;
	font-weight: 700;
	margin-left: 1.5em;
}
.news_single_post .wp-block-button {
	width: 100%;
	margin-top: 60px;
}

.news_single_post .wp-block-button a {
	display: block;
	width: 100%;
	max-width: 542px;
	height: 86px;
	margin: 0 auto;
	font-weight: 700;
	font-size: 20px;
	color: #EBE9DE;
	background-color: #5A61A7;
	transition: background-color 0.3s;
}
.news_single_post .wp-block-button a:hover {
	background-color: #464646;
}

.news_single_post .wp-block-image {
	margin-top: 60px;
	text-align: center;
}
.news_single_post .wp-block-image img {
	max-width: 100%;
	border-radius: 24px;
}
.news_single_post .wp-block-gallery .wp-block-image {
	margin-top: 0px;
}
.news_single_post .wp-block-gallery {
	margin-top: 60px;
}
.news_single_post .wp-block-image + .wp-block-gallery,
.news_single_post .wp-block-gallery + .wp-block-image,
.news_single_post .wp-block-image + .wp-block-image,
.news_single_post .wp-block-gallery + .wp-block-gallery {
	margin-top: 16px;
}
.single_top + * {
	margin-top: 0;
}

.news_single_post h1 + *,
.news_single_post h2 + *,
.news_single_post h3 + *,
.news_single_post h4 + *,
.news_single_post h5 + *,
.news_single_post h6 + * {
	margin-top: 20px;
}

@media screen and (max-width: 1024px) {

.news_single_post {
	margin-top: 45px;
}

}

@media screen and (max-width: 599px) {

.news_single_post {
	margin-top: 30px;
}
.news_single_post h1,
.news_single_post h2,
.news_single_post h3,
.news_single_post h4,
.news_single_post h5,
.news_single_post h6 {
	margin-top: 30px;
}
.news_single_post h1 { font-size: 26px; }
.news_single_post h2 { font-size: 20px; }
.news_single_post h3 { font-size: 16px; }
.news_single_post h4 { font-size: 14px; }
.news_single_post h5 { font-size: 12px; }
.news_single_post h6 { font-size: 10px; }

.news_single_post p {
	margin-top: 30px;
}

.news_single_post ul {
	margin-top: 30px;
}

.news_single_post h1 + *,
.news_single_post h2 + *,
.news_single_post h3 + *,
.news_single_post h4 + *,
.news_single_post h5 + *,
.news_single_post h6 + * {
	margin-top: 10px;
}

.news_single_post .wp-block-button {
	width: 100%;
	margin-top: 45px;
}

.news_single_post .wp-block-button a {
	height: 70px;
	font-size: 18px;
}

.news_single_post .wp-block-image {
	margin-top: 30px;
	text-align: center;
}
.news_single_post .wp-block-image img {
	border-radius: 12px;
}
.news_single_post .wp-block-gallery {
	margin-top: 30px;
	display: block;
	width: 100%;
}
.news_single_post .wp-block-gallery.has-nested-images .wp-block-image {
	width: 100%!important;
	margin-top: 12px!important;
}
.news_single_post .wp-block-image + .wp-block-gallery,
.news_single_post .wp-block-gallery + .wp-block-image,
.news_single_post .wp-block-image + .wp-block-image,
.news_single_post .wp-block-gallery + .wp-block-gallery {
	margin-top: 12px;
}
}


/* contact_form
======================================================*/

.sc_contact {
	padding: 84px 0 120px 0;
}
.contact_form {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
}
.contact_form dl {
	display: -webkit-flex;
	display: flex;
}
.contact_form dl:not(:first-child) {
	margin-top: 40px;
}
.contact_form dl dt {
	width: 278px;
	font-weight: 700;
	font-size: 20px;
	padding-top: 24px;
	position: relative;
}
.contact_form dl dt span.req {
	font-size: 16px;
	color: #E12F2F;
	position: relative;
	display: inline-block;
	top: -2px;
	margin-left: 15px;
}
.contact_form dl dd {
	width: calc( 100% - 278px );
	position: relative;
}
.contact_form .form_pcode_box {
	width: 100%;
	max-width: 212px;
	display: block;
	position: relative;
}
.post_code_txt {
	font-weight: 700;
	font-size: 20px;
	line-height: 1;
	position: absolute;
	left: 22px;
	top: 22px;
	z-index: 2;
}
.contact_form .form_ad_box {
	display: block;
	position: relative;
	margin-top: 10px;
}
.contact_form .form_txt {
	border-radius: 20px;
	border: solid 1px #707070;
	background-color: #fff;
	box-sizing: border-box;
	width: 100%;
	height: 64px;
	padding: 0 20px;
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 18px;
	display: block;
}
.contact_form .form_txt.form_pcode {
	padding: 0 20px 0 50px;
}
.contact_form .form_txt.form_txtarea {
	padding: 20px 20px;
	height: 248px;
	line-height: 1.4;
}
#doi {
	font-weight: 700;
	font-size: 20px;
	line-height: 1;
	text-align: center;
	margin: 70px 0 0 0;
}
#doi a {
	color: #464646;
	opacity: 1;
	transition: opacity 0.3s;
	text-decoration: underline;
}
#doi a:hover {
	opacity: 0.7;
}

#doi .wpcf7-list-item-label {
	display: none;
}
#doi input[type=checkbox] {
	margin-right: 6px;
	position: relative;
	top: 1px;
	width: 22px;
	height: 22px;
	box-sizing: border-box;
	border: solid 1px #707070;
	position: relative;
	top: 4px;
}
.contact_form .send {
	text-align: center;
	margin-top: 53px;
}
.contact_form .send input {
	width: 290px;
	height: 70px;
	border-radius: 100vh;
	background-color: #464646;
	color: #EBE9DE;
	border: solid 2px #464646;
	font-weight: 700;
	font-size: 20px;
	box-sizing: border-box;
	transition: all 0.3s;
	letter-spacing: 2em;
	text-indent: 2em;
}
.contact_form .send input:hover {
	background-color: #EBE9DE;
	color: #464646;
}

@media screen and (max-width: 1024px) {

.sc_contact {
	padding: 60px 0 90px 0;
}
.contact_form dl:not(:first-child) {
	margin-top: 30px;
}
.contact_form dl dt {
	width: 220px;
	font-size: 18px;
	padding-top: 20px;
}
.contact_form dl dt span.req {
	font-size: 14px;
	top: -2px;
	margin-left: 15px;
}
.contact_form dl dd {
	width: calc( 100% - 220px );
}
.contact_form .form_txt {
	border-radius: 14px;
	height: 64px;
	padding: 0 16px;
	font-size: 18px;
}
.contact_form .form_txt.form_txtarea {
	padding: 16px 16px;
}
.contact_form .form_txt.form_pcode {
	padding: 0 16px 0 50px;
}
}

@media screen and (max-width: 800px) {

.contact_form dl {
	display: block;
}
.contact_form dl dt {
	width: 100%;
	font-size: 18px;
	padding-top: 0px;
	padding-bottom: 10px;
}
.contact_form dl dd {
	width: 100%;
}
.contact_form .form_txt.form_txtarea {
	height: 200px;
}
#doi {
	font-size: 18px;
	margin: 40px 0 0 0;
	text-align: left;
}
#doi input[type=checkbox] {
	top: 6px;
}

}


@media screen and (max-width: 599px) {

.sc_contact {
	padding: 42px 0 60px 0;
}
.contact_form dl dt {
	font-size: 16px;
	padding-bottom: 8px;
}
.contact_form dl dt span.req {
	font-size: 12px;
	top: 0px;
	margin-left: 10px;
}
.post_code_txt {
	font-weight: 700;
	font-size: 16px;
	line-height: 1;
	position: absolute;
	left: 10px;
	top: 14px;
	z-index: 2;
}
.contact_form .form_txt {
	border-radius: 6px;
	height: 46px;
	padding: 0 6px;
	font-size: 16px;
}
.contact_form .form_txt.form_txtarea {
	padding: 6px 6px;
	height: 160px;
}
.contact_form .form_txt.form_pcode {
	padding: 0 6px 0 30px;
}
#doi {
	font-size: 16px;
	margin: 30px 0 0 0;
}
.contact_form .send {
	text-align: center;
	margin-top: 40px;
}
.contact_form .send input {
	width: 240px;
	height: 56px;
	font-size: 18px;
}

}


/* contactform7設定
======================================================*/

.wpcf7-not-valid-tip{
   box-sizing: border-box;
   border-bottom: 1px dotted #CB4A2D;
   color: #CB4A2D;
   margin-top: 10px;
   margin-bottom: 10px;
   padding: 6px 6px 6px 40px;
   text-indent: -30px;
   font-size: 16px;
}
.wpcf7-not-valid-tip::before{
   content: "";
   background: url(../img/sankaku.png) no-repeat center/cover;
   display: inline-block;
   margin-right: 10px;
   margin-bottom: 4px;
   vertical-align: middle;
   width: 20px;
   height: 18px;
}

div.wpcf7 .wpcf7-spinner {
    display: none;
}

.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output {
	color: #fff;
	font-weight: 700;
	border: 1px solid #CB4A2D;
	background-color: #CB4A2D;
	border-radius: 2px;
	margin: 40px 0 0 0;
	padding: 0.8em 1em;
	text-align: center;
	font-size: 16px;
	line-height: 1.4;
}
.wpcf7 form.sent .wpcf7-response-output {
	border: 1px solid #5a61a7;
	background-color: #5a61a7;
}

/* clearfix：float対策
======================================================*/

.clear:after {
	content: "";
	display: block;
	clear: both;
}
 
.clear:before {
　　　　content: "";
	display: block;
	clear: both;
}
 
.clear {
	display: block;
}