/* news ------------------*/
#news .news-content {
	width: 79.69%;
    margin: 9.8rem auto 6.4rem;
}
#news .section-ttl {
	font-size: clamp(3rem, 1.878rem + 2vw, 5rem);
}
#news .section-sub {
	margin-bottom: 0;
}
#news .news-l {
	width: 20%;
	padding: 1.8rem 0 2.8rem 0.8rem;
	border-right: 1px solid #707070;
	margin-right: 5.4rem;
}
#news li {
	margin-bottom: 1.6rem;
	transition: .3s;
}
#news li:last-of-type {
	margin-bottom: 0;
}
#news li:hover .news-ttl,
#safety-info li:hover .news-ttl {
	color: #21A30D;
	transition: .3s;
}
#news .news-r li button {
	background: none;
	border: none;
	padding: 0;
	text-align: left;
}

#news button .news-date,
#news .modal-body span {
	font-size: 1.4rem;
	color: #fff;
	padding: 0.3rem 1.4rem;;
	background: rgb(33,163,13);
	background: linear-gradient(180deg, rgba(33,163,13,1) 0%, rgba(43,210,17,1) 100%);
	border-radius: 20px;
	margin-right: 1.6rem;
	width: fit-content;
	height: fit-content;
	display: inline;
	white-space: nowrap;
}
#news button .news-ttl {
	font-size: clamp(1.4rem, 1.32rem + 0.3vw, 1.6rem);
	text-align: left;
}

@media(max-width: 1024px) {
	#news .news-content {
		display: block !important;
		width: 79.69%;
		margin: 6.4rem auto 6.4rem;
	}
	#news .news-l {
		border: none;
		margin-right: 0;
		padding-bottom: 1.6rem;
	}
	#news .news-l h3.section-ttl {
		margin-right: 0.8rem;
	}
	#news .news-l div {
		display: flex;
		align-items: center;
		white-space: nowrap;
	}
	#news .news-r button {
		display: flex;
		flex-direction: column;
	}
	#news .news-r button div.d-flex {
		flex-direction: column;
	}
	#news button .news-date,
	#news .modal-body span {
		font-size: 1.3rem;
		margin-bottom: 0.8rem;
	}
}
@media(max-width: 960px) {
	#news .news-content {
		width: 93%;
	}
	#news .modal-content {
		width: 70rem !important;
	}
}
@media(max-width: 576px) {
	#news .news-content {
		width: 93% !important;
		margin-top: 0;
	}
	#news button .news-ttl {
		font-size: 1.6rem;
	}
	#news .modal-content {
		width: 98% !important;
	}
}




/* safety_info ------------------*/
#safety-info .safety-info-content {
	width: 79.69%;
    margin: 0 auto;
	margin-bottom: 6.4rem;
	padding: 2.4rem 4rem;
	border: 1px solid #707070;
	border-radius: 23px;
}
#safety-info .safe-top {
	/* padding-bottom: 2.4rem;
	border-bottom: 1px solid #707070; */
	padding-bottom: 0.8rem;
	margin-bottom: 2.4rem;
}
#safety-info .safe-top h3 {
	font-size: 2rem;
	margin-left: 1.6rem;
	margin-bottom: 0;
	line-height: 1.5;
}
#safety-info .safe-btn {
	background: none;
    border: none;
	margin-bottom: 1.6rem;
	padding: 0;
}
#safety-info .safe-btn img {
	width: 2.9rem;
}
#safety-info .safe-btn span {
	font-size: 1.8rem;
	font-size: clamp(1.6rem, 1.32rem + 0.5vw, 1.8rem);
	font-weight: 500;
	text-align: left;
	margin-left: 1.6rem;
}
.safety-info-modal .modal-content {
	width: 100rem;
	background-color: #EDEDED;
}
.safety-info-modal .modal-body {
	padding: 0 7% 0;
}
.safety-info-modal .safety-modal-head {
	margin-bottom: 2.4rem;
}
.safety-info-modal .safety-modal-head p {
	padding: 0 1.6rem;
}
.safety-info-modal .safety-modal-txt {
	margin-bottom: 6.8rem;
}
.safety-info-modal .safety-modal-txt p,
.safety-info-modal .safety-modal-txt a {
	line-height: 1.6;
	font-size: 1.8rem;
	word-break: break-word;
}
.safety-info-modal .safety-modal-point {
	position: relative;
	background-color: #fff;
	padding: 5.5rem 12% 3.6rem;
	margin-bottom: 3.2rem;
}
.safety-info-modal .safety-modal-point .arrow-box {
	position: absolute;
	top: -22px;
	left: 50%;
	transform: translateX(-50%);
    width: 68%;
    background: #222;
    padding: 0.1rem 1rem;
    border: 4px solid #222;
    color: #fff;
	font-size: clamp(1.6rem, 1.32rem + 0.5vw, 1.8rem);
    margin: 0 auto;
    margin-bottom: 1rem;
    letter-spacing: 0.05em;
	text-align: center;
}
.safety-info-modal .safety-modal-point .point-txt {
	font-size: clamp(1.6rem, 1.32rem + 0.2vw, 1.8rem);
	margin-left: 1rem;
}
.safety-info-modal .safety-modal-footer {
	margin-bottom: 3.6rem;
}
.safety-info-modal .safety-modal-footer span,
.safety-info-modal .safety-modal-footer a {
	font-size: 1.4rem;
}

@media(max-width: 960px) {
	#safety-info .safety-info-content {
		width: 93%;
	}
	.safety-info-modal .modal-content {
		width: 70rem !important;
	}
	.safety-info-modal .safety-modal-footer {
		flex-direction: column !important;
		align-items: normal !important;
	}
}
@media(max-width: 576px) {
	.safety-info-modal .modal-body {
		padding: 0 1.6rem;
	}
	#safety-info .safety-info-content {
		padding: 2rem 1.6rem 1rem;
		width: 98%;
	}
	#safety-info .safe-top h3 {
		font-size: 1.8rem;
	}
	#safety-info .modal-content {
		width: 98% !important;
	}
	#safety-info .safe-top {
		padding-bottom: 0;
	}
	#safety-info .safe-top img {
		width: 50px;
		height: 33px;
	}
	.safety-info-modal .safety-modal-txt p,
	.safety-info-modal .safety-modal-txt a {
		font-size: 1.6rem;
}
	.safety-info-modal .safety-modal-point {
		padding: 4rem 4% 2.4rem;
		margin-bottom: 3.2rem;
	}
	.safety-info-modal .safety-modal-point .arrow-box {
		width: 82%;
		font-size: 1.5rem;
	}
	.safety-info-modal .safe-btn span {
		margin-left: 0.8rem;
	}
}








.cta-top-txt p,
.cta-top-txt p span {
	font-size: clamp(1.6rem, 1.5vw, 2rem);
	color: #FF940D;
	line-height: 1.5;
}

/* cta ----------------------------------*/
.cta .cta-content{
	width: 79.69%;
	margin: 0 auto;
	border-radius: 23px;
	background: rgb(255,148,13);
	background: linear-gradient(140deg, rgba(255,148,13,1) 0%, rgba(248,180,30,1) 100%);
}
.cta .cta-inner {
	padding: 2.8rem 12%;
	background-image: url(../img/logo_or.png);
	background-size: 24rem;
}
.cta-txt {
	font-size: 2rem;
	margin-bottom: 0.8rem;
}
a.tel {
	display: block;
	font-size: 3.6rem;
	font-weight: 900;
	line-height: 1.1;
	letter-spacing: 0.05em;
	margin-bottom: 0.5rem;
}
.cta-hours {
	font-size: 1.8rem;
	margin-top: 0.8rem;
	margin-bottom: 2.2rem;
}
.cta-content a.cta-btn-txt {
	font-size: 1.8rem;
	color: #FF940D;
	text-align: left;
	font-weight: 700;
}
.cta-left a span {
	color: #fff;
	font-size: 2rem;
}
.cta-left a.cta-btn-txt {
	display: block;
	position: relative;
	margin: 0;
	padding: 1.6rem 12rem 1.6rem 6rem;
	width: 93%;
	font-weight: 700;
	background-color: #fff;
	border-radius: 50vh;
	transition: 0.3s;
	box-shadow: 3px 4px 16px -8px #777777;
	white-space: nowrap;
}
.cta-left a.cta-btn-txt::before {
	content: '';
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	width: 42px;
	height: 42px;
	background-color: #FF940D;
	border-radius: 50vh;
}
.cta-left a.cta-btn-txt::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 28px;
	transform: translateY(-50%) rotate(45deg);
	width: 15px;
	height: 15px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
}
.cta-left a.cta-btn-txt:hover {
	text-decoration: none;
	box-shadow: -1px -1px 20px #FFC173, -2px -1px 20px #FFC173;
}
.qr-inner {
	width: 23rem;
	height: 204px;
	background-color: #fff;
	border-radius: 11px;
	padding-top: 1.3rem;
}
.qr {
	width: 150px;
	margin: 0 auto;
}
.qr-txt {
	color: #04C755;
}


@media(max-width: 960px) {
	.cta .cta-content {
		width: 93%;
	}
	.cta .cta-inner {
		padding: 2.8rem 5%;
	}
}
@media(min-width: 768px){
	.cta-right {
		display: flex;
		align-items: center;
	}
	a[href^="tel:"], 
	.cta-right a {
		pointer-events: none;
	}
}
@media(max-width: 576px){ 
	.cta .cta-content {
		width: 98%;
	}
	.cta .cta-inner {
		display: block !important;
	}
	.cta-left {
		text-align: center;
		margin-bottom: 1.6rem;
	}
	.cta-txt {
		font-size: 1.6rem;
	}
	a.tel {
		font-size: 3.3rem;
		display: block;
		margin-bottom: 1rem;
	}
	.cta-left a span {
		display: block;
		font-size: 1.6rem;
	}
	.cta-hours {
		font-size: 1.5rem;
	}
	.cta-left a.cta-btn-txt {
		width: 100%;
		padding: 1.8rem 0rem 1.8rem 4rem;
	}
	.qr-inner {
		width: 100%;
		height: auto;
		padding: 1.8rem 0rem 1.8rem 4rem;
		border-radius: 50vh;
		transition: 0.3s;
		box-shadow: 3px 4px 16px -8px #777777;
		white-space: nowrap;
	}
	.qr-inner img {
		display: none !important;
	}
	.qr-txt {
		position: relative;
		text-align: left !important;
		font-weight: 700;
	}
	.qr-inner .qr-txt::before {
		content: '';
		position: absolute;
		top: 50%;
		right: 10px;
		transform: translateY(-50%);
		width: 45px;
		height: 45px;
		background-color: #04C755;
		border-radius: 50vh;
	}
	.qr-inner .qr-txt::after {
		content: '';
		position: absolute;
		top: 50%;
		right: 28px;
		transform: translateY(-50%) rotate(45deg);
		width: 15px;
		height: 15px;
		border-top: 3px solid #fff;
		border-right: 3px solid #fff;
	}
}




/* medication-guide ----------------------------------*/
#medication-guide-top .guide-content {
	width: 79.69%;
    margin: 0 auto;
}
#medication-guide-top .guide-inner {
	width: 100%;
	background-image: url(../img/guide_back.png);
	background-size:cover;
	padding: 2.6rem 3.6rem 3.2rem;
	border-radius: 23px;
	margin-bottom: 6.4rem;
	box-shadow: 3px 4px 11px -7px #777777;
	transition: .3s;
}
#medication-guide-top a:hover .guide-inner {
	box-shadow: none;
	transition: .3s;
}
#medication-guide-top .guide-l .section-sub {
	margin-bottom: 2.4rem;
} 
#medication-guide-top .guide-l .section-ttl {
	font-size: 5rem;
	line-height: 1;
}
#medication-guide-top .guide-l p {
	margin-bottom: 4rem;
}
#medication-guide-top button.gradient-button {
    font-size: 1.8rem;
    color: #fff;
    padding: 1rem 8.5rem;
    background: linear-gradient(180deg, rgba(33, 163, 13, 1) 0%, rgba(43, 210, 17, 1) 100%);
    border-radius: 50px;
    width: fit-content;
    height: fit-content;
    display: inline;
    white-space: nowrap;
    box-shadow: 3px 4px 16px -8px #777777;
    background-size: 100% 200%;
    background-position: top;
    transition: background-position 0.3s ease;
}
#medication-guide-top a:hover button.gradient-button {
    background-position: bottom;
}
#medication-guide-top .guide-r img {
	object-fit: contain;
}
#medication-guide-top a:hover .guide-r img {
	animation: floating-y1 1s ease-in-out infinite alternate-reverse;
}
@media(max-width: 960px) {
	#medication-guide-top .guide-content {
		width: 93%;
	}
	#medication-guide-top .guide-inner {
		padding: 2rem 2rem 2.4rem;
	}
}
@media(max-width: 576px) {
	#medication-guide-top .guide-inner {
		flex-direction: column;
	}
	#medication-guide-top .guide-l .section-ttl {
		font-size: 4rem;
	}
	#medication-guide-top .guide-l .section-sub {
		font-size: 1.4rem;
	}
	#medication-guide-top .guide-l p {
		font-size: 1.6rem;
	}
	#medication-guide-top button.sp {
		margin: 4rem auto 0;
	}
}




/* problem-solving ----------------------------------*/
#problem-solving .problem{
	position: relative;
	width: 100vw;
	margin-top: 12rem;
	background: linear-gradient(
		180deg,
		transparent 58%,
		transparent 0%,
		#21A30D 58%,
		#21A30D 100%
	);
	padding-bottom: 70px;
	margin-bottom: 9.6rem;
}
.problem:after {
	content: "";
	position: absolute;
	width: 115px;
	height: 0;
	bottom: -38px;
	left: 50%;
	transform: translateX(-50%);
	border-style: solid;
	border-right: 57px solid transparent;
	border-left: 57px solid transparent;
	border-top: 38px solid #21a30d;
	border-bottom: 0;
	z-index: 0;
}
#problem-solving .p-content {
	min-width: 1000px;
}
#problem-solving .p-top {
	margin-bottom: 6.4rem;
}
#problem-solving .problem h3 {
	font-size: 2.5rem;
	color: #222;
	font-weight: 600;
	display: inline;
	margin: 0 auto;
	position: relative;
}
#problem-solving .problem h3:after {
	content: "";
	display: block;
	width: 30%;
	height: 27px;
	background-image: url(../img/ballon_border.png);
	background-size: contain;
	background-repeat: no-repeat;
	position: absolute;
	bottom: -3.8rem;
}
#problem-solving .p-img-area {
	position: relative;
	/* overflow: hidden; */
}
#problem-solving .p-balloon {
	position: absolute;
}
#problem-solving .p-man-img {
	width: 35.1rem;
	z-index: 10;
}
#problem-solving .p-balloon.is-01 {
	left: 16.48%;
	top: 25px;
}
#problem-solving .p-balloon.is-02 {
	left: 5.16%;
	top: 108px;
}
#problem-solving .p-balloon.is-03 {
	left: 6.91%;
	top: 237px;
}
#problem-solving .p-balloon.is-04 {
	right: 15.16%;
	top: 4px;
}
#problem-solving .p-balloon.is-05 {
	right: 6.17%;
	top: 87px;
}
#problem-solving .p-balloon.is-06 {
	right: 8.36%;
	top: 261px;
}
#problem-solving .solving {
	margin-bottom: 9.4rem;
}
#problem-solving .solving .s-top p{
	color: #21A30D;
	font-size: clamp(2.1rem, 1.1vw, 2.6rem);
	margin-bottom: 0.3rem;
}
#problem-solving .solving .s-top h3 {
	color: #21A30D;
	/* font-size: 4rem; */
	font-size: clamp(3.5rem, 1.1vw, 4rem);
	margin-bottom: 2.8rem;
}
#problem-solving .solving .s-top h4 {
	width: fit-content;
	margin: 0 auto;
	margin-bottom: 4.8rem;
	color: #fff;
	/* font-size: 2.8rem; */
	font-size: clamp(2.3rem, 1.1vw, 2.8rem);
	padding: 1.5rem 3rem;
	background-color: #21A30D;
}
#problem-solving .solving ul li{
	width: fit-content;
}
#problem-solving .solving .s-detail span {
	color: #EFCF1E;
	font-size: 1.5rem;
}
#problem-solving .s-detail h5 {
	font-style: 2rem;
}
#problem-solving .s-detail .arrow_box{
	position: relative;
	width: 93%;
	height: fit-content;
	margin: 0 auto;
	background: #EFCF1E;
	padding: 13px 8%;
	text-align: center;
	align-items: center;
	font-size: 2rem;
	border-radius: 50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	line-height: 1;
}
#problem-solving .s-detail .arrow_box:after{
	border: solid transparent;
	content: '';
	height: 0;
	width: 0;
	pointer-events: none;
	position: absolute;
	border-color: rgba(239, 207, 30, 0);
	border-top-width: 12px;
	border-bottom-width: 12px;
	border-left-width: 10px;
	border-right-width: 10px;
	margin-left: -10px;
	border-top-color: #EFCF1E;
	top: 100%;
	left: 50%;
}
#problem-solving .s-detail img {
	width: 24.3rem;
}
#problem-solving .s-detail p {
	width: 29.4rem;
	font-size: clamp(1.5rem, 1.1vw, 1.8rem);
	margin: 0 auto;
}
@media(max-width: 1024px) {
	#problem-solving .pc.p-balloon img {
		width: 94%;
	}
	#problem-solving .p-balloon.is-01 {
		left: 11.48%;

	}
	#problem-solving .p-balloon.is-02 {
		left: 1.86%;
	}
	#problem-solving .p-balloon.is-03 {
		left: 1.91%;
		top: 229px;
	}
	#problem-solving .p-balloon.is-04 {
		right: 9.16%;
	}
	#problem-solving .p-balloon.is-05 {
		right: 1.17%;
		top: 89px;
	}
	#problem-solving .p-balloon.is-06 {
		right: 1.36%;
		top: 250px;
	}
}
@media(max-width: 960px) {
	#problem-solving .pc.p-balloon img {
		width: 84%;
	}
	#problem-solving .p-content {
		min-width: 100vw;
	}
	#problem-solving .p-man-img {
		width: 35%;
	}
	#problem-solving .p-balloon.is-01 {
		left: 1.48%;
        top: 22px;
	}
	#problem-solving .p-balloon.is-02 {
		left: 3.16%;
        top: 94px;
	}
	#problem-solving .p-balloon.is-03 {
		left: -0.09%;
        top: 181px;
	}
	#problem-solving .p-balloon.is-04 {
		right: -3.84%;
		top: 0px;
	}
	#problem-solving .p-balloon.is-05 {
		right: -2.83%;
		top: 76px;
	}
	#problem-solving .p-balloon.is-06 {
		right: -6.64%;
		top: 192px;
	}

	#problem-solving .s-detail .arrow_box {
		width: 80%;
		font-size: clamp(1.8rem, 1.1vw, 2rem);
	}
	#problem-solving .s-detail img {
		width: 85%;
	}
	#problem-solving .s-detail p {
		width: 100%;
		margin: 0 auto;
	}
}@media(max-width: 768px) {
	#problem-solving .pc.p-balloon img {
		width: 80%;
	}
	#problem-solving .p-balloon.is-04 {
		right: -5.84%;
	}
	#problem-solving .p-balloon.is-05 {
		right: -5.83%;
	}
	#problem-solving .p-balloon.is-06 {
		right: -8.64%;
	}
}
@media(max-width: 576px) {
	#problem-solving .problem {
		margin-top: 6.4rem;
        padding-bottom: 254px;
        background: linear-gradient(180deg, transparent 84%, transparent 0%, #21A30D 76%, #21A30D 100%);
	}
	#problem-solving .problem h3 {
		font-size: 2rem;
	}
	#problem-solving .problem h3:after {
		width: 74%;
		height: 27px;
	}
	#problem-solving .problem .overflow-hidden {
		overflow: initial !important;
	}
	#problem-solving .p-balloon.is-07 {
		position: inherit;
		width: 80%;
		margin: 0 auto;
	}
	#problem-solving .p-balloon.is-07 img {
		width: 100%;
	}
	#problem-solving .p-man {
		position: absolute;
		top: 440px;
		z-index: 1;
	}
	#problem-solving .p-man-img {
		width: 50%;
	}

	#problem-solving .solving {
		margin-bottom: 6.4rem;
	}
	#problem-solving .solving .s-top p {
		font-size: 1.8rem;
	}
	#problem-solving .solving .s-top h3 {
		font-size: 2.4rem;
		margin-bottom: 1.6rem;
	}
	#problem-solving .solving .s-top h4 {
		width: 94.87%;
		font-size: clamp(1.8rem, 1.1vw, 2rem);
		padding: 1.6rem 5.2rem;
		line-height: 1.5;
	}
	#problem-solving .solving .s-list ul {
		flex-direction: column !important;
		padding-left: 0;
	}
	#problem-solving .solving .s-list .s-detail {
		margin-bottom: 2.4rem;
	}
	#problem-solving .solving .s-detail span {
		font-size: 1.4rem;
	}
	#problem-solving .s-detail img {
		width: 52%;
	}
	#problem-solving .s-detail p {
		font-size: 1.6rem;
		margin: 0 auto;
	}
}




/* favorable ----------------------------------*/
#favorable {
	/* margin-bottom: 6.4rem; */
	margin-bottom: 1.6rem;
}
#favorable .users {
	height: 66.3rem;
}
#favorable .users-img-area {
	position: relative;
}
#favorable .users-img-area .user-gg,
#favorable .users-img-area .user-ballon,
#favorable .f-txt-area {
	position: absolute;
}
#favorable .user-gg.is-11{
	left: 25.63%;
	top: 25.3rem;
}
#favorable .user-gg.is-11 img {
	width: 12.2rem;
}
#favorable .user-gg.is-12 {
	width: 14.8rem;
	height: 367px;
	overflow: hidden;
	left: 36.48%;
	top: 25.3rem;
}
#favorable .user-gg.is-12 img {
	width: 14.8rem;
}
#favorable .user-gg.is-13 {
	right: 36.80%;
	top: 26.1rem;
}
#favorable .user-gg.is-13 img {
	width: 18.8rem;
}
#favorable .user-gg.is-14 {
	right: 21.02%;
	top: 26.8rem;
}
#favorable .user-gg.is-14 img {
	width: 18.7rem;
}
#favorable .user-ballon.is-21 {
	left: 15.08%;
	top: 9.1rem;
}
#favorable .user-ballon.is-22 {
	left: 29.17%;
	top: 0;
}
#favorable .user-ballon.is-23 {
	right: 32.14%;
	top: 2.4rem;
}
#favorable .user-ballon.is-24 {
	right: 15.02%;
	top: 9.1rem;
}
#favorable .f-txt-area {
	width: 79.69%;
	background-color: #21A30D;
	border: 5px solid #fff;
	padding: 3.2rem 0;
	border-radius: 26px;
	left: 10.16%;
	top: 45.5rem;
}
#favorable .f-txt-area p {
	color: #fff;
	font-size: 2rem;
	margin-bottom: 0.8rem;
}
#favorable .f-txt-area button {
	/* width: 32rem; */
	margin-top: 2.4rem;
	box-shadow: 0px 3px 15px -5px #777777;
}
#favorable .f-txt-area button a {
	color: #21A30D;
	font-size: 1.7rem;
	background-color: #fff;
	padding: 1.4rem 5.4rem;
	border-radius: 50px;
	transition: 0.5s;
}
#favorable .f-txt-area button a:hover {
	color: #fff;
	background-color: #21A30D;
	border: 1px solid #fff;
	transition: 0.3s;
}
@media(max-width: 1024px) {
	#favorable .user-ballon.is-21 {
		left: 9.08%;
	}
	#favorable .user-ballon.is-22 {
		left: 24.17%;
	}
	#favorable .user-ballon.is-23 {
		right: 29.14%;
	}
	#favorable .user-ballon.is-24 {
		right: 8.02%;
	}
}
@media(max-width: 960px) {
	#favorable .user-ballon.is-21 {
		left: 2.08%;
	}
	#favorable .user-ballon.is-22 {
		left: 20.17%;
	}
	#favorable .user-ballon.is-23 {
		right: 19.84%;
		top: 0.4rem;
	}
	#favorable .user-ballon.is-24 {
		right: 0.02%;
		top: 15.1rem;
	}
	#favorable .f-txt-area {
		width: 93%;
		left: 50%;
		top: 50%;
		transform: translate(-50%, 220%);
	}
	#favorable .user-gg.is-11 {
		left: 18.63%;
	}
	#favorable .user-gg.is-12 {
		left: 32.48%;
	}
	#favorable .user-gg.is-13 {
		right: 33.8%;
		z-index: -1;
	}
	#favorable .user-gg.is-14 {
		right: 13.02%;
	}
}

@media(max-width: 576px) {
	h4.arrow_box {
		width: 95%;
		height: 90px;
		font-size: 1.8rem;
	}
	#favorable .f-txt-area {
		width: 98%;
	}
	#favorable .user-gg.is-11 {
		left: auto;
		right: 3rem;
        top: 36.6rem;
	}
	#favorable .user-gg.is-11 img {
		width: 7.2rem;
	}
	#favorable .user-gg.is-12 {
		left: 2rem;
        top: 7.6rem;
		height: 22.4rem;
	}
	#favorable .user-gg.is-12 img {
		width: 7.6rem;
	}
	#favorable .user-gg.is-13 {
		top: 84.2rem;
		right: 15rem;
        z-index: 1;
	}
	#favorable .user-gg.is-13 img {
		width: 12.5rem;
	}
	#favorable .user-gg.is-14 {
		right: auto;
		left: 0;
		top: 62.6rem;
	}
	#favorable .user-gg.is-14 img {
		width: 12.3rem;
	}
	#favorable .user-ballon.is-21 {
		left: auto;
		right: 6.6rem;
        top: 25.4rem;
        overflow: hidden;
	}
	#favorable .user-ballon.is-22 {
		left: 3rem;
	}
	#favorable .user-ballon.is-23 {
		right: 0;
		top: 67.1rem;
	}
	#favorable .user-ballon.is-24 {
		right: auto;
		left: 0;
        top: 47.8rem;
	}
	#favorable .f-txt-area {
		transform: translate(-50%, 565%);
		z-index: 1;
	}
	#favorable {
		margin-bottom: 59.4rem;
	}
	#favorable .f-txt-area p {
		font-size: 1.6rem;
	}
	#favorable .f-txt-area button a {
		font-size: 1.6rem;
	}
}




/* service ----------------------------------*/
#service {
	margin-top: 12rem;
}
#service .service-inner {
	background: linear-gradient(180deg, transparent 58%, transparent 0%, #F6F2E4 58%, #F6F2E4 100%);
}
#service .service-inner .s-wrap{
	background-color: #FAF7F0;
	border-radius: 46px;
	background-image: url(../img/bg_icons.png);
	background-size: 1150px;
	background-repeat: repeat;
	background-attachment: fixed;
}
#service .section-sub {
	margin-bottom: 5.2rem;
}
#service .service-attention {
	font-size: 1.6rem;
	font-weight: 400;
	background-color: rgb(255, 148, 13, 0.2);
	color: #FF940D;
	width: 90%;
	margin: 0 auto 3rem;
	border-radius: 5px;
	padding: 0.4rem;
}
#service .service-list {
	margin-bottom: 8rem;
}
#service .service-list li {
	width: 45.31%;
	margin-bottom: 2.4rem;
}
#service .service-list li:nth-child(odd) {
	margin-right: 4rem;
}
#service .service-list .s-list-btn {
	background-color: #fff;
	border: 1px solid #707070;
	border-radius: 50px;
	padding: 0.8rem 2.2rem;
	transition: 0.2s;
	box-shadow: 3px 4px 16px -8px #777777;
}
#service .service-list .s-list-btn img {
	transition: transform 0.3s ease-out;
}
#service .service-list .s-list-btn:hover {
	border: 1px solid #FF940D;
	box-shadow: none;
}
#service .service-list .s-list-btn:hover img {
	transform: rotate(10deg);
}
#service .service-list .s-list-btn p {
	font-size: clamp(2rem, 2vw, 2.4rem);
	color: #444;
	transition: 0.2s;
	text-align: left;
	line-height: 1.3;
    margin-bottom: 6px;
}
#service .service-list .s-list-btn:hover p{
	color: #FF940D;
}
#service .service-list .s-list-btn p:nth-child(2) {
	font-size: 1.5rem;
	color: #707070;
	line-height: 1.1;
	margin-bottom: 0;
}
#service .service-list .s-list-btn:hover p:nth-child(2) {
	color: #444;
}
#service .service-list .s-list-icon {
	margin-right: 1.2rem;
}
#service .service-list .s-list-img {
	width: 8rem;
}
#service .service-footer {
	padding-bottom: 12rem;
}
#service .service-footer a {
	width: 21.56%;
	padding: 2rem 6.4rem;
	color: #fff;
	font-size: 1.8rem;
	border: 3px solid #fff;
	border-radius: 50px;
	background: linear-gradient(150deg, rgba(255, 148, 13, 1) 0%,rgba(248, 180, 30, 1) 50%, rgba(255, 148, 13, 1) 100%);
	background-position: 1% 50%;
    background-size: 200% auto;
	box-shadow: 3px 4px 16px -8px #777777;
    transition: all 0.2s ease-out;
}
#service .service-footer a:hover {
	background-position: 99% 60%;
}
@media(max-width: 1024px) {
	#service .service-list .s-list-btn p:nth-child(2) {
		font-size: 1.2rem;
	}
}
@media(max-width: 960px) {
	#service .service-list ul {
		flex-direction: column;
	}
	#service .service-list li {
		width: 90%;
		margin: 0 auto 2.4rem;
	}
	.modal-content {
		width: 90% !important;
		margin: 0 auto;
	}
	
}
@media(max-width: 576px) {
	#service .service-inner .s-wrap {
		background-size: 777px;
	}
	#service .service-list ul {
		padding-left: 0;
	}
	#service .service-list li {
		width: 94%;
		margin: 0px auto 1.6rem;
	}
	#service .service-list .s-list-btn {
		border-radius: 7px;
		padding: 0.5rem 1.2rem;
	}
	#service .service-list .s-list-icon {
		width: 3rem;
		height: 3rem;
		margin-right: 0.8rem;
	}
	#service .service-list .s-list-btn p {
		font-size: 1.8rem;
	}
	#service .service-list li:nth-child(odd) {
		margin-right: auto;
	}
	#service .service-footer a {
		padding: 1.6rem 9rem;
	}
	#service .service-list .s-list-btn p {
		margin-bottom: 4px;
	}
	#service .section-sub {
		margin-bottom: 3.2rem;
	}
	#service .service-attention {
		font-size: 1.2rem;
		width: 94%;
		margin: 0 auto 1.6rem;
	}
}





/* users-voice ----------------------------------*/
#users-voice .u-voice-inner {
	background-color: #F6F2E4;
	border-radius: 0 0 46px 46px;
	padding-bottom: 12rem;
}
#users-voice .swiper-container,
#staff .staff-swiper-container {
	position: relative;
}
#users-voice .voice-swiper-container {
	height: 45rem;
}
#users-voice .swiper-slide {
	padding: 0 2rem;
}
#users-voice .swiper-slide .item {
	background-color: #fff;
	border-radius: 15px;
	padding: 2.5rem 3.6rem 3.2rem;
	height: 45rem;
}
#users-voice .slide-head {
	margin-bottom: 2.4rem;
}
#users-voice .slide-head img {
	margin-right: 2.4rem;
}
#users-voice .slide-head p {
	font-size: 2rem;
}
#users-voice .slide-head span {
	font-size: 1.5rem;
}
#users-voice span.user-request {
	color: #21A30D;
	
}
#users-voice .slide-txt p.user-request {
	color: #21A30D;
}
#users-voice .slide-txt p {
	line-height: 1.5;
	font-size: 1.7rem;
}
#users-voice .swiper-pagination {
	bottom: -40px;
}
#users-voice .swiper-pagination-bullet,
#staff .swiper-pagination-bullet {
	background-color: #21A30D;
}
.swiper-button-next {
	right: 13px;
}
.swiper-button-prev:before,
.swiper-button-next:before {
	content: "";
	width: 4rem;
	height: 4rem;
	border: 0;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	border-radius: 4rem;
	background-color: #21A30D;
}
.swiper-button-prev:before {
	left: -10px;
}
.swiper-button-prev:after,
.swiper-button-next:after {
	content: "";
	width: 1.5rem;
	height: 1.5rem;
	border: 0;
	border-top: solid 0.3rem #fff;
	border-right: solid 0.3rem #fff;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
.swiper-button-prev:after {
	left: -0.3rem;
	transform: rotate(-135deg);
}
.swiper-button-next:after {
	right: -0.5rem;
	transform: rotate(45deg);
}

@media(max-width: 576px) {
	#users-voice .slide-head p {
		font-size: 1.7rem;
	}
	#users-voice .slide-head span {
		font-size: 1.5rem;
	}
	#users-voice .slide-txt p {
		font-size: 1.6rem;
		font-weight: 500;
	}
	#users-voice .slide-head img {
		width: 7.4rem;
		margin-right: 1.6rem;
	}
}







/* staff ----------------------------------*/
#staff .staff-inner {
	padding-top: 6.4rem;
}
#staff .arrow_box {
	color: #fff;
	background-color: #21A30D;
	border: none;
	margin-bottom: 4rem;
}
#staff .arrow_box:before {
	margin-top: 0px;
}
#staff .arrow_box:after {
	border-top-color: #21A30D;
}
#staff .staff-intro {
	position: relative;
}
#staff .stf {
	width: fit-content;
	padding: 0px 4rem;
}
#staff .stf-h {
	position: relative;
	width: fit-content;
	margin: 0.8rem auto 2.4rem;
}
#staff .stf-name {
	position: absolute;
	bottom: 1.5rem;
	right: -3.6rem;
	color: #fff;
	font-size: 2.5rem;
	font-weight: 600;
	width: 18rem;
	padding: 0.2rem 0;
	background: rgb(33,163,13);
	background: linear-gradient(180deg, rgba(33,163,13,1) 0%, rgba(43,210,17,1) 100%);
}
#staff .stf-txt {
	margin: 0 auto;
	width: 34rem;
	line-height: 1.6;
}
#staff .stf-txt p {
	font-size: 1.6rem;
	text-align: left;
}
#staff .swiper-autoheight .swiper-wrapper {
	height: fit-content !important;
}
#staff .swiper-wrapper {
	margin-bottom: 50px;
}
#staff .swiper-pagination {
	bottom: 0;
}


.scroll-area {
	position: absolute;
	z-index: -100;
	top: 30%;
	transform: translateY(-50%);
}
.scroll-text {
	display: flex;
	list-style: none;
	padding-inline: 0;
	margin-inline: 0;
	gap: 0;
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	overflow: hidden;
}
.scroll-text li {
	color: #fff;
	-webkit-text-stroke: 1px #21A30D;
	text-stroke: 1px #21A30D;
	font-size: 17vw;
	font-weight: bold;
	white-space: nowrap;
	padding: 0 0.5em 0 0;
	margin: 0;
	animation: marquee-left 30s linear infinite;
}

/* PCの時のフォントサイズ */
@media (min-width: 600px) {
	.scroll-text li {
		font-size: 18vw;
	}
	}
	/* アニメーション */
	@keyframes marquee-left {
	100% {
		transform: translateX(-100%);
	}
}
@media(max-width: 1200px) {
	#staff .stf {
		padding: 0 2rem;
	}
} 
@media(max-width: 960px) {
	#staff .stf-txt {
		width: 30rem;
	}
} 
@media(max-width: 576px) {
	#staff h4.arrow_box {
		height: 58px;
	}
	#staff .staff-intro {
		margin-bottom: 2.4rem;
	}
	#staff .stf {
		width: 100% !important;
		margin: 0 auto 3.2rem !important;
	}
	#staff .stf-h img {
		width: 80%;
	}
	#staff .s-com {
		font-size: 1.2rem;
	}
	#staff .stf-name {
		bottom: -0.5rem;
		right: 1.4rem;
		font-size: 1.8rem;
		width: 8rem;
	}
	#staff .stf-txt {
		width: 30rem;
        font-size: 1.4rem;
        margin: 0 auto;
	}
	#staff .stf-txt p {
		font-size: 1.4rem;
	}
	.scroll-area {
		top: 27%;
	}
	.scroll-text li {
		font-size: 30vw;
	}
}





/* faq ----------------------------------*/
#faq .faq-inner {
	background-color: #FAF7F0;
	border-radius: 46px;
	padding-bottom: 18.4rem;
}
#faq .faq-content {
	width: 69.06%;
	margin: 4.8rem auto 0;
	border-radius: 9px;
}
#faq .qa-answer {
	font-weight: 400;
}
#faq .qa__box {
    width: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 10;
}
#faq .qa__box dl {
	margin-bottom: 0;
}
#faq .qa__box > dl > dt {
	background-color: #fff;
	display: flex;
	align-items: center;
	padding: 1.6rem 6rem 1.6rem 3rem;
	position: relative;
}
#faq .qa-question {
	font-size: 1.8rem;
	line-height: 1.5;
}
#faq p.a-notes {
	font-size: 1.4rem;
	margin-top: 0.8rem;
	color: #5f5f5f;
}
#faq .qa__box > dl > dt .crossBar {
	width: 20px;
	height: 20px;
	position: absolute;
	top: 50%;
	right: 24px;
	transform: translateY(-50%);
}
#faq .qa__box > dl > dt .crossBar::before {
	content: "";
	display: inline-block;
	width: 2px;
	height: 100%;
	background-color: #21A30D;
	position: absolute;
	top: 0;
	left: 50%;
	transform-origin: center center;
	transform: translateX(-50%) rotate(0deg);
	transition: transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
}
#faq .qa__box > dl > dt .crossBar::after {
	content: "";
	display: inline-block;
	width: 100%;
	height: 2px;
	background-color: #21A30D;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
#faq .qa__box > dl > dt > span,
#faq .qa__box > dl > dd > span{
	font-size: 2.4rem;
	width: 4.5rem;
	height: 4.5rem;
	line-height: 0.8;
	text-align: center;
	color: #fff;
	margin-right: 23px;
	border-radius: 50px;
	padding: 1.2rem;
}
#faq .qa__box > dl > dt > span {
	background-color: #21A30D;
}
#faq .qa__box > dl > dd > span {
	background-color: #FF940D;
	line-height: 0.7;
}
#faq .qa__box > dl > dd {
	margin: 0;
	background-color: #fff;
	display: flex;
	align-items: center;
	padding: 0px 30px;
	max-height: 0;
	overflow: hidden;
	transition: all 0.8s cubic-bezier(0.19, 1, 0.22, 1);
	border-bottom: solid 1px #E6E2E2;
}
#faq .qa__box:last-of-type dl dd {
	border-bottom: none;
}
#faq .qa__box > dl > dd.is-open {
	max-height: 150px;
	padding: 1.6rem 3rem;
}
#faq .qa__box > dl > dt.is-open .crossBar::before {
	transform: translateX(-50%) rotate(90deg);
}

@media(max-width: 960px) {
	#faq .faq-content {
		width: 85%;
	}
}
@media(max-width: 576px) {
	#faq .faq-content {
		width: 96%;
	}
	#faq .qa__box > dl > dt > span,
	#faq .qa__box > dl > dd > span {
		font-size: 1.6rem;
		width: 3.2rem;
		height: 3.2rem;
		line-height: 0.5;
		padding: 1rem;
		margin-right: 8px;
	}
	#faq .qa__box > dl > dt {
		padding: 1.6rem 4.0rem 1.6rem 1.6rem;
	}
	#faq .qa-question{
		font-size: 1.6rem;
	}
	#faq .qa-answer {
		font-size: 1.5rem;
	}
	#faq .qa__box > dl > dd.is-open {
		padding: 1.6rem 0.8rem;
		max-height: 220px;
	}
	#faq .faq-inner {
		padding-bottom: 8.8rem;
	}
	#faq .qa__box > dl > dt .crossBar {
		width: 16px;
		height: 16px;
		right: 16px;
	}
}







/* contact ----------------------------------*/
#contact .contact-inner {
	padding-bottom: 9.2rem;
}
#contact .contact-head-txt {
	margin-bottom: 4.8rem;
}
#contact .form-area {
	margin: 0 auto;
}
#contact .form-area .contact_item {
	margin-bottom: 2.4rem;
}
#contact .form-area .contact_item .info_protection-txt {
	margin-bottom: 1.2rem;
}
#contact .form-area .c-item-l {
	width: 30%;
	text-align: right;
}
#contact .form-area label,
#contact .form-area .label_substitution {
	font-size: 1.8rem;
	margin-right: 0.8rem;
	letter-spacing: 0;
}
#contact .form-area span.required {
	font-size: 1.2rem;
	color: #fff;
	background-color: #21A30D;
	border-radius: 13px;
	padding: 0.4rem 1.3rem;
	margin-right: 1.6rem;
	line-height: 2.5;
	white-space: nowrap;
}
#contact .form-area .input-txt input,
#contact .form-area .input-txt textarea,
#contact .form-area .input-txt .scrollable,
#contact .form-area .conf-input,
#contact .form-area select {
	padding: 1.1rem 1.6rem;
	border: 1px solid #ddd;
	border-radius: 9px;
	width: 47.66%;
	font-size: 1.6rem;
}
#contact .form-area select {
	width: 100%;
}
#contact .form-area select option {
	font-size: 90%;
}
#contact .form-area .input-txt textarea,
#contact .form-area .input-txt .scrollable {
	height: 17rem;
}
#contact .form-area .input-txt input,
#contact .form-area .input-txt textarea,
#contact .form-area select {
	box-shadow: inset 0 1px 3px rgba(0, 0, 0, .2);
}
input::placeholder {
	color: #ccc;
}
#contact .form-area .c-checkbox {
	text-align: left;
	margin-bottom: 0.8rem;
}
#contact .form-area .c-checkbox .checkbox-input {
	margin-right: 0.8rem;
}
#contact .form-area .info_protection-txt textarea span {
	font-size: 1.5rem;
}
#contact .form-area .info_protection-txt textarea {
	overflow: scroll;
	text-align: left;
	font-size: 1.4rem;
	font-weight: 400;
}
#contact .form-area .info_protection-checkbox {
	margin-bottom: 4rem;
}
#contact .form-area .info_protection-checkbox input {
	width: 2rem;
	height: 2rem;
	margin-right: 0.8rem;
}
#contact .form-area .info_protection-checkbox label {
	font-size: 1.4rem;
}
#contact .form-check-input:checked {
	background-color: #21A30D;
	border-color: #21A30D;
}
#contact button {
	margin-bottom: 12rem;
	padding: 1.8rem 8.8rem;
	color: #fff;
	font-size: 1.8rem;
	margin: 0 auto;
	border: 3px solid #fff;
	border-radius: 50px;
	background: linear-gradient(158deg, rgba(255, 148, 13, 1) 0%,rgba(248, 180, 30, 1) 50%, rgba(255, 148, 13, 1) 100%);
	background-position: 1% 50%;
    background-size: 200% auto;
	box-shadow: 3px 4px 16px -8px #777777;
    transition: all 0.2s ease-out;
}
#contact button:hover {
	background-position: 99% 50%;
}
#contact .scrollable {
    overflow-y: auto;
    white-space: pre-wrap;
}
.scrollable strong {
	font-size: 1.4rem !important;
}
.scrollable p {
	font-size: 1.3rem !important;
	font-weight: 400;
	line-height: 1.5;
}
.scrollable span {
	font-weight: 400;
}
.scrollable table,
.scrollable table th,
.scrollable table td {
	border: 1px solid #ccc;
}

#contact .when-error,
#contact .checkbox-area {
	width: 47.66%
}
#contact .when-error.checkbox,
#contact .form-area .input-txt .when-error textarea {
	width: 100%;
}
#contact .form-area .input-txt .when-error input {
	width: 100%;
}
#contact .form-area .when-error p.error{
	text-align: left;
	font-size: 1.3rem;
	color: #ff4949;
	background-color: rgba(255, 73, 73, 0.2);
	padding: 0.5rem 1.4rem;
	margin-top: 0.4rem;
}
#contact .contact_item:has(.when-error){
	align-items: stretch !important;
}
#contact .confirm-back-btn {
	background: none;
    border: none;
    box-shadow: none;
	color: #707070 !important;
	font-size: 1.6rem;
	transition: .2s;
}
#contact .confirm-back-btn:hover {
	opacity: 0.5;
	transition: .2s;
}
#contact .send-back-btn {
	color: #fff;
    font-size: 1.8rem;
}
#contact .form-area .conf-input {
	border: none;
	overflow-wrap: break-word;
}
#contact .form-area li.conf-input,
#contact .form-area .order-detail {
	padding-top: 3px;
}

@media(max-width: 960px) {
	#contact .form-area .input-txt input,
	#contact .form-area .input-txt textarea,
	#contact .form-area .input-txt .scrollable,
	#contact .when-error,
	#contact .checkbox-area {
		width: 66%;
	}
	#contact .form-area label,
	#contact .form-area .label_substitution {
		font-size: clamp(1.5rem, 1.1vw, 1.8rem)
	}
} 
@media(max-width: 576px) {
	#contact .section-sub {
		margin-bottom: 1.6rem;
	}
	#contact .contact-head-txt {
		font-size: 1.6rem;
		margin-bottom: 4rem;
	}
	#contact .contact_item {
		display: block !important;
	}
	#contact .form-area .c-item-l {
		width: 90%;
		text-align: left;
		display: block;
		margin: 0 auto;
		margin-bottom: 0.5rem;
	}
	#contact .form-area .input-txt input,
	#contact .form-area .input-txt textarea,
	#contact .form-area .info_protection-checkbox,
	#contact .form-area .checkbox-area,
	#contact .form-area .conf-input {
		display: block;
		width: 96%;
		margin: 0 auto;
	}
	#contact .form-area .info_protection-checkbox {
		margin-bottom: 4rem;
	}
	#contact button {
		padding: 1.6rem 13rem;
	}
	#contact .contact-inner {
		padding-bottom: 8.8rem;
	}

	#contact .when-error,
	#contact .checkbox-area,
	#contact .form-area .input-txt .scrollable {
		width: 96%;
		margin: 0 auto;
	}
	#contact .send-back-btn {
		font-size: 1.6rem;
	}
	#contact .form-area .conf-input {
		padding: 0.8rem 0rem;;
	}
	#contact .form-area li.conf-input {
		margin: 0;
	}
}



/* banner ----------------------------------*/
@media(max-width: 960px) {
	#banner img {
		width: 90%;
		margin: 0 auto;
	}
}

/* map ----------------------------------*/
#map {
	padding: 8rem 0 4.8rem;
}
@media(max-width: 576px) {
	#map {
		padding-bottom: 10rem;
	}
}



/* footer ----------------------------------*/
#footer .sec {
	padding: 5.4rem 6.4rem 6.4rem;
}
#footer .footer-inner {
	background-color: #222222;
	border-radius: 10px;
	width: 97.81%;
	margin: 0 auto;
}
#footer .footer-l {
	width: 30%;
}
#footer .footer-l img {
	width: 80%;
}
#footer .line-right {
	border-right: 1px solid #707070;
}
#footer .footer-logo-ja {
	margin-bottom: 2.4rem;
}
#footer .footer-logo-en {
	margin-bottom: 4rem;
}
#footer .menu li a {
	display: block;
	font-size: 1.7rem;
	color: #fff;
	margin-bottom: 1.8rem;
}
#footer .footer-r {
	padding: 0 0 0 8.8rem;
	width: 65%;
}
#footer .cta-content .cta-inner {
	justify-content: space-between !important;
	padding-top: 5rem;
}
#footer .cta-left a.cta-btn-txt {
	text-align: left;
}

footer {
	padding: 2rem;
	font-size: 1.2rem;
}
@media(max-width: 1024px) {
	#footer .footer-r {
		padding: 0 0 0 6.2rem;
	}
	#footer ul.menu {
		padding-left: 0;
	}
}
@media(max-width: 960px) {
	#footer .cta-inner {
		display: block !important;
	}
	#footer .line-right {
		padding-right: 15%;
	}
	#footer .menu li a {
		margin-bottom: 1.6rem;
		white-space: nowrap;
	}
	#footer .footer-r {
		padding: 0rem 0 0 10%;
	}
	#footer .footer-l img {
		width: 170%;
	}
	#footer .footer-r .cta-left {
		margin-bottom: 2.4rem;
	}
}
@media(max-width: 576px) {
	#footer .footer-r {
		width: 100%;
	}
	#footer .footer-inner .wrap {
		display: block !important;
		padding: 3.2rem 2.4rem 5.6rem;
	}
	#footer .line-right {
		width: 100%;
		border: none;
		border-bottom: 1px solid #707070;
		padding: 0 0 5.6rem;
	}
	#footer .line-right img {
		width: 22rem;
	}
	#footer .cta-content .cta-inner {
		padding-top: 4rem;
	}
	#footer .cta-hours {
		margin-bottom: 2.4rem;
	}
	#footer .footer-r {
		padding: 0;
		padding-top: 4rem;
	}
	#footer .footer-r ul {
		display: flex !important;
		justify-content: center;
	}
}





/* modal ----------------------------------*/
.modal-dialog {
	/* max-width: auto !important;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) !important; */
	display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
}
.modal-header,
.modal-footer {
	width: 95%;
	border: none;
	margin: 0 auto;
}
.modal-content {
	width: 80.8rem;
	position: relative;
}
.modal-content .btn-close {
	position: absolute;
	font-size: 1.6rem;
	background-color: #222;
	border-radius: 50px;
	padding: 1.5rem;
	top: -18px;
	right: -18px;
	opacity: 1;
}
.modal-content .btn-close span {
	color: #fff;
	font-size: 1.6rem;
}


#news .modal-body {
	padding: 3.8rem 4.8rem 5.4rem;
}
#news .modal-body span {
	font-size: 1.5rem;
	padding: 0.4rem 4rem;
}
#news .modal-body .news-ttl {
	font-size: 2rem;
	margin: 1.6rem 0 0.8rem 0;
}
#news .modal-body .news-date {
	font-size: 1.5rem;
	font-weight: 400;
	margin-bottom: 3.2rem;
}
#news .modal-body .news-txt {
	font-weight: 400;
	line-height: 1.8;
}


#service .modal h2 {
	width: 74.5rem;
	font-size: 2.4rem !important;
	color: #fff;
	background-color: #222222;
	border-radius: 5px;
	padding: 8px 0;
}
#service .modal-content .modal-l img {
	width: 23rem;
}
#service .modal-content .modal-r-wrap {
	width: 42rem;
}
#service .modal-content .modal-r {
	width: 44rem;
	padding: 2.8rem 1rem;
	background-color: rgba(33, 163, 13, 0.12);
	border-radius: 8px;
}
#service .modal-content .modal-r h5 {
	font-size: 2rem;
	color: #222;
	margin-bottom: 2.4rem;
}
#service .modal-content .modal-r .modal-txt {
	width: 31rem;
	margin: 0 auto 0.8rem;
}
#service #s-modal1 .modal-content .modal-r .modal-txt {
	width: 38rem;
}
#service #s-modal2 .modal-content .modal-r .modal-txt {
	width: 36rem;
}
#service #s-modal3 .modal-content .modal-r .modal-txt {
	width: 34rem;
}
#service .modal-content .modal-r .modal-txt:last-of-type {
	margin-bottom: 2.4rem;
}
#service .modal-content .modal-r .modal-txt span {
	margin-right: 0.9rem;
}
#service .modal-content .modal-r .modal-price {
	color: #21A30D;
}
#service .modal-content .modal-r .modal-price {
	font-size: 2rem;
}
#service .modal-content .modal-notes {
	font-size: 1.4rem;
	margin-top: 0.8rem;
	display: flex;
	color: #5f5f5f;
}
#service .modal-content .modal-body {
	margin: 5.6rem 0 3.2rem;
}
#service .modal-content .modal-footer a,
#not_found button {
	margin: 0 auto;
	margin-bottom: 4rem;
	font-size: 1.8rem;
	padding: 1.2rem 6.4rem;
	color: #fff;
	border: 3px solid #fff;
	border-radius: 50px;
	background: linear-gradient(158deg, rgba(255, 148, 13, 1) 0%,rgba(248, 180, 30, 1) 50%, rgba(255, 148, 13, 1) 100%);
	background-position: 1% 50%;
    background-size: 200% auto;
	box-shadow: 3px 4px 16px -8px #777777;
    transition: all 0.2s ease-out;
	font-weight: 500;
}
#service .modal-content .modal-footer a:hover {
	background-position: 99% 50%;
}

@media(max-width: 576px) {
	.modal-content {
		width: 98% !important;
		margin-top: 10%;
	}
	.modal-content .modal-inner {
		flex-direction: column;
	}
	.modal h2 {
		width: 100%;
		font-size: 1.8rem !important;
	}
	.modal .modal-dialog {
		position: static;
		top: auto;
		left: auto;
		transform: none !important;
	}

	#news .modal-body {
		padding: 1.6rem 1.6rem 5.6rem;
	}
	#news .modal-body .news-ttl {
		font-size: 1.8rem;
		margin: 1.6rem 0 0.8rem 0;
	}
	#news .modal-body .news-txt {
		line-height: 1.6;
	}

	.modal-content .modal-l {
		text-align: center;
	}
	.modal-content .modal-r {
		width: 96%;
		margin: 0 auto;
	}
	#service .modal-content .modal-body {
		margin: 1.6rem 0 2.4rem;
	}
	#service .modal h2 {
		font-size: 1.8rem !important;
	}
	#service .modal-content .modal-r-wrap{
		width: 100%;
	}
	#service .modal-content .modal-r {
		width: 98%;
	}
	#service .modal-content .modal-notes {
		font-size: 1.2rem;
	}
	#service .modal-content .modal-l img {
		width: 18rem;
	}
	#service .modal-content .modal-r h5,
	#service .modal-content .modal-r .modal-price {
		font-size: 1.8rem;
	}
	#service .modal-r p,
	#service .modal-content .modal-footer a {
		font-size: 1.6rem;
	}
	.modal-content .btn-close {
		background-color: transparent;
		padding: 1.5rem;
		top: -33px;
		right: 0;
		opacity: 1;
	}
	#service #s-modal1 .modal-content .modal-r .modal-txt,
	#service #s-modal2 .modal-content .modal-r .modal-txt,
	#service #s-modal3 .modal-content .modal-r .modal-txt {
		width: 33rem;
	}
}

#service .modal img.jp {
	width: 80%;
}
#banner .modal img {
	width: 80%;
	margin-bottom: 1.6rem;
}
#banner button {
	transition: all 0.2s ease-out;
	margin-bottom: 4rem;
}
#banner button:hover {
	opacity: 0.6;
	transition: all 0.2s ease-out;
}
@media(max-width: 960px) {
	#banner .modal-content {
		width: 70rem !important;
	}
}

@media(max-width: 576px) {
	#service .modal img.jp,
	#banner .modal img {
		width: 100%;
	}
	#banner .modal-content {
        width: 98% !important;
    }
}

#not_found .nf-txt {
	font-size: 1.6rem;
}
#not_found button {
	margin-bottom: 0;
}
#not_found div a {
	font-size: 1.6rem;
	color: #21A30D;
}


.x-area {
	width: fit-content;
	margin: 0 auto 6rem;
}