@charset "utf-8";
/* CSS Document 

css指定内容
・サイドメニュー
・各コンテンツのベースcss

*/

html {
    scroll-padding-top: 140px;
    scroll-behavior: smooth;
}

.main_b {
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-start;
    max-width: 1200px;
    margin: auto;
    padding: 0 0 80px;
}
@media screen and (max-width: 1200px) {
    .main_b {
        /*flex-direction: column;*/
        width: 95%;
    }
}

/****************** content_b ******************/
.main_b .content_b {
    width: 100%;
    max-width: 1200px;
    margin: auto;
}
@media screen and (max-width: 1200px) {
    .main_b .content_b {
        width: 90%;
        max-width: 1200px;
        margin: 0 auto 100px;
    }
}

.main_b .content_b img {
    width: 100%;
}
.main_b .content_b section {
    margin-bottom: 70px;
}

/* h1 */
.main_b_h1 {
    padding: 60px 5% 60px 5%;
    background-color: #128ca6;
    color: white;
    margin: 120px 0 80px;
    width: 100%;
}

/* h2 */
.main_b .content_b h2 {
    position: relative;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 30px 0 70px;
    line-height: 1.5em;
    font-size: 36px;
}
.main_b .content_b h2::after {
    content: "";
    display: block;
    width: 94px;
    height: 14px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -20px;
    margin: auto;
    z-index: -1;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: left 0 bottom 0;
    background-image: url("../images/artclaysilver_content_common_01.png");
}


/* h3 */
.main_b .content_b h3 {
    margin: 0 0 30px;
    background-color: #11849d;
    color: white;
    padding: 10px 20px;
    font-size: 24px;
    display: flex;
    align-items: center;
}
.main_b .content_b h3 span {
    background-color: white;
    clip-path: circle(47%);
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    padding: 15px;
    color: #11849d;
    margin-right: 10px;
    box-sizing: border-box;
}

/* h4 */
.main_b .content_b h4 {
    margin: 50px 0 20px;
    font-size: 20px;
    color: #11849d;
    padding-bottom: 5px;
    border-bottom: 3px dashed #11849d;
}

/* p */
.main_b .content_b p {
    font-size: 16px;
}
.main_b .content_b p span {
    font-size: 16px;
    color: #11849d;
}

/* underline-text */
.main_b .content_b .underline-text {
    background: linear-gradient(transparent 50%, #fffcab 50%);
    color: initial;
}

/* attention_text */
.main_b .content_b .attention_text {
    color: #f1647d;
}

/* p textcenter */
.main_b .content_b .textcenter {
    text-align: center;
}

/* a img */
.main_b .content_b .img_link {
    display: inline-block;
    margin-top: 50px;
    transition: all 0.6s;
}
.main_b .content_b .img_link:hover {
    opacity: 0.6;
}

/* a ※ボタンデザイン */
.main_b .content_b .btn {
    font-size: 16px;
    border-radius: 50px;
    color: #062e37;
    padding: 15px 30px;
    display: block;
    margin-top: 20px;
    max-width: 300px;
    text-align: center;
    transition: all 0.6s;
    box-shadow: 0px 6px 15px -8px #535353;
    overflow: hidden;
    position: relative;
    border: none;
}
.main_b .content_b .btn::before {
    background: linear-gradient(53deg, rgba(99,201,224,1) 0%, rgba(25,224,196,1) 55%);
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    transition: all 0.6s;
    left: 0;
    top: 0;
    z-index: -1;
}
.main_b .content_b .btn::after {
    background: linear-gradient(53deg, rgba(99,201,224,1) 0%, rgba(99,201,224,1) 100%);
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -2;
}
.main_b .content_b .btn:hover {
    box-shadow: none;
}
.main_b .content_b .btn:hover::before {
    opacity: 0;
}

/* 余白 */
.main_b .content_b .space {
    height: 100px;
    width: 100%;
}

/* a ※文章中のリンクデザイン */
.main_b .content_b .text_link {
    font-size: 16px;
    border-radius: 50px;
    color: #e0782a;
    text-decoration: underline;
}
.main_b .content_b .text_link:hover {
    text-decoration: none;
}

/* li ※横並び */
.main_b .content_b .list_beside {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin-top: 30px;
}
.main_b .content_b .list_beside li {
    background-color: #f6f9f9;
    width: 29%;
    margin-bottom: 20px;
    padding: 20px;
    font-size: 16px;
    margin: 1.5%;
    box-sizing: border-box;
}

/* li ※縦並び */
.main_b .content_b .list_vertical {
    margin-top: 30px;
}
.main_b .content_b .list_vertical li {
    position: relative;
    margin-bottom: 10px;
    padding-left: 30px;
    font-size: 16px;
}
.main_b .content_b .list_vertical li::before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    background-color: #128ba6;
    border-radius: 100px;
    position: absolute;
    z-index: 1;
    left: 0;
    top: 12px;
    margin-right: 10px;
}

/* table */
.main_b .content_b .table_b {
    width: 70%;
    margin-top: 30px;
}
.main_b .content_b .table_b th,
.main_b .content_b .table_b td {
    padding: 10px;
    border: 1px solid #11849d;
    width: 25%;
    font-size: 16px;
}
.main_b .content_b .table_b th {
    background-color: #c9f5ff;
}

/* img */
.main_b .content_b img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 400px;
}

/* img ※MAX width 880px */
.main_b .content_b .img_beside {
    display: block;
    margin-top: 30px;
    margin: 40px auto 0;
}

/* img ※MAX height 700px */
.main_b .content_b .img_vertical {
    display: block;
    margin: 30px auto 0;
    max-width: 500px;
    width: 100%;
    aspect-ratio: 1 / 2;
}

/* p & img(MAX width 440px） */
.main_b .content_b .img_beside_b {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-top: 30px;
}
.main_b .content_b .img_beside_b p {
    margin-right: 20px;
}
.main_b .content_b .img_beside_b img {
    max-width: 440px;
}

/* p & img(MAX height 530px） */
.main_b .content_b .img_vertical_b {
    display: flex;
    align-items: flex-start;
    margin-top: 30px;
}
.main_b .content_b .img_vertical_b p {
    margin-right: 20px;
}
.main_b .content_b .img_vertical_b img {
    max-height: 530px;
}

/* オンラインショップはこちら */
.main_b .content_b .onlineshop_list {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 30px 0 50px;
}
.main_b .content_b .onlineshop_list li {
    margin: 0 2%;
}


/* 教室のご案内 */
.main_b .content_b .school_b {
    position: relative;
    padding: 20px;
    margin-top: 70px;
}
.main_b .content_b .school_b h4 {
    margin: 0;
}
.main_b .content_b .school_b:after {
    position: absolute;
    content: "";
    z-index: -3;
    background-color: #f6f9f9;
    width: 100%;
    height: 100%;
    display: block;
    left: 0;
    top: 0;
}
.main_b .content_b .school_b .img_beside_b img {
    max-width: 215px;
}



/****************** sidemenu_b ******************/
.main_b .sidemenu_b {
    width: 25%;
    margin-right: 5%;
    overflow: hidden;
}

.main_b .sidemenu_b > li > a {
    color: black;
    padding: 25px;
    display: block;
    background-color: #c9e1e6;
    transition: all 0.8s;
}
.main_b .sidemenu_b > li > a:hover {
    background-color: #86b5be !important;
}

/* sidemenu_b_child_b */
.main_b .sidemenu_b .sidemenu_b_child_b {
    background-color: white;
}
.main_b .sidemenu_b .sidemenu_b_child_b > li {
    padding: 10px 20px 20px;
    background-color: #edf2f3;
    margin-bottom: 2px;
}
.main_b .sidemenu_b .sidemenu_b_child_b > li:last-of-type {
    margin: 0;
}
.main_b .sidemenu_b .sidemenu_b_child_b > li > a {
    padding: 10px 0 0;
    display: block;
    color: black;
    transition: all 0.6s;
    line-height: 1.3em;
}
.main_b .sidemenu_b .sidemenu_b_child_b > li > a:hover {
    color: #11849d !important;
}
/* sidemenu_b_child */
.main_b .sidemenu_b .sidemenu_b_child_b .sidemenu_b_child {
    background-color: white;
    padding: 0 10px;
    margin-top: 10px;
}
.main_b .sidemenu_b .sidemenu_b_child_b .sidemenu_b_child > li {
    border-bottom: #128ba6 1px solid;
}
.main_b .sidemenu_b .sidemenu_b_child_b .sidemenu_b_child > li:last-of-type {
    border: none;
}
.main_b .sidemenu_b .sidemenu_b_child_b .sidemenu_b_child > li > a {
    padding: 10px 0;
    display: block;
    color: black;
    transition: all 0.8s;
}
.main_b .sidemenu_b .sidemenu_b_child_b .sidemenu_b_child > li > a:hover {
    color: #11849d !important;
}

@media screen and (max-width: 1200px) {
    .main_b .sidemenu_b {
        margin-right: 3%;
    }
    .main_b .sidemenu_b .sidemenu_b_child_b li a {
        font-size: 14px;
    }
    .main_b .sidemenu_b .sidemenu_b_child_b > li {
        padding: 0 10px 10px;
    }
    .main_b .sidemenu_b > li > a {
        padding: 10px;
    }
}





/****************** トップページ ******************/


#top-b h2 {
    font-size: 36px !important;
    font-weight: 900;
}
#top-b h2 span {
    font-size: 24px;
    display: block;
    color: #11849d;
    margin-top: 10px;
}


/* online01-section */
#online01-section {
    display: flex;
    align-items: center;
    box-shadow: 0px 0px 19px -7px #777777;
    background-color: white;
    width: 85%;
    margin: 50px auto 150px;
    border-radius: 20px;
    overflow: hidden;
    max-width: 1100px;
}
#online01-section p {
    background-color: #128ba6;
    color: white;
    height: 100%;
    margin: 0;
    font-size: 16px;
    width: 100%;
    max-width: 250px;
    text-align: center;
    padding: 25px 0;
    line-height: 1.5em;
}
#online01-section ul {
    display: flex;
    align-items: center;
    margin: 10px;
    justify-content: space-evenly;
    width: 71%;
    gap: 2%;
}
#online01-section ul li a img {
    display: block;
    max-width: 212px;
    transition: all 0.6s;
    width: 100%;
}
#online01-section ul li a:hover img {
    opacity: 0.6;
}

/* 新着情報 */
#news-section {
    position: relative;
}
#news-section .news-box {
    background-color: #f6f9f9;
    padding: 10px 5%;
    height: 330px;
    overflow: scroll;
    overflow-x: hidden;
}
#news-section .news-box div {
    display: flex;
    align-items: flex-start;
    border-bottom: 2px solid #128ba6;
    padding: 20px 0;
}
#news-section .news-box div:last-of-type {
    border: none;
    margin: 0;
}
#news-section .news-box div .news-date {
    width: 20%;
    margin: 0 5% 0 0;
    color: #128ba6;
}
#news-section .news-box div .news-text {
    width: 75%;
    margin: 0;
}
#news-section .news-box div .news-text a {
    color: #e0782a;
    text-decoration: underline;
}
#news-section .news-box div .news-text a:hover {
    text-decoration: none;
}

#news-section .news-box div .news-text img {
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
}

/* artclay-section */
#artclay-section {
    overflow: hidden;
}
#artclay-section h2 {
    text-align: left;
    font-family: "Noto Serif JP", serif;
    font-weight: 600;
    line-height: 1.5em;
}
#artclay-section section {
    position: relative;
}
#artclay-section section:first-of-type {
    margin-top: 170px;
}
#artclay-section section:last-of-type {
    margin-bottom: 80px;
}
.artclay-box01 > div,
.artclay-box02 > div,
.artclay-box03 > div {
    display: flex;
    align-items: center;
}
.artclay-box01 > div img,
.artclay-box02 > div img,
.artclay-box03 > div img{
    margin: 0 5%;
}

/* 自由に！気軽に！～ */
.artclay-box01 h2 {
    color: #9243bf;
}
.animate-box01 {
    display: flex;
    justify-content: center;
    height: 100%;
    margin: 0;
    position: absolute;
    top: -20%;
    left: 15%;
    z-index: -1;
    -index: -1;
    align-items: flex-end;
}

.animated-shape01 {
    width: 600px;
    height: 500px;
    background-color: #f3deff;
    border-radius: 70%;
    animation: transformShape01 100s infinite;
}

@keyframes transformShape01 {
    0% {
        border-radius: 19% 50% 26% 58%; /* 初期状態は円 */
        transform: perspective(250px) rotateY(-30deg);
    }
    25% {
        border-radius: 43% 32% 59% 18% / 63% 29% 54% 19% ;
        transform: perspective(600px) rotateY(20deg);
    }
    50% {
        border-radius: 19% 50% 26% 58% / 25% 45% 39% 48% ;
        transform: perspective(200px) rotateX(10deg);
    }
    75% {
        border-radius: 46% 45% 42% 41% / 61% 37% 58% 31% ;
        transform: perspective(300px) rotateY(30deg);
    }
    100% {
        border-radius: 19% 50% 26% 58%; /* 再び円 */
        transform: perspective(250px) rotateY(-30deg);
    }
}

/* 自分で作るから～ */
.artclay-box02 h2 {
    color: #144391;
}
.animate-box02 {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    height: 100%;
    margin: 0;
    position: absolute;
    top: -10%;
    right: 15%;
    z-index: -1;
}
.artclay-box02 > div {
    flex-direction: row-reverse;
}

.animated-shape02 {
    width: 600px;
    height: 500px;
    background-color: #def9ff;
    border-radius: 10%;
    animation: transformShape02 80s infinite;
}

@keyframes transformShape02 {
    0% {
        border-radius: 43% 32% 59% 18% / 63% 29% 54% 19%;
        transform: scale(1);
    }
    25% {
        border-radius: 73% 24% 34% 56% / 44% 31% 67% 49% ;
        transform: scale(1) rotateX(-60deg);
    }
    50% {
        border-radius: 46% 45% 42% 41% / 61% 37% 58% 31% ;
        transform: perspective(200px) rotatey(-20deg);
    }
    75% {
        border-radius: 15% 83% 26% 74% / 44% 73% 37% 56%  ;
        transform: perspective(400px) rotateX(-20deg);
    }
    100% {
        border-radius: 43% 32% 59% 18% / 63% 29% 54% 19%;
        transform: scale(1);
    }
}

/* 直営店ならではの～ */
.artclay-box03 h2 {
    color: #984000;
}
.animate-box03 {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    height: 100%;
    margin: 0;
    position: absolute;
    top: -10%;
    left: 0;
    right: 0;
    margin: auto;
    z-index: -1;
}

.animated-shape03 {
    width: 600px;
    height: 500px;
    background-color: #ffd688;
    border-radius: 70%;
    animation: transformShape03 90s infinite;
}

@keyframes transformShape03 {
    0% {
        border-radius: 39% 65% 69% 30% / 15% 47% 58% 81% ; /* 初期状態は円 */
        transform: perspective(200px) rotateX(10deg);
    }
    25% {
        border-radius: 43% 32% 59% 18% / 63% 29% 54% 19% ;
        transform: perspective(500px) rotatey(50deg);
    }
    50% {
        border-radius: 19% 50% 26% 58% / 25% 45% 39% 48% ;
        transform: perspective(500px) rotateX(40deg);
    }
    75% {
        border-radius: 46% 45% 42% 41% / 61% 37% 58% 31% ;
        transform: scale(500px) rotatey(50deg);
    }
    100% {
        border-radius: 39% 65% 69% 30% / 15% 47% 58% 81% ; /* 再び円 */
        transform: perspective(200px) rotateX(10deg);
    }
}


/* online02-section */
#online02-section {
    display: flex;
    align-items: center;
    box-shadow: 0px 0px 19px -7px #777777;
    background-color: white;
    width: 85%;
    margin: 100px auto 150px;
    border-radius: 20px;
    overflow: hidden;
    max-width: 1100px;
}
#online02-section p {
    background: linear-gradient(209deg, rgba(252, 210, 80, 1) 24%, rgba(235, 114, 45, 1) 78%);
    color: #792f00;
    height: 100%;
    margin: 0;
    font-size: 16px;
    width: 100%;
    max-width: 250px;
    text-align: center;
    padding: 25px 0;
    line-height: 1.5em;
}
#online02-section ul {
    display: flex;
    align-items: center;
    margin: 0 10px;
    justify-content: space-evenly;
    width: 71%;
    gap: 2%;
}
#online02-section ul li a img {
    display: block;
    max-width: 212px;
    width: 100%;
    transition: all 0.6s;
}
#online02-section ul li a:hover img {
    opacity: 0.6;
}

/* topmenu-section */
#topmenu-section ul {
    display: flex;
    align-items: center;
    margin-bottom: 100px;
}
#topmenu-section ul li:nth-of-type(1)::after {
    background-image: url("../images/artclaysilver_top_04.jpg");
}
#topmenu-section ul li:nth-of-type(2) {
    margin: 0 5%;
}
#topmenu-section ul li:nth-of-type(2)::after {
    background-image: url("../images/artclaysilver_top_05.jpg");
}
#topmenu-section ul li:nth-of-type(3)::after {
    background-image: url("../images/artclaysilver_top_06.jpg");
}
#topmenu-section ul li::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    transition: all 0.6s;
}
#topmenu-section ul li {
    width: 30%;
    aspect-ratio: 1 / 1;
    background-size: 100%;
    border-radius: 50%;
    transition: all 0.6s;
    overflow: hidden;
}
#topmenu-section ul li:hover::after {
    transform:scale(1.2,1.2);
}
#topmenu-section ul li:hover {
    border-radius: 0;
}
#topmenu-section ul li a {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    height: 100%;
    text-align: center;
    color: white;
    font-size: 70px;
}
#topmenu-section ul li a span {
    font-size: 25px;
    display: block;
    margin-bottom: 30px;
    margin-top: -20px;
}





/* instruction-section */
#instruction-section > div {
    display: flex;
    align-items: flex-start;
    margin-top: 60px;
}
#instruction-section > div .instruction-recipe,
#instruction-section > div .instruction-iframe {
    width: 48%;
    position: relative;
}
#instruction-section > div iframe {
    width: 100%;
    aspect-ratio: 2 / 1;
}
#instruction-section > div .instruction-recipe {
    margin-right: 4%;
}
#instruction-section > div .instruction-recipe::before {
    content: "カテゴリー";
    position: absolute;
    top: -40px;
    left: 0;
    height: 40px;
    padding: 10px;
    color: white;
    background-color: #197de0;
    border-radius: 10px 10px 0 0;
}
#instruction-section > div .instruction-iframe::before {
    content: "最新レシピ";
    position: absolute;
    top: -40px;
    left: 0;
    height: 40px;
    padding: 10px;
    color: white;
    background-color: #19bce1;
    border-radius: 10px 10px 0 0;
}
#instruction-section summary {		/*タイトル*/
	padding: 16px;
	display: block;
	background-color:#c9e1e6;
    position: relative;
    cursor: pointer;
}
#instruction-section summary::-webkit-details-marker {
    display:none;
}
#instruction-section summary span {
    display: block;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: white;
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    z-index: 1;
} 
#instruction-section summary::before{		/*タイトル横の矢印*/
	content:"";
	width: 20px;
	height: 2px;
    z-index: 2;
	border-top: 2px solid #128ba6;
	-webkit-transform: rotate(90deg);
	position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
	right: 20px;
	transform: rotate(90deg);
    transition: all 0.6s;
}
#instruction-section summary::after{		/*タイトル横の矢印*/
	content:"";
	width: 20px;
	height: 2px;
    z-index: 2;
	border-top: 2px solid #128ba6;
	-webkit-transform: rotate(0deg);
	position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
	right: 20px;
	transform: rotate(0deg);
    transition: all 0.6s;
}
#instruction-section details[open] summary::before {
	transform: rotate(-180deg) !important;
}
#instruction-section details[open] summary::after {
	transform: rotate(-360deg) !important;
}
#instruction-section details[open] {
    background-color: #edf2f3;
}
#instruction-section details {
	margin-bottom: 5px;
    transition: all 0.6s;
    overflow: hidden;
    height: 56px;
}
#instruction-section details.instruction-details01[open] {
    height: 300px;
}
#instruction-section details.instruction-details02[open] {
    height: 210px;
}
#instruction-section details.instruction-details03[open] {
    height: 150px;
}
#instruction-section details ul {
    background-color: #edf2f3;
    padding: 10px 20px;
}
#instruction-section details ul li {
    border-bottom: 1px solid #128ba6;
}
#instruction-section details ul li:last-of-type {
    border-bottom: none;
}
#instruction-section details ul li a {
    display: block;
    padding: 5px 0;
    color: #062e37;
    position: relative;
    font-size: 14px;
}
#instruction-section details ul li:hover a::before {
    right: 0px;
}
#instruction-section details ul li:hover a::after {
    right: 5px;
}
#instruction-section details ul li a::before {
    content: "";
    position: absolute;
    background-color: #128ba6;
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 20px;
    height: 20px;
    z-index: 1;
    border-radius: 50%;
    transition: all 0.6s;
}
#instruction-section details ul li a::after {
    content: "";
    position: absolute;
    right: 15px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 8px solid #ffffff;
    border-right: 0;
    z-index: 2;
    transition: all 0.6s;
}

#instruction-section .recipe-menu {
    display: flex;
    width: 100%;
    max-width: 750px;
    margin: 50px auto 0;
}
#instruction-section .recipe-menu li {
    width: 46%;
    margin: 0 2%;
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    box-shadow: 0px 5px 15px -7px #777777;
    transition: all 0.6s;
}
#instruction-section .recipe-menu li::before,
#instruction-section .recipe-menu li::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: all 0.6s;
}
#instruction-section .recipe-menu li:hover {
    box-shadow: none;
}
#instruction-section .recipe-menu li:hover:before {
    opacity: 0;
}
#instruction-section .recipe-menu li::before {
    background: linear-gradient(209deg, rgba(252,210,80,1) 24%, rgba(235,114,45,1) 78%);
    z-index: -1;
}
#instruction-section .recipe-menu li::after {
    background: linear-gradient(209deg, rgba(235,114,45,1) 24%, rgba(235,114,45,1) 78%);
    z-index: -2;
}
#instruction-section .recipe-menu li a {
    display: block;
    color: #792f00;
    text-align: center;
    padding: 20px;
}
#instruction-section .recipe-menu li a span {
    display: block;
    margin: auto;
    background-color: white;
    border-radius: 50%;
    padding: 15px;
    width: 70px;
    aspect-ratio: 1 / 1;
    margin-bottom: 10px;
}
#instruction-section .recipe-menu li a span img {
    width: 100%;
}

/* sns-section */
#sns-section {
    margin-top: 100px;
}
#sns-section ul {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 5%;
}
#sns-section ul li {
    width: 45%;
}
#sns-section ul li iframe {
    margin: auto;
    display: block;
}
#sns-section ul li a {
    margin: auto;
    display: block;
    width: 36px;
}
#sns-section ul li a img {
    width: 100%;
    margin-bottom: 20px;
}

/* work-section */
#work-section {
    position: relative;
    overflow: hidden;
    margin-top: 100px;
}


#work-section .work_more {
    font-size: 16px;
    border-radius: 50px;
    color: #324619;
    padding: 15px 30px;
    display: block;
    margin: 20px auto 0;
    max-width: 300px;
    text-align: center;
    transition: all 0.6s;
    box-shadow: 0px 6px 15px -8px #535353;
    overflow: hidden;
    position: relative;
    border: none;
}
#work-section .work_more::before {
    background: linear-gradient(53deg, rgba(121,150,82,1) 4%, rgba(180,217,131,1) 45%);
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    transition: all 0.6s;
    left: 0;
    top: 0;
    z-index: -1;
}
#work-section .work_more::after {
    background: linear-gradient(53deg, rgba(121,150,82,1) 4%, rgba(121,150,82,1) 45%);
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -2;
}
#work-section .work_more:hover {
    color: white;
    box-shadow: none;
}
#work-section .work_more:hover::before {
    opacity: 0;
}

.nami {
    position: absolute;
    z-index: -4;
    top: -1px;
	left: 0;
    height: 100%;

	overflow:hidden;
	box-shadow:0 4px 20px rgba(0, 0, 0, 0.2);
	margin:0 auto;
	width:100%;
	background-color:#edf4e4;
    
}
.nami svg {
    width: 300%;
}

	.nami svg path {
		fill:white;
		animation:nami-anime linear 10s infinite;
	}

@keyframes nami-anime {
	from {
		transform:translate(0);
	}
	to {
		transform:translate(-66.66%);
	}
}



#work-section .work-b {
    position: relative;
    padding: 100px 0 200px;
}
#work-section .work-textbox {
    position: relative;
    padding-top: 300px;
}
#work-section .work-b::before,
#work-section .work-b::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    aspect-ratio: 1 / 1;
}
#work-section .work-b::before {
    background-color: white;
    z-index: -2;
    width: 70%;
    max-width: 700px;
    top: 0;
    animation: maru-back01 linear 20s infinite;
}
#work-section .work-b::after {
    background-color: rgba(255, 255, 255, 0.536);
    z-index: -3;
    max-width: 750px;
    width: 75%;
    top: -4%;
    animation: maru-back02 linear 20s infinite;
}
@keyframes maru-back01 {
    0% {
        border-radius: 39% 65% 69% 30% / 15% 47% 58% 81% ; /* 初期状態は円 */
        transform: scale(1) rotateX(10deg);
    }
    25% {
        border-radius: 43% 32% 59% 18% / 63% 29% 54% 19% ;
        transform: scale(1) rotateX(10deg);
    }
    50% {
        border-radius: 19% 50% 26% 58% / 25% 45% 39% 48% ;
        transform: scale(1) rotateX(10deg);
    }
    75% {
        border-radius: 46% 45% 42% 41% / 61% 37% 58% 31% ;
        transform: scale(1) rotateX(10deg);
    }
    100% {
        border-radius: 39% 65% 69% 30% / 15% 47% 58% 81% ; /* 再び円 */
        transform: scale(1) rotateX(10deg);
    }
}
@keyframes maru-back02 {
    0% {
        border-radius: 43% 32% 59% 18% / 63% 29% 54% 19%; /* 初期状態は円 */
        transform: scale(1) rotateX(10deg);
    }
    25% {
        border-radius: 39% 65% 69% 30% / 15% 47% 58% 81%  ;
        transform: scale(1) rotateX(10deg);
    }
    50% {
        border-radius: 46% 45% 42% 41% / 61% 37% 58% 31% ;
        transform: scale(1) rotateX(10deg);
    }
    75% {
        border-radius: 19% 50% 26% 58% / 25% 45% 39% 48% ;
        transform: scale(1) rotateX(10deg);
    }
    100% {
        border-radius: 43% 32% 59% 18% / 63% 29% 54% 19% ; /* 再び円 */
        transform: scale(1) rotateX(10deg);
    }
}


.workanime-box01 {
    position: absolute;
    padding-top: 50px;
    left: 10%;
    top: 10%;
    max-width: 240px;
    z-index: -1;
}
#work-section .workanime-box01 .animated-maru01 {
    margin: auto;
    aspect-ratio: 1 / 1;
    animation: maru01 linear 40s infinite;
    overflow: hidden;
}
#work-section .workanime-box01::after {
    z-index: -2;
    width: 100%;
    aspect-ratio: 1 / 1;
    left: -5%;
    bottom: -10%;
    animation: maru01-2 linear 40s infinite;
    position: absolute;
    content: "";
    display: block;
    background: linear-gradient(144deg, rgba(156,210,229,1) 45%, rgba(158,239,220,1) 100%);
}
@keyframes maru01 {
    0% {
        border-radius: 53% 93% 43% 87% / 75% 78% 50% 75%  ; /* 初期状態は円 */
        transform: scale(1);
    }
    25% {
        border-radius: 76% 47% 81% 37% / 75% 30% 90% 48%  ;
        transform: scale(1);
    }
    50% {
        border-radius: 78% 82% 81% 73% / 72% 88% 90% 73%  ;
        transform: scale(1);
    }
    75% {
        border-radius: 76% 47% 81% 37% / 75% 30% 90% 48%  ;
        transform: scale(1);
    }
    100% {
        border-radius: 53% 93% 43% 87% / 75% 78% 50% 75%  ; /* 再び円 */
        transform: scale(1);
    }
}
@keyframes maru01-2 {
    0% {
        border-radius: 53% 93% 43% 87% / 75% 78% 50% 75%  ; /* 初期状態は円 */
        transform: scale(1);
    }
    25% {
        border-radius: 76% 47% 81% 37% / 75% 30% 90% 48%  ;
        transform: scale(1);
    }
    50% {
        border-radius: 78% 82% 81% 73% / 72% 88% 90% 73%  ;
        transform: scale(1);
    }
    75% {
        border-radius: 76% 47% 81% 37% / 75% 30% 90% 48%  ;
        transform: scale(1);
    }
    100% {
        border-radius: 53% 93% 43% 87% / 75% 78% 50% 75%  ; /* 再び円 */
        transform: scale(1);
    }
}




.workanime-box02 {
    position: absolute;
    padding-top: 50px;
    right: 3%;
    top: 40%;
    max-width: 240px;
    z-index: -1;
}
#work-section .workanime-box02 .animated-maru02 {
    top: 0;
    bottom: -5%;
    margin: auto 0;
    aspect-ratio: 1 / 1;
    animation: maru02 linear 50s infinite;
    overflow: hidden;
}
#work-section .workanime-box02::after {
    z-index: -2;
    width: 100%;
    aspect-ratio: 1 / 1;
    left: -5%;
    bottom: -10%;
    animation: maru02-2 linear 50s infinite;
    position: absolute;
    content: "";
    display: block;
    background: linear-gradient(144deg, rgba(248,181,199,1) 45%, rgba(239,163,224,1) 100%);
}
@keyframes maru02 {
    0% {
        border-radius: 53% 93% 43% 87% / 75% 78% 50% 75%  ; /* 初期状態は円 */
        transform: scale(1);
    }
    25% {
        border-radius: 76% 47% 81% 37% / 75% 30% 90% 48%  ;
        transform: scale(1);
    }
    50% {
        border-radius: 78% 82% 81% 73% / 72% 88% 90% 73%  ;
        transform: scale(1);
    }
    75% {
        border-radius: 76% 47% 81% 37% / 75% 30% 90% 48%  ;
        transform: scale(1);
    }
    100% {
        border-radius: 53% 93% 43% 87% / 75% 78% 50% 75%  ; /* 再び円 */
        transform: scale(1);
    }
}
@keyframes maru02-2 {
    0% {
        border-radius: 53% 93% 43% 87% / 75% 78% 50% 75%  ; /* 初期状態は円 */
        transform: scale(1);
    }
    25% {
        border-radius: 76% 47% 81% 37% / 75% 30% 90% 48%  ;
        transform: scale(1);
    }
    50% {
        border-radius: 78% 82% 81% 73% / 72% 88% 90% 73%  ;
        transform: scale(1);
    }
    75% {
        border-radius: 76% 47% 81% 37% / 75% 30% 90% 48%  ;
        transform: scale(1);
    }
    100% {
        border-radius: 53% 93% 43% 87% / 75% 78% 50% 75%  ; /* 再び円 */
        transform: scale(1);
    }
}





.workanime-box03 {
    position: absolute;
    padding-top: 50px;
    left: 10%;
    bottom: 10%;
    max-width: 240px;
    z-index: -1;
}
#work-section .workanime-box03 .animated-maru03 {
    top: 0;
    bottom: -5%;
    margin: auto 0;
    aspect-ratio: 1 / 1;
    animation: maru03 linear 25s infinite;
    overflow: hidden;
}
#work-section .workanime-box03::after {
    z-index: -2;
    width: 100%;
    aspect-ratio: 1 / 1;
    left: -5%;
    bottom: -10%;
    animation: maru03-2 linear 25s infinite;
    position: absolute;
    content: "";
    display: block;
    background: linear-gradient(144deg, rgba(201,241,125,1) 45%, rgba(238,238,139,1) 100%);
}
@keyframes maru03 {
    0% {
        border-radius: 38% 82% 86% 49% / 37% 40% 88% 76%; /* 初期状態は円 */
        transform: scale(1);
    }
    25% {
        border-radius: 76% 47% 81% 37% / 75% 30% 90% 48%;
        transform: scale(1);
    }
    50% {
        border-radius: 38% 82% 86% 49% / 72% 73% 36% 38%;
        transform: scale(1);
    }
    75% {
        border-radius: 76% 47% 81% 37% / 75% 30% 90% 48%;
        transform: scale(1);
    }
    100% {
        border-radius: 38% 82% 86% 49% / 37% 40% 88% 76%; /* 再び円 */
        transform: scale(1);
    }
}
@keyframes maru03-2 {
    0% {
        border-radius: 38% 82% 86% 49% / 37% 40% 88% 76%; /* 初期状態は円 */
        transform: scale(1);
    }
    25% {
        border-radius: 76% 47% 81% 37% / 75% 30% 90% 48%;
        transform: scale(1);
    }
    50% {
        border-radius: 38% 82% 86% 49% / 72% 73% 36% 38%;
        transform: scale(1);
    }
    75% {
        border-radius: 76% 47% 81% 37% / 75% 30% 90% 48%;
        transform: scale(1);
    }
    100% {
        border-radius: 38% 82% 86% 49% / 37% 40% 88% 76%; /* 再び円 */
        transform: scale(1);
    }
}

@media (max-width: 1199px) {
    #work-section .work-textbox.container {
        width: 100%;
        max-width: 100%;
    }
    .workanime-box01 {
        top: 7%;
    }
    .workanime-box02 {
        right: -5%;
    }
    .workanime-box03 {
        left: 2%;
        bottom: 0%;
    }
    #work-section .work-b::before {
        top: 8%;
    }
    #work-section .work-b::after {
        top: 5%;
    }
}



/****************** 印刷指定 ******************/
@media print {
    .pc_sns_kotei,
    .nav-btn,
    .navbar-nav,
    nav .contact .navcontact_more01,
    .sidemenu_b,
    .footer .footer_list_b ul,
    .footer .footer_sitemap_tel .footer_sitemap,
    .nav {
        display: none;
    }
    * {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
    .artclay-box01 > div img,
    .artclay-box02 > div img,
    .artclay-box03 > div img {
        max-width: 190px;
    }
    #work-section .work-b {
        padding: 100px 0 250px;
    }
    .container, .container-sm {
        max-width: 680px;
    }
    #top-b h2 {
        font-size: 27px;
    }
    .main_b_h1 {
        margin: 0px 0 80px;
    }
    .footer .footer_sitemap_tel {
        padding-top: 50px;
    }
}
