@charset 'UTF-8';

/*全体の設定
---------------------------------------------------------------------------*/
*,
*:before,
*:after {
  margin: 0px;
  padding: 0px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  font-size: 100%;
	scroll-behavior: smooth;
}
body {
  background-color: #fff;
  color: #353535;
  font-family: 'Noto Sans JP',Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  margin: 0px;
  padding: 0px;
}
.wrapper {
	width: 900px;
  margin: 0 auto;
  padding: 80px 0;
  text-align: justify;
}
img {
  border: none;
  vertical-align: bottom;
}
table {
  border-spacing: 0;
  border-collapse: collapse;
}
ul {
	list-style: none;
}
.sp_none {
  display: block;
}
.pc_none {
  display: none;
}
div[id] {
	position: relative;
}
div[id]::before {
	content: '';
	display: block;
	height: 90px;
	margin-top: -90px;
}

/* color--------------*/
.gray {
  color: #595959;
}
.blue {
  color: #003d6b;
}
.bg_white {
  background-color: #fff;
}
.bg_gray {
	background-color: #f4f4f4;
}
.bg_gold {
	background-color: #dcc090;
}
.bg_stripe {
	background-image: url(../images/bg_stripe.jpg);
	background-repeat: repeat;
}

/* 文字--------------*/
a:hover img {
  opacity: 0.8;
}
h2 {
  font-size: 1.5rem;
  font-weight: 700;
  padding-bottom: 15px;
	border-bottom: 1px dashed #003d6b;
	margin-bottom: 30px;
	color: #003d6b;
	padding-left: 30px;
	background-image: url(../images/scissors.svg);
	background-repeat: no-repeat;
	background-size: 1.5rem;
	background-position: 0 0;
	line-height: 1;
}
h2 .annotation {
    margin-left:0.4em;
    font-size:13px;
    color:#000;
    font-weight:normal;
}

h3 {
  font-size: 1.25rem;
  font-weight: 700;
}
h4 {
  font-size: 1.125rem;
  font-weight: 700;
}
.size20 {
  font-size: 1.25rem;
  font-weight: 700;
}
.bold {
  font-weight: 700;
}
.size12 {
	font-size: 0.75rem;
}
.size14 {
  font-size: 0.875rem;
}
.size16 {
  font-size: 1rem;
}
a {
	color: #fff;
	font-weight: 700;
	text-decoration: none;
}
a:hover {
	color: #dcc090;
}
.t_left {
	text-align: left;
}
.t_right {
	text-align: right;
}
.t_center {
	text-align: center;
}

/*余白
-------------------*/
.mt20 {
	margin-top: 20px;
}
.mt30 {
	margin-top: 30px;
}
.mt40 {
  margin-top: 40px;
}
.mt50 {
  margin-top: 50px;
}
.mt80 {
  margin-top: 80px;
}
.mb20 {
  margin-bottom: 20px;
}
.pb0 {
  padding-bottom: 0;
}
/*ヘッダー
----------------------------------*/
header {
  width: 100%;
  background-color: #fff;
  z-index: 80;
  align-items: center;
  position: fixed;
}
.header_inner {
	display: flex;
	max-width: 1440px;
	padding: 10px;
	margin: 0 auto;
	justify-content: space-between;
	overflow: hidden;
}
.logo {
	text-align: left;
	margin: 0;
}
.logo a {
	align-items: center;
}
.header_p {
	margin-top: 5px;
	font-size: 0.875rem;
	text-align: right;
}
.header_cta {
	display: flex;
	justify-content: flex-end;
}
.cta_tel {	
	margin-right: 5px;
}

nav {
	background-color: #353535;
	width: 100%;
	padding-top: 5px;
	padding-bottom: 5px;

}
.nav_inner {
	border-top: 1px dashed #fff;
	border-bottom: 1px dashed #fff;
	padding-top: 5px;
	padding-bottom: 7px;
	display: flex;
	justify-content: center;
}
.nav_inner li {
	margin: 0 47px;
}
/*fv
----------------------------------*/
.fv {
	width: 100%;
	margin: 0 auto;
	padding-top: 163px;
	text-align: center;
  margin: 0 auto;
	background-image: url(../images/bg_stripe.jpg);
	background-repeat: repeat;
}
.logo_fv {
	width: 300px;
	margin-top: 156px;
}
/*hello
----------------------------------*/
.hello_container {
	display: flex;
	max-width: 100%;
	justify-content: space-between;
	margin-top: 30px;
}
.hello_p {
	width: 61%;
}
.hello_item img{
	width: 330px;
}
.name {
	margin-top: 15px;
	text-align: right;
}
.name ruby {
	font-weight: 700;
	font-size: 1.5rem;
	margin-left: 20px;
}
.name rt {
	font-weight: 400;
}
/*schedule
----------------------------------*/
.schedule_container {
	display: flex;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	width: 900px;
	margin-bottom: 30px;
}
.schedule_box {
	background-color:#f4f4f4;
	width: 440px;
	padding: 10px 30px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 68px;
}
.schedule_box h4 {
	color: #003d6b;
	margin-top: 0;
	margin-bottom: 0;
}
.schedule_box ul {
	display: flex;
}
.schedule_p {
	font-size: 0.75rem;
	text-align: right;
	margin-top: 10px;
}
.calender_container {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}
/*menu
----------------------------------*/
.menu_title {
	text-align: center;
	color: #003d6b;
}
.menu_container {
	background-color: #fff;
	padding: 30px;
	margin-top: 20px;
}
.inner_title {
	text-align: center;
	margin-bottom: 15px;
}
.menu_table {
	width: 100%;
}
.menu_table tr {
	border-top: 1px solid #f4f4f4;	
}
.menu_table tr:last-child {
	border-bottom: 1px solid #f4f4f4;
}
.menu_table td {
	padding-top: 15px;
	padding-bottom: 15px;
}
.price {
	text-align: right;
	color: #003d6b;
}
.menu_attention {
	font-size: 0.75rem;
	text-align: right;
	margin-top: 10px;
}
.menu_text {
	font-size: 0.75rem;
	padding-top: 10px;
}
.btn {
	background-color: #003d6b;
	margin: 30px auto 0 auto;
	width: 390px;
	max-width: 390px;
	text-align: center;
	padding-top: 20px;
	padding-bottom: 20px;
}
.btn i {
	margin-left: 20px;
}
.btn:hover {
	opacity: 0.8;
}
/*staff
----------------------------------*/
.english_name {
	margin-left: 20px;
	font-size: 0.75rem;
	font-family: Arial, Helvetica, sans-serif;
	color: #003d6b;
	font-weight: normal;
}
.staff_container {
	display: flex;
	justify-content: space-between;
	margin-top: 20px;
}
.profile_table {
	width: 480px;
}
.profile_table tr {
	border-top: 1px solid #f4f4f4;
	vertical-align: text-top;
}
.profile_table tr:last-child {
	border-bottom: 1px solid #f4f4f4;
}
.profile_table th {
	font-weight: normal;
	width: 15%;
	padding-top: 15px;
	padding-bottom: 15px;
	
}
.profile_table td {
	padding-top: 15px;
	padding-bottom: 15px;
}
/*access
----------------------------------*/
.access_container {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px;
	margin-top: 30px;
}
.access_box {
	background-color: #fff;
	padding: 20px;
}
.access_item i {
	color: #003d6b;
	margin-right: 0.5rem;
}
.parking dt {
	border-bottom: 1px dashed #003d6b;
	margin-top: 30px;
}
.parking dd {
	padding-top: 10px;
}
.bottom_cta {
	margin-top: 40px;
	color: #003d6b;
	text-align: center;
}
.cta_btn {
	margin-top: 10px;

}
/*footer
----------------------------------*/
footer {
	width: 100%;
	text-align: center;
	background-color: #003d6b;
	padding-top: 40px;
	padding-bottom: 20px;
	color: #fff;
	font-size: 0.75rem;
}
.logo_footer {
	width: 150px;
	margin-bottom: 30px;
}

/*item.html
----------------------------------*/
.option {
	padding-top: 163px;
}
.osusume_container {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 30px;
	width: 100%;
	margin-top: 20px;
}
.osusume_item {
	width: 280px;
}
.osusume_item img{
	max-width: 100%;
}
.osusume_item dl{
	border-bottom: 1px solid #f4f4f4;
	padding-top: 15px;
	padding-bottom: 15px;	
}
.osusume_item dt {
	font-weight: 700;
}
.osusume_item dd {
	text-align: right;
	color: #003d6b;
}
.osusume_container2 {
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
	max-width: 100%;
}
/*SP用
----------------------------------*/
@media screen and (max-width: 768px) {
  body {
    max-width: 100%;    
  }
  .sp_none {
    display: none;
  }
  .pc_none {
    display: block;
  }
  img {
    max-width: 100%;
  }

  .wrapper {
    padding: 60px 1rem;
    overflow: hidden;
		max-width: 100%;
  }
/* header */
header {
	width: 100%;
	margin: 0;
}
.header_inner {
	width: 100%;
	max-width: 100%;
	padding: 0 0 0 1rem;
}
.cta_tel {	
	margin-right: 0;
}
.logo {
	max-width: 46%;
}
.logo a {
	align-items: center;
}
.logo a img {
	max-height: 50px;
	margin: 0 auto;
}
.nav_inner {
	padding: 10px 1rem;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
		gap: 10px;
}
.nav_inner li {	
	margin: 0;
	width: 100%;
	text-align: center;	
}
.nav_inner li a {
	color: #353535;
	border: 1px solid #999;
    background: #fff;
    border-radius: 4px;
	width: 100%;
	display: block;
	padding-top: 10px;
	padding-bottom: 10px;
	font-size: 0.875rem;
}
/* hello */
.fv {
	padding-top: 190px;
}
.hello_container {
	display: block;
	max-width: 100%;
	margin-top: 20px;
}
.hello_p {
	width: 100%;
}
.hello_item {
	text-align: center;
}
.hello_item img{
	max-width: 100%;
	margin-top: 20px;
}
.name {
	text-align: center;
	line-height: 2.5;
}
/* schedule */
.schedule_container {
	display: block;
	width: 100%;
}
.schedule_box {
	width: 100%;
	padding: 10px;
}
.schedule_p {
	margin-bottom: 20px;
	text-align: left;
}
/* menu */
.menu_container {
	padding: 1rem;
}
.btn {
	width: 100%;
	margin-bottom: 60px;
}
.price {
	width: 35%;
	padding-left: 0.5rem;
	font-size: 0.875rem;
}
/* staff */
#staff h4 {
	text-align: center;
}
.staff_container {
	display: block;
}
.staff_item{
	text-align: center;
}
.profile_table {
	margin-top: 30px;
	width: 100%;
	text-align: justify;
}
.profile_table th {
	width: 20%;
}
/* access */
#access iframe {
	height: 400px;
}
.access_container {
	display: block;
}
.access_box {
	margin-top: 30px;
}
div[id]::before {
	height: 130px;
	margin-top: -130px;
}
/* item.html */
.osusume_container {
	display: block;
}
.osusume_container2 {
	display: block;
}
.osusume_item {
	margin: 0 auto;
	text-align: center;
	width: 100%;
}
.osusume_item img {
	max-width: 345px;
}
.osusume_item dd {
	text-align: center;
}
.osusume_item dl {
	margin-bottom: 20px;
}
}