@charset "utf-8";

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

.side__txt__box {
    display: flex;
    gap: 1em;
    align-items: center;
}

@media only screen and (max-width: 800px) {
.side__txt__box {
display: block;
}
}


/* 
============================
propphoto
============================ 
*/
main {
    background-color: #f8f8f6;
}

#propphoto section {
    max-width: 1600px;
    width: 95%;
    margin: 0 auto;
}

.width__container {
    max-width: 1600px;
    width: 95%;
    margin: 0 auto;
}

#propphoto section.eye-catch,
#propphoto section.get-started,
#rentalk section.eye-catch,
#rentalk section.get-started {
    max-width: none;
    width: 100%;
    margin: 0;
}

.product-experience__ttl,
.use-case__ttl,
.merits__ttl,
.faq__ttl,
.task__ttl,
.scene__ttl,
.feature__ttl,
.result__ttl,
.result__ttl {
    font-size: clamp(28px, 2.625vw, 42px);
    font-weight: 800;
}

.product-experience__contents__copy,
.use-case__contents__copy,
.merits__contents__copy,
.faq__contents__copy,
.task__contents__copy,
.scene__contents__copy,
.contents__copy {
    font-size: clamp(18px, 2.5vw, 20px);
    font-weight: 600;
    color: #969696;
}

	
@media only screen and (max-width: 800px) {
#propphoto section,
.width__container {
width: 90%;
}
}

/* top */
#propphoto .top__back__container {
    background: url(../images/propphoto_top_contents_back.jpg)no-repeat center center / cover;
    position: relative;
}

.top {
    padding: 5em 0;
    height: 700px;
}

.propphoto__top__txt__box {
    width: 50%;
}

.propphoto__top__txt__box h1 {
    display: flex;
    gap: 1em;
align-items: center;
}

.top__catch-copy {
    font-size: clamp(30px, 2.5vw, 45px);
    font-weight: 800;
}

.top__catch-txt {
    padding: 1.5em 0 0;
}

.reservation__btn__box {
    display: flex;
    gap: 1em;
    margin-top: 1.5em;
}

.reservation__btn__box p {
    display: block;
}

.reservation__btn__box p a {
    display: block;
    width: fit-content;
}

.reservation__btn__box p a img {
    display: block;
    width: 85%;
}

.top__ttl {
font-size: clamp(18px, 2.5vw, 25px);
}


@media only screen and (max-width: 800px) {
    #propphoto .top__back__container {
    background: none;
}

.top__back__sp {
    padding-top: 10em;
}

.top {
    padding: 1em 0;
    height: 0;
}

.propphoto__top__txt__box {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 90%;
    margin: 0 auto;
}

.propphoto__top__txt__box h1 {
    gap: .2em;
    padding: .5em 0;
}

.reservation__btn__box {
display: block;
}

.reservation__btn__box p {
    display: block;
    width: 80%;
    padding: .8em 0;
}

.top__ttl__logo {
    width: 30%;
}

}
/* product-experience */
.product-experience {
    display: flex;
    gap: 1em;
    padding: 2em 0;
}

.product-experience__ttl {
    white-space: nowrap;
}

.product-experience__contents__detel {
    padding-top: 3em;
}

.product-experience__flow {
    padding: 2em 0;
}

.product-experience__flow__copy {
    font-size: clamp(26px, 2.0625vw, 33px);
    font-weight: 600;
}

.product-experience__flow__box {
    background-color: #fff;
    padding: 1em;
    margin-top: 1em;
}

.product-experience__flow__txt {
    font-weight: 600;
}
/* 
.product-experience__flow__inner {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1em;
    align-items: center;
    padding-top: 1em;
} */

.product-experience__flow__inner {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 1em;
    align-items: center;
    padding-top: 1em;
}

/* 基本は 12 ÷ 4 = 3列分ずつ */
.product-experience__flow__inner > * {
    grid-column: span 3;
}

/* 5〜7個目(2行目)は 12 ÷ 3 = 4列分ずつ */
.product-experience__flow__inner > :nth-child(n+5) {
    grid-column: span 4;
}

.product-experience__flow__inner li {
    position: relative;
}

@media only screen and (min-width: 801px) {
.product-experience__flow__inner li:not(:nth-of-type(4), :nth-of-type(7))::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -21px;
    width: 25px;
    height: 25px;
    transform: translateY(-50%);
    background: url(../images/flow_inner_arrow.png)no-repeat center center / contain;
}
}

@media only screen and (max-width: 800px) {
    .product-experience {
    display: block;
}

.product-experience__flow__inner {
    grid-template-columns: repeat(1, 1fr);
    justify-content: center;
}

.product-experience__flow__inner li {
    width: 80%;
    margin: 0 auto;
}


.product-experience__flow__inner li:not(:last-of-type)::after {
    content: "";
    position: absolute;
    bottom: -32px;
    right: 45%;
    width: 25px;
    height: 25px;
    transform: translateY(-50%);
    background: url(../images/flow_inner_arrow-sp.png)no-repeat center center / contain;
}
}

/* use-case */
.use-case__contents {
    padding: 2em 0 5em;
}

.use-case__contents li  {
    display: grid;
    grid-template-columns: 1fr 1fr 8fr;
    gap: 1em;
    align-items: center;
    border-bottom: 1px solid #969696;
    padding: 2em 0;
}

.se-case__contents__txt__box {
    border-left: 1px solid #969696;
    padding: 1em 2em;
}

.use-case__contents__number {
    width: 45%;
}

.use-case__contents__icon {
    width: 65%;
}

.use-case__contents__reason__ttl {
    font-size: clamp(22px, 1.75vw, 28px);
    font-weight: 600;
}

.use-case__contents__reason__txt {
    font-size: clamp(14px, 1.0625vw, 17px);
    padding-top: 1em;
}

@media only screen and (max-width: 800px) {
    .use-case__contents li  {
    grid-template-columns: repeat(4, 1fr);
}

	.use-case__contents li img {
width: 65%;
}

.se-case__contents__txt__box {
grid-column: 1 / 5;
border: none;
padding: 1em;
}

.use-case__contents__number {
    width: 100%;
}

.use-case__contents__icon {
    width: 100%;
}
}

/* eye-catch */
.eye-catch img {
    width: 100%;
}


/* merits */
.merits {
    padding: 5em 0;
}
.merits__txt__box {
    display: flex;
    gap: 1em;
    align-items: flex-start;
}

.merits__txt {
    padding-top: 1.1em;
}

.merits__box {
    display: flex;
    justify-content: center;
    text-align: center;
    align-items: flex-start;
    padding-top: 4em;
}

.merits__01 {
    border-right: 1px solid #969696;
}

.merits__01 img,
.merits__02 img {
    width: 80%;
}

@media only screen and (max-width: 800px) {
    .merits__txt__box {
        display: block;
}

.merits__box {
    display: block;
}

.merits__01 {
    border-right: none;
    padding-right: 0;
    padding-bottom: 2em;
    margin-bottom: 2em;
}

.merits__01 img,
.merits__02 img {
    width: 100%;
}

}

/* faq */
.faq {
    padding: 2em 0;
}

.faq__contents__box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2em;
    padding: 1em 0;
}

.faq__txt__box {
    display: flex;
    gap: 1em;
    height: fit-content;
    align-items: center;
}

.faq__accordion__box {
    background-color: #fff;
    padding: 1em;
}

details {
    max-width: 800px;
    margin-bottom: 7px;
    border-bottom: 2px solid #d0d0d0;
}

details summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em 2em;
    color: #000;
    font-weight: 600;
    cursor: pointer;
}

details summary::-webkit-details-marker {
    display: none;
}

details summary::before,
details summary::after {
    width: 2px;
    height: 1.5em;
    border-radius: 5px;
    background-color: #000000;
    content: '';
}

details summary::before {
    position: absolute;
    right: 2em;
    rotate: 90deg;
}

details summary::after {
    transition: rotate .3s;
}

details[open] summary::after {
    rotate: 90deg;
}

details p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: .3em 2em 1.5em;
    color: #333333;
    transition: transform .5s, opacity .5s;
}

details[open] p {
    transform: none;
    opacity: 1;
}

@media only screen and (max-width: 800px) {
    .faq {
    grid-template-columns: repeat(1, 1fr);
}

.faq__contents__box {
    grid-template-columns: repeat(1, 1fr);
}

	.faq__txt__box {
display: block;
}
}

/* get-started */
#propphoto .get-started {
    background: url(../images/propphoto_get-started_back.jpg)no-repeat center center / cover;
    padding: 2em 0 3em;
}

#propphoto .get-started .width__container {
    display: flex;
    gap: 2em;
    align-items: end;
    gap: 3em;
}

.get-started__txt__box {
    color: #fff;
}

.get-started__txt {
    padding-top: .5em;
}

.get-started__copy {
    font-size: clamp(24px, 2.5vw, 42px);
    font-weight: 800;
}

@media only screen and (max-width: 800px) {
#propphoto .get-started .width__container {
    display: block;
}

}



/* 
============================
RENTALK
============================ 
*/
#rentalk section {
    max-width: 1600px;
    width: 95%;
    margin: 0 auto;
}

#rentalk .top__back__container {
  background: url(../images/rentalk_top_contents_back.jpg)no-repeat center center / cover;
}

.top__ttl {
font-size: clamp(16px, 2.5vw, 25px);
}

@media only screen and (max-width: 800px) {
#rentalk section {
width: 90%;
}

#rentalk .top__back__container {
    background: none;
    position: relative;
}

.rentalk__top__txt__box {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 90%;
    margin: 0 auto;
    padding: .5em 0;
}

#rentalk .top__ttl__logo {
    width: 20%;
}
}

/* top */
.rentalk__top__txt__box h1 {
  display: flex;
  gap: 1em;
  align-items: center;
}

	@media only screen and (max-width: 800px) {
#rentalk section {
width: 90%;
}

.rentalk__top__txt__box h1 {
  gap: .3em;
}

}

/* task */
.task {
    padding: 2em 0;
}

.task__txt  {
    padding: 1em 0;
}

.task__contents__box {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2em;
}

.task__contents {
    display: flex;
    gap: 1.5em;
    justify-content: center;
    align-items: center;
    padding: 0 2em;
    margin: 1em 0;
}

.task__contents.__01,
.task__contents.__02 {
    border-right: 1px solid #969696;
}

@media only screen and (max-width: 800px) {
    .task__contents__box {
    grid-template-columns: repeat(1, 1fr);
}

	.task__contents {
display: block;
}

.task__contents.__01,
.task__contents.__02,
.task__contents.__03 {
    border-right: none;
    border-bottom: 1px solid #969696;
    padding-bottom: 2em;
    margin-bottom: 2em;
}


.task__contents_icon {
width: 15%;
}
}

@media only screen and (max-width: 425px) {
    .task__contents_icon {
    width: 25%;
    }
}
/* scene */
.scene__contents {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    align-items: start;
    gap: 2em;
    padding: 2em 0;
    width: 100%;
}

.scene__contents li {
    padding-right: 3em;
}

.scene__contents li:not(:nth-last-of-type(1)) {
    border-right: 1px solid #969696;
}

.scene__contents li img {
    width: 100%;
}

@media only screen and (max-width: 800px) {
    .scene__contents {
    grid-template-columns: repeat(1, 1fr);
}

.scene__contents li:not(:nth-last-of-type(1)) {
    border-right: none;
    padding-right: 0;
}

.scene__contents li {
    border-bottom: 1px solid #969696;
    padding-bottom: 2em;
    margin-bottom: 2em;
}

}

/* feature */
.feature,
.result {
    padding: 2em 0;
}

.feature__contents__box,
.result__contents__box {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1em;
    align-items: center;
    width: 100%;
    margin-top: 1.5em;
}

.feature__contents__box img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* .result__contents__box img {
    display: block;
    width: 90%;
    height: 100%;
    object-fit: contain;
} */

/* .feature__contents__box p,
.result__contents__box p {
    background-color: #fff;
    padding: 1em;
    width: 100%;
    min-height: 161px;
    height: 100%;
} */

@media only screen and (max-width: 800px) {
.feature__contents__box,
.result__contents__box {
    grid-template-columns: repeat(1, 1fr);
    gap: 2em;
}

}

/* get-started */
#rentalk .get-started {
    background: url(../images/rentalk_get-started_back.jpg)no-repeat center center / cover;
    padding: 2em 0 3em;
}

#rentalk .get-started__txt__box {
    color: #fff;
    width: 75%;
}

#rentalk .reservation__btn__box {
  width: 45%;
}

@media only screen and (max-width: 800px) {
    
#rentalk .get-started__txt__box {
    width: 100%;
}

#rentalk .reservation__btn__box {
  width: 90%;
  margin: 1.5em auto 0 auto;
}


}

/* eye-catch */
#rentalk .eye-catch {
    padding-top: 5rem;
}