/*---------------------------------------------------

 Plan_index

---------------------------------------------------*/


/*-------------------------------------------
section_rank
-------------------------------------------*/

.section_rank {
  width: 100%;
  margin-bottom: 70px;
}

.section_rank,
.section_rank div,
.section_rank dl,
.section_rank ul {
  opacity : 1.0;
}

.section_rank .tit_box {
  width:100%;
  margin:0 auto 40px;
  border-top:1px solid #2d1d00;
  border-bottom:1px solid #2d1d00;
  padding:20px 20px;
  text-align:center;
  font-size:14px;
}

.section_rank h3{
  font-size:22px;
  font-family: "ratio-modern-sc";
  letter-spacing: 1px;
  color: #c79600;
  line-height:1.2;
}

.section_rank .inner,
.section_rank .tab-content {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.section_rank .box{
  width: calc(50% - 13px);
  background:#fff;
  position:relative;
}

.section_rank .box a{
  width:100%;
  display:block;
  /*box-sizing:border-box; aaa*/
  position:relative;
}

.section_rank .box .ph{
  overflow:hidden;
}

.section_rank .box .ph img{
  width:100%;
}

.section_rank .box .txt_box{
  position:relative;
}

.section_rank .box .title{
  font-size:22px; 
  /*height:60px; aaa*/
  overflow:hidden;
  line-height:1.4;
}

.section_rank .box .txt{
  font-size:22px;
  /*height:36px; aaa*/
  overflow:hidden;
  /*color: #e0553b; aaa*/
}

.section_rank .box .price{
  font-size:22px;
	text-align: right;
	line-height: 1.4;
}

.section_rank .box .price .yen,
.section_rank .box .price-caption,
.section_rank .box .tax-included {
	font-size: 16px;
}


.section_rank .box .btn_txt{
	position: static;
	margin-top: 0.75em;
	font-size: 14px;
	text-align: right;
}


.section_rank .box .txt_box .btn_more02{
  display:none;
  float: right;
  margin-top:40px;
}

.section_rank .box:first-child .txt_box .btn_more02{
  display:block;
}



/*-------------------------------------------
section_plan_pickup
-------------------------------------------*/

.section_plan_pickup {}

.section_plan_pickup .inner{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.section_plan_pickup .box{
	width: calc(50% - 13px);
}

.section_plan_pickup .box:first-child{
  width:100%;
  margin-bottom:40px;
}

.section_plan_pickup .box a{
	display: flex;
	justify-content: space-between;
}

.section_plan_pickup .box .ph{
  width:250px;
  height:180px;
}

.section_plan_pickup .box:first-child .ph{
  width:calc(50% - 13px);
  height:320px;
}

.section_plan_pickup .box .txt_box{
	display: flex;
	flex-direction: column;
  width: calc(100% - 260px);
}

.section_plan_pickup .box:first-child .txt_box{
  width: calc(50% - 13px);
  /*padding-left:30px;
  padding-top: 30px; aaa*/
}

.section_plan_pickup .box .title{
	margin-bottom: auto;
}

.section_plan_pickup .box .price:not(.tax-included){
  color: #e0553b;
}


/*-------------------------------------------
tab
-------------------------------------------*/

.tab-wrap {
  display: flex;
  flex-wrap: wrap;
  margin:20px 0;
}
.tab-label {
  order: -1;
  flex: 1;
  position: relative;
  z-index: 1;
  padding: 10px 0.5em;
	border-bottom: 1px solid #f2f2f2;
	font-size: 16px;
  white-space: nowrap;
  text-align: center;
  cursor: pointer;
	transition: 0.3s border;
}
.tab-label:not(:last-of-type) {
  margin-right: 2px;
}
.tab-content {
  width: 100%;
  height: 0;
  overflow: hidden;
  opacity: 0;
}

.tab-switch:checked + .tab-label,
.tab-label:hover {
	border-bottom-color: #a00000;
}
.tab-switch:checked + .tab-label + .tab-content {
  overflow: auto;
  height: auto;
	padding-top: 26px;
  opacity: 1;
  transition: 0.5s opacity;
}

.tab-switch {
  display: none;
}


/*-------------------------------------------
section_plan_list
-------------------------------------------*/

.section_plan_list {
  border-top:1px solid #ddd1b5;
  margin-bottom: 0;
}

.section_plan_list h4{
  font-size:29px;
  text-align:center;
  line-height:1.2;
  background:#fff;
  width:254px;
  margin:-17px auto 0;
}

.section_plan_list .catch{
  font-size:14px;
  text-align:center;
  margin-bottom:24px;
}

.section_plan_list .box{
  margin-bottom:32px;
}

.section_plan_list .box .title{
	font-size: 20px;
	padding: 0.5em 0;
}

.recommend_1 {
	position: relative;
}

.recommend_1::before {
position: absolute;
top: 0;
left: 0;
	z-index: 1;
	border-bottom: 6em solid transparent;
	border-left: 6em solid #E6A199;
	font-size: 12px;
opacity: 0.85;
	content: '';
}

.recommend_1::after {
position: absolute;
  top: 16px;
  left: 4px;
	z-index: 1;
	color: #fff;
	font-size: 12px;
  content: 'おすすめ';
	transform: rotate(-45deg);
}

.section_plan_list .box.plan_32,
.section_plan_list .box.plan_44,
.section_plan_list .box.plan_45{
  display:none;
}



/*---------------------------------------------------

 Plan_detail

---------------------------------------------------*/

.main_plan .icon_plan li {
  display: inline-block;
  margin-right: 4px;
	margin-left: 4px;
  width: 56px;
  height: 56px;
}

.main_plan .icon_plan li:last-child {
  /*margin-right: 0;*/
}

.main_plan .icon_plan li img {
  width: 100%;
}



/*-------------------------------------------
section_plan_main
-------------------------------------------*/

/* section_plan_main
---------------------------------------------------*/

.section_plan_main {
    width: 100%;
    background: #fff;
    padding: 40px;
    /*box-shadow: 0 0 5px rgba(0,0,0,0.1);*/
	border: 1px solid #ddd1b5;
    margin-bottom: 30px;
}

.section_plan_main .unit {
  padding:0 38px 38px;
  /*margin-bottom:65px;*/
  text-align: center;
}

.section_plan_main .ph {
  width:100%;
  /*height:365px;
  overflow: hidden;*/
  margin-bottom: 30px;
}

.section_plan_main .ph img {
  width: 100%;
}

.section_plan_main .unit .tit {
  font-size:22px;
  line-height:1.4;
  margin-bottom:30px;
  text-align:center;
}

.section_plan_main .unit .stit {
  font-size:18px;
  color:#1f1f1f;
  margin-bottom:20px;
  text-align:center;
}

.section_plan_main .unit .caption {
  font-size:16px;
  line-height:1.6;
  margin-top:30px;
  margin-bottom:30px;
  text-align:center;
}

.section_plan_main .unit .tbl_plan {
  border-collapse: collapse;
  margin:0 auto 30px;
}

.section_plan_main .unit .tbl_plan dt {
  padding:3px 30px;
  text-align:center;
  background:#2d1d00;
  color:#fff;
  display: inline-block;
  vertical-align: top;
}

.section_plan_main .unit .tbl_plan dd {
  max-width: 33%;
  padding-right: 30px;
  display: inline-block;
  margin-left: 15px;
  text-align: left;
  vertical-align: top;
}
.section_plan_main .unit .tbl_plan dd:last-child {
  padding-right: 0;
}
.section_plan_main .unit .price {
  padding:15px 0;
  border-top:1px solid #2d1d00;
  border-bottom:1px solid #2d1d00;
  text-align:center;
  font-size:26px;
  margin-bottom:30px;
}

.section_plan_main .unit .price span {
  display:block;
  font-size:13px;
}

.section_plan_main .unit .txt {
  margin:30px 0;
}

.section_plan_main .unit .txt img {
  margin:10px 0;
}

.section_plan_main .unit .value_box {
  margin-bottom:50px;
  background:#f9f7f2;
  padding:20px 24px;
  text-align:center;

}

.section_plan_main .unit .value_box .tit {
  background:#aa8b45;
  color:#fff !important;
  font-size:16px;
  padding: 5px 0 5px;
  margin: 0px 0 15px;
}

.section_plan_main .unit .value_box .text03 {
  color: #111;
  font-weight: normal;
  line-height: 1.6;
  margin-bottom: .6em;
  font-size: 1.1em;
}

.section_plan_main .unit .value_box span {
  color:#ffff6e;
  padding-left:3px;
}

.section_plan_main .btn_plan {
  text-align:center;
}

.section_plan_main .btn_plan .btn {
  display:inline-block;
  width:350px;
  height:65px;
}

.section_plan_main .btn a {
  width:100%;
  display:block;
  line-height:1.4;
  padding:13px 0;
  background: #aa8b45;
  color: #fff;
  font-size:17px;
}

.section_plan_main .btn a span {
  display:block;
  font-size:12px;
}

.section_plan_main .txtbox .tit {
  text-align:center;
  margin-bottom:20px;
  font-size:22px;
  padding-bottom:18px;
  border-bottom:1px solid #2d1d00;
}

.section_plan_main .txtbox .box_inc {
  margin-bottom:30px;
  text-align:left;
  padding:0 30px;
}

.section_plan_main .txtbox .box_inc table {
  width:100%;
}

.section_plan_main .txtbox .box_inc table tr th {
  padding:12px;
  border-bottom:1px dotted #999;
  font-size:20px;
  width:20%;
}

.section_plan_main .txtbox .box_inc table tr td {
  padding:12px;
  border-bottom:1px dotted #999;
}


.section_plan_main.detail,
.section_plan_main.detail .inner,
.section_plan_main.detail .ph {
  opacity:1.0;
  transform:none;
}

/* section_other
---------------------------------------------------*/

.main_plan .section_other {
	display: flex;
	justify-content: center;
  width:840px;
  margin:50px auto 30px;
  text-align:center;
  position:relative;
}

/*.main_plan.fair .section_other {
  width:1000px;
  margin:10px auto 30px;
  text-align:left;
} aaa*/

.main_plan .section_other .unit {
  width:390px;
  margin:0 10px;
  text-align:left;
}

/*.main_plan.fair .section_other .unit {
  width:472px;
  margin-bottom:20px;
} aaa*/

.main_plan .section_other .unit a {
  display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
  padding:12px;
  background:#fff;
	border: 1px solid #ddd1b5;
}

/*.main_plan .section_other .btn_txt {
  bottom: 7px;
  right: 10px;
} aaa*/

.main_plan .section_other .unit .ph {
  width:148px;
  height:96px;
  overflow:hidden;
  /*float:left;
  margin-right:12px; aaa*/
}

/*.main_plan.fair .section_other .unit .ph {
  width:200px;
  height:132px;
} aaa*/

.main_plan .section_other .unit .ph img {
  width:100%;
}

.main_plan .section_other .unit .box {
display: flex;
	flex-direction: column;
  width:calc(100% - 158px);
  /*float:left; aaa*/
  padding-top:5px;
}

.main_plan.fair .section_other .unit .box {
  width:232px;
}

/*.main_plan .section_other.plan .unit .box {
  padding-top:0px;
} aaa*/

.main_plan .section_other .unit .box .tit {
  margin-bottom:5px;
  font-size:15px;
}

.main_plan.fair .section_other .unit .box .tit {
  height:74px;
}

.main_plan.fair .section_other .unit .box .icon {
  text-align:left;
  margin-bottom:5px;
}

.main_plan .section_other.plan .unit .box .tit {
  /*height:48px; aaa*/
  overflow:hidden;
}

.main_plan .section_other .unit .box .catch {
  height:28px;
  overflow:hidden;
}

.main_plan .section_other .unit .box .price {
	text-align: right;
	line-height: 1.4;
}

.main_plan .section_other .unit .box .price:not(.tax-included){
    color: #e0553b;
}

.main_plan .section_other .unit .box .price:not(.price-caption):not(.tax-included){
  font-size: 16px;
}

.main_plan .section_other .btn_prev {
  position:absolute;
  top:50px;
  left:-30px;
}

.main_plan .section_other .btn_next {
  position:absolute;
  top:50px;
  right:-30px;
}

.main_plan .icons {
    text-align: left;
    margin-top: 0;
    overflow: hidden;
}

.main_plan .icons li {
    padding: 2px 10px 4px;
    color: #fff;
    text-align: left;
    line-height: 1.1em;
    font-size: 0.85em;
    margin-right: 3px;
    display: inline-block;
}

.main_plan .detail .icons {
    text-align: center;
	margin-bottom: 10px;
}

.main_plan .detail .icons li {
    text-align: center;
}
