@charset "UTF-8";

header{
display: flex;
align-items: center;
justify-content: space-between;
gap: 47px;
position: fixed;
left: 0;
right: 0;
top: 20px;
margin: auto;
background-color: #fff;
padding: 15px;
box-shadow: 0 10px 15px rgba(0, 0, 0, 0.05);
z-index: 10;
width: 100%;
max-width: 1320px;
}
header div{
display: flex;
align-items: center;
}
header div:nth-child(1){
position: relative;
display: grid;
gap: 10px;
}
header div:nth-child(1) a{
position: relative;
padding: 0 15px 0 0;
}
header div:nth-child(1) a:hover{
opacity: 1;
}
header div:nth-child(1):after{
position: absolute;
content: "";
width: 1px;
height: 30px;
background-color: #ccc;
top: 0;
bottom: 0;
margin: auto;
right: 0;
}
header div:nth-child(1) a + p{
color: #0A0A0A;
font-size: 14px;
letter-spacing: 0.05rem;
line-height: 1;
}
header div:nth-child(1) a span{
color: #C20064;
display: inline-block;
padding-left: 5px;
font-size: 14px;
}
header div:nth-child(2){
gap: 33px;
}
header div:nth-child(2) button{
display: none;
}
header div:nth-child(2) nav{
display: flex;
gap: 20px;
}
header div:nth-child(2) nav > a:hover{
color: #C20064;
}
header div:nth-child(2) a{
font-weight: bold;
}
header div:nth-child(2) > a{
color: #fff;
background-color: #C20064;
border-radius: 5px;
font-weight: bold;
padding: 13px;
border: solid 2px #C20064;
}
header div:nth-child(2) > a:hover{
color: #C20064;
background-color: #fff;
}
.access-area{
position: fixed;
right: 0;
bottom: 6%;
z-index: 10;
}
.access-area ul li a{
display: block;
border-radius: 10px 0 0 10px;
padding: 15px 9px;
text-align: center;
}
.access-area ul li:nth-child(1) a{
background: #C20064;
}
.access-area ul li:nth-child(1) a img{
width: 22px;
}
.access-area ul li:nth-child(2) a{
background: #3CC65C;
margin: 10px 0 0;
}
.access-area ul li a p{
writing-mode: tb;
margin: 8px 0 0;
color: #fff;
font-size: 17px;
font-weight: bold;
letter-spacing: 0.125rem;
line-height: 1.8;
}
.link-btn a{
position: relative;
color: #fff;
font-size: 18px;
font-weight: 400;
letter-spacing: -0.05rem;
padding: 0 50px 0 0;
}
.link-btn a:after{
position: absolute;
content: "";
background: url(//curepro.jp/wp-content/themes/curepro/assets/images/common/icon-arrow-right-circle.svg) no-repeat center center;
background-size: cover;
width: 40px;
height: 40px;
top: 0;
bottom: 0;
right: 0;
margin: auto;
}
.bg-gray{
background-color: #F5F5F5;
}
.inner{
width: 100%;
max-width: 1320px;
margin: 0 auto;
}
.mid-txt{
font-size: 24px;
font-weight: bold;
margin: 23px 0 50px;
}
footer{
position: relative;
background: linear-gradient(135deg, #C20064, #D0155B, #DB2852, #E53B47, #EB4D3C, #F0602F, #F1721E, #F08500);
border-radius: 30px 30px 0 0;
color: #fff;
padding: 80px 0 0;
overflow: hidden;
}
footer > p{
position: absolute;
font-size: 9.7vw;
letter-spacing: -0.05rem;
bottom: 0;
left: 0;
right: 0;
margin: auto;
line-height: 0.6;
white-space: nowrap;
font-family: "Outfit", sans-serif;
font-weight: bold;
}
footer .inner{
display: flex;
justify-content: space-between;
padding-bottom: 207px;
}
footer .inner > div:nth-child(1) > div:nth-child(1) a{
display: block;
margin: 15px 0 0;
}
footer .inner > div:nth-child(1) > div:nth-child(2){
margin: 50px 0 0;
}
footer .inner > div:nth-child(1) > div:nth-child(2) a{
display: block;
width: fit-content;
background: #fff;
border-radius: 5px;
padding: 10px 20px;
}
footer .inner > div:nth-child(1) > div:nth-child(2) a img{
width: 200px;
}
footer .inner > div:nth-child(2) div ul{
display: flex;
gap: 25px;
}
footer .inner > div:nth-child(2) div ul li a{
color: #fff;
font-weight: bold;
}
footer .inner > div:nth-child(2) div a{
color: #fff;
font-size: 14px;
font-weight: bold;
display: block;
text-align: right;
margin: 20px 0 0;
}
footer .inner > div:nth-child(2) copyright{
font-size: 14px;
font-weight: 400;
text-align: right;
display: block;
margin: 83px 0 0;
}
.lower-heading{
background: linear-gradient(45deg, #C20064, #D0155B, #DB2852, #E53B47, #EB4D3C, #F0602F, #F1721E, #F08500);
padding: 117px 0 54px;
}
.lower-heading .inner{
display: flex;
align-items: flex-end;
justify-content: space-between;
max-width: 1320px;
margin: 0 auto;
padding: 0;
}
.lower-heading .inner div:nth-child(2) ul{
display: flex;
gap: 15px;
}
.lower-heading .inner div:nth-child(2) ul li:nth-child(1){
position: relative;
padding-right: 15px;
}
.lower-heading .inner div:nth-child(2) ul li:nth-child(1):after{
position: absolute;
content: "";
width: 1px;
height: 9px;
transform: rotate(45deg);
right: 0;
top: 0;
bottom: 0;
margin: auto;
background-color: #fff;
}
.lower-heading .inner div:nth-child(2) ul li,
.lower-heading .inner div:nth-child(2) ul li a{
color: #fff;
font-size: 13px;
font-weight: 400;
}
.lower-heading h1{
display: none;
}
.lower-heading p.en{
color: #fff;
font-size: 100px;
font-weight: bold;
letter-spacing: -0.05rem;
line-height: 1.38;
}
.lower-heading p.jp{
color: #fff;
font-size: 20px;
font-weight: bold;
margin: 15px 0 0;
line-height: 0.6;
}
.sp{
display: none!important;
}
.contents{
padding: 112px 0 83px;
}
@media (max-width: 768px) {
.contents{
padding: 50px 0;
}
.pc {
display: none!important;
}
.sp{
display: block!important;
}
header{
width: 95%;
position: sticky;
margin: 0 auto -75px;
}
header div:nth-child(2) button{
display: block;
}
.btn-hamburger {
position: relative;
width: 40px;
height: 40px;
border-radius: 5px;
border: none;
cursor: pointer;
background: #C20064;
width: 40px;
height: 40px;
border-radius: 5px;
}
.btn-hamburger .bar,
.btn-hamburger::before,
.btn-hamburger::after {
content: '';
position: absolute;
width: 18px;
height: 2px;
background: #fff;
transition: transform 0.3s ease, opacity 0.3s ease;
left: 0;
right: 0;
margin: auto;
}
.btn-hamburger .bar { top: 50%; transform: translateY(-50%); }
.btn-hamburger::before {
top: 13px;
}
.btn-hamburger::after {
bottom: 13px;
}
.btn-hamburger.is-active .bar { opacity: 0; }
.btn-hamburger.is-active::before {
transform: translateY(6px) rotate(45deg);
}
.btn-hamburger.is-active::after {
transform: translateY(-6px) rotate(-45deg);
}
header div:nth-child(2) a:first-child{
color: #0A0A0A;
}
header div:nth-child(1) a:after{
content: inherit;
}
header div:nth-child(2) nav{
position: absolute;
top: 100%;
left: 0;
width: 100%;
background: #fff;
overflow: hidden;
max-height: 0;
opacity: 0;
transform: translateY(-10px);
transition: all 0.4s ease;
z-index: 1000;
box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}
header div:nth-child(2) nav.is-open{
display: block;
max-height: 500px;
opacity: 1;
transform: translateY(0);
}
header div:nth-child(2) nav{
background: #fff;
padding: 20px;
}
header div:nth-child(2) nav a{
display: block;
padding: 15px 10px;
border-bottom: solid 1px #ccc;
font-size: 16px;
letter-spacing: 0.05rem;
}
header div:nth-child(2) nav a:last-child{
border: none;
margin: 15px 0 0;
background-color: #C20064;
color: #fff;
border-radius: 5px;
padding: 15px 20px;
letter-spacing: 0.05rem;
}
.access-area{
bottom: 10px;
right: unset;
width: 100%;
margin: 0;
}
.access-area ul{
width: 95%;
display: flex;
margin: 0 auto;
background: #fff;
padding: 5px;
border-radius: 10px;
gap: 5px;
}
.access-area ul li{
width: 100%;
}
.access-area ul li a{
display: flex;
border-radius: 5px;
text-align: center;
justify-content: center;
gap: 10px;
padding: 9px 0 11px;
}
.access-area ul li:nth-child(2) a{
margin: 0;
}
.access-area ul li a p{
margin: 0;
writing-mode: unset;
letter-spacing: 0.1rem;
font-size: 16px;
}
.inner{
padding: 0 30px;
}
.link-btn a{
font-size: 16px;
padding: 0 40px 0 0;
}
.link-btn a:after{
width: 30px;
height: 30px;
background-size: cover!important;
}
.mid-txt{
line-height: 1.8;
}
footer{
padding: 50px 0 70px;
}
footer .inner{
display: block;
padding-bottom: 190px;
}
footer .inner > div:nth-child(1) > div:nth-child(1) p{
font-weight: bold;
line-height: 1.9;
}
footer .inner > div:nth-child(1) > div:nth-child(2){
margin: 30px auto 0;
}
footer .inner > div:nth-child(1) > div:nth-child(2) a{
margin: auto;
}
footer .inner > div:nth-child(2) > div ul{
display: grid;
gap: 0;
margin: 50px 0 0;
}
footer .inner > div:nth-child(2) > div ul li{
border-top: solid 1px #FEFEFE;
}
footer .inner > div:nth-child(2) > div ul li a{
font-size: 16px;
font-weight: bold;
text-align: left;
padding: 20px 0;
}
footer .inner > div:nth-child(2) > div a{
margin: 0;
}
footer .inner > div:nth-child(2) > div ul + a{
border-top: solid 1px;
text-align: left;
padding: 20px 0 0;
}
footer .inner > div:nth-child(2) copyright{
display: block;
margin: 53px 0 0;
text-align: left;
}
footer > p{
font-size: 19.6vw;
line-height: 0.8;
bottom: 90px;
}
.lower-heading{
padding: 120px 0 25px;
}
.lower-heading .inner{
padding: 0 20px;
display: block;
}
.lower-heading p.en{
font-size: 60px;
line-height: 1;
}
.lower-heading p.jp{
line-height: 1;
font-size: 16px;
}
.lower-heading .inner div:nth-child(2) ul{
justify-content: right;
margin: 50px 0 0;
}
}
.cta{
margin: 100px 0 0;
}
.cta img{
width: 100%;
}
body.post-type-archive-owned .cta,
body.tax-owned_cat .cta{
margin: 0;
}
body.single-owned .cta{
margin: 0 auto 100px;
}
@media (max-width: 768px) {
.cta{
margin: 50px 0 0;
}
body.post-type-archive-owned .cta,
body.tax-owned_cat .cta{
margin: 20px auto 0;
}
body.single-owned .cta{
margin: 50px auto;
}
}