@charset "shift_jis";
@import url('https://cdn.jsdelivr.net/npm/yakuhanjp@3.0.0/dist/css/yakuhanjp_s.min.css');
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700');
@import url('https://fonts.googleapis.com/css2?family=Ephesis&display=swap');

/* ========== ========== ==========
	共通
========== ========== ========== */

#saiji_wrap,
#saiji_wrap *, 
#saiji_wrap *:before, 
#saiji_wrap *:after {
	box-sizing: border-box;
}

#saiji_wrap h1, #saiji_wrap h2, 
#saiji_wrap h3, #saiji_wrap h4,
#saiji_wrap h5, #saiji_wrap h6,
#saiji_wrap p {
	margin: 0;
	padding: 0;
}

#saiji_wrap, #saiji_wrap * {
    color: #222222;
	font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
	font-size: 16px;
	line-height: 1.75;
}

#saiji_wrap ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#saiji_wrap img {
	max-width: 100%;
	height: auto;
	border: 0;
	vertical-align: bottom;
}

#saiji_wrap a,
#saiji_wrap a:hover {
    color: #4d4d4d;
    text-decoration: none;
	transition: 0.2s;
}

#saiji_wrap a:hover {
	opacity: 0.5;
}

#saiji_wrap strong {
	font-size: inherit;
	font-weight: bold;
}

#saiji_wrap span {
	display: inline-block;
    color: inherit;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
}

.float_box { width: 100%; }
.fl { float: left; }
.fr { float: right; }

.clear { 
	clear: both;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

/* ---------- ---------- ---------- */

.l { text-align: left; }
.c { text-align: center; }
.r { text-align: right; }

html, body {
    margin: 0;
    padding: 0;
}

@media only screen and (max-width: 1000px) {
	#saiji_wrap, #saiji_wrap * {
		font-size: 1.6vw;
	}
}
@media only screen and (max-width: 720px) {
	#saiji_wrap, #saiji_wrap * {
		font-size: 2.2vw;
	}
}
@media only screen and (max-width: 480px) {
	#saiji_wrap, #saiji_wrap * {
		font-size: 3.3vw;
	}
}



/* ========== ========== ==========
	#saiji_wrap
========== ========== ========== */

#saiji_wrap {
    min-height: 100vh;
    padding-bottom: 4.75em;
    box-sizing: border-box;
    position: relative;
}



/* ========== ========== ==========
	#saiji_head
========== ========== ========== */

#saiji_wrap #saiji_head {
    background-color: #041f4e;
}
#saiji_wrap #saiji_head_inner {
    width: 1000px;
    margin: 0 auto;
    padding: 1.5em 0;
}
#saiji_wrap #saiji_head_inner .logo {
    width: 8em;
    height: auto;
}
@media only screen and (max-width: 1000px) {
    #saiji_wrap #saiji_head_inner {
        width: 100%;
        padding: 1.5em;
    }
}




/* ========== ========== ==========
	#saiji_body
========== ========== ========== */

#saiji_wrap #saiji_body {
	padding-bottom: 4em;
}
#saiji_wrap #saiji_body .content__inner {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}
#saiji_wrap #saiji_body .content__inner .btn {
    display: block;
    margin-top: 2em;
    padding: 1em;
    background-color: #00a4c5;
    border-radius: 0.5em;
    color: #ffffff;
    text-align: center;
}
@media only screen and (max-width: 960px) {
	#saiji_wrap #saiji_body .content__inner {
		padding: 0 2em;
	}
}



/* ========== ========== ==========
	#saiji_pankuzu
========== ========== ========== */

#saiji_wrap #saiji_body #saiji_pankuzu {
    /* margin-bottom: 4em; */
    background-color: #eeeeee;
}
#saiji_wrap #saiji_body #saiji_pankuzu_inner {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 1em 0;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
#saiji_wrap #saiji_body #saiji_pankuzu_inner .list {
    display: table;
}
#saiji_wrap #saiji_body #saiji_pankuzu_inner .list li {
    display: table-cell;
    white-space: nowrap;
}
#saiji_wrap #saiji_body #saiji_pankuzu_inner .list li:after {
    content: ">";
    margin: 0 0.5em;
}
#saiji_wrap #saiji_body #saiji_pankuzu_inner .list li:last-child:after {
    content: "";
}
@media only screen and (max-width: 1000px) {
    #saiji_wrap #saiji_body #saiji_pankuzu_inner {
        padding: 1em 1.5em;
    }
}
@media only screen and (max-width: 720px) {
    #saiji_wrap #saiji_body #saiji_pankuzu_inner .list li span {
        display: none;
    }
}



/* ========== ========== ==========
	effect_01
========== ========== ========== */

.effect_01{
  opacity: 0;
}

.effect_01.effanm {
  animation: effect_01 1.5s both;
}

@keyframes effect_01 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}



/* ========== ========== ==========
	saiji_main_area
========== ========== ========== */

#saiji_main_area {
	width: 100%;
	padding: 4em 0;
	text-align: center;
	position: relative;
}
#saiji_main_area::before {
	content: "";
	width: 100vw;
	height: 100vh;
	background-image: url("../images/bg_head.jpg");
	/* background: linear-gradient(-45deg, #7F7FD5, #86A8E7, #91EAE4), url("../images/bg_head.jpg") no-repeat;
	background-attachment: fixed;
	background-blend-mode: screen; */
	background-position: right top;
	background-repeat: no-repeat;
	background-size: cover;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
}
/*#saiji_wrap #saiji_body #saiji_main #saiji_main_area .content {
	padding-top: 4em;
	background-color: transparent;
}
*/
#saiji_main_area * {
  box-sizing: border-box;
}
#saiji_main_area img {
  max-width: 100%;
  max-height: 100%;
}
#saiji_main_area a {
  text-decoration: none;
  transition: opacity 0.25s;
}
@media (any-hover: hover) {
  #saiji_main_area a:hover {
    opacity: 0.7;
  }
}
#saiji_main_area .wrapper {
  position: relative;
}
#saiji_main_area .contents {
  position: relative;
  margin: 0 auto;
  /*background-color: #ffffff;*/
  overflow: hidden;
  width: 100%;
  min-height: 1000px;
}
@media screen and (min-width: 768px) {
  #saiji_main_area .contents {
    max-width: 375px;
  }
}
#saiji_main_area .page_Logo {
  position: fixed;
  overflow: hidden;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -1;
}
#saiji_main_area .page_Logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  pointer-events: none;
  inset: 0;
}
@media screen and (max-width: 767px) {
  #saiji_main_area .page_Logo {
    display: none;
  }
}


/*------------------------------
menu
-------------------------------*/
#saiji_main_area .r_menu {
  display: none;
}
@media screen and (min-width: 1200px) {
  #saiji_main_area .r_menu {
    display: block;
    position: fixed;
    width: 280px;
    z-index: 10;
    top: 50%;
    transform: translateY(calc(-50% + 25px)) translateX(calc(100% + 187.5px + 10px + 80px));
    right: 50%;
  }
  #saiji_main_area .r_menu .menu__list .menu__itemLink {
    position: relative;
    width: 100%;
    padding: 10px 18px 10px 4px;
    display: grid;
    /*grid-template-columns: 25px 10px 1fr;*/
    grid-template-areas: "noArea . textArea";
    align-items: end;
  }
  /*#saiji_main_area .r_menu .menu__list .menu__itemLink::after {
    transition: transform 0.25s ease-in-out;
    content: "";
    display: block;
    background-image: url("../../img/common/arrow.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    position: absolute;
    width: 14px;
    aspect-ratio: 1/1;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
  }*/

 /* #saiji_main_area .r_menu .menu__list .menu__itemLink:not(:has(.menu__itemText)) {
    display: grid;
    grid-template-columns: 45px 20px 1fr;
    grid-template-areas: "noArea . textArea";
  }*/
  #saiji_main_area .r_menu .menu__list .menu__item {
    position: relative;
  }
  #saiji_main_area .r_menu .menu__list .menu__item + .menu__item {
    margin-top: 4px;
  }
  #saiji_main_area .r_menu .menu__list .menu__item::before, #saiji_main_area .menu .menu__list .menu__item::after {
    content: "";
    display: block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: absolute;
  }
  /*#saiji_main_area .r_menu .menu__list .menu__item::after {
    background-image: url("../../img/common/menu-border.png");
    width: calc(100% + 20px);
    width: 100%;
    height: 1px;
    bottom: 0;
  }*/
  #saiji_main_area .r_menu .menu__list .menu__item .menu__item_ttl {
    height: 45px;
    grid-area: noArea;
  }
  #saiji_main_area .r_menu .menu__list .menu__item .menu__item_ttl img {
    width: auto;
  }
  #saiji_main_area .r_menu .menu__list .menu__item .menu__itemText {
    font-family: serif, sans-serif;
    color: #fff;
    height: 30px;
    grid-area: textArea;
    width: auto;
    transform: translateY(5px);
  }
}
@media screen and (min-width: 1200px) and (any-hover: hover) {
  #saiji_main_area .r_menu .menu__list .menu__itemLink:hover::after {
    transform: translateX(5px) translateY(-50%);
  }
}

/*------------------------------
	page_Logo
-------------------------------*/
#saiji_main_area .page_Logo {
  display: none;
  /*width:100%;
  margin-top:0em;*/
}
@media screen and (min-width: 768px) {
  #saiji_main_area .page_Logo {
    display: block;
    position: fixed;
    overflow: hidden;
    width: 220px;
    z-index: 10;
    top: 50%;
    left: 50%;
  }
  #saiji_main_area .page_Logo img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: center;
       object-position: center;
    pointer-events: none;
    inset: 0;
  }
}
@media screen and (min-width: 992px) {
  #saiji_main_area .page_Logo {
    width: 260px;
    transform: translateY(calc(-50% + 27px)) translateX(calc(-100% - 227px));
    left: 50%;
  }
}
@media screen and (min-width: 1200px) {
  #saiji_main_area .page_Logo {
    width: 294px;
    transform: translateY(calc(-50% + 27px)) translateX(calc(-100% - 187.5px - 90px));
    left: 50%;
  }
}



#maintop {
	/*background-color:#fff;*/
}

/* ========== ========== ==========
	.slick-slider
========== ========== ========== */
#maintop .slick-slider{
  /*margin: 0;
  padding: 0;*/
  margin:0 1em;
}
#maintop .slick-slider img {
  width: 100%;
  height: 100%;
}
#maintop .slick-slider .txt_area_ttl {
	padding:1em;
}

#maintop .slick-slider .txt_area_ttl .ttl {
	font-size:1.5em;
	padding:0.5em 0;
	font-weight:bold;
	color:#fff!important;
}

#maintop .slick-slider .txt_area_ttl .ttl span {
	background: linear-gradient(90deg, #8c7537 0%, #dbb00b 45%, #fde79d 70%, #dbb10c 85%, #bc7f04 90% 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
  }
  
  


#maintop .slick-slider .txt_area_txt {
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
}
#maintop .slick-slider .txt_area_txt p {
  font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
  font-size: 15px;
  line-height: 2.1;
  font-weight: 400;
  text-align: justify;
  text-justify: inter-ideograph;
  color:#fff;
  padding-bottom:2em;
}
@media screen and (min-width: 992px) {
 #maintop .slick-slider{
  margin: 0;
  padding: 0;
  }
}
@media screen and (min-width: 1200px) {
 #maintop .slick-slider{
  margin: 0;
  padding: 0;
  }
}


#maintop .guide_details {
	margin:1em;
}
#maintop .guide_details-summary {
	position: relative;
	display: block;
	padding: 1em;
	color: #fff;
	font-size: 1.4em!important;
	font-weight: bold;
	text-align: center;
	color:#FFF!important;
	/*background-color: #999;*/
	&:hover {
		cursor: pointer;
		opacity: 0.5;
	}
	#maintop .btn {
		position: absolute;
		top: 37%;
		left: 10%;
		width: 18px;
		height: 18px;
		transform-origin: center center;
		transition-duration: 0.2s;

		&:before,
		&:after {
			content: "";
			background-color: #fff;
			border-radius: 10px;
			width: 18px;
			height: 4px;
			position: absolute;
			top: 7px;
			left: 0;
			transform-origin: center center;
		}
		&:before {
			width: 4px;
			height: 18px;
			top: 0;
			left: 7px;
		}
	}
	&.is-active {
		.btn {
			-webkit-transform: rotate(-180deg);
			transform: rotate(-180deg);
			&:before {
				content: none;
			}
		}
	}
}

#maintop .guide_details-summary::-webkit-details-marker {
	display: none;
}

#maintop .guide_details-content {
	padding: 20px;
	p {
		margin: 0 0 20px;
		color: #000;
		text-align: left;
		line-height:2.0;
		/*border-bottom:1px dotted #CCC;*/
		color:#FFF!important;
		padding-bottom:1em;
		&:last-of-type {
			margin: 0 0 0;
			border-bottom:none;
		}
	}
}


/* ========== ========== ==========
	.top_cate
========== ========== ========== */

#maintop .top_cate {
  overflow: hidden;
  padding-bottom:2em;
  background-color:#696969;
  margin-bottom:4em;
  margin-left:2em;
  margin-right:2em;
}
#maintop .top_cate .top_cate__inner {
  padding: 2em;
  width: 100%;
  height: 100%;
}
#maintop .top_cate .top_cate__inner .top_cate_heading {
  margin-left: auto;
  margin-right: auto;
  max-width: 280px;
}
#maintop .top_cate .top_cate__inner .top_cate__heading img {
  display: block;
  width: 100%;
  height: 100%;
}
#maintop .top_cate .top_cate__inner .top_cate__ttl {
	font-size:1.5em;
	padding:0.5em 0;
	font-weight:bold;
	color:#fff!important;
}
#maintop .top_cate .top_cate__inner .top_cate__txt {
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
}
#maintop .top_cate .top_cate__inner .top_cate__txt p {
  font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
  font-size: 15px;
  line-height: 2.1;
  font-weight: 400;
  text-align: justify;
  text-justify: inter-ideograph;
  color:#fff;
}
#maintop .top_cate .top_cate__inner .top_cate__view {
  margin-top: 1em;
}
#maintop .top_cate .top_cate__inner .top_cate__view .top_cate__view_img {
  max-width: 256px;
  margin-left: auto;
  margin-right: auto;
}
/*#maintop .top_cate .top_cate__inner .stop_cate__kaiki .top_cate__view_txt {
  margin-top: 10px;
  font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro";
  max-width: 250px;
  margin-left: auto;
  margin-right: auto;
  font-size: 13px;
  line-height: 2.1;
  font-weight: 400;
  text-align: center;
}*/

#maintop .top_cate .top_cate__inner .top_cate__tomonokai_s_ttl {
	font-size:0.8em;
	padding:0.5em 0;
	font-weight:bold;
	color:#fff!important;
}
/*#maintop .top_cate .top_cate__inner .top_cate__tomonokai_ttl {
	font-size:1.4em;
	padding:0.5em 0;
	font-weight:bold;
	color:#fff!important;
}
#maintop .top_cate .top_cate__inner .top_cate__tomonokai_ttl span {
	font-size:0.8em;
	padding:0.5em 0;
	font-weight:bold;
	color:#fff!important;
}*/

@media screen and (min-width: 992px) {
  #maintop .top_cate {
	  margin-left:0em;
	  margin-right:0em;
	  }
}
@media screen and (min-width: 1200px) {
  #maintop .top_cate {
	  margin-left:0em;
	  margin-right:0em;
	  }
}



/* ========== ========== ==========
	.cate-item
========== ========== ========== */
#cate_item .cate_ttl{
  /*margin: 0;
  padding: 0;*/
  margin:0 1em;
}
#cate_item .cate_ttl img {
  width: 100%;
  height: 100%;
}
#cate_item .cate_ttl .txt_area_ttl {
	padding:1em;
}

#cate_item .cate_ttl .txt_area_ttl .ttl {
	font-size:1.5em;
	padding:0.5em 0;
	font-weight:bold;
	color:#fff!important;
}

#cate_item .cate_ttl .txt_area_ttl .ttl span {
	background: linear-gradient(90deg, #8c7537 0%, #dbb00b 45%, #fde79d 70%, #dbb10c 85%, #bc7f04 90% 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
  }


#cate_item .cate_ttl .txt_area_txt {
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
}
#cate_item .cate_ttl .txt_area_txt p {
  font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
  font-size: 15px;
  line-height: 2.1;
  font-weight: 400;
  text-align: justify;
  text-justify: inter-ideograph;
  color:#fff;
  padding-bottom:2em;
}
@media screen and (min-width: 992px) {
 #cate_item .cate_ttl{
  margin: 0;
  padding: 0;
  }
}
@media screen and (min-width: 1200px) {
 #cate_item .cate_ttl{
  margin: 0;
  padding: 0;
  }
}

/* ========== ========== ==========
	.cate_item
========== ========== ========== */

#cate_item .item_coment {
  overflow: hidden;
  padding-bottom:2em;
  background-color:#696969;
  margin-left:2em;
  margin-right:2em;
}
#cate_item .item_coment .item_cate__inner {
  padding: 2em;
  width: 100%;
  height: 100%;
}
#cate_item .item_coment .item_cate__inner .item_cate_heading {
  margin-left: auto;
  margin-right: auto;
  max-width: 280px;
}
#cate_item .item_coment .item_cate__inner .item_cate_heading img {
  display: block;
  width: 100%;
  height: 100%;
}
#cate_item .item_coment .item_cate__inner .item_cate__ttl {
	font-size:1.5em;
	padding:0.5em 0;
	font-weight:bold;
	color:#fff!important;
}
#cate_item .item_coment .item_cate__inner .item_cate__txt {
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
}
#cate_item .item_coment .item_cate__inner .item_cate__txt p {
  font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
  font-size: 15px;
  line-height: 2.1;
  font-weight: 400;
  /*text-align: justify;
  text-justify: inter-ideograph;*/
  color:#fff;
  margin-top:1em;
  text-align:left;
}
#cate_item .item_coment .item_cate__inner .item_cate__txt .small {
  font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
  font-size: 13px;
  line-height: 2.1;
  font-weight: 400;
  /*text-align: justify;
  text-justify: inter-ideograph;*/
  color:#fff;
  margin-top:1em;
  text-align:left;
}
#cate_item .item_coment .item_cate__inner .item_cate__txt .txt_center {
	text-align:center!important;
	 font-size: 17px!important;
}
#cate_item .item_coment .item_cate__inner .item_cate__txt .spec {
	font-size: 14px;
	/*text-align: justify;
	text-justify: inter-ideograph;*/
}
/*#cate_item .item_coment .item_cate__inner .item_cate__view .top_cate__view_img {
  max-width: 256px;
  margin-left: auto;
  margin-right: auto;
}
#cate_item .item_coment .item_cate__inner .stop_cate__kaiki .top_cate__view_txt {
  margin-top: 10px;
  font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro";
  max-width: 250px;
  margin-left: auto;
  margin-right: auto;
  font-size: 13px;
  line-height: 2.1;
  font-weight: 400;
  text-align: center;
}*/

@media screen and (min-width: 992px) {
  #cate_item .item_coment {
	  margin-left:0em;
	  margin-right:0em;
	  }
}
@media screen and (min-width: 1200px) {
  #cate_item .item_coment {
	  margin-left:0em;
	  margin-right:0em;
	  }
}



/* ========== ========== ==========
	#saiji_foot
========== ========== ========== */

#saiji_wrap #saiji_foot {
    width: 100%;
    background-color: #041f4e;
    position: absolute;
    bottom: 0;
}
#saiji_wrap #saiji_foot_inner {
    width: 960px;
    margin: 0 auto;
    padding: 1.5em 0;
}
#saiji_wrap #saiji_foot_inner .copy {
    text-align: center;
}
#saiji_wrap #saiji_foot_inner .copy p {
	color: #ffffff;
}
@media only screen and (max-width: 1000px) {
    #saiji_wrap #saiji_foot_inner {
        width: 100%;
        padding: 1.5em;
    }
}
@media only screen and (max-width: 480px) {
    #saiji_wrap #saiji_foot_inner .copy p span {
        display: block;
    }
}



/* ========== ========== ==========
	#pageTop
========== ========== ========== */

#saiji_wrap #pageTop {
    position: fixed;
    z-index: 999;
    right: 25px;
    bottom: 50px;
}
@media only screen and (max-width: 1000px) {
    #saiji_wrap #pageTop {
        bottom: 30px;
    }
}