@charset 'UTF-8';

/* -------------------------------- general */

.pc_only{display: block;}
.sp_only{display: none;}

	@media screen and (max-width:768px) {
		.pc_only{display: none !important;}
		.sp_only{display: block;}
	}/* --- max-width:768px */

/* -------------------------------- font */

@import url('https://fonts.googleapis.com/css?family=EB+Garamond&display=swap');

/* -------------------------------- section */

.section_inner{
	width: 90%;
	margin: auto;
	font-size: 1.4rem;
}
.section_bg {
	background: url(/common/img/bg_01.png) repeat left top;
	background-size: auto;
	padding: 75px 0 100px;
}

.section_normal {
	padding: 60px 0;
	font-size: 1.4rem;
	text-align: center;
}

.section_normal .h3_ttl{
	margin-bottom: 60px;
}

.section_normal .lead_main{
	line-height: 2.8;
}

	@media screen and (max-width:768px) {

	.section_normal {
		padding: 40px 20px 40px;
		font-size: 1.6rem;
		text-align: left;
	}

	.section_normal .h3_ttl{
		margin-bottom: 20px;
	}

	}/* --- max-width:768px */

/* -------------------------------- title */

h2,h3,h4{
	font-family: 'Yu Mincho', 'YuMincho', 'Noto Serif JP', serif;
}
h2 .sab_ttl,h3 .sab_ttl{
	display: block;
	font-size: 1.4rem;
}
.h2_ttl{
	font-size: 4.0rem;
}
.h3_ttl{
	font-size: 2.8rem;
	letter-spacing: 2px;
	text-align: center;
}
h3 .sab_ttl{
	line-height: 2.5;
}
.h4_ttl{
	font-size: 2.4rem;
	letter-spacing: 2px;
	text-align: center;
}

@media screen and (max-width:768px) {
	.h2_ttl{
		font-size: 4.6rem;
	}
}

/* -------------------------------- btn */

.link_next_btn{
	display: block;
	position: relative;
	font-size: 1.6rem;
	border: #CCCCCC 1px solid;
	text-align: center;
	padding: 15px;
}
.link_next_btn._normal{
	background: transparent;
}
.link_next_btn._red{
	background-color: #9E0C0C;
	color: #FFFFFF;
	font-size: 2rem;
	border: #9E0C0C 1px solid;
}
.link_next_btn._green{
	background-color: #0A581A;
	color: #FFFFFF;
	font-size: 2rem;
	border: #0A581A 1px solid;
}
.link_next_btn::after {
  content: '';
	position: absolute;
  width: 18px;
  height: 5px;
	top: 0;
  bottom: 0;
	right: 10px;
  margin: auto;
  background-image: url(/common/img/icon_arrow_r.png);
	background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
}
.link_next_btn._red::after,
.link_next_btn._green::after {
  background-image: url(/common/img/icon_arrow_r_w.png);
	background-repeat: no-repeat;
}
.link_next_btn._date::before {
  content: '';
	position: absolute;
  width: 23px;
  height: 20px;
	top: 0;
  bottom: 0;
	left: 20px;
  margin: auto;
  background-image: url(/common/img/icon_date.png);
	background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
}
.link_next_btn:hover {
	opacity:0.5;
	filter:alpha(opacity=50);
}
.link_next_btn._red:hover,
.link_next_btn._green:hover {
	opacity:0.8;
	filter:alpha(opacity=80);
}
.btn_col2_block .btn{
	width: 48%;
	float: left;
}
.btn_col2_block .btn:first-child{
	margin-right: 4%;
}
.more_acd_btn{
	color: #0A581A;
	font-size: 1.6rem;
	text-align: center;
	cursor: pointer;
}
.more_acd_btn .icon{
	position: relative;
	padding-left: 1.8em;
}
.more_acd_btn .icon::before {
  content: '';
	position: absolute;
  width: 21px;
  height: 21px;
	top: 0;
  bottom: 0;
	left:0;
  margin: auto;
  background-image: url(/common/img/icon_plus_g.png);
	background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
}
.more_acd_btn._w{
  color: #FFFFFF;
}
.more_acd_btn._w .icon::before {
  background-image: url(/common/img/icon_plus_w.png);
	background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
}
.more_topik{
	display: none;
}

@media screen and (max-width:768px) {
	.btn_col2_block .btn{
		width: 90%;
		float: none;
		margin: auto;
	}
	.btn_col2_block .btn:first-child{
		margin: 0 auto 20px;
	}
}

/* -------------------------------- link */

.text_link .link{
	text-align: right;
	margin-top: 20px;
	position: relative;
	padding-right: 2em;
	color: #0A581A;
  font-size: 1.4rem;
}
.text_link .link::after {
  content: '';
	position: absolute;
  width: 18px;
  height: 5px;
	top: 0;
  bottom: 0;
	right: 0;
  margin: auto;
  background-image: url(/common/img/icon_arrow_r_g.png);
	background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
}

.link_green{
	position: relative;
	color: #0A581A !important;
	font-size: 1.4rem;
	display: inline-block;
	padding-right: 25px;
	font-weight: bold;
}

.link_green:after{
	content: '';
	position: absolute;
	display: block;
	background: url(/common/img/icon_arrow_r_g.png) no-repeat center;
	top: 50%;
	margin-top: -5px;
	right: 0;
	width: 19px;
	height: 6px;
	background-size: contain;
}

.link_green.back{
	padding-right: 0;
	padding-left: 25px;
}

.link_green.back:after{
	display: none;
}

.link_green.back:before{
	content: '';
	position: absolute;
	display: block;
	background: url(/common/img/icon_arrow_r_g.png) no-repeat center;
	top: 50%;
	margin-top: -5px;
	left: 0;
	width: 19px;
	height: 6px;
	background-size: contain;
	transform: scale(-1, 1);
}
.block_link{
	display: block;
}

/* -------------------------------- breadcrumb */

#breadcrumb{
	display: block;
	padding: 40px 0;
}
#breadcrumb span{
	font-size: 1.1rem;
}
#breadcrumb a:link, #breadcrumb a:visited, #breadcrumb a:active{
	color: #0A581A;
	font-size: 1.1rem;
}
#breadcrumb .mark{
	display: inline-block;
	margin: 0 0.8em;
}

/* @media screen and (max-width:768px) {
	#breadcrumb{
	}
} */

/* -------------------------------- cate_list */

.cate_list{
	display:flex;
	justify-content: center;
	margin: 60px 0;
}
.cate_list .cate_list_item .link{
	display: table;
	font-size: 1.5rem;
	text-align: center;
	border-right: #DDDDDD 1px solid;
	padding: 0 25px;
}
.cate_list .cate_list_item:first-child .link{
	border-left: #DDDDDD 1px solid;
}
.cate_list .cate_list_item .link span{
	display: table-cell;
	vertical-align: middle;
}

@media screen and (max-width:1364px) {
	.cate_list .cate_list_item .link{
		padding: 0 30px;
	}
}
@media screen and (max-width:1090px) {
	.cate_list .cate_list_item .link{
		padding: 0 20px;
	}
}
@media screen and (max-width:768px) {
	.cate_list{
		display: block;
		justify-content: normal;
		margin-top: 0;
	}
	.cate_list .cate_list_item:first-child .link {
    border-left: none;
	}
}

/* -------------------------------- anchor_nav */

.anchor_nav .anchor_cate{
	display: table;
	width: 100%;
	margin-bottom: 50px;
}
.anchor_nav .cate{
	display: table-cell;
	width: 50%;
	text-align: center;
	font-size: 1.8rem;
	font-family: 'Yu Mincho', 'YuMincho', 'Noto Serif JP', serif;
}
.anchor_nav._col2 .cate{
	display: table-cell;
	width: 50%;
	text-align: center;
	font-size: 1.8rem;
	font-family: 'Yu Mincho', 'YuMincho', 'Noto Serif JP', serif;
}
.anchor_nav._col2 .cate .link{
	position: relative;
	display: inline-block;
	padding-bottom: 65px;
}
.anchor_nav._col2 .cate .link::after{
	content: '';
	position: absolute;
	width: 6px;
	height: 39px;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	background-image: url(/common/img/icon_arrow_d.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
}

@media screen and (max-width:768px) {
	.anchor_nav._col2 .cate .link{
		padding-bottom: 50px;
	}
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ anchor_nav */

.anchor_nav.col3 .cate {width: calc(100% / 3);}
.anchor_nav.col4 .cate {width: calc(100% / 4);}
.anchor_nav.col5 .cate {width: calc(100% / 5);}
.anchor_nav.col6 .cate {width: calc(100% / 6);}

.anchor_nav .link.insta::after {
	content: '';
	position: absolute;
	width: 20px !important;
	height: 18px !important;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	background-image: url(/common/img/icon_open_window_gray20x18.png) !important;
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
}

	@media screen and (max-width:768px) {

	.anchor_nav.col4 .anchor_cate,
	.anchor_nav.col6 .anchor_cate {
		display: flex;
		align-items: start;
		justify-content: center;
		flex-wrap: wrap;
		flex: auto;
		margin-bottom: 0;
		width: 100%;
	}

	.anchor_nav.col3 .cate,
	.anchor_nav.col4 .cate,
	.anchor_nav.col5 .cate,
	.anchor_nav.col6 .cate {
		display: block;
		width: 50%;
		margin-bottom: 30px;
		font-size: 1.6rem;
	}

	}/* --- max-width:768px */


/* -------------------------------- bottom_nav */

@media screen and (max-width:768px) {
	#bottom_nav .cate_list{
		display: none;
	}
}

/* -------------------------------- local_nav */

#local_nav{
	display: none;
}
@media screen and (max-width:768px) {
	#local_nav{
		display: block;
		font-family: 'Yu Mincho', 'YuMincho', 'Noto Serif JP', serif;
	}
	#local_nav .nav_ttl{
		display: block;
		font-size: 2.4rem;
		letter-spacing: 2px;
		/* margin-top: 65px; */
		background: #000000;
		color: #ffffff;
		padding: 20px 8%;
	}
	#local_nav .cate_list{
		margin-bottom: 0;
	}
	#local_nav .cate_list .cate_list_item .link{
		display: block;
		padding: 20px 8%;
		font-size: 1.8rem;
		border-right: none;
		border-bottom: #DDDDDD 1px solid;
		position: relative;
	}
	#local_nav .cate_list .cate_list_item .link::after {
    content: '';
    position: absolute;
    width: 18px;
    height: 5px;
    top: 0;
    bottom: 0;
    right: 8%;
    margin: auto;
    background-image: url(/common/img/icon_arrow_r.png);
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
  }
}

/* -------------------------------- faq */

#faq .faq_area{
	width: 81%;
	margin: 60px auto 0;
}
#faq .faq_block{
	padding: 35px 0;
	border-top: #DDDDDD 1px solid;
}
#faq .faq_block:last-child{
	border-bottom: #DDDDDD 1px solid;
}
#faq .faq_block .question,
#faq .faq_block .anser{
	display: table;
	width: 100%;
}
#faq .faq_block .question{
	margin-bottom: 10px;
}
#faq .faq_block .heading{
	display: table-cell;
	width: 2em;
	vertical-align: top;
	font-size: 2.8rem;
	font-family: 'Yu Mincho', 'YuMincho', 'Noto Serif JP', serif;
}
#faq .faq_block .text{
	display: table-cell;
	font-size: 1.4rem;
	vertical-align: middle;
	line-height: 2;
	font-weight: 500;
}
#faq .faq_block .question .heading,
#faq .faq_block .question .text{
	color: #0A581A;
}
#faq .faq_block .question .text{
	font-size: 1.8rem;
}
#faq .faq_block .anser .heading{
	color: #9E0C0C;
}

@media screen and (max-width:768px) {
	#faq .faq_area{
		width: 100%;
	}
}

/* -------------------------------- clearfix */

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}


/* -------------------------------- inview effect */

/*TARGET*/
.eft1{
  opacity: 0;
  transform: translate(0,70px);
  -webkit-transform: translate(0,70px);
  -webkit-transition: transform 0.8s, opacity 1.2s;
  -moz-transition: transform 0.8s, opacity 1.2s;
  transition: transform 0.8s, opacity 1.2s;
  transition-delay: 0.2s;
}
.eft2{
  opacity: 0;
  transform: translate(0,70px);
  -webkit-transform: translate(0,70px);
  -webkit-transition: transform 0.8s, opacity 1.2s;
  -moz-transition: transform 0.8s, opacity 1.2s;
  transition: transform 0.8s, opacity 1.2s;
  transition-delay: 0.2s;
}
.eft3{
  opacity: 0;
  transform: translate(0,70px);
  -webkit-transform: translate(0,70px);
  -webkit-transition: transform 0.8s, opacity 1.2s;
  -moz-transition: transform 0.8s, opacity 1.2s;
  transition: transform 0.8s, opacity 1.2s;
  transition-delay: 0.2s;
}
.eft4{
  opacity: 0;
  transform: translate(0,70px);
  -webkit-transform: translate(0,70px);
  -webkit-transition: transform 0.8s, opacity 1.2s;
  -moz-transition: transform 0.8s, opacity 1.2s;
  transition: transform 0.8s, opacity 1.2s;
  transition-delay: 0.2s;
}
.eft5{
  opacity: 0;
  transform: translate(0,70px);
  -webkit-transform: translate(0,70px);
  -webkit-transition: transform 0.8s, opacity 1.2s;
  -moz-transition: transform 0.8s, opacity 1.2s;
  transition: transform 0.8s, opacity 1.2s;
  transition-delay: 0.2s;
}
.eft6{
  opacity: 0;
  transform: translate(0,70px);
  -webkit-transform: translate(0,70px);
  -webkit-transition: transform 0.8s, opacity 1.2s;
  -moz-transition: transform 0.8s, opacity 1.2s;
  transition: transform 0.8s, opacity 1.2s;
  transition-delay: 0.2s;
}

/*EFFECT*/
.eft1_Ef{
  opacity: 1.0;
  transform: translate(0,0);
  -webkit-transform: translate(0,0);
  -webkit-transition: transform 0.8s, opacity 1.2s;
  -moz-transition: transform 0.8s, opacity 1.2s;
  transition: transform 0.8s, opacity 1.2s;
  transition-delay: 0.2s;
}
.eft2_Ef{
  opacity: 1.0;
  transform: translate(0,0);
  -webkit-transform: translate(0,0);
  -webkit-transition: transform 0.8s, opacity 1.2s;
  -moz-transition: transform 0.8s, opacity 1.2s;
  transition: transform 0.8s, opacity 1.2s;
  transition-delay: 0.4s;
}
.eft3_Ef{
  opacity: 1.0;
  transform: translate(0,0);
  -webkit-transform: translate(0,0);
  -webkit-transition: transform 0.8s, opacity 1.2s;
  -moz-transition: transform 0.8s, opacity 1.2s;
  transition: transform 0.8s, opacity 1.2s;
  transition-delay: 0.6s;
}
.eft4_Ef{
  opacity: 1.0;
  transform: translate(0,0);
  -webkit-transform: translate(0,0);
  -webkit-transition: transform 0.8s, opacity 1.2s;
  -moz-transition: transform 0.8s, opacity 1.2s;
  transition: transform 0.8s, opacity 1.2s;
  transition-delay: 0.8s;
}
.eft5_Ef{
  opacity: 1.0;
  transform: translate(0,0);
  -webkit-transform: translate(0,0);
  -webkit-transition: transform 0.8s, opacity 1.2s;
  -moz-transition: transform 0.8s, opacity 1.2s;
  transition: transform 0.8s, opacity 1.2s;
  transition-delay: 1.0s;
}
.eft6_Ef{
  opacity: 1.0;
  transform: translate(0,0);
  -webkit-transform: translate(0,0);
  -webkit-transition: transform 0.8s, opacity 1.2s;
  -moz-transition: transform 0.8s, opacity 1.2s;
  transition: transform 0.8s, opacity 1.2s;
  transition-delay: 1.2s;
}

@media screen and (max-width:768px) {
	/*TARGET*/
	.eftM{
		opacity: 0;
		transform: translate(0,70px);
		-webkit-transform: translate(0,70px);
		-webkit-transition: transform 0.8s, opacity 1.2s;
		-moz-transition: transform 0.8s, opacity 1.2s;
		transition: transform 0.8s, opacity 1.2s;
		transition-delay: 0.2s;
	}
	/*EFFECT*/
	.eftM_Ef{
		opacity: 1.0;
		transform: translate(0,0);
		-webkit-transform: translate(0,0);
		-webkit-transition: transform 0.8s, opacity 1.2s;
		-moz-transition: transform 0.8s, opacity 1.2s;
		transition: transform 0.8s, opacity 1.2s;
		transition-delay: 0.2s;
	}
}

/* -------------------------------- wrap_scroll */

.wrap_scroll::-webkit-scrollbar,
.wrap_scroll *::-webkit-scrollbar{
	height: 5px;
	background: #ddd;
}

.wrap_scroll::-webkit-scrollbar-thumb,
.wrap_scroll *::-webkit-scrollbar-thumb{
	background: #999;
}

/* -------------------------------- etc */

.modal_outer{display: none;}

.modal_window .modal_inner{
	background: #fff;
}

.mincho{font-family: 'Yu Mincho', 'YuMincho', 'Noto Serif JP', serif;}
.fwB{font-weight: bold;}
.vaT{vertical-align: top !important;}
.mt0{margin-top: 0 !important;}
.bg_white{background: #fff;}


/* -------------------------------- goto_coupon_bnr */
.goto_coupon_bnr img{
	margin: auto;
}
@media screen and (max-width:768px) {
	.goto_coupon_bnr{
		padding-right: 20px;
		padding-left: 20px;
	}
}
