@charset "utf-8";

body {
    /*******************************　01　layout　*/

    /*******************************　02　area　*/
    width: 100%;
    min-width: 300px;
    /*******************************　03　background　*/

    /*******************************　04　border　*/

    /*******************************　05　typography　*/
    font-family: "Roboto", "Noto Sans JP", sans-serif;
    /* font-family: "Roboto", "Noto Serif JP", sans-serif; */
    font-weight: 300;
    font-style: normal;
    /*******************************　06　others　*/
}

header {
    /*******************************　01　layout　*/
    display: grid;
    place-content: center;
    /*******************************　02　area　*/
    width: 100%;
    height: 101svh;
    margin-bottom: 50vh;
    /*******************************　03　background　*/

    /*******************************　04　border　*/
    border-bottom: 1px solid #000;
    /*******************************　05　typography　*/

    /*******************************　06　others　*/
}

header h1 {
	/*******************************　01　layout　*/
    position: fixed;
    z-index: 100;
    right: 0.5rem;
    bottom: 0.5rem;
	/*******************************　02　area　*/
    width: 8rem;
    height: 2.3rem;
	/*******************************　03　background　*/
    background-color: #fff;
	/*******************************　04　border　*/
    border-radius: 1.2rem;
    border: 0.05rem solid #000;
	/*******************************　05　typography　*/
    font-size: 0.8rem;
    text-align: center;
    color: #000;
	/*******************************　06　others　*/
}

header h1 a {
	/*******************************　01　layout　*/
    display: grid;
    place-items: center;
	/*******************************　02　area　*/
    width: 100%;
    height: 100%;
	/*******************************　03　background　*/

	/*******************************　04　border　*/

	/*******************************　05　typography　*/

	/*******************************　06　others　*/
}

header h2 {
	/*******************************　01　layout　*/

	/*******************************　02　area　*/
    padding-bottom: 0.3rem;
	/*******************************　03　background　*/

	/*******************************　04　border　*/
    border-bottom: 1px solid #000;
	/*******************************　05　typography　*/
	font-size: 1.2rem;
	text-align: center;
	/*******************************　06　others　*/
}

header h2 mark {
	/*******************************　01　layout　*/

	/*******************************　02　area　*/
    display: block;
    /*******************************　03　background　*/

	/*******************************　04　border　*/

    /*******************************　05　typography　*/
	font-size: 0.7rem;
	text-align: center;
    padding-bottom: 0.3rem;
	/*******************************　06　others　*/
}

header p {
	/*******************************　01　layout　*/
	position: relative;
	/*******************************　02　area　*/
    margin-top: 1rem;
	/*******************************　03　background　*/

	/*******************************　04　border　*/

	/*******************************　05　typography　*/
	font-size: 0.9rem;
	text-align: center;
	/*******************************　06　others　*/
}

header p::before {
	/*******************************　01　layout　*/
	content: "start";
	position: absolute;
	bottom: -2.5rem;
	right: -1.5rem;
	left: 0;

	margin: auto;
	/*******************************　02　area　*/
	width: fit-content;
	height: fit-content;
	/*******************************　03　background　*/

	/*******************************　04　border　*/

	/*******************************　05　typography　*/

	/*******************************　06　others　*/
	transform: rotate(90deg);
}

@keyframes scrollAnimation {
	0% {
		transform: scaleY(0);
		transform-origin: top;
	}

	50% {
		transform: scaleY(1);
		transform-origin: top;
	}

	50.1% {
		transform: scaleY(1);
		transform-origin: bottom;
	}

	100% {
		transform: scaleY(0);
		transform-origin: bottom;
	}
}

header p::after {
	/*******************************　01　layout　*/
	content: "";
	position: absolute;
	bottom: -3.5rem;
	right: 0;
	left: 0;
	margin-inline: auto;
	/*******************************　02　area　*/
	width: 0.035rem;
	height: 3rem;
	/*******************************　03　background　*/
	background-color: #000;
	/*******************************　04　border　*/

	/*******************************　05　typography　*/

	/*******************************　06　others　*/
	animation-name: scrollAnimation;
	animation-duration: 1.8s;
	animation-timing-function: ease-out;
	animation-iteration-count: infinite;
}

footer {
	/*******************************　01　layout　*/
	display: grid;
	place-content: center;
	/*******************************　02　area　*/
	width: 100%;
	min-height: 100vh;
	margin-top: 50vh;
	/*******************************　03　background　*/
	background-color: #000;
	/*******************************　04　border　*/

	/*******************************　05　typography　*/
	color: #fff;
	/*******************************　06　others　*/
}

footer p {
	/*******************************　01　layout　*/
	position: relative;
	/*******************************　02　area　*/
    margin-bottom: 1rem;
	/*******************************　03　background　*/

	/*******************************　04　border　*/
    border-top: 1px solid #000;
	/*******************************　05　typography　*/
	font-size: 0.9rem;
	text-align: center;
	/*******************************　06　others　*/
}

footer p::before {
	/*******************************　01　layout　*/
	content: "end";
	position: absolute;
	top: -2.5rem;
	right: -1.5rem;
	left: 0;

	margin: auto;
	/*******************************　02　area　*/
	width: fit-content;
	height: fit-content;
	/*******************************　03　background　*/

	/*******************************　04　border　*/

	/*******************************　05　typography　*/

	/*******************************　06　others　*/
	transform: rotate(90deg);
}

@keyframes scrollAnimation {
	0% {
		transform: scaleY(0);
		transform-origin: top;
	}

	50% {
		transform: scaleY(1);
		transform-origin: top;
	}

	50.1% {
		transform: scaleY(1);
		transform-origin: bottom;
	}

	100% {
		transform: scaleY(0);
		transform-origin: bottom;
	}
}

footer p::after {
	/*******************************　01　layout　*/
	content: "";
	position: absolute;
	top: -3.5rem;
	right: 0;
	left: 0;
	margin-inline: auto;
	/*******************************　02　area　*/
	width: 0.035rem;
	height: 3rem;
	/*******************************　03　background　*/
	background-color: #fff;
	/*******************************　04　border　*/

	/*******************************　05　typography　*/

	/*******************************　06　others　*/
	animation-name: scrollAnimation;
	animation-duration: 1.8s;
	animation-timing-function: ease-out;
	animation-iteration-count: infinite;
}



/***********************************************************
試作
***********************************************************/


/***********************************　main.a02 > section.b06（section.b02～section.b07） */
.a02 .b06 {
    /*******************************　01　配置　*/
    margin: 0 0 15rem;
    /*******************************　02　領域　*/
    width: 100%;
    padding: 0 0.5rem 0;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > h2.c01 */
.a02 .b06 .c01 {
    /*******************************　01　配置　*/
    position: relative;
    margin: 0 0 1.5rem;
    /*******************************　02　領域　*/
    width: 100%;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/
    font-size: 2.6rem;
    /* 英語　大文字 */
    text-transform: uppercase;
    /*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > h2.c01::after 右の線*/
.a02 .b06 .c01:after {
    /*******************************　01　配置　*/
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0 auto 0.5rem;
    /*******************************　02　領域　*/
    width: 1.5rem;
    /* 右の線 四角形の縦の辺の長さ（線の太さを表す効果） */
    height: 0.1rem;
    /*******************************　03　背景　*/
    /* 右の線 四角形の背景色 */
    background-color: #000;
    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > h2.c01 > mark.d01 */
.a02 .b06 .c01 .d01 {
    /*******************************　01　配置　*/
    position: absolute;
    bottom: -0.8rem;
    /* 改行効果 */
    display: block;
    /*******************************　02　領域　*/

    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/
    font-size: 1rem;
    /*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 */
.a02 .b06 .c02 {
    /*******************************　01　配置　*/
    margin: 0 auto 1rem;
    /*******************************　02　領域　*/
    width: max(635px, 80vw);
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/
    border: 0.05rem solid #000;
    /*******************************　05　文字　*/
    word-break: break-all;
    line-height: 2;
    /*******************************　06　其他　*/
}

@media screen and (max-width: 655px) {
    .a02 .b06 .c02 {
        /***************************　02　領域　*/
        width: 100%;
    }
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > summary.d01 */
.a02 .b06 .c02 .d01 {
    /*******************************　01　配置　*/
    position: relative;
    /*******************************　02　領域　*/
    /* デフォルトの▲アイコンを非表示 display: block;の代替 */
    display: block;
    padding: 0.3rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
    cursor: pointer;
}

.a02 .b06 .c02 .d01::-webkit-details-marker {
    /*******************************　01　配置　*/

    /*******************************　02　領域　*/

    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
    display: none;
}

@media screen and (max-width: 320px) {
    .a02 .b06 .c02 .d01 {
        /*******************************　05　文字　*/
        font-size: 0.9rem;
    }
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > summary.d01 > span.btn */
.a02 .b06 .c02 .d01 .btn {
    /*******************************　01　配置　*/
    position: absolute;
    right: 0.5rem;
    top: 0;
    bottom: 0;
    margin-block: auto;
    /*******************************　02　領域　*/
    width: 1.5rem;
    height: 1.5rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
    transition-duration: 0.35s;
}

.a02 .b06 .c02 .d01 .btn:before,
.a02 .b06 .c02 .d01 .btn:after {
    /*******************************　01　配置　*/
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    /*******************************　02　領域　*/
    width: 1rem;
    height: 0.1rem;
    /*******************************　03　背景　*/
    background-color: #000;
    /*******************************　04　境界　*/
    border-radius: 0.3rem;
    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
    transform-origin: center center;
}

.a02 .b06 .c02 .d01 .btn:before {
    /*******************************　01　配置　*/

    /*******************************　02　領域　*/
    width: 0.1rem;
    height: 1rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > summary.d01 > js.is-active > span.btn */
.a02 .b06 .c02 .d01.is-active .btn {
    /*******************************　01　配置　*/

    /*******************************　02　領域　*/

    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
    -webkit-transform: rotate(-180deg);
    transform: rotate(-180deg);
}

.a02 .b06 .c02 .d01.is-active .btn:before {
    /*******************************　01　配置　*/

    /*******************************　02　領域　*/

    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
    content: none;
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02（条文） */
.a02 .b06 .c02 .d02 {
    /*******************************　01　配置　*/

    /*******************************　02　領域　*/
    padding: 0 0.5rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/
    border-top: 0.05rem solid #000;
    /*******************************　05　文字　*/
    font-size: 0.9rem;
    /*******************************　06　其他　*/
}

@media screen and (max-width: 320px) {
    .a02 .b06 .c02 .d02 {
        /*******************************　05　文字　*/
        font-size: 0.8rem;
    }
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02 > dt.e01 */
.a02 .b06 .c02 .d02 .e01 {
    /*******************************　01　配置　*/
    margin: 1rem 0 0;
    /*******************************　02　領域　*/

    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/
    font-weight: 500;
    text-transform: capitalize;
    /*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02 > dd.e02 */
.a02 .b06 .c02 .d02 .e02 {
    /*******************************　01　配置　*/

    /*******************************　02　領域　*/
    padding: 0 0.5rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02 > dd.e02 > ol.f02_01 */
.a02 .b06 .c02 .d02 .e02 .f02_01 {
    /*******************************　01　配置　*/

    /*******************************　02　領域　*/

    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
    list-style-type: decimal;
    list-style-position: outside;
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02 > dd.e02 > ol.f02_01 > li */
.a02 .b06 .c02 .d02 .e02 .f02_01 li {
    /*******************************　01　配置　*/

    /*******************************　02　領域　*/
    margin-left: 0.5rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02 > dd.e02 > ol.f02_02 */
.a02 .b06 .c02 .d02 .e02 .f02_02 {
    /*******************************　01　配置　*/

    /*******************************　02　領域　*/

    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
    list-style-type: cjk-decimal;
    list-style-position: outside;
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02 > dd.e02 > ol.f02_02 > li */
.a02 .b06 .c02 .d02 .e02 .f02_02 li {
    /*******************************　01　配置　*/

    /*******************************　02　領域　*/
    margin-left: 2rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
}


/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02 > dd.e02 > ol.f02_03 */
.a02 .b06 .c02 .d02 .e02 .f02_03 {
    /*******************************　01　配置　*/

    /*******************************　02　領域　*/

    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
    list-style-type: katakana-iroha;
    list-style-position: outside;
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02 > dd.e02 > ol.f02_03 > li */
.a02 .b06 .c02 .d02 .e02 .f02_03 li {
    /*******************************　01　配置　*/

    /*******************************　02　領域　*/
    margin-left: 3rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02 > dd.e02 > dl.f02_04 */
.a02 .b06 .c02 .d02 .e02 .f02_04 {
    /*******************************　01　配置　*/
    display: grid;
    grid-template-columns: max(6.48rem, 30%) 1fr;
    /*******************************　02　領域　*/
    padding: 0.5rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/
    text-transform: capitalize;
    /*******************************　05　文字　*/
    font-size: 0.9rem;
    line-height: 1.3;
    text-align-last: unset;
    text-align: left;
    /*******************************　06　其他　*/
    container-type: inline-size;
}

@media screen and (max-width: 374px) {
    .a02 .b06 .c02 .d02 .e02 .f02_04 {
        /***************************　05　文字　*/
        grid-template-columns: unset;
        grid-template-columns: 44.38% 55.62%;
    }
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02 > dd.e02 > dl.f02_04 > dt */
.a02 .b06 .c02 .d02 .e02 .f02_04 dt {
    /*******************************　01　配置　*/
    grid-column: 1/2;
    /*******************************　02　領域　*/
    padding: 0.5rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/
    border-top: 0.05rem solid #000;
    border-right: 0.05rem solid #000;
    border-left: 0.05rem solid #000;
    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
}

.a02 .b06 .c02 .d02 .e02 .f02_04 dt:last-of-type {
    /*******************************　04　境界　*/
    border-bottom: 0.05rem solid #000;
}

@media screen and (max-width: 374px) {
    .a02 .b06 .c02 .d02 .e02 .f02_04 dt {
        /***************************　02　領域　*/
        padding: 3cqw;
        /***************************　05　文字　*/
        font-size: 6cqw;
    }
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02 > dd.e02 > dl.f02_04 > dd */
.a02 .b06 .c02 .d02 .e02 .f02_04 dd {
    /*******************************　01　配置　*/
    grid-column: 2/3;
    /*******************************　02　領域　*/
    padding: 0.5rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/
    border-top: 0.05rem solid #000;
    border-right: 0.05rem solid #000;
    /*******************************　05　文字　*/
    text-transform: capitalize;
    /*******************************　06　其他　*/
}

.a02 .b06 .c02 .d02 .e02 .f02_04 dd:last-of-type {
    /*******************************　04　境界　*/
    border-bottom: 0.05rem solid #000;
}

@media screen and (max-width: 374px) {
    .a02 .b06 .c02 .d02 .e02 .f02_04 dd {
        /***************************　02　領域　*/
        padding: 3cqw;
        /***************************　05　文字　*/
        font-size: 6cqw;
    }
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02 > dd.e02 > ol.f02_05 */
.a02 .b06 .c02 .d02 .e02 .f02_05 {
    /*******************************　01　配置　*/

    /*******************************　02　領域　*/

    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
    list-style-type: decimal;
    list-style-position: outside;
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02 > dd.e02 > ol.f02_05 > li */
.a02 .b06 .c02 .d02 .e02 .f02_05 li {
    /*******************************　01　配置　*/

    /*******************************　02　領域　*/
    margin-left: 1rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
}
















/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02 > dd.e02 > address.f03 */
.a02 .b06 .c02 .d02 .e02 .f03 {
    /*******************************　01　配置　*/

    /*******************************　02　領域　*/
    padding-left: 1rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d02 > dd.e02 > p.f04 */
.a02 .b06 .c02 .d02 .e02 .f04 {
    /*******************************　01　配置　*/
    position: relative;
    /*******************************　02　領域　*/
    padding-left: 1rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
}

.a02 .b06 .c02 .d02 .e02 .f04::before {
    /*******************************　01　配置　*/
    content: "※";
    position: absolute;
    left: 0;
    /*******************************　02　領域　*/

    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
}




/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d03 */
.a02 .b06 .c02 .d03 {
    /*******************************　01　配置　*/
    margin: 1rem 0.5rem;

    display: grid;
    /*******************************　02　領域　*/

    /*******************************　03　背景　*/

    /*******************************　04　境界　*/

    /*******************************　05　文字　*/
    text-align: right;
    /*******************************　06　其他　*/
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d04 */
.a02 .b06 .c02 .d04 {
    /*******************************　01　配置　*/
    display: grid;
    grid-template-columns: max(11rem, 30%) 1fr;
    /*******************************　02　領域　*/
    padding: 1rem 0.5rem 0;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/
    border-top: 0.05rem solid #000;
    /*******************************　05　文字　*/
    font-size: 0.9rem;
    line-height: 1.3;
    /*******************************　06　其他　*/
}

@media screen and (max-width: 875px) {
    .a02 .b06 .c02 .d04 {
        /***************************　01　配置　*/
        grid-template-columns: 7rem 1fr;
    }
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d04 > dt.e01 > dt.e01 */
.a02 .b06 .c02 .d04 .e01 {
    /*******************************　01　配置　*/
    grid-column: 1/2;
    /*******************************　02　領域　*/
    padding: 0.3rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/
    border-top: 0.05rem solid #000;
    border-right: 0.05rem solid #000;
    border-left: 0.05rem solid #000;
    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
}

.a02 .b06 .c02 .d04 .e01:last-of-type {
    /*******************************　04　境界　*/
    border-bottom: 0.05rem solid #000;
}

/***********************************　main.a02 > section.b06（section.b02～section.b07） > details.c02 > dl.d04 > dt.e01 > dd.e02 */
.a02 .b06 .c02 .d04 .e02 {
    /*******************************　01　配置　*/
    grid-column: 2/3;
    /*******************************　02　領域　*/
    padding: 0.3rem;
    /*******************************　03　背景　*/

    /*******************************　04　境界　*/
    border-top: 0.05rem solid #000;
    border-right: 0.05rem solid #000;
    /*******************************　05　文字　*/

    /*******************************　06　其他　*/
}

.a02 .b06 .c02 .d04 .e02:last-of-type {
    /*******************************　04　境界　*/
    border-bottom: 0.05rem solid #000;
}




