@charset "utf-8";
@font-face {
	font-family: "Noto_Sans_JP";
	src: url("../../assets/fonts/NotoSansJP-Regular.woff2") format("woff2");
	font-display: swap;
	font-weight: 400;
}
@font-face {
	font-family: "Noto_Sans_JP";
	src: url("../../assets/fonts/NotoSansJP-Bold.woff2") format("woff2");
	font-display: swap;
	font-weight: 700;
}
@font-face {
	font-family: "Shippori_Mincho";
	src: url("../../assets/fonts/ShipporiMinchoB1-Regular.woff2") format("woff2");
	font-display: swap;
	font-weight: 400;
}
@font-face {
	font-family: "Shippori_Mincho";
	src: url("../../assets/fonts/ShipporiMinchoB1-Medium.woff2") format("woff2");
	font-display: swap;
	font-weight: 500;
}

/*color*/
:root {
  --pink-light: #fffbf3;
  --purple1: #f3ebf7;
  --purple2: #9a85ad;
  --purple3: #6c577c;
  --brown: #665c57;
　}

/******************************/
/*common */
/******************************/
body, html {
	height: 100%;
}
body {
	font-family: "Noto_Sans_JP";
	font-weight: 400;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	line-height: 1.5;
	color: var(--brown);
	background-color: var(--pink-light);
}

#home_page .l-contents {
	padding: 80px 0 130px;
}
.l-contents {
	padding: 20px 0 130px;
}
.l-container--500 {
    max-width: 500px;
    width: 100%;
    margin: auto;	
}
.l-container--745 {
    max-width: 745px;
    width: 100%;
    margin: auto;
}
.l-container--900 {
    max-width: 900px;
    width: 100%;
    margin: auto;
}
.l-container--1000 {
    max-width: 1000px;
    width: 100%;
    margin: auto;
}
.l-container {
    max-width: 1100px;
    width: 100%;
    margin: auto;
}
@media only screen and (max-width: 500px) {
	.l-container--500 {
		padding: 0 20px;
	}
}
@media only screen and (max-width: 745px) {
	.l-container--745 {
		padding: 0 20px;
	}
}
@media only screen and (max-width: 767px) {
	.l-container--767 {
		padding: 0 20px;
	}
}
@media only screen and (max-width: 900px) {
	.l-container--900 {
		padding: 0 20px;
	}
}
@media only screen and (max-width: 1000px) {
	.l-container--1000 {
		padding: 0 20px;
	}
}
@media only screen and (max-width: 1100px) {
	.l-container {
		padding: 0 20px;
	}
}

.c-btn {
    text-align: center;
}
.c-btn a {
    display: inline-block;
    color:#fff;
	font-family: "Noto_Sans_JP";
	font-weight: 700;
	font-size: 1.5rem;
    padding: 14px 30px;
	min-width: 230px;
    border-radius:30px;
    background: linear-gradient(270deg, #3bade3 0%, #576fe6 25%, #d470a6 51%, #9f6ace 100%);
    background-position: 1% 50%;
    background-size: 200% auto;
    transition: all 0.3s ease-out;
}
.c-btn a:hover {
    background-position: 99% 50%;
}

.c-btn__more {
    text-align: center;
}
.c-btn__more a {
	position: relative;
	font-family: "Shippori_Mincho";
	font-weight: 400;
	font-size: 1.5rem;
	padding: 10px 60px 10px 25px;
	display: inline-block;
	min-width: 200px;
	transition: all .2s linear;
	color: var(--purple3);
	border: 1px solid var(--purple3);
	border-radius: 30px;
}
.c-btn__more a:hover{
	color: #ffffff;
	background: var(--purple3);
}
.c-btn__more a:before{
	content:"";
	position: absolute;
	top: 50%;
	right: 30px;
	width: 15px;
	height: 1px;
	background: var(--purple3);
	transition: all .2s linear;
}
.c-btn__more a::after {
    content: '';
    position: absolute;
    top: 41%;
    right: 25px;
    border: 4px solid transparent;
    border-top-width: 4px;
    border-bottom-width: 4px;
    border-left-color: var(--purple3);
    transition: all .2s linear;
}
.c-btn__more a:hover::before{
	background: #ffffff;
	right: 20px;
	width: 25px;
}
.c-btn__more a:hover::after{
    border-left-color: #ffffff;
    right: 15px;
}

.c-btn__more-left a {
	position: relative;
	padding: 10px 25px 10px 60px;
	transition: all .2s linear;
	color: var(--purple3);
}
.c-btn__more-left a:hover {
	color: #ffffff;
	background: var(--purple3);
}
.c-btn__more-left a:before{
	content:"";
	position: absolute;
	top: 50%;
	left: 30px;
	width: 15px;
	height: 1px;
	background: var(--purple3);
	transition: all .2s linear;
}
.c-btn__more-left a::after {
    content: '';
    position: absolute;
    top: 41%;
    left: 25px;
    border: 4px solid transparent;
    border-top-width: 4px;
    border-bottom-width: 4px;
    border-right-color: var(--purple3);
    transition: all .2s linear;
}
.c-btn__more-left a:hover::before{
	background: #ffffff;
	left: 20px;
	width: 25px;
}
.c-btn__more-left a:hover::after{
    border-right-color: #ffffff;
    left: 15px;
}

.scrolldown {
  position: absolute;
  right: 25px;
  bottom:  -10px;
}
.scrolldown:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 80%;
  background: linear-gradient(180deg,rgba(#6c577c, 0) 0, rgba(#6c577c, .8) 80%, rgba(#6c577c, .8) 100%);
  }
.scrolldown a {
  display: inline-block;
  z-index: 2;
  padding: 0px 0px 70px;
  color: var(--purple3);
  font-size: 1.3rem;
  line-height: 0;
  letter-spacing: .1em;
  text-transform: uppercase;
  writing-mode: vertical-lr;
  transition: .2s;
}
.scrolldown a:before {
  content: '';
  position: absolute;
  right: 0;
  bottom: 0;
  width: 2px;
  height: 60px;
  background: #ffffff;
}
.scrolldown a:after {
  content: '';
  position: absolute;
  right: 0;
  bottom: 0;
  width: 2px;
  height: 60px;
  background: var(--purple3);
}
.scrolldown a:hover {
  opacity: .5;
}
#type01 a:after {
  animation: sdl01 1.5s cubic-bezier(1, 0, 0, 1) infinite;
}
@keyframes sdl01 {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}

.c-fukidashi {
	position: relative;
	padding: 0 20px;
}
.c-fukidashi::before,
.c-fukidashi::after {
    position: absolute;
    top: 0.8rem;
    height: 1.8rem;
    content: '';
}
.c-fukidashi::before {
    border-left: solid 2px;
    left: 0;
    transform: rotate(-30deg);
}
.c-fukidashi::after {
    border-right: solid 2px;
    right: 0;
    transform: rotate(30deg);
}

.t_center {
	text-align: center;
}
.t_left {
	text-align: left;
}
.t_right {
	text-align: right;
}
.mb-40 {
	margin-bottom: 40px;
}
.mb-60 {
	margin-bottom: 60px;
}
.mt10 {
	margin-top: 10px;
}
/******************************/
/*header */
/******************************/
.header-wrap {
    padding: 25px 0;
	position: relative;
	z-index: 2;
}
.c-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.c-header__logo img {
	max-width: 240px;
    width: 100%;
}
@media only screen and (max-width: 1100px) {
	.c-header__logo {
	    width: 190px;
	}
}
.c-header__nav {
    display: flex;
    align-items: center;
}
@media only screen and (min-width: 1001px) {
	.c-header__nav ul {
	    background: #9f6ace;
	    display: flex;
	    justify-content: space-between;
	    align-items: center;
	    padding: 14px 20px;
	    border-radius: 30px;
	}
}
.c-header__nav a {
    color: #ffffff;
	font-size: 1.5rem;
	padding: 0 10px;
}

.c-header__nav-brn a {
	display: inline-block;
	padding: 14px 35px 14px 30px;
    border-radius: 30px;
	margin-left: 10px;
	position: relative;
	background: linear-gradient(270deg, #3bade3 0%, #576fe6 25%, #d470a6 51%, #9f6ace 100%);
    background-position: 1% 50%;
    background-size: 200% auto;
    transition: all 0.3s ease-out;
}
.c-header__nav-brn a:hover {
	background-position: 99% 50%;
}
.c-header__nav-brn a:after {
    content: "";
    display: block;
    width: 5px;
    height: 5px;
    border-top: 2px solid #ffffff;
    border-left: 2px solid #ffffff;
    transform: rotate(135deg);
    position: absolute;
    right: 20px;
    top: calc(50% - 2px);
}
.c-header__nav-txt {
	display: none;
}
.header-btn {
	display: none;
}
@media only screen and (max-width: 1000px) {
	.c-header__nav {
		position: fixed;
		top: 0;
		z-index: 999;
		right: 0;
		width: 100%;
		height: 100vh;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		padding: 60px 25px;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-transform: translateX(100%);
		transform: translateX(100%);
		-webkit-transition: 0.4s;
		transition: 0.4s;
		background: rgb(159,106,206);
		background: linear-gradient(90deg, rgba(159,106,206,1) 0%, rgba(212,112,166,1) 100%);
	}
	.c-header__nav.open ul {
		text-align: center;
		margin: auto;
	}
	.c-header__nav li {
		padding: 20px 0;
	}
	.c-header__nav-brn {
		background: #ffffff;
		width: 100%;
		padding: 40px 0;
		text-align: center;
		border-radius: 20px;
	}
	.c-header__nav-txt {
		display: block;
		color: var(--purple3);
		font-size: 1.8rem;
        margin-bottom: 15px;
        letter-spacing: 0.1em;
	}
	.c-header__nav-brn a {
		width: 50%;
		margin-left: 0;
	}
	.c-header__nav.open {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
	.menu {
		position: fixed;
		width: 50px;
		height: 50px;
		top: 25px;
		right: 20px;
		z-index: 999;
		-webkit-transition-duration: 0.5s;
		transition-duration: 0.5s;
		background: #fff;
		border-radius: 4px;
	}
	.menu:hover {
		cursor: pointer;
	}
	.menu .icon {
		-webkit-transition-duration: 0.5s;
		transition-duration: 0.5s;
		position: absolute;
		height: 4px;
		width: 25px;
		top: 50%;
		background-color: #d470a6;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	.menu .icon::before {
		content: "";
		-webkit-transition-duration: 0.5s;
		transition-duration: 0.5s;
		position: absolute;
		width: 25px;
		height: 4px;
		background-color: #d470a6;
		top: -10px;
	}
	.menu .icon::after {
		content: "";
		-webkit-transition-duration: 0.5s;
		transition-duration: 0.5s;
		position: absolute;
		width: 25px;
		height: 4px;
		background-color: #d470a6;
		top: 10px;
	}
	.menu.open .icon {
		-webkit-transition-duration: 0.5s;
		transition-duration: 0.5s;
		background: transparent;
	}
	.menu.open .icon::before {
		-webkit-transform: rotateZ(45deg) scaleX(1.25) translate(6.5px, 6.5px);
		transform: rotateZ(45deg) scaleX(1.25) translate(6.5px, 6.5px);
	}
	.menu.open .icon::after {
		-webkit-transform: rotateZ(-45deg) scaleX(1.25) translate(6px, -6px);
		transform: rotateZ(-45deg) scaleX(1.25) translate(6px, -6px);
	}
	.header-btn {
		display: block;
		margin-right: 80px;
	}
	.header-btn.c-btn a {
	    padding: 10px 20px;
	    min-width: auto;
	}
}
@media only screen and (max-width: 500px) {
    .c-header__logo {
        width: 43%;
    } 
	.header-btn {
        margin-right: 60px;
	    }
	.header-btn.c-btn a {
        padding: 8px 10px;
        font-size: 1.2rem;
    }
}

/******************************/
/* footer */
/******************************/
.footer {
    color: #ffffff;
	background: var(--purple2);
	padding: 60px 0 30px;
}
.footer a {
	color: #ffffff;
}
@media only screen and (min-width: 768px) {
	.footer__block1 {
		display: flex;
	    justify-content: space-between;
	    padding: 0 20px 30px;
	}
	.footer__nav-global {
	    width: calc(100% - 200px);
		display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: repeat(1, 1fr);
	}
}

.footer__block1 {
    border-bottom: 1px solid #ffffff;
    margin-bottom: 15px;
}
.footer__nav-global {
	font-family: "Noto_Sans_JP";
	font-weight: 700;
}
.footer__nav-global dt {
    font-size: 1.8rem;
	margin-bottom: 15px;
}
.footer__nav-global dd {
    margin-left: 15px;
}
.footer__nav-global li, 
.footer__nav-global p {
    margin-bottom: 10px;
}
.footer__nav-global_sub {
	font-family: "Noto_Sans_JP";
	font-weight: 400;
}
.footer-sns__list {
    display: flex;
    column-gap: 20px;
}

.footer__nav-local ul {
    display: flex;
    justify-content: space-between;
	font-size: 1.2rem;
	max-width: 500px;
	margin: 0 auto 30px;
}
#copyright {
    text-align: center;
}
.c-top {
	position: fixed;
	bottom: 30px;
	right: 30px;
	z-index: 998;
	cursor: pointer;
	display: none;
}
.recaptcha-wrap {
    text-align: center;
    font-size: 0.9rem;
    margin-top: 10px;
}
.grecaptcha-badge { 
	visibility: hidden;
}
@media only screen and (max-width: 767px) {
	.footer__logo {
	    text-align: center;
	    margin-bottom: 40px;
	}
	.footer__nav-global dl {
	    margin-bottom: 20px;
	}
	.footer__nav-global ul {
	    display: flex;
	    flex-wrap: wrap;
	}
	.footer__nav-global li {
	    width: calc(100% / 3);
	}
	.footer-sns__list {
		justify-content: center;
	    width: 40%!important;
		margin: 20px auto 0;
	}
	.footer__nav-local ul {
		font-size: 0.9rem;
	}
	.c-top  {
		right: 10px;
	}
	.c-top img {
		width: 50px;
	}
}

/******************************/
/* TOP */
/******************************/
#home_page header.u-rel {
	background: var(--purple1);
}
#home_page .bg-main {
	background: url(../../assets/img/_top/bg-main.jpg) no-repeat left/cover;
	position: relative;
}
.c-title {
	font-family: "Shippori_Mincho";
	font-weight: 500;
    font-size: 2.8rem;
    text-align: center;
    color: var(--purple3);
}
.c-title:after {
    content: '';
    width: 55px;
    height: 1px;
    display: block;
	margin: 15px auto 25px;
	background: rgb(159,106,206);
	background: linear-gradient(90deg, rgba(159,106,206,1) 0%, rgba(212,112,166,1) 100%);
}
.c-title span {
    font-size: 1rem;
	color: #b48cd4;
    display: block;
}
.c-lead {
	font-family: "Shippori_Mincho";
	font-weight: 400;
	font-size: 1.6rem;
    text-align: center;
	margin-bottom: 60px;
}

.top-main {
    position: relative;
}
.top-main-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
	margin: 75px auto 160px;
	width: 90%;
	max-width: 800px;
	padding: 0 40px 120px 0;
}
.top-main__left {
    margin-top: -60px;
}
.top-main-wrap h1 {
	margin-bottom: 30px;
}
.top-main__right {
	-ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.top-main__right p {
	display: inline-block; 
	white-space: nowrap;
	word-break: keep-all;
	overflow-wrap: normal;
	line-break: strict;
}
.top-main-wrap p {
	font-family: "Shippori_Mincho";
	font-weight: 400;
	font-size: 2.6rem;
	line-height: 2.1;
    color: var(--purple3);
}
.top-main__bg-nami img {
    width: 100%;
}
.top-about__image-sp {
	display: none;
}

.top-about {
    padding: 0 0 90px;
}
.top-about-wrap {
    display: flex;
    justify-content: space-between;
	align-items: flex-start;
	position: relative;
}
.top-about__image-pc {
	width: 48%;
	max-width: 500px;
	margin-top: -330px;
	z-index: 1;
}
.top-about__image-pc img {
	width: 100%;
}
.top-about__right {
	width: 48%;
    max-width: 530px;
	padding: 0 50px;
	position: relative;
	z-index: 1;
}
.top-about__right img {
    position: absolute;
    left: -40px;
    top: -110px;
	max-width: 230px;
}
.top-about__right h2 {
    font-family: "Shippori_Mincho";
	font-weight: 500;
    font-size: 2.6rem;
    text-align: center;
    color: var(--purple3);
    text-align: left;
    margin-bottom: 20px;
}
.top-about__right p {
	font-family: "Shippori_Mincho";
	font-weight: 400;
    font-size: 1.6rem;
    margin-bottom: 45px;
}
.top-about__right .c-btn__more {
    text-align: right;
}
.c-comingsoon {
	color: #fff;
	font-size: 1.2rem;
    background-color: #b48cd4;
    width: 300px;
    margin: auto;
    padding: 20px 10px;
	position: relative;
}
.c-comingsoon:after {
    content: '';
    width: 300px;
    height: 100%;
    display: block;
    border: 1px solid var(--purple3);
    position: absolute;
    bottom: -8px;
    right: -8px;
	pointer-events: none;
}
.c-comingsoon span {
	font-size: 2rem;
	letter-spacing: 0.1em;
}
.c-comingsoon ul {
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 20px;
	margin-top: 10px;
}

@media only screen and (max-width: 1100px) {
	.top-about__right {
		padding: 0 0 0 50px;
	}
}
@media only screen and (max-width: 1000px) {
	.scrolldown {
		bottom: -190px;
	}
	.scrolldown a {
		font-size: 0.8rem;
	}
	.top-main-wrap {
		flex-direction: row-reverse;
		justify-content: space-around;
		position: relative;
	    margin: 75px auto 130px;
	}
	.top-main__left h1 {
		max-width: 290px;
	}
	.top-main__left img {
		max-width: 100%;
	}
	.top-main__left .c-btn {
		display: none;
	}
	.top-about__image-sp {
		display: block;
		position: absolute;
		bottom: -150px;
		z-index: 1;
	}
	.top-main-wrap p {
		font-size: 2.4rem;
	}
	.top-about {
		padding: 70px 0 90px;
	}
	.top-about-wrap {
		max-width: 800px;
		padding: 0 40px;
	    flex-direction: column;
	    align-items: flex-end;
	}
	.top-about__image-pc {
		display: none;
	}
    .top-about__right {
        width: 100%;
        max-width: none;
		padding: 0;
    }
	.top-about__right h2 {
		font-size: 2rem;
	}
	.top-about__right img {
		left: -30px;
		top: -80px;
		max-width: 160px;
	}
	.top-about__right .c-btn__more {
		text-align: center;
	}
}
@media only screen and (max-width: 600px) {
	.top-main-wrap {
		margin: 40px auto 60px;
		padding: 0 40px 90px 0;
	}
	.top-main-wrap p {
		font-size: 2rem;
	}
    .top-main__left h1 {
        max-width: 180px;
    }
	.top-about__image-sp {
		bottom: -50px;
	}
	.top-about__right h2 {
		font-size: 1.8rem;
	}
	.top-about__right img {
		left: -25px;
		top: -65px;
		max-width: 130px;
	}
}

/*できること*/
@media screen and (min-width:768px){
	.top-feature__list ul {
	    display: flex;
	    justify-content: space-between;
	    flex-wrap: wrap;
		margin: 0 auto 65px;
	}
	.top-feature__list li {
		width: calc(100% / 3 - 35px);
	}
	.top-feature__list li:nth-child(2) dd {
	    letter-spacing: -0.001em;
	}
}
.top-feature__list li {
    text-align: center;
}
.top-feature__list li dt {
	font-family: "Shippori_Mincho";
	font-weight: 500;
    font-size: 2.4rem;
    color: var(--purple3);
	margin: 35px auto 15px;
}
@media screen and (max-width:767px){
	.top-feature__list li {
		margin-bottom: 50px;
	}
}
/*豊富なデザイン*/
.top-design {
    background: #fff;
}

/*デザインカテゴリー*/
.top-cat__list ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto 20px;
}
.top-cat__list li {
    width: calc(100% / 3 - 4%);
	margin-bottom: 45px;
	text-align: center;
}
.top-cat__list li a:hover, 
.top-cat__list li img:hover {
	opacity: 1;
    filter: alpha(opacity=100);
    -moz-opacity: 1;
}
.top-cat__list li img {
    width: 100%;
    max-width: 215px;
}
.top-cat__list li img:hover {
	transition: transform 0.3s ease;
    transform: scale(1.1);	
}
@media screen and (max-width:500px){
	.top-cat__list li {
	    width: calc(100% / 2 - 4%);
	}
}

/*注目のデザイン*/
.top-pickup {
	background: #fff;
}
.top-pickup__list {
	overflow: hidden;
}
.slider-top__item {
	padding: 0 10px;
}
.slider-top__item img {
	width: 100%;
}
/*slider*/
.slick-dotted.slick-slider {
    margin: 60px auto 70px;
}
.slick-dots {
    bottom: -70px;
}
.slick-dots li {
	width: 7%;
	height: 3px;
	background: #dcd0e4;
}
.slick-dots li.slick-active {
	background: var(--purple3);
}

/*お客様の声*/
@media screen and (min-width:768px){
	.top-voice__list {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: repeat(1, 1fr);
        gap: 29px;
	}
}
.top-voice__list {
	margin-bottom: 40px;
}
.top-voice__item {
    font-size: 1.5rem;
    line-height: 1.6;
    background: #ffffff;
    padding: 30px 20px;
    border-radius: 15px;
}
@media screen and (max-width:767px){
	.top-voice__item {
		margin-bottom: 20px;
	}
}
.top-voice__txt {
    margin-bottom: 15px;
}
.top-voice__name {
    text-align: right;
}

/*ご注文の流れ*/
.top-flow {
    background: var(--purple1);
}
@media screen and (min-width:768px){
	.top-flow__list ul {
	    display: flex;
	    justify-content: space-between;
		max-width: 790px;
	}
}
.top-flow__list ul {
    margin: 0 auto;
	text-align: center;
}
.top-flow__list li {
	position: relative;
}
.top-flow__arrow {
    position: absolute;
    right: -55px;
    top: 80px;
}
.arrow {
  position: relative;
  display: inline-block;
  width: 55px;
  height: 3px;
  margin-top: 12px;
  margin: 12px 0 0 0;
  border-radius: 9999px;
  background-color: var(--purple2);
}
.arrow::before {
  content: "";
  position: absolute;
  top: calc(50% - 1.5px);
  right: 0;
  width: 20px;
  height: 3px;
  border-radius: 9999px;
  background-color: var(--purple2);
  transform: rotate(45deg);
  transform-origin: calc(100% - 1.5px) 50%;
}

@media screen and (max-width:767px){
	.top-flow__list li {
		margin-bottom: 20px;
	}
	.top-flow__arrow {
		position: initial;
		margin-top: 20px;
	}
	.arrow {
	  width: 3px;
	  height: 55px;
	  margin: 0 0 0 12px;
	}
	.arrow::before {
	  top: initial;
	  bottom: 0;
	  left: calc(50% - 1.5px);
	  width: 3px;
	  height: 20px;
	  transform: rotate(-45deg);
	  transform-origin: 50% calc(100% - 1.5px);
	}
}
.top-flow__list dt {
	font-family: "Shippori_Mincho";
	font-weight: 500;
	font-size: 2.3rem;
	color: var(--purple3);
	margin: 25px auto 20px;
}
.top-flow__list dd {
    font-size: 1.5rem;
}

/*営業日カレンダー*/
.calendar-bg {
	max-width: 830px;
    margin: 0 auto;
    padding: 35px 35px 25px;
    background: url(../../assets/img/_top/img-calendar.svg) right bottom no-repeat rgba(255,255,255,0.5);
	background-size: 50px auto;
	border: 1px solid var(--purple2);
}
.calendar-inner__txt {
	font-family: "Shippori_Mincho";
	font-weight: 500;
	color: var(--purple2);
    display: flex;
    align-items: center;
	margin-bottom: 5px;
}
.calendar-month {
	font-size: 4rem;
	line-height: 1;
	margin-right: 5px;
}
.calendar-year {
	font-size: 1.5rem;
	line-height: 1;
}

.calendar-wrap {
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 80px;
}
@media screen and (max-width:767px){
	.calendar-wrap {
		display: flex;
		flex-direction: column;
	}
}
.calendar {
	width: 100%;
	border-collapse: collapse;
}
.calendar thead tr {
    border-bottom: 1px solid var(--purple2);	
}
.calendar th,
.calendar td {
	text-align: center;
	padding: 10px;
	font-size: 1.2rem;
}
@media screen and (max-width:767px){
	.calendar th,
	.calendar td {
		padding: 6px;
		font-size: 12px;
	}
	.calendar th {
		padding: 3px 6px;
	}
}

.calendar .sun {
	color: #ff8795;
}
.calendar .sat {
	color: #7ab6f3;
}
.calendar .today {
	background-color: var(--purple2);
    color: #ffffff;
}
.calendar .off {
	color: #ff8795;
}
.calendar-note {
    font-size: 1.1rem;
    margin-top: 30px;
}
.calendar-note:before {
    content: '';
    width: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: middle;
    background: #ff8795;
    margin-right: 5px;
}

/*コラム*/
.top-column {
	background: #fff;
}
@media screen and (min-width:768px){
	.top-column__list {
	    display: grid;
	    grid-template-columns: repeat(3, 1fr);
	    grid-template-rows: repeat(1, 1fr);
	    gap: 29px;
	}
}
.top-column__list {
	margin-bottom: 65px;
}
.top-column__icatch img {
	width: 100%;
	height: 185px;
	object-fit: cover;
    border-radius: 20px;
}
@media screen and (max-width:767px){
	.top-column__item {
	    margin-bottom: 50px;
	}
	.top-column__icatch {
		text-align: center;
	}
	.top-column__icatch img {
		max-width: 400px;
		height: 250px;
	}
}
.top-column__ttl {
	font-family: "Shippori_Mincho"; 
	font-weight: 500;
	font-size: 1.8rem;
	color: var(--purple3);
	margin: 30px 0 15px;
}
.top-column__txt {
	color: var(--brown);
	margin-bottom: 15px;
}
.top-column__wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.top-column__date {
    font-size: 1.3rem;
	color: var(--brown);
}
.top-column__cat {
	font-size: 1.2rem;
	color: #ffffff;
	display: inline-block;
	background: var(--purple2);
	padding: 3px 10px;
}
.top-column__cat span:not(:first-child):before {
    content: '／';
}

/*よくあるご質問*/
/*アコーディオン*/
.accordion-item {
	margin-bottom: 25px;
	border-bottom: 1px solid var(--purple2);
	padding: 0 55px 0 50px;
}
.accordion-ttl {
	margin-bottom: 25px;
	position: relative;
	cursor: pointer;
}
.accordion-box {
	display: none;
	margin-bottom: 25px;
}
.accordion-ttl::after {
	content: "";
	position: absolute;
	display: block;
	width: 15px;
	height: 2px;
	right: -25px;
	top: 14px;
	background: var(--purple2);
}
.accordion-ttl::before {
	content: "";
	position: absolute;
	display: block;
	width: 15px;
	height: 2px;
	right: -25px;
	transition: 0.4s;
	top: 14px;
	transform: rotate(90deg);
	background: var(--purple2);
}
.accordion-ttl.active::before {
	transform: rotate(180deg);
}

.top-faq__list {
    margin: 0 auto 40px;
}
.top-faq__list .accordion-ttl {
	font-family: "Shippori_Mincho";
	font-weight: 500;
	color: var(--purple3);
	font-size: 1.8rem;	
}
.top-faq__q {
	font-size: 2.7rem;
	position: absolute;
    left: -35px;
    top: -10px;
}
.top-faq__list .accordion-box  {
	font-size: 1.6rem;
}
@media screen and (max-width:767px){
	.top-faq__list .accordion-item {
		padding: 0 35px 0 40px;
	}
}


/*お知らせ*/
.top-news {
    background: var(--purple1);	
}
.top-news__list {
    margin: 0 auto 40px;
}
.top-news__list .accordion-item {
    font-size: 1.6rem;
}
.top-news__list .accordion-ttl, 
.top-news__list strong {
	font-family: "Noto_Sans_JP";
	font-weight: 700;
}
.top-news__date {
	font-family: "Noto_Sans_JP"; 
	font-weight: 400;
	margin-right: 40px;
	display: block;
}
.top-news__list dd p:not(:last-child) {
	margin-bottom: 15px;
}
@media screen and (min-width:768px){
	.top-news__list .accordion-ttl {
		display: flex;
	}
}
@media screen and (max-width:767px){
	.top-news__list .accordion-item {
		padding: 0 35px 0 20px;
	}
}

/*TOP背景*/
.deco-top {
    position: absolute;
}
.deco-top.deco-item01 {
    top: -46px;
    right: 0;
}
.deco-group .falling {
	opacity: 0;
	animation: fall 5s ease-in-out infinite;
}
.deco-top.deco-item01-move:first-child {
	top: 330px;
	right: 60px;
	animation-delay: 0s;
}
.deco-top.deco-item01-move:nth-child(2) {
	top: 418px;
	right: 200px;
	animation-delay: 0.5s;
}
.deco-top.deco-item01-move:nth-child(3) {
	top: 370px;
	right: 150px;
	animation-delay: 1s;
}
@keyframes fall {
  0% {
    transform: translateY(0) rotate(0deg);
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    transform: translateY(100vh) rotate(360deg);
    opacity: 0;
  }
}

.deco-group .fadeinout {
	opacity: 0;
	animation: fadeinout 7s infinite;
}
.deco-top.deco-item02-move:first-child {
	top: 200px;
	right: 46%;
	animation-delay: 0s;
}
.deco-top.deco-item02-move:nth-child(2) {
	top: 274px;
	right: 39%;
	animation-delay: 0.2s;
}
.deco-top.deco-item02-move:nth-child(3) {
	top: 325px;
	right: 43%;
	animation-delay: 0.4s;
}
.deco-top.deco-item02-move:nth-child(4) {
	top: 390px;
	right: 48%;
	animation-delay: 0.6s;
}
.deco-top.deco-item02-move:nth-child(5) {
	top: 490px;
	right: 51%;
	animation-delay: 0.8s;
}
.deco-top.deco-item02-move:nth-child(6) {
	top: 545px;
	right: 46%;
	animation-delay: 1s;
}
.deco-top.deco-item02-move:nth-child(7) {
	top: 610px;
	right: 39%;
	animation-delay: 1.2s;
}
@keyframes fadeinout {
  0%   { opacity: 0; transform: translateY(-20px); }
  10%  { opacity: 1; transform: translateY(0); }
  40%  { opacity: 1; transform: translateY(0); }
  60%  { opacity: 0; transform: translateY(60px); }
  100% { opacity: 0; transform: translateY(60px); }
}
.deco-top.deco-item03-move {
	animation: float 3s ease-in-out infinite, drift-right 10s linear infinite;
}
@keyframes float {
  0% { transform: translateY(0px); }
  50% { transform: translateY(-20px); }
  100% { transform: translateY(0px); }
}
@keyframes drift-right {
  0%   { right: 5%; }
  50%  { right: 15%; }
  100% { right: 5%; }
}

.deco-top.deco-item04 {
    bottom: -160px;
    left: -80px;
}
.deco-top.deco-feature-item01-move:first-child {
	top: 5px;
	right: 424px;
	animation-delay: 0s;
}
.deco-top.deco-feature-item01-move:nth-child(2) {
	top: 60px;
	right: 305px;
	animation-delay: 0.2s;
}
.deco-top.deco-feature-item01-move:nth-child(3) {
	top: 63px;
	right: 170px;
	animation-delay: 0.4s;
}
.deco-top.deco-feature-item01-move:nth-child(4) {
	top: 167px;
	right: 144px;
	animation-delay: 0.6s;
}
.deco-top.deco-feature-item01-move:nth-child(5) {
	top: 200px;
	right: 50px;
	animation-delay: 0.8s;
}
.deco-top.deco-feature-item01-move:nth-child(6) {
	top: 330px;
	right: 20px;
	animation-delay: 1s;
}
.deco-top.deco-feature-item02 {
    bottom: -130px;
    left: 70px;
}
.deco-top.deco-feature-item02-move {
	bottom: 20px;
	animation: float 3s ease-in-out infinite, drift-left 10s linear infinite;
}
@keyframes drift-left {
  0%   { left: 120px; }
  50%  { left: 160px; }
  100% { left: 120px; }
}
.deco-top.deco-cat-item01-move {
    right: 120px;
    top: -15px;
	animation: float 3s ease-in-out infinite, drift-right2 10s linear infinite;
}
@keyframes drift-right2 {
  0%   { right: 5%; }
  50%  { right: 10%; }
  100% { right: 5%; }
}
.deco-top.deco-cat-item01 {
	top: -100px;
    right: 60px;
}
.deco-top.deco-cat-item02 {
    bottom: -40px;
	left: -99px;
}
.deco-top.deco-cat-item02-move:first-child {
	left: 180px;
	bottom: 500px;
	animation-delay: 0s;
}
.deco-top.deco-cat-item02-move:nth-child(2) {
	left: 197px;
	bottom: 370px;
	animation-delay: 0.5s;
}
.deco-top.deco-cat-item02-move:nth-child(3) {
	left: 260px;
	bottom: -10px;
	animation-delay: 1s;
}
.deco-top.deco-cat-item02-move:nth-child(4) {
	left: 270px;
	bottom: -80px;
	animation-delay: 1.5s;
}
.deco-top.deco-voice-item01-move {
	top: -70px;
	right: 370px;
	animation: float 3s ease-in-out infinite, drift-right3 10s linear infinite;	
}
@keyframes drift-right3 {
  0%   { right: 25%; }
  50%  { right: 30%; }
  100% { right: 25%; }
}
.deco-top.deco-voice-item02-move:first-child {
	top: -20px;
	right: 290px;
	animation-delay: 0s;
}
.deco-top.deco-voice-item02-move:nth-child(2) {
	top: 47px;
	right: 320px;
	animation-delay: 0.5s;
}
.deco-top.deco-voice-item02-move:nth-child(3) {
	top: 44px;
	right: 230px;
	animation-delay: 1s;
}
.deco-top.deco-voice-item02-move:nth-child(4) {
	top: 97px;
	right: 130px;
	animation-delay: 1.5s;
}
.deco-top.deco-voice-item03 {
    right: -140px;
    bottom: -190px;
	z-index: 1;
}
.deco-top.deco-flow-item01 {
    left: -45px;
    bottom: -150px;
}
.deco-top.deco-flow-item01-move:first-child {
	left: 280px;
	bottom: -130px;
	animation-delay: 0s;
}
.deco-top.deco-flow-item01-move:nth-child(2) {
	left: 340px;
	bottom: -160px;
	animation-delay: 0.2s;
}
.deco-top.deco-column-item01-move:first-child {
    right: 157px;
    top: -180px;
	animation-delay: 1s;
}
.deco-top.deco-column-item01-move:nth-child(2) {
    right: 75px;
    top: -140px;
	animation-delay: 1.5s;	
}
.deco-top.deco-column-item01-move:nth-child(3) {
    right: 111px;
    top: 10px;
	animation-delay: 2s;
}
.deco-top.deco-column-item01-move:nth-child(4) {
    right: 240px;
    top: 110px;
	animation-delay: 2.5s;
}
.deco-top.deco-column-item02-move {
    bottom: 20px;
    animation: float 3s ease-in-out infinite, drift-left2 15s linear infinite;
}
@keyframes drift-left2 {
  0%   { left: 80px; }
  50%  { left: 160px; }
  100% { left: 80px; }
}

.deco-top.deco-column-item02 {
    left: 57px;
    bottom: -140px;
}
.deco-top.deco-news-item01 {
    right: -63px;
    top: -170px;
}
.deco-top.deco-news-item02-move {
    top: 10px;
    animation: float 3s ease-in-out infinite, drift-left 10s linear infinite;
}
.deco-top.deco-news-item02:nth-child(2) {
    left: 35px;
    top: 35px;
}
.deco-top.deco-news-item02:nth-child(3) {
    left: -60px;
    bottom: 0;
}
.mainTop {
	overflow: hidden;
}
.u-rel {
	position: relative;
}
.u-zindex1 {
    z-index: 1;	
}

@media screen and (max-width:1000px){
	.deco-top.deco-item02-move {
	    display: none;
	}
}

@media screen and (max-width:900px){
	.deco-top.deco-item04 {
	    bottom: -75px;
	    left: -45px;
	    width: 230px;
	}
	.deco-top img {
		max-width: 100%;
	}
	.deco-top.deco-item01 {
	    width: 230px;
	}
	.deco-top.deco-item01-move:first-child {
	    top: 240px;
	    right: 20px;
	    width: 35px;
	}
	.deco-top.deco-item01-move:nth-child(2) {
	    top: 280px;
	    right: 120px;
	    width: 20px;
	}
	.deco-top.deco-item01-move:nth-child(3) {
	    top: 260px;
	    right: 85px;
	    width: 15px;
	}
	.deco-top.deco-item03-move {
		width: 40px;
	}
	@keyframes drift-right {
	  0%   { right: -5%; }
	  50%  { right: 10%; }
	  100% { right: -5%; }
	}
	.deco-top.deco-feature-item01-move:first-child {
	    top: 5px;
	    right: 150px;
	    width: 20px;
	}
	.deco-top.deco-feature-item01-move:nth-child(2) {
	    top: 25px;
	    right: 110px;
	    width: 22px;
	}
	.deco-top.deco-feature-item01-move:nth-child(3) {
	    top: 33px;
	    right: 60px;
	    width: 28px;
	}
	.deco-top.deco-feature-item01-move:nth-child(4) {
	    top: 80px;
	    right: 45px;
	    width: 25px;
	}
	.deco-top.deco-feature-item01-move:nth-child(5) {
	    top: 105px;
	    right: 15px;
	    width: 15px;
	}
	.deco-top.deco-feature-item01-move:nth-child(6) {
	    top: 150px;
	    right: 30px;
	    width: 20px;
	}
	.deco-top.deco-feature-item02-move {
	    bottom: 10px;
	    width: 35px;
	}
	.deco-top.deco-feature-item02 {
	    bottom: -70px;
	    left: 15px;
	    width: 130px;
	}
	.deco-top.deco-cat-item01-move {
	    top: -70px;
	    width: 55px;
		}
	.deco-top.deco-cat-item01 {
	    top: -110px;
	    right: 15px;
	    width: 135px;
	}
	.deco-top.deco-cat-item02 {
	    bottom: -70px;
	    left: -55px;
	    width: 230px;
	}
	.deco-top.deco-cat-item02-move:first-child {
	    left: 25px;
	    bottom: 220px;
	    width: 15px;
	}
	.deco-top.deco-cat-item02-move:nth-child(2) {
	    left: 45px;
	    bottom: 190px;
	    width: 20px;
	}
	.deco-top.deco-cat-item02-move:nth-child(3) {
	    left: 180px;
	    bottom: -15px;
	    width: 35px;
	}
	.deco-top.deco-cat-item02-move:nth-child(4) {
	    left: 190px;
	    bottom: -50px;
	    width: 35px;
	}
	.deco-top.deco-voice-item01-move {
	    top: -30px;
	    width: 42px;
	}
	.deco-top.deco-voice-item02-move:first-child {
	    top: -10px;
	    right: 60px;
	    width: 23px;
	}
	.deco-top.deco-voice-item02-move:nth-child(2) {
	    top: 45px;
	    right: 80px;
	    width: 13px;
	}
	.deco-top.deco-voice-item02-move:nth-child(3) {
	    top: 35px;
	    right: 40px;
	    width: 24px;
	}
	.deco-top.deco-voice-item02-move:nth-child(4) {
	    top: 85px;
	    right: 15px;
	    width: 25px;
	}
	.deco-top.deco-voice-item03 {
	    right: -70px;
	    bottom: -90px;
	    width: 260px;
	}
	.deco-top.deco-flow-item01 {
	    left: -35px;
	    bottom: -70px;
	    width: 180px;
	}
	.deco-top.deco-flow-item01-move:first-child {
	    left: 15px;
	    bottom: -120px;
	    width: 15px;
	}
	.deco-top.deco-flow-item01-move:nth-child(2) {
	    left: 40px;
	    bottom: -150px;
	    width: 15px;
	}
	.deco-top.deco-column-item01-move:first-child {
	    right: 57px;
	    top: -90px;
	    width: 15px;
	}
	.deco-top.deco-column-item01-move:nth-child(2) {
	    right: 15px;
	    top: -60px;
	    width: 26px;
	}
	.deco-top.deco-column-item01-move:nth-child(3) {
	    right: 30px;
	    top: 10px;
	    width: 50px;
	}
	.deco-top.deco-column-item01-move:nth-child(4) {
	    right: 90px;
	    top: 60px;
	    width: 26px;
	}
	.deco-top.deco-column-item02-move {
		width: 30px;
	}
	@keyframes drift-left2 {
	  0%   { left: 60px; }
	  50%  { left: 100px; }
	  100% { left: 60px; }
	}
	.deco-top.deco-column-item02 {
	    left: 15px;
	    bottom: -80px;
	    width: 90px;
	}
	.deco-top.deco-news-item01 {
	    right: -50px;
	    top: -110px;
	    width: 220px;
	}
	.deco-top.deco-news-item02-move {
	    top: 20px;
	    width: 30px;
	}
	@keyframes drift-left {
	  0%   { left: 40px; }
	  50%  { left: 80px; }
	  100% { left: 40px; }
	}
	.deco-top.deco-news-item02:nth-child(2) {
	    left: 15px;
	    top: 55px;
	    width: 40px;
	}
	.deco-top.deco-news-item02:nth-child(3) {
	    left: -35px;
	    width: 220px;
	}
}

/*TOPメイン背景切り抜き*/
.shape-bottom__main {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
}
.shape-bottom__main svg {
    position: relative;
    display: block;
    width: calc(140% + 1.3px);
    height: 120px;
}
.shape-bottom__main .shape-fill {
    fill: #F3EBF7;
}
@media only screen and (min-width: 1300px) {
    .shape-bottom__main svg {
        height: 150px;
    }
}
@media only screen and (max-width: 767px) {
    .shape-bottom__main svg {
        height: 60px;
    }
}

/******************************/
/*Second-page */
/******************************/

/*パンくずリスト*/
.c-breadcrumb ul {
    display: flex;
	flex-wrap: wrap;
    margin-top: 10px;
}
.c-breadcrumb a {
	font-size: 1.3rem;
	color: var(--brown);
	margin-right: 15px;
	position: relative;
    display: inline-block;
    padding-right: 15px;
}
.c-breadcrumb a:after {
    content: '';
    width: 6px;
    height: 6px;
    border: 0;
    border-top: solid 1px var(--brown);
    border-right: solid 1px var(--brown);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
	margin: auto;
}

/******************************/
/*コラム */
/******************************/
.p-column .top-column__item {
    margin-bottom: 60px;
}

.pagination {
	font-family: "Shippori_Mincho";
	font-weight: 400;
	font-size: 1.6rem;
	color: #ffffff;
    margin: 40px auto 80px;
    text-align: center;
}
.pagination a {
	color: var(--purple2);
	padding: 5px 10px;
}
.page-numbers.current {
    padding: 5px 10px;
    background: var(--purple2);
}

/*詳細*/
@media screen and (min-width:768px){
	.p-single__wrap {
	    display: flex;
	    justify-content: space-between;
	}
	.p-single__left {
	    width: calc(100% - 350px);
	}
	.p-single #ac-post {
	    padding: 55px 40px;	
	}
	.p-single__right {
	    width: 320px;
	}
}
.p-single #ac-post {
	background: #EBE8ED;
	border-radius: 20px;
}
.p-single .top-column__list {
    background: #EBE8ED;
    padding: 20px;
    border-radius: 25px;
	margin-bottom: 0;
}
@media screen and (max-width:767px){
	.p-single__left {
		margin-bottom: 50px;
	}
	.p-single #ac-post {
		padding: 25px 15px;
	}
	.p-single .top-column__list {
		padding: 15px;
	}
}
.navi-pre-next {
    display: flex;
	justify-content: space-between;
    margin: 50px auto;
}
.navi-pre-next a {
	font-family: "Shippori_Mincho";
	font-weight: 400;
    font-size: 1.5rem;
	color: var(--purple3);
	text-align: center;
	border: 1px solid var(--purple3);
	border-radius: 30px;
	display: inline-block;
}
.navi-return a {
	padding: 10px 20px;
	width: 200px;
}
.navi-return a:hover {
	color: #ffffff;
	background: var(--purple3);
}
.navi-pre-next .c-btn__more a, 
.navi-pre-next .c-btn__more-left a {
    width: 130px;
    min-width: initial;
}
@media only screen and (max-width: 500px) {
	.navi-return a {
		width: 105px;
	}
	.navi-pre-next .c-btn__more a, 
	.navi-pre-next .c-btn__more-left a {
	    width: 100px;
	}
	.navi-pre-next .c-btn__more a {
		padding: 10px 40px 10px 10px;
	}
	.c-btn__more-left a {
		padding: 10px 10px 10px 40px;
	}
}
.p-single #ac-post h1, 
.p-single #ac-post h2, 
.p-single #ac-post h3 {
	font-family: "Shippori_Mincho";
	font-weight: 500;
}
.p-single #ac-post h1 {
	color: var(--purple3);
	margin-bottom: 10px;
}
.p-single #ac-post h2 {
	margin: 50px auto 5px;
}
.p-single #ac-post h3 {
	margin-bottom: 5px;
}
.p-single #ac-post h2, 
.p-single #ac-post h3 {
	color: var(--purple2);
}
.p-single #ac-post h2::before {
    background: var(--purple2);
}
.p-single .top-column__item {
    width: 100%;
	margin-bottom: 30px;
}
.p-single .top-column__item:last-child {
	margin-bottom: 0;
}
.p-single .top-column__ttl {
	font-size: 1.3rem;
	margin: 15px 0 10px;
}
.p-single .top-column__wrap {
    margin-bottom: 20px;
}
.p-single .top-column__content p {
	letter-spacing: 0.06em;
    line-height: 1.8;
}
.p-single .p-single__left img {
    margin-bottom: 15px;
}
@media only screen and (max-width: 767px) {
	.p-single .top-column__date, 
	.p-single .top-blog__cate {
	    font-size: 1rem;
	}
}

/******************************/
/*プライバシーポリシー */
/******************************/
.privacy-block {
    margin-bottom: 75px;
}
.c-title2 {
    font-size: 2rem;
    color: var(--purple3);
    margin-bottom: 15px;
}
.privacy-list {
	margin: 15px auto 0;
}
.privacy-list > li {
    list-style: lower-alpha;
	margin: 0 0 5px 3em;
}
.privacy-list__2nd {
	margin: 15px auto 0;
}
.privacy-list__2nd > li {
    list-style: circle;
    margin: 0 0 5px 3em;
}
.privacy-list__3rd {
	margin: 5px auto 0;
}
.privacy-list__3rd > li {
    list-style: disc;
    margin: 0 0 5px 3em;
}
.privacy-list.privacy-list-style-num > li {
	list-style: decimal;
}
.privacy-madoguchi {
    margin: 55px auto 0;
}
.privacy-madoguchi dt {
    margin-bottom: 10px;
}
.privacy-madoguchi dd:not(:last-child) {
    margin-bottom: 45px;
}
@media only screen and (max-width: 767px) {
	.privacy-list > li {
		margin: 0 0 5px 1.5em;
	}
	.privacy-list__2nd > li {
	    margin: 0 0 5px 1.5em;
	}
	.privacy-list__3rd > li {
	    list-style: disc;
	    margin: 0 0 5px 1.5em;
	}
}

/******************************/
/*特定商取引法に基づく表記 */
/******************************/
.summary-item {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
	padding: 0 8px 20px;
    border-bottom: 1px solid var(--brown);
}
.summary-item__title {
	font-size: 1.9rem;
	font-weight: 700;
    width: 270px;
    padding-right: 20px;
}
.summary-item__txt {
	font-size: 1.7rem;
    width: calc(100% - 270px);
}
@media only screen and (max-width: 767px) {
	.summary-item {
		flex-direction: column;
	}
	.summary-item__title {
	    width: 100%;
	    padding-right: 0;
		margin-bottom: 10px;
	}
	.summary-item__txt {
	    width: 100%;
	}
}

/******************************/
/*運営会社 */
/******************************/
.summary-txt__list li:not(:last-child) {
    margin-bottom: 40px;
}
.summary-txt-head {
    font-weight: 700;
    text-decoration: underline;
    display: block;
}

/******************************/
/*お問い合わせ */
/******************************/
.contact-head {
    text-align: center;
    line-height: 1.8;
    margin-bottom: 40px;
}
.c-form-note {
    font-size: 1.2rem;
    margin-bottom: 20px;
}
.c-red {
	color: #AD0D0C;
}
.c-form-title {
    font-size: 1.6rem;
    font-weight: 700;
}
.c-form-box {
    margin-bottom: 20px;
}
.c-form-box dt {
    margin-bottom: 5px;
}
.c-form-box__2column > p {
    display: flex;
}
.c-form input[type="text"], 
.c-form input[type="email"], 
.c-form input[type="tel"] {
    border: 1px solid #888888;
    border-radius: 5px;
    height: 32px;
    padding: 1px 5px;
    background-color: var(--pink-light);
}
.c-form textarea {
	width: 100%;
    border: 1px solid #888888;
    border-radius: 5px;
    padding: 1px 5px;
    background-color: var(--pink-light);
}
.c-form .wpcf7-list-item {
    display: block;
	margin-bottom: 10px;
}
.c-form input.wfull {
	width: 100%;
}
.c-form input.wshort {
	width: 100px;
}
.c-form-privacy {
    text-align: center;
	margin: 50px auto 30px;
}
.c-form-privacy p {
    font-size: 1.2rem;
    margin-bottom: 10px;
}
.c-form-privacy a {
    color: #b48cd4;
}
.c-form-privacy .mwform-checkbox-field-text:after {
    content: "*";
    color: #AD0D0C;
}
.c-form .submit-btn-wrap {
    display: flex;
    justify-content: center;    
    flex-wrap: wrap;
}
.c-form .submit-btn, 
.c-form .submit-btn-wrap button {
    text-align: center;
	margin: 0 10px 20px;
}
.c-form input[type="submit"], 
.c-form .submit-btn-wrap button {
    width: 230px;
    font-size: 1.5rem;
    color: var(--purple3);
    background: var(--pink-light); 
    border: 1px solid var(--purple3);
    border-radius: 30px;
    padding: 12px 10px;
	cursor: pointer;
}
.c-form input[type="submit"]:hover, 
.c-form .submit-btn-wrap button:hover {
	color: #ffffff;
    background: var(--purple3);
}
#error-contact-modal::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(220, 221, 221, 0.7);
  transition: all 1s ease-in-out;
  z-index: 9998;
}
#error-contact-modal-content {
	width: 90%;
	max-width: 510px;
    padding: 20px;
	border-radius: 20px;
	position: fixed;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	z-index: 9999;
	background: #fff;
}
#error-contact-modal-content #error-list {
	color: red;
	font-size: 1.5rem;
	margin-bottom: 30px;
	list-style: disc;
    list-style-position: outside;
}
#error-contact-modal-content #error-list li {
	margin-left: 20px;
}
#error-contact-modal-content .btn-modal-close {
    margin: auto;
    text-align: center;
}
#error-contact-modal-content #modal-close {
	font-size: 1.2rem;
    color: #fff;
    border: 2px solid #000000;
    border-radius: 30px;
    padding: 10px 20px;
    background: #000000;
    width: 200px;
    cursor: pointer;
    text-align: center;	
}

/*確認画面*/
.confirm .c-form-privacy {
	visibility:hidden;
	margin: 0;
}
.confirm .c-form-box dd {
	min-height: 40px;
    background: #ffffff;
    padding: 10px 10px;
    border-radius: 5px;
}

@media only screen and (max-width: 767px) {
	.contact-head {
		text-align: left;
	}
}

/******************************/
/*ご利用ガイド */
/******************************/
.p-guide {
	padding-top: 20px;
}
.p-guide .c-page__nav ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 10px;
    margin: 0 auto 130px;
}
.p-guide .c-page__nav li {
    text-align: center;
}
.p-guide .c-page__nav a {
    font-size: 1.6rem;
    color: var(--brown);
    border: 1px solid var(--purple2);
    border-radius: 30px;
    display: block;
    padding: 13px;
}
.p-guide .c-page__nav a:hover {
	color: #fff;
	background: var(--purple2);
	opacity: 1;
}
.sec-guide {
	padding: 80px 0 130px;	
}
.sec-guide-1, 
.sec-guide-3, 
.sec-guide-5 {
    background: var(--purple1);
}
.c-guide-title {
    font-family: "Shippori_Mincho";
    font-weight: 500;
    font-size: 2.8rem;
    text-align: center;
}
.guide-order__wrap {
    background: #fff;
}
.guide-order-ttl {
    font-size: 2.2rem;
    text-align: center;
    color: #fff;
    background: #c7add9;
    padding: 10px;
}
.guide-order__list {
    padding: 45px 35px 20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.guide-order__item {
    display: flex;
    text-align: center;
}
.guide-order__box {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 5px;
	align-items: center;
}
.guide-order__image {
	padding: 0 10px;
}
.guide-order__txt {
    line-height: 1.2;
}
.guide-order-arrow__wrap {
    position: relative;
}
.guide-order-arrow__txt {
    color: #c7add9;
    font-size: 1.1rem;
    text-align: center;
	position: absolute;
	top: -20px;
}
.guide-order__arrow {
    transform: translateY(30px);
}
.guide-block:not(:last-child) {
    border-bottom: 1px solid var(--purple2);
    padding-bottom: 45px;
    margin-bottom: 45px;
}
.sec-guide-1 .guide-block:first-child {
	border-top: 1px solid var(--purple2);
	padding-top: 45px;
	margin-top: 45px;
}
.c-guide-title2 {
    font-size: 2.2rem;
    margin-bottom: 20px;
}
.guide-box img {
    max-width: 100%;
}
.guide-txt-note {
    font-size: 1.2rem;
}
.guide-list-style-disc {
    list-style: disc;
    padding-left: 20px;
}

@media screen and (max-width:1000px){
	.guide-order__item {
	   margin-bottom: 20px;
	}
}

@media only screen and (max-width: 767px) {
	.p-guide .c-page__nav ul {
		grid-template-columns: repeat(1, 1fr);
		margin: 0 auto 60px;
	}
	.p-guide .c-page__nav a {
		font-size: 1.4rem;
	}
	.guide-order-ttl, 
	.c-guide-title2 {
		font-size: 2rem;
	}
}

@media only screen and (max-width: 650px) {
	.guide-order__list {
		justify-content: center;
		flex-direction: column;
	}
	.guide-order__item {
		display: initial;
		margin-bottom: 50px;
	}
	.guide-order__item:last-child {
		margin-bottom: 0;
	}
	.guide-order__box {
		display: initial;
	}
	.guide-order__image {
		margin-bottom: 10px;
	}
	.guide-order-arrow__txt {
		top: 20px;
		left: 50%;
	    transform: translateX(20px);
	}
	.guide-order__arrow {
	    transform: rotate(90deg) translateX(25px);
	}
}
