@charset "UTF-8";
/*　====================== 基本設定 ======================　*/
*,
*::before,
*::after {
-webkit-box-sizing: inherit;
box-sizing: border-box;
}
html {
-webkit-box-sizing: border-box;
box-sizing: border-box;
scroll-behavior: smooth;
}
body{
margin:0;
padding: 0;
color: #111;
background-color: #fff;
}
ul,ol {
list-style: none;
padding: 0;
margin: 0;
}
img{
width:100%;
max-width:100%;
display: block;
}
/*　====================== フォント設定 ======================　*/
h1,h2,h3,h4,h5,h6{
font-weight: 500;
line-height: 1.2;
font-family: "Noto Serif JP", sans-serif;}
p,a,div,ul,ol,dl{
font-size: 16px;
font-weight: 400;
letter-spacing: 0.08em;
line-height: 1.5;
font-family: "Noto Serif JP", sans-serif;
color: #111;}
input,textarea{
font-size: 16px;
padding: 5px;}
/*　====================== レスポンシブ設定 ======================　*/
.pc-only {
display: block;
}
.sp-only {
display: none;
}
@media screen and (max-width:768px){
.pc-only {
display: none;
}
.sp-only {
display: block;
}
}
/*　====================== コンテンツ幅設定 ======================　*/
section{
padding-top: 100px;
padding-bottom: 100px;
}
.container{
margin: 0 auto;
width: 90%;
max-width: 1080px;
}
@media screen and (max-width:768px){
section{
padding-top: 80px;
}
}
/*　====================== flexデフォルト設定 ======================　*/
.flex {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
/*　====================== 共通設定 ======================　*/
h2.h2-title{
width: 100px;
margin: 0 auto 50px;
}
@media screen and (max-width:768px){
h2.h2-title{
width: 70px;
}
}
/*　====================== lorder ======================　*/
.loader {
position: fixed;
width: 100%;
height: 100%;
background-image: url(../img/fv-back-pc.webp);
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
z-index: 555;
top: 0;
left: 0;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.loader p img{
height:100%
}
.loader .loder-animation{
position: absolute;
width: 100%;
bottom: 0;
-webkit-animation: loder-animation 3s;
        animation: loder-animation 3s;
-webkit-animation-fill-mode: forwards;
        animation-fill-mode: forwards;
}
@-webkit-keyframes loder-animation {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
.loader .loder-animation img{
position: absolute;
bottom:0;
}
.loader .txt {
height: 80%;
display: none;
}
.loader .txt img{
  width: auto;
}
/*　====================== lorder ======================　*/
/*　====================== header ======================　*/
h1{
width: 200px;
padding: 10px 0;
}
header{
padding: 5px 10px;    
background-color: rgba(255, 255, 255, 0);
position: fixed;
-webkit-transition: padding .5s, background-color .5s;
-o-transition: padding .5s, background-color .5s;
transition: padding .5s, background-color .5s;
width: 100%;
top:0;
left: 0;
z-index: 90;
}
/* ファーストビューを過ぎたあとのヘッダー */
header.transform {
background-color: rgb(255, 255, 255);
}
header .right.flex{
gap:20px;
}
header .right.flex .nav1.flex,
header .right.flex .btn.flex{
gap:20px;
}
header .right.flex .btn.flex a{
padding: 10px 15px;
display: block;
color:#B10000;
border: 1px solid #B10000;
}
header .right.flex .btn.flex a:hover{
color:#fff;
background-color:#B10000;
}
@media screen and (max-width:1080px){
header>.flex{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
}
header .right.flex .nav1.flex,
header .right.flex .btn.flex {
gap: 20px;
}
header .right.flex .btn.flex a {
padding: 9px;
}   
}
/*　====================== header ======================　*/
/*　====================== hamburger ======================　*/
@media screen and (max-width:768px){
header>.flex{
-webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;
}
.hamburger {
border: 1px solid #7C7C7C;
border-radius: 5px;
position: fixed;
top: 20px;
right: 10px;
z-index: 100;
width: 48px;
height: 48px;
background: transparent;
cursor: pointer;
}
.hamburger__line {
position: absolute;
left: 10px;
width: 26px;
height: 1px;
background-color: #7C7C7C;
-webkit-transition: all .4s;
-o-transition: all .4s;
transition: all .4s;
}
.hamburger__line:nth-of-type(1) {
top: 14px;
}
.hamburger__line:nth-of-type(2) {
top: 23px;
}
.hamburger__line:nth-of-type(3) {
top: 32px;
}
/* メニューオープン時 */
.hamburger.active .hamburger__line:nth-of-type(1) {
-webkit-transform: translateY(9px) rotate(-45deg);
    -ms-transform: translateY(9px) rotate(-45deg);
        transform: translateY(9px) rotate(-45deg);
}
.hamburger.active .hamburger__line:nth-of-type(2) {
opacity: 0;
}
.hamburger.active .hamburger__line:nth-of-type(3) {
-webkit-transform: translateY(-9px) rotate(45deg);
    -ms-transform: translateY(-9px) rotate(45deg);
        transform: translateY(-9px) rotate(45deg);
}
.nav {
position: fixed;
top: 0;
left: 0;
width: 350px;
height: 100vh;
background-color: #fff;
-webkit-box-shadow: 2px 0 4px rgba(0,0,0,.1);
        box-shadow: 2px 0 4px rgba(0,0,0,.1);
-webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
        transform: translateX(-100%);
-webkit-transition: -webkit-transform .4s;
transition: -webkit-transform .4s;
-o-transition: transform .4s;
transition: transform .4s;
transition: transform .4s, -webkit-transform .4s;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
-webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center; 
row-gap: 15px;
}
.nav .flex{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
row-gap: 15px;
}
.nav.active {
-webkit-transform: translateX(0);
    -ms-transform: translateX(0);
        transform: translateX(0);
}
.nav__list {
margin: 0;
padding: 100px 0 0;
list-style: none;
}
.nav__item {
padding: 0 20px;
}
.nav__link {
display: block;
padding: 15px 0;
color: #333;
text-decoration: none;
border-bottom: 1px solid #eee;
}
header .right.flex .btn.flex a {
padding: 15px;
}
}
/*　====================== header ======================　*/
/*　====================== firstview ======================　*/
#firstview{
position:relative;  
overflow: hidden;
height: 95vh;
}
#firstview .txt{
position: absolute;
height: 90%;
top: 5%;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
z-index: 10;
}
.back-img{
position: relative;
background-image: url(../img/fv-back2-pc.webp);
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
}
#firstview .txt img{
width: auto;
max-width: -webkit-fit-content;
max-width: -moz-fit-content;
max-width: fit-content;
display: block;
height: 100%;
}
@-webkit-keyframes fv-animation {
from {
opacity: 0;
-webkit-transform: translateY(300px);
        transform: translateY(300px);
}
to {
opacity: 0.5;
-webkit-transform: translateY(0px);
        transform: translateY(0px);
}
}
@keyframes fv-animation {
from {
opacity: 0;
-webkit-transform: translateY(300px);
        transform: translateY(300px);
}
to {
opacity: 0.5;
-webkit-transform: translateY(0px);
        transform: translateY(0px);
}
}
@media screen and (max-width:768px){
#firstview{
height: 100vh;
}
.back-img{
background-image: url(../img/fv-back2-sp.webp);
background-position: center bottom;
}   
}
.back-img .fv-animation.img2{  
width: 90%;
bottom: 0;
right: auto;
left: 0;
}
#firstview .txt{
height: 80%;
top: 17%;
}
@-webkit-keyframes fv-animation {
from {
opacity: 0;
-webkit-transform: translateY(50px);
        transform: translateY(50px);
}
to {
opacity: 0.6;
-webkit-transform: translateY(0px);
        transform: translateY(0px);
}
}
@keyframes fv-animation {
from {
opacity: 0;
-webkit-transform: translateY(50px);
        transform: translateY(50px);
}
to {
opacity: 0.6;
-webkit-transform: translateY(0px);
        transform: translateY(0px);
}
}
/*スクロールバー*/
.container_04 {
height: 300px;
position: absolute;
right: 5%;
bottom: 40%;
}
.scrollbar_04::after {
content: "";
position: absolute;
bottom: 0;
left: 0;
width: 1px;
height: 80px;
background: #111111;
}
.scrollbar_04::before {
content: "";
position: absolute;
bottom: 0;
left: -4px;
width: 9px;
height: 9px;
border-radius: 50%;
background: #b10000;
-webkit-animation: circlemove 3s ease-in-out infinite,
cirlemovehide 3s ease-out infinite;
        animation: circlemove 3s ease-in-out infinite,
cirlemovehide 3s ease-out infinite;
}
@-webkit-keyframes circlemove {
0% {
bottom: 95px;
}
100% {
bottom: 0px;
}
}
@keyframes circlemove {
0% {
bottom: 95px;
}
100% {
bottom: 0px;
}
}
@-webkit-keyframes cirlemovehide {
0% {
opacity: 0;
}
50% {
opacity: 1;
}
80% {
opacity: 0.9;
}
100% {
opacity: 0;
}
}
@keyframes cirlemovehide {
0% {
opacity: 0;
}
50% {
opacity: 1;
}
80% {
opacity: 0.9;
}
100% {
opacity: 0;
}
}
@media screen and (max-width:768px){
.scrollbar_04::before {
left: -3.8px;
}}
/*　====================== firstview ======================　*/
/*　====================== obi ======================　*/
#obi{
background-image: url(../img/genkigaderu-syokudou-back-pc.png);
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
}
#obi .container{
width: 40%;
padding: 50px 0;
}
@media screen and (max-width:768px){
#obi{
background-image: url(../img/genkigaderu-syokudou-back-sp.webp);
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
}
#obi .container{
width: 90%;
padding: 20px 0;
}
}
/*　====================== obi ======================　*/
/*　====================== section1 ======================　*/
#sec1{
background-image: url(../img/sec1-back-pc.webp);
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
}
#sec1 .content-wrap.flex{
-webkit-box-align: start;
    -ms-flex-align: start;
        align-items: start;
-webkit-box-pack: start;
    -ms-flex-pack: start;
        justify-content: flex-start;
gap:30px;
}
#sec1 .content-wrap.flex>.img{
width: 50%;
}
#sec1 .content-wrap .text-wrap.flex{
-webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;  
-webkit-box-align: start;  
    -ms-flex-align: start;  
        align-items: start;
gap:15px;
}
#sec1 .content-wrap .text-wrap.flex p{
-webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
}
#sec1 .content-wrap .text-wrap.flex p.p1{
font-weight: 900;
}
#sec1 .content-wrap .text-wrap.flex h3{
width: 150px;
margin-top: 50px;
}
#sec1 .content-wrap .text-wrap.flex p.p2{
font-weight: 900;
-webkit-box-pack: justify;
    -ms-flex-pack: justify;
        justify-content: space-between;
margin-top: 150px;
}
#sec1 .content-wrap .text-wrap.flex p.p2 span{
display: block;
}
#sec1 .content-wrap .text-wrap.flex p.p3{
font-weight: 600;
font-size: 18px;
line-height: 2.3em;
margin-top: 150px;
}
@media screen and (max-width:768px){
#sec1{
background-image: url(../img/sec1-back-sp.webp);
}
#sec1 .content-wrap.flex{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
-webkit-box-align: center;
    -ms-flex-align: center;
        align-items: center;
}
#sec1 .content-wrap.flex>.img{
width: 90%;
}
#sec1 .content-wrap .text-wrap.flex h3{
width: 130px;
}
#sec1 .content-wrap .text-wrap.flex p.p2{
margin-top: 100px;
}
#sec1 .content-wrap .text-wrap.flex p.p3 {
margin-top: 100px;
font-size: 16px;
line-height: 2em;
}
}
@media screen and (max-width:350px){
#sec1 .content-wrap .text-wrap.flex h3{
width: 100px;
}
#sec1 .content-wrap .text-wrap.flex {
gap: 10px;
}
}
/*　====================== section1 ======================　*/
/*　====================== section2 ======================　*/
#sec2{
background-image: url(../img/sec2-back-pc.webp);
background-repeat: no-repeat;
background-position: center top;
background-size: cover; 
}
#sec2 .content-wrap.flex{
-webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
-webkit-box-pack: start;
    -ms-flex-pack: start;
        justify-content: flex-start;
gap: 30px;
}
#sec2 .content-wrap.flex>.img{
width: 50%;
}
#sec2 .content-wrap.flex h3.flex,
#sec2 .content-wrap.flex p{
-webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
}
#sec2 .content-wrap.flex h3.flex span{
height: -webkit-fit-content;
height: -moz-fit-content;
height: fit-content;
}
#sec2 .content-wrap.flex h3.flex{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
-webkit-box-align: start;
    -ms-flex-align: start;
        align-items: start;
font-size: 30px;
line-height: 1.8em;
}
#sec2 .content-wrap.flex h3.flex span:nth-child(2){
margin-top: 100px;
}
#sec2 .content-wrap.flex h3.flex span:nth-child(3){
margin-top: 200px;
}
#sec2 .content-wrap.flex>.flex{
-webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
-webkit-box-align: start;
    -ms-flex-align: start;
        align-items: start;
gap:30px;
}
#sec2 .content-wrap.flex p{
margin-top: 30px;
line-height: 2.3em;
font-size: 15px;
}
@media screen and (max-width:768px){
#sec2{
background-image: url(../img/sec2-back-sp.webp);
}
#sec2 .content-wrap.flex {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
}
#sec2 .content-wrap.flex>.img {
width: 90%;
}
#sec2 .content-wrap.flex h3.flex {
font-size: 25px;
line-height: 1.6em;
}
#sec2 .content-wrap.flex>.flex {
gap: 15px;
}
}
/*　====================== section2 ======================　*/
/*　====================== obi2 ======================　*/
#obi2{
background-image: url(../img/kome-niku-syouga-back-pc.webp);
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
}
#obi2 .container{
width: 20%;
padding: 50px 0;
}
@media screen and (max-width:768px){
#obi2{
background-image: url(../img/kome-niku-syouga-back-sp.webp);
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
}
#obi2 .container{
width: 40%;
padding: 20px 0;
}
}
/*　====================== obi2 ======================　*/
/*　====================== section3 ======================　*/
#sec3{
background-image: url(../img/sec3-back-pc.webp);
background-repeat: no-repeat;
background-position: center top;
background-size: cover; 
padding-bottom: 300px;
}
#sec3 .content-wrap.flex{
-ms-flex-wrap: wrap;
    flex-wrap: wrap;
-webkit-box-align: start;
    -ms-flex-align: start;
        align-items: start;
-webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
-webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;
gap:50px;
}
#sec3 h2.h2-title{
width: 150px;
}
#sec3 .content-wrap.flex p,#sec3 .content-wrap.flex h3{
-webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
font-size: 20px;
line-height: 2em;
}
#sec3 .content-wrap.flex h3{
margin-right: 30px;  
font-weight: 900;
}
#sec3 .content-wrap.flex .menu-inner.flex{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
}
#sec3 .content-wrap.flex .menu-wrap1.flex,
#sec3 .content-wrap.flex .menu-wrap1.flex .side.flex{
-webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
-webkit-box-align: start;
    -ms-flex-align: start;
        align-items: start;
}
#sec3 .content-wrap.flex .menu-wrap1 .menu-inner.flex,
#sec3 .content-wrap.flex .menu-wrap2 .menu-inner.flex,
#sec3 .content-wrap.flex .menu-wrap3 .menu-inner.flex{
height: 400px;
-webkit-box-align: start;
    -ms-flex-align: start;
        align-items: start;
-webkit-box-pack: justify;
    -ms-flex-pack: justify;
        justify-content: space-between;
}
#sec3 .content-wrap.flex .menu-wrap2>.flex,
#sec3 .content-wrap.flex .menu-wrap3>.flex{
-webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;

}
#sec3 .bento-banner{
display: block;
margin-top: 50px;
}
@media screen and (max-width:768px){
#sec3{
    padding-bottom: 200px;
}}
@media screen and (max-width:768px){
#sec3{
background-image: url(../img/sec3-back-sp.webp);
}
#sec3 h2.h2-title{
width: 130px;
}
#sec3 .content-wrap.flex p,#sec3 .content-wrap.flex h3{
font-size: 18px;
line-height: 2em;
}
#sec3 .content-wrap.flex .menu-wrap1 .menu-inner.flex{
height: 360px;
}
#sec3 .content-wrap.flex .menu-wrap2 .menu-inner.flex,
#sec3 .content-wrap.flex .menu-wrap3 .menu-inner.flex{
height: 225px;
}
}
/*　====================== section3 ======================　*/
/*　====================== section4 ======================　*/
#sec4{
background-image: url(../img/sec4-back-pc.webp);
background-repeat: no-repeat;
background-position: center bottom;
background-size: cover; 
padding-top: 300px;
position: relative;
}
#sec4::before{
position: absolute;
content: ' ';
width: 100%;
padding-top: 30%;
background-image: url('../img/line.webp');
background-size: cover;
background-repeat: no-repeat;/*画像を繰り返さない*/
top: -150px;
left:0;
display: block;
}
#sec4 ul{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
gap:20px;
width: 80%;
margin: 0 auto;
}
#sec4 ul li{
border-bottom: 1px solid #fff;
padding:0 100px 20px;
width: 100%;
}
#sec4 ul li:last-child{
border-bottom: none;
}
#sec4 ul li a{
display: block;
}
#sec4 ul li a:hover{
opacity: 0.5;
-webkit-transition: 0.5s;
-o-transition: 0.5s;
transition: 0.5s;
}
#sec4 ul li a time,#sec4 ul li a h4{
color:#fff;
}
.wp-pagenavi {
	margin: 40px auto;
	font-size: 14px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
    color: #9e9e9e;
}
.wp-pagenavi a {
    color: #9e9e9e;
}
.wp-pagenavi a:hover {
	color: #7c0000;
}
.wp-pagenavi span.current,
.wp-pagenavi a.page {
	margin: 0 10px;
	line-height: 2;
	padding: 0 12px;
	transition: .03s;
	display: block;
	border-bottom: 4px solid transparent;
}
.wp-pagenavi span.current {
	border-bottom: 4px solid #9e9e9e;

}
.wp-pagenavi a.page {
	background: none;
}
.wp-pagenavi a.page:hover {
	border-bottom: 4px solid hsl(0, 0%, 100%);
}
.wp-pagenavi .first,
.wp-pagenavi .extend {
	margin-right: 15px;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	display: none;
}
@media screen and (max-width:1080px){
#sec4::before{
background-image: url('../img/line.webp');
top: -120px;
}
}
@media screen and (max-width:768px){
#sec4{
padding-top: 150px;}
#sec4::before{
background-image: url('../img/line-sp.webp');
top: -120px;
padding-top: 50%;
}
#sec4 ul{
gap:10px;
width: 100%;
}
#sec4 ul li{
border-bottom: 1px solid #fff;
padding:0 10px 10px;
width: 100%;
}
}
/*　====================== section4 ======================　*/
/*　====================== section5 ======================　*/
#sec5{
background-image: url(../img/sec5-back-pc.webp);
background-repeat: no-repeat;
background-position: center bottom;
background-size: cover; 
}
/*アコーディオン*/
#sec5 .img{
width: 40%;
}
#sec5 .tenpo-wrap{
width: 55%;
}
#sec5  .text-wrap.flex{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
gap:15px;
}
#sec5 .text-wrap.flex table tbody.flex{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
gap:15px;
}
#sec5 .text-wrap.flex table tbody.flex tr{
width: 100%;
}
#sec5 .details {
border-top: 1px solid #111;
}
#sec5 .details:last-of-type {
border-bottom: 1px solid #111;
}
#sec5 .details-summary {
position: relative;
display: block;
padding: 20px;
font-size: 24px;
font-weight: bold;
text-align: center;
}
#sec5 .details-summary:hover {
cursor: pointer;
opacity: 0.8;
}
#sec5 .details-summary .btn {
position: absolute;
top: 37%;
right: 5%;
width: 18px;
height: 18px;
-webkit-transform-origin: center center;
-ms-transform-origin: center center;
transform-origin: center center;
-webkit-transition-duration: 0.2s;
-o-transition-duration: 0.2s;
transition-duration: 0.2s;
}
#sec5 .details-summary .btn:before,
#sec5 .details-summary .btn:after {
content: "";
background-color: #111;
border-radius: 10px;
width: 18px;
height: 1px;
position: absolute;
top: 9px;
left: 0;
-webkit-transform-origin: center center;
-ms-transform-origin: center center;
transform-origin: center center;
}
#sec5 .details-summary .btn:before {
width: 1px;
height: 20px;
top: 0;
left: 8px;
}
#sec5 .details-summary.is-active .btn {
-webkit-transform: rotate(-180deg);
-ms-transform: rotate(-180deg);
transform: rotate(-180deg);
}
#sec5 .details-summary.is-active .btn:before {
content: none;
}
#sec5 .details-summary::-webkit-details-marker {
display: none;
}
#sec5 .details-content .tel th,#sec5 .details-content .tel td a{
font-size: 30px;
font-weight: 900;
}
#sec5 .details-content th{
width: 30%;
}
#sec5 .details-content td{
width: 70%;
}
#sec5 .details-content .map{
width: 100%;
}
@media screen and (max-width:768px){
#sec5{
background-image: url(../img/sec5-back-sp.webp);
background-position: center top;
}
#sec5 .content-wrap.flex{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
gap:30px;
}
#sec5 .content-wrap.flex .img{
width: 80%;
}
#sec5 .content-wrap.flex .tenpo-wrap {
width: 100%;
}
#sec5 .details-content .tel th,#sec5 .details-content .tel td a{
font-size: 25px;
font-weight: 900;
}
#sec5 .details-content th {
width: 25%;
font-size: 14px;
}
#sec5 .details-content td {
width: 75%;
font-size: 14px;
}
footer .container.footer-wrap.flex {
padding: 30px 0;
}
}
/*　====================== section5 ======================　*/
/*　====================== section6 ======================　*/
#sec6{
background-image: url(../img/sec1-back-pc.webp);
background-repeat: no-repeat;
background-position: center bottom;
background-size: cover; 
}
#sec6 form table{
width: 100%;
}
#sec6 form tr{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
margin-bottom: 30px;
}
#sec6 form tr th{
font-weight: 700;
width: -webkit-fit-content;
width: -moz-fit-content;
width: fit-content;
height: -webkit-fit-content;
height: -moz-fit-content;
height: fit-content;
margin-top: 10px;
font-size: 20px;
position: relative;
}
#sec6 form tr th.hissu::after{
content: '※必須';
color:#B10000;
position: absolute;
top:50%;
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
right: -40px;
letter-spacing: 0.1em;
font-size: 12px;
}
#sec6 form td{
width: 68%;
}
#sec6 form td input,#sec6 form td textarea{
width: 100%;
border: none;
font-size: 18px;
line-height: 1.3;
letter-spacing: 0.08em;
font-family: "Noto Serif JP", sans-serif;
padding: 15px;
border-radius: 5px;
-webkit-appearance: none;
}
#sec6 form td textarea{
height: 150px;
}
#sec6 form .privacy h3{
text-align: center;
font-size: 20px;
margin-bottom: 15px;
font-weight: 900;
}
#sec6 form .privacy .flex.accept{
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
}
#sec6 .privacy-policy{
border-radius: 5px;
width: 100%;
height: 200px;
padding: 30px;
overflow-y: scroll;
background-color: #fff;
margin-bottom: 15px;
-webkit-box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.3);
box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.3);
}
#sec6 .privacy-policy>p{
  padding-bottom: 30px;
}
#sec6 form .privacy-policy tr{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
}
#sec6 form .privacy-policy tr th,
#sec6 form .privacy-policy tr td{
width: 100%;
text-align: left;
}
#sec6 form p.button{
margin-top: 30px;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
gap:15px;
}
input.button-design{
font-size: 20px;
padding: 10px 30px;
color:#111;
border: 1px solid #111;
background-color: #fff;
font-family: "Noto Serif JP", sans-serif;
font-weight: 700;
}
@media screen and (max-width:768px){
#sec6{
background-image: url(../img/sec1-back-pc.webp);
}
#sec6 #section1 .content-wrap.flex .menu-wrap {
width: 100%;
padding: 20px;
}
#sec6 form tr {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
gap:5px;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
margin-bottom: 30px;
}
#sec6 form tr td{
text-align: left;
width: 100%;
font-size: 15px;
}
#sec6 form tr th{
font-size: 18px;
margin-top: 0;
}
#sec6 form td input,#sec6 form td textarea {
padding: 10px;
font-size: 16px;
}
form .privacy h3 {
font-size: 20px;
text-align: left;
}
#sec6 p{
font-size: 15px;
}
#sec6 .privacy-policy {
width: 100%;
height: 200px;
padding: 20px;
}
#sec6 .privacy-policy tr th{
  font-size: 16px;
}
#sec6 form p.button .submit-button{
margin-bottom: 10px;
}
}
/*　====================== section6 ======================　*/
/*　====================== footer ======================　*/
footer{
background-image: url(../img/footer-back-pc.webp);
background-repeat: no-repeat;
background-position: left top;
background-size: cover; 
}
footer .container.footer-wrap.flex{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
row-gap: 10px;  
padding: 50px 0;
}
footer p,footer a{
color: #fff;
text-align: center;
}
footer .tel a, footer .tel {
font-size: 30px;
}
footer .company,footer ul{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
-webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;
row-gap: 10px;
}
footer .copy{
padding: 10px 0;
text-align:center;
background-color: #1e1e1e;
color: #fff;
}
@media screen and (max-width:768px){
footer{
background-image: url(../img/footer-back-sp.webp);
/*　====================== footer ======================　*/
}
footer .container.footer-wrap.flex{
padding: 50px 0;
-webkit-box-align: start;
    -ms-flex-align: start;
        align-items: flex-start;
gap:30px;
}
footer p,footer a{
color: #fff;
text-align: left;
}
footer .tel a,footer .tel{
font-size: 25px;
}
footer .container.footer-wrap.flex ul.flex{
-webkit-box-align: start;
    -ms-flex-align: start;
        align-items: start;
}
}
/*　====================== footer ======================　*/
/*　====================== 下層共通 ======================　*/
.pankuzu.flex{
padding: 3px 10px;
background-color: #111;
-webkit-box-pack: left;
    -ms-flex-pack: left;
        justify-content: left;
gap: 30px;
-ms-flex-wrap: wrap;
    flex-wrap: wrap;
row-gap: 5px;
}
.pankuzu.flex li span{
color:#fff;
font-size: 14px;
}
.pankuzu.flex li{
position: relative;
}
.pankuzu.flex li::after{
position: absolute;
right: -20px;
top:50%;
-webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
content: '▶';
font-size: 10px;
color:#fff;
}
.pankuzu.flex li:last-child:after{
content: none;
}
.kasou #firstview{
height: 80px;
}
@media screen and (max-width:1080px){
  .kasou #firstview {
    height: 135px;
}
}
@media screen and (max-width:768px){
  .kasou #firstview {
    height: 80px;
}
}
/*　====================== 下層共通 ======================　*/
/*　====================== single ======================　*/
.single #sec1{
background-image: url(../img/single-back-pc.webp);
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
}
.single #sec1 .container.flex{
-webkit-box-align: start;
    -ms-flex-align: start;
        align-items: start;
}
.single #sec1 .main-wrap{
background-color: #ffffffd2;
padding:20px;
width: 70%;
}
.single #sec1 .main-wrap h2{
font-size: 30px;
font-weight: 900;
margin-bottom: 20px;
}
.single #sec1 .main-wrap h3{
font-size: 25px;
font-weight: 600;  
margin-bottom: 20px;
}
.single #sec1 .main-wrap h4{
font-size: 20px;
font-weight: 600;
margin-bottom: 20px;
}
.single #sec1 .main-wrap time{
color: #B10000;
border: 1px solid #B10000;
padding:2px 5px;
margin: 0 0 20px auto;
width: -webkit-fit-content;
width: -moz-fit-content;
width: fit-content;
display: block;
}
.single #sec1 .main-wrap  img,.single #sec1 .main-wrap p{
margin-bottom: 20px;
}
.single #sec1 .side-wrap{
width: 25%;
}
.single #sec1 .side-wrap ul{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
-webkit-box-align: start;
    -ms-flex-align: start;
        align-items: start;
background-color: #ffffffd2;  
padding: 0 20px
}
.single #sec1 .side-wrap ul li{
border-bottom: 1px solid #b9b9b9;
width: 100%;
}
.single #sec1 .side-wrap ul li:last-child{
border-bottom: none;
}
.single #sec1 .side-wrap ul li .title{
font-weight: 900;
margin-bottom: 5px;
}
.single #sec1 .side-wrap ul li a{
display: block;
padding: 15px 0px;
}
.single #sec1 .side-wrap time{
color: #B10000;
border: 1px solid #B10000;
padding:2px;
margin: 0 0 0 auto;
width: -webkit-fit-content;
width: -moz-fit-content;
width: fit-content;
display: block;
}
@media screen and (max-width:1080px){
.single #sec1 .container.flex {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
row-gap: 15px;   
}
.single #sec1 .main-wrap{
padding:20px;
width: 100%;
}
.single #sec1 .side-wrap{
width: 100%;
}
.single #sec1 .main-wrap h2{
font-size: 20px;
margin-bottom: 10px;
}
.single #sec1 .main-wrap h3{
font-size: 18px;
margin-bottom: 10px;
}
.single #sec1 .main-wrap h4{
font-size: 16px; 
margin-bottom: 10px;
}
.single #sec1 .main-wrap  img,.single #sec1 .main-wrap p{
margin-bottom: 10px;
}
}
/*　====================== single ======================　*/
/*　====================== Thanks ======================　*/
.thanks #sec1 h2{
text-align: center;
font-weight: 600;
font-size: 30px;
margin-bottom: 30px;
}
.thanks #sec1 .menu-wrap{
margin-bottom: 30px;
}
.thanks #sec1 a{
display: block;
text-align: center;
width: -webkit-fit-content;
width: -moz-fit-content;
width: fit-content;
margin: 0 auto;
border-bottom: 1px solid #111;
}
/*　====================== Thanks ======================　*/