body {
    color: #222;
    background-color: #f3f1e8;
    display: flex;
    flex-direction: column;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 62.5%;
    -webkit-text-size-adjust: 100%;
    line-height: 1.428;
    letter-spacing: 0.08em;
    margin: 0 auto;
    padding: 0;
}

html>body {
    font-size: 16px;
    font-size: 1rem;
}

*+html body {
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    margin: 0;
    padding: 0;
}

html, * {
    margin: 0;
    padding: 0;
}

@media print {
    a[href]::after {
        content: none;
    }
    abbr[title]::after {
        content: none;
    }
}

html {
    height: 100%;
}

h1, .h1,
h2, .h2,
h3, .h3 {
    font-weight: 300;
}

h2, .h2 {
    font-size: 16px;
    font-size: 2.3rem;
}

h3, .h3 {
    font-size: 14px;
    font-size: 1.3rem;
}

h6, .h6 {
    font-size: 12px;
    font-size: 1rem;
}

p, li, dt, dd {
    margin-bottom: 1rem;
    font-size: 0.8rem;
    line-height: 2.3;
}

a {
    text-decoration: none;
    outline: 0;
    transition: all .5s ease-in-out;
}

a:hover {
    opacity: 0.7;
}

a:link, a:visited, a:active {
    text-decoration: none;
}

ul {
    zoom: 100%;
}

ul:after {
    clear: both;
    height: 0;
    display: block;
    visibility: hidden;
}

li {
    margin: 0;
    padding: 0;
    list-style: none;
}

img {
    height: auto;
    max-width: 100%;
    vertical-align: middle;
}

hr {
    border: 0;
    height: 0;
    margin: 2em 0;
    padding: 0;
}


/* Font */
.text-left {
    text-align: left;
}

.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}

.hide-text {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

.bold {
    font-weight: 500;
}

.normal {
    font-weight: 400;
}

.thin {
    font-weight: 200;
}

.small {
    font-size: .8rem;
}

/* .title {
    text-align: center;
    position: relative;
    width: auto;
    margin: 0 auto 3rem;
    padding: 0.5em 1em;
    border-top: solid 1px #444;
    border-bottom: solid 1px #444;
    font-weight: 100;
    line-height: 1;
}

.title:before, .title:after {
    content: '';
    position: absolute;
    top: -10px;
    width: 1px;
    height: -webkit-calc(100% + 20px);
    height: calc(100% + 20px);
    background-color: #444;
}

.title:before {
    left: 10px;
}

.title:after {
    right: 10px;
}

.sub-title {
    color: #e67a7a;
    margin-top: 2rem;
    border-bottom: 2px double #e67a7a;
    font-size: 1.3rem;
}

.title-lesson {
    font-weight: bold;
    margin-bottom: 1.3rem;
}

.caption {
    font-size: 0.8em;
    font-weight: 200;
    margin-bottom: 1em;
} */

.auto_newline {
    display: inline-block;
}

/* Color */
.color-black {
    color: #000;
}

.color-white {
    color: #fff;
}

.color-column_link,
.color_link {
    color: #176c9c;
}

/* ListStyle */
.list-unstyled {
    list-style-type: none;
}

.square {
    list-style-type: square;
}

/* BackgroundStyle */
.bgcolor-white {
    background-color: #fff;
}

.bgcolor-gray {
    background-color: #efefef;
}

.bgcolor-darkgray {
    background-color: #ccc;
}

.bgcolor-primary {
    background-color: #efede4;
}


/* borderStyle */
.border-bottom {
    margin-bottom: 1.5rem;
}

.border-bottom__white {
    border-bottom: 1px solid #fff;
}

.border-bottom__gray {
    border-bottom: 1px solid #4c4c4c;
}

#border-bottom__gray {
    border-bottom: 1px solid #4c4c4c;
    font-size:1rem;
}

.underline {
    position: relative;
    display: inline-block;
    text-decoration: none;
}

.underline::after {
    position: absolute;
    bottom: -2px;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    transform: scale(0, 1);
    transform-origin: center top;
    transition: transform .3s;
}

.underline-white::after {
    background: #fff;
}

.underline-gray::after {
    background: #4c4c4c;
}

.underline:hover::after {
    transform: scale(1, 1);
}

.title-line {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.title-line::before {
    content: '';
    position: absolute;
    top: calc(110vw / 12);
    left: calc(-310vw / 12);
    width: calc(150vw / 12);
    height: 1px;
    margin: auto;
    background-color: #000;
}


button {
    padding: 0;
    border: none;
    outline: none;
    font: inherit;
    color: inherit;
    background: none;
    cursor: pointer;
}

.button {
    display: inline-block;
    padding: 10px 20px;
    cursor: pointer;
    border-radius: 1.3rem;
    font-size: .8rem;
}

.button__link {
    background-color: #4c4c4c;
    border: 1px solid #4c4c4c;
    color: #fff;
}

.button__link:hover {
    background: transparent;
    border: 1px solid #4c4c4c;
    color: #4c4c4c;
}

.button__submit {
    position: relative;
    padding: 1rem 2rem 1rem 1rem;
    color: #fff;
    text-align: center;
    line-height: 1;
    background: #5bbee5;
    background: linear-gradient(to right, #5bbee5, #52ddae);
    letter-spacing: 0.2rem;
    border-radius: 1.5rem;
}

.button__submit::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1.2rem;
	margin: auto;
	display: inline-block;
	width: 0.5rem;
	height: 0.5rem;
	border-right: 1px solid #fff;
	border-top: 1px solid #fff;
	transform: rotate(45deg);
	transition: right 0.5s;
}

.button__submit:hover::after{
	right: 1em;
}

.button-viewmore {
    width: calc(200vw / 12);
}
@media (min-width: 520px) {
    .button-viewmore {
        width: calc(100vw / 12);
        max-width: 100px;
    }
}

.rotate-90 {
    transform: rotate(90deg);
}

.pagetop {
    position: fixed;
    bottom: 0;
    right: 0;
    width: 0;
    height: 0;
    border: 25px solid transparent;
    border-right: 25px solid #efefef;
    border-bottom: 25px solid #efefef;
    opacity: 0.9;
    color: #333;
    text-decoration: none;
}


/* Space */
.pt10 { padding-top: 1rem;} .pt20 { padding-top: 2rem;} .pt30 { padding-top: 3rem;} .pt40 { padding-top: 4rem;} .pt50 { padding-top: 5rem;} .pt60 { padding-top: 6rem;} .pt70 { padding-top: 7rem;} .pt80 { padding-top: 8rem;} .pt90 { padding-top: 9rem;} .pt100 { padding-top: 10rem;} 
.pl10 { padding-left: 1rem;} .pl20 { padding-left: 2rem;} .pl30 { padding-left: 3rem;} .pl40 { padding-left: 4rem;} .pl50 { padding-left: 5rem;} .pl60 { padding-left: 6rem;} .pl70 { padding-left: 7rem;} .pl80 { padding-left: 8rem;} .pl90 { padding-left: 9rem;} .pl100 { padding-left: 10rem;}
.pb10 { padding-bottom: 1rem;} .pb20 { padding-bottom: 2rem;} .pb30 { padding-bottom: 3rem;} .pb40 { padding-bottom: 4rem;} .pb50 { padding-bottom: 5rem;} .pb60 { padding-bottom: 6rem;} .pb70 { padding-bottom: 7rem;} .pb80 { padding-bottom: 8rem;} .pb90 { padding-bottom: 9rem;} .pb100 { padding-bottom: 10rem;}
.pr10 { padding-right: 1rem;} .pr20 { padding-right: 2rem;} .pr30 { padding-right: 3rem;} .pr40 { padding-right: 4rem;} .pr50 { padding-right: 5rem;} .pr60 { padding-right: 6rem;} .pr70 { padding-right: 7rem;} .pr80 { padding-right: 8rem;} .pr90 { padding-right: 9rem;} .pr100 { padding-right: 10rem;}

.mt10 { margin-top: 1rem;} .mt20 { margin-top: 2rem;} .mt30 { margin-top: 3rem;} .mt40 { margin-top: 4rem;} .mt50 { margin-top: 5rem;} .mt60 { margin-top: 6rem;} .mt70 { margin-top: 7rem;} .mt80 { margin-top: 8rem;} .mt90 { margin-top: 9rem;} .mt100 { margin-top: 10rem;}
.ml10 { margin-left: 1rem;} .ml20 { margin-left: 2rem;} .ml30 { margin-left: 3rem;} .ml40 { margin-left: 4rem;} .ml50 { margin-left: 5rem;} .ml60 { margin-left: 6rem;} .ml70 { margin-left: 7rem;} .ml80 { margin-left: 8rem;} .ml90 { margin-left: 9rem;} .ml100 { margin-left: 10rem;}
.mb10 { margin-bottom: 1rem;} .mb20 { margin-bottom: 2rem;} .mb30 { margin-bottom: 3rem;} .mb40 { margin-bottom: 4rem;} .mb50 { margin-bottom: 5rem;} .mb60 { margin-bottom: 6rem;} .mb70 { margin-bottom: 7rem;} .mb80 { margin-bottom: 8rem;} .mb90 { margin-bottom: 9rem;} .mb100 { margin-bottom: 10rem;}
.mr10 { margin-right: 1rem;} .mr20 { margin-right: 2rem;} .mr30 { margin-right: 3rem;} .mr40 { margin-right: 4rem;} .mr50 { margin-right: 5rem;} .mr60 { margin-right: 6rem;} .mr70 { margin-right: 7rem;} .mr80 { margin-right: 8rem;} .mr90 { margin-right: 9rem;} .mr100 { margin-right: 10rem;}


/* ObjectComponent */
.pc-only {
    display: none;
}
.pc-only {
    display: block;
}

.sp-only {
    display: block;
}
@media (min-width: 1200px) {
    .sp-only {
        display: none;
    }
}

.wrapper {
    flex: 1 0 auto;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.container {
    width: 90%;
    margin: 0 auto;
}
@media (min-width: 960px) {
    .container {
        width: 96%;
        margin: 0 2%;
    }
}
@media (min-width: 1200px) {
    .container {
        width: 100%;
        max-width: 1200px;
        height: auto;
        margin: 0 auto;
    }
}

.thumbnail {
    margin: 0;
    padding: 0;
    width: 48%;
}

.overlay:hover {
    background-color: #fff;
    opacity: 0.7;
}

.sub-content {
    margin-top: 80px;
}

.breadcrumb {
    padding-left: 0;
    margin-left: 0;
    margin: 2rem 0 4rem;
}

.breadcrumb li {
    color: #000;
    display: inline;
    list-style: none;
}

.breadcrumb li:after {
    /* >を表示*/
    content: '>';
    padding: 0 4px;
    color: #000;
}

.breadcrumb li:last-child:after {
    content: '';
}

.breadcrumb li a {
    text-decoration: none;
    color: #000;
}


/*下からフェードイン*/
.fade-in-bottom {
	opacity: 0;
	transform: translate(0, 4%);
	transition: 2.5s;
	animation-name: fade-in-bottom;
}

.fade-in-bottom.is-show {
	transform: translate(0, 0);
	opacity: 1;
}

@keyframes fade-in-bottom {
	from {
		opacity: 0;
		transform: translateY(-50%);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}


/* // Layout */

/* header */
/* header menu */
header {
	width: 100%;
	background-color: transparent;
	position: fixed;
	z-index: 10;
    transition: all .5s ease-in-out;
}

.header__inner {
	width: 100%;
	height: 80px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	align-items: center;
    justify-content: center;
}
@media (min-width: 960px) {
    .header__inner {
        height: 160px;
        /* max-width: 1200px; */
    }
}

.logo {
	width: 60px;
    height: auto;
    margin-right: auto;
    margin-left: 4%;
    margin-top: 60px;
    position: relative;
    z-index: 20;
}
@media (min-width: 520px) {
    .logo {
        margin-top: 80px;
        width: 80px;
    }
}
/* @media (min-width: 1200px) {
    .logo {
        margin-left: 0;
    }
} */

.logo a {
	display: block;
}
.logo-index {
    opacity: 0;
    display: block !important;
}

.scroll-up {
    opacity: 0; 
    visibility: hidden;
    display: block !important;
    transform: translateY(-30px);
    transition: all 1s;
}
.scroll-up.is-show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0px);
}

/* navi menu */
.nav__button {
	display: block;
    cursor: pointer;
	z-index: 15;
	width: 30px;
	height: 20px;
	position: fixed;
	top: 30px;
	right: 20px;
}

.nav__button span {
	display: block;
	height: 1px;
	background: #000;
	position: absolute;
	width: 100%;
	left: 0;
	transition: 0.5s ease-in-out;
}

.nav__button span:nth-of-type(1){
	top: 0;
}

.nav__button span:nth-of-type(2) {
	top: 8px;
}

.nav__button span:nth-of-type(3) {
	top: 16px;
}

.nav__button.active span:nth-of-type(1) {
	top: 8px;
    background-color: #000;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	transform: rotate(135deg);
}

.nav__button.active span:nth-of-type(2) {
	width: 0;
	left: 50%;
}

.nav__button.active span:nth-of-type(3) {
	top: 8px;
    background-color: #000;
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

nav {
	background-color: transparent;
	transition: .5s ease-in-out;
	opacity: 0;
}

.nav__wrap {
	position: fixed;
	right: 0;
	top: 0;
    bottom: 0;
	z-index: 10;
	width: 0;
	display: flex;
	align-items: center;
    flex-direction: column;
    justify-content: center;
    overflow-y: auto;
    
}

.nav__menu {
	flex-direction: column;
	margin: 10% auto;
    padding: 0 10%;
	width: 50%;
	list-style: none;
    list-style-image: none;
	display: flex;
    overflow-y: auto;
    /* overflow-y: hidden; */
    -webkit-overflow-scrolling: touch;
}

.nav__menu li a {
	text-align: left;
	color: #000;
	display: block;
    padding: 1rem 0;
    line-height: 1.5;
	transition: all .5s ease-in-out;
}

.no-event {
	pointer-events: none;
}

.nav__menu li.has-child ul li {
	list-style: none;
	padding-left: 1.5rem;
    position: relative;
}

.nav__menu li.has-child ul li a {
	color: #000;
}

.js-dropdown-open {
    display: block;
    width: 100%;
    text-align: left;
    padding: 1rem 0;
    position: relative;
}

.js-dropdown-open:after {
    content: '';
    width: 6px;
    height: 6px;
    border: 0;
    border-bottom: solid 1px #333;
    border-right: solid 1px #333;
    transform: rotate(45deg);
    position: absolute;
    top: -5px;
    right: 0;
    bottom: 0;
    margin: auto;
}

.dropdown__lists {
    width: 100%;
}

.dropdown__list {
    background-color: rgba(255,255,255,0.7);
    transition: all .5s;
    list-style: none;
    cursor: pointer;
}

.dropdown__list:hover {
    background-color: #fff;
}
.dropdown__list a {
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
}

.nav__menu--social {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: center;
    text-align: center;
    width: 50%;
    margin-bottom: 2rem;
}

.nav__menu--social li {
    width: 3rem;
}

.nav-social-icon {
    width: 1.5rem;
    height: 1.5rem;
    margin: 0 auto;
}

/* 10月12日追加：pcハンバーガーメニュー導入につき */
/* 共通スタイル */
.nav__wrap {
    position: fixed;
    top: 0;
    width: 30%; 
    height: 100%;
    background-color: #fff;
    z-index: 10;
    transition: right 0.5s ease;
    right: -100%; 
}

/* 960px未満のモバイル用スタイル */
@media (max-width: 959px) {
    .nav__wrap {
        right: -10em; 
    }
    .nav__wrap.open{
        width: 100%;
        opacity: 1;
		right: 0;
        background-color: #fff;

    }
	
}

/* 960px以上のデスクトップ用スタイル */
@media (min-width: 960px) {
    .nav__wrap.open {
        width: 30%;
        opacity: 1;
        background-color: #fff;
        right: 0; 
    }

    .nav__wrap.close {
        right: -100%; 
    }

    .nav__button {
        position: fixed;
        top: 80px;
        right: 80px;
    }
        
}
/* 1150px以上のデスクトップ用メニューボタン位置スタイル */
@media (min-width: 1150px){
    .nav__button {
        position: fixed;
        top: 80px;
        right: 80px;
    }

}

.nav__wrap.open .dropdown__lists {/*ドロップダウン最初はクローズ*/
    display: none;
} 
.js-dropdown-open a{
    padding:0;
}
.js-dropdown-open {
    line-height:1.5;
}

.nav__wrap .nav__menu {
	display: none;
}
.nav__wrap.open .nav__menu {
	display: flex;
}

body.js-fixed {
    width: 100%;
    height: 100%;
    position: fixed;
}


/* first-area */
.first-area {
    width: 100%;
    height: 975px;
    background-color: #d8cdc9;
    margin: 0 auto;
    text-align: center;
}
@media (max-width: 1200px) {
	.first-area {
		height: calc(975 / 1200 * 100vw);
	}
}

.first-area__content {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}

.logo--white__area {
    position: absolute;
    top: 60px;
    left: 175px;
    z-index: 5;
}
@media (max-width: 519px) {
	.logo--white__area {
		left: calc(100 / 1200 * 100vw);
	}
}
@media (min-width: 520px) and ( max-width: 1200px) {
	.logo--white__area {
		left: calc(175 / 1200 * 100vw);
	}
}
@media (min-width: 960px) {
    .logo--white__area {
        top: 160px;
    }
}

.logo--white {
    width: 160px;
    height: auto;
}
@media (max-width: 1200px) {
	.logo--white {
		width: calc(160 / 1200 * 100vw);
	}
}

.first-area__image__area {
    margin-top: 60px;
}
@media (min-width: 960px) {
    .first-area__image__area {
        margin-top: 160px;
    }
}

.first-area__image {
    width: 650px;
}
@media (max-width: 519px) {
	.first-area__image {
		width: calc(800 / 1200 * 100vw);
	}
}
@media (min-width: 520px) and ( max-width: 1200px) {
	.first-area__image {
		width: calc(650 / 1200 * 100vw);
	}
}

.first-area__title__area {
    position: absolute;
    top: 570px;
    right: 230px;
}
@media (max-width: 519px) {
	.first-area__title__area {
        top: calc(450 / 1200 * 100vw);
		right: calc(150 / 1200 * 100vw);
	}
}
@media (min-width: 520px) and ( max-width: 1200px) {
	.first-area__title__area {
        top: calc(570 / 1200 * 100vw);
		right: calc(220 / 1200 * 100vw);
	}
}

.first-area__title {
    height: 380px;
}
@media (max-width: 519px) {
	.first-area__title {
        height: calc(500 / 1200 * 100vw);
	}
}
@media (min-width: 520px) and ( max-width: 1200px) {
	.first-area__title {
        height: calc(380 / 1200 * 100vw);
	}
}

.first-area__movie {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    top: 100px;
    z-index: 3;
    overflow: hidden;
    position: relative;
    border-radius: 1.3rem;
}

.first-area__movie video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

video {
    display: block;
    width: 100%;
    margin: 0 auto;
}

.scrolldown {
	display: none;
}
@media (min-width: 520px) {
    .scrolldown {
        display: inline-block;
        transform: rotate(90deg);
        text-align: left;
        position: absolute;
        top: 60%;
        right: -2rem;
    }

    .scrolldown img {
        width: 3rem;
    }

    .scrolldown__arrow {
        width: 8rem;
        height: 1rem;
        border-bottom: 1px solid #000;
        border-right: 1px solid #000;
        transform: skew(45deg);
        margin: -0.5rem 0 0 -0.5rem;
    }
}


/* concept(index) */
.index__concept {
    height: auto;
    margin-top: 160px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-end;
}
@media (min-width: 520px) and (max-width: 1200px) {
    .index__concept {
        margin-top: calc(170 / 1200 * 100vw);
    }
}
@media (min-width: 520px) {
    .index__concept {
        flex-wrap: nowrap;
    }
}

.index__concept__title {
    flex-basis: 10%;
}
.index__concept__more {
    flex-basis: 100%;
    margin: 1rem 0 0;
}
@media (min-width: 520px) {
    .index__concept__title,
    .index__concept__more {
        flex-basis: 15%;
    }
}

.index__concept__title {
    position: relative;
}

.index__concept__title img {
    height: calc(450vw / 12);
}
@media (min-width: 520px) {
    .index__concept__title img {
        height: calc(220vw / 12);
        max-height: 250px;
    }
}

.index__concept__title--line {
    display: flex;
    align-items: center;
    position: relative;
}
.index__concept__title--line::before {
    content: '';
    position: absolute;
    top: calc(-120vw / 12);
    left: calc(35vw / 12);
    width: 1px;
    height: calc(100vw / 12);
    background-color: #000;
}
@media (min-width: 520px) {
    .index__concept__title--line::before {
        left: calc(15vw / 12);
    }
}

.index__concept__detail {
    margin: 0 auto;
    text-align: left;
    width: 100%;
    flex-basis: 86%;
}
@media (min-width: 520px) {
    .index__concept__detail {
        text-align: center;
        flex-basis: 70%;
    }
}

.index__concept__detail p {
    margin-bottom: 2rem;
    letter-spacing: 0;
}
@media (min-width: 520px) {
    .index__concept__detail p {
        letter-spacing: inherit;
    }
}

.index__concept__detail p:last-of-type {
    margin-bottom: 0;
}

.index__concept__more {
    text-align: right;
}


/* concept */
.concept {
    margin-top: 160px;
}
@media (min-width: 520px) {
    .concept {
        margin-top: 250px;
    }
}

.concept--image {
    width: 80%;
    margin: 0 auto;
    text-align: center;
}
@media (min-width: 520px) {
    .concept--image {
        width: 60%;
    }
}

.concept__title {
    margin: 0 auto 3rem;
    text-align: center;
}

.concept__title img {
    width: 480px;
}

.concept__detail {
    margin: 3rem auto;
    text-align: center;
    width: 90%;
    position: relative;
}
@media (min-width: 520px) {
    .concept__detail {
        margin: 7rem auto;
    }
}

.concept__detail::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: calc(-200vw / 12);
    width: 1px;
    height: calc(100vw / 12);
    background-color: #000;
}

.concept__detail {
    text-align: left;
}
@media (min-width: 520px) {
    .concept__detail {
        text-align: center;
    }
}

.concept__sub-title {
    font-size: 1rem;
    margin: 5rem auto 3rem;
    line-height: 2.3;
}

.concept__detail p {
    margin-bottom: 2rem;
}

.concept__detail br {
    display: none;
}
@media (min-width: 520px) {
    .concept__detail br {
        display: inline;
    }
}


.concept--function__content {
    text-align: center;
    padding-top: calc(200vw / 12);
    margin-bottom: 5rem;
}

.concept--function__title {
    margin-bottom: 3rem;
}

.concept--function__title img {
    width: clamp(200px, 50%, 250px);
}

.concept--function__image {
    background-color: #e9e9ea;
    width: 90%;
    padding: 2rem 1rem 1rem;
    margin: 0 auto;
}
@media (min-width: 520px) {
    .concept--function__image {
        width: 50%;
    }
}

.concept--function__image img {
    width: 80%;
    margin-bottom: 1rem;
}
@media (min-width: 520px) {
    .concept--function__image img {
        width: 50%;
    }
}

.concept--function__image p {
    font-size: 1rem;
    font-weight: 200;
    margin-bottom: 0;
    color: #6d5348;
}
@media (min-width: 520px) {
    .concept--function__image p {
        font-size: 1.2rem;
    }
}


/* line up */
.lineup {
    margin: calc(100vw / 20) auto;
}

.lineup__title img {
    width: calc(350vw / 12);
}
@media (min-width: 520px) {
    .lineup__title img {
        width: calc(155vw / 12);
        max-width: 176px;
    }
}

.lineup__title--line {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    position: relative;
}

.lineup__title--line::before {
    content: '';
    position: absolute;
    top: 50%;
    right: calc(370vw / 12);
    width: calc(100vw / 12);
    height: 1px;
    background-color: #000;
}
@media (min-width: 520px) {
    .lineup__title--line::before {
        right: calc(170vw / 12);
    }
}

.lineup__slider {
    overflow: hidden;
    padding: 2rem 0;
}

.lineup__slider--carousel {
    margin: 0 auto;
    /* width: 85%; */
}
@media (min-width: 960px) {
    .lineup__slider--carousel {
        width: 85%;
    }
}
@media (min-width: 1200px) {
    .lineup__slider--carousel {
        width: 70%;
        max-width: 1000px;
    }
}

.lineup__slider--carousel li {
    margin-left: 1rem;
    margin-right: 1rem;
}

.lineup__slider--carousel img {
    display: block;
    width: 100%;
}

.lineup__slider .slick-list {
    overflow: visible;
}


/* look book(index) */
.index__lookbook {
    background: url(../images/lookbook/3rd/3rd-bg.webp) center center no-repeat;
    background-size: cover;
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}
.index__lookbook::before {
    content: '';
    position: absolute;
    right: 20px;
    bottom: -50px;
    width: 750px;
    height: 750px;
    background: url(../images/lookbook/3rd/3rd-flower.webp) center center no-repeat;
    background-size: contain;
    z-index: 1;
    pointer-events: none;
}
.index__lookbook::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 550px;
    height: 400px;
    background: url(../images/lookbook/3rd/look-3rd-square.webp) left bottom no-repeat;
    background-size: contain;
    z-index: 1;
    pointer-events: none;
}


.index__lookbook__inner {
    max-width: 1280px;
    margin: 0 auto;
    position: relative;
    padding: 6rem 3rem 3.5rem;
}

.index__lookbook__photos {
    display: flex;
    justify-content: center;
    gap: 5%;
    position: relative;
    transform: translateX(-7%);
    z-index: 2;
}
@media (min-width: 1920px) {
    .index__lookbook__photos {
        transform: translateX(-10%);
    }
}

.index__lookbook__photo01 {
    width: 45%;
    position: relative;
}
.index__lookbook__photo01 img {
    width: 100%;
    height: auto;
    display: block;
}
.index__lookbook__photo01::after {
    content: '';
    position: absolute;
    bottom: 50px;
    left: -150px;
    width: 100%;
    height: 50%;
    background: url(../images/lookbook/3rd/look3rd-img04.webp) left bottom no-repeat;
    background-size: contain;
    z-index: 3;
}
@media (max-width: 1280px) {
    .index__lookbook__photo01::after {
        bottom: 50px;
        left: -130px;
        width: 100%;
        height: 50%;
    }
}
.index__lookbook__photo02 {
    width: 23%;
    padding-top: 9%;
    position: relative;
}
.index__lookbook__photo02 img {
    width: 100%;
    height: auto;
    display: block;
}
.index__lookbook__photo02::after {
    content: '';
    position: absolute;
    top: -60px;
    left: -70%;
    width: 600px;
    height: 45%;
    background: url(../images/lookbook/3rd/look3rd-img03.webp) center center no-repeat;
    background-size: contain;
    z-index: 3;
}

.index__lookbook__title {
    position: absolute;
    right: 3rem;
    top: 5rem;
    z-index: 2;
}
.index__lookbook__title .lookbook-yoko {
    display: none;
}
.index__lookbook__title img {
    height: calc(55vw / 3);
    max-height: 250px;
}
.index__lookbook__title--line::after {
    content: '';
    position: absolute;
    top: 105%;
    left: 42%;
    width: 1px;
    height: calc(100vw / 12);
    background-color: #fff;
}

.index__lookbook__more {
    position: absolute;
    right: 3rem;
    bottom: 3.8rem;
    z-index: 2;
}
.index__lookbook__more .button-viewmore {
    width: 200px;
    max-width: none;
}
@media (max-width: 1024px) {
    .index__lookbook__photos {
        transform: translateX(-4%);
    }
    .index__lookbook__photo02::after {
        top: -40px;
        left: -100%;
        width: 600px;
        height: 45%;
    }
    .index__lookbook__more .button-viewmore {
        width: 140px;
    }
}
@media (max-width: 960px) {
    .index__lookbook__inner {
        padding: 8rem 4.5rem 2.5rem;
        display: flex;
        flex-direction: column;
    }
    .index__lookbook__title {
        position: relative;
        left: auto;
        top: auto;
        right: auto;
        order: -1;
        margin-bottom: -5rem;
        z-index: 3;
    }
    .index__lookbook__title .lookbook-tate {
        display: none;
    }
    .index__lookbook__title .lookbook-yoko {
        display: block;
        width: 42vw;
        max-width: 450px;
        height: auto;
    }
    .index__lookbook__photos {
        flex-direction: column;
        align-items: flex-end;
        transform: none;
        gap: 2vw;
    }
    .index__lookbook__photo01 {
        width: 60%;
        position: relative;
    }
    .index__lookbook__photo01::after {
        bottom: -20px;
        left: -43%;
        width: 70%;
        height: 500px;
    }
    .index__lookbook__photo02 {
        width: 45%;
        padding-top: 2rem;
        align-self: flex-start;
    }
    .index__lookbook__photo02::after {
        top: auto;
        bottom: 150px;
        left: 10%;
        width: 250%;
        height: 40%;
    }
    .index__lookbook__title--line::after {
        display: none;
    }
    .index__lookbook__more {
        position: relative;
        right: auto;
        bottom: auto;
        margin-top: 2rem;
        display: inline-block;
        align-self: flex-end;
    }
    .index__lookbook__more .button-viewmore {
        width: 31vw;
    }
    .index__lookbook::before {
        width: 800px;
        height: 789px;
        right: -50px;
        bottom: -30px;
    }
    .index__lookbook::after {
        width: 600px;
        height: 420px;
        bottom: auto;
        top: 190px;
    }
}
@media (max-width: 768px) {
    .index__lookbook__inner {
        padding: 8rem 20px 2.5rem;
    }
    .index__lookbook::after {
        background-image: url(../images/lookbook/3rd/look-3rd-square-sp.webp);
        width: 490px;
        height: 300px;
        bottom: auto;
        top: 180px;
    }
    .index__lookbook__photo01::after {
        left: -48%;
        width: 80%;
    }
    .index__lookbook__photo02 {
        width: 36%;
        padding-top: 5rem;
    }
    .index__lookbook__photo02::after {
        bottom: 60px;
        left: 22%;
        height: 43%;
    }
    .index__lookbook__title {
        margin-bottom: -4rem;
    }
    .index__lookbook__title .lookbook-yoko {
        width: 55vw;
        max-width: 530px;
    }
    .index__lookbook__more {
        margin-top: 1rem;
    }
    .index__lookbook__more .button-viewmore {
        width: 300px;
    }
}
@media (max-width: 600px) {
    .index__lookbook__more .button-viewmore {
        width: 200px;
    }
}
@media (max-width: 500px) {
    .index__lookbook__inner {
        padding: 6rem 20px 2.5rem;
    }
    .index__lookbook__title {
        margin-bottom: -3rem;
    }
    .index__lookbook__photo01 {
        width: 70%;
    }
    .index__lookbook__photo02 {
        width: 46%;
        padding-top: 4rem;
    }
    .index__lookbook__photo02::after {
        bottom: 70px;
        left: 14%;
        height: 35%;
    }
    .index__lookbook__more {
        margin-top: 0;
        right: 30px;
        bottom: 40px;
    }
    .index__lookbook__more .button-viewmore {
        width: 170px;
    }
    .index__lookbook::after {
        width: 290px;
        height: 220px;
        top: 130px;
    }
    .index__lookbook::before {
        width: 550px;
        height: 550px;
        right: -80px;
    }
}
@media (max-width: 430px) {
    .index__lookbook__more .button-viewmore {
        width: 140px;
    }
    .index__lookbook::after {
        width: 250px;
        top: 90px;
    }
}
@media (max-width: 400px) {
    .index__lookbook::after {
        width: 220px;
        top: 60px;
    }
}
@media (max-width: 375px) {
    .index__lookbook__title {
        margin-bottom: -2rem;
    }
    .index__lookbook__photo01::after {
        bottom: -10px;
        height: 130px;
    }
    .index__lookbook__more {
        right: 10px;
    }
}

/* function(index) */
.index__function {
    background-color: #fff;
    padding-bottom: 5rem;
    position: relative;
}
@media (min-width: 520px) {
    .index__function {
        padding-bottom: 7rem;
    }
}
@media (min-width: 960px) {
    .index__function {
        padding-bottom: 10rem;
    }
}

.index__function__title {
    z-index: 5;
}

.index__function__title img {
    width: 180px;
    /* margin-left: auto; */
    margin-right: 1rem;
}
@media (min-width: 520px) {
    .index__function__title img {
        width: calc(250vw / 12);
        max-width: 250px;
    }
}

.index__function__title--line {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.index__function__title--line::before {
    content: '';
    position: absolute;
    top: 50%;
    left: calc(-120vw / 12);
    width: calc(100vw / 12);
    height: 1px;
    background-color: #000;
}

.index__function__inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    margin: 0 auto;
    padding: 7rem 0 1rem;
    width: 70%;
    max-width: 650px;
    position: relative;
    z-index: 5;
}
@media (min-width: 520px) {
    .index__function__inner {
        flex-direction: row;
        justify-content: center;
        align-items: flex-start;
        margin: 0 auto;
        padding: 10rem 0 1rem;
        width: 80%;
        /* max-width: 650px; */
        position: relative;
        z-index: 5;
    }
}

.index__function__image {
    width: 80%;
    margin-top: 1rem;
    margin-left: auto;
}
@media (min-width: 520px) {
    .index__function__image {
        z-index: 3;
        flex-basis: 50%;
        width: 100%;
        margin-top: 0;
        margin-left: 0;
    }
}

.index__function__image img {
    width: 100%;
}

.index__function__message {
    background-color: #e9e9ea;
    width: 60%;
    height: 200px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 12rem;
    margin: auto;
    z-index: 3;
    text-align: center;
}
@media (min-width: 520px) {
    .index__function__message {
        width: 45%;
        height: calc(500 / 1200 * 100vw);
        top: 8rem;
    }
}
@media (min-width: 960px) {
    .index__function__message {
        width: 35%;
        max-width: 500px;
        max-height: 370px;
    }
}

.index__function__message p {
    font-size: 0.8rem;
    font-weight: 200;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    width: max-content;
    margin-bottom: 0;
    color: #6d5348;
}
@media (min-width: 520px) {
    .index__function__message p {
        font-size: 1.2rem;
    }
}

.index__function__more {
    width: 90%;
    max-width: 1200px;
    text-align: right;
    margin: 4rem auto 0;
}
@media (min-width: 520px) {
    .index__function__more {
        margin: 2rem auto 0;
    }
}


/* function */
.function__top {
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: 160px;
    padding-bottom: 3rem;
    text-align: center;
}
@media (min-width: 520px) {
    .function__top {
        padding-top: 180px;
    }
}
@media (min-width: 960px) {
    .function__top {
        padding-top: 220px;
    }
}
@media (min-width: 1200px) {
    .function__top {
        padding-top: 270px;
        padding-bottom: 5rem;
    }
}

.function__title {
    margin-bottom: 3rem;
}

.function__title img {
    width: 260px;
}

.function__top p {
    width: 90%;
    text-align: center;
}

.function .container {
    width: 90%;
    margin: 5rem auto;
    text-align: center;
}
@media (min-width: 520px) {
    .function .container {
        width: 70%;
        max-width: 1000px;
        margin: 7rem auto 5rem;
    }
}

.function .container p {
    text-align: left;
}
@media (min-width: 520px) {
    .function .container p {
        text-align: center;
    }
}

.function__title--contents {
    display: flex;
	justify-content: center;
	align-items: center;
    margin-bottom: 2rem;
}

.function__title--contents::before,
.function__title--contents::after {
	content: '';
	width: 300px;
	height: 1px;
	background-color: #000;
}

.function__title--contents::before {
	margin-right: 1rem;
}
.function__title--contents::after {
	margin-left: 1rem;
}
@media (min-width: 520px) {
    .function__title--contents::before {
        margin-right: 3rem;
    }
    .function__title--contents::after {
        margin-left: 3rem;
    }
}

.function__title--contents img {
    height: 30px;
}

.function__sub-title {
    font-size: 1rem;
    margin-bottom: 2rem;
    text-align: center;
}

.function__stretch,
.function__deodorize,
.function__ast,
.function__etm,
.function__button,
.function__cp,
.function__wp {
    margin: 3rem auto 7rem;
}
@media (min-width: 520px) {
    .function__stretch,
    .function__deodorize,
    .function__ast,
    .function__etm,
    .function__button,
    .function__cp,
    .function__wp {
        margin: 3rem auto 10rem;
    }
}

.function__stretch img,
.function__etm img,
.function__button img,
.function__cp img {
    width: 80%;
}
@media (min-width: 520px) {
    .function__stretch img,
    .function__etm img,
    .function__button img,
    .function__cp img {
        width: 40%;
    }
}

.function__deodorize,
.function__ast,
.function__wp {
    display: flex;
    flex-direction: column;
    width: 80%;
}
@media (min-width: 520px) {
    .function__deodorize,
    .function__ast,
    .function__wp {
        flex-direction: row;
    }

    .function__deodorize {
        justify-content: center;
        width: 60%;
    }

    .function__ast,
    .function__wp {
        justify-content: space-around;
        width: 90%;
    }
}

.function__deodorize img,
.function__ast img,
.function__wp img {
    margin-bottom: 2rem;
}
@media (min-width: 520px) {
    .function__deodorize img,
    .function__ast img {
        margin-bottom: 0;
        width: 45%;
    }
    .function__wp img {
        margin-bottom: 0;
        width: 33%;
    }
}

.onlinestore__content {
    margin: 5rem auto;
    text-align: center;
}

.onlinestore__title {
    display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
    margin-bottom: 2rem;
}

.onlinestore__button__area {
    display: flex;
    flex-direction: column;
    width: 90%;
    max-width: 700px;
    margin: 1rem auto;
}
@media (min-width: 520px) {
    .onlinestore__button__area {
        flex-direction: row;
        justify-content: space-around;
    }
}

.onlinestore__title img {
    width: 200px;
}
@media (min-width: 520px) {
    .onlinestore__title img {
        width: calc(250vw / 12);
        max-width: 250px;
    }
}

.onlinestore__button {
    width: 60%;
    margin: 1rem auto;
    border: 1px solid #000;
    padding: 1rem 0.5rem;
    border-radius: 1rem;
}
@media (min-width: 520px) {
    .onlinestore__button {
        width: 25%;
    }
}

.onlinestore__button a {
    color: #000;
    font-size: 1rem;
}


/* staff snap(index) */
.index__staff-snap {
    background-color: #fff;
    margin: 0 auto;
    padding: 0;
    padding-top:3rem;
}
@media (min-width: 520px) {
    .index__staff-snap {
        padding-bottom: 5rem;
        padding-top:5rem;
    }
}

.index__staff-snap__title img {
    width: 220px;
}
@media (min-width: 520px) {
    .index__staff-snap__title img {
        width: calc(265vw / 12);
        max-width: 305px;
    }
}

.index__staff-snap__title--line {
    display: flex;
    align-items: center;
    position: relative;
}

.index__staff-snap__title--line::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 250px;
    width: calc(100vw / 12);
    height: 1px;
    background-color: #000;
}
@media (min-width: 520px) {
    .index__staff-snap__title--line::after {
        left: calc(285vw / 12);
    }
}
@media (min-width: 1200px) {
    .index__staff-snap__title--line::after {
        left: 330px;
    }
}

.index__staff-snap__slider {
    overflow: hidden;
    padding: 2rem 0;
}

.index__staff-snap__slider--carousel {
    margin: 0 auto;
    width: 100%;
    max-width: 1440px;
}

.index__staff-snap__slider--carousel img {
    display: block;
    width: 100%;
    aspect-ratio: 700 / 945;
    object-fit: cover;
}

.index__staff-snap__slider .slick-list {
    overflow: visible;
}


/* staff snap */
.staff-snap__title img {
    height: 39px;
    margin-bottom: 3rem;
}

.staff-snap .container {
    width: 90%;
    max-width: 1000px;
    margin: 2rem auto 5rem;
}
@media (min-width: 520px) {
    .staff-snap .container {
        margin: 5rem auto;
    }
}

.side__container > p {
    border-bottom: 1px #222 solid;
    margin-bottom: 0.5rem;
}

.side__container > ul {
    margin-bottom: 2rem;
}

.slide-toggle__button-top {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    padding: 1rem 0;
    border-top: #222 solid 1px;
    transition: all 0.5s 0s ease;
}

.slide-toggle__button-bottom {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    margin: 0 auto 2rem;
    padding: 1rem 0;
    border-bottom: #222 solid 1px;
}

@media (min-width: 520px) {
    .slide-toggle__button-top,
    .slide-toggle__button-bottom {
        display: none;
    }
}

.slide-toggle__menu {
    display: none;
}

.slide-toggle__menu.is-open {
    display: block;
}

.slide-toggle__stature,
.slide-toggle__product {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    width: 90%;
    margin: 0 auto;
    position: relative;
    transition: all .3s;
}
.slide-toggle__stature p,
.slide-toggle__product p {
    width: 20%;
}
.slide-toggle__select {
    width: 70%;
}
.slide-toggle__select li {
    height: 2rem;
    display: flex;
    align-items: center;
    opacity: 0;
}
.slide-toggle__select li:first-child {
    justify-content: flex-end;
    border-bottom: #222 1px solid;
    opacity: 1;
}
@media (min-width: 520px) {
    .slide-toggle__stature,
    .slide-toggle__product {
        flex-direction: column;
        align-items: stretch;
    }
    .slide-toggle__stature p,
    .slide-toggle__product p {
        border-bottom: #222 1px solid;
        margin-bottom: 0.5rem;
    }
    .slide-toggle__select {
        margin-bottom: 1rem;
    }
}

.staff-snap__list {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
}

.staff-snap__item {
    width: 45%;
    /* margin: 0 auto 3rem; */
}

.staff-snap__item img {
    width: 100%;
    aspect-ratio: 700 / 945;
    object-fit: cover;
}

.staff-snap__item > p {
    line-height: 1.7;
}

@media (min-width: 520px) {
    .grid__container {
        display: grid;
        grid-template-columns: 25% 1fr;
    }

    .side__container {
        margin-right: 1rem;
        margin-bottom: 0;
    }

    .slide-toggle__button {
        display: none;
    }

    .slide-toggle__menu {
        display: block;
    }

    .staff-snap__list {
        justify-content: flex-start;
        gap: 2rem 4%;
    }

    .staff-snap__list:before {
        content: "";
        display: block;
        width: 30%;
        height: 0;
        order: 1;
    }

    .staff-snap__list:after {
        content: "";
        display: block;
        width: 30%;
        height: 0;
    }

    .staff-snap__item {
        width: 30%;
    }
}
@media (min-width: 960px) {
    .grid__container {
        grid-template-columns: 20% 1fr;
    }

    .staff-snap__list:before {
        width: 22%;
    }

    .staff-snap__list:after {
        width: 22%;
    }

    .staff-snap__item {
        width: 22%;
    }
}


/* casestudies(index) */
.index__casestudies {
    width: 100%;
    padding: 5rem 0 3rem;
    background: url(../images/bg-AO.svg) 105% 20rem no-repeat;
    background-size: 70%;
}
@media (min-width: 520px) {
    .index__casestudies {
        background-position-y: 15rem;
        background-size: 60%;
    }
}
@media (min-width: 960px) {
    .index__casestudies {
        background-size: 50%;
    }
}

.index__casestudies__title {
    display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.index__casestudies__title img {
    height: 30px;
}
@media (min-width: 520px) {
    .index__casestudies__title img {
        height: 35px;
    }
}

.index__casestudies__title::before,
.index__casestudies__title::after {
	content: '';
	width: 50px;
	height: 1px;
	background-color: #000;
}

.index__casestudies__title::before {
	margin-right: 20px;
}
.index__casestudies__title::after {
	margin-left: 20px;
}

.index__casestudies__list {
    display: flex;
    flex-direction: column;
    padding-top: 2rem;
}
@media (min-width: 520px) {
    .index__casestudies__list {
        align-items: center;
        flex-direction: row;
        justify-content: space-around;
        padding-top: 0;
    }
}

.index__casestudies__detail {
    text-align: center;
    margin: 1rem auto;
    width: 85%;
}
@media (min-width: 520px) {
    .index__casestudies__detail {
        margin: 3rem auto;
        width: calc(90% / 3);
    }
}

.index__casestudies__detail img {
    width: 100%;
}

.index__casestudies__detail p {
    position: absolute;
    left: 1rem;
    bottom: 0;
    font-size: 0.8rem;
    font-weight: 200;
    margin-bottom: 0;
}
@media (min-width: 520px) {
    .index__casestudies__detail p {
        font-size: 1.2rem;
    }
}
@media (min-width: 960px) {
    .index__casestudies__detail p {
        font-size: 1.4rem;
    }
}

.index__column__more,
.index__staff-snap__more {
    width: 96%;
    max-width: 1200px;
    text-align: right;
    margin: 1rem auto 0;
}


/* column(index) */
.index__column {
    width: 100%;
    padding: 0 0 3rem;
}
@media (min-width: 960px) {
    .index__column {
        padding-bottom: 5rem;
    }
}

.index__column__title {
    display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.index__column__title img {
    height: 30px;
}
@media (min-width: 520px) {
    .index__column__title img {
        height: 35px;
    }
}

.index__column__title::before,
.index__column__title::after {
	content: '';
	width: 70px;
	height: 1px;
	background-color: #000;
}

.index__column__title::before {
	margin-right: 20px;
}
.index__column__title::after {
	margin-left: 20px;
}

.index__column__list {
    display: flex;
    flex-direction: column;
    padding-top: 2rem;
}
@media (min-width: 520px) {
    .index__column__list {
        align-items: center;
        flex-direction: row;
        justify-content: space-around;
        padding-top: 0;
    }
}

.index__column__detail {
    text-align: center;
    margin: 1rem auto;
    width: 85%;
}
@media (min-width: 520px) {
    .index__column__detail {
        margin: 3rem auto;
        width: calc(90% / 3);
    }
}

.index__column__detail img {
    width: 100%;
}

.index__column__detail p {
    position: absolute;
    left: 1rem;
    bottom: 0;
    font-size: 0.8rem;
    font-weight: 200;
    margin-bottom: 0;
}
@media (min-width: 520px) {
    .index__column__detail p {
        font-size: 1.2rem;
    }
}
@media (min-width: 960px) {
    .index__column__detail p {
        font-size: 1.4rem;
    }
}

.index__staff-snap__more,
.index__casestudies__more,
.index__column__more {
    width: 96%;
    max-width: 1200px;
    text-align: right;
    margin: 1rem auto 0;
}

/* column */
.column__title {
    margin-bottom: 3rem;
}

.column__title img {
    width: 260px;
}

.column__list {
    padding-top: 2rem;
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
@media (min-width: 520px) {
    .column__list {
        padding-top: 0;
        margin-top: 7rem;
    }
}

.column__detail {
    text-align: center;
    margin: 1rem auto;
    width: 85%;
}

.column__detail img {
    width: 100%;
}

.column__detail p {
    font-size: 0.9rem;
    text-align: left;
    margin-bottom: 0;
}


/* news */
.news {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 7rem 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media (min-width: 520px) {
    .news {
        flex-wrap: nowrap;
    }
}

.news__title {
    flex-basis: 10%;
}
.news__more {
    flex-basis: 100%;
}
@media (min-width: 520px) {
    .news__title,
    .news__more {
        flex-basis: 15%;
    }
}

.news__title img {
    height: calc(280vw / 12);
}
@media (min-width: 520px) {
    .news__title img {
        height: calc(120vw / 12);
        max-height: 136px;
    }
}

.news__title--line {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    position: relative;
}

.news__title--line::after {
    content: '';
    position: absolute;
    top: calc(300vw / 12);
    right: 50%;
    width: 1px;
    height: calc(100vw / 12);
    background-color: #000;
}
@media (min-width: 520px) {
    .news__title--line::after {
        top: calc(140vw / 12);
    }
}
@media (min-width: 1200px) {
    .news__title--line::after {
        top: 158px;
    }
}

.news__detail {
    margin: 0 auto;
    text-align: center;
    width: 100%;
    flex-basis: 90%;
}
@media (min-width: 520px) {
    .news__detail {
        flex-basis: 70%;
    }
}

.news__detail dl {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    width: 100%;
    border-bottom: 1px solid #000;
}

.news__detail dt,
.news__detail dd {
    margin: 0;
}

.news__detail dt {
    width: 30%;
    padding: 2rem 0;
    border-top: 1px solid #000;
}

.news__detail dd {
    width: 70%;
    padding: 2rem 0;
    border-top: 1px solid #000;
}

.news__more {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}


/* showroom(index) & uservoice(index) */
/*
#index--showroom{
   background-color: #fff;
    width:100%;
    height:auto;
    padding-top:4rem;
}
    */
.index__showroom{
    background:#fff;
}
.index__showroom__wrapper {
    width: min(90%, 1200px);
    padding: 0;
    padding-bottom: 1rem;
    margin: 0 auto;
    text-align: center;
}
.index__uservoice {
    width: min(90%, 1200px);
    padding: 0;
    padding-bottom: 1rem;
    margin: 0 auto;
    text-align: center;
}

@media (min-width: 520px) {
    /*#index--showroom{
        padding-top:10rem;
    }*/
    .index__showroom__wrapper{
        padding-bottom: 5rem;
    }
    .index__uservoice{
        padding-bottom: 5rem;
    }
}

.index__showroom__title {
    display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.index__showroom__title img {
    height: 35px;
}
.index__uservoice__title {
    display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.index__uservoice__title img {
    height: 35px;
}

.index__showroom__button {
    width: 60%;
    margin: 1rem auto 0.5rem;
    border: 1px solid #000;
    padding: 0.5rem 1rem;
    border-radius: 1rem;
    color: #000;
    font-size: 1rem;
}

@media (min-width: 520px) {
    .index__showroom__button {
        width: 30%;
        padding: 1rem;
    }
}


.index__showroom p {
    font-size: 0.8rem;
}
.index__uservoice p {
    font-size: 0.8rem;
}
@media (min-width: 520px) {
    .index__showroom p {
        font-size: 1rem;
    }
}
@media (min-width: 920px) {
    .index__showroom p {
        font-size: 1.1rem;
    }
}
@media (min-width: 520px) {
    .index__uservoice p {
        font-size: 1rem;
    }
}
@media (min-width: 920px) {
    .index__uservoice p {
        font-size: 1.1rem;
    }
}

/* Showroom(index) */


.index__showroom {
    background-color: #fff;
    padding-bottom: 5rem;
    position: relative;
}
@media (min-width: 520px) {
    .index__showroom {
        padding-bottom: 7rem;
    }
}
@media (min-width: 960px) {
    .index__showroom {
        padding-bottom: 10rem;
    }
}

.index__showroom__title {
    z-index: 5;
}

.index__showroom__title img {
    width: 250px;
    /* margin-left: auto; */
    margin-right: 1rem;
}
@media (min-width: 520px) {
    .index__showroom__title img {
        width: calc(250vw / 12);
        max-width: 300px;
        
    }
}

.index__showroom__title--line {
    /*display: flex;*/
    align-items: center;
    justify-content: center;
    position: relative;
    margin-top:1rem;
    margin-left:-3rem;
}

.index__showroom__title--line::after {
    content: '';
    position: absolute;
    top: 50%;
    /*left: calc(-120vw / 12);*/
    left:100%;
    width: calc(100vw / 12);
    height: 1px;
    background-color: #000;
    
}

.index__showroom__inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    margin: 0 auto;
    padding: 7rem 0 1rem;
    width: 70%;
    max-width: 650px;
    position: relative;
    z-index: 5;
}
@media (min-width: 520px) {
    .index__showroom__inner {
        flex-direction: column;
        justify-content: center;
        align-items: flex-end;
        margin: 0 auto;
        padding: 10rem 0 1rem;
        width: 80%;
        max-width: 650px;
        position: relative;
        z-index: 5;
    }
}

.index__showroom__image {
    width: 90%;
    margin-top: 1.5rem;
    margin-left: auto;
    /*display: flex;*/
    
}
.index__showroom__image img {
    transform: translateX(-35px);
    
}

@media (min-width: 520px) and (max-width: 959px){
    .index__showroom__image {
        z-index: 3;
        width: 45%;
        margin-top: -3rem;
        margin-left: 0;
    }
    .index__showroom__image img {
        transform: translate(-170px, 50px);
    }
    .index__showroom__message p{
        transform: translate(40%, -15px);
    }
}

@media (min-width: 960px) {
    .index__showroom__image {
        z-index: 3;
        width: 67%;
        margin-top: -3rem;
        margin-left: 0;
    }
    .index__showroom__image img {
        /*transform: translate(-140%, 10px);*/
        /*transform: translate(calc(-140% + 20px), 10px);*/
        transform: translate(calc(-38% - 30px), 75px);
    }
}



.showroom img {
    width: 100%;
   
}

.index__showroom__message {
    background-color: #f0eee5;
    width: 65%;
    height: 110px;
    position: absolute;
    left: 50%;
    bottom:3%;
    transform: translateX(-50%);
    top: 12rem;
    margin: auto;
    z-index: 3;
    text-align: center;
}
@media (min-width: 520px) {
    .index__showroom__message {
        width: 50%;
        height: calc(400 / 1200 * 100vw);
        top: 8rem;
    }
}
@media (min-width: 960px) {
    .index__showroom__message {
        width: 50%;
        max-width: 500px;
        max-height: 315px;
        left: 48%;
        top: 25%;
    }
}

.index__showroom__message p {
    font-size: 0.8rem;
    font-weight: 200;
    position: absolute;
    left: 50%;
    transform: translate(0%, -5px);
    bottom: 0;
    width: max-content;
    margin-bottom: 0;
    color: #6d5348;
}
@media (min-width: 520px) {
    .index__showroom__message p {
        font-size: 1.2rem;
        transform: translate(0, -15px);
    }
}

@media (min-width: 960px) {
    .index__showroom__message p {
        font-size: 1.2rem;
        transform: translate(55%, -10px);
    }
}


.index__showroom__more {
    width: 90%;
    max-width: 1200px;
    text-align: right;
    margin: 4rem auto 0;
}
@media (min-width: 520px) {
    .index__showroom__more {
        margin: 2rem auto 0;
    }
}


/* showroom */
.second__level__top {
    background-color: #fff;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: 160px;
    padding-bottom: 3rem;
    text-align: center;
}
.second__level__top p {
    width: 90%;
}
@media (min-width: 520px) {
    .second__level__top {
        padding-top: 180px;
    }
}
@media (min-width: 960px) {
    .second__level__top {
        padding-top: 220px;
    }
}
@media (min-width: 1200px) {
    .second__level__top {
        padding-top: 270px;
        padding-bottom: 5rem;
    }
}

.showroom__title {
    margin-bottom: 3rem;
}

.showroom__title img {
    height: 35px;
}
@media (min-width: 520px) {
    .showroom__title img {
        height: 39px;
    }
}

.showroom .container {
    width: 90%;
    margin: 5rem auto;
}
@media (min-width: 520px) {
    .showroom .container {
        width: 70%;
        max-width: 1000px;
        margin: 7rem auto 5rem;
    }
}

.showroom--image {
    width: 80%;
    margin: 3rem auto 5rem;
    text-align: center;
}
@media (min-width: 520px) {
    .showroom--image {
        width: 60%;
    }
}

.showroom__list li {
    margin-bottom: 3rem;
}

summary {
    /* display: list-item;以外を指定してデフォルトの三角形アイコンを消します */
    display: block;
}

summary::-webkit-details-marker {
    /* Safariで表示されるデフォルトの三角形アイコンを消します */
    display: none;
}

.summary_inner{
    cursor: pointer;
    display: flex;
    flex-direction: row;
    /* justify-content: space-between; */
    align-items: center;
    /* padding: 16px 24px;
    border: 1px solid #d2beff;
    font-weight: bold;
    color: #002255; */
}

.icon {
    display: block;
    position: relative;
    width: 16px;
    margin-left: 10px;
    flex-shrink: 0;
    transform-origin: center 43%;
    transition: transform 0.4s;
}

/* is-openedクラスが付与されたときのスタイル */
details.is-opened .icon {
    transform: rotate(180deg);
}

/* アイコンのバーのスタイル */
.icon::before,
.icon::after {
    content: "";
    position: absolute;
    display: block;
    width: 10px;
    height: 1px;
    background-color: #222;
}

.icon::before {
    left: 0;
    transform: rotate(45deg);
}

.icon::after {
    right: 0;
    transform: rotate(-45deg);
}


/* Added on 2024-Oct */
.reservation__button {
    width: fit-content;
    margin: 1rem auto;
    border: 1px solid #000;
    padding: 0.5rem 2rem;
    border-radius: 0.3rem;
}

#reservation-btn{
    color:#000;
}
/* END: Added on 2024-Oct */

/* --------アコーディオンの中身のスタイル-------- */
.content {
    overflow: hidden;
    /* background-color: #f0f2ff; */
    /* details直下のタグにpaddingを設定すると挙動がおかしくなるので、ここには指定しない */
}

.content_inner {
    padding: 24px 48px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}


/* contact(index) */
.index__contact {
    width: min(90%, 1200px);
    /* padding: 3rem 0; contentsが公開されたらこちら */
    padding: 7rem 0 3rem;
    margin: 0 auto;
    text-align: center;
}

.index__contact__title {
    display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
    margin-bottom: 2rem;
}

.index__contact__title img {
    width: 200px;
}
@media (min-width: 520px) {
    .index__contact__title img {
        width: calc(215vw / 12);
        max-width: 245px;
    }
}

.index__contact__title::before,
.index__contact__title::after {
	content: '';
	width: 70px;
	height: 1px;
	background-color: #000;
}

.index__contact__title::before {
	margin-right: 20px;
}
.index__contact__title::after {
	margin-left: 20px;
}

.index__contact__button__area {
    display: flex;
    flex-direction: column;
    width: 90%;
    max-width: 700px;
    margin: 1rem auto;
}
@media (min-width: 520px) {
    .index__contact__button__area {
        flex-direction: row;
        justify-content: space-around;
    }
}

.index__contact__button {
    width: 60%;
    margin: 1rem auto;
    border: 1px solid #000;
    padding: 1rem 0.5rem;
    border-radius: 1rem;
    color: #000;
    font-size: 1rem;
}
@media (min-width: 520px) {
    .index__contact__button {
        width: 30%;
    }
}

/* contact 共通*/
.contact-msg{
    padding:1rem;
}

.inner-main-contact{
    display:grid;
    grid-template-columns: 1fr;
    gap:1rem;
    text-align:center;
}

.inner-main-contact div{
    padding:1rem;
    border-radius: 50px;
    border:1px solid black;
}

.main-contact div p{
    margin:0;
}

.main-contact div a{
    color:black;
}

.inner-main-contact {
    padding-bottom:100px;
}

@media (min-width: 750px) {
.inner-main-contact{
    grid-template-columns: 1fr 1fr 1fr;
    gap:2rem;
}

.inner-main-contact {
    padding-bottom:300px;
    }
} 

.contact {
    background-color: #fff;
    padding-top: 160px;
}

.contact__top {
    min-height: calc(300vw / 12);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin-bottom: 3rem;
}
@media (min-width: 1200px) {
    .contact__top {
        margin-bottom: 0;
    }
}

.contact__title {
    margin-bottom: 3rem;
}

.contact__title img {
    width: 200px;
}
@media (min-width: 520px) {
    .contact__title img {
        width: calc(215vw / 12);
        max-width: 245px;
    }
}

.form_contact {
    width: 90%;
    margin: 0 auto;
}
@media (min-width: 520px) {
    .form_contact {
        width: 70%;
    }
}

.satori__submit_group {
    width: 30%;
    margin: 1rem auto 3rem !important;
}


/* instagram */
.instagram {
    width: 100%;
    margin: 5rem auto;
    background: url(../images/bg-RE.svg) -35% top no-repeat;
    background-size: 70%;
}
@media (min-width: 520px) {
    .instagram {
        background-position: -20% top;
        background-size: 60%;
    }
}
@media (min-width: 960px) {
    .instagram {
        background-position: -15% top;
        background-size: 50%;
    }
}

.instagram__title img {
    width: 240px;
    margin-left: auto;
}
@media (min-width: 520px) {
    .instagram__title img {
        width: calc(260vw / 12);
        max-width: 295px;
    }
}

.instagram__title--line {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    position: relative;
}

.instagram__title--line::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 260px;
    width: calc(100vw / 12);
    height: 1px;
    background-color: #000;
}
@media (min-width: 520px) {
    .instagram__title--line::before {
        right: calc(280vw / 12);
    }
}
@media (min-width: 1200px) {
    .instagram__title--line::before {
        right: 325px;
    }
}

.insta_list {
    display: flex;
    flex-wrap: wrap;
	justify-content: space-between;
    list-style: none;
}

.insta_list li {
    position: relative;
    width: 46%;
	margin: 2% auto;
}

@media screen and (min-width: 520px){
	.insta_list li {
		width: calc(90% / 4);
		margin: 0 auto;
	}
}

.insta_list li::before {
	content: "";
	display: block;
	padding-top: 100%;
}

.insta_list a {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
}

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

.insta_btn {
	background-color: #000;
	padding: .5em 1em;
	width: fit-content;
	margin: 0 auto;
	cursor: pointer;
	transition: .3s
}

.insta_btn a {
	color: #fff;
	text-decoration: none;
}

.insta_btn:hover {
	background-color: #999;
}

.instagram__more {
    width: 96%;
    max-width: 1200px;
    text-align: right;
    margin: 1rem auto 0;
}


/* company */
.company__top {
    background-color: #fff;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: 160px;
    padding-bottom: 3rem;
    text-align: center;
}
@media (min-width: 520px) {
    .company__top {
        padding-top: 180px;
    }
}
@media (min-width: 960px) {
    .company__top {
        padding-top: 220px;
    }
}
@media (min-width: 1200px) {
    .company__top {
        padding-top: 270px;
        padding-bottom: 5rem;
    }
}

.company__title img {
    width: 300px;
}
@media (min-width: 520px) {
    .company__title img {
        width: 390px;
    }
}

.company .container {
    width: 90%;
    margin: 5rem auto;
}
@media (min-width: 520px) {
    .company .container {
        width: 70%;
        max-width: 1000px;
        margin: 10rem auto 5rem;
    }
}

.company__sub-title {
    font-size: 1.2rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #000;
    margin-bottom: 1rem;
}

.company__profile {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-bottom: 3rem;
}
@media (min-width: 520px) {
    .company__profile {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: flex-start;
        width: 100%;
        margin-bottom: 3rem;
    }
}

.company__profile dt,
.company__profile dd {
    width: 100%;
}

.company__profile dt {
    padding: 0;
    margin-bottom: 0;
    font-weight: bold;
}

.company__profile dd {
    padding-bottom: 0;
}
@media (min-width: 520px) {
    .company__profile dt,
    .company__profile dd {
        margin: 0;
    }

    .company__profile dt {
        width: 25%;
        padding: 1rem 0 0;
    }

    .company__profile dd {
        width: 75%;
        padding: 1rem 0 0;
    }
}

.branch-office li {
    margin-bottom: 2rem;
}


/* footer */
footer {
    position: sticky;
    top: 100vh;
    width: 100%;
    padding: 4rem 0 1rem;
}

.footer__inner {
    margin: 0 auto;
    width: 90%;
    
}
@media (min-width: 520px) {
    .footer__inner {
        position: relative;
        display: flex;
        align-items: center;
        flex-direction: row;
        max-width: 1000px;
        display: flex;
        justify-content: space-between;
    }
}
@media (min-width: 1200px) {
    .footer__inner {
        max-width: 1200px;
    }
}

.footer__logo {
    margin: 0 auto 2rem;
    text-align: center;
}
@media (min-width: 520px) {
    .footer__logo {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
    }
}

.footer__logo img {
    width: calc(200vw / 12);
    max-width: 100px;
}
@media (min-width: 520px) {
    .footer__logo img {
        width: calc(100vw / 12);
    }
}

.footer__info {
    margin: 0 auto;
    width: 100%;
    display: flex;
    flex-direction: column;
}

@media (min-width: 520px) {
    .footer__info {
        max-width: 1200px;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-end;
    }
}

.footer__nav {
    margin-bottom: 2rem;
}
@media (min-width: 520px) {
    .footer__nav {
        margin-bottom: 0;
    }
}

.footer__nav li a {
    color: #000;
    font-size: 0.7rem;
}

.copyright p {
    text-align: right;
    color: #000;
    margin-bottom: 0;
    font-size: 0.6rem;
}
/* Uservoice (index)*/
#index__uservoice{
    background-color: #f0eee5;
}

/* Uservoice: Added in Oct 2024 */
.uservoice{ 
    background: url(../images/bg-AORE-side.svg) center bottom/ 102% no-repeat;
    padding-bottom:5rem;
}
@media (min-width: 520px){
    .uservoice{
        padding-bottom:8rem;
}
}
@media (min-width: 950px){
    .uservoice{
        padding-bottom:15rem;
}
}
@media (min-width: 1250px){
    .uservoice{
        padding-bottom:28rem;
}
}

.bg-gray{
    background: #dedace;
    padding:0.2rem 0.7rem;
    border-radius: 3px;
}
.uservoice__item{
    border-bottom: 1px #222 solid;
    margin-bottom: 0.5rem;
    margin-bottom:30px;
}
.uservoice__item--title{
    display:flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 10px;
}
.uservoice__item--title>p{
    margin-bottom:5px;
}
.uservoice__date{
    color:#959393;
}

.fa-star{
    color:#251714;
    letter-spacing: -3px;
}
@media (min-width: 520px) {
    .uservoice .container {
        width: 70%;
        max-width: 1000px;
        margin: 4rem auto 5rem;
        
    }
}

.uservoice .container {
    width: 90%;
    margin: 3rem auto;
}

.uservoice__filters__container{
    display:grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    gap:5%;
}
.uservoice--filter__container > p {
    border-bottom: 1px #222 solid;
    margin-bottom: 0.5rem;
}
.uservoice--filter__container  a {
    color: #222;
}
@media (min-width: 950px) {
.uservoice__filters__container{
    display:grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap:5%;
}
}

.star5_rating {
    font-family: FontAwesome;
    position: relative;
    display: inline-block;
    color: #251714; /* アウトラインの星の色 */
    letter-spacing: 2px;
}

.star5_rating:before {
    content: '\f006 \f006 \f006 \f006 \f006'; /* アウトライン星 */
}

.star5_rating:after {
    content: '\f005 \f005 \f005 \f005 \f005'; /* 塗りつぶし星 */
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    overflow: hidden;
    white-space: nowrap;
    color: #251714; /* 塗りつぶし星の色 */
}

.star5_rating[data-rate="5"]:after{ width: 100%; } /* 星5 */
.star5_rating[data-rate="4.5"]:after{ width: 90%; } /* 星4.5 */
.star5_rating[data-rate="4"]:after{ width: 80%; } /* 星4 */
.star5_rating[data-rate="3.5"]:after{ width: 70%; } /* 星3.5 */
.star5_rating[data-rate="3"]:after{ width: 60%; } /* 星3 */
.star5_rating[data-rate="2.5"]:after{ width: 50%; } /* 星2.5 */
.star5_rating[data-rate="2"]:after{ width: 40%; } /* 星2 */
.star5_rating[data-rate="1.5"]:after{ width: 30%; } /* 星1.5 */
.star5_rating[data-rate="1"]:after{ width: 20%; } /* 星1 */
.star5_rating[data-rate="0.5"]:after{ width: 10%; } /* 星0.5 */
.star5_rating[data-rate="0"]:after{ width: 0%; } /* 星0 */


/* FITTING */
.fitting-inner {
    width: 90%;
    margin: 5rem auto;
}
@media (min-width: 520px) {
    .fitting-inner {
        width: 70%;
        max-width: 850px;
    }
}

.fitting-image {
    width: 80%;
    margin: 3rem auto 5rem;
    text-align: center;
}
@media (min-width: 520px) {
    .fitting-image {
        max-width: 665px;
    }
}

.fitting-content {
    padding-inline: 1rem;
}

.fitting-wrapper {
    border: 1px solid #222;
}

.fitting-wrapper__titleZone {
    padding: 0.5rem 1rem;
    border-bottom: 1px solid #222;
}

.fitting-wrapper__title {
    margin-bottom: 0;
    font-size: 1rem;
}

.fitting-wrapper__title span {
    display: inline-block;
    border: 1px solid #222;
    margin-right: 8px;
    width: 21px;
    height: 21px;
    line-height: 21px;
    text-align: center;
}

.fitting-wrapper .fitting-content {
    padding: 1rem;
}

.fitting-wrapper__text a {
    color: inherit;
    text-decoration: underline;
}

.fitting-wrapper__buttonZone {
    display: flex;
    justify-content: center;
}

.fitting-wrapper__button {
    width: 223px;
    border-radius: 50px;
    border: 1px solid #222;
    background-color: #fff;
    padding: 13px;
    text-align: center;
    font-size: 0.8rem;
    color: #222;
}

.fitting-wrapper__center {
    font-size: 1rem;
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 1;
}
.fitting-wrapper__center::before {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    content: "";
    width: 100%;
    height: 1px;
    background-color: #222;
    z-index: -1;
}

.fitting-wrapper__center span {
    display: inline-block;
    width: 64px;
    background-color: #f3f1e8;
    text-align: center;
}

@media (min-width: 960px) {
    .fitting-wrapper__image {
        margin-inline: auto;
        width: 85%;
    }
}

.fitting-voice__clinic {
    display: inline-block;
    background-color: #fff;
    padding: 0px 10px 0px 8px;
    position: relative;
}
.fitting-voice__clinic::after {
    position: absolute;
    top: 0;
    left: calc(100% - 1px);
    content: "";
    width: 15px;
    height: 100%;
    background-color: #fff;
    clip-path: polygon(100% 50%, 0% 0%, 0% 100%);
}

@media (min-width: 520px) {
    .fitting-voice__list {
        display: flex;
        flex-wrap: wrap;
        gap: 45px;
    }
}

.fitting-voice__item {
    margin-bottom: 50px;
}

@media (min-width: 520px) {
    .fitting-voice__item {
        width: calc((100% - 45px) / 2);
    }
}

.fitting-voice__text {
    margin-top: 1rem;
    margin-bottom: 2rem;
}

.fitting-voice__bottom {
    display: flex;
    justify-content: flex-end;
}

.fitting-voice__button {
    width: 172px;
    border-radius: 50px;
    border: 1px solid #222;;
    padding: 3px;
    text-align: center;
    color: #222;
}

.fitting-last {
    text-align: center;
    font-size: 1rem;
}

.fitting-contact {
    display: flex;
    justify-content: center;
}

.fitting-contact__button {
    border-radius: 17px;
    border: 1px solid #222;
    width: 347px;
    height: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.fitting-contact__button img {
    width: 180px;
}

/*お問い合わせ完了ページ追加__250919*/
.contact-thanks {
    padding-top: 270px;
    background-color: #fff;
    height: 50dvh;
    text-align: center;
}
.sp-br {
    display: none;
}
.contact-thanks h1 {
    font-weight: 500;
    font-size: 24px;
    margin-bottom: 32px;
}
@media screen and (max-width: 768px) {
    .contact-thanks {
        padding-top: 220px;
        padding-right: 20px;
        padding-left: 20px;
    }
    .contact-thanks p {
        text-align: left;
    }
    .pc-br {
        display: none;
    }
}
@media screen and (max-width: 430px) {
    .sp-br {
        display: block;
    }
}

/*======h1変更===============================*/
.new-h-one {
    font-size: 0.8rem;
    letter-spacing: inherit;
}
@media screen and (max-width: 519px) {
    .new-h-one {
        letter-spacing: 0;
    }
}
/*top-page*/
.top-h {
    margin-top: 2rem;
    line-height: 2.3;
}
/*fitting-page*/
.fitting-inner .fitting-h {
    padding-bottom: 8px;
}
/*function-page*/
.function-h {
    font-size: 0.8rem;
    width: 90%;
    line-height: 2.3;
    margin-bottom: 1rem;
}
/*casestudies-page*/
.cs-h {
    width: 90%;
    margin-bottom: 1rem;
    font-size: .8rem;
    line-height: 2.3;
}
/*column-page*/
.column-h {
    width: 90%;
    margin-bottom: 1rem;
    font-size: .8rem;
    line-height: 2.3;
}
/*user-voice-page*/
.uv-h {
    width: 90%;
    margin-bottom: 1rem;
    font-size: .8rem;
    line-height: 2.3;
}

/*===top-page lineup-section viewmore btn add__251120========*/
.lineup-vm {
    max-width: 1200px;
    margin: 0 auto;
    margin-top: 36px;
}
@media screen and (max-width: 1200px) {
  .lineup-vm {
      width: 96%;
      margin: 0 2%;
  }
}
@media screen and (max-width: 960px) {
    .lineup-vm {
        width: 90%;
        margin: 0 auto;
        margin-bottom: 36px;
    }
}

/*===fixed cart btn add__251120========*/
    .fixed-cart {
        position: fixed;
        top: 75.5px;
        right: 145px;
  }
@media screen and (max-width: 960px) {
    .fixed-cart {
        position: fixed;
        top: 25px;
        right: 75px;
    }
}

.aore-bold {
	font-weight: 400;
}