
body {
    margin: 0;
    padding: 0;
/*    font-family: 'Noto Sans JP', sans-serif,Arial,'ＭＳ Ｐゴシック','MS P Gothic','メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',sans-serif,Helvetica;*/
    font-family: "Noto Sans JP", sans-serif;
    background-image: url(../img/bg_check_red.png),linear-gradient(90deg, rgba(180, 1, 9, 1), rgba(201, 3, 14, 1) 50%, rgba(180, 1, 9, 1));
    background-repeat: repeat;
}
body::before {
    background-image: url(../img/bg_check_red.png),linear-gradient(90deg, rgba(180, 1, 9, 1), rgba(201, 3, 14, 1) 50%, rgba(180, 1, 9, 1));
    background-repeat: repeat;

    position: fixed;
    display: block;
    width: 100vw;
    height: 100vh;
    background-position: center top;
    content: '';
    /* background-size: 100% auto; */
    z-index: -999;
}

html{ 

} 


a:link, a:visited {
    text-decoration: none;    
}

.header {
    width: 100%;
    background-color: #ffffff;
    position: fixed;
    z-index:9999;
    border-bottom: 3px solid #fed637;
}

.header__wrap {
    display:flex;
    padding: 5px 0;
    justify-content: space-between;
    align-items: center;
    box-sizing: border-box;
    margin:0 auto;
    max-width: 1000px;
    width: 95%;
    height:56px;
}



#g-nav {
    display: none;
}

#g_nav_pc {
    display: flex;
    height: 80px;
    align-items: center;
    justify-content: flex-end;
}

 .pc_logo {
     padding: 0;
     padding-left: 20px;
     padding-top: 8px;
     position: relative;
     display: block;
     float: left;
     width:auto; 
     border: 0;
}

br.sp {
    display:none;
}

#g_nav_pc .pc_menu_box {
    display: flex;
    height: auto;
    gap: 2rem;
    align-items: center;
}

#g_nav_pc .pc_menu {
    display: flex;
    height: auto;
    gap: 1.6rem;
    align-items: center;
}

#g_nav_pc .pc_menu .x {
    border-left: 3px solid #fed637;
    padding: 0 1.5rem;
}

#mv {
    margin: 0 auto;
    padding-top: 83px;
    text-align: center;
	height: auto;
    z-index:-9999;
}

#mv .mv__body {
    position: relative;
    margin: 0 auto -1px;
    text-align: center;
}
#mv .mv__body img {
    width: 100%;
    vertical-align: top;
}

#mv .mv__banner_body {
    width: 970px;
    position: relative;    
}

#mv .badge_comment {
    position: absolute;
    top: 90px;
    right: 10px;
}

#mv .badge_comment img {
    width: 80%;
}

a, button{
	transition: all 0.2s ease-out;
}

a:hover, button:hover {
/*    opacity: 0.9 ;*/
    color: var(--white);
    cursor: pointer;
	transition: all 0.2s ease-out;
}

.c-bg_loop_wrap {
  padding-top: 70px;
  line-height: 0;
  display: flex;
  overflow: hidden;
}

.c-bg_loop_wrap img {
  height: min(200px, 130.76923077vw);
  width: auto;
  animation: loop-slide 40s infinite linear 1s both;
}

.c-bg_loop_wrap img {
  animation: loop-slide 40s infinite linear 1s both;
}

@keyframes loop-slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@media screen and (max-width: 768px) {
  .c-scroll_line_box {
    height: 120vw;
  }
  .c-bg_loop_wrap img {
    height: 40.2666666667vw;
  }
    
}



/*------------------------------------------------------------------------------
 list_plan
 -------------------------------------------------------------------------------*/

#list_plan h3{
	background-image: url(../img/bg_ttl_plan_list.jpg);
	background-size: contain;
	padding: 27px 0 19px;
	text-align: center;
	border-top: 5px solid var(--beige);
	border-bottom: 5px solid var(--beige);
}
#list_plan ul{
	display: flex;
    align-content: center;
    flex-wrap: wrap;
    justify-content: center;
    list-style: none;
    padding: 52px 0;
}

#list_plan li{
	margin: 0 14px;
}

.btn_list_plan01{
/*
	display: flex;
	width: 430px;
	height: 130px;
	background: url("../img/btn_list_plan01_off.jpg") no-repeat center;
	background-size: contain;
*/
	
}
.btn_list_plan02{
/*
	display: flex;
	width: 460px;
	height: 130px;
	background: url("../img/btn_list_plan02_off.jpg") no-repeat center;
	background-size: contain;
*/
	
}

.btn_list_plan01:hover{
/*
	display: flex;
	width: 430px;
	height: 130px;
	background: url("../img/btn_list_plan01_on.jpg") no-repeat center;
	background-size: contain;
	
*/
}
.btn_list_plan02:hover{
/*
	display: flex;
	width: 460px;
	height: 130px;
	background: url("../img/btn_list_plan02_on.jpg") no-repeat center;
	background-size: contain;
*/
}

@media all and (max-width:1120px) {
	.txt_introduction_sp{
		text-align: center;
		padding-top: 5.55vw;
	}
	
	.txt_introduction_sp img{
		width: min(571px, 76.13vw);
	}
	#list_plan h3{
	padding: 3.9vw 0 2.05vw;
	border-top: 3px solid var(--beige);
	border-bottom: 3px solid var(--beige);
}
	#list_plan h3 img{
		width: min(639px, 85.2vw);
		
}
	#list_plan ul{
        justify-content: center;
        flex-wrap: nowrap;
        padding: 5.31vw 0;
	}

	#list_plan li{
		margin: 0 1.2vw;
	}


	.btn_list_plan01 img{
/*		display: flex;*/
		width: min(335px, 44.64vw);
		height: min(150px, 20vw);
/*
		background: url("../img/btn_list_plan01_sp_off.jpg") no-repeat center;
		background-size: contain;
*/

	}
	.btn_list_plan02 img{
/*		display: flex;*/
		width: min(335px, 44.64vw);
		height: min(150px, 20vw);
/*
		background: url("../img/btn_list_plan02_sp_off.jpg") no-repeat center;
		background-size: contain;
*/

	}

	.btn_list_plan01 img:hover{
/*		display: flex;*/
		width: min(335px, 44.64vw);
		height: min(150px, 20vw);
/*
		background: url("../img/btn_list_plan01_sp_on.jpg") no-repeat center;
		background-size: contain;
*/

	}
	.btn_list_plan02 img:hover{
/*		display: flex;*/
		width: min(335px, 44.64vw);
		height: min(150px, 20vw);
/*
		background: url("../img/btn_list_plan02_sp_on.jpg") no-repeat center;
		background-size: contain;
*/


	}
	
}

/*------------------------------------------------------------------------------
#news
 -------------------------------------------------------------------------------*/
#news {
    background: url("../img/bg_white_texture.jpg") repeat;
    padding: 2.5rem 1.5rem;
}

#news .news_list {
    display: flex;
    align-items: center;
    max-width: 1000px;
    width: 95%;
    margin: 0 auto;
}

#news .news_list .news_title {
    width: 8rem;
}

#news .news_list .news_title h2 img {
    width: 100px;
}

#news .news_list .update_list {
    background-color: #fff;
    border-radius: 8px;
    margin-left: 1.2rem;
    padding: 1rem 1rem;
    width: 100%;
    font-family: "Noto Sans JP", sans-serif;
}

#news .news_list .update_list ul {
    list-style-type: none;
}

#news .news_list .update_list ul li {
    line-height: 140%;
    font-size: 14px;
}

#news .news_list .update_list ul li time {
    color: #00a7eb;
    font-weight: bold;
}

/*------------------------------------------------------------------------------
#comment
 -------------------------------------------------------------------------------*/

#comment {
    background-image: url(../img/bg_check_yellow.png),linear-gradient(90deg, rgba(237, 186, 0, 1), rgba(241, 194, 23, 1) 50%, rgba(237, 186, 0, 1));
    background-repeat: repeat;
    padding-bottom: 70px;
}

#comment .comment_content_header  {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
/*    border-bottom: 1px solid #fcdccd;*/
}

#comment .comment_content_header img {
    height: auto;
    max-width: 1000px;
    width: 100%;
    vertical-align:top;
}

#comment .comment_inner  {
    margin-inline: auto;
    padding-bottom: 30px;
    max-width: 1000px;
    width: 100%;
    background-image: repeating-linear-gradient(180deg, #fcdccd, #fcdccd 10px, #fde5da 10px, #fde5da 20px);
    border-radius: 0 0 20px 20px;
}

#comment .comment_inner .comment_block {
    margin-bottom: 20px;
    margin: 0 auto;
    text-align: center;
    max-width: 870px;
    width: 100%;
    padding-bottom: 40px;
}

#comment .comment_inner .comment_block .comment_ttl {
    background-color: #07a3e3;
    color: #fff;
    padding: 20px 10px 15px 10px;
    border-radius: 25px 25px 0 0;
}

#comment .comment_inner .comment_block .comment_ttl h3 {

}

#comment .comment_inner .comment_block .comment_ttl h3 span {
    padding-left: 10px;
    vertical-align: top;
}

#comment .comment_inner .comment_block .comment_ttl h3 img {
    width: 20rem;
}

#comment .comment_inner .comment_block .comment_detail {
    background-color: #f4f1eb;
    color: #1f2337;
    padding: 30px 45px 45px 45px;
    border-radius: 0 0 25px 25px;
    text-align: left;
}

#comment .comment_inner .comment_block p {
    line-height: 204%;
    letter-spacing: 0.1em;
    text-decoration: underline;
    text-decoration-style: dotted;
    color: #000; /* 下線の色 */
    text-decoration-color: #7cbef3; /* 下線の色 */
    text-underline-offset: 6px;
    text-decoration-thickness: 2px;
    color: #312823;
}



/*------------------------------------------------------------------------------
#highlights
 -------------------------------------------------------------------------------*/

#highlights {
    background-image: url(../img/bg_check_red.png),linear-gradient(90deg, rgba(180, 1, 9, 1), rgba(201, 3, 14, 1) 50%, rgba(180, 1, 9, 1));
    background-repeat: repeat;
    text-align: center;
    position: relative;
}


#highlights .highlights_box {
    padding-bottom: 80px;
    padding-top: 80px;
}

#highlights .highlights_box::before {
  content: "";
  background-image: url(../img/bg_check_line_top.png);
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  background-repeat: repeat-x;
  background-size: contain;
  width: 100%;
  height: min(46px, 3.5384615385vw);
  z-index: 10;
}

#highlights .highlights_box::after {
  content: "";
  background-image: url(../img/bg_check_line_bottom.png?v=250619);
  position: absolute;
  left: 0;
  right: 0;
  bottom: -6px;
  background-repeat: repeat-x;
  background-size: contain;
  width: 100%;
  min-height: 13px;
  height: 13px;
  z-index: 10;
}

#highlights .read {
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    line-height: 180%;
    letter-spacing: 0.1em;
}

#highlights .highlights_inner {
    margin-inline: auto;
    max-width: 1000px;
    width: 95%;
    margin: 0 auto;
    padding-bottom: 10px;
}

#highlights .point_block {
    margin: 1.8rem 1rem;
    padding: 1.9rem 2rem;
    border: 3px solid #9e874c;
}

#highlights .point_block .point_detail {
    display: flex;
    text-align:left;
}

#highlights .point_block .point_detail .point_txt {
    margin-left: 30px;
}

#highlights .point_block h3 {
    margin-bottom: 0.7rem;
    padding: 1rem 1rem;
    background-color: #9e874c;
    color: #fff;
    font-size: 20px;
}

#highlights .point_block h4 {
    margin-top: 1rem;
    color: #d4b461;
    font-size: 1.1rem;
}

#highlights .point_block p {
    margin-top: 1rem;
    color: #fff;
    line-height: 160%;
    font-size: 0.92rem;
}

#detail_area {
    padding: 50px 0;
    background-image: url(../img/bg_check_yellow.png),linear-gradient(90deg, rgba(237, 186, 0, 1), rgba(241, 194, 23, 1) 50%, rgba(237, 186, 0, 1));
    background-repeat: repeat;
}

#detail_area .detail_inner::before {
  content: "";
  background-image: url(../img/bg_check_line_top.png);
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  background-repeat: repeat-x;
  background-size: contain;
  width: 100%;
  height: min(46px, 3.5384615385vw);
  z-index: 10;
}



#bottom_area {
  position: relative;
}

#bottom_area .bottom_area_innner::before {
  content: "";
  background-image: url(../img/bg_check_line_top.png);
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  background-repeat: repeat-x;
  background-size: contain;
  width: 100%;
  height: min(46px, 3.5384615385vw);
  z-index: 10;
}

/*------------------------------------------------------------------------------
#outline
 -------------------------------------------------------------------------------*/

#outline {
    margin-inline: auto;
    max-width: 1000px;
    width: 95%;
    margin: 0 auto;
}

#outline h2 {
    text-align: center;
    margin-bottom: 20px;
}

#outline .outline_innner {
    padding: 2.5rem 3.5rem;
    background-color: #fff;
    background: url("../img/bg_white_texture.jpg") repeat;
}

#outline .outline_innner .data-list .data-list_item {
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px dotted #c6b895;
    
}

#outline .outline_innner .data-list .data-list_item dt {
    color: #fff;
    background-color: #9e874c;
    padding: 0.2rem 0.4rem;
    width: fit-content;
    font-size: 14px;
    font-weight: bold;
    letter-spacing : 0.05rem;
    margin-bottom: 8px;
}

#outline .outline_innner .data-list .data-list_item dd {
    font-weight: bold;
}

#outline .outline_innner .data-list .data-list_item dd .txt{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

#outline .outline_innner .data-list .data-list_item dd .txt span {
    padding-left: 1em;
}

#outline .outline_innner .data-list .data-list_item .maplink {
    margin-left: 15px;
}

#outline .outline_innner .data-list .data-list_item .maplink img {
    width: 45px;
}

#outline .outline_innner .data-list .map {
    margin-top: 15px;
}

#outline .outline_innner .data-list .map iframe {
    width: 100%;
}

.point_img {

}

.point_img img {
    height: auto;
    width: 438px;
}

.point_img figure {
     display: table;
    margin: 0 auto;
    text-align: center;
}

.point_img figure figcaption {
    caption-side: bottom;
    display: table-caption;
    text-align: right;
    font-size: 12px;
    margin-top: 5px;
    color: #312823;
}

/*------------------------------------------------------------------------------
#notice
 -------------------------------------------------------------------------------*/

#notice {
    margin-inline: auto;
    max-width: 1000px;
    width: 95%;
    margin: 0 auto;
}

#notice h2 {
    margin-top: 50px;
    text-align: center;
    margin-bottom: 10px;
}

#notice .notice_innner {
    padding: 2.0rem 3.0rem;
    background-color: #fff;    
    background: url("../img/bg_white_texture.jpg") repeat;
    line-height: 150%;
}

#notice .notice_innner dl {
}

#notice .notice_innner dl dt {
    margin-bottom: 8px;   
    font-weight: bold;
    font-size: 15px;
    color: #312823;
}

#notice .notice_innner dl dd {
    font-size: 14px;
}

#notice .notice_innner dl dd ul {
    color: #312823;
}

#notice .notice_innner .note-list li:before {
     content: "・";   
}

#notice .notice_innner .note-list li {
    line-height: 140%;
    margin-bottom: 10px;
    display: flex;
    gap: .25rem;
}


/*------------------------------------------------------------------------------
#contact
 -------------------------------------------------------------------------------*/

#contact {
    margin-inline: auto;
    max-width: 1000px;
    width: 95%;
    margin: 0 auto;
    text-align: center;
}

#contact h2 {
    margin-top: 50px;
    margin-bottom: 10px;
}

#contact .contact_innner {
    padding: 2.5rem 1rem;
    background-color: #fff;    
    background: url("../img/bg_white_texture.jpg") repeat;
    color: #312823;
}

#contact .contact_innner p {
    font-size: 17px;
    line-height: 150%;
}

#contact .contact_innner p a {
    font-weight: bold;
    text-decoration: underline;
    text-underline-offset: 0.3rem;
}

#contact .contact_innner p a:link {
    color: #ad8f65;
}

#contact .contact_innner .note-list {
    margin-top: 15px;
    font-size: 12px;
    text-align: center;
    line-height: 160%;
}

#contact .contact_innner .note-list li:before {
     content: "※";   
}

#contact .contact_innner .note-list li {
    line-height: 140%;
    margin-bottom: 0px;
    display: block;
}

.sns_area {
    margin-inline: auto;
    margin: 0 auto; 
    margin-top: 30px;
    width: 612px;
    text-align: center;
}

.sns_area h3 img {
    width: 240px;    
}

.sns_area .ex_box {
    display: flex;
    align-items: center;
}

.sns_box {
    padding: 2.5rem 2rem;
    background-color: #c21b1e;    
    border-radius: 15px;
    margin-left: 30px;
}

.sns_box ul {
    list-style-type: none;
    text-align:left;
}

.sns_box .sns-list {
    display: flex;
    flex-direction: column;
    gap: .625rem; 
}

.sns_box .sns-list img {
    margin-right: 8px;
    width: 1.75rem;
    vertical-align: middle;
}

.sns_box ul {
    list-style-type: none;
    text-align:left;
}

.sns_box ul li a {
    color: #fff;
    font-weight: bold;
}

.sns_box ul li a:link {
    color: #fff;
}


/*------------------------------------------------------------------------------
#share
 -------------------------------------------------------------------------------*/

#share {
    margin-top: 45px;
}

#share h4 {
    margin: 0 auto;
    margin-bottom: 15px;
    text-align: center;
}


#share .share_inner{
	margin: auto;
}

#share .share_inner ul {
	margin: auto;
	display: flex;
	justify-content: center;
    align-items: center;
    list-style-type: none;
}

#share .share_inner ul li {
    width: 48px;
    margin: 0 5px;
}

#share .share_inner ul li img {
    width: 100%;
}

#share .share_btn{
	margin: auto;
    margin-bottom: 20px;
	text-align: center;
    max-height: 64px;
/*	height: min(64px, 4.92vw);*/
	display: flex;
	justify-content: center;
	transition: 0.2s;
	position: relative;
}

#share .share_btn img {
    max-width: 457px;
    width: 100%;
}

#share ul li img {
   width: 12%;
}

#share .share_btn:hover img.btn_off{
	display: none;
	transition: 0.2s;
}

.banner_list {
    max-width: 1000px;
    width: 95%;
    margin: 0 auto;
    margin-top: 70px;
    display: flex;
    list-style-type: none;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
}

.banner_list li img {
    max-width: 240px;
    width: 100%;
}

.banner_list li:first-child img {
    border: 1px solid #fff;
}

.footer-navi {
    margin: 0 auto;
    margin-top: 25px;
    text-align: center;
    max-width: 1000px;
    width: 95%;
}

.footer-navi figure img {
    width: 420px;
}

.footer-navi .navi-list {
    display: flex;
    max-width: 1000px;
    width: 100%; 
    list-style-type: none;
    margin: 0 auto;
    margin-top: 30px;
}

.footer-navi .navi-list .navi-item img {
    max-width: 842px;
    width: 100%;
    border-top: 2px solid #e1c376;
    border-bottom: 2px solid #e1c376;
    border-left: 2px solid #e1c376;
    display: block;
    box-sizing: border-box;
}

.footer-navi .navi-list .navi-item:nth-last-child(2) img {
    box-sizing:border-box;
}

.footer-navi .navi-list .navi-item:nth-last-child(2) {
    box-sizing:border-box;
    border-right: 2px solid #e1c376;
}

.footer-navi .navi-list .navi-item:nth-last-child(2) a {
    box-sizing:border-box;
}

.footer-navi .navi-list .navi-item:last-child {
    display: none;
}

.footer-navi .navi-list .navi-item:last-child img {
    border-right: 2px solid #e1c376;
}

p.period_plan01::before{
	content: "";
    display: block;
    width: 145px;
    height: 200px;
    margin: 0 auto;
    background: url(../img/img_shirobuta_plan01.png) no-repeat left bottom;
    position: absolute;
	top: 159px;
	left: 104px;
	-webkit-animation: chara .7s step-end .1s infinite;
    animation: chara .7s step-end .1s infinite;
}
p.period_plan01::after{
	content: "";
    display: block;
    width: 116px;
    height: 196px;
    margin: 0 auto;
    background: url("../img/img_mizu_plan01.png") no-repeat left bottom;
    position: absolute;
	top: 147px;
	right: 124px;
	-webkit-animation: chara .8s step-end .1s infinite;
    animation: chara .8s step-end .1s infinite;
}

button{
	border: none;
	background-color: transparent;
}
#copyTarget{
/*
	width: 0;
	height: 0;
*/
}

.txt_coupon_additional_plan01{
	padding: 6px 0 30px;
    font-size: 18px;
    font-weight: 600;
}

.notice_coupon_plan01{
	margin: auto;
    padding: 24px 22px;
    text-align: left;
    background-color: var(--white);
    width: 630px;
	font-size: 14px;
}

.notice_coupon_plan01 ul{
	list-style: none;
	line-height: 157%;
}

.txt_coupon_plan01{
	color:  var(--ocher);
	font-weight: 600;
	padding-bottom: 8px;
}

.bn_store_plan01{
	padding: 48px 0 0;
}
.bn_store_plan01 a{
/*
	display: flex;
	width: 730px;
	height: 191px;
	background: url("../img/bn_store_plan01_off.jpg") no-repeat center;
	background-size: contain;
	margin: auto;
*/
}

.bn_store_plan01 a:hover{
/*
	display: flex;
	width: 730px;
	height: 191px;
	background: url("../img/bn_store_plan01_on.jpg") no-repeat center;
	background-size: contain;
*/
	
}

button.btn_copyToClipboard{
/*
	display: flex;
	width: 840px;
	height: 268px;
	background: url("../img/bn_coupon_plan01_off.jpg") no-repeat center;
	background-size: contain;
*/
	position: relative;
    top: -13px;
	
}

button.btn_copyToClipboard:hover{
/*
	display: flex;
	width: 840px;
	height: 268px;
	background: url("../img/bn_coupon_plan01_on.jpg") no-repeat center;
	background-size: contain;
*/
	
	
}


@media all and (max-width:1120px) {
	
	#plan01{
		display: block;
		width: 92vw;
		margin: 4.95vw auto 7.15vw;
		text-align: center;
	}

	.inner_plan01{
		background: url(../img/frame_contents_mid.png) repeat-y center top -1px;
		position: relative;
		background-size: contain;
		margin: -0.2vw 0;

	}
	#plan01::before{
		content: "";
		display: block;
		width: 92vw;
		height: 8.79vw;
		margin: 0 auto;
		background: url("../img/frame_contents_top.png") no-repeat center bottom ;
		background-size: contain;

		}
	#plan01::after{
		content: "";
		display: block;
		width: 92vw;
		height: 8.79vw;
		margin: 0 auto;
		background: url("../img/frame_contents_btm.png") no-repeat center top;
		background-size: contain;

		}

	h2.ttl_plan01{
		position: absolute;
		width: 100%;
		top: -11.83vw;
		left: 0;
	}
	
	h2.ttl_plan01 img{
		width: 100vw;
		left: -3.9vw;
		position: absolute;
		z-index: 1;
	}
	p.period_plan01::before{
		width: min(145px, 19.33vw);
		height: min(200px, 26.66vw);
		background-size: contain;
		top: 29.95vw;
		left: -2.41vw;
	}
	p.period_plan01::after{
		width: min(116px, 15.46vw);
		height: min(196px, 26.13vw);
		background-size: contain;
		top: -8.69vw;
		right: 2.41vw;
		z-index: 0;
	}
    
    
    
    
	#highlights h2 {
		width: 100%;
	}
	
	#highlights h2 img{
		max-width: 100%;
	}




	.contents_plan01{
		width: 92vw;
		margin: auto;
		padding: 40.57vw 0 3.45vw;
	}
	
	.contents_plan01 img{
		width: min(534px, 71.2vw);
		margin: auto;
		
	}


	.bn_coupon_plan01{
		padding: 3.62vw 0 0 0;
	}
	.bn_coupon_plan01 img{
		width: 92vw;
	}

	button{
		border: none;
		background-color: transparent;
	}
	#copyTarget{
/*
		width: 0;
		height: 0;
*/
	}

	.txt_coupon_additional_plan01{
		padding: 0 0 5.07vw;
		font-size: min(26px, 3.38vw);
		font-weight: 600;
		line-height: 130%;
	}

	.notice_coupon_plan01{
		margin: auto;
		padding: 4.58vw 5.31vw;
		text-align: left;
		background-color: var(--white);
		width: 66.42vw;
		font-size: min(20px, 2.58vw);
		line-height: 114%;
	}

	.notice_coupon_plan01 ul{
		list-style: none;
		line-height: 157%;
	}

	.txt_coupon_plan01{
		color:  var(--ocher);
		font-weight: 600;
		padding-bottom: 8px;
	}

	.bn_store_plan01{
		padding: 3.86vw 0 0;
	}
	.bn_store_plan01 a img{
/*		display: flex;*/
		width: min(576px, 76.8vw);
		height: min(150px, 20vw);
/*
		background: url("../img/bn_store_plan01_sp_off.jpg") no-repeat center;
		background-size: contain;
*/
		margin: auto;
	}

	.bn_store_plan01 a img:hover{
/*		display: flex;*/
		width: min(576px, 76.8vw);
		height: min(150px, 20vw);
/*
		background: url("../img/bn_store_plan01_sp_on.jpg") no-repeat center;
		background-size: contain;
*/

	}

	button.btn_copyToClipboard img{
/*		display: flex;*/
		width: min(576px, 76.8vw);
		height: min(318px, 42.4vw);
/*
		background: url("../img/bn_coupon_plan01_sp_off.jpg") no-repeat center;
		background-size: contain;
*/
		position: relative;
        top: -0.5vw;

	}

	button.btn_copyToClipboard img:hover{
/*		display: flex;*/
		width: min(576px, 76.8vw);
		height: min(318px, 42.4vw);
/*
		background: url("../img/bn_coupon_plan01_sp_on.jpg") no-repeat center;
		background-size: contain;
*/


	}
	
	
	
}


.guideline{
	width: 690px;
	margin: auto;
	padding-bottom: 49px;
	position: relative;
}

.guideline::before{
	content: "";
	display: block;
	width: 149px;
	height: 214px;
	margin: 0 auto;
	background: url(../img/img_booklove_plan02.png) no-repeat center;
	position: absolute;
	bottom: -85px;
	right: -58px;
	-webkit-animation: chara .8s step-end .1s infinite;
    animation: chara .8s step-end .1s infinite;
}

.txt_guideline_notice{
	font-size: 13px;
	line-height: 1.45em;
	text-align: left;
}

.guideline_list01,.guideline_list02{
	position: relative;
	padding-left: 50px;
	font-weight: bold;
	margin-bottom: 14px;
	text-align: left;
	font-size: 23px;
	line-height: 1.45em;
	letter-spacing: 0.01em;
}

.guideline_list01::before{
	content: '';
	display: inline-block;
	position: absolute;
	bottom: -2px;
	width: 36px;
	height: 36px;
	background-image: url("../img/icon_num01_plan02.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	margin-left: -50px;
	
}

.guideline_list02::before{
	content: '';
	display: inline-block;
	position: absolute;
	bottom: -2px;
	width: 36px;
	height: 36px;
	background-image: url("../img/icon_num02_plan02.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	margin-left: -50px;
	
}
.guideline_list01 a,.guideline_list02 a{
	color: var(--red);
/*	padding-bottom: 2px;*/
	border-bottom: 2px solid;
	vertical-align: text-bottom;
}

.guideline p.guideline_list01 span{
	font-size: 20px;
}
.sbttl_contact_plan02{
	margin-bottom: 18px;
}
.guideline p.guideline_note{
	font-size: 15px;
	line-height: 2em;
	margin: 20px 0 0;
}
.guideline h5{
	margin: 90px 0  27px;
	text-align: center;
	
}

.guideline h5 img{
	width: 380px;
	
}

.txt_rule_notice{
	padding-bottom: 17px;
}

.box_guideline{
	padding: 33px 50px;
	background-color: var(--white);
	height: 218px;
	text-align: left;
	width: 732px;
	margin: auto;
	}

.box_inner_guideline{
	height: 217px;
	overflow-y: scroll;
}

.sbttl_rule_plan02{
	padding: 53px 0 20px;
}
.txt_rule_plan02{
	padding: 0 0 76px;
    font-size: 23px;
    font-weight: 600;
    line-height: 1.35em;
    letter-spacing: 0.01em;
}


.box_inner_guideline p{
	font-size: 15px;
	line-height: 1.6em;
	margin-bottom: 30px;
	
}

.box_inner_guideline p span{
	color: var(--ocher);
	font-weight: 600;
	
}

@media all and (max-width:1120px) {
	
	#plan02{
		display: block;
		width: 92vw;
		margin: 4.95vw auto 10.95vw;
		text-align: center;
	}

	.inner_plan02{
		background: url(../img/frame_contents_mid.png) repeat-y center top -1px;
		position: relative;
		background-size: contain;
		margin: -0.2vw 0;

	}
	#plan02::before{
		content: "";
		display: block;
		width: 92vw;
		height: 8.79vw;
		margin: 0 auto;
		background: url("../img/frame_contents_top.png") no-repeat center bottom ;
		background-size: contain;

		}
	#plan02::after{
		content: "";
		display: block;
		width: 92vw;
		height: 8.79vw;
		margin: 0 auto;
		background: url("../img/frame_contents_btm.png") no-repeat center top;
		background-size: contain;

		}

	h2.ttl_plan02{
		position: absolute;
		top: -12.83vw;
		left: 0;
	}

	h2.ttl_plan02 img{
		width: 100vw;
        left: -3.9vw;
        position: absolute;
        z-index: 1;
	}

	.contents_plan02{
		width: 92vw;
		margin: auto;
		padding: 42vw 0 6vw;
	}
	
	.period_plan02 img {
        width: min(504px, 67.2vw);
        margin: auto;
    }

	p.txt_plan02{
		padding: 3.65vw 0 5.272vw;
        letter-spacing: 0.01em;
		font-size: min(26px, 3.46vw);
		line-height: 145%;
        font-weight: 600;
	}

	.txt_coupon_additional_plan02{
		padding: 20px 0 30px;
		font-size: 18px;
		font-weight: 600;
	}

	.sbttl_howto_plan02{
		padding-bottom: 1.96vw;
	}

	.sbttl_howto_plan02 img{
        width: min(446px, 59.46vw);
        margin: auto;
	}

	.guideline{
		width: min(700px, 82.12vw);
		margin: auto;
		padding-bottom: 8.21vw;
		position: relative;
	}
	
	.sbttl_contact_plan02 img{
		width: min(446px, 59.46vw);
	}

	.guideline::before{
		display: none;
	}

	.txt_guideline_notice{
		font-size: min(20px, 2.65vw);
		line-height: 100%;
		text-align: left;
	}

	.guideline_list01,.guideline_list02{
		position: relative;
		padding-left: 6.03vw;
		font-weight: bold;
		margin-bottom: 1.69vw;
		text-align: left;
		font-size: min(26px, 3.46vw);
		line-height: 133%;
		letter-spacing: 0.01em;
	}

	.guideline_list01::before{
		content: '';
		display: inline-block;
		position: absolute;
		top: 0.3vw;
		width: min(36px, 4.8vw);
		height: min(36px, 4.8vw);
		background-image: url("../img/icon_num01_plan02_sp.jpg");
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
		margin-left: -6.03vw;

	}

	.guideline_list02::before{
		content: '';
		display: inline-block;
		position: absolute;
		top: 0.3vw;
		width: min(36px, 4.8vw);
		height: min(36px, 4.8vw);
		background-image: url("../img/icon_num02_plan02_sp.jpg");
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
		margin-left: -6.03vw;

	}
	.guideline_list01 a,.guideline_list02 a{
		color: var(--red);
	/*	padding-bottom: 2px;*/
		border-bottom: 2px solid;
		vertical-align: text-bottom;
	}

	.guideline p.guideline_list01 span{
		font-size: 20px;
	}
	.sbttl_contact_plan02{
		margin-bottom: 3.38vw;
	}
	.guideline p.guideline_note{
		font-size: 15px;
		line-height: 2em;
		margin: 20px 0 0;
	}
	.guideline h5{
		margin: 90px 0  27px;
		text-align: center;

	}

	.guideline h5 img{
		width: 380px;

	}

	.txt_rule_notice{
		padding-bottom: 2.89vw;
        font-size: min(20px, 2.65vw);
        line-height: 100%;
	}

	.box_guideline{
		margin: auto;
        padding: 4.58vw 3.31vw;
        text-align: left;
        width: 69.42vw;
		font-size: min(20px, 2.58vw);
        height: 28.98vw;
		}

	.box_inner_guideline{
		height: 28.98vw;
		overflow-y: scroll;
	}

	.sbttl_rule_plan02{
		padding: 6.76vw 0 2.17vw;
	}

	.sbttl_rule_plan02 img{
		width: min(446px, 59.46vw);
	}
	.txt_rule_plan02{
		padding: 0 5.55vw 8.69vw;
		font-size: min(26px, 3.52vw);
        font-weight: 600;
        line-height: 150%;
        letter-spacing: 0.01em;
        text-align: left;
	}


	.box_inner_guideline p{
		font-size: 2.68vw;
		font-size: min(20px, 2.58vw);
		line-height: 153%;
		margin-bottom: 4.24vw;
	}

	.box_inner_guideline p span{
		color: var(--ocher);
		font-weight: 600;

	}

	.ttl_target-title-prize_plan02{
		padding-bottom: 4vw;
	}
	

	.ttl_target-title-prize_plan02 img{
		width: min(629px, 83.86vw);
	}
	
	
}

/*-------------------------------------------------------------
frame_tt_booklove
 --------------------------------------------------------------*/
.frame_tt_booklove{
	margin: 0 auto 40px;
	width: 909px;
	background: url("../img/frame_tt_left_top_plan02.png") no-repeat top 0 left 0,
				url("../img/frame_tt_right_top_plan02.png") no-repeat top 0 right 0,
				url("../img/frame_tt_left_btm_plan02.png") no-repeat bottom 0 left 0,
				url("../img/frame_tt_right_btm_plan02.png") no-repeat bottom 0 right 0,
				url("../img/bg_cloud_booklove_plan02.png") no-repeat center,
				url("../img/bg_tt_plan02.jpg") repeat-y;
	border: 5px solid var(--beige);
	padding: 49px 0 49px;
	position: relative;
	
}

.frame_tt_booklove h4{
	padding-bottom: 26px;
	position: relative;
	z-index: 1;
}


.frame_tt_booklove h4::before{
	display: block;
	margin: auto;
	text-align: center;
	content: "";
	background: url("../img/icon_ttl_booklove_plan02.png") no-repeat top 0 center;
	width: 737px;
	height: 122px;
	position: absolute;
    left: calc(100% - 89.5%);
    top: calc(100% - 102.5%);
	z-index: -1;
}

.frame_tt_booklove h5{
	padding-bottom: 28px;
}

.list_prize{
	display: flex;
	padding: 0px 0 0 9px;
	align-items: center;
	align-items: baseline;
	justify-content: center;
	
}

.box_goods_plan02{
	display: flex;
	justify-content: center;
}

.goods_plan02{
	width: calc(100% / 3);
	padding: 0 4px;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.color-paper_img,.goods_img{
	position: relative;
}

.icon_num01.booklove{
	position: absolute;
	bottom: 0;
	right: -4px;
}
.icon_num02.booklove{
	position: absolute;
	bottom: 0;
	right: -6px;
}

.txt_color-paper_plan02{
	font-size: 18.5px;
    padding: 2px 4px 0 2px;
    line-height: 123%;
    font-weight: 600;
    letter-spacing: 0.02em;
    width: 100%;
}

.txt_color-paper_plan02 span.ts14{
	font-size: 14px;
	display: block;
	line-height: 130%;
}
.txt_color-paper_plan02 span.ts12{
	font-size: 12px;
	display: block;
	line-height: 130%;
}
.txt_color-paper_plan02 span.ts11 {
	font-size: 11px;
	display: block;
	letter-spacing: 0.01em;
	padding-top: 4px;
}


.btn_post_booklove_plan02{
	text-align: center;
	padding: 34px 0 5px;
	margin: auto;
}

.btn_post_booklove_plan02 a{
/*
	display: flex;
	width: 800px;
	height: 100px;
	background: url("../img/btn_post_booklove_plan02_off.png") no-repeat center;
*/
	background-size: contain;
	margin: auto;
}

.btn_post_booklove_plan02 a:hover{
/*
	display: flex;
	width: 800px;
	height: 100px;
	background: url("../img/btn_post_booklove_plan02_on.png") no-repeat center;
*/
	background-size: contain;
}

.color-paper_plan02{
	display: flex;
    flex-direction: column;
    align-items: center;
	padding-right: 5px
}

@media all and (max-width:1120px) {
	.frame_tt_booklove{
		margin: 0 auto 5.55vw;
		width: 82.4vw;
		background: url("../img/frame_tt_left_top_plan02_sp.png") no-repeat top 0 left 0,
					url("../img/frame_tt_right_top_plan02_sp.png") no-repeat top 0 right 0,
					url("../img/frame_tt_left_btm_plan02_sp.png") no-repeat bottom 0 left 0,
					url("../img/frame_tt_right_btm_plan02_sp.png") no-repeat bottom 0 right 0,
					url("../img/bg_cloud_booklove_plan02_sp.png") no-repeat center,
					url("../img/bg_tt_plan02_sp.jpg") ;
		border: 3px solid var(--beige);
		background-size: 11%,11%,11%,11%,100%,auto;
		padding: 6.53vw 0 8.53vw;
		position: relative;

	}

	.frame_tt_booklove h4{
		padding-bottom: 5.4vw;
		position: relative;
		z-index: 1;
	}

	.frame_tt_booklove h4 img {
		width: min(522px, 69.6vw);
	}


	.frame_tt_booklove h4::before{
		display: block;
		margin: auto;
		text-align: center;
		content: "";
		background: url("../img/icon_ttl_booklove_plan02_sp.png") no-repeat top 0 center;
		background-size: contain;
		width: 78.8vw;
		height: 14.66vw;
		position: absolute;
		left: calc(100% - 97.5%);
		top: calc(100% - 117.5%);
		z-index: -1;
	}

	.frame_tt_booklove h5{
		padding-bottom: 3.38vw;
	}

	.frame_tt_booklove h5 img{
		width: min(377px, 50.26vw);
	}

	.list_prize{
		display: flex;
		padding: 0;
		flex-direction: column;
		width: 81.5vw;
		align-items: stretch;
		justify-content: center;
		align-content: center;
		flex-wrap: wrap;

	}

	.box_goods_plan02{
		display: flex;
		justify-content: space-around;
		flex-wrap: wrap;
		align-items: flex-start;
	}

	.goods_plan02{
		width: calc(100% / 2.2);
        /* padding: 0 4px; */
        display: flex;
        flex-direction: column;
        align-items: center;
        flex-wrap: wrap;
        align-content: center;
		padding-bottom: 3vw;
	}

	.color-paper_img,.goods_img{
		position: relative;
		margin: auto;
		text-align: center;
	}


	.color-paper_img img{
		width: min(470px, 62.66vw);
	}

	.icon_num01.booklove{
		position: absolute;
		bottom: 0;
		right: -4.58vw;
		width: min(170px, 22.66vw);
	}
	
	.goods_img img{
		width: min(285px, 38vw);
	}
	
	
	.icon_num02.booklove{
		position: absolute;
		bottom: 0;
		right: -6px;
		width: min(93px, 12.4vw);
	}
	

	.txt_color-paper_plan02{
		font-size: min(36px, 4.71vw);
		padding: 0.96vw 0.96vw 0 0.48vw;
		line-height: 154%;
		font-weight: 600;
		letter-spacing: 0.02em;
		width: 100%;
	}
	
	.goods_plan02 p.txt_color-paper_plan02{
		font-size: min(26px, 3.41vw);
		line-height: 125%;
	}

	.txt_color-paper_plan02 span.ts14{
		font-size: min(18px, 2.41vw);
		display: block;
		line-height: 130%;
	}
	.txt_color-paper_plan02 span.ts12{
		font-size: min(15.6px, 2vw);
		display: block;
		line-height: 130%;
	}
	.txt_color-paper_plan02 span.ts11 {
		font-size: min(15.6px, 2.2vw);
		display: block;
		letter-spacing: 0.01em;
		padding-top: 0;
		line-height: 160%;
	}
	


	.btn_post_booklove_plan02{
		padding: 0;
		margin: auto;
	}

	.btn_post_booklove_plan02 a img{
		width: 74.66vw;
		height: 16vw;
		margin: auto;
		
/*
		background: url("../img/btn_post_booklove_plan02_sp_off.png") no-repeat center;
		background-size: contain;
*/
	}

	.btn_post_booklove_plan02 a img:hover{
		width: 74.66vw;
		height: 16vw;
		margin: auto;
/*
		background: url("../img/btn_post_booklove_plan02_sp_on.png") no-repeat center;
		background-size: contain;
*/
	}

	.color-paper_plan02{
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		align-items: flex-start;
		padding-bottom: 5vw;
	}


}

/*-------------------------------------------------------------
frame_tt_odayaka
 --------------------------------------------------------------*/
.frame_tt_odayaka{
	margin: 0 auto 40px;
	width: 909px;
	background: url("../img/frame_tt_left_top_plan02.png") no-repeat top 0 left 0,
				url("../img/frame_tt_right_top_plan02.png") no-repeat top 0 right 0,
				url("../img/frame_tt_left_btm_plan02.png") no-repeat bottom 0 left 0,
				url("../img/frame_tt_right_btm_plan02.png") no-repeat bottom 0 right 0,
				url("../img/bg_cloud_odayaka_plan02.png") no-repeat top -15px center,
				url("../img/bg_tt_plan02.jpg") repeat-y;
	border: 5px solid var(--beige);
	padding: 60px 0 69px;
	position: relative;
	z-index: 1;
	
}

.frame_tt_odayaka h4{
	padding-bottom: 26px;
	position: relative;
}



.frame_tt_odayaka h4::before{
	display: block;
	margin: auto;
	text-align: center;
	content: "";
	background: url("../img/icon_ttl_odayaka_plan02.png") no-repeat top 0 center;
	width: 859px;
    height: 132px;
    position: absolute;
    left: calc(100% - 97.4%);
    top: calc(100% - 113%);
	z-index: -1;
}

.frame_tt_odayaka h5{
	padding-bottom: 35px;
}

.btn_post_odayaka_plan02{
	text-align: center;
	padding: 21px 0 0px;
}

.btn_post_odayaka_plan02 a{
/*
	display: flex;
	width: 800px;
	height: 100px;
	background: url("../img/btn_post_odayaka_plan02_off.png") no-repeat center;
	background-size: contain;
	margin: auto;
*/
}

.btn_post_odayaka_plan02 a:hover{
/*
	display: flex;
	width: 800px;
	height: 100px;
	background: url("../img/btn_post_odayaka_plan02_on.png") no-repeat center;
	background-size: contain;
*/
}

.goods_plan02.odayaka {
    width: 33%;
    padding: 0 0 0 37px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.icon_num01.ohter{
	position: absolute;
	bottom: 0;
	right: -7px;
}

.icon_num02.ohter{
	position: absolute;
	bottom: -1px;
	right: 14px;
}

.icon_num02.ohter_v2{
	position: absolute;
	bottom: 7px;
	right: -25px;
}

@media all and (max-width:1120px) {
	.frame_tt_odayaka{
		margin: 0 auto 5.55vw;
		width: 82.4vw;
		background: url("../img/frame_tt_left_top_plan02_sp.png") no-repeat top 0 left 0,
					url("../img/frame_tt_right_top_plan02_sp.png") no-repeat top 0 right 0,
					url("../img/frame_tt_left_btm_plan02_sp.png") no-repeat bottom 0 left 0,
					url("../img/frame_tt_right_btm_plan02_sp.png") no-repeat bottom 0 right 0,
					url("../img/bg_cloud_odayaka_plan02_sp.png") no-repeat center,
					url("../img/bg_tt_plan02_sp.jpg") ;
		border: 3px solid var(--beige);
		background-size: 11%,11%,11%,11%,100%,auto;
		        padding: 7.2vw 0 8.53vw;
		position: relative;
		z-index: 1;

	}

	.frame_tt_odayaka h4{
		padding-bottom: 3.86vw;
		position: relative;
	}

	.frame_tt_odayaka h4 img{
		width: min(454px, 61.6vw);
	}



	.frame_tt_odayaka h4::before{
		display: block;
		margin: auto;
		text-align: center;
		content: "";
		background: url("../img/icon_ttl_odayaka_plan02_sp.png") no-repeat top 0 center;
		width: 77.2vw;
		height: 22.4vw;
		background-size: contain;
		position: absolute;
		left: calc(100% - 98.4%);
		top: calc(100% - 118%);
		z-index: -1;
	}

	.frame_tt_odayaka h5{
		padding-bottom: 3.62vw;
	}
	
	.frame_tt_odayaka h5 img{
		width: min(377px, 50.26vw);
	}

	.btn_post_odayaka_plan02{
		text-align: center;
		padding: 21px 0 0px;
		margin: auto;
	}
	
	.btn_post_odayaka_plan02 a img{
		width: 74.66vw;
		height: 16vw;
/*
		background: url("../img/btn_post_odayaka_plan02_sp_off.png") no-repeat center;
		background-size: contain;
*/
		margin: auto;
	}

	.btn_post_odayaka_plan02 a img:hover{
		width: 74.66vw;
		height: 16vw;
/*
		background: url("../img/btn_post_odayaka_plan02_sp_on.png") no-repeat center;
		background-size: contain;
*/
	}

	.goods_plan02.odayaka {
		width: 100%;
        padding: 0;
	}
	
	.goods_plan02.odayaka img{
		width: min(346px, 46.13vw);
	}

	.icon_num01.ohter{
        position: absolute;
        bottom: 0;
        right: -4.58vw!important;
        width: min(170px, 22.66vw);
	}

	.icon_num02.ohter{
		position: absolute;
		bottom: -1px;
		right: -2.73vw!important;
		width: min(113px, 15.06vw)!important;
	}

	.icon_num02.ohter_v2{
		position: absolute;
		bottom: 7px;
		right: -25px;
	}

}

/*-------------------------------------------------------------
frame_tt_koishita
 --------------------------------------------------------------*/
.frame_tt_koishita{
	margin: 0 auto 41px;
	width: 909px;
	background: url("../img/frame_tt_left_top_plan02.png") no-repeat top 0 left 0,
				url("../img/frame_tt_right_top_plan02.png") no-repeat top 0 right 0,
				url("../img/frame_tt_left_btm_plan02.png") no-repeat bottom 0 left 0,
				url("../img/frame_tt_right_btm_plan02.png") no-repeat bottom 0 right 0,
				url("../img/bg_cloud_koishita_plan02.png") no-repeat top -5px center,
				url("../img/bg_tt_plan02.jpg") repeat-y;
	border: 5px solid var(--beige);
	padding: 54px 0 74px;
	position: relative;
	z-index: 1;
	
}

.frame_tt_koishita h4{
	padding-bottom: 33px;
	position: relative;
}



.frame_tt_koishita h4::before{
	display: block;
	margin: auto;
	text-align: center;
	content: "";
	background: url("../img/icon_ttl_koishita_plan02.png") no-repeat top 0 center;
	width: 835px;
    height: 125px;
    position: absolute;
	left: calc(100% - 96.6%);
	top: calc(100% - 97%);
	z-index: -1;
}

.frame_tt_koishita h5{
	padding-bottom: 28px;
}

.btn_post_koishita_plan02{
	text-align: center;
	padding: 21px 0 0px;
	margin: auto;
}
.btn_post_koishita_plan02 a{
/*
	display: flex;
	width: 820px;
	height: 100px;
	background: url("../img/btn_post_koishita_plan02_off.png") no-repeat center;
	background-size: contain;
*/
	margin: auto;
}

.btn_post_koishita_plan02 a:hover{
/*
	display: flex;
	width: 820px;
	height: 100px;
	background: url("../img/btn_post_koishita_plan02_on.png") no-repeat center;
	background-size: contain;
*/
}
.goods_plan02.koishita {
    width: 43%;
    padding: 0 0 0 37px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.icon_num01.ohter{
	position: absolute;
	bottom: 0;
	right: -7px;
}

.icon_num02.ohter{
	position: absolute;
bottom: -1px;
right: 14px;
}


@media all and (max-width:1120px) {
	.frame_tt_koishita{
		margin: 0 auto 5.55vw;
		width: 82.4vw;
		background: url("../img/frame_tt_left_top_plan02_sp.png") no-repeat top 0 left 0,
					url("../img/frame_tt_right_top_plan02_sp.png") no-repeat top 0 right 0,
					url("../img/frame_tt_left_btm_plan02_sp.png") no-repeat bottom 0 left 0,
					url("../img/frame_tt_right_btm_plan02_sp.png") no-repeat bottom 0 right 0,
					url("../img/bg_cloud_koishita_plan02_sp.png") no-repeat center,
					url("../img/bg_tt_plan02_sp.jpg") ;
		border: 3px solid var(--beige);
		background-size: 11%,11%,11%,11%,100%,auto;
		        padding: 8.2vw 0 8.53vw;
		position: relative;
		z-index: 1;

	}

	.frame_tt_koishita h4{
		padding-bottom: 5.86vw;
		position: relative;
	}

	.frame_tt_koishita h4 img{
		width: min(595px, 78.9vw);
	}



	.frame_tt_koishita h4::before{
		display: block;
		margin: auto;
		text-align: center;
		content: "";
		background: url("../img/icon_ttl_koishita_plan02_sp.png") no-repeat top 0 center;
		width: 79.2vw;
		height: 18.133vw;
		background-size: contain;
		position: absolute;
		left: calc(100% - 98.4%);
		top: calc(100% - 99%);
		z-index: -1;
	}

	.frame_tt_koishita h5{
		padding-bottom: 3.62vw;
	}
	
	.frame_tt_koishita h5 img{
		width: min(377px, 50.26vw);
	}

	.btn_post_koishita_plan02{
		text-align: center;
		padding: 21px 0 0px;
		margin: auto;
	}
	
	.btn_post_koishita_plan02 a img{
		width: 74.66vw;
/*		height: 16vw;
		background: url("../img/btn_post_koishita_plan02_sp_off.png") no-repeat center;
		background-size: contain;
*/
		margin: auto;
	}

	.btn_post_koishita_plan02 a img:hover{
		width: 74.66vw;
/*		height: 16vw;
		background: url("../img/btn_post_koishita_plan02_sp_on.png") no-repeat center;
		background-size: contain;
*/
	}

	.goods_plan02.koishita {
		width: 100%;
        padding: 0;
	}
	
	.goods_plan02.koishita img{
		width: min(527px, 70.13vw);
	}

	.icon_num02.ohter_v2{
		position: absolute;
		bottom: -1.2vw;
		right: -2.73vw!important;
		width: min(113px, 15.06vw)!important;
	}
	

}


/*-------------------------------------------------------------
frame_tt_badend
 --------------------------------------------------------------*/
.frame_tt_badend{
	margin: 0 auto 40px;
	width: 909px;
	background: url("../img/frame_tt_left_top_plan02.png") no-repeat top 0 left 0,
    url("../img/frame_tt_right_top_plan02.png") no-repeat top 0 right 0,
    url("../img/frame_tt_left_btm_plan02.png") no-repeat bottom 0 left 0,
    url("../img/frame_tt_right_btm_plan02.png") no-repeat bottom 0 right 0,
    url("../img/bg_cloud_badend_plan02.png") no-repeat top -4px center,
    url("../img/bg_tt_plan02.jpg") repeat-y;
	border: 5px solid var(--beige);
	padding: 53px 0 61px;
	position: relative;
	z-index: 1;
}

.frame_tt_badend h4{
	padding-bottom: 36px;
	position: relative;
}



.frame_tt_badend h4::before{
	display: block;
	margin: auto;
	text-align: center;
	content: "";
	background: url("../img/icon_ttl_badend_plan02.png") no-repeat top 0 center;
	width: 836px;
    height: 144px;
    position: absolute;
    left: calc(100% - 95.8%);
    top: calc(100% - 91%);
	z-index: -1;
}

.frame_tt_badend h5{
	padding-bottom: 28px;
}

.btn_post_badend_plan02{
	text-align: center;
	padding: 27px 0 0px;
	margin: auto;
}

.btn_post_badend_plan02 a{
/*  display: flex;
	width: 800px;
	height: 100px;
	background: url("../img/btn_post_badend_plan02_off.png") no-repeat center;
	background-size: contain;
	margin: auto;
*/
}

.btn_post_badend_plan02 a:hover{
/*  display: flex;
	width: 800px;
	height: 100px;
	background: url("../img/btn_post_badend_plan02_on.png") no-repeat center;
	background-size: contain;
*/
}

.goods_plan02.badend {
    width: 43%;
    padding: 0 0 0 37px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.icon_num01.ohter{
	position: absolute;
	bottom: 0;
	right: -7px;
}

.icon_num02.ohter{
	position: absolute;
	bottom: -1px;
	right: 14px;
}



@media all and (max-width:1120px) {
	
	.frame_tt_badend{
		margin: 0 auto 5.55vw;
		width: 82.4vw;
		background: url("../img/frame_tt_left_top_plan02_sp.png") no-repeat top 0 left 0,
					url("../img/frame_tt_right_top_plan02_sp.png") no-repeat top 0 right 0,
					url("../img/frame_tt_left_btm_plan02_sp.png") no-repeat bottom 0 left 0,
					url("../img/frame_tt_right_btm_plan02_sp.png") no-repeat bottom 0 right 0,
					url("../img/bg_cloud_badend_plan02_sp.png") no-repeat center,
					url("../img/bg_tt_plan02_sp.jpg") ;
		border: 3px solid var(--beige);
		background-size: 11%,11%,11%,11%,100%,auto;
		        padding: 9.2vw 0 8.53vw;
		position: relative;
		z-index: 1;

	}

	.frame_tt_badend h4{
		padding-bottom: 4.86vw;
		position: relative;
	}

	.frame_tt_badend h4 img{
		width: min(595px, 78.9vw);
	}



	.frame_tt_badend h4::before{
		display: block;
		margin: auto;
		text-align: center;
		content: "";
		background: url("../img/icon_ttl_badend_plan02_sp.png") no-repeat top 0 center;
		width: 77.73vw;
		height: 46.13vw;
		background-size: contain;
		position: absolute;
		left: calc(100% - 96.4%);
		top: calc(100% - 109%);
		z-index: -1;
	}

	.frame_tt_badend h5{
		padding-bottom: 3.62vw;
	}
	
	.frame_tt_badend h5 img{
		width: min(377px, 50.26vw);
	}

	.btn_post_badend_plan02{
		text-align: center;
		padding: 21px 0 0px;
		margin: auto;
	}
	
	.btn_post_badend_plan02 a img{
		width: 74.66vw;
/*		height: 16vw;
		background: url("../img/btn_post_badend_plan02_sp_off.png") no-repeat center;
		background-size: contain;
*/
		margin: auto;
	}

	.btn_post_badend_plan02 a img:hover{
		width: 74.66vw;
/*		height: 16vw;
		background: url("../img/btn_post_badend_plan02_sp_on.png") no-repeat center;
		background-size: contain;
*/
	}

	.goods_plan02.badend {
		width: 100%;
        padding: 0;
	}
	
	.goods_plan02.badend img{
		width: min(527px, 70.13vw);
	}
	
}


/*-------------------------------------------------------------
frame_tt_shirobuta
 --------------------------------------------------------------*/
.frame_tt_shirobuta{
	margin: 0 auto 40px;
	width: 909px;
	background: url("../img/frame_tt_left_top_plan02.png") no-repeat top 0 left 0,
    url("../img/frame_tt_right_top_plan02.png") no-repeat top 0 right 0,
    url("../img/frame_tt_left_btm_plan02.png") no-repeat bottom 0 left 0,
    url("../img/frame_tt_right_btm_plan02.png") no-repeat bottom 0 right 0,
    url("../img/bg_cloud_shirobuta_plan02.png") no-repeat top 34px center,
    url("../img/bg_tt_plan02.jpg") repeat-y;
	border: 5px solid var(--beige);
	padding: 59px 0 67px;
	position: relative;
	z-index: 1;
}

.frame_tt_shirobuta h4{
	padding-bottom: 34px;
	position: relative;
}



.frame_tt_shirobuta h4::before{
	display: block;
	margin: auto;
	text-align: center;
	content: "";
	background: url("../img/icon_ttl_shirobuta_plan02.png") no-repeat top 0 center;
	width: 839px;
    height: 155px;
    position: absolute;
    left: calc(100% - 95.7%);
    top: calc(100% - 85%);
	z-index: -1;
}

.frame_tt_shirobuta h5{
	padding-bottom: 29px;
}

.btn_post_shirobuta_plan02{
	text-align: center;
	padding: 21px 0 0px;
	margin: auto;
}

.btn_post_shirobuta_plan02 a{
/*	display: flex;
	width: 800px;
	height: 100px;
	background: url("../img/btn_post_shirobuta_plan02_off.png") no-repeat center;
	background-size: contain;
	margin: auto;
*/
}

.btn_post_shirobuta_plan02 a:hover{
/*	display: flex;
	width: 800px;
	height: 100px;
	background: url("../img/btn_post_shirobuta_plan02_on.png") no-repeat center;
	background-size: contain;
*/
}

.goods_plan02.shirobuta {
    width: 43%;
    padding: 0 0 0 37px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.icon_num01.ohter{
	position: absolute;
	bottom: 0;
	right: -7px;
}

.icon_num02.ohter{
	position: absolute;
bottom: -1px;
right: 14px;
}


@media all and (max-width:1120px) {
	.frame_tt_shirobuta{
		margin: 0 auto 5.55vw;
		width: 82.4vw;
		background: url("../img/frame_tt_left_top_plan02_sp.png") no-repeat top 0 left 0,
					url("../img/frame_tt_right_top_plan02_sp.png") no-repeat top 0 right 0,
					url("../img/frame_tt_left_btm_plan02_sp.png") no-repeat bottom 0 left 0,
					url("../img/frame_tt_right_btm_plan02_sp.png") no-repeat bottom 0 right 0,
					url("../img/bg_cloud_shirobuta_plan02_sp.png") no-repeat center,
					url("../img/bg_tt_plan02_sp.jpg") ;
		border: 3px solid var(--beige);
		background-size: 11%,11%,11%,11%,100%,auto;
		        padding: 8.2vw 0 8.53vw;
		position: relative;
		z-index: 1;

	}

	.frame_tt_shirobuta h4{
		padding-bottom: 5.86vw;
		position: relative;
	}

	.frame_tt_shirobuta h4 img{
		width: min(595px, 78.9vw);
	}



	.frame_tt_shirobuta h4::before{
		display: block;
		margin: auto;
		text-align: center;
		content: "";
		background: url("../img/icon_ttl_shirobuta_plan02_sp.png") no-repeat top 0 center;
		width: 80.93vw;
		height: 35.86vw;
		background-size: contain;
		position: absolute;
		left: calc(100% - 98.4%);
		top: calc(100% - 108%);
		z-index: -1;
	}

	.frame_tt_shirobuta h5{
		padding-bottom: 3.62vw;
	}
	
	.frame_tt_shirobuta h5 img{
		width: min(377px, 50.26vw);
	}

	.btn_post_shirobuta_plan02{
		text-align: center;
		padding: 21px 0 0px;
		margin: auto;
	}
	
	.btn_post_shirobuta_plan02 a img{
		width: 74.66vw;
/*		height: 16vw;
		background: url("../img/btn_post_shirobuta_plan02_sp_off.png") no-repeat center;
		background-size: contain;
*/
		margin: auto;
	}

	.btn_post_shirobuta_plan02 a img:hover{
		width: 74.66vw;
/*		height: 16vw;
		background: url("../img/btn_post_shirobuta_plan02_sp_on.png") no-repeat center;
		background-size: contain;
*/
	}

	.goods_plan02.shirobuta {
		width: 100%;
        padding: 0;
	}
	
	.goods_plan02.shirobuta img{
		width: min(527px, 70.13vw);
	}

}

/*-------------------------------------------------------------
frame_tt_mizu
 --------------------------------------------------------------*/
.frame_tt_mizu{
	margin: 0 auto 40px;
	width: 909px;
	background: url("../img/frame_tt_left_top_plan02.png") no-repeat top 0 left 0,
				url("../img/frame_tt_right_top_plan02.png") no-repeat top 0 right 0,
				url("../img/frame_tt_left_btm_plan02.png") no-repeat bottom 0 left 0,
				url("../img/frame_tt_right_btm_plan02.png") no-repeat bottom 0 right 0,
				url("../img/bg_cloud_mizu_plan02.png") no-repeat top -45px center,
				url("../img/bg_tt_plan02.jpg") repeat-y;
	border: 5px solid var(--beige);
	padding: 67px 0 69px;
	position: relative;
	z-index: 1;
}

.frame_tt_mizu h4{
	padding-bottom: 31px;
	position: relative;
}



.frame_tt_mizu h4::before{
	display: block;
	margin: auto;
	text-align: center;
	content: "";
	background: url("../img/icon_ttl_mizu_plan02.png") no-repeat top 0 center;
	width: 859px;
	height: 140px;
    position: absolute;
	left: calc(100% - 98.2%);
	top: calc(100% - 135%);
	z-index: -1;
}

.frame_tt_mizu h5{
	padding-bottom: 39px;
}

.btn_post_mizu_plan02{
	text-align: center;
	padding: 25px 0 0px;
	margin: auto;
}

.btn_post_mizu_plan02 a{
/*
	display: flex;
	width: 800px;
	height: 100px;
	background: url("../img/btn_post_mizu_plan02_off.png") no-repeat center;
	background-size: contain;
	margin: auto;
*/
}

.btn_post_mizu_plan02 a:hover{
/*
	display: flex;
	width: 800px;
	height: 100px;
	background: url("../img/btn_post_mizu_plan02_on.png") no-repeat center;
	background-size: contain;
*/
}

.goods_plan02.mizu {
    width: 43%;
    padding: 0 0 0 37px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.icon_num01.ohter{
	position: absolute;
	bottom: 0;
	right: -7px;
}

.icon_num02.ohter{
	position: absolute;
bottom: -1px;
right: 14px;
}


@media all and (max-width:1120px) {

	.frame_tt_mizu{
		margin: 0 auto 5.55vw;
		width: 82.4vw;
		background: url("../img/frame_tt_left_top_plan02_sp.png") no-repeat top 0 left 0,
					url("../img/frame_tt_right_top_plan02_sp.png") no-repeat top 0 right 0,
					url("../img/frame_tt_left_btm_plan02_sp.png") no-repeat bottom 0 left 0,
					url("../img/frame_tt_right_btm_plan02_sp.png") no-repeat bottom 0 right 0,
					url("../img/bg_cloud_mizu_plan02_sp.png") no-repeat center,
					url("../img/bg_tt_plan02_sp.jpg") ;
		border: 3px solid var(--beige);
		background-size: 11%,11%,11%,11%,100%,auto;
		        padding: 8.2vw 0 8.53vw;
		position: relative;
		z-index: 1;

	}

	.frame_tt_mizu h4{
		padding-bottom: 5.86vw;
		position: relative;
	}

	.frame_tt_mizu h4 img{
		width: min(556px, 74.13vw);
	}



	.frame_tt_mizu h4::before{
		display: block;
		margin: auto;
		text-align: center;
		content: "";
		background: url("../img/icon_ttl_mizu_plan02_sp.png") no-repeat top 0 center;
		width: 79.33vw;
		height: 20.93vw;
		background-size: contain;
		position: absolute;
		left: calc(100% - 98.4%);
			top: calc(100% - 133%);
		z-index: -1;
	}

	.frame_tt_mizu h5{
		padding-bottom: 3.62vw;
	}
	
	.frame_tt_mizu h5 img{
		width: min(377px, 50.26vw);
	}

	.btn_post_mizu_plan02{
		text-align: center;
		padding: 21px 0 0px;
		margin: auto;
	}
	
	.btn_post_mizu_plan02 a img{
		width: 74.66vw;
/*		height: 16vw;
		background: url("../img/btn_post_mizu_plan02_sp_off.png") no-repeat center;
		background-size: contain;
*/
		margin: auto;
	}

	.btn_post_mizu_plan02 a img:hover{
		width: 74.66vw;
/*		height: 16vw;
		background: url("../img/btn_post_mizu_plan02_sp_on.png") no-repeat center;
		background-size: contain;
*/
	}

	.goods_plan02.mizu {
		width: 100%;
        padding: 0;
	}
	
	.goods_plan02.mizu img{
		width: min(527px, 70.13vw);
	}

}

/*-------------------------------------------------------------
frame_tt_botsuraku
 --------------------------------------------------------------*/
.frame_tt_botsuraku{
	margin: 0 auto 0;
	width: 909px;
	background: url("../img/frame_tt_left_top_plan02.png") no-repeat top 0 left 0,
				url("../img/frame_tt_right_top_plan02.png") no-repeat top 0 right 0,
				url("../img/frame_tt_left_btm_plan02.png") no-repeat bottom 0 left 0,
				url("../img/frame_tt_right_btm_plan02.png") no-repeat bottom 0 right 0,
				url("../img/bg_cloud_botsuraku_plan02.png") no-repeat top 54px center,
				url("../img/bg_tt_plan02.jpg") repeat-y;
	border: 5px solid var(--beige);
	padding: 48px 0 64px;
	position: relative;
	z-index: 1;
}

.frame_tt_botsuraku h4{
	padding-bottom: 34px;
	position: relative;
}



.frame_tt_botsuraku h4::before{
	display: block;
	margin: auto;
	text-align: center;
	content: "";
	background: url("../img/icon_ttl_botsuraku_plan02.png") no-repeat top 0 center;
	width: 803px;
    height: 150px;
    position: absolute;
    left: calc(100% - 93.4%);
    top: calc(100% - 95%);
	z-index: -1;
}

.frame_tt_botsuraku h5{
	padding-bottom: 38px;
}

.btn_post_botsuraku_plan02{
	text-align: center;
	padding: 29px 0 0px;
	margin: auto;
}

.btn_post_botsuraku_plan02 a{
/*
	display: flex;
	width: 820px;
	height: 100px;
	background: url("../img/btn_post_botsuraku_plan02_off.png") no-repeat center;
	background-size: contain;
	margin: auto;
*/
}

.btn_post_botsuraku_plan02 a:hover{
/*
	display: flex;
	width: 820px;
	height: 100px;
	background: url("../img/btn_post_botsuraku_plan02_on.png") no-repeat center;
	background-size: contain;
*/
}

.goods_plan02.botsuraku {
    width: 43%;
    padding: 0 0 0 37px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.icon_num01.ohter{
	position: absolute;
	bottom: 0;
	right: -14px;
}

.icon_num02.ohter{
	position: absolute;
    bottom: -1px;
    right: -4px;
}




@media all and (max-width:1120px) {
	.frame_tt_botsuraku{
		margin: 0 auto 0;
		width: 82.4vw;
		background: url("../img/frame_tt_left_top_plan02_sp.png") no-repeat top 0 left 0,
					url("../img/frame_tt_right_top_plan02_sp.png") no-repeat top 0 right 0,
					url("../img/frame_tt_left_btm_plan02_sp.png") no-repeat bottom 0 left 0,
					url("../img/frame_tt_right_btm_plan02_sp.png") no-repeat bottom 0 right 0,
					url("../img/bg_cloud_botsuraku_plan02_sp.png") no-repeat center,
					url("../img/bg_tt_plan02_sp.jpg") ;
		border: 3px solid var(--beige);
		background-size: 11%,11%,11%,11%,100%,auto;
		        padding: 8.2vw 0 8.53vw;
		position: relative;
		z-index: 1;

	}

	.frame_tt_botsuraku h4{
		padding-bottom: 6.46vw;
		position: relative;
	}

	.frame_tt_botsuraku h4 img{
		width: min(595px, 78.9vw);
	}



	.frame_tt_botsuraku h4::before{
		display: block;
		margin: auto;
		text-align: center;
		content: "";
		background: url("../img/icon_ttl_botsuraku_plan02_sp.png") no-repeat top 0 center;
		width: 79.86vw;
		height: 38.53vw;
		background-size: contain;
		position: absolute;
		left: calc(100% - 98.4%);
		top: calc(100% - 116%);
		z-index: -1;
	}

	.frame_tt_botsuraku h5{
		padding-bottom: 3.62vw;
	}
	
	.frame_tt_botsuraku h5 img{
		width: min(377px, 50.26vw);
	}

	.btn_post_botsuraku_plan02{
		text-align: center;
		padding: 21px 0 0px;
		margin: auto;
	}
	
	.btn_post_botsuraku_plan02 a img{
		width: 74.66vw;
/*		height: 16vw;

		background: url("../img/btn_post_botsuraku_plan02_sp_off.png") no-repeat center;
		background-size: contain;
*/
		margin: auto;
	}

	.btn_post_botsuraku_plan02 a img:hover{
		width: 74.66vw;
/*		height: 16vw;
		background: url("../img/btn_post_botsuraku_plan02_sp_on.png") no-repeat center;
		background-size: contain;
*/
	}

	.goods_plan02.botsuraku {
		width: 100%;
        padding: 0;
	}
	
	.goods_plan02.botsuraku img{
		width: min(527px, 70.13vw);
	}
}
/*------------------------------------------------------------------------------
 footer
 -------------------------------------------------------------------------------*/

.footer {
    margin: 50px auto 100px auto;
    text-align: center;
    color: #e1c376;
    font-size: 14px;
}

.footer .footer__copy {
}

/*------------------------------------------------------------------------------
 スマートフォン用の記述
 -------------------------------------------------------------------------------*/
@media all and (max-width:768px) {
    
    .header {
        background-color: none;
        border: none;
    }
    
    .header__wrap {
        height: 100%;
		max-width: 100%;
		background: url("../img/header_dottedline_sp.png") no-repeat center bottom;
    }
    
    .header_news {
        width: 100%;
        height:100%;
    }
    
    .header__news_wrap img {
        width: 100%;
        height:100%;
        vertical-align: bottom;
        line-height: 1.0em;
    }

    .header__nav {
        display: none;    
    }
    
    .header__navsp {
        display: block;
    }
    
    .header__navsp .menubar{
        background-color: transparent;
        width: 100%;
        height: 66px;
        top: 0;
        left:0;
        position: fixed;
        z-index: 99;
    }

	.header_ttl_sp{
		display: block;
        position: relative;
        float: left;
		padding: 2px 0 0 3.24%;
        z-index: 9;
    }
	.header_ttl_sp img{
		width: 22.2vw;
    }
    
    
    br.sp {
        display:block;
    }

    .pc_logo {
        display: none;
    }
    
    .act_menu{
        background-color: #5d1d0d;
        position: fixed;
        width: 100%;
        transition: all 0.4s ease-out;
        top: -435px;
        left:0;
        z-index: 10;
    }
    .act_menu.active{
        top: 0;
        left:0;
        width:100%;
        background-color:#5d1d0d;
    }
    .act_menu.active ul{
        margin: 60px 0 30px;
    }
    .menubar.active span:first-child{
        top: 10px;
        transform: rotate(405deg);
    }
    .menubar.active span:nth-child(2){
        opacity: 0;
    }
    .menubar.active span:last-child{
        top: 10px;
        transform: rotate(-405deg);
    }
    .act_menu li{
        list-style: none;
    }
    .act_menu li a{
        display: block;
        padding: 13px 0;
        color: #f7c978;
        text-decoration: none;
        text-align: center;	
        font-size: 17px;
    }
    
    #mv {
        padding-top: 0;
        width: 100%;
        height: auto;
    }
    #mv .mv__body {
        width: 100%;
		box-shadow: none;
	}
	
    #mv .badge_comment {
        position: absolute;
        width: min(250 / 768 * 100vw, 250px);
        top: min(1480 / 768 * 100vw, 1480px);
        right: min(0.8 / 768 * 100vw, 0.8px);
    }
    
    #mv .badge_comment img {
        width: 100%;
    }
    
    .concept {
        width: 100%;    
    }
    
    #mv .banner {
        position: relative;
        margin: 10px 0;
        top:0;
        right:0;
    }

    #mv .banner img {
        width: 80%;
    }
	
	/* 以下ボタンスタイル */
	button {
	  background: none;
	  border: none;
	  cursor: pointer;
		padding: 0;
	}

	#openModal {

	}
    
    #detail_area .detail_inner::before {
        background-image: none;
    }

    #outline .outline_innner {
        padding: 1.5rem 1rem;
    }

    #outline .outline_innner div dl dd .map {
        margin-top: 15px;
/*        aspect-ratio: 306 / 180;*/
    }
    
    #outline .outline_innner div dl dd .map iframe {
        position: relative;
        width: 100%;
        height: auto;
        vertical-align: bottom;
        z-index: 1;
    }
    
    #outline .outline_innner .data-list .data-list_item {
        border: none;
        padding-bottom: 0;
        line-height: 140%;
        color: #312823;
    }
    
    #outline .outline_innner .data-list .data-list_item .maplink img {
        width: 2.5rem;
    }
    
    #outline .outline_innner .data-list .data-list_item dd .txt {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    #outline .outline_innner .data-list .data-list_item dd .txt span {
        padding-left: 0;
    }
    
	.container{
		background: none;
	}
	.information__body {
		background-color: var(--white);
		width: 86.5%;
	}
	.information__body__gray {
		box-sizing: border-box;
		width: 86.5%;
		margin: 0 auto;
		margin-top: 10px;
		max-width: 1150px;
	}
	
	h2 {
        margin: 0px 0 2.4vw;
	}
    
	h2 img {
        width: 100%;
	}
	
    .container {
        width: 100%;
		box-shadow: none;
    }
    .concept__body {
        width: 100%;
    }
    .tweet_btn {
        margin:0 auto;
        padding: 10px 0 15px 0;
        display: inline-block;
        text-align: center;
        width: 100%;
    }
	
	.btn_area{
		display: flex;
		justify-content: flex-start;
		margin: 2.4vw 0;
		font-family: 'Noto Sans JP', sans-serif,Arial,'ＭＳ Ｐゴシック','MS P Gothic','メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',sans-serif,Helvetica;
		font-weight: bold;
		flex-direction: column;
	}
	
	.btn_website {
/*		width: 84%;*/
		margin: 2vw auto 1.733vw;
	}
	
	.btn_comic {
		width: 84%;
		margin: 0px auto 1.733vw;
	}
	
	.btn {
		display: block;
		padding: 3.25vw 0px;
		font-size: 2.75vw;
	}
	
	.badge {
		position: absolute;
		right: 8.066vw;
		top: -2.64vw;
		width: 25.1%!important;
	}
	
    .information {
       margin: 0 auto;
    }
    .title_pc {
        display: none;
    }

    .title_sp {
        display: block;
        padding:10px;
        margin: 8px 20px 10px 20px;
        border-top:1px solid #ddd;
        border-bottom:1px solid #ddd;
        background-color:#eee;
        color:#333;
        font-size:14px;
    }
    .title_sp h2 {
        line-height: 150%;    
    }
    .title_sp p {
        margin: 5px 0;
        font-size: 12px;
        font-weight: bold;
        line-height: 150%;
    }
    
    .point_img img {
        width: 100%;
    }
    
    #highlights .read {
        color: #fff;
        font-size: 3.5897435897vw;
        font-weight: bold;
        line-height: 180%;
        letter-spacing: 0.1em;
    }
    
    #highlights .point_block {
        margin: 1.8rem 1rem;
        padding: 1.5rem 1rem;
        border: 2px solid #9e874c;
}

    
    #highlights .point_block h3 {
       font-size: 1.1rem; 
    }

    #highlights .point_block .point_detail {
        display: block;
        text-align: center;
    }
    
    #highlights .point_block .point_detail .point_txt {
        margin-left: 0;
    }
    
    #highlights h2 {
        padding-top: 1.3rem;
    }

    #highlights .highlights_box {
       padding-bottom: 3rem;
        padding-top: 0;
    }

    
    .twitter {
        display: none;    
    }
	
	.twitter_sp {
		display: block;
		box-sizing: border-box;
		margin: 7.2% 0 10.08%;
	}
	.contents_box {
    padding-top: 0;
    display: flex;
    justify-content: flex-start;
    max-width: 900px;
    margin:0 auto;
    flex-wrap: wrap;
}
        
	.contents_box {
        padding-top: 0;
        display: flex;
        justify-content: flex-start;
        max-width: 900px;
        margin:0 auto;
        flex-wrap: wrap;
    }
    
    #news {
        padding: 1.5rem 1.5rem;
    }

    #news .news_list .news_title {
        width: 6rem;
    }
    
    #news .news_list .news_title h2 img {
        width: 4rem;
    }
    
    #news .news_list {
        width: 100%;
    }

    #comment {
        background-image: repeating-linear-gradient(180deg, #fcdccd, #fcdccd 10px, #fde5da 10px, #fde5da 20px);
        padding-bottom: 30px;
    }
    
    #comment .comment_content_header  {
        max-width: 100%;
        width: 100%;
    }
    
    #comment .comment_inner  {
        margin-inline: auto;
        width: calc(100% - 2.5rem);
        padding-bottom:20px;
        background-image: none;
    }
    
    #comment .comment_inner .comment_block {
        max-width: 100%;
        width: 100%;
        padding-bottom: 30px;
    }
    
    #comment .comment_inner .comment_block .comment_ttl h3 img {
        width: 18rem;
    }
    
    
    #comment .comment_inner .comment_block .comment_detail {
        padding: 20px 25px 35px 25px;
    }
    
    #highlights .highlights_inner {
        margin-inline: auto;
        width: calc(100% - 2.5rem);
    }

    #highlights .highlights_box::before {
        background-image: url(../img/bg_check_line_top_sp.png);
        height: 6.1333333333vw;
    }

        #highlights .highlights_box::after {
        background-image: url(../img/bg_check_line_bottom_sp.png);
        height: 6.1333333333vw;
        bottom: -1rem;
    }


    #notice {
        margin-inline: auto;
        width: calc(100% - 2.5rem);
    }

    #notice .notice_innner {
        padding: 1.8rem 1.2rem;
    }
    
    .container_news {
        width: 100%;
    }
    
    #outline {
        margin-inline: auto;
        width: calc(100% - 2.5rem);
    }
    
    #outline .outline_innner .data-list .data-list_item dt {
        padding: 0.05rem 0.4rem;
    }
    
    #outline .outline_innner .data-list .data-list_item .maplink {
        margin-left: 0;
    }
    
    #contact {
        margin-inline: auto;
        width: calc(100% - 2.5rem);
        text-align: center;
    }

    
    .point_img img {
        height: auto;
        max-width: 100%;
        width: 100%;
    }
        
	.banner_list {
		flex-direction: column;
		text-align: center;
		margin-left: 0;
        margin-top: 30px;
        width: 100%;
        gap: 0.1rem;
	}

	.banner_list li {
		margin-right: 0;
        margin-bottom: 8px;
	}

	.banner_list li img {
		max-width: 352px!important;
		width: 100%;
	}
	.banner_shibutsuta img{
		max-width: 352px;
		width: 70vw;
	}
	#copyright{
		margin-top: 36px;
		padding-bottom: 0;
	}
	#copyright img {
		max-width: 345px;
		width: 100%;
	}
	.banner_list li img {
        max-width: 300px;
        width: 85vw;
    }
    
    #contact .contact_innner .note-list {
        text-align: left;
    }
 
    #contact .contact_innner .note-list li {
        line-height: 150%;
        margin-bottom: 0px;
        display: flex;
        gap: .25rem;
    }
    
    #bottom_area .bottom_area_innner::before {
        background-image: url(../img/bg_check_line_top_sp.png);
        height: 6.1333333333vw;
    }
    
    .c-bg_loop_wrap {
        padding-top: 50px;
    }
        
    #share .share_inner{
        margin: auto;
/*        width: min(440px, 53%);*/
        display: flex;
        justify-content: center;
    }

	#share ul{
		display: flex;
		height: min(87px, 6.69vw);
		align-items: center;
		justify-content: center;
	}

	#share ul li{
		width: 15%;
	}

	#share ul li img{
		width: min(50px, 97%);
	}

	#share ul li.icon_x img{
		width: min(42px, 43%);
	}
	

	#share{
		text-align: center;
		padding-top: min(52px, 5.56vw);
		padding-bottom: min(50px, 3.84vw);
		background-size: 1.5%;
	}

	#share h4{
		padding-bottom: min(1px, 4.83vw);

	}

	#share h4 img{
        display: inline-block;
        width: min(80px,50%);
        height: auto;
/*		width: min(481px, 64.13vw);*/

	}

	#share ul{
		display: flex;
		height: min(118px, 9.07vw);
		justify-content: center;
		align-items: center;
        list-style-type: none;
	}

	#share ul li{
		width: 26%;
	}

	#share .share_inner ul li img {
		width: min(58px, 78%);
	}
	
	#share ul li.icon_x img{
	width: min(52px, 52%);
	}
    
    #share .share_btn {
        margin: 0 auto;
        margin-bottom: 20px;
        height: auto;
        width:84%;
    }

    #share .share_btn img {
        height: auto;
        width:100%;
    }

    .sns_area {
        margin-top: 30px;
        margin-inline: auto;
        width: calc(100% - 3.5rem);
        text-align: center;
    }
    
    .sns_box {
        margin-top: 20px;
        padding: 2.5rem 2rem;
        background-color: #c21b1e;    
        border-radius: 15px;
        margin-left: 10px;
    }
    
    .sns_area .ex_box {
        display: block;
    }
    
    .sns_area h3 img {
        display: inline-block;
        width: min(200px,50%);
        height: auto;
    }
    
    .footer-navi {
        width: 100%;
    }

    .footer-navi figure img {
        height: auto;
        width: min(300px,80%);
    }
    
    .footer-navi .navi-list {
        margin-top: 45px;
        position: relative;
        display: grid;
        grid-template-columns:repeat(2, 1fr);
        overflow: hidden;
        list-style-type: none;
        border-bottom: 2px solid #e1c376;
    }
    
    .footer-navi .navi-list .footer-navi-link {
/*        padding: 3rem 2.5rem;*/
    }
    
/*
    .footer-navi .navi-list .footer-navi-link img {
        width: 100%;
    }
*/
    
   .footer-navi .navi-list .navi-item img {
       max-width: 100%;
       width: 100%;
       border-style: none;
       vertical-align: bottom;
    }
    
    .footer-navi .navi-list .navi-item {
        position: relative;
        box-sizing: border-box;
    }
    
    .footer-navi .navi-list .navi-item:nth-last-child(2) {
        border-right: 0;    
    }
    
    .footer-navi .navi-list .navi-item:last-child {
        display: block;
    }
    
    .footer-navi .navi-list .navi-item:last-child img {
        display: block;
        vertical-align: bottom;
        border-right: 0;
    }
    
/*
    .footer-navi .navi-list .navi-item.cs::before {
          background-color: #000000;
          background-size: 100%;
          content: '';
          opacity: .5;
          position: absolute;
          top: 0;
          right: 0;
          bottom: 0;
          left: 0;
    } 
*/
    
    .footer-navi .navi-list .navi-item:nth-child(odd)::before {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1;
        width: 200%;
        height: 2px;
        content: "";
        background-color: #e1c376;
    }
    
    .footer-navi .navi-list .navi-item:nth-child(odd)::after {
        position: absolute;
        top: 0;
        right: 0;
        z-index: 1;
        width: 2px;
        height: 100%;
        content: "";
        background-color: #e1c376;
    }
    
    #g_nav_pc {
        display: none;
    }

    /*========= ナビゲーションのためのCSS ===============*/

    #g-nav{
        display: block;
        /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
        position:fixed;
        z-index: 999;
        /*ナビのスタート位置と形状*/
        bottom:-120%;
        left:0;
        width:100%;
        height: 100vh;/*ナビの高さ*/
        background-image: url(../img/bg_check_red.png),linear-gradient(90deg, rgba(180, 1, 9, 1), rgba(201, 3, 14, 1) 50%, rgba(180, 1, 9, 1));
        background-repeat: repeat;
        /*動き*/
        transition: all 0.6s;
    }

    /*アクティブクラスがついたら位置を0に*/
    #g-nav.panelactive{
        bottom: 0;
    }
    
    #g-nav .g-nav-frame .logo {
        margin-right: 0;
        position: absolute;
        top: -6vw;
        left: 3vw;
        width: 60.7333333333vw;
        z-index: 999;
    }
    
    #g-nav .g-nav-frame .logo a {
        position: relative;
    }
    
    #g-nav .g-nav-frame .logo a img {
        width: 100%;
    }
    
    #g-nav .g-nav-frame {
        position: relative;
        top: 30vw;
        left: 0;
        background-color: #fff;
        margin: 7.4666666667vw auto 13.3333333333vw;
        width: 90.6666666667vw;
        padding: 10.9333333333vw 0 10.3333333333vw;
        border: 0.8vw solid #fed637;
        border-radius: 4vw;
    }
    
    #g-nav .g-nav-frame::before {
        position: absolute;
        top: 2.6vw;
        right: 1vw;
        display: block;
        width: 23vw;
        height: 23vw;
        background: url("../img/nav_deco_sp.png") no-repeat top center;
        background-size: contain; 
        content: "";
    }
    
    #g-nav .g-nav-frame ul li {
        text-align: center;
        margin: 0 6vw;
        border-bottom: 2px dotted #fed637;
    }
    
    #g-nav .g-nav-frame ul li img {
        width: 100%;
        padding: 3px 10px;
    }
    
    #g-nav .g-nav-frame .link-account {
        margin-top: 25px;
        text-align: center;
        font-size: 15px;
    }
    
    #g-nav .g-nav-frame .link-account a:link {
        color: #312823;
        font-weight: bold; 
    }
    
    #g-nav .g-nav-frame .link-account img {
        margin-right: 8px;
        width: 1.5rem;
        vertical-align: middle;
    }
    

    
    /*ナビゲーションの縦スクロール*/
    #g-nav.panelactive #g-nav-list{
        /*ナビの数が増えた場合縦スクロール*/
        position: fixed;
        z-index: 999; 
        width: 100%;
        height: 100vh;/*表示する高さ*/
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }

    /*ナビゲーション*/
    #g-nav ul {
        /*ナビゲーション天地中央揃え*/
/*
        position: absolute;
        z-index: 999;
        top:50%;
        left:50%;
        transform: translate(-50%,-50%);
*/
    }

    /*リストのレイアウト設定*/

    #g-nav li{
        list-style: none;
        text-align: center; 
    }

    #g-nav li a{
        color: #333;
        text-decoration: none;
/*        padding:10px;*/
        display: block;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        font-weight: bold;
    }
    
    .header_inner {
    }

    /*========= ボタンのためのCSS ===============*/
    .openbtn{
        position:fixed;
        z-index: 9999;/*ボタンを最前面に*/
        top:5px;
        right: 0;
        cursor: pointer;
        width: 102px;
        height: 84px;
        background: url("../img/gnav_bg.png") no-repeat top center;
        background-size: contain; 
    }

    /*×に変化*/	
    .openbtn span{
        display: inline-block;
        transition: all .4s;
        position: absolute;
        left: 46px;
        height: 3px;
        border-radius: 2px;
        background-color: #fff;
        width: 38%;
      }

    .openbtn span:nth-of-type(1) {
        top:25px;	
    }

    .openbtn span:nth-of-type(2) {
        top:36px;
    }

    .openbtn span:nth-of-type(3) {
        top:37px;
        height: 40%;
        background: no-repeat center url(../img/nav_trigger_menu.png);
        background-size: contain; 
    }

    .openbtn.active span:nth-of-type(1) {
        transform: translateY(6px) rotate(-45deg);
        width: 30%;
    }

    .openbtn.active span:nth-of-type(2) {
        transform: translateY(-6px) rotate(45deg);
        width: 30%;
    }

    .openbtn.active span:nth-of-type(3){
        background: no-repeat center url(../img/nav_trigger_close.png);
        background-size: contain; 
    }

}


@media all and (max-width:1100px) {
	.sp{
		display: block;
	}
	.pc{
		display: none;
	}
    
    .pc_logo {
		display: none;
    }
	
	
}
