@charset "utf-8";


 Theme Name: 活魚料理せんだい 様
 Description: 活魚料理せんだい 様 ONLY
 Theme URI:  テーマの URL
 Author: CUBIC-DESIGN
 Author URI:  https://www.cub-d.com
 Version: 2.0
 License: (c)CUBIC・DESIGN
 License URI: https://www.cub-d.com


/* CSS Document */

/*******　角丸のCSS　*********************************************
/*	  border-radius: 10px;        /* CSS3草案 */  
/*    -webkit-border-radius: 10px;    /* Safari,Google Chrome用 */  
/*    -moz-border-radius: 10px;   /* Firefox用 */ 
/****************************************************************/

/***************************************************************
/*****共通部分のスタイル
/****************************************************************/

/* 画面の表示に関するCSS */
* {
	margin: 0px;
	padding: 0px;
	text-decoration: none;
}

html,
body {
    width: 100%;
}

/* -終わり-　画面の表示に関するCSS */

.clear_fix:after {
	 content:".";
	 display: block;
	 height: 0px;
	 clear: both;
	 line-height: 0;
	 visibility: hidden;
}

.clear {
	line-height: 0px;
	background-color: #00ffff;
	clear: both;
	height: 0px;
	visibility: hidden;
}

body {
	font-size: 16px;
	font-family:'Noto Sans JP', serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.8;
	margin: 0px;
	padding: 0px;
	min-width: 1700px;
}

h1,h2,h3 {
	font-weight: normal;
}

img {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	margin: 0px;
	padding: 0px;
	display: block;
}

a {
	text-decoration: none;
}

.left {
	float: left;
}

.right {
	float: right;
}

.center,
.aligncenter {
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}

.align_center {
	text-align: center;
}

.align_left {
	text-align: left;
}

.align_right {
	text-align: right;
}

.wf-mplus1p {
	font-family: 'Open Sans', sans-serif;
}

@media screen and (min-width: 641px){	
  .br-pc { display:block; }
  .br-sp { display:none; }
  .pc_none { display:none; }
}

@media screen and (max-width: 640px){	
  .br-pc { display:none; }
  .br-sp { display:block; }
  .sp_none { display:none; }
}

b, strong {
   font-weight: normal;
}

i, em {
   font-style: normal;
}

.fadein {
    opacity: 0;
    /*transform: translate(0,0);　モーダル使用時位置の基準がおかしくなるため*/
    transition: all 1.5s;
}

.fadein-left {
    transform: translate(-30px,0);
}

.fadein-right {
    transform: translate(30px,0);
}

.fadein-up {
    transform: translate(0,-30px);
}

.fadein-bottom {
    transform: translate(0,30px);
}

.scrollin {
    opacity: 1 !important;
    /*transform: translate(0, 0) !important;　モーダル使用時位置の基準がおかしくなるため*/
}

/****************************************************************
/* headerに関するCSS */

body.home {
	margin: 0px;
	background-color: #FFF;
}

nav {
    display: block;
    width: 180px;
    height: 100%;
    position: fixed;
    top: 0px;
    left: 0px;
    color: #FFF;
    text-align: center;
    padding-top: 180px;
    border-right-width: 1px;
    border-right-style: solid;
    border-right-color: #FFF;
    mix-blend-mode: difference;
	transition: color 0.3s, mix-blend-mode 0.3s;
    z-index: 200;
}

nav.white-mode {
	mix-blend-mode: normal;
	color: #000;
}

nav.gray-mode {
	mix-blend-mode: normal;
	color: #FFF;
}

nav ol {
	position: relative;
}

nav ol li {
	margin-bottom: 14%;
	transition: .3s;
}

nav ol li:hover {
	text-shadow: 0 0 8px rgba(255,255,255,0.6);
}

nav ol li p {
	font-family: "Hina Mincho", serif;
	font-weight: 400;
	font-style: normal;
	font-size: 18px;
	color: #FFF;
}

nav ol li span {
	display: block;
	font-family: "Noto Serif JP", serif;
	font-weight: 400;
	font-style: normal;
	font-size: 12px;
	padding-bottom: 23px;
	position: relative;
	color: #AAA;
}

nav ol li span::after {
	content: "";
	display: inline-block;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #666;
	position: absolute;
	top: 35px;
	left: 50%;
	-webkit-transform : translate(-50%,0%);
	transform : translate(-50%,0%);
}

#rightbar {
    position: fixed;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 100%;
    width: 50px;
    background-color: #d80100;
    z-index: 200;
}

#rightbar span {
	-webkit-writing-mode: vertical-rl; /* Safari用 */
	writing-mode: vertical-rl;
	transform: rotate(180deg);
	font-family: "Noto Serif JP", serif;
	font-size: 13px;
	line-height: 50px;
	color: #FFF;
	padding-bottom: 420%;
}

#rightbar span a {
	color: #FFF;
	transition: .3s;
}

#rightbar span a:hover {
	color: #000;
}

.rightbar_top_black {
	display: block;
	-webkit-writing-mode: vertical-rl; /* Safari用 */
	writing-mode: vertical-rl;
	background-color: #000;
	box-sizing: border-box;
	line-height: 50px;
	height: 250px;
	padding-top: 45px;
	font-family: "Hina Mincho", serif;
	color: #FFF;
	position: relative;
	transition: .3s;
}

.rightbar_top_black:hover {
	background-color: #666;
}

.rightbar_top_black::before {
	content: url(images/rightbar_top_square.png);
	position: absolute;
	top: 14px;
	left: 50%;
	-webkit-transform : translate(-50%,0%);
	transform : translate(-50%,0%);
}

.rightbar_top_black::after {
	content: "";
	display: inline-block;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #FFF;
	position: absolute;
	bottom: 14px;
	left: 50%;
	-webkit-transform : translate(-50%,0%);
	transform : translate(-50%,0%);
}

.side_menu_logo {
    position: fixed;
    top: 23px;
    left: 56px;
    width: 64px;
    display: inline-block;
    margin-bottom: 70px;
    transition: .3s;
    z-index: 200;
}

.side_menu_logo:hover {
	opacity:0.9;
}

.side_menu_logo_top_redblack {
	margin-bottom: 0px;
}

.side_menu_logo_under {
	position: absolute;
    top: -50px;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    width: 64px;
	z-index: 1;
	mix-blend-mode: difference;
}

/* 白背景 */
.white-bg .side_menu_logo_under {
  mix-blend-mode: normal;
}

/* グレー背景 */
.gray-bg .side_menu_logo_under {
  mix-blend-mode: normal;
  filter: invert(1);
}

body.home section img {
	max-width: 1300px;
	margin-right: auto;
	margin-left: auto;
}

/* -終わり- headerに関するCSS */

/****************************************************************
/* contentに関するCSS */
article {
	background-repeat: repeat-x;
	background-position: top center;
}

/****************************************************************


/***************************************************************
/*****footerのスタイル
/****************************************************************/

footer {
    width: 100%;
    min-width: 1700px;
    min-height: 1080px;
    background-image: url(images/footer_bg.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: relative;
    
    /* 追加：子要素である .stripe を footer と同じ高さまで100%強制的に引き伸ばす設定 */
    display: flex;
    flex-direction: column;
}

.footer_information {
    box-sizing: border-box;
    position: relative; /* relativeのままで大丈夫です */
    
    /* 【超重要】見た目だけずらす top / left を完全に廃止します */
    /* top: 87px;  ←削除 */
    /* left: 355px; ←削除 */
    
    /* 代わりに、要素の「位置そのもの」を正しく動かします */
    padding-top: 87px;    /* 上の余白（これで上に斜線が回り込みます） */
    margin-left: 355px;   /* 左の位置調整 */
    padding-bottom: 80px; /* Googleレビューの下に作る安全な余白 */
    
    width: 607px;
    font-family: "Noto Serif JP", serif;
    color: #FFF;
    list-style-type: none;
    display: flex;
    justify-content: space-between;
    
    /* 斜線より確実に手前に出す */
    z-index: 1; 
}

.footer_information dl {
    width: 404px;
}

.footer_information dl a {
    color: #FFF;
	transition: .3s;
}

.footer_information dl a:hover {
    color: #999;
}

.footer_information dt {
	font-size: 13px;
	color: #CCC;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #999;
}

.footer_information dt:not(:last-child) {
	margin-bottom: 22px;
}

.footer_information dd {
	font-size: 18px;
	color: #FFF;
	line-height: 1.4;
	padding-bottom: 30px;
	margin-bottom: 25px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #999;
}

.gokakunin {
	display: inline-block;
    position: relative;
    line-height: 31px;
    background-color: rgba(255, 255, 255, 0.3);
    width: 100%;
	box-sizing: border-box;
	padding-left: 10px;
}

.gokakunin::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 140px;
	-webkit-transform: translate(0,-50%);
	transform: translate(0,-50%);
	background-image: url(images/footer_yazirushi.png);
	background-repeat: no-repeat;
	background-position: center center;
	height: 14px;
	width: 27px;
}

.footer_information dd span {
	font-size: 23px;
}

.footer_logo {
	padding-top: 65px;
	transition: .3s;
}

.footer_logo:hover {
	transform: scale(1.025);
}

/***************************************************************
/*****トップページのスタイル
/****************************************************************/

#main_box {
    width: 100%;
    min-width: 1700px;
    height: 1080px;
    object-fit: cover;
    position: relative;
}

.stripe {
    position: relative;
    width: 100%;
    
    /* 変更・追加部分 */
    height: auto;       /* レビューが伸びた時は自動で下に伸びる */
    min-height: 100%;   /* 初期状態で中身が少なくても、footerの一番下まで強制的に引き伸ばす */
    flex-grow: 1;       /* flexの中でいっぱいに広がるお守り */
}

.stripe::after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0.55;
    background-image: url(images/stripe_bg.jpg);
    background-repeat: repeat;
    z-index: 0; 
    pointer-events: none; 
}

#main_box div img:first-child {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    min-width: 100%;
    min-height: 100%;
    z-index: -10;
	object-fit: cover;
}

/* スクロールダウンの位置 */
.scroll {
	font-family: "Noto Serif JP", serif;
	position: absolute;
	left: 50%;
	bottom: 205px;
	-webkit-transform : translate(-50%,0);
	transform : translate(-50%,0);
	color: #FFF;
	z-index: 1;
}
/* 線のアニメーション部分 */
.scroll::before {
	animation: scroll 2s infinite;
	background-color: #FFF;
	bottom: -205px;
	content: "";
	height: 205px;
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	width: 1px;
}
/* 線のアニメーション */
@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  51% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
}

#main_box div img:nth-child(2) {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    width: 523px;
	z-index: 1;
}

.daisuki {
	width: 100%;
	min-width: 1700px;
	height: 1080px;
	background-image: url(images/daisuki_bg.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	position: relative;
}

.daisuki::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 313px;
	background: linear-gradient(
    to bottom,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,1) 100%
  );
}

.like_fish {
	position: absolute;
	top: 40%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	height: 700px;
	width: 1123px;
	font-family: "Noto Serif JP", serif;
	color: #FFF;
	-webkit-writing-mode: vertical-rl; /* Safari用 */
	writing-mode: vertical-rl;
	font-size: 18px;
	z-index:1;
}

.tonikaku {
	font-size: 56px;
	line-height: 1.2;
	margin-left: 100px;
}

.tonikaku span {
	font-size: 80px;	
}
.tonikaku > span:nth-of-type(2) {
	padding-top:2em;
}

.shun {
	padding-top: 57px;
}

.link_button_daisuki {
	height: 51px;
	width: 244px;
	background-color: rgb(255 255 255 / 0.5);
	-webkit-writing-mode: horizontal-tb; /* Safari用 */
	writing-mode: horizontal-tb;
	position: absolute;
	bottom: 50px;
	left: 0;
	transition: .3s;
}

.link_button_daisuki:hover {
	background-color: rgb(255 255 255 / 0.4);
}

.link_button_daisuki p {
	font-size: 18px;
	color: #000;
	text-align: center;
}

.link_button_daisuki span {
    display: block;
    font-size: 13px;
    color: #FFF;
    text-align: center;
    line-height: 1.0;
}

.link_button_container {
	position: relative;
}

.link_button_container::before {
	content: '';
	display: block;
	position: absolute;
	top: -4px;
	left: -4px;
	border-top-width: 1px;
	border-left-width: 1px;
	border-top-style: solid;
	border-left-style: solid;
	border-top-color: #FFF;
	border-left-color: #FFF;
	height: 22px;
	width: 22px;
}

.link_button_container::after {
	content: '';
	display: block;
	position: absolute;
	bottom: -10px;
	right: -4px;
	height: 22px;
	width: 22px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #FFF;
	border-bottom-color: #FFF;
}

.habahiroku {
	width: 100%;
	min-width: 1700px;
	font-family: "Noto Serif JP", serif;
	position: relative;
	box-sizing: border-box;
	padding-left: 180px;
	padding-right: 280px;
}

.habahiroku ul {
	list-style-type: none;
    display: flex;
    justify-content: space-between;
}

.habahiroku_container {
	width: 516px;
	padding-top: 97px;
	position: relative;
	display: flex;
	justify-content: space-between;
}

.habahiroku h2 {
	font-size: 40px;
	min-width: 130px;
	position: relative;
}

.habahiroku h2::after {
	font-size: 16px;
	color: #D9A300;
	font-weight: bold;
	content: '－ Food menu';
	display: block;
	position: absolute;
	top: 60px;
	left: 12px;
}

.habahiroku p {
	font-size: 18px;
	font-weight: bold;
	-webkit-writing-mode: vertical-rl; /* Safari用 */
	writing-mode: vertical-rl;
}

.link_button_habahiroku {
    box-sizing: border-box;
	line-height: 51px;
    height: 199px;
    width: 51px;
    background-color: #D4D4D4;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    position: absolute;
    bottom: 356px;
    left: 1%;
    transition: .3s;
}

.link_button_habahiroku:hover {
	background-color: #999;
}

.link_button_habahiroku p {
	font-size: 18px;
	color: #000;
	padding-top: 16px;
	position: relative;
}

.link_button_habahiroku p::after {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 11px solid #D8A300;
	position: absolute;
    bottom: -30px;
    left: 52%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}

.link_button_habahiroku_container {
	position: relative;
}

.link_button_habahiroku_container::before {
	content: '';
	display: block;
	position: absolute;
	top: -4px;
	left: -4px;
	border-top-width: 1px;
	border-left-width: 1px;
	border-top-style: solid;
	border-left-style: solid;
	border-top-color: #000;
	border-left-color: #000;
	height: 22px;
	width: 22px;
}

.link_button_habahiroku_container::after {
	content: '';
	display: block;
	position: absolute;
	bottom: -43px;
	right: -4px;
	height: 22px;
	width: 22px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #000;
	border-bottom-color: #000;
}

.onomimono {
    width: 100%;
    min-width: 1700px;
    font-family: "Noto Serif JP", serif;
    position: relative;
    box-sizing: border-box;
    padding-left: 180px;
    padding-right: 280px;
    margin-bottom: 27px;
}

.onomimono ul {
	list-style-type: none;
    display: flex;
    justify-content: space-between;
}

.onomimono_container {
	width: 516px;
	padding-top: 97px;
	position: relative;
	display: flex;
	justify-content: space-between;
}

.onomimono h2 {
	font-size: 40px;
	min-width: 130px;
	position: relative;
}

.onomimono h2::after {
	font-size: 16px;
	color: #D9A300;
	font-weight: bold;
	content: '－ Drink menu';
	display: block;
	position: absolute;
	top: 60px;
	left: 12px;
}

.onomimono p {
	font-size: 18px;
	font-weight: bold;
	-webkit-writing-mode: vertical-rl; /* Safari用 */
	writing-mode: vertical-rl;
}

.link_button_onomimono {
    box-sizing: border-box;
	line-height: 51px;
    height: 199px;
    width: 51px;
    background-color: #D4D4D4;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    position: absolute;
    bottom: 356px;
    left: 1%;
    transition: .3s;
}

.link_button_onomimono:hover {
	background-color: #999;
}

.link_button_onomimono_container {
	position: relative;
}

.link_button_onomimono_container::before {
	content: '';
	display: block;
	position: absolute;
	top: -4px;
	left: -4px;
	border-top-width: 1px;
	border-left-width: 1px;
	border-top-style: solid;
	border-left-style: solid;
	border-top-color: #000;
	border-left-color: #000;
	height: 22px;
	width: 22px;
}

.link_button_onomimono_container::after {
	content: '';
	display: block;
	position: absolute;
	bottom: -43px;
	right: -4px;
	height: 22px;
	width: 22px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #000;
	border-bottom-color: #000;
}

.link_button_onomimono p {
	font-size: 18px;
	color: #000;
	padding-top: 16px;
	position: relative;
}

.link_button_onomimono p::after {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 11px solid #D8A300;
	position: absolute;
    bottom: -30px;
    left: 52%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}

.top_oshirase {
	width: 100%;
	min-width: 1700px;
	min-height: 650px;
	max-height: 1080px;
	padding-bottom: 200px;
	font-family: "Noto Serif JP", serif;
	position: relative;
	box-sizing: border-box;
	background-image: repeating-linear-gradient(45deg, #898989, #898989 1px, #7f7f7f 1px, #7f7f7f 4px);
}

.top_oshirase::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 400px;
	background: linear-gradient(
    to right,
    rgb(0 0 0 / 0.8) 0%,
    rgb(0 0 0 / 0.8) 40%,
	rgb(0 0 0 / 0.6) 55%,
    rgb(0 0 0 / 0) 100%
  );
}

.top_oshirase_container {
	width: 1030px;
	padding-top: 126px;
	position: relative;
	display: flex;
	justify-content: space-between;
	margin-right: auto;
	margin-left: auto;
}

.top_oshirase_container h2 {
	font-size: 40px;
	color: #FFF;
	min-width: 130px;
	position: relative;
}

.top_oshirase_container h2::after {
	font-size: 16px;
	color: #FFDE7B;
	font-weight: bold;
	content: '－ News';
	display: block;
	position: absolute;
	top: 60px;
	left: 12px;
}

.top_oshirase_container ul {
	width: 711px;
	padding-top: 75px;
	list-style-type: none;	
}

.topicslist {
    width: 711px;
    margin-right: auto;
    margin-left: auto;
    height: 182px;
    box-sizing: border-box;
    padding-top: 30px;
	padding-left: 20px;
    padding-bottom: 28px;
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: #FFF;
    position: relative;
	transition: .3s;
}

.topicslist::before {
	content: '';
	width: 20px;
	height: 1px;
	box-sizing: border-box;
	position: absolute;
	left: 0;
	top: -1px;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #555;
}

.topicslist:last-child {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #FFF;
}

.topicslist:last-child::after {
	content: '';
	width: 20px;
	height: 1px;
	box-sizing: border-box;
	position: absolute;
	left: 0;
	bottom: -1px;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #555;
}

.topicslist:hover {
    opacity: 0.8;
}

.topicslist a {
	display: block;
	height: 100%;
    text-decoration: none;
    transition: .5s;
}

.topics_img {
    float: left;
    margin-right: 15px;
}

.topics_img img {
	height: 123px;
	width: 170px;
	overflow: hidden;
}

.topics_date {
	font-family:'Noto Sans JP', serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 15px;
    color: #000;
}

.topics_title {
	font-size: 20px;
    color: #FFF;
    line-height: 1.2;
	padding-left: 200px;
}

.topics_more {
	font-size: 16px;
	color: #555;
	width: 70px;
	text-align: center;
	line-height: 22px;
	box-sizing: border-box;
	position: absolute;
	right: 20px;
	bottom: 25px;
	border: 1px solid #555;
	transition: .3s;
}

.topics_more:hover {
	background-color: #CCC;
	color: #000;
}

.link_button_oshirase {
    box-sizing: border-box;
	line-height: 51px;
    height: 170px;
    width: 51px;
    background-color: rgba(255, 255, 255, 0.4);
    -webkit-writing-mode: vertical-rl; /* Safari用 */
	writing-mode: vertical-rl;
    position: absolute;
    top: 60%;
    left: 1%;
    transition: .3s;
}

.link_button_oshirase:hover {
	background-color: #999;
}

.link_button_oshirase_container {
	position: relative;
}

.link_button_oshirase_container::before {
	content: '';
	display: block;
	position: absolute;
	top: -4px;
	left: -4px;
	border-top-width: 1px;
	border-left-width: 1px;
	border-top-style: solid;
	border-left-style: solid;
	border-top-color: #FFF;
	border-left-color: #FFF;
	height: 22px;
	width: 22px;
}

.link_button_oshirase_container::after {
	content: '';
	display: block;
	position: absolute;
	bottom: -4px;
	right: -4px;
	height: 22px;
	width: 22px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #FFF;
	border-bottom-color: #FFF;
}

.link_button_oshirase p {
	font-size: 18px;
	color: #FFF;
	padding-top: 16px;
	position: relative;
}

.link_button_oshirase p::after {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 11px solid #FFDE7B;
	position: absolute;
    bottom: 10px;
    left: 52%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}



/***************************************************************
/*****下層全般のスタイル
/****************************************************************/

.eyecatch_box {
    width: 100%;
    min-width: 1653px;
    box-sizing: border-box;
	font-family: "Noto Serif JP", serif;
    padding-top: 50px;
	padding-right: 212px;
    padding-left: 180px;
	margin-bottom: 80px;
    list-style-type: none;
    display: flex;
    justify-content: space-between;
}

.eyecatch_box_left {
	width: 1120px;	
	position: relative;
}

.page_title {
	-webkit-writing-mode: vertical-rl; /* Safari用 */
	writing-mode: vertical-rl;
}

.eyecatch_box h1 {
	font-size: 56px;
	margin-left: 50px;	
}

.eyecatch_box p {
	font-size: 18px;
	font-weight: bold;
	padding-top: 2em;
}

.breadcrumbs {
    display: inline-block;
    min-width: 80px;
    height: 36px;
	padding-top: 34px;
	margin-bottom: 170px;
}

body:not(.topics_detail) .breadcrumbs {
	position: absolute;
	right: 0px;
	top: 538px;
	padding-top: 0px;
	margin-bottom: 0px;
	box-sizing: border-box;
	line-height: 36px;
	display: flex;
	list-style-type: none;
	color: #999;
}

.breadcrumbs a {
    color: #999!important;
	transition: .3s;
}

.breadcrumbs a::after {
    content: '　/　';
}

body.topics_detail .breadcrumbs a:hover {
	color: #AAA;
}

body:not(.topics_detail) .breadcrumbs a:hover {
    color: #000!important;
}

.breadcrumbs span {
    color: #000;
	font-weight: bold;
}

body.information .breadcrumbs a span,
body.topics .breadcrumbs a span,
body.topics_detail .breadcrumbs a span,
body.archive .breadcrumbs a span {
    color: #999!important;
}

body.information .breadcrumbs span,
body.topics .breadcrumbs span,
body.topics_detail .breadcrumbs span,
body.archive .breadcrumbs span {
    color: #FFF!important;
}

.breadcrumbs a span {
    color: #999;
	font-weight: bold;
}

/***************************************************************
/*****ご予約・お問い合わせページのスタイル
/****************************************************************/

body.contact {
	margin: 0px;
	background-color: #FFF;
}

.contact_form {
	font-family: "Noto Serif JP", serif;
	font-size: 18px;
    display: block;
    min-width: 1700px;
	margin-right: auto;
    margin-left: auto;
    text-align: center;
    margin-bottom: 224px;
    width: 100%;
}

.goshitsumon {
	width: 100%;
}

.goshitsumon {
    width: calc(100% - 180px);
    box-sizing: border-box;
    margin-left: 180px;
    position: relative; 
}

.goyoyaku {
	font-size: 30px;
	font-weight: bold;
	padding-top: 150px;
}

.goshitsumon a {
	font-size: 54px;
	font-weight: bold;
	line-height: 70px;
    color: #000;
	transition: .3s;
}

.goshitsumon a:hover {
	color: #D8A300;
}

.goshitsumon span {
	display: block;
	font-size: 16px;
}

.uketsuke {
    margin-bottom: 185px;
}

/******タブ関係***********************************************************************/

.tab-wrap_box {
	width: calc(100% - 180px);
	box-sizing: border-box;
	margin-left: 180px;
	padding-left: 130px;
	padding-right: 262px;
    position: relative;
    background-color: #FFF;
}

.tab-wrap_box::before {
    position: absolute;
    content: "";
    top: 0px;
	left: 50%;
	-webkit-transform : translate(-50%,0);
	transform : translate(-50%,0);
    background-color: #FFF;
    z-index: 0;
    height: 70px;
    width: 100%;
    border-bottom-width: 2px;
    border-bottom-style: solid;
    border-bottom-color: #D8A300;
}

.tab-wrap {
    width: 1280px;
    margin-right: auto;
    margin-left: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.tab_area {
	width: 1014px;
    margin-right: auto;
    margin-left: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
	list-style: none;
}

.tab-label {
	font-size: 18px;
	color: #000;
	background: #FFF;
	line-height: 68px;
	box-sizing: border-box;
	white-space: nowrap;
	text-align: center;
	order: -1;
	position: relative;
	z-index: 1;
	cursor: pointer;
	border-radius: 10px 10px 0 0;
	flex: 1;
	max-width: 368px;
	border: 2px solid #D8A300;
}

.tab-label:not(:last-of-type) {
	margin-right: 15px;
}

.tab_left {
	margin-left: 130px;
}

.tab_right {
	margin-right: 130px;
}

.tab_area li {
	position: relative;
}

.tab_area li::before {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 11px solid #D8A300;
}

.tab_area li.select {
	color: #FFF;
	background: #D8A300;
	position: relative;
}

.tab_area li.select::before {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 11px solid #FFF;
}

.tab-wrap .hide {
	display:none;
}

.tab-content {
	width: 100%;
	overflow: hidden;
	background-color: #FFF;
}

li.works_effect {
    width: 316px;
    text-align: left;
    font-size: 20px;
    font-weight: bold;
	position: relative;
	transition: all .3s;
	margin-bottom: 80px;
}

li.works_effect:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 8px rgba(0, 0, 0, 0.2);
}

li.works_effect a {
    text-decoration: none;
}

.works_thumb {
    width: 1014px;
    margin-right: auto;
    margin-left: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    list-style-type: none;
    position: relative;
}

.works_thumb::after {
	content: '';
    width: 316px;
}

li.works_effect h3 {
    font-family: "Noto Serif JP", serif;
    font-size: 22px;
    font-weight: 900;
    color: #1F92D8;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #2092D8;
    text-align: center;
    padding-right: 1%;
    padding-left: 1%;
    padding-top: 4%;
	margin-bottom: 3%;
}

li.works_effect p {
    font-size: 16px;
    line-height: 2.0;
	padding-right: 3%;
	padding-left: 3%;
}

.form_box {
	width: 1100px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 50px;
}

/*Contact Form 7カスタマイズ*/
/*スマホContact Form 7カスタマイズ*/
@media(max-width:500px){
	
.inquiry th,.inquiry td {
	display: block!important;
	width: 100%!important;
	border-top: none!important;
	-webkit-box-sizing: border-box!important;
	-moz-box-sizing: border-box!important;
	box-sizing: border-box!important;
}

.inquiry tr:first-child th{
	border-top: 1px solid #d7d7d7!important;
}

/* 必須・任意のサイズ調整 */	
.inquiry .haveto,.inquiry .any {	
	font-size: 10px;
}}

.inquiry {
	width: 1100px;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
	margin-bottom: 4%;
}

/*見出し欄*/
.inquiry th {
	text-align: left;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	color: #444;
	padding-right: 5px;
	padding-left: 10px;
	box-sizing: border-box;
	width: 20%;
	margin-right: 15px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #000;
}

/*通常欄*/
.inquiry td {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	box-sizing: border-box;
	padding-left: 10px;
	padding-top: 18px;
	padding-bottom: 13px;
	text-align: left;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #999;
}

/*横の行とテーブル全体*/
.entry-content .inquiry tr,.entry-content table{
 border:solid 1px #d7d7d7;
}

/*必須の調整*/
.haveto {
	font-size: 11px;
	background: #FF0000;
	color: #fff;
	border-radius: 2px;
	margin-right: 10px;
	position: relative;
	bottom: 1px;
	padding-top: 3px;
	padding-right: 10px;
	padding-bottom: 3px;
	padding-left: 10px;
}

/*任意の調整*/
.any {
	font-size: 11px;
	background: #006DD9;
	color: #fff;
	border-radius: 2px;
	margin-right: 10px;
	position: relative;
	bottom: 1px;
	padding-top: 3px;
	padding-right: 10px;
	padding-bottom: 3px;
	padding-left: 10px;
}

/*ラジオボタンを縦並び指定*/
/*.verticallist .wpcf7-list-item{
 display:block;
}*/

/*送信ボタンのデザイン変更*/
#formbtn,
#formbtn2 {
	display: block;
	margin-top: 30px;
	width: 580px;
	background: #666;
	color: #fff;
	font-size: 20px;
	border-radius: 2px;
	border: none;
	margin-right: auto;
	margin-left: auto;
	height: 50px;
	border-radius: 4px;
	transition: .3s;
}

/*送信ボタンマウスホバー時*/
#formbtn:hover,
#formbtn2:hover {
	cursor: pointer;
	color: #000;
	background-color: #D8A300;
}

.okigaru {
	width: 958px;
	margin-right: auto;
	margin-left: auto;
	text-align: left;
	margin-bottom: 50px;
	padding-top: 20px;
	font-size: 16px;
}

.okigaru span {
	color: #A1071F;	
}

.otoiawase p {
	text-align: center;
	padding-top: 25px;
}

.gray_bg {
	padding-right: 20px;
	background-color: #F4F4F4;
}

input {
	border: 1px solid #999 !important;
	box-sizing: border-box !important;
	padding-left: 10px !important;
	background-color: #F8F8F8;
}

input[name="your-name"],
input[name="zip"] {
	width: 25% !important;
	height: 30px !important;
	margin-right: 10px;
}

input[name="your-email"],
input[name="your-email_confirm"],
input[name="your-tel"] {
	width: 50% !important;
	height: 30px !important;
	margin-bottom: 3px;
}

input[name="address"] {
	width: 90% !important;
	height: 30px !important;
	margin-bottom: 3px;
}

textarea {
	width: 90%!important;
	border: 1px solid #999 !important;
	box-sizing: border-box !important;
	height: 255px !important;
	padding-left: 10px !important;
	padding-top: 10px !important;
	background-color: #F8F8F8;
}

input[name="acceptance-812"],
input[name="acceptance-578"] {
	height: 13px !important;
	width: 13px;
	border: 1px solid #000 !important;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
	border-color: #ffb900;
	text-align: center;
}

.wpcf7 form.sent .wpcf7-response-output {
    border-color: #46b450;
	text-align: center;
}

@media(min-width:641px){
	
.wpcf7-list-item-label {
    position: relative;
    top: -7px;
}

.wpcf7-list-item {
    position: relative;
    top: 5px;
	padding-right: 5px;
}
}

.wpcf7-list-item label {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.hissu {
	color: #B20000;
} 

.privacy_cancel {
    display: flex;
    justify-content: space-between;
}

.privacy_box {
	font-family: 'Noto Sans JP', sans-serif;
	width: 425px;
	height: 256px;
	box-sizing: border-box;
	overflow: scroll;
	padding: 2%;
	border: 1px solid #999;
	font-size: 12px!important;
	line-height: 1.5;
}

.privacy_box h2 {
	text-align: left;
	margin-bottom: 1%;
	font-size: 12px!important;
	font-weight: bold;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #000;
}

.privacy_box h3 {
	font-size: 12px!important;
	text-align: left;
	margin-bottom: 3%;
}

.top_border {
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #000;
	padding-top: 7%;
}

.privacy_box dl {
	margin-bottom: 2%;
}

.privacy_box dl:last-of-type {
	margin-bottom: 7%;
}

.privacy_box dl dt {
	font-weight: bold;
}

.privacy_president {
	text-align: right;	
}

/***************************************************************
/*****お品書きページのスタイル
/****************************************************************/

body.menu {
	margin: 0px;
	background-color: #FFF;
}

.menu {
	margin-bottom: 178px;
	width: 100%;
	font-family: "Noto Serif JP", serif;
}

.menu_caution {
	width: calc(100% - 180px);
	box-sizing: border-box;
	margin-left: 180px;
    position: relative;
    background-color: #FFF;
	margin-bottom: 170px;
}

.menu_caution h1 {
	width: 100%;
	font-size: 12px;
	text-align: center;
	background-color: #EEE;
	line-height: 20px;
}

.menu_box {
	width: 1085px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 105px;
	padding-left: 130px;
	position: relative;
}

.menu_box h2 {
	width: 290px;
	box-sizing: border-box;
	font-size: 25px;
	color: #FFF;
	background-color: #E62425;
	text-align: right;
	padding-right: 28px;
	position: absolute;
	left: -28px;
	top: 0px;
	line-height: 42px;
	letter-spacing: 0.1em;
}

.menu_box h2::after {
    content: '';
    width: 290px;
    height: 42px;
    background-color: #000;
    position: absolute;
    left: 5px;
    top: 5px;
    line-height: 42px;
    z-index: -1;
}

.menu_name {
    display: flex;
    justify-content: space-between;
	flex-wrap: wrap;
    padding-top: 70px;
	margin-bottom: 44px;
    font-size: 20px;
	list-style-type: none;
}

.menu_name::after {
    content: '';
    width: 442px;
}

.menu_name li {
	width: 442px;
	display: flex;
	justify-content: space-between;
	line-height: 43px;
}

.menu_image {
	display: flex;
	justify-content: space-between;
	list-style-type: none;
}

.menu_image li {
	position: relative;
	width: 325px;
}

.menu_image li::after {
    content: '';
    width: 325px;
    height: 230px;
    background-color: #000;
    position: absolute;
    left: 5px;
    top: 5px;
    z-index: -1;
}

.menu_name2 {
    padding-top: 70px;
	margin-bottom: 44px;
    font-size: 20px;
	list-style-type: none;
}

.menu_name2 li {
    width: 442px;
    display: flex;
    justify-content: space-between;
    line-height: 43px;
    position: relative;
    white-space: nowrap;
}

.menu_box2 {
	width: 1085px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 105px;
	padding-left: 130px;
	position: relative;
	display: flex;
	justify-content: space-between;
}

.menu_box2 h2 {
	width: 290px;
	box-sizing: border-box;
	font-size: 25px;
	color: #FFF;
	background-color: #E62425;
	text-align: right;
	padding-right: 28px;
	position: absolute;
	left: -28px;
	top: 0px;
	line-height: 42px;
	letter-spacing: 0.1em;
}

.menu_box2 h2::after {
    content: '';
    width: 290px;
    height: 42px;
    background-color: #000;
    position: absolute;
    left: 5px;
    top: 5px;
    line-height: 42px;
    z-index: -1;
}

.menu_box2 .menu_image {
	padding-top: 76px;
	padding-right: 105px;
}

.menu_name3 {
    margin-bottom: 27px;
    font-size: 20px;
	list-style-type: none;
}

.menu_name3 li {
	width: 442px;
	display: flex;
	justify-content: space-between;
	line-height: 43px;
}

.menu_name4 {
    display: flex;
    justify-content: space-between;
	flex-wrap: wrap;
    padding-top: 70px;
    font-size: 20px;
	list-style-type: none;
}

.menu_name4::after {
    content: '';
    width: 442px;
}

.menu_name4 li {
	width: 442px;
	display: flex;
	justify-content: space-between;
	line-height: 43px;
}

.menu_name5 {
    display: flex;
    justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 44px;
    font-size: 20px;
	list-style-type: none;
}

.menu_name5::after {
    content: '';
    width: 442px;
}

.drink_title {
    width: 330px;
    display: flex;
    flex-wrap: wrap;
	justify-content: flex-start;
}

.drink_title i {
	width: 100%;
    font-size: 13px;
    margin-top: -0.5em;
	line-height: 1.2;
}

.drink_title.empty-title + span {
    margin-top: -4.0%;
}

.menu_name5 li {
	width: 442px;
	display: flex;
	justify-content: space-between;
	line-height: 43px;
}

.menu_box3 {
	width: 1085px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 40px;
	padding-left: 130px;
	position: relative;
	display: flex;
	justify-content: space-between;
}

.menu_box3 h2 {
	width: 290px;
	box-sizing: border-box;
	font-size: 25px;
	color: #FFF;
	background-color: #E62425;
	text-align: right;
	padding-right: 28px;
	position: absolute;
	left: -28px;
	top: 0px;
	line-height: 42px;
	letter-spacing: 0.1em;
}

.menu_box3 h2::after {
    content: '';
    width: 290px;
    height: 42px;
    background-color: #000;
    position: absolute;
    left: 5px;
    top: 5px;
    line-height: 42px;
    z-index: -1;
}

.menu_image2 {    
    list-style-type: none;
}

.menu_image2 li {
	position: relative;
	width: 325px;
}

.menu_image2 li::after {
    content: '';
    width: 325px;
    height: 230px;
    background-color: #000;
    position: absolute;
    left: 5px;
    top: 5px;
    z-index: -1;
}

.menu_box2 .menu_image2 {
	padding-right: 105px;
}

.menu_box2 .menu_image2 li {
	margin-bottom: 44px;	
}

.description1,
.description2,
.description3 {
	height: 60px;
}

.nabe_title {
    width: 330px;
    text-align: right;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.nabe_title i {
	font-size: 13px;
	margin-top: -0.5em;
}

.menu_box2 h3 {
	font-size: 20px;
	position: absolute;
	left: 150px;
	top: 74px;	
}

.menu_name6 {
    padding-top: 45px;
    font-size: 20px;
	list-style-type: none;
}

.menu_name6 li {
	width: 442px;
	display: flex;
	justify-content: space-between;
	position: relative;
	margin-bottom: 10px;
}

.menu_name7 {
    padding-top: 70px;
	margin-bottom: 44px;
    font-size: 20px;
	list-style-type: none;
}

.menu_name7 li {
    width: 442px;
    display: flex;
    justify-content: space-between;
    line-height: 43px;
    position: relative;
    white-space: nowrap;
}

.cursor::before {
	content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 11px solid #E62425;
    position: absolute;
    bottom: 14px;
    left: -18px;
}

.tsuika {
    height: 60px;
}

.tsuika::before {
	content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 11px solid #E62425;
    position: absolute;
    bottom: 31px;
    left: -18px;
}

.tsuika p {
	content: "※仕入れの都合により品切れの場合がございます。ご了承ください。";
	font-size: 13px;
	position: absolute;
	bottom: -10px;
}

.double_link {
    width: 540px;
    margin-right: auto;
    margin-left: auto;
	margin-bottom: 123px;
	padding-left: 180px;
    display: flex;
    justify-content: space-between;
	list-style-type: none;
}

.double_link li {
	height: 50px;
	width: 244px;
	position: relative;
}

.double_link li::before {
    content: '';
    display: block;
    position: absolute;
    top: -4px;
    left: -4px;
    border-top-width: 1px;
    border-left-width: 1px;
    border-top-style: solid;
    border-left-style: solid;
    border-top-color: #000;
    border-left-color: #000;
    height: 22px;
    width: 22px;
}

.double_link li::after {
    content: '';
    display: block;
    position: absolute;
    bottom: -6px;
    right: -4px;
    height: 22px;
    width: 22px;
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-right-style: solid;
    border-bottom-style: solid;
    border-right-color: #000;
    border-bottom-color: #000;
}

.link_button_menu {
	display: block;
	box-sizing: border-box;
    height: 51px;
    width: 244px;
    background-color: rgb(0 0 0 / 0.5);
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    transition: .3s;
}

.link_button_menu:hover {
	background-color: rgb(0 0 0 / 0.3);
}

.link_button_menu p {
    font-size: 18px;
    color: #000;
    text-align: center;
}

.link_button_menu span {
    display: block;
    font-size: 13px;
    color: #FFF;
    text-align: center;
    line-height: 1.0;
}

.link_button_container {
	position: relative;
}

/***************************************************************
/*****お飲み物ページのスタイル
/****************************************************************/

body.drink {
	margin: 0px;
	background-color: #FFF;
}

.description4 {
	height: 60px;
}

.description4::after {
	content: "（ブラックニッカクリアブレンドで作るハイボール）";
	font-size: 13px;
	position: absolute;
	bottom: -10px;
    right: 136px;
}

.shochu {
    width: 1085px;
    margin-right: auto;
    margin-left: auto;
    display: flex;
    justify-content: space-between;
}

.shochu .menu_name2 {
	width: 440px;
}

.tsuika_beige::before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 11px solid #D8A300;
    position: absolute;
    bottom: 15px;
    left: -18px;
}

.cursor2::before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 11px solid #D8A300;
    position: absolute;
    bottom: 14px;
    left: -18px;
}

.menu .menu_box2 {
	margin-bottom: 61px;
}

.menu_image3 {
	width: 1085px;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	justify-content: space-between;
	list-style-type: none;
	padding-left: 130px;
}

.menu_image3 li {
	position: relative;
	width: 325px;
	margin-bottom: 105px;
}

.menu_image3 li::after {
    content: '';
    width: 325px;
    height: 230px;
    background-color: #000;
    position: absolute;
    left: 5px;
    top: 5px;
    z-index: -1;
}

.no_margin {
	margin-bottom: 0px!important;
}

body.drink .menu_box3 h2,
body.drink .menu_box h2,
body.drink .menu_box2 h2 {
    min-width: 290px;
    box-sizing: border-box;
    font-size: 25px;
    color: #FFF;
    background-color: #000;
    text-align: right;
    padding-right: 28px;
    position: absolute;
    left: -28px;
    top: 0px;
    line-height: 42px;
}

.wide {
	width: 330px!important;
}

body.drink .menu_box3 h2::after,
body.drink .menu_box h2::after,
body.drink .menu_box2 h2::after {
    content: '';
    width: 100%;
    height: 42px;
    background-color: #d80100;
    position: absolute;
    left: 5px;
    top: 5px;
    line-height: 42px;
    z-index: -1;
}

body.drink .menu_image li::after,
body.drink .menu_image3 li::after {
    content: '';
    width: 325px;
    height: 230px;
    background-color: #d80100;
    position: absolute;
    left: 5px;
    top: 5px;
    z-index: -1;
}

/***************************************************************
/*****コース・テイクアウトページのスタイル
/****************************************************************/

body.course {
	background-color: #FFF;
	margin: 0px;
}

.course {
	margin-bottom: 178px;
	width: 100%;
	font-family: "Noto Serif JP", serif;
}

.enkai_box {
    width: 1085px;
    margin-right: auto;
    margin-left: auto;
    padding-left: 130px;
    position: relative;
    display: flex;
    justify-content: space-between;
}

.enkai_box div {
    max-width: 712px;
}

.enkai_box h1 {
	font-size: 25px;
	position: relative;
	margin-bottom: 14px;
}

.course_caution {
	font-size: 18px;
	line-height: 2.0;
	margin-bottom: 54px;
}

.course_caution li span {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #E62425;
}

.enkai_box h1::before {
	content: url(images/course_before.png);
	display: inline-block;
	width: 10px;
	height: 30px;
	position: absolute;
	top: 5px;
	left: -20px;
}

.enkai_box h1::after {
	content: url(images/course_after.png);
	display: inline-block;
	width: 10px;
	height: 30px;
	position: absolute;
	top: 5px;
	left: 130px;
}

.enkai_picture {
	list-style-type: none;
}

.enkai_picture li:first-child {
	margin-bottom: 180px;
}

.enkai_box h2 {
	font-size: 20px;
	position: relative;
	margin-bottom: 20px;
}

.enkai_box h2::before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 11px solid #E62425;
    position: absolute;
    bottom: 11px;
    left: -18px;
}

.omakase {
	list-style-type: none;
	font-size: 20px;
}

.omakase h3 {
	font-size: 20px;
	margin-bottom: 20px;
}

.omakase01 {
	width: 550px;
	background-image: url(images/omakase_bg01.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	padding-top: 20px;
	padding-left: 40px;
	padding-bottom: 25px;
	margin-bottom: 32px;
}

.omakase02 {
	width: 550px;
	background-image: url(images/omakase_bg02.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	padding-top: 20px;
	padding-left: 40px;
	padding-bottom: 25px;
	margin-bottom: 52px;
}

.nabe {
	width: 550px;
	background-image: url(images/nabe_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	padding-top: 20px;
	padding-left: 40px;
	padding-bottom: 25px;
}

.obentou {
    margin-bottom: 160px;
}

.obentou_box {
    width: 1085px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 54px;
    padding-left: 130px;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.obentou_box div {
    max-width: 712px;
}

.obentou_box h1 {
	font-size: 25px;
	position: relative;
	margin-bottom: 14px;
}

.obentou_box h1::before {
	content: url(images/course_before.png);
	display: inline-block;
	width: 10px;
	height: 30px;
	position: absolute;
	top: 5px;
	left: -20px;
}

.obentou_box h1::after {
	content: url(images/course_after.png);
	display: inline-block;
	width: 10px;
	height: 30px;
	position: absolute;
	top: 5px;
	left: 252px;
}

.obentou_picture {
	list-style-type: none;
}

.obentou_box h2 {
	font-size: 20px;
	position: relative;
}

.obentou_box h2::before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 11px solid #E62425;
    position: absolute;
    bottom: 11px;
    left: -18px;
}

.obentou_detail {
	list-style-type: none;
	position: relative;
}

.obentou_detail h3 {
	font-size: 20px;
	margin-bottom: 20px;
	background-color: #FFF;
	position: absolute;
	top: -20px;
	left: 10px;
}

.obentou_description {
	width: 680px;
	font-size: 20px;
	padding-top: 20px;
	padding-left: 20px;
	padding-bottom: 25px;
	border: 1px solid #000;
	position: relative;
}

.obentou_caution {
	font-size: 18px;
	line-height: 2.0;
	margin-bottom: 40px;
}

.obentou_caution li span {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #E62425;
}

.obentou_description2 {
	width: 680px;
	font-size: 20px;
	padding-top: 20px;
	padding-left: 20px;
	padding-bottom: 25px;
	border: 1px solid #E62425;
	position: relative;
}

.takeout_caution {
	font-size: 18px;
	padding-top: 10px;
	list-style-type: none;
}

.takeout_caution p {
	font-size: 16px;
}

.wrap {
	width: calc(100% - 180px);
    display: flex;
    align-items: center;
    height: 225px;
    overflow: hidden;
	margin-left: 180px;
    margin-bottom: 160px;
}

.slideshow {
    list-style-type: none;
    display: flex;
    animation: loop-slide 50s infinite linear 1s both;
}
@keyframes loop-slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

.slideshow li {
    margin-right: 13px;
}

.content {
    width: 225px;
    height: 225px;
}

.shipping_box {
    width: 1085px;
    margin-right: auto;
    margin-left: auto;
	margin-bottom: 150px;
    padding-left: 130px;
    position: relative;
    display: flex;
    justify-content: space-between;
}

.shipping_box div {
    max-width: 712px;
}

.shipping_box h1 {
	font-size: 25px;
	position: relative;
	margin-bottom: 14px;
}

.shipping_box h1::before {
	content: url(images/course_before.png);
	display: inline-block;
	width: 10px;
	height: 30px;
	position: absolute;
	top: 5px;
	left: -20px;
}

.shipping_box h1::after {
	content: url(images/course_after.png);
	display: inline-block;
	width: 10px;
	height: 30px;
	position: absolute;
	top: 5px;
	left: 435px;
}

.shipping_box h1 span {
	color: #E52425;	
}

.shipping_box h2 {
    font-size: 20px;
    position: relative;
}

.shipping_caution li {
	margin-bottom: 26px;
}

.shipping_caution {
	font-size: 18px;
	padding-top: 10px;
	list-style-type: none;
}

.shipping_caution p {
	font-size: 16px;
}

.shipping {
    list-style-type: none;
    font-size: 20px;
}

.shipping_sample {
    width: 450px;
    background-image: url(images/shipping_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    padding-top: 20px;
    padding-left: 40px;
    padding-bottom: 25px;
    margin-bottom: 32px;
}

.shipping_sample h3 {
    font-size: 20px;
	margin-bottom: 20px;
}

.shipping_box h2 {
    font-size: 20px;
	position: relative;
    margin-bottom: 20px;
}

.shipping_box h2::before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 11px solid #E62425;
    position: absolute;
    bottom: 11px;
    left: -18px;
}

.shipping_picture {
	list-style-type: none;
}

.goyoyaku_hassou {
    font-family: "Noto Serif JP", serif;
    font-size: 18px;
    display: block;
    min-width: 1700px;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
    margin-bottom: 224px;
    width: 100%;
}

.goshitsumon {
    width: calc(100% - 180px);
    box-sizing: border-box;
    margin-left: 180px;
    position: relative;
}

.goyoyaku_title {
    font-size: 30px;
    font-weight: bold;
	margin-bottom: 16px;
}

.goyoyaku_title span {
	color: #E52425;
}

.goyoyaku_hassou_box > a {
    font-size: 110px;
    font-weight: bold;
    line-height: 70px;
    color: #000;
    transition: .3s;
}

.goyoyaku_hassou_box > a:hover {
    color: #D8A300;
}

.goyoyaku_uketsuke {
	display: block;
    font-size: 16px;
	padding-top: 16px;
    margin-bottom: 185px;
}

.goyoyaku_hassou_box {
    width: calc(100% - 180px);
    box-sizing: border-box;
    margin-left: 180px;
    position: relative;
}

.double_link2 {
    width: 540px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 123px;
    display: flex;
    justify-content: space-between;
    list-style-type: none;
}

.double_link2 li {
    height: 50px;
    width: 244px;
    position: relative;
}

.double_link2 li::before {
    content: '';
    display: block;
    position: absolute;
    top: -4px;
    left: -4px;
    border-top-width: 1px;
    border-left-width: 1px;
    border-top-style: solid;
    border-left-style: solid;
    border-top-color: #000;
    border-left-color: #000;
    height: 22px;
    width: 22px;
}

.double_link2 li::after {
    content: '';
    display: block;
    position: absolute;
    bottom: -6px;
    right: -4px;
    height: 22px;
    width: 22px;
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-right-style: solid;
    border-bottom-style: solid;
    border-right-color: #000;
    border-bottom-color: #000;
}

/***************************************************************
/*****せんだいについてページのスタイル
/****************************************************************/

body.information {
	background-color: #FFF;
	margin: 0px;
}

.information {
	width: 100%;
	font-family: "Noto Serif JP", serif;
}

body.information .eyecatch_box {
    background-color: #000;
	color: #FFF;
	padding-bottom: 74px;
	margin-bottom: 48px;
}

.eyecatch_box h1 span {
	font-size: 80px;
	margin-left: 50px;	
}

body.information .eyecatch_box .breadcrumbs-list {
	position: absolute;
	right: 0px;
	bottom: 237px;
	box-sizing: border-box;
	line-height: 36px;
	display: flex;
	list-style-type: none;
	color: #999;
}

body.information .eyecatch_box .breadcrumbs-list a:hover {
    color: #FFF;
}

body.information .eyecatch_box .breadcrumbs-list span {
    color: #FFF;
	font-weight: bold;
}

body.information .eyecatch_box img {
	margin-bottom: 40px;
}

.information_top_banner {
	padding-top: 26px;
	list-style-type: none;
	display: flex;
	justify-content: space-between;
}

.information_top_banner li {
	width: 356px;
	background-color: rgb(0, 0, 0);
	overflow: hidden;
    height: 163px;
    color: #FFF;
    text-align: center;
    font-size: 18px;
	background-repeat: no-repeat;
    position: relative;
	transition: 0.5s all;
}

.information_top_banner li::before {
	content: "";
	position: absolute;
	inset: 0;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	transition: transform 0.6s ease;
}


.oseki_link::before {
    background-image: url(images/information_banner01.jpg);    
}

.access_link::before {
    background-image: url(images/information_banner02.jpg);    
}

.kessai_link::before {
    background-image: url(images/information_banner03.jpg);    
}

.information_top_banner li h3 {
	color: #FFF;
	font-size: 18px;
	z-index: 1;
	position: absolute;
	top: 76%;
	left: 66%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	box-sizing: border-box;
	overflow: hidden;
	line-height: 57px;
	height: 57px;
	width: 210px;
	border: 1px solid #FFF;
	background-color: rgba(0, 0, 0, 0.7);	
}

.information_top_banner li a {
    display: block;
	width: 100%;
	height: 100%;
	position: relative;
	color: #FFF;
	text-align: center;
}

.information_top_banner li a::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,0.5);
	transition: 0.3s;
}

.information_top_banner li:hover::before {
	transform: scale(1.1, 1.1);
}

.information_top_banner li a:hover::before {
	background: rgba(0,0,0,0);
}

.kodawari {
    width: calc(100% - 180px);
    box-sizing: border-box;
    margin-left: 180px;
    position: relative;
    margin-bottom: 40px;
}

.kodawari h1 {
	display: flex;
	align-items: center;
	justify-content: center;
    width: 100%;
    font-size: 80px;
}

.kodawari h1::before,
.kodawari h1::after {
	content: "";
	width: 177px;
	height: 1px;
 	background-color: #000;
}

.kodawari h1::before {
	margin-right: 40px;
}

.kodawari h1::after {
	margin-left: 40px;
}

.sakana {
    width: 100%;
    min-width: 1700px;
    height: 1080px;
	background-image: url(images/sakana_bg.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: relative;
	margin-bottom: 100px;
}

.sakana::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 313px;
    width: 100%;
    background: linear-gradient(
    to top,
    rgb(255 255 255 / 1) 0%,
    rgb(255 255 255 / 0.8) 40%,
	rgb(255 255 255 / 0.6) 55%,
    rgb(255 255 255 / 0) 100%
  );
}

.sakana_bg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    min-width: 100%;
    min-height: 100%;
    z-index: -10;
    object-fit: cover;
}

.sakana_information {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    height: 900px;
    width: 1100px;
    font-family: "Noto Serif JP", serif;
    color: #FFF;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    font-size: 18px;
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;	
	background-image: url(images/sakana_moji.png);
	background-repeat: no-repeat;
	background-position: 15% 7%;	
}

.sakana_text {
	padding-top: 220px;
}

.sakana_text h1 {
	padding-left: 66px;
}

.sakana_text p {
	height: 422px;
	padding-top: 116px;
}

.hito {
    width: 100%;
    min-width: 1700px;
    height: 1080px;
    position: relative;
}

.hito_information {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    height: 900px;
    width: 1100px;
    font-family: "Noto Serif JP", serif;
    color: #000;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    font-size: 18px;
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;	
	background-image: url(images/hito_moji.png);
	background-repeat: no-repeat;
	background-position: 94% 7%;	
}

.hito_text {
	padding-top: 220px;
}

.hito_text h1 {
	padding-left: 66px;
}

.hito_text p {
	height: 370px;
	padding-top: 160px;
}

.ma {
    width: 100%;
    min-width: 1700px;
    height: 1080px;
	background-image: url(images/ma_bg.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: relative;
	margin-bottom: 100px;
}

.ma_information {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    height: 900px;
    width: 1100px;
    font-family: "Noto Serif JP", serif;
    color: #FFF;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    font-size: 18px;
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;	
	background-image: url(images/ma_moji.png);
	background-repeat: no-repeat;
	background-position: 15% 7%;	
}

.ma_text {
	padding-top: 220px;
}

.ma_text h1 {
	padding-left: 66px;
}

.ma_text p {
	height: 454px;
	padding-top: 116px;
}

.oseki {    
    font-family: "Noto Serif JP", serif;
    position: relative;
    box-sizing: border-box;
}

.oseki_container {
    width: 1272px;
    margin-right: auto;
    margin-left: auto;
	margin-bottom: 50px;
    padding-left: 130px;
    position: relative;
    display: flex;
    justify-content: space-between;
    list-style-type: none;
    align-items: flex-end;
}

.oseki_container h1 {
    font-size: 40px;
    color: #000;
    min-width: 130px;
    position: relative;
}

.oseki_container h1::after {
    font-size: 16px;
    color: #FFDE7B;
    font-weight: bold;
    content: '- Your seat';
    display: block;
    position: absolute;
    top: 60px;
    left: 12px;
}

.oseki_container li span {
    width: 422px;
    font-size: 22px;
    line-height: 46px;
    box-sizing: border-box;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #DDD;
    position: relative;
    display: inline-block;
    text-align: right;
}

.oseki_container li span::before {
    content: '';
    width: 20px;
    height: 1px;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    top: 46px;
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: #555;
}

.oseki_text {
    width: 1272px;
    margin-right: auto;
    margin-left: auto;
	margin-bottom: 130px;
    padding-left: 130px;
    display: flex;
    justify-content: space-between;
    list-style-type: none;
}

.oseki_text li p {
    width: 900px;
	font-size: 18px;
}

.oseki_text dl {
	width: 300px;
	font-size: 14px;
	background-color: #AAA;
	box-sizing: border-box;
	padding: 18px;
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;
	position: relative;
}

.oseki_text dl::before {
    content: '';
    display: block;
    position: absolute;
    top: -4px;
    left: -4px;
    border-top-width: 1px;
    border-left-width: 1px;
    border-top-style: solid;
    border-left-style: solid;
    border-top-color: #000;
    border-left-color: #000;
    height: 22px;
    width: 22px;
}

.oseki_text dl::after {
    content: '';
    display: block;
    position: absolute;
    bottom: -5px;
    right: -4px;
    height: 22px;
    width: 22px;
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-right-style: solid;
    border-bottom-style: solid;
    border-right-color: #000;
    border-bottom-color: #000;
}

.oseki_text dl dt {
	width: 94px;
}

.oseki_text dl dd {
	width: 147px;
}

.information .gallery {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    width: 1270px;
    margin-right: auto;
	padding-left: 130px;
    margin-bottom: 340px;
    margin-left: auto;
    list-style-type: none;
}

.thumbnail {
    width: 100%;
    height: auto;
    cursor: pointer;
    transition: transform 0.3s;
}

.thumbnail:hover {
    transform: scale(1.05);
}

.modal {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.8);
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    pointer-events: none;
    transition: 0.3s;
	z-index: 10000;
}

.modal.active {
    opacity: 1;
    pointer-events: auto;
}

.modal img {
    max-width: 90%;
    max-height: 90%;
	transition: opacity 0.2s;
}

.modal-close {
    position: absolute;
    top: 20px;
    right: 30px;
    font-size: 40px;
    color: #fff;
    cursor: pointer;
}

.modal-prev,
.modal-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	font-size: 40px;
	color: #fff;
	background: none;
	border: none;
	cursor: pointer;
	padding: 10px;
}

.modal-prev { left: 20px; }
.modal-next { right: 20px; }

.modal-prev:hover,
.modal-next:hover {
	opacity: 0.7;
}

.access_map {
	font-family: "Noto Serif JP", serif;
	position: relative;
	box-sizing: border-box;
	background-image: url(images/black_stripe_bg.png);
	background-repeat: repeat;
	padding-top: 60px;
}

.access_container {
    width: 1272px;
    margin-right: auto;
    margin-left: auto;
	margin-bottom: 20px;
    padding-left: 130px;
    position: relative;
    list-style-type: none;
}

.access_container h1 {
    font-size: 40px;
    color: #FFF;
    position: relative;
}

.access_container h1::after {
    font-size: 16px;
    color: #FFDE7B;
    font-weight: bold;
    content: '- Access map';
    display: block;
    position: absolute;
    top: 60px;
    left: 12px;
}

.access_container li span {
    width: 164px;
	height: 30px;
    box-sizing: border-box;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #FFF;
    position: relative;
    display: inline-block;
}

.access_container li span::before {
    content: '';
    width: 20px;
    height: 1px;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    top: 29px;
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: #555;
}

.access_container li p {
	color: #FFF;
	padding-top: 30px;
	line-height: 1.4;
}

.map_box {
	width: 1264px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 117px;
	padding-left: 130px;
}

.parking {
    width: 1264px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 110px;
    padding-left: 130px;
	color: #FFF;
    display: flex;
    justify-content: space-between;
	list-style-type: none;
}

.parking dl {
	width: 500px;
	display: flex;
	list-style-type: none;
	justify-content: space-between;
	flex-direction: row-reverse;
	padding-top: 20px;
	padding-bottom: 25px;
}

.parking dl dt {
	height: 136px;
	width: 213px;
	box-sizing: border-box;
	background-color: #ECECFB;
	padding-top: 45px;
	padding-left: 34px;
	position: relative;
	color: #000;
	font-weight: bold;
	line-height: 1.4;
}

.parking dl dt::before {
	content: "";
	position: absolute;
	left: 5px;
	top: 50%;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-right: 12px solid #5C5C5C;
}

.annai {
    list-style-type: none;
    line-height: 2.0;
}

.access_map h2 {
    width: 1272px;
    margin-right: auto;
    margin-left: auto;
	margin-bottom: 90px;
    padding-left: 130px;
	padding-bottom: 140px;
	font-size: 18px;
	font-weight: bold;
    color: #FFF;
	text-align: center;
}

.payment {
	margin-bottom: 265px;
}

.payment_map {
	font-family: "Noto Serif JP", serif;
	position: relative;
	box-sizing: border-box;
	background-color: #FFF;
	padding-top: 60px;
}

.payment_container {
    width: 1272px;
    margin-right: auto;
    margin-left: auto;
	margin-bottom: 40px;
    padding-left: 130px;
    position: relative;
    list-style-type: none;
}

.payment_container h1 {
    font-size: 40px;
    color: #000;
    position: relative;
}

.payment_container h1::after {
    font-size: 16px;
    color: #FFDE7B;
    font-weight: bold;
    content: '- Payment method';
    display: block;
    position: absolute;
    top: 60px;
    left: 12px;
}

.payment_container li span {
    width: 164px;
	height: 30px;
    box-sizing: border-box;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #DDD;
    position: relative;
    display: inline-block;
}

.payment_container li span::before {
    content: '';
    width: 20px;
    height: 1px;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    top: 29px;
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: #555;
}

.payment_box {
	width: 1272px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 20px;
	padding-left: 130px;
	list-style-type: none;
	font-size: 18px;
	font-weight: bold;
}

.payment_box ul {
	width: 337px;
	margin-bottom: 20px;
	list-style-type: none;
	display: flex;
	justify-content: space-between;
	padding-top: 25px;
	padding-bottom: 15px;
}

.payment_box p {
	width: 705px;
    position: relative;
    padding-top: 15px;
}

.payment_box p::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: repeating-linear-gradient(
    to right,
    #000 0 4px,
    transparent 4px 7px
  );
}

/***************************************************************
/*****お知らせページのスタイル
/****************************************************************/

body.topics,
body.topics_detail,
body.archive {
	background-color: #000;
	color: #FFF;
	margin: 0px;
}

.topics,
.topics_detail {
	width: 100%;
	font-family: "Noto Serif JP", serif;
}

.detail_top {
	width: calc(100% - 220px);
	height: 80px;
	margin-left: 220px;
	margin-bottom: 224px;
	background-color: #FFF;
	position: relative;
}

.detail_top::before {
	content: '';
	display: inline-block;
	width: 27px;
	height: 80px;
	position: absolute;
	left: 14px;
	top: 0px;
	background-color: #000;
}

/****************************************************************
/*　ブログについてのCSS */
/****************************************************************/

.blog_box {
	padding-top: 40px;
	width: 1280px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 235px;
	padding-left: 180px;
	display: flex;
	justify-content: space-between;
	color: #FFF;
}

.blog_right .widget_categories ul li a::before,
.blog_widget_box ul li a::before {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    left: 15px;
    width: 4px;
    height: 4px;
    margin-top: -1px;
    border: 0px;
    border-top: solid 2px #FFF;
    border-right: solid 2px #FFF;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.blog_left {
	width: 850px;
	box-sizing: border-box;
	font-family: "Noto Serif JP", serif;
}

body.topics .blog_left > section,
body.archive .blog_left > section {
	width: auto !important;
	margin-bottom: 0px;
	box-sizing: border-box;
	padding-top: 30px;
	padding-right: 0%;
	padding-bottom: 30px;
	padding-left: 0%;
	border-top-width: 1px;
    border-top-style: solid;
    border-top-color: #FFF;
	display: flex;
	position: relative;
}

body.topics .blog_left > section:last-of-type,
body.archive .blog_left > section:last-of-type {
	border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #FFF;
}

.blog_left > section::before {
	content: '';
	width: 20px;
	height: 1px;
	box-sizing: border-box;
	position: absolute;
	left: 0;
	top: -1px;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #555;
}

.blog_left > section:last-of-type::after {
	content: '';
	width: 20px;
	height: 1px;
	box-sizing: border-box;
	position: absolute;
	left: 0;
	bottom: -1px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #555;
}

body.topics .post_box {
	font-size: 13px;
}

body.topics .post_box a,
body.archive .post_box a {
	text-decoration: none;
	color: #FFF;
}

body.topics .post_box p {
	margin-bottom: 15px;
}

body.topics_detail .blog_left .post-meta p {
	margin-bottom: 30px;
}

body.topics_detail .blog_left .post-meta p:last-child {
	margin-bottom: 60px;
}

#archive_eyecatch img {
	max-width: 100%;
	height: auto;
}

.blog_right {
    width: 330px;
    box-sizing: border-box;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 13px;
}

.widget_calendar,
.widget_categories,
.widget_archive,
.widget_recent_entries {
	box-sizing: border-box;
	margin-bottom: 90px;
}

.blog_right .widget {
	width: 330px;
}

.blog_right .widget ul {
	list-style-type: none;	
}

.blog_right .widget ul li {
	line-height: 2.5;
	transition: .3s;
}

.blog_right .widgettitle,
.blog_under .widgettitle {
	display: block;
	text-align: center;
	line-height: 110%;
	font-size: 15px;
	color: #FFF;
	margin-bottom: 30px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFF;
	padding-bottom: 30px;
}

.widget_categories ul li a,
.blog_widget_box ul li a {
	padding-left: 30px;
}

.blog_widget_box ul {
	width: 98%;
	box-sizing: border-box;
	list-style: none;
}

.blog_widget_box ul li a {
	color: #FFF;
	position: relative;
}

.blog_widget_box ul li a:hover {
	color: #AAA;
}

.blog_right #wp-calendar {
	width: 330px;
	margin-left: auto;
    margin-right: auto;
	font-family: 'Noto Sans JP', sans-serif;
	text-align: center;
	color: #FFF;
}

.blog_right #wp-calendar td {
	font-size: 12px;
	color: #FFF;
	line-height: 40px;
	font-weight: bold;
}

.pad {
	border: none!important;
}

.blog_right #wp-calendar caption {
	font-family: 'Noto Sans JP', sans-serif;
	color: #FFF;
	font-size: 13px;
	font-weight: bold;
	margin-bottom: 17px;
}

.blog_right #wp-calendar thead {
	font-family: 'Noto Sans JP', sans-serif;
	color: #FFF;
	font-size: 12px;
}

.blog_right #wp-calendar a {
	color: #FFF;
	background-color: #BBB;
	display: block;
	transition: .3s;
}

.blog_right #wp-calendar a:hover {
	background-color: #333;
}

.ichiran_banner {
	display: block;
	color: #FFF!important;
	text-decoration: none;
	font-weight: bold;
	line-height: 48px;
	box-sizing: border-box;
	text-align: center;
	margin-bottom: 30px;
	background-color: #111F41;
	height: 48px;
	border-radius: 24px;
}

.ichiran_banner:hover {
	display: block;
	color: #FFF!important;
	text-decoration: none;
	font-weight: bold;
	box-sizing: border-box;
	text-align: center;
	background-color: #679898;
	transition: all .3s;
}

.blog-share {
    position: relative;
    padding: 48px 0;
    border-top: 1px solid #FFF;
    border-bottom: 1px solid #FFF;
    text-align: center;
	margin-bottom: 110px;
}

.blog-share::before {
    content: '';
    width: 20px;
    height: 1px;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    top: -1px;
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: #555;
}

.blog-share::after {
    content: '';
    width: 20px;
    height: 1px;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    bottom: -1px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #555;
}

.blog-share h4 {
    padding: 10px 0;
    font-size: 16px;
    letter-spacing: 1px;
}

.share-button {
    width: 230px;
    margin-right: auto;
    margin-left: auto;
    display: flex;
    justify-content: space-between;
}

.share-button a {
	transition: .3s;    
}

.share-button a:hover {
	transform: scale(1.1);
}

.btn.btn-share-fb {
    width: 27px;
    height: 26px;
    padding: 0;
}

.btn.btn-share-ig {
    width: 27px;
    height: 26px;
    padding: 0;
}

/****記事一覧************************/

h1.title {
	box-sizing: border-box;
    width: 100%;
    font-size: 20px;
	line-height: 1.5;
    text-align: left;	
	text-decoration:none;
	padding-bottom: 30px;
	margin-bottom: 25px;
}

h1.title a {
	color: #FFF;
	text-decoration:none;
	transition: .3s;
}

h1.title a:hover {
	color: #AAA!important;
}

.topics_detail h1.title {
	box-sizing: border-box;
    width: 100%;
    font-size: 32px;
	line-height: 1.5;
    text-align: left;	
	text-decoration:none;
	padding-bottom: 30px;
	margin-bottom: 25px;
}

#archive_eyecatch {
	float: left;
	padding-right: 10px;
}

.more-link {
	height: 22px;
	display: inline-block;
	line-height: 22px;
	font-size: 14px!important;
	font-weight: bold;
	text-align: center;
	width: 70px;
	border: 1px solid #FFF;
	position: absolute;
	right: 0;
	bottom: 30px;
	transition: all .3s;
}

a.more-link:hover {
	background-color: #CCC;
	color: #000;
}

/* TOPICSページのpagerに関するCSS */

.navigation {
	display: flex;
	justify-content: space-between;
}

.navigation .alignleft,
.navigation .alignright,
.leftnavi,
.rightnavi{
    background-color: #4f828b;
    margin-bottom: 20px;
    padding-top: 3px;
    padding-right: 10px;
    padding-bottom: 3px;
    padding-left: 10px;
    margin-top: 20px;
}

.navigation .alignleft:hover,
.navigation .alignright:hover,
.leftnavi:hover,
.rightnavi:hover {
	background-color: #84B1B9;
	color: #FFF;
	transition: all .3s;
}

.navigation a {
    color: #FFF;
    text-decoration: none;
    font-size: 14px;
	transition: all .3s;
}

.navigation a:hover {
	background-color: #CCC;
    color: #000;
}

.date_and_time {
	font-size: 13px;
	color: #FFF;
	padding: 5px;
	font-weight: bold;
}

.date_and_time span {
	color: #FFF;
}

body:not(.topics_detail) .thumbnail-image,
body:not(.topics_detail) .wp-post-image {
	float: left;
    padding-right: 25px;
}

.wp-calendar-nav {
	position: static!important;
	transform: translate(-0%, 0%)!important;
	-webkit-transform: translate(-0%, 0%)!important;
	float: none!important;
	display: flex;
	box-sizing: border-box;
	justify-content: space-between;
	padding-right: 10px!important;
	padding-left: 10px!important;
	padding-top: 0px!important;
	border-right-style: none!important;
}

.wp-calendar-nav span a {
	color: #FFF;	
}

/*Pagenation*/

.pagenation {
    padding-top: 64px;
    display: table;
    min-width: 330px;
    margin-left: auto;
    margin-right: auto;
}

.pagenation ul {
    margin: 0;
    display: flex;
    justify-content: space-between;
}

.pagenation li {
    float: left;
    list-style: none outside none;
	color: #FFF;
    display: block;
    text-decoration: none;
	border-radius: 5px;
	box-sizing: border-box;
	line-height: 32px;
	min-width: 32px;
}

.pagenation li.active {
    background-color: #989898;
    color: #000;
    font-size: 10px;
    font-weight: bold;
    cursor: not-allowed;
    border-bottom: 1px solid #000;
    text-align: center;
}

.pagenation li a {
	font-size: 10px;
	font-family:'Noto Sans JP', serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background-color: #FFF;
	color: #000!important;
	display: block;
	border-radius: 5px;
	text-decoration: none;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
	text-align: center;	
}

.pagenation li a.first,
.pagenation li a.last {
    min-width: 55px;
}

.pagenation li a:hover {
    background-color: #444;
    color: #FFF!important;
    opacity: 0.8;
    transition-duration: 500ms;
    transition-property: all;
    transition-timing-function: ease;
}

.pagenation li span {
    display: inline-block;
    margin: 0 3px;
    padding: 0 5px 0px;
	font-size: 14px;
}

.pagenation:after, .pagenation ul:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}

.pagenation-area {
	font-family: 'Noto Sans JP', sans-serif;
    box-sizing: border-box;
    width: 100%;
	display: flex;
	justify-content: space-between;
	font-size: 10px;
	line-height: 32px;
	color: #000;
	padding-top: 100px;
}

.pagenation-area a {
    background-color: #FFF;
    color: #000;
    padding-right: 10px;
    padding-left: 10px;
    display: inline-block;
	border-radius: 5px;
	transition: .3s;
}

.pagenation-area a:hover {
    color: #AAA!important;
}

.navigation a {
	font-size: 10px;
	font-family:'Noto Sans JP', serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 32px;
	background-color: #FFF;
	color: #000;
	padding-right: 10px;
	padding-left: 10px;
	display: inline-block;
	border-radius: 5px;
	transition: .3s;
}

.prev-link {
    box-sizing: border-box;
    display: block;
    float: left;    
	height: 32px;
    margin: 0;
    text-align: left;
}

.center-link {
    box-sizing: border-box;
    display: block;
    float: left;    
    margin: 0;
    text-align: center;
}

.center-link a {
    transition: all .3s;
}

.next-link {
    box-sizing: border-box;
    display: block;
    float: right;    
    margin: 0;
    text-align: right;
}

.nextpostslink {
	font-size: 10px!important;    
}