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

@media screen and (max-width: 1500px) {
.h-search input {
	width: 200px;
}
.h-btn a, .h-btn li:last-child a {
    padding: 0 10px;
    min-width: 75px;
}
.h-btn, .h-search {
    margin-left: 10px;
}
#gnavi > li > a, #gnavi > li > span {
    padding: 0 7px;
}
h1 {
    font-size: 10px;
}
.b02-ttl {
    font-size: 17px;
	min-height: 46px;
}
}
@media screen and (max-width: 1150px) {
.h-search input {
	width: 170px;
}
.b02-ttl {
    font-size: 14px;
	min-height: 38px;
}
.b02-list .slick-arrow {
	width: 50px;
	margin-top: -25px;
	opacity:  0.7;
}
.b02-more a {
	font-size: 15px;
	width: 110px;
}
}
@media screen and (max-width: 1150px) {
.b04-top {
    background-attachment: inherit;
}
}
@media screen and (min-width: 641px) {
ul.f02-bn {
    display: none;
}
	.b01-top-txt {
		width: calc(100% - 500px);
	}
}
@media screen and (max-width: 640px) {
h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, blockquote, th, td, pre, address, li, dt, dd {
	font-size: 120%;
}
#wrapper {
	min-width: 100%;
	margin: 0;
}
#main, #footer {
	min-width: 100%;
}
.container, .under #main {
	padding: 0 3%;
	width: 100%;
	box-sizing: border-box;
}
.sp {
	display: block;
}
.pc {
	display: none;
}
.image-r, .image-l {
	float: none;
	text-align: center;
	margin: 0 0 10px;
}

.tbl-scroll, .img-scroll {
	overflow-x: scroll;
}
.tbl-scroll > table, .img-scroll img {
	min-width: 640px;
}
.tbl-scroll > table > table {
	min-width: 100%;
}
/** end table scroll***/
#header {
    min-width: 100%;
    padding: 10px 3%;
    display: block;
    position: fixed;
    top: 0;
    z-index: 99;
}
.logo {
    float: left;
}
.h-left {
    padding: 0;
    width: 100%;
	margin: 0 0 15px;
	overflow: hidden;
}
.h-btn {
    display: none;
}
.h-right {
    width: 100%;
	margin: 0;
	display: block;
	clear: both;
}
.h-search {
	margin: 0;
}
.h-search input {
    width: 100%;
    background: #4b4b4b;
    border: none;
}
.h-btn-share {
    /* display: none; */
}
h1 {
    font-size: 10px;
    line-height: 1.3em;
}
#gnavi {
    display: none;
    position: fixed;
    width: 100%;
    z-index: 9999;
    top: 130px;
    height: calc(100% - 130px);
    left: 0;
    margin: 0;
    background: rgba(30,30,30,0.9);
    overflow: auto;
}
#gnavi > li {
    display: block;
}
#gnavi > li.over:after {
    content: '';
    position: absolute;
    right: 15px;
    top: 26px;
    width: 14px;
    height: 2px;
    background: #BDCCD4;
    transition: all 0.5s ease;
}
#gnavi > li.over:before {
    content: '';
    position: absolute;
    right: 21px;
    top: 20px;
    width: 2px;
    height: 14px;
    background: #BDCCD4;
    transition: all 0.5s ease;
}
#gnavi > li.over.active:before {
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	transform: rotate(90deg);
}
#gnavi > li:not(.over):after {
    content: '';
    position: absolute;
    right: 20px;
    top: 22px;
    border: solid #BDCCD4;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 3px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
#gnavi > li:nth-child(2) > a {
    border-top: 1px solid rgba(255,255,255,0.4);
}
#gnavi > li:first-child {
    display: none;
}
#gnavi > li > a, #gnavi > li > span {
    padding: 15px 20px;
    display: block;
    background: #14326E;
    border-bottom: 1px solid rgba(255,255,255,0.4);
	font-size: 14px;
}
#gnavi > li > a:hover, #gnavi > li > span:hover {
	opacity: 1;
}
#gnavi > li.close-menu {
    display: block;
}
.submenu {
    position: relative;
    background: none;
	width: 100%;
}
.submenu a {
    padding: 15px 20px;
    background: #1a263e;
}
#gnavi .close-menu span {
    background: #0F3C78;
    width: 90%;
    margin: 20px auto 40px;
    border: none;
    text-align: center;
}
#gnavi > li.close-menu:after {
	display: none;
}
/* MENU-ICON */
.menu-icon {
    height: 23px;
    box-sizing: border-box;
    text-align: center;
	float: right;
    text-transform: uppercase;
    line-height: 1em;
    right: 3%;
    top: 39px;
    cursor: pointer;
    color: #fff;
    font-size: 15px;
    padding: 0;
	margin-top: 4px;
    z-index: 99999;
    font-family: 'Oswald', sans-serif;
    display: flex;
    align-items: center;
}
.menu-icon span {
    display: inline-block;
    margin: 0 0 0 10px;
    width: 30px;
    height: 3px;
    background-color: #fff;
    -webkit-transition-duration: 0;
    -moz-transition-duration: 0;
    -ms-transition-duration: 0;
    -o-transition-duration: 0;
    transition-duration: 0;
    -webkit-transition-delay: 0.2s;
    -moz-transition-delay: 0.2s;
    -ms-transition-delay: 0.2s;
    -o-transition-delay: 0.2s;
    transition-delay: 0.2s;
    top: 0;
    left: 0;
    position: relative;
}
.menu-icon span::after, .menu-icon span::before {
	display: block;
	content: '';
	position: absolute;
	width: 30px;
	height: 3px;
	background-color: #fff;
	-webkit-transition-property: margin, -webkit-transform;
	-webkit-transition-duration: 0.2s;
	-moz-transition-duration: 0.2s;
	-ms-transition-duration: 0.2s;
	-o-transition-duration: 0.2s;
	transition-duration: 0.2s;
	-webkit-transition-delay: 0.2s, 0;
	-moz-transition-delay: 0.2s, 0;
	-ms-transition-delay: 0.2s, 0;
	-o-transition-delay: 0.2s, 0;
	transition-delay: 0.2s, 0;
}
.menu-icon span::before {
	margin-top: -10px;
}
.menu-icon span::after {
	margin-top: 10px;
}
.menu-icon.active span {
	background-color: transparent;
}
.menu-icon.active span::before, .menu-icon.active span::after {
	margin-top: 0px;
	-webkit-transition-delay: 0, 0.2s;
	-moz-transition-delay: 0, 0.2s;
	-ms-transition-delay: 0, 0.2s;
	-o-transition-delay: 0, 0.2s;
	transition-delay: 0, 0.2s;
}
.menu-icon.active span::before {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.menu-icon.active span::after {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
#totop {
	width: 40px;
	right: 3%;
	bottom: 40px;
	line-height: 0;
}
#mainvisual {
    margin-top: 130px;
}
#index #mainvisual h2 {
    font-size: 11vw;
    margin: 0 0 15px;
}
.idx-main-txt {
    font-size: 3vw;
}
.idx-main-img {
    display: none;
}
.idx-main-bg.slick-slider {
    height: 500px;
	top: 60px;
}
.idx-main-bg p {
	height: 500px;
}
#index #mainvisual .container {
    height: 400px;
}
.b01-top .container {
	padding:0 3%;
}
.b01-top h3 {
    font-size: 20px;
    border: none;
    padding: 0;
    margin: 0 0 10px;
	float: none;
}
.b01-top-txt {
    float: none;
	*display: flex;
}
.b01-date {
    width: 145px;
}
.b01-note {
    width: 100%;
}
.b01-main {
    padding: 40px 0 10px;
}
.idx-h3-en {
    font-size: 40px;
    margin-top: 10px;
}
.b01-item {
    width: calc(50% - 10px);
}

.gallery-area .b01-item {
    width: calc(50% - 10px);
}
.b01-txt-en {
    /* display: none; */
	font-size: 25px;
}
.box02 {
    background: #fff;
    padding: 40px 0 0;
    border: none;
}
.b02-more a {
    background: #212121;
    width: 80px;
}
.b02-more a:after {
	display: none;
}
.b02-ttl {
	margin: 0 0 10px;
}
.slick-slide img {
	height: 250px!important;
}
.box03 {
    padding: 40px 0;
}
.b03-top {
    display: block;
    border: none;
    padding: 0;
}
.box03 h3 {
    display: block;
    text-align: center;
}
.b03-h3-en {
    display: block;
    margin: 10px 0 0 0;
}
.b03-item {
    border: none;
    width: 100%;
}
.b03-item a {
    padding: 0;
}
.b03-main {
    align-items: flex-start;
}
.b03-btn {
	text-align: center;
}
.b03-btn a {
    display: inline-block;
    width: 90%;
    background: #0f3c78;
    color: #fff;
    text-decoration: none;
    padding: 20px;
    position: relative;
	margin: 0;
}
.b03-btn:after {
	display: none;
}
.b04-top {
    height: 200px;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
	background: url(../images/b04_bg01_sp.jpg) no-repeat center;
	background-size: cover;
}
.box04:after {
	display: none;
}
.b04-main .container {
    display: block;
}
.b04-img {
    text-align: center;
    margin: 0 0 30px;
}
.b04-cont {
    width: 100%;
}
.b04-ttl {
    /* text-align: center; */
    font-size: 4.5vw;
    margin: 0 0 20px;
}
.b04-btn a {
    width: 90%;
    text-align: center;
    padding: 20px;
	line-height: 1em;
}
.b04-btn {
    text-align: center;
}
.b04-btn a:after {
	display: none;
}
.b04-txt:nth-child(3) {
    margin: 0 0 30px;
}
.b04-main {
    padding: 40px 0;
}
.b04-item {
    width: 25%;
    border: none;
}
.b04-item02 {
    width: 25%;
    border: none;
}
.b04-item03 {
    width: 25%;
    border: none;
}
.b04-list.audio_b04-list .b04-item {
    border: none;
}
.b04-list.audio_b04-list .b04-item:last-child {
    border-right: none;
}
.audio_b04-list p {
    border-bottom: none;
}
.audio_b04-list p:last-child {
    border-right: none;
}
/*181217*/
	.audio_b04-list .b04-item {
    width: 25%;
}
	.audio_b04-list p:nth-child(1), .audio_b04-list p:nth-child(7) {
    border-left: none;
}
.b04-logo {
    padding: 0 0 40px;
}
.b04-list {
    border: none;
}
.footer01, .f-map {
    display: none;
}
.f02-txt {
    text-align: center;
}
.f02-logo {
    float: none;
    text-align: center;
    margin: 0 0 15px;
}
.f02-add {
    text-align: center;
    float: none;
    margin: 0 0 15px;
}
.f-copyright {
    text-align: center;
}
.footer02 {
    padding: 15px 0;
    display:  inline-block;
}

.footer02 .f02-bn {
    display:  inline-block;
}

.footer02 .container .clearfix {
    width:  100%;
}
.f02-btn li {
    float: left;
    width: 50%;
    text-align: center;
}
.f02-btn li a {
    font-size: 15px;
    color: #fff;
    text-decoration: none;
    letter-spacing: 0.5px;
    font-family: 'Oswald', sans-serif;
    white-space: nowrap;
    background: #af1110;
    position: relative;
	text-align: center;
    padding: 20px;
	display: block;
}
.f02-btn li:last-child a {
    background: #14326e;
}
.idx-txt, .b04-txt {
    font-size: 14px;
}
/* under */
.topic-path, #navi {
  width: 100%;
}

#navi dd a {
    font-size: 12px;
    padding: 15px 30px 15px 10px;
}
.under #content {
  width: 100%;
  float: none;
}
.under #main {
    margin-bottom: 20px;
}
.under #mainvisual {
  min-height: 130px;
	margin-top: 130px;
}
.under #mainvisual .container h2 {
  height: 130px;
  font-size: 12px;
  color: #fff;
  text-align: center;
  line-height: 1.4em;
  letter-spacing: 2px;
}
.under #mainvisual .container h2 span {
  font-size: 25px;
  margin-top: 5px;
}
.section {
    margin: 0 0 20px;
}
.under h3, .under h4, .under h5, .under h6 {
  margin-bottom: 20px;
}
.under h3 {
  line-height: 1.6em;
  font-size: 17px;
  text-align: center;
}
.under h3 span {
  font-size: 22px;
  margin-bottom: 5px;
}
.main-ttl {
  font-size: 12px;
  text-align: center;
}
.under h4 {
  font-size: 15px;
  padding: 4px 0 1px 20px;
}
.under h4:before {
  width: 6px;
}
.under h5 {
  font-size: 14px;
  text-align: center;
}
.under h6 {
  font-size: 15px;
}
.under h6:before {
  top: 6px;
}
.dl-special dt {
  font-size: 14px;
}
.dl-special dt:after {
  width: 100px;
}
.under-step {
  padding: 15px 0 15px 15px;
}
.under-step:before {
  left: 18px;
}
.under-step dl {
  margin-bottom: 20px;
}
.under-step dt {
  width: 80px;
}
.under-step dt:before {
  top: 10px;
}
.under-step dd {
  width: calc(100% - 80px);
}
.step-ttl {
  font-size: 14px;


}
.under-step dt span {
  font-size: 20px;
}
.under-list li:before {
  top: 9px;
}
.navigation-tel {
  font-size: 20px;
}
.anchor-link a {
  width: 47%;
  font-size: 13px;
}
.b-bnr li {
  width: 100%;
  height: 80px;
}
.b-bnr li a {
  font-size: 18px;
}
.price-tbl, .shop-tbl {
  width: 100%;
}
.shop .gMap {
  height: 300px;
}
.img-list li {
  height: 138px;
}
.dl-special dt:after {
    bottom: -2px;
}

.contact-table th, .contact-table td{
	float: left;
	display: block;
	width: 100%;
	margin:  0 auto;
	padding: 2% 2%;
}

.contact-table input,.contact-table textarea {
    width:  100%;
}

.contact-table {
    width: 100%;
}

.contact-table input {
    max-width: 100%;
    min-height: 30px !important;
}

.gallery-area img{
	height: 145px!important;
}

.bnr01-flex {
    display: block;
}
a.bnr01-l {
    width: 100%;
    border-right: none;
}
a.bnr01-r {
    width: 100%;
}
.bnr01-r p.bnr01-btn {
    margin-top: 20px;
}
p.bnr01-txt {
    font-size: 12px;
}
.bnr01 > p {
    font-size: 18px;
}
.bnr01-tel {
    line-height: 1em;
}

.b_a-img li:last-child:before{
	display: none;
}
.price-btn a{
	text-align: center;
	margin: 0 auto;
}

.price-btn {
    float: none;
    margin: 10px auto;
}

.back-btn a{
	width: 80%;
}

table{
	/* min-width: 480px !important; */
}

.table-wrap {
    width: 100%;
    overflow-x: auto;
}

.scroll-caution{
	display: block;
	margin-bottom: 20px;
	font-weight:  bold;
	font-size:  11px;
	color: #444;
}

.shop span.scroll-caution {
    display:  none;
}

#mw_wp_form_mw-wp-form-38 .scroll-caution {
    display:  none;
}

.table-scroll-none .scroll-caution {
    display:  none;
}

	.single-gallery img{
		width: 100% !important;
	}

    .head_anch_fix {
        padding-top: 120px !important;
        margin-top: -120px !important;
    }

	.s-view{
		height: 400px;
	}

	.f-btn span, .yt-btn span, .min-btn .sp_none {
		display: none;
	}

	.f-btn a img, .yt-btn a img, .min-btn span {
		transform: none;
	}

	.h-btn-share {
		top: 165px;
	}

	.h-btn-share a img {
		position: relative;
		top: -19px;
	}

	.h-btn-share a {
		height: 50px;
	}

	.yt-btn {
		top: 220px;
	}

	.yt-btn a img {
		top: -23px;
	}

	.min-btn {
		top: 275px;
	}

	.min-btn span {
		top: -19px;
	}

	.min-btn a img {
		position: relative;
		top: -19px;
		width: 24px;
	}

	.min-btn .pc_none {
		display: block;
	}

    .footer-box {
        display: inline-block;
    }
    .other-btn {
        margin: 0 auto 10px;
    }
}

@media screen and (max-width: 425px) {
.b02-ttl {
	min-height: inherit;
}
.under #mainvisual {
  background: url(../images/under_h2_bg_sp.jpg) no-repeat center;
  background-size: cover;
}
.cate-list li {
  width: 48%;
}
.img-list li {
  width: 48%;
  height: 192px;
}
}

@media screen and (max-width: 375px) {
.img-list li {
  height: 170px;
}

#index #mainvisual h2 {
    font-size: 10vw;
}
.idx-main-txt {
    font-size: 2.5vw;
}
}

@media screen and (max-width: 320px) {
.anchor-link a {
  width: 80%;
}
.other-list .under-list {
  width: 100%;
}
.img-list li {
  height: 144px;
}

}
/*180803*/
@media screen and (max-width: 640px) {
a.sweetlink {
    color: #0f3c78;
    text-decoration: underline;
}

#gnavi .menu-contact-btn { display: block; }	
#gnavi .menu-contact-btn a {
    background: #af1110;
	text-align: center;
}
#gnavi li.menu-contact-btn::after { content: none;}

/*180806*/
tr.contact_checkbox .horizontal-item + .horizontal-item {
    margin-left: 0;
    margin-right: 10px;
}
.contact-table .contact_checkbox input {
    min-height: 100% !important;
    height: 15px !important;
    width: 15px !important;
    max-width: 100% !important;
}    
    
}

/*190423*/
.b01-top{
display: flex;
align-items: center;
height: 250px;
}
.b01-top .container .bnrstaff{
	position: absolute;
	right: 50px;
	top: 50%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	width: 150px;
	border: none;
}
.b01-top .container .bnrcovid{
		position: absolute;
		right: 220px;
		top: 50%;
		transform: translateY(-50%);
		-webkit- transform: translateY(-50%);
		width: 150px;
		border: none;
		overflow: hidden;
}
.b01-top .bnrstaff img{
position: relative;
width: 100%;
height: auto;
}
@media screen and (max-width: 640px) {
.b01-top{
height: auto;
}
.b01-top .container .bnrstaff{
position: relative;
right: 0;
top: 0;
transform: translateY(0%);
-webkit- transform: translateY(0%);
display: block;
    width: calc(50% - 10px);
margin-top: 35px;
    width: calc(50% - 10px);
    float: left;
    margin-left: 20px;
}
.b01-top .container .bnrcovid{
position: relative;
right: 0;
top: 0;
transform: translateY(0%);
-webkit- transform: translateY(0%);
display: block;
width: calc(50% - 10px);
margin-top: 35px;
  float: left;
text-align: center;
}
.b01-top .bnrstaff img{
width: 100%;
max-width: 250px;
height: auto;
}
}