@charset "utf-8";
/* CSS Document */

/*
Theme Name: Shimadasuisan
Description: Habakiri の子テーマです ( テーマの説明 )
Author: AZLinks ( 作者名 )
Version: 1.0.0
License: GNU General Public License
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Template: habakiri
*/

html {margin-top: 0 !important;}
/* ヘッダー部分装飾　*/
body {
    font-family: Helvetica Neue,Helvetica,Arial,sans-serif;
    font-size: 14px;
    line-height: 2;
    color: #333;
    background-color: #fff;
}



img:hover {
opacity: 0.6;
filter: alpha(opacity=60);
-moz-opacity:0.6;
}

img{
	border-radius: 15px;
}

a:hover img{
    opacity:0.6;
    -moz-opacity:0.6;
    filter:alpha(opacity = 60);
}

.header {
  /*  background-image: url(img/header-border.jpg);*/
	background-color: #000 !important; 
}
.header-contents {
	text-align: center;
}

.habakiri-slider__item-content {
    color: #fff;
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    text-align: center;
    font-size: 30px;
    font-weight: bold;
	text-shadow: -1px -2px 3px #808080;
}

.head-logo{
	margin-left: 10%;
	max-width: 50%;
	margin-bottom: 10px;
	margin-top: 10px;
}

/*SP表示*/
@media (max-width: 767px) {
	.head-logo{
	margin: 0 auto;
	max-width: 50%;
	margin-bottom: 10px;
	margin-top: 10px;
}
}


/*メニュー装飾*/
/*menu*/
.menu{
    height: 20px;
    position: absolute;
    right: 20px;
    top: 20px;
    width: 30px;
    z-index: 999;
}
.menu__line{
    background: #000;
    display: block;
    height: 2px;
    position: absolute;
    transition:transform .3s;
    width: 100%;
}
.menu__line--center{
    top: 9px;
}
.menu__line--bottom{
    bottom: 0;
}
.menu__line--top.active{
    top: 8px;
    transform: rotate(45deg);
}
.menu__line--center.active{
    transform:scaleX(0);
}
.menu__line--bottom.active{
    bottom: 10px;
    transform: rotate(135deg);
}
/*gnav*/
.gnav{
    background: rgba(0,0,0,0.8);
    display: none;
    height: 100%;
    position: fixed;
    width: 100%;
    z-index: 98;
}
.gnav__wrap{
    align-items:center;
    display: flex;
    height: 100%;
    position: absolute;
    width: 100%;
	line-height: 0.8;
}
.gnav__menu{
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 600px;

}
.gnav__menu__item{
    margin: 20px 0 40px 100px;
    opacity: 0;
}
.gnav__menu__item a{
    color: #fff;
    font-size: 2.5em;
    font-weight: bold;
    text-decoration: none;
    transition: .5s;
}
.gnav__menu__item a:hover{
    color: #666;
}

.menu-desc{
	font-size: 0.5em;
	color:#CACACA;
}
/*SP表示*/
@media (max-width: 767px) {
.gnav__menu{
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 400px;
}
.menu-br{
		padding: 0px;
	}
.gnav__menu__item{
    margin: 20px 0 30px 100px;
    opacity: 0;
}
.gnav__menu__item a{
    color: #fff;
    font-size: 2.0em;
    font-weight: bold;
    text-decoration: none;
    transition: .5s;
}
}

/* メインコンテンツ部分装飾　*/

.top-concept{
	text-align: center;
	margin-bottom: 30px;
}

.top-concept-title{
	text-align: center;
	font-family: 'Kaisei Decol', serif;
	font-family: 'Kaisei Tokumin', serif;
	font-size: 3em;
	margin-bottom: 1.5em;
	line-height: 1.5em;
	color:rgba(43,51,72,1.00);
}
	
.top-concept-text{
	text-align: center;
	margin-bottom: 30px;
	padding: 0 10%;
	font-weight: 500;
	font-size: 0.9em;
}
	

.title-cont-top {
    text-align: center;
    margin: 10px 0 20px;
	clear: both;
}

.title-cont {
    text-align: center;
    margin: 60px 0 20px;
	clear: both;
}


.top-cont-bnr{
	    margin: 10px 0;
}

.cont01--top-main{
	margin-top: 30px;
    padding: 30px 0;
    background-image: url(img/header-top-bg.jpg);	
}

.cont02--top-main{
    padding: 60px 0 30px;
    background-image: url(img/bg-paper.jpg);	
}

.cont03--top-main{
    padding: 20px 0;
    background-image: url(img/bg-paper.jpg);	
}


.cont01--content-achool{
    padding: 20px 0;
	color: #fff;
	background: #e52d3d;
	text-align: center;
	font-size: 
}

.cont01--content-achool h2{
	font-size: 22px;
}

.cont02--content-achool{
    padding: 20px 0;
}
.cont02--content-gakusyu{
    padding: 20px 0;
}

.content-title h2{
	text-align: center;
	font-size: 34px;
	color: #72CBDF;
    margin: 60px 0 40px;
	font-weight: 900;
}

.content-title h3{
	text-align: center;
}

.content-title h4{
	text-align: center;
}


.teach-desc{
	font-size:  10px;
	line-height:1.4 ;
}

.teach-desc p{
	margin: 0;	
}

.teach-desc hr{
	margin: 5px 0;
	border-top:  1px dashed #8c8b8b;
}

.cont01--content-business{
	background-color: #00768D;
	color: #fff;
	padding: 40px 10px;
	margin: 40px 0; 
	
}

.fullwide-inner{
	max-width: 1261px;
	margin: 0 auto;
}

.cont02--content-access{
	background-color: #E3E3E3;
	color: #000;
	padding: 40px 10px;
	margin: 40px 0; 
	
}

.cont03--content-contactbox{
	background-color: #c8bb9b;
	color: #fff;
	text-align: center;
	padding: 40px 10px;
	margin: 40px 0; 
	
}

.cont04news--top-main{
	background: #c4f5f7;
	
}

h1,h2,h3,h4,h5,h6 {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
}


hr {
    margin-top: 23px;
    margin-bottom: 23px;
    border: 0;
    border-top: 1px solid #eee
}

.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small {
    font-weight: 400;
    line-height: 1;
    color: #777
}

.h1,.h2,.h3,h1,h2,h3 {
    margin-top: 5px;
    margin-bottom: 11.5px
}

.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small {
    font-size: 65%
}

.h4,.h5,.h6,h4,h5,h6 {
    margin-top: 11.5px;
    margin-bottom: 11.5px
}

.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small {
    font-size: 75%
}

.h1,h1 {
    font-size: 33px
}

.h2,h2 {
    font-size: 38px;
}

.h3,h3 {
    font-size: 24px
}

.h4,h4 {
    font-size: 18px
}

.h5,h5 {
    font-size: 14px
}

.h6,h6 {
    font-size: 12px
}

p {
    margin: 0 0 11.5px
}

/*SP表示*/
@media (max-width: 767px) {
.h2,h2 {
    font-size: 8vw;
}
}

/*　メインコンテンツ画像PC/SP切り替え　*/

/*SP表示*/
@media (max-width: 767px) {
	
	.hidden-xs{
		display: none;
	}
	.hidden-sm{
		display: none;
	}
	
/*	ボタン*/
	.btn-contact-lrg{
	color: #fff;
    background-color: #e73743;
    border-color: #e73743;
    font-size: 18px;
	font-weight: 600;
    padding: 20px 0;
    width: 90%;
    margin: 0 auto;
}
	
/*各ページヘッダー部分*/
	.header-contents{
		display: none;
	}
	
/*トップページコンセプト*/
.top-concept-title{
	font-size: 1.3em;
}
	
}
/*PC表示*/
@media (min-width: 768px) {
	.hidden-md{
		display: none;
	}
	.hidden-lg{
		display: none;
	}
	
	/*	ボタン*/
	.btn-contact-lrg{
	color: #fff;
    background-color: #e73743;
    border-color: #e73743;
    font-size: x-large;
	font-weight: 600;
    padding: 20px 0;
    width: 60%;
    margin: 0 auto;
}	
	
	
/*各ページヘッダー部分*/
	.header-contents-sp{
		display: none;
	}
}


/* コンテンツボタン */

	.btn-content-green{
	color: #fff;
    background-color: #7fcac3;
    border-color: #7fcac3;
    font-size: 18px;
	font-weight: 600;
    padding: 20px 0;
    width: 100%;
    margin: 0 auto;
}
	.btn-content-red{
	color: #fff;
    background-color: #e73743;
    border-color: #e73743;
    font-size: 18px;
	font-weight: 600;
    padding: 20px 0;
    width: 100%;
    margin: 0 auto;
}
	.btn-content-purple{
	color: #fff;
    background-color: #9475cc;
    border-color: #9475cc;
    font-size: 18px;
	font-weight: 600;
    padding: 20px 0;
    width: 100%;
    margin: 0 auto;
}
	.btn-content-orange{
	color: #fff;
    background-color: #ffb74e;
    border-color: #ffb74e;
    font-size: 18px;
	font-weight: 600;
    padding: 20px 0;
    width: 100%;
    margin: 0 auto;
}
	.btn-content-blue{
	color: #fff;
    background-color: #1a76d2;
    border-color: #1a76d2;
    font-size: 18px;
	font-weight: 600;
    padding: 20px 0;
    width: 100%;
    margin: 0 auto;
}




/*トップページ新着情報*/

.top-news{
	margin-bottom: 40px;
}
.top-news ul{
    padding-inline-start: 0px;
	padding-left:0px;
}

#npcatch li {
	display: inline-block;
	margin: 0;
	overflow: hidden;
	clear: both;
	vertical-align: top;
	max-width: 49%;
}

#npcatch li img{
	height: auto;
}

#npcatch li a {
	display: table;
	padding: .5rem 0;
	width: 100%;
}

#npcatch img {
	float: left;
	padding: 0 .5rem 0 0;
}

#npcatch .title {
	overflow: hidden;
	display: block;
	clear: both;
}
@media screen and (min-width: 768px){
	#npcatch li {
	display: inline-block;
	max-width: 32%;
}
}



/*ボタン*/
.square_btn_lrg {
	margin-top: 10px;
    display: inline-block;
    padding: 1.5em 2.5em;
    text-decoration: none;
    color: #222222;
    border: solid 2px #222222;
    border-radius: 3px;
    transition: .4s;
}

.square_btn_lrg:hover {
    background: #ffffff;
    color: #6eb936;
}

/*トップページ新着情報 ここまで*/


/* フッター部分装飾　*/

.widget_nav_menu ul li{
	padding: 0 !important;
}

.footer-widget{
	margin-bottom: 40px;
}

.footer {
   background: url(img/footer_illust.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size:contain;
	color: #FFFFFF;
	font-size: 12px;
}

.footer a{
	color: white;
}


.footer-cont{
	padding: 10% 0 25px;
}

.footer-sns{
	padding: 5px 0;
}

.footer-sns img{
	padding: 15px;
}

.copyright {
    background: none;
    color: #fff;
    font-size: 18px;
    padding: 15px 0;
}

.footer-widget-area {
	font-size: 12px;
    padding: 60px 0 25px;
    font-weight: 600;
}

.copyright {
    background: none;
    color: #fff;
    font-size: 16px;
    padding: 15px 0;
    text-align: center;
    border-top: solid thin;
}

@media screen and (min-width: 768px){
	.footer-suponcer-sp{
		display: none;
}
}

@media screen and (max-width: 768px){
	.footer-cont{
		padding-bottom: 100px;
	}

/*運営会社概要テーブル*/
table {
  margin: 20px auto;
}
.tbl-r02{
	width: 100%;
}
.tbl-r02 th {
  background: #e2e2e2;
  border: solid 1px #fff;
  color: #000;
  padding: 10px;
	font-weight: normal;
}
.tbl-r02 td {
　border: solid 1px #000;
  padding: 10px;
}
 
@media screen and (max-width: 640px) {
  .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  .tbl-r02 {
    width: 100%;
  }
  .tbl-r02 th,
  .tbl-r02 td {
　　border-bottom: none;
    display: block;
    width: 100%;
  }
}

/*特定商取引法テーブル*/
table {
  margin: 20px auto;
}
.tbl-r03{
	width: 100%;
}
.tbl-r03 th {
  background: #e2e2e2;
  border: solid 1px #fff;
  color: #000;
  padding:15px 10px;
	font-weight: normal;
	width: 25%;
    font-size: 0.8em;
    text-align: center;
}
.tbl-r03 td {
　border: solid 1px #000;
  padding: 15px 10px;
}
 
@media screen and (max-width: 640px) {
  .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  .tbl-r03 {
    width: 100%;
  }
  .tbl-r03 th,
  .tbl-r03 td {
　　border-bottom: none;
    display: block;
    width: 100%;
  }
}



/*　コンテンツ　動画表示　*/
.MovieArea {
    position: relative;
    padding-top: 56.65%;
    background-color: #eee;
}

.MovieArea__movie {
    position: relative;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.MovieArea__movie iframe {
    width: 100%;
    height: 100%;
}


/*トップページYoutube表示*/

	.toppage-intro{
		
	}

	.youtube-box{
		background-image: url(/image/bg-top-oyster.jpg);
		background-repeat: no-repeat;
		background-color: #000000;
		background-size: contain;
		padding-top: 38%;
		
	}
	.youtube-box h2{
		text-align: center;
		color: #FFFFFF;
		margin-bottom: 30px;
	}

/*SP表示*/
@media (max-width: 767px) {
	.youtube-box h2{
		text-align: center;
		color: #FFFFFF;
		margin-bottom: 30px;
		font-size: 120%;
	}

		
	}
	
}
/**
 * Offcanvas navigation
 */
.off-canvas-nav {
  margin: 0;
  overflow: auto;
  overflow-x: hidden;
  padding: 0;
  width: 300px;
  position: fixed;
  top: 0;
  bottom: 0;
	border: none;
  /**
	 * Theme: Dark
	 */ }
  @media (max-width: 320px) {
    .off-canvas-nav {
      width: 220px; } }
  .off-canvas-nav ul, .off-canvas-nav li {
    list-style: none;
    display: block;
    margin: 0;
    padding: 0; }
  .off-canvas-nav a {
    display: block;
    text-decoration: none; }
    .off-canvas-nav a:hover, .off-canvas-nav a:active, .off-canvas-nav a:focus {
      text-decoration: none; }
  .off-canvas-nav--dark {
    background-color: #e2e2e2;
    /* border-top: 1px solid #3c3c3c; */
    /* border-bottom: 1px solid #2f2f2f; */
    /**
		 * First hierarchy
		 */
    /**
		 * Second hierarchy later
		 */
    }
    .off-canvas-nav--dark li {
      border-top: none;/*1px solid #3c3c3c;*/
      border-bottom:none;/* 1px solid #2f2f2f;*/ }
    .off-canvas-nav--dark a {
      color: #000;
      padding: 10px 20px; }
      .off-canvas-nav--dark a:hover, .off-canvas-nav--dark a:active, .off-canvas-nav--dark a:focus {
        background-color: #848484;
        color: #fff; }
    .off-canvas-nav--dark > ul, .off-canvas-nav--dark > * > ul {
      /* border-bottom: 1px solid #3c3c3c; */
      }
    .off-canvas-nav--dark .current-menu-item > a,
    .off-canvas-nav--dark .current_page_ancestor > a,
    .off-canvas-nav--dark .current-page-ancestor > a,
    .off-canvas-nav--dark .current_page_item > a,
    .off-canvas-nav--dark .current_page_parent > a {
      background-color: #848484;
      color: #fff; }
    .off-canvas-nav--dark ul ul {
      border-top: none;/* 1px solid #2f2f2f;*/
      border-left: none;/* 1px solid #2f2f2f;*/
		border: none;
      margin-bottom: -1px;
      margin-left: 3em;
      opacity: 1;
      visibility: visible; }
      .off-canvas-nav--dark ul ul li {
        border-left: 1px solid #3c3c3c; }


/*テーブルCSS*/
table {
  margin: 20px auto;
}
.tbl-r02 th {
	background: #2B3348;
  border: solid 1px #ccc;
  color: #fff;
  padding: 10px;
	width: 150px;
}
.tbl-r02 td {
　border: solid 1px #ccc;
  padding: 10px;
}
.thead th{
  background:#DADADA;
	color: #000;
	}
.oyst-name th{
	width: 12%;	
}

@media screen and (max-width: 640px) {

	.thead{
		display: none;
	}
  .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  .tbl-r02 {
    width: 95%;
  }
  .tbl-r02 th,
  .tbl-r02 td {
　　border-bottom: none;
    display: block;
    width: 100%;
  }
}



/*ラジオタイスケ テーブルCSS*/
.radio-info{
	font-size: 1.2em;
	font-weight: bold;
}

table {
  margin: 20px auto;
}
.tbl-r03{
	width: 100%;
}
.tbl-r03 th {
	background: #E41F19;
  border: solid 1px #ccc;
  color: #fff;
  padding: 10px;
}
.tbl-r03 td {
　border: solid 1px #ccc;
  padding: 10px;
}
.thead th{
  background:#DADADA;
	color: #000;
	}
.radio-time th{
	width: 12%;	
}

@media screen and (max-width: 640px) {

.tbl-r03{
	width: 100%;
}
	.thead{
		display: none;
	}
  .radio-last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  .tbl-r03 {
    width: 95%;
  }
  .tbl-r03 th,
  .tbl-r03 td {
　　border-bottom: none;
    display: block;
    width: 100%;
  }
}


/*トップページ　コンテンツCSS*/
.cont-title{
	font-size: 160%;
	font-weight: bold;
	line-height: 1.5em;
}

.button a {
	background: url(img/img-arrow.png) right 15px center no-repeat, url(img/img-button-bg.png);
	border-radius: 30px;		/* CSS3è‰æ¡ˆ */
	-webkit-border-radius: 30px;	/* Safari,Google Chromeç”¨ */
	-moz-border-radius: 30px;	/* Firefoxç”¨ */
	min-width: 300px;
	margin: 20px auto 0;
	padding: 10px 0;
	color: #000;
	font-weight: bold;
	font-size: 110%;
	display: table;
	text-decoration: none;
}
.cont-top-discription{
	padding: 0 30px;
	margin: 20px 0;
}

.font-family: 'Kaisei Decol', serif;

@media screen and (min-width: 480px) {
.info dt {clear: left;float: left;}
.info dd {margin-left: 0.5em;}
}

.top-cont-box {
	 max-width:1360px;
	 min-height:534px;
	 margin: 0 auto 100px;
	 position:relative;
}

.top-cont-box-img {
position: absolute;
top: 0;
left: 0;
}

.top-cont-box-text {
    position: relative;
    z-index: 2;
    float: right;
    width: 450px;
    margin-top: 40px;
    padding: 50px 0 60px;
	background: url(/image/back-blue.png) repeat;
	text-align: center;
	color: #fff;
}

.top-cont-box-img2 {
position: absolute;
top: 0;
right: 0;
}

.top-cont-box-text2 {
    position: relative;
    z-index: 2;
    float: left;
    width: 450px;
    margin-top: 40px;
    padding: 60px 0;
	background: url(/image/back-brown.png) repeat;
	text-align: center;
	color: #fff;
}

@media screen and (max-width: 1000px) {
.top-cont-box {
	 max-width:100%;
	 min-height: inherit;
	 margin: 0 auto 15%;
	 position:relative;
}
.top-cont-box-img,
.top-cont-box-img2 {
position: static;
}

.top-cont-box-img img,
.top-cont-box-img2 img {
	width: 100%;
}

.top-cont-box-text {
    position: relative;
    z-index: 2;
    width: 90%;
    margin: -30px 5% 50px;
    padding: 7% 2%;
	background-size: 40%, 80%, auto;
}
.top-cont-box-text2 {
    position: relative;
    z-index: 2;
    width: 90%;
    margin: -30px 5% 50px;
    padding: 7% 2%;
	background-size: 40%, 80%, auto;
}
}


.topsponsor {
	text-align: center;
	color: #FFF;
	font-weight: bold;
	margin: 5% auto 0;
	font-size: 120%;
}

.topsponsor img {
	max-width: 100%;
	max-height: 100%;
}


.crossword {
	text-align: center;
	color: #FFF;
	margin: 50px auto 100px;
}

.crosswordT01 {
	font-size: 180%;
	font-weight: bold;
	margin-bottom: 10px;
}

.crosswordT02 {
	font-size: 130%;
	font-weight: bold;
	line-height: 1.5;
	margin-top: 20px;
}

/*SP表示*/
@media (max-width: 767px) {
.button a {
	min-width: 240px;
	font-size: 80%;
	text-align: center;
}
	
.cont-top-discription{
	padding: 0 10px;
	margin: 20px 0;
}
	
.cont-title{
	font-size: 130%;
	font-weight: bold;
	line-height: 1.5em;
	padding-left: 10px;
}

.top-cont-box-text {
	text-align: left;
	}
	

.top-cont-box-text2 {
	text-align: left;
	}
	
}


/*グルメリスト*/
.contents-gourmet{
	max-width: 1200px;
	margin: 0 auto;
}
.contents-gourmet-list{
	max-width: 1200px;
	margin:  0 auto;
	width: 96%;
}
.cont-list-gourmet{
	background: none;
	line-height: 1.3;
	font-size: 20px;
	padding-left: 0;
}

.cont-supporter{
	max-width: 1200px;
	margin: 0 auto;
	text-align: center;
}

.sponsor-text{
	font-size: 0.8em;
}

.title-gourmet-list{
	font-size: 1.1em;
	font-weight: 700;
}

.lead-gourmet-list{
	font-size: 1em;
	color: #1B1B1B;
}


@media (min-width: 1200px){
.container-fluid {
    width: 1250px;
}
}
@media (min-width: 1500px){
.container-fluid {
    width: 1550px;
}
}

/*スマホフッター部分のメニュー*/
/* 初期状態では非表示 */
.bottom-menu {
  display: none;
}

/* スマートフォンサイズのみ表示 */
@media (max-width: 767px) {
	
	.img-logo{
		max-width: 50%;
	}
	.img-logo-sns{
		max-width: 15%;
	}
	
	
  .bottom-menu {
    display: flex;
    position: fixed;
    bottom:0px;
    left: 0;
    width: 100%;
    height: auto;
    background-color: #ffffff;
    border-top: none;
    z-index: 999;
	  background-color: #000;
	  color: #fff;
  }

  .menu-item {
    flex: 1;
    text-align: center;
    padding: 5px 0;
    text-decoration: none;
    color: #333;
    font-size: 12px;
  }

  .menu-icon {
    display: block;
    font-size: 20px;
    margin-bottom: 2px;
  }

  .menu-item:last-child {
    border-right: none;
  }

  .menu-item:active {
    background-color: #f0f0f0;
  }
}

/*header*/
body.page--top {
  .header-logo {
    display: none;
  }
  #header {
    background: transparent;
  }
}



#header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 13px 0 3px 0;
  z-index: 99;
  background-color: #fff;

  @include contentSP {
    padding:em(7px) 0;
  }
  .container {
    display: flex;
    justify-content: space-between;
  }
  .header-menu {
    margin-left: auto;
    padding-right: per-num(14); 
  }
  .header-logo {
    padding-top: 3px;
    width: 189px;
    @include contentSP {
      width: 120px;
    }
  }
  .humburger-menu {
    position: relative;
    display: block;
    background-color: #000;
    width: 53px;
    height: 50px;
    z-index: 999;
    transition: all .3s;
    @include contentSP {
      width: 37px;
      height: 35px;
    }
    .humburger-menu-inner {
      position: relative;
      width: 27px;
      height: 18px;
      display: flex;
      flex-direction: column;
      align-items: center;
      margin: auto;
      @include contentSP {
        width: 19px;
        height: 13px;
      }
    }
    .line {
      position: absolute;
      display: block;
      width: 100%;
      height: 2px;
      background-color: #fff;
      border-radius: 10px;
      transition: all .3s;
      @include contentSP {
        height: 1px;
      }
    }
    .line-1 {
      top: 0px;
    }
    .line-2 {
      top: 50%;
      transform: translateY(-50%);
      @include contentSP {
        top: 6px;
      }
    } 
    .line-3 {
      bottom: 0px;
      @include contentSP {
        top: 12px;
      }
    }
    &.js-active {
      background-color: transparent;
      .line-1 {
        transform: translateY(12px) rotate(-45deg);
        @include contentSP {
          transform: translateY(7px) rotate(-45deg);
        }
      }
      .line-2 {
        opacity: 0;
      }
      .line-3 {
        transform: translateY(-4px) rotate(45deg);
        @include contentSP {
          transform: translateY(-5px) rotate(45deg);
        }
      }
    }
  }

  .opened-menu {
    visibility: hidden;
    opacity: 0;
    padding-top: per-num(158);
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 2;
    transition: all .5s;
    overflow: scroll;
    .header-nav {
      display: flex;
      margin-top: 100px;
      width: 100%;
      @include contentSP {
        padding-left: sp-num(120);
        display: block;
        margin-top: 0;
      }
    }
    .nav-list {
      width: 50%;
      @include contentSP {
        width: 100%;
      }
      .nav-item {
        padding-bottom: 20px;
        color: #fff;
        @include fbold;
        @include fsize(28);
        line-height: calc(28/21);
        @include contentSP {
          padding-bottom: em(20px);
          @include fsize(18);
          line-height: 1em;
        }
        &.sub-menu {
          @include fsize(22);
          padding-left: 1em;
          @include contentSP {
            @include fsize(18);
          }
        }
        &.sns-list {
          display: flex;
          gap: per-num(24);
          @include contentSP {
            margin-top: num(35px);
            gap: sp-num(15);
            img {
              width: 25px;
              max-width: 50px;
              min-width: 25px;
            }
          }
        }
      }
      &.left {
        padding-left: per-num(234);
        @include contentSP {
          padding-left: 0;
        }
      }
    }
    &.js-active {
      visibility: visible;
      opacity: 1;
    }
  }
}

/*スマホ表示メニュ*/
@media (max-width: 767px) {
.opened-menu {
    width: 100%;
	}
}



/*ヘッダーナビ*/
#header .opened-menu .nav-list .nav-item {
    padding-bottom: 20px;
    color: #fff;
    font-weight: 600;
    font-size: 1.75rem;
    line-height: 1.3333333333;
}

ul {
    list-style: none;
}

body a {
    text-decoration: none;
    color: inherit;
}


/*メインビジュアル*/
body.page--top #header {
    background: transparent;!important
}

body.page--top .main-visual-top {
    position: relative;
    padding-top: 65.8888888889%;
    overflow: hidden;
}

body.page--top .main-visual-top .video {
    min-height: 100%;
    min-width: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
	filter: brightness(0.7) contrast(0.9);
}

body.page--top .main-visual-top .page-logo {
    opacity: 0;
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: 1s ease all;
}

body.page--top .main-visual-top .page-logo.is-show {
    transform: translate(-50%, -50%);
    opacity: 1;
}

.mv-desc{
	    color: #fff;
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    padding-top: 0.5em;
    position: absolute;
    line-height: 1.8em;
    font-size: clamp(1.2rem, 2.5vw, 3.5rem);
}

/*スマホ表示ビデオ*/
@media (max-width: 767px) {
body.page--top .main-visual-top {
    position: relative;
    padding-top: 160.6382978723%;
    overflow: hidden;
}
}

/*トップページ以外ではムービーを表示しない*/
.main-visual-top.content-low {
  display: none;
}


/*追加CSS*/
/*トップページ*/
.top-concept{
background:  linear-gradient(
    18deg,         /* 斜めの角度: 右上↘左下 に流れる角度 */
    #ffd500 28%,    /* 0%→25% を黄色 */
    #ffffff 28%,    /* 25%→75% を白 */
    #ffffff 72%,    /* 75%→100% を黄色 */
    #ffd500 72%
  );
background-position: 0% !important;
}

.top-concept-desc{
    display: flex;
    align-items: center;
	height: 300px;
}

.top-concept-desc p{
	line-height: 3rem !important;
	color: black;
	font-weight: 600;
}

.concept-h2 {
	margin: 0 auto;
    text-align: center;
    margin-top: 5rem;
	margin-bottom: 3rem;
}
.concept-h2 h2 {
  display: inline-block; /* テキストの幅に合わせる */
  position: relative;
  /* お好みでフォントサイズやスタイルを設定 */
}

.concept-h2 h2::after {
  content: "";
  display: block;
  width: 40%;            /* テキスト幅の50% */
  height: 4px;           /* 線の太さ（必要に応じて調整） */
  background-color: #00768D; /* 線の色（必要に応じて調整） */
  margin: 0.5em auto 0;  /* テキスト下にスペースを空け、中央寄せ */
}



.concept-h3 h3 {
  display: flex;
  align-items: center;
  /* 必要に応じて中央寄せにする場合 */
  justify-content: center;
  /* お好みでフォントサイズやスタイルを設定 */
}


.concept-h3 h3::after {
  content: "";
  flex-grow: 1;
  height: 1px;
  background-color: #00768D;
  margin-left: 10px;
}



.concept-h3-w h3 {
  display: flex;
  align-items: center;
  /* 必要に応じて中央寄せにする場合 */
  justify-content: center;
  /* お好みでフォントサイズやスタイルを設定 */
}


.concept-h3-w h3::after {
  content: "";
  flex-grow: 1;
  height: 1px;
  background-color: #fff;
  margin-left: 10px;
}


/*ボタン*/
.btn {
	font-size: 12px;
	border: 1px solid #666;
	text-align: center;
	margin: 10px auto;
    padding: 0.8rem 4rem;
	
	display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    text-decoration: none;
    color: #333;
    transition: transform 0.2s ease;
}


.btn a {
	color: #666;
	display: block;
	width: 100%;
	height: 100%;
	padding: 10px;
	box-sizing: border-box;
}



.btn-w {
	font-size: 12px;
	border: 1px solid #fff;
	text-align: center;
	margin: 10px auto;
    padding: 0.8rem 4rem;
	
	display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    text-decoration: none;
    color: #fff;
    transition: transform 0.2s ease;
}

.btn-bl {
	font-size: 12px;
	border: 1px solid #00768D;
	text-align: center;
	margin: 10px auto;
    padding: 0.8rem 4rem;
	background-color: #006073;
	display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    text-decoration: none;
    color: #fff;
    transition: transform 0.2s ease;
}

.btn-2 a {
	color: #fff;
	display: block;
	width: 100%;
	height: 100%;
	padding: 10px;
	box-sizing: border-box;
}





.btn-ra:hover{
    transform: translateY(-4px) scale(1.1);
    color: #00768D;
  }

.btn-ra {
	border-radius: 15px;
	position: relative;
}
.btn-ra a::after {
	content: "";
	display: block;
	position: absolute;
	background-image: url('arrow.png');
	background-size: 100%;
	width: 7px;
	height: 17px;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
}

/*Makeshoop用のフローティングボタン*/


/*フローティングアニメーション*/
.floating-button {
  position: fixed;
  bottom: 20px;
  right: 20px;
  padding: 12px 16px;
  background-color:transparent;
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 16px;
  z-index: 1000;
  transition: opacity 1s ease;
}

.floating-button.hide {
  opacity: 0;
  pointer-events: auto;
}

/* スマホ*/

@media (max-width: 767px) {
.floating-button {
	right: 0x;
  bottom: 80px;
	max-width:50%;
	}
}

.chui-text{
	color: orangered;
	font-weight: 600;
}
.impact{
	font-size: 1.1em;
	font-weight: 700;
	
}
	
	
/*ふわっと表示*/
/* 初期状態：透明で下方向に少しずれている */
.fade-slide {
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 1s ease, transform 1s ease;
}

/* 表示トリガー後の状態 */
.fade-slide.in-show {
  opacity: 1;
  transform: translateY(0);
}
	
/*新着情報*/
.newinfo {
    margin: 10px 0;
    font-size: 100%;
    word-break: break-all;
    overflow: hidden;
    text-align: left;
}

/*営業日カレンダー*/
.kakigoya-time{ 
	font-size: 16px;
    text-align: center;
}