@charset "utf-8";

.scrollHightBox {
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    height: 100px;
    z-index: -9;
}

.main-visual-img {
    width: 100%;
    padding-top: 48.49%;
    position: relative;
    background-size: cover;
    background-position: center;
}

.main-visual-img canvas {
    /* width: 100%; */
    height: 100%;
}

.main-visual-img:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background: #56777D;
    opacity: 0.5;
    z-index: 3;
    width: 100%;
    height: 100%;
}

.main-visual-img01 {
    background-image: url(../../../../uploads/cover01.jpg);
}

.main-visual-img02 {
    background-image: url(../../../../uploads/cover02.jpg);
}

.main-visual-img03 {
    background-image: url(../../../../uploads/cover03.jpg);
}

.main-visual-img {
    mask-image: url("../../../../uploads/cover_mask01.png");
    -webkit-mask-image: url("../../../../uploads/cover_mask01.png");
    mask-size: cover;
    -webkit-mask-size: cover;
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
}

/*----FV---*/

.topFvSliderWr {
    position: relative;
    width: 100%;
    z-index: 3;
}

.topFvTitSetWr {
    position: absolute;
    z-index: 3;
    /* left: 0; */
    /* right: 0; */
    bottom: 6rem;
    color: var(--white);
    margin: auto;
}

.coverWr {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.topFvTitSetWr {
    position: absolute;
    z-index: 4;
    top: 29.7rem;
    color: var(--white);
    padding: 0 1.5rem;
    text-shadow: 0 0.3rem 1rem rgb(0 0 0 / 25%);
    pointer-events: none;
}

.topCoverTit {
    font-size: 4.5rem;
    letter-spacing: 0.1em;
    line-height: 2em;
}

.topCoverSubTit>br {
    display: none;
}

.topCoverSubTit {
    font-size: 3.2rem;
    letter-spacing: 0.1em;
    line-height: 1.563em;
    margin-bottom: 5rem;
}

.topFvTitSetBox {
    max-width: 60rem;
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.main-visual-img-pc {
    mask-image: url("../../../../uploads/cover_mask01.png");
    -webkit-mask-image: url("../../../../uploads/cover_mask01.png");
    mask-size: cover;
    -webkit-mask-size: cover;
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
}

.main-visual-img-sp {
    mask-image: url("../../../../uploads/sp_cover_mask.png");
    -webkit-mask-image: url("../../../../uploads/sp_cover_mask.png");
    mask-size: cover;
    -webkit-mask-size: cover;
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
}

.main-visual-slider:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    background: url(../../../../uploads/cover_wood.png);
    background-size: cover;
    background-position: center bottom;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.main-visual-img-pc:before,.main-visual-img-sp:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background: #56777D;
	opacity: 0.5;
    z-index: 2;
    width: 100%;
    height: 100%;
}

.fvScrollLink {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 2.2rem;
    z-index: 3;
    transition: all .5s;
}

.fvScrollLink:before {
    content: "";
    width: 1px;
    height: 20rem;
    display: block;
    background: #ffffff;
    background: linear-gradient(180deg, rgba(255, 255, 255, 1) 60%, rgba(4, 115, 135, 1) 90%);
}

.fvScrollLink p {
    position: absolute;
    writing-mode: vertical-rl;
    left: 0.7rem;
    top: 3.7rem;
    font-size: 1.8rem;
    font-weight: 600;
    letter-spacing: 0.15em;
    color: #FCF6EF;
    text-shadow: 0 0.2rem 0.6rem rgb(0 0 0 / 25%);
}

.fvScrollLink:hover {
    transform: translateY(2.2rem);
}

/*---topWr01---*/

.topCampaignTit {
    font-size: 4.2rem;
    letter-spacing: 0.1em;
}

.topCampaignTit br {
    display: none;
}

.topCampaignContents {
    padding: 4.8rem 1.5rem 6rem !important;
    border-radius: 2rem;
    margin-top: 1rem;
    box-shadow: 0 0.2rem 0.6rem rgb(0 0 0 / 25%);
    color: var(--base-bg-color);
    overflow: hidden;
}

.topCampaignContents {
    background-image: url(../../../../uploads/top_campaign_bg.jpg);
    background-size: cover;
    background-position: center;
}

.topSoundHealingWr canvas {
    height: 100%;
    width: 100%;
}

.topCampaignTextBox {
    font-size: 2.3rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    text-align: center;
    line-height: 1.739em;
}

.topCampaignCenter {
    flex: 1;
}

.topCampaignBtnMg {
    margin: 3rem auto 0;
}

.topCampaignFlexBox {
    max-width: 78.7rem;
    width: 100%;
    margin: 3rem auto 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
}

.topCampaignDeco {
    width: 12.71%;
}

.topCampaignWr {
    max-width: 90rem;
    width: 100%;
    margin: 0 auto;
}

.topCampaignEn {
    font-size: 3.5rem;
    letter-spacing: 0.15em;
    line-height: 1.46em;
    color: #047387;
    text-align: center;
    position: relative;
    z-index: 4;
}

.topWr01 {
    width: 100%;
    padding: 8.2rem 0 6.4rem;
}

.topCampaignHukidasiImgBox {
    width: 100%;
    position: relative;
    padding-top: 94.2%;
}

.topCampaignHukidasiImgBox img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    object-fit: cover;
}

.topCampaignHukidasiBox {
    max-width: 19.178rem;
    width: 21.31%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    z-index: 3;
    top: -4.4rem;
    left: 7%;
}

.topCampaignHukidasiTextSet {
    position: absolute;
    z-index: 2;
    text-align: center;
    color: #047387;
}

.topCampaignHukidasiText01 {
    font-size: 2rem;
    letter-spacing: 0.05em;
}

.topCampaignHukidasiText02 {
    font-size: 3.2rem;
    letter-spacing: 0.05em;
}

.topCampaignHukidasiTextSubSet {
    display: flex;
    align-items: baseline;
    justify-content: center;
    margin-top: -2.5rem;
}

.topCampaignHukidasiText03 {
    font-size: 5.5rem;
    font-weight: 400;
}

/*---topWr02---*/

.topWr02 {
    width: 100%;
    padding: 7.3rem 0 16rem;
    position: relative;
}

.topAboutDecoPc {
    display: block;
}

.topAboutDecoSp {
    display: none;
}

.topAboutDeco02 {
    max-width: 71rem;
    width: 36.98%;
    position: absolute;
    top: 0;
    left: 4.32%;
    z-index: -1;
}

.topAboutDeco03 {
    max-width: 61.7rem;
    width: 32.14%;
    position: absolute;
    bottom: -9%;
    right: 0;
    z-index: -1;
}

.topAboutLeft {
    max-width: 101rem;
    width: 52.6%;
}

.topAboutRight {
    max-width: 77.1rem;
    width: 40.16%;
    margin-top: 6.5rem;
}

.topAboutImgMain {
    width: 100%;
    padding-top: 84.95%;
    position: relative;
}

.topAboutImgBox figure {
    mask-image: url("../../../../uploads//top_menu_mask.svg");
    -webkit-mask-image: url("../../../../uploads//top_menu_mask.svg");
    mask-size: cover;
    -webkit-mask-size: cover;
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    width: 100%;
    padding-top: 74.1%;
}

.topAboutImgBox figure>img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    margin: auto;
    display: block;
}

.topAboutImgBox {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
}

.topAboutWoodImgBox {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 90.66%;
}

.topAboutWoodImgBox>img {
    width: 100%;
}

.topAboutImgMainSp {
    display: none;
}

.topAboutWr {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.topLeftMainBox {
    max-width: 66rem;
    width: 65.35%;
    margin: 0 0 0 auto;
}

.topAboutTextBox01 {
    margin-top: 6rem;
    text-align: center;
}

.topAboutTextBox02 {
    margin-top: 3rem;
    text-align: center;
    line-height: 2.222em;
}

.topAboutBtnWr {
    margin-top: 7rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
}

.topAboutSubTextBox {
    margin: 3rem auto 0;
    max-width: 55rem;
    width: 100%;
    color: #047387;
    font-size: 2.5rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1.6em;
}

.topAboutTextListMg01 {
    margin: 3rem auto 0;
    max-width: 55rem;
    width: 100%;
    line-height: 2.222em;
}

.topAboutTextBox02>pfirst-child {
    margin-top: 0;
}

.topAboutTextBox02>p {
    margin-top: 3rem;
}

.topAboutTit {
    font-size: 4rem;
    letter-spacing: 0.1em;
    color: #047387;
}

.topAboutTit strong {
    font-size: 5rem;
    font-weight: 400;
}

.topAboutTitSetBox {
    max-width: 54rem;
    width: 100%;
    margin: 0 auto;
    position: relative;
    font-weight: 400;
    font-family: var(--font-family01);
}

.topAboutTit01 {
    text-align: left;
}

.topAboutTit02 {
    text-align: right;
    margin-top: 0.8rem;
}

.topAboutTitDeco {
    max-width: 15.1rem;
    width: 100%;
    position: absolute;
    bottom: -20%;
    left: -20%;
}

/*---topWr03---*/

.topWr03 {
    width: 100%;
    padding: 0 0 16rem;
    position: relative;
}

.topWr03Deco01 {
    width: 23.13%;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 56.9rem;
}

.topWr03Deco02 {
    width: 37.6%;
    position: absolute;
    right: 0;
    bottom: 18.9rem;
    z-index: -1;
}

.topMenuWr {
    max-width: 132rem;
    width: 100%;
    margin: 0 auto;
}

.topMenuFlexBoxWr {
    margin-top: 5rem;
}

.topMenuFlexBox {
    width: 100%;
    max-width: 116rem;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.topMenuRight {
    width: 48.28%;
    margin-top: 5.4rem;
}

.topMenuLeadBox {
    max-width: 80rem;
    width: 100%;
    margin: 4rem auto 0;
    line-height: 2.222em;
    text-align: center;
}

.topMenuTextListBox {
    line-height: 2.222em;
}

.topMenuBoxMg01 {
    margin-top: 10.4rem;
}

.topMenuBoxMg02 {
    margin-top: 10rem;
}

.topMenuSubTitBox {
    display: flex;
    align-items: baseline;
    margin-bottom: 3.5rem;
    color: var(--primary);
}

.topMenuSub01 {
    font-size: 3rem;
    margin-right: 1rem;
    letter-spacing: 0.1em;
    line-height: 1.44em;
}

.topMenuSub02 {
    letter-spacing: 0.1em;
    font-size: 3.5rem;
    line-height: 1.44em;
}

.topMenuMainImgBox figure {
    mask-image: url("../../../../uploads//top_menu_mask.svg");
    -webkit-mask-image: url("../../../../uploads//top_menu_mask.svg");
    mask-size: cover;
    -webkit-mask-size: cover;
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    width: 100%;
    padding-top: 74.1%;
}

.topMenuLeft {
    width: 49.48%;
    position: relative;
    display: flex;
    align-items: center;
}

.topMenuMainImgBox {
    width: 87.11%;
}

.topMenuSubImgBox {
    width: 36.93%;
    position: absolute;
    right: 0;
    margin: auto;
}

.topMenuMainImgBox figure>img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    margin: auto;
    display: block;
}

.topMenuSubImgBox figure {
    width: 100%;
    padding-top: 100%;
    overflow: hidden;
    border-radius: 50%;
    position: relative;
}

.topMenuSubImgBox figure>img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    margin: auto;
    display: block;
}

.topMenuBtnMg {
    margin: 4.5rem 0 0 auto;
}

.topMenuTit {
    font-size: 4rem;
    letter-spacing: 0.1em;
}

.topMenuTitBox {
    display: flex;
    align-items: center;
    max-width: 127rem;
    width: 100%;
    margin: 0 0 0 auto;
    position: relative;
}

.topMenuTitBox:after {
    content: "";
    width: auto;
    flex: 1;
    height: 1px;
    background-color: #6D6D6D;
    margin: 0 0 0 2.4rem;
}

.topMenuTitIcon {
    max-width: 5.796rem;
    width: 100%;
    margin: 0 1rem 0 0;
}

.topMenuSubTitBox.pc {
    display: flex;
}

.topMenuSubTitBox.sp {
    display: none;
}

.topMenuBoxMg02 .topMenuFlexBox:first-child {
    margin-top: 0;
}

.topMenuBoxMg02 .topMenuFlexBox {
    margin-top: 5rem;
}

.topMenuTextBr br {
    display: none;
}

/*---topWr04---*/

.topSoundHealingWr {
    background-image: url(../../../../uploads/top07.jpg);
    background-size: cover;
    background-position: center;
}

.topSoundHealingWr canvas {
    height: 100%;
    width: 100%;
}

.topSoundHealingWr:after {
    background-image: url(../../../../uploads/top_bg06.png);
    background-size: cover;
    background-position: center;
}

.topMaskBtnMg {
    margin: 6rem auto 0;
}

.topSoundHealingBox {
    max-width: 122rem;
    width: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 9;
}

.topSoundHealingTextBox {
    max-width: 87rem;
    width: 100%;
    margin: 4rem auto 0;
    text-align: center;
    text-shadow: 0 0.2rem 1rem rgb(0 0 0 / 25%);
}

.topSoundHealingTextMg {
    margin-top: 3.5rem;
}

.topSoundHealingBox .comon-title-set01 .comon-title-left01 {
    text-align: left;
}

.topSoundHealingBox .comon-title-set01 .comon-title-right01 {
    text-align: right;
    margin-top: 1.8rem;
}

.topSoundHealingBox .comon-title-set01 {
    max-width: 116rem;
    width: 95.08%;
    margin: 0 0 0 auto;
}

.topSoundHealingBox .jp-title02 br {
    display: none;
}

.topSoundHealingDeco01 {
    width: 10.91%;
    position: absolute;
    z-index: -1;
    bottom: 18%;
    left: 6%;
}

.topSoundHealingDeco02 {
    width: 4.29%;
    position: absolute;
    z-index: -1;
    right: 10%;
    top: 16%;
}

.topSoundHealingDeco03 {
    width: 22.24%;
    position: absolute;
    right: 0;
    margin: auto;
    top: 21%;
    z-index: -1;
}

/*---topWr05---*/

.topWr05 {
    width: 100%;
    padding: 17.6rem 0 18.2rem;
    position: relative;
}

.topWr05Deco01 {
    width: 39.01%;
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
}

.topItemLinkWr {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.3rem;
    max-width: 132rem;
    width: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}

.topItemLinkWr .topItemLinkSetBox:nth-child(even) {
    margin-top: 4rem;
}

.topItemLinkTextBox {
    margin-top: 3rem;
}

.topItemLinkImgBox {
    width: 100%;
    position: relative;
    padding: 109.38% 0 0 0;
    overflow: hidden;
}

.topItemLinkImgBox>img {
    justify-content: center;
    align-items: center;
    position: absolute;
    display: flex;
    top: 0;
    right: 0;
    max-height: 100%;
    height: 100%;
    max-width: 100%;
    width: 100%;
    bottom: 0;
    left: 0;
    margin: auto;
    object-fit: cover;
}

.topItemLink:hover>.topItemLinkImgBox>img {
    transform: scale(1.1);
    transition: all .5s;
}

.topItemLink>.topItemLinkImgBox>img {
    transition: all .5s;
}

.topItemLinkTitWr {
    background: url(../../../../uploads/top_link_bg_mask.png) no-repeat;
    background-size: cover;
    background-position: center top;
    color: var(--base-bg-color);
    padding: 2rem 1.5rem 1.4rem;
    text-shadow: 0 0.2rem 0.6rem rgb(0 0 0 / 25%);
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    bottom: 0;
}

.topItemLink {
    width: 100%;
    display: block;
    position: relative;
    box-shadow: 0 0.3rem 0.6rem rgb(0 0 0 / 25%);
}

.topItemLinkTitEn {
    font-size: 2.5rem;
    letter-spacing: 0.15em;
    line-height: 1.44em;
    padding-left: 0.5rem;
}

.topItemLinkTitJa {
    font-size: 2.8rem;
    letter-spacing: 0.1em;
    line-height: 1.44em;
}

.topItemLinkTitSet {
    position: relative;
    max-width: 28.9rem;
    width: 100%;
    margin: 0 auto;
    padding-left: 1.4rem;
}

.topItemLinkDeco {
    position: absolute;
    right: 0;
    bottom: 0;
}

.topItemLinkDeco01 {
    transform: rotate(43deg);
    max-width: 3.398rem;
    width: 100%;
}

.topItemLinkDeco02 {
    max-width: 4.165rem;
    width: 100%;
}

.topItemLinkArrow {
    position: relative;
    max-width: 28.9rem;
    width: 100%;
    margin: 2.9rem auto 0;
    padding-right: 1.9rem;
    text-align: right;
    font-size: 1.8rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    line-height: 1.45em;
    padding-bottom: 0.5rem;
}

.topItemLinkArrow:before {
    content: "";
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    background: url(../../../../uploads/top_link_arrow.svg) no-repeat;
    background-size: cover;
    background-position: right bottom;
    width: 100%;
    height: 0.8rem;
    display: block;
}

/*---topWr06---*/

.topWr06 {
    padding: 0 0 17rem;
    width: 100%;
    position: relative;
}

.topBlogPc {
    display: flex;
}

.topBlogSp {
    display: none;
}

.topBlogBtnMg {
    margin: 5rem 0 0;
}

.topBlogTitBox {
    max-width: 31rem;
    width: 100%;
}

.topBlogTitBox .common-title-box {
    text-align: left;
}

.topBlogTitBox .common-title-line {
    display: none;
}

.topBlogBoxWr {
    max-width: 132rem;
    width: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}

.topBlogBoxWr .topBlogBox.topBlogBox01:first-child {
    margin-top: 0;
    flex-direction: row;
}

.topBlogBox {
    margin-top: 14rem;
    width: 100%;
    display: flex;
    flex-direction: row-reverse;
    gap: 7rem;
}

.topBlogBlockBox {
    flex: 1;
    margin-top: 3.6rem;
}

.topBlogDecoPc {
    display: block;
}

.topBlogDecoSp {
    display: none;
}

.topBlogDeco02Pc {
    display: block;
}

.topBlogDeco02Sp {
    display: none;
}

.topBlogDeco01 {
    max-width: 14.9rem;
    width: 7.76%;
    position: absolute;
    left: 10%;
    top: 20%;
    z-index: -1;
}

.topBlogDeco02 {
    max-width: 71.9rem;
    width: 37.45%;
    position: absolute;
    bottom: 13%;
    right: 5%;
    z-index: -1;
}


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (width <= 1920px) {



}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (width <= 1550px) {

.topFvTitSetWr {
    top: 18.7rem;
}

.topBlogDeco01 {
    left: 3%;
    top: 20%;
}
    
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (width <= 1024px) {
    
.topFvTitSetWr {
    top: 12.7rem;
}

.topCoverTit {
    font-size: 3.5rem;
}

.topCoverSubTit {
    font-size: 2.2rem;
    margin-bottom: 2.5rem;
}

.fvScrollLink:before {
    height: 10rem;
}

.fvScrollLink p {
    top: 1.7rem;
    font-size: 1.3rem;
}


/*---topWr05---*/

.topItemLinkTitEn {
    font-size: 2rem;
}

.topItemLinkTitJa {
    font-size: 2.4rem;
}

.topItemLinkArrow {
    margin: 1.4rem auto 0;
    font-size: 1.4rem;
}

.topItemLinkDeco01 {
    max-width: 2.398rem;
}

.topItemLinkDeco02 {
    max-width: 3.165rem;
}

.topItemLinkTextBox {
    margin-top: 1.5rem;
}

.topItemLinkWr .topItemLinkSetBox:nth-child(even) {
    margin-top: 2rem;
}

.topBlogTitBox {
    max-width: 27rem;
}

.topBlogBtnMg {
    margin: 4rem auto 0;
}

/*-----*/

.topBlogDeco01 {
    left: 3%;
    top: 26%;
}

.topAboutTit {
    font-size: 3.2rem;
}

.topAboutTit strong {
    font-size: 4.5rem;
}

topAboutTitDeco {
    max-width: 15.1rem;
    bottom: -20%;
    left: -20%;
}

.topAboutSubTextBox {
    font-size: 2.2rem;
}

.topLeftMainBox {
    max-width: 66rem;
    width: 83.35%;
}

.topAboutBtnWr {
    margin-top: 3.5rem;
    flex-direction: column;
}

}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (width <= 768px) {

.main-visual-slider:before {
    content: "";
    background: url(../../../../uploads/sp_cover_wood.png);
    background-size: cover;
    background-position: center bottom;
}

.topFvTitSetWr {
    top: 51.7rem;
}

.topCoverTit {
    font-size: 4.5rem;
}

.topCoverSubTit {
    font-size: 3.2rem;
    margin-bottom: 5rem;
}

.fvScrollLink:before {
    height: 20rem;
}

.fvScrollLink p {
    top: 3.7rem;
    font-size: 1.8rem;
}

.fvScrollLink {
    bottom: -0.5rem;
}

/*---topWr05---*/

.topWr05 {
    padding: 9rem 0 8rem;
}

.topItemLinkWr {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.6rem 1.3rem;
}

.topItemLinkTitEn {
    font-size: 2.5rem;
}

.topItemLinkTitJa {
    font-size: 2.8rem;
}

.topItemLinkArrow {
    margin: 2.4rem auto 0;
    font-size: 1.8rem;
}

.topItemLinkDeco01 {
    max-width: 3.398rem;
}

.topItemLinkDeco02 {
    max-width: 4.165rem;
}

.topItemLinkTextBox {
    margin-top: 3rem;
}

.topItemLinkWr .topItemLinkSetBox:nth-child(even) {
    margin-top: 4rem;
}

.topWr05Deco01 {
    width: 91.2%;
    bottom: auto;
    top: 39.6rem;
}

.topMenuTit {
    font-size: 2.5rem;
}

.topMenuTitIcon {
    max-width: 4.796rem;
}

.topMenuSub01 {
    font-size: 2.3rem;
}

.topMenuSub02 {
    font-size: 2.3rem;
}

.topMenuSubTitBox {
    margin-bottom: 1.5rem;
}

.topMenuBtnMg {
    margin: 3.5rem 0 0 auto;
}

.topMenuRight {
    margin-top: 2rem;
}

.topMenuFlexBoxWr {
    margin-top: 4rem;
}

.topMenuBoxMg01 {
    margin-top: 6.5rem;
}

.topMenuBoxMg02 {
    margin-top: 8rem;
}

.topWr03 {
    padding: 0 0 10rem;
}

.topWr03Deco01 {
    width: 88.27%;
    left: auto;
    top: 50%;
    right: 0;
}

.topBlogBoxWr .topBlogBox.topBlogBox01:first-child {
    flex-direction: column;
}

.topBlogBox {
    margin-top: 7rem;
    flex-direction: column;
    align-items: center;
    gap: 3rem;
}

.topBlogPc {
    display: none;
}

.topBlogSp {
    display: flex;
}

.topBlogBlockBox {
    flex: auto;
    width: 100%;
    margin-top: 0;
}

.topBlogTitBox .common-title-line {
    display: flex;
}

.topBlogTitBox {
    max-width: 100%;
}

.topBlogTitBox .common-title-box {
    text-align: center;
}

.topWr06 {
    padding: 0 0 9rem;
}

.topBlogDecoPc {
    display: none;
}

.topBlogDecoSp {
    display: block;
}

.topBlogDeco01 {
    left: 13%;
    top: 26%;
    width: 14.73%;
}

.topAboutWr {
    align-items: center;
    flex-direction: column;
}

.topLeftMainBox {
    max-width: 100%;
    width: 100%;
    padding: 0 1.5rem;
}

.topAboutTit {
    font-size: 4rem;
}

.topAboutTit strong {
    font-size: 5rem;
}

.topAboutLeft {
    max-width: 100%;
    width: 100%;
}

.topAboutRight {
    display:none;
}

.topAboutImgMainSp {
    display: block;
}

.topWr02 {
    padding: 5.4rem 0 8rem;
}

.topAboutDecoPc {
    display: none;
}

.topAboutDecoSp {
    display: block;
}

.topAboutDeco02 {
    width: 83.47%;
    left: 0%;
}

.topAboutDeco03 {
    width: 76.8%;
    bottom: 18%;
}

.main-visual-img {
    mask-image: url("../../../../uploads/sp_cover_mask.png");
    -webkit-mask-image: url("../../../../uploads/sp_cover_mask.png");
    mask-size: cover;
    -webkit-mask-size: cover;
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
}

.main-visual-img {
    padding-top: 173.25%;
}

.main-visual-img01 {
    background-image: url(../../../../uploads/sp_cover01.jpg);
}

.main-visual-img02 {
    background-image: url(../../../../uploads/sp_cover02.jpg);
}

.main-visual-img03 {
    background-image: url(../../../../uploads/sp_cover03.jpg);
}
    
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (width <= 576px) {

.topFvTitSetWr {
    top: 34.7rem;
}
    
.topCoverTit {
    font-size: 2.5rem;
}

.topCoverSubTit {
    font-size: 1.8rem;
    margin-bottom: 2.1rem;
}

.fvScrollLink:before {
    height: 17rem;
}

.fvScrollLink p {
    top: 2.7rem;
    font-size: 1.6rem;
}

.fvScrollLink {
    bottom: -1.5rem;
}

/*---topWr05---*/

.topItemLinkWr {
    grid-template-columns: repeat(1, 1fr);
    gap: 6rem;
}

.topItemLinkSetBox {
    max-width: 29.1rem;
    width: 100%;
    margin: 0 auto;
}

.topItemLinkTitJa {
    font-size: 2.5rem;
}

.topItemLinkArrow {
    margin: 1.2rem auto 0;
    font-size: 1.6rem;
}

.topItemLinkTextBox {
    margin-top: 2rem;
}

.topItemLinkWr .topItemLinkSetBox:nth-child(even) {
    margin-top: 0;
}

.topMenuFlexBox {
    align-items: center;
    flex-direction: column;
}

.topMenuLeft {
    width: 88%;
}

.topMenuMainImgBox {
    width: 100%;
}

.topMenuRight {
    width: 85.33%;
}

.topMenuBtnMg {
    margin: 3.5rem auto 0;
}

.topMenuTitBox:after {
    width: 100%;
    flex: unset;
    margin: auto;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

.topMenuTitBox {
    padding-bottom: 1rem;
    margin: 0 auto;
    max-width: 93.33%;
}

.topMenuSubImgBox {
    right: -0.9rem;
}

.topMenuSubTitBox.pc {
    display: none;
}

.topMenuSubTitBox.sp {
    display: flex;
}

.topMenuBoxMg02 .topMenuFlexBox {
    margin-top: 6rem;
}

.topMenuLeadBox {
    max-width: 85.33%;
    margin: 3rem auto 0;
    font-weight: bold;
}

.topMenuTextBr br {
    display: none;
}

.topSoundHealingWr {
    background-image: url(../../../../uploads/sp_top07.jpg);
    background-size: cover;
    background-position: center;
}

.topSoundHealingWr:after {
    background-image: url(../../../../uploads/sp_top_bg06.png);
    background-size: cover;
    background-position: center;
}

.topMaskBtnMg {
    margin: 3rem auto 0;
}

.topSoundHealingBox {
    max-width: 85.33%;
}

.topSoundHealingBox .comon-title-set01 .comon-title-right01 {
    text-align: left;
    margin-top: 4rem;
}

.topSoundHealingBox .common-title-line {
    margin: 3rem 0 0;
}

.topSoundHealingTextBox {
    margin: 4.7rem auto 0;
    text-align: left;
}

.topSoundHealingBox .jp-title02 br {
    display: block;
}

.topSoundHealingBox .comon-title-set01 {
    width: 100%;
}

.topSoundHealingDeco01 {
    display: none;
}

.topSoundHealingDeco03 {
    display: none;
}

.topSoundHealingDeco02 {
    width: 16.06%;
    right: 9.33%;
    top: 5%;
    max-width: 6rem;
}

.topCampaignDeco01 {
    display: none;
}

.topCampaignTit br {
    display: block;
}

.topCampaignEn {
    font-size: 2.5rem;
}

.topCampaignHukidasiBox {
    max-width: 13.9rem;
    width: 37.07%;
    top: -1.9rem;
    left: 0;
}

.topCampaignHukidasiText01 {
    font-size: 1.4rem;
}

.topCampaignHukidasiTextSubSet {
    margin-top: -1.8rem;
}

.topCampaignHukidasiText02 {
    font-size: 2.2rem;
    margin-top: -1.8rem;
}

.topCampaignHukidasiText03 {
    font-size: 3.8rem;
}

.topCampaignTit {
    font-size: 2.8rem;
    letter-spacing: 0.1em;
}

.topCampaignDeco02 {
    position: absolute;
    bottom: -4rem;
    right: -1rem;
}

.topCampaignDeco {
    width: 21.67%;
}

.topCampaignContents {
    padding: 4.3rem 1.5rem 5rem !important;
    margin-top: 1rem;
    min-height: 250px !important;
}

.topCampaignTextBox {
    font-size: 2rem;
}

.topBlogDeco02Pc {
    display: none;
}

.topBlogDeco02Sp {
    display: block;
}

.topBlogDeco01 {
    left: 9%;
    top: 26%;
    width: 20.73%;
}

.topBlogDeco02 {
    width: 100%;
    bottom: 39%;
    right: 0;
}

.topAboutTit {
    font-size: 2.8rem;
}

.topAboutTit strong {
    font-size: 3.3rem;
}

.topAboutTitSetBox {
    max-width: 33rem;
    width: 88%;
}

.topAboutTitDeco {
    max-width: 11.1rem;
    bottom: -35%;
    left: -5%;
}

.topAboutSubTextBox {
    font-size: 1.8rem;
}

.topAboutTextListMg01 {
    max-width: 32rem;
}

.topAboutImgMainSp {
    width: 95.87%;
    margin: 3rem -1.5rem 0 auto;
}

.topAboutTextBox02 {
    max-width: 32rem;
    margin: 3rem auto 0;
}

.topAboutTextBox02>p>br {
    display: none;
}
    
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (width <= 414px) {

.topCampaignDeco02 {
    bottom: -4rem;
    right: -2rem;
}

.topCampaignDeco {
    width: 26.67%;
}

}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */