@charset "UTF-8";
* {
box-sizing: border-box;
-webkit-appearance: none;
-moz-appearance: none;
-ms-appearance: none;
-o-appearance: none;
appearance: none;
list-style: none;
}
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,hgroup,menu,nav,section,summary,time,mark,audio,video
{margin: 0;padding: 0;border: 0;outline: 0;vertical-align: baseline;background: transparent;color: #3C1405;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display: block;}
input,select {vertical-align: middle;}
body {font-family:  "Zen Maru Gothic", sans-serif;font-size: 14px;font-weight:400;color:#202020;font-style: normal;line-height: 1.42em;letter-spacing: 0.01em;padding-top: 80px;overflow-x: hidden;}
h1,h2,h3{letter-spacing: 0.01em;margin: 20px auto; font-weight: 500;}
.page-posts h1{font-size: 18px;}
h4{text-align: center;font-size: 30px;font-weight: 500;}
h4::after{
display: block;
content: "";
width: 30px;
height: 1px;
background-color: #FFBF34;
margin:20px auto 30px auto;
}
a {color:#3C1405;transition: 0.3s;font-weight: 700;word-break: break-all;transition: 0.2s;text-decoration: none;}
a:hover{opacity: 0.5;}
p{font-size: 14px;line-height:1.86em;letter-spacing: 0.01em;}
table {
border-collapse: collapse;
border-spacing: 0;
width: 95%;
max-width: 740px;
margin: 0 auto 25px auto;
text-align: left;
}
thead td {padding-bottom: 5px;}
tbody tr{border-bottom:1px solid #888;}
tbody tr:last-child {border-bottom: 0;}
tbody th,tbody td{padding: 30px 40px;}
caption{font-size: 14px;line-height: 2em;text-align: right;caption-side: bottom;}
.caution{font-size:14px;}
.common-title{display: grid;
text-align: center;
font-size: 36px;
font-weight: 500;
line-height: 1em;
margin-top: 0;
}
.common-title span {
font-size: 14px;
font-family: arial;
font-weight: 400;
letter-spacing: 0.2em;
margin-top: 5px;
}

.frame-btn {
display: flex;
align-items: center;
justify-content: center;
line-height: 1;
text-decoration: none;
font-size: 16px;
border-radius: 30px;
width: 300px;
height: 60px;
border: 1px solid #333333;
position: relative;
transition: 0.3s;
background-color: #ffffff00;
font-weight: 500;
}
.frame-btn::before,.frame-btn::after {
content: "";
display: block;
position: absolute;
top: 50%;
right: 15px;
transform-origin: 100% 50%;
height: 1px;
width: 8px;
background-color: #333;
border-radius: 2px;
will-change: transform;
transition: .3s;
}
.frame-btn::before {transform: translateY(-50%) rotate(45deg);}
.frame-btn::after {transform: translateY(-50%) rotate(-45deg);}
.frame-btn:hover::before {transform: translate(5px, -50%) rotate(45deg);}
.frame-btn:hover::after {transform: translate(5px, -50%) rotate(-45deg);}

.gradation_btn {
width: 310px;
height: 67px;
background: linear-gradient(to right, #D1FDFF 0%, #FDDB92 100%);
border-radius: 9999px;
padding: 5px;
display: inline-block;
overflow: hidden;
}
.gradation_btn p {
width: 300px;
height: 57px;
background: white;
border-radius: 9999px;
text-align: center;
line-height: 57px;
font-size: 16px;
position: relative;
}
.gradation_btn p::before, .gradation_btn p::after {
content: "";
display: block;
position: absolute;
top: 50%;
right: 15px;
transform-origin: 100% 50%;
height: 1px;
width: 8px;
background-color: #333;
border-radius: 2px;
will-change: transform;
transition: .3s;
}
.gradation_btn p::before {transform: translateY(-50%) rotate(45deg);}
.gradation_btn p::after {transform: translateY(-50%) rotate(-45deg);}

.activities__item_ttl{
font-weight: 600;
margin: 10px 0;
font-size: 16px;
line-height: 1.57em;
}

.under-page{margin: 30px 0 0 0;width: 100%;}
.under-page__line{height: 10px;width: 100%;background: linear-gradient(27deg, #D1FDFF 0%, #DDFAF5 30%, #F0F6E5 50%, #FFF3D9 100%);display: inline-block;}

.wp-block-image img{
max-width: 530px;
width: 100%;
margin: 20px auto 0 auto;
display: block;
}

.page-posts header ul {margin-top: 0;}
.page-top{margin-top: 50px;}

.bcn{font-size: 11px; font-weight: 400;margin: 30px 0 0 60px;}
.bcn span{font-weight: 400;}

.cat_list__item{margin-right: 20px;}
.cat_list__item:last-child{margin-right: 0;}

.btn{background-color: #FFBF34;
padding: 15px;
min-width: 100px;
display: inline-block;
text-align: center;
margin: 30px auto 0 auto;
border-radius: 50px;
color: #fff;
margin-right: -1px;}

#news{margin-top: 80px;}
#single{width: 90%;margin: 0 auto;}
.single__title h1 {line-height: 1.3em;}

.page-top__wrapper p{font-size: 36px;font-weight: 500;margin-left: 60px;}
.under-page{margin:120px 0 20px 0px;}
.page-about .page-top__wrapper p::after{content: "ABOUT";}
.page-service .page-top__wrapper p::after{content: "SERVICE";}
.page-contact  .page-top__wrapper p::after{content: "CONTACT";}
.page-contact  .page-top__wrapper p::after{content: "CONTACT";}
.posts  .page-top__wrapper p::after{content: "BLOG";}
.page-top__wrapper p::after{
display: block;
font-size: 16px;
font-weight: 500;
font-family: arial;
color: #87D9DC;
line-height: 0;
margin: 10px 0 40px 0;
letter-spacing: 0.8em;
}
.top-page .page-top__name{display: none;}

.return-btn{
background-color: #FFBF34;
padding: 15px;
display: inline-block;
width: 250px;
text-align: center;
margin: 30px auto 0 auto;
border-radius: 50px;
color: #fff;
margin-right: -1px;
}

#single__pager{text-align: center;margin-bottom: 80px;clear: both;}

.blog__item {width: fit-content;}
.blog__item--contents{max-width: 320px;}
.blog-wrap{
display: flex;
justify-content: space-evenly;
max-width: 1130px;
margin: 0 auto;
flex-wrap: wrap;
width: 95%;
gap: 60px 30px;
}
.blog__item_img img{
margin: 0 auto;
display: block;
width: 320px;
height: 210px;
object-fit: cover;
border-radius: 30px;
}
.date_cat{display: flex;}
.date_cat__category{width:auto;margin-left: 40px;}
.date_cat__category a,.date_cat__category span {
width: 100px;
display: inline-block;
background-color: #BBE4F8;
text-align: center;
font-size: 12px;
color: #3C1405;
}

#sb_instagram{max-width: 600px;}
#sb_instagram .sbi_photo img {max-height: 300px;object-fit: contain;}
.error-404 .page-wrapper{width: fit-content;margin: 30px auto 100px;}
.page-privacy-policy #default__page{width: 95%;max-width: 800px;margin: 80px auto 120px auto;}
.wp-block-heading{margin: 20px 0;}

.works__detail--wrap {display: flex;justify-content: center;flex-wrap: wrap;}
.works__detail--img {opacity: 0;transform: translateY(30px);transition: opacity 0.8s ease, transform 0.8s ease;}
.works__detail--img.show {opacity: 1;transform: translateY(0);}

.posts .activities__item_txt a{font-weight: 400;}
.posts .date_cat__category a{font-weight: 600;width: 100px;display: inline-block;}

#news-list{margin-bottom: 100px;}

.header-inner{height: 90px;}

.activities__item_txt{padding: 20px 10px 0 10px;}
.activities__item_txt p{font-weight: 400;}
.activities__item_txt .activities__item_ttl span{font-weight: 600;}
.activities__item_ttl .date_cat__category span{font-weight: 600;}

.blog .date_cat a,.activities__item_ttl span{font-weight: 600;}

.svg-inline--fa img{position: relative;}

.pc{display: block;}
.sp{display: none;}

@media screen and (max-width: 1100px) {
    html.is-fixed {height: 100%;overflow: hidden;}
    .is-fixed body {height: 100%;overflow: hidden;}
    body.is-fixed {
    position: fixed;
    width: 100%;
    height: 100vh;
    top: var(--scroll-y);
    left: 0;
    overflow: hidden;
    }

    body.menu-open {
    position: fixed;
    width: 100%;
    overflow: hidden;
    touch-action: none;
    -webkit-overflow-scrolling: auto;
    }

    html.menu-open {height: 100%;overflow: hidden;}
}

@media screen and (max-width: 960px) {
    .pc{display: none;}
    .sp{display: block;}
    table {width: 90%;}
}

@media screen and (max-width: 820px) {
    .page-top__wrapper p,.bcn {margin-left: 20px;}
    .blog-wrap{flex-direction: column;justify-content: center;width: fit-content;}
    .under-page {margin: 100px 0 20px 0px;}
    .page-privacy-policy #default__page {margin: 80px auto 80px auto;}
}

@media screen and (max-width: 450px) {
    .flow__wrap--cell-img img {margin-right: 20px;max-width: 70px;}
    .under-page {margin: 50px 0 20px 0;}
    h4 {font-size: 24px;}
    .page-top__wrapper p {font-size: 30px;}

    .common-title {
    display: grid;
    text-align: center;
    font-size: 26px;
    font-weight: 500;
    line-height: 1em;
    }
}