@charset "utf-8";
/*------------------------------------------------------------------
--------------------------------------------------------------------
　　　　　　　　　　　夏休みファミリー専用css
--------------------------------------------------------------------
------------------------------------------------------------------*/
#contents{
	max-width: inherit;
}
#family-activity .main-img {
    margin: 14px auto 0;
    text-align: center;
}
.inner {
	max-width: 1040px;
	padding: 0 14px;
	margin: 0 auto;
}
.section h2 {
	font-size: 2.8rem;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: bold;
}
.no599 {
	display: block;
}
.br-599 {
	display: none;
}
.pagetop {
	z-index: 10;
}
/*------------------------------------------------------------------
リード文
------------------------------------------------------------------*/
.lead_txt {
	font-size: 1.6rem;
    text-align: center;
	background: #ffeb67;
	font-weight: bold;
	padding: 10px;
}
/*------------------------------------------------------------------
観光・体験プランをさっそくチェック
------------------------------------------------------------------*/
.bg05 {
	background: #fffcf2;
}
.family-plan_search {
	padding: 30px 0 50px;
}
.family-plan_search h2 span {
    position: relative;
    display: inline-block;
    padding: 0 37px 0 62px;
}
.family-plan_search h2 span:before {
    position: absolute;
    content: "";
    width: 53px;
    height: 53px;
    background-image: url(/plan/tokushu/family/activity/images/ic001.webp);
    top: 18px;
    left: 0;
	transform: rotate(-25deg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
}
.family-plan_search h2 span:after {
    position: absolute;
    content: "";
    width: 42px;
    height: 42px;
    background-image: url(/plan/tokushu/family/activity/images/ic002.webp);
    top: 18px;
    right: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
}
.family-plan_search .seach-box.tour {
	border: 2px solid #dbdbdb;
    padding: 20px;
	background: #fff;
}
.family-plan_search .form_inner .column {
    width: calc(100% / 3 - 10px);
}
.focus_event .event_title {
	font-size: 1.5rem;
	font-weight: bold;
    margin-bottom: 5px;
	text-align: left;
	color: #333;
}
.focus_event figure img {
	border-radius: 5px;
}
/*------------------------------------------------------------------
注目の夏休みイベントプラン
------------------------------------------------------------------*/
.bg06 {
	background: #ddf4ff;
}
.focus_event {
	position: relative;
}
.focus_event:before {
	position: absolute;
    content: "";
    width: 130px;
    height: 60px;
    background-image: url(/plan/tokushu/family/activity/images/decoration01.webp);
    top: 12px;
    left: 115px;
    transform: rotate(-10deg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
}
.focus_event:after {
	position: absolute;
    content: "";
    width: 130px;
    height: 60px;
    background-image: url(/plan/tokushu/family/activity/images/decoration01.webp);
    top: 12px;
    right: 120px;
    transform: rotate(10deg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
}
.focus_event h2 {
    margin: 35px 0 15px;
	font-size: 2.6rem;
}
.focus_event .theme_box_list {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    justify-content: center;
    -webkit-justify-content: center;
}
.focus_event .theme_box_list .theme_box {
	position: relative;
    background-color: #fff;
    width: 240px;
    border-radius: 10px;
    padding: 10px 10px 10px 10px;
    box-shadow: -1px 4px 6px 0px rgba(0, 0, 0, 0.17);
	margin: 0 5px 20px 5px;
	transition: 0.2s;
}
.focus_event .theme_box_list .theme_box:hover {
	transform: translate(3px, 3px);
	opacity: 0.8;
	box-shadow: none;
}
/*----------アンカーリンク----------*/
.area_ashirai {
	text-align: center;
	font-weight: bold;
	font-size: 2.0rem;
	margin-top: 30px;
}
.area_ashirai span {
	position: relative;
	display: inline-block;
	padding: 0 10px;
}
.area_ashirai span:before, .area_ashirai span:after {
	position: absolute;
    content: "";
    width: 0.2rem;
    height: 25px;
    background: #333;
    top: 4px;
}
.area_ashirai span:before {
	left: 0;
    transform: rotate(-30deg);
}
.area_ashirai span:after {
	right: 0;
    transform: rotate(30deg);
}
.anc_link {
	display: flex;
	display: -webkit-flex;
	-webkit-flex-wrap: wrap;
    justify-content: center;
    -webkit-justify-content: center;
	margin: 10px 0 50px;
}
.anc_link li {
	width: calc((100% - 100px) / 4);
    margin: 0 8px;
}
.anc_link li a {
	position: relative;
	display: block;
	border: 2px solid;
	background: #333;
	text-align: center;
	color: #fff;
    font-weight: bold;
    padding: 8px 10px;
    font-size: 1.6rem;
    border-radius: 5px;
	transition: 0.2s;
}
.anc_link li a.link01 {
	border-color: #ea5099;
    background: #ea5099;
}
.anc_link li a.link02 {
	border-color: #41a3ef;
    background: #41a3ef;
}
.anc_link li a.link03 {
	border-color: #fa8513;
    background: #fa8513;
}
.anc_link li a.link04 {
	border-color: #7abd29;
    background: #7abd29;
}
.anc_link li a:after {
	position: absolute;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
    font-family: 'jttweb' !important;
    content: '\e900';
    color: #fff;
    font-size: 1.3rem;
}
.anc_link li a:hover {
	transform: translateY(5px);
}
/*----------全エリア共通----------*/
.osusume_list .theme_box_list {
	display: flex;
	display: -webkit-flex;
	-webkit-flex-wrap: wrap;
    justify-content: center;
    -webkit-justify-content: center;
}
.osusume_list .theme_box_list .theme_box {
	position: relative;
    background-color: #fff;
    width: 327px;
    border-radius: 10px;
    padding: 10px 10px 10px 10px;
    box-shadow: -1px 4px 6px 0px rgba(0, 0, 0, 0.17);
    margin: 0 5px 20px 5px;
}
.osusume_list h2 {
	font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: bold;
	font-size: 4rem;
	text-align: center;
	position: relative;
	padding-top: 50px;
}
.osusume_list .anytime_plan .theme_box_list .theme_box {
	width: 243px;
}
.bg01, .bg02, .bg03, .bg04 {
	padding: 60px 0 70px;
    z-index: 1;
	position: relative;
}
.area_tag span {
	display: inline-block;
    font-weight: bold;
    margin-bottom: 10px;
    padding: 3px 8px 2px 25px;
    background: #ea5099;
    border-radius: 3px;
    font-size: 1.4rem;
    color: #fff;
    position: relative;
}
.area_tag span:before {
	font-family: 'jttweb' !important;
    content: "\e90a";
    width: 20px;
    height: 20px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 7px;
    font-size: 1.4rem;
    color: #fff;
}
.section .osusume_list h3 {
	font-size: 1.6rem;
    margin-bottom: 5px;
	text-align: left;
}
.osusume_list figure img {
	border-radius: 5px;
}
figcaption {
	text-align: right;
    font-size: 1.1rem;
    margin-top: 2px;
}
.plan_schedule {
	font-size: 1.5rem;
	margin-top: 10px;
	display: flex;
    display: -webkit-flex;
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
    align-items: flex-start;
}
.plan_schedule .schedule_tag {
	padding: 2px 10px;
    display: inline-block;
    background: #485571;
    color: #fff;
	margin-right: 8px;
	flex-shrink: 0;
}
.plan_schedule .schedule_day {
	display: block;
}
.plan_schedule .sup {
	font-size: 1.3rem;
}
.btn_list {
	margin-top: 15px;
}
.btn_list a {
    text-align: center;
    display: block;
    padding: 9px 10px 10px 7px;;
    border-radius: 50px;
    color: #fff;
    border: 3px solid;
    transition: all .2s;
    font-weight: 600;
    position: relative;
    box-shadow: 0 1px 4px #3333336b;
}
.btn_list a:hover {
	scale: 1.05;
}
.btn_list a:after {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    content: '\e902';
    font-family: 'jttweb' !important;
    font-weight: normal;
    font-size: 82%;
}
.btn_list a.single {
	background: linear-gradient(0deg, #ff8110 0 50%, #ff8920 50% 100%);
}
.btn_list a.set {
	background: linear-gradient(0deg, #1c43b8 0 50%, #1e47c5 50% 100%);
}
.btn_list a.app_btn {
	background: linear-gradient(0deg, #ff8110 0 50%, #ff8920 50% 100%);
	font-size: 1.3rem;
}
.btn_list a.app_btn .pc-show1000 {
	display: inline-block;
}
.btn_list .ashirai {
	text-align: center;
    margin: 15px 0 3px;
    font-size: 1.5rem;
	font-weight: bold;
}
.btn_list .ashirai span {
	position: relative;
    display: inline-block;
    padding: 0 10px;
}
.btn_list .ashirai span:before,
.btn_list .ashirai span:after {
	position: absolute;
    content: "";
    width: 0.2rem;
    height: 17px;
    background: #333;
    top: 4px;
}
.btn_list .ashirai span:before {
	left: 0;
    transform: rotate(-30deg);
}
.btn_list .ashirai span:after {
	right: 0;
    transform: rotate(30deg);
}
.speechBubble {
    position: relative;
    display: inline-block;
    margin-bottom: 10px;
    padding: 6px 60px 4px;
    border: 4px solid #f784bb;
    border-radius: 5px;
    background: #ea5099;
    color: #fff;
}
.speechBubble:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 25%;
    border-style: solid;
    border-width: 22px 22px 0 0;
    border-color: #f784bb transparent transparent;
    translate: -50% 100%;
    transform: skew(38deg);
    transform-origin: top;
}
.speechBubble:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 25%;
    border-style: solid;
    border-width: 15.2px 15.2px 0 0;
    border-color: #ea5099 transparent transparent;
    translate: calc(-50% - 0.4px) 100%;
    transform: skew(40deg);
    transform-origin: top;
}
.anytime_plan .title {
	text-align: center;
    font-weight: bold;
    font-size: 1.8rem;
	line-height: 1.2;
	margin: 20px 0 14px;
}
.anytime_plan .title .sup {
	font-size: 1.3rem;
    font-weight: normal;
}
.osusume_list .all_plan {
	text-align: center;
	font-weight: bold;
	font-size: 1.8rem;
	margin-top: 20px;
}
.osusume_list .all_plan span {
	position: relative;
    display: inline-block;
    padding: 0 10px;
}
.osusume_list .all_plan span:before,
.osusume_list .all_plan span:after {
	position: absolute;
    content: "";
    width: 0.2rem;
    height: 23px;
    background: #333;
    top: 3px;
}
.osusume_list .all_plan span:before {
	left: 0;
    transform: rotate(-30deg);
}
.osusume_list .all_plan span:after {
	right: 0;
    transform: rotate(30deg);
}
.osusume_list .all_btn {
	margin: 5px auto 10px;
    width: 500px;
	text-align: center;
    display: block;
    padding: 9px 10px 10px 7px;;
    border-radius: 50px;
    color: #fff;
    border: 3px solid;
    transition: all .2s;
    font-weight: 600;
    position: relative;
    box-shadow: 0 1px 4px #3333336b;
	background: #d13131;
}
.osusume_list .all_btn:after {
	position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    content: '\e902';
    font-family: 'jttweb' !important;
    font-weight: normal;
    font-size: 82%;
}
.osusume_list .all_btn:hover {
	scale: 1.05;
}
.gentei {
	text-align: center;
    font-weight: bold;
    font-size: 2.0rem;
    margin: 10px 0;
    background: #ea5099;
    padding: 5px 0px;
    color: #fff;
}
/*----------首都圏----------*/
.bg01 {
	background-image: url(/plan/tokushu/family/activity/images/bg01.webp);
	position: relative;
}
.bg01:after {
	content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: url(/plan/tokushu/family/activity/images/wave_top01.webp) no-repeat center top;
    background-size: 100%;
    z-index: -1;
}
.osusume_list .bg01 h2 span {
	color: #ea5099;
}
.osusume_list .bg01 h2:before {
	position: absolute;
	content: "";
    width: 60px;
    height: 60px;
    top: -3px;
    left: calc(50% - 48px);
    -webkit-mask-size: 100%;
    -webkit-mask-image: url(/plan/tokushu/family/activity/images/star.webp);
    background: #e52680;
}
.bg01:before {
	content: "";
    width: 130px;
    height: 130px;
    position: absolute;
    top: 58px;
    left: 45px;
    background: url(/plan/tokushu/family/activity/images/bg_img01.webp) no-repeat center top;
    background-size: 100%;
	transform: rotate(-15deg);
	z-index: -1;
}
.bg01 .inner:before {
	content: "";
    width: 130px;
    height: 130px;
    position: absolute;
    bottom: 10px;
    right: 45px;
    background: url(/plan/tokushu/family/activity/images/bg_img02.webp) no-repeat center top;
    background-size: 100%;
	transform: rotate(-15deg);
	z-index: -1;
}

/*----------静岡----------*/
.bg02 {
	background: #e3f3ff;
}
.area_tag.tag02 span {
	background: #41a3ef;
}
.bg02:after {
	content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: url(/plan/tokushu/family/activity/images/wave_top02.webp) no-repeat center top;
    background-size: 100%;
    z-index: -1;
}
.osusume_list .bg02 h2 span {
	color: #41a3ef;
}
.osusume_list .bg02 h2:before {
	position: absolute;
	content: "";
    width: 60px;
    height: 60px;
    top: -3px;
    left: calc(50% - 48px);
    -webkit-mask-size: 100%;
    -webkit-mask-image: url(/plan/tokushu/family/activity/images/star.webp);
    background: #0387ed;
}
.bg02 .gentei {
	background: #41a3ef;
}
.bg02 .speechBubble {
	border: 4px solid #78c4ff;
    background: #41a3ef;
}
.bg02 .speechBubble:before {
	border-color: #78c4ff transparent transparent;
}
.bg02 .speechBubble:after {
	border-color: #41a3ef transparent transparent;
}
.bg02:before {
	content: "";
    width: 110px;
    height: 95px;
    position: absolute;
    top: 42px;
    left: 45px;
    background: url(/plan/tokushu/family/activity/images/bg_img03.webp) no-repeat center top;
    background-size: 100%;
	z-index: -1;
}
.bg02 .inner:before {
	content: "";
    width: 110px;
    height: 110px;
    position: absolute;
    bottom: 30px;
    right: 45px;
    background: url(/plan/tokushu/family/activity/images/bg_img04.webp) no-repeat center top;
    background-size: 100%;
	transform: rotate(-15deg);
	z-index: -1;
}
/*----------中部----------*/
.bg03 {
	background-image: url(/plan/tokushu/family/activity/images/bg03.webp);
}
.area_tag.tag03 span {
	background: #fa8513;
}
.bg03:after {
	content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: url(/plan/tokushu/family/activity/images/wave_top03.webp) no-repeat center top;
    background-size: 100%;
    z-index: -1;
}
.osusume_list .bg03 h2 span {
	color: #fa8513;
}
.osusume_list .bg03 h2:before {
	position: absolute;
	content: "";
    width: 60px;
    height: 60px;
    top: -3px;
    left: calc(50% - 48px);
    -webkit-mask-size: 100%;
    -webkit-mask-image: url(/plan/tokushu/family/activity/images/star.webp);
    background: #ff6c00;
}
.bg03 .gentei {
	background: #fa8513;
}
.bg03 .speechBubble {
	border: 4px solid #fbad62;
    background: #fa8513;
}
.bg03 .speechBubble:before {
	border-color: #fbad62 transparent transparent;
}
.bg03 .speechBubble:after {
	border-color: #fa8513 transparent transparent;
}
.bg03:before {
	content: "";
    width: 130px;
    height: 115px;
    position: absolute;
    top: 31px;
    left: 45px;
    background: url(/plan/tokushu/family/activity/images/bg_img02.webp) no-repeat center top;
    background-size: 100%;
	z-index: -1;
}
.bg03 .inner:before {
	content: "";
    width: 140px;
    height: 110px;
    position: absolute;
    bottom: 40px;
    right: 45px;
    background: url(/plan/tokushu/family/activity/images/bg_img05.webp) no-repeat center top;
    background-size: 100%;
	z-index: -1;
}

/*----------近畿----------*/
.bg04 {
	background: #efffdb;
}
.bg04:after {
	content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: url(/plan/tokushu/family/activity/images/wave_top04.webp) no-repeat center top;
    background-size: 100%;
    z-index: -1;
}

.area_tag.tag04 span {
	background: #7abd29;
}
.osusume_list .bg04 h2 span {
	color: #7abd29;
}
.osusume_list .bg04 h2:before {
	position: absolute;
	content: "";
    width: 60px;
    height: 60px;
    top: -3px;
    left: calc(50% - 48px);
    -webkit-mask-size: 100%;
    -webkit-mask-image: url(/plan/tokushu/family/activity/images/star.webp);
    background: #63b500;
}
.bg04 .gentei {
	background: #7abd29;
}
.bg04 .speechBubble {
	border: 4px solid #abdf6b;
    background: #7abd29;
}
.bg04 .speechBubble:before {
	border-color: #abdf6b transparent transparent;
}
.bg04 .speechBubble:after {
	border-color: #7abd29 transparent transparent;
}
.bg04:before {
	content: "";
    width: 150px;
    height: 150px;
    position: absolute;
    top: 35px;
    left: 32px;
    background: url(/plan/tokushu/family/activity/images/bg_img06.webp) no-repeat center top;
    background-size: 100%;
	transform: rotate(-15deg);
	z-index: -1;
}
.bg04 .inner:before {
	content: "";
    width: 110px;
    height: 110px;
    position: absolute;
    bottom: 40px;
    right: 45px;
    background: url(/plan/tokushu/family/activity/images/bg_img04.webp) no-repeat center top;
    background-size: 100%;
	transform: rotate(-15deg);
	z-index: -1;
}
/*------------------------------------------------------------------
全ての観光プランを検索
------------------------------------------------------------------*/
.bg07 {
	background: #fffcf2;
}
.all_kanko {
    padding-top: 60px;
}
.all_kanko h2 {
    margin-bottom: 14px;
}
.all_kanko h2 span {
    position: relative;
    display: inline-block;
    padding: 0 14px;
    background: linear-gradient(transparent 70%, #ffdd2d 70%);
}
.all_kanko h2 span:before,
.all_kanko h2 span:after {
    position: absolute;
    content: "";
    width: 0.2rem;
    height: 25px;
    background: #402920;
    top: 4px;
}
.all_kanko h2 span:before {
    left: 0;
    transform: rotate(-30deg);
}
.all_kanko h2 span:after {
    right: 0;
    transform: rotate(30deg);
}
.all_kanko .bnr_link {
    width: 65%;
    max-width: 310px;
    margin: 0 auto;
}
.all_kanko .bnr_link a {
    display: block;
    transition: 0.2s ease;
}
.all_kanko .bnr_link a:hover {
    opacity: 0.8;
}
.all_kanko .all_btn {
    text-align: center;
    margin-top: 15px;
}
.all_kanko .all_btn a {
    display: block;
    max-width: 300px;
    margin: 0 auto;
    padding: 9px 10px 10px 0;
    background: linear-gradient(0deg, #124386 0 50%, #174f9b 50% 100%);
    color: #fff;
    font-weight: 600;
    border-radius: 5em;
    border: 3px solid #fff;
    box-shadow: 0 1px 4px #3333336b;
    position: relative;
    transition: all .2s;
}
.all_kanko .all_btn a:hover {
    scale: 1.05;
}
.all_kanko .all_btn a:after {
    content: "";
    position: absolute;
    width: 33px;
    height: 10px;
    background-color: #fff;
    top: 42%;
    right: 17px;
    transition: all .2s;
    clip-path: polygon(0% 100%, 100% 100%, 75% 28%, 75% 80%, 0% 80%);
    transform: translateY(-50%);
}
/*------------------------------------------------------------------
検索窓
------------------------------------------------------------------*/
.h2_ahirai {
	text-align: center;
}
.h2_ahirai span {
	position: relative;
    display: inline-block;
    padding: 0 15px;
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 10px;
	background: linear-gradient(transparent 69%, #ffdd2d 60%);
}
.h2_ahirai span:before,
.h2_ahirai span:after {
    position: absolute;
    content: "";
    width: 0.2rem;
    height: 23px;
    background: #333;
    top: 3px;
}
.h2_ahirai span:before {
	left: 0;
    transform: rotate(-30deg);
}
.h2_ahirai span:after {
	right: 0;
    transform: rotate(30deg);
}
.plan_search.shinkansen {
	padding: 70px 0 50px;
}
.plan_search.shinkansen h2 span {
	position: relative;
    display: inline-block;
    padding: 0 37px 0 62px;
}
.plan_search.shinkansen h2 span:before {
	position: absolute;
    content: "";
    width: 53px;
    height: 53px;
    background-image: url(/plan/tokushu/family/activity/images/ic003.webp);
    top: -8px;
    left: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
}
.plan_search.shinkansen h2 span:after {
	position: absolute;
    content: "";
    width: 42px;
    height: 42px;
    background-image: url(/plan/tokushu/family/activity/images/ic002.webp);
    top: -6px;
    right: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
}
.search-app .gadget_box.tour {
	margin-top: 15px;
}
.plan_search .fukidashi {
	text-align: center;
}
.plan_search .fukidashi span {
	position: relative;
	display: inline-block;
	padding: 0 14px;
	background: linear-gradient(transparent 70%, #ffd8c1 70%);
	font-size: 2.6rem;
	font-weight: bold;
}
.plan_search .fukidashi span:before,
.plan_search .fukidashi span:after {
	position: absolute;
	top: 3px;
	bottom: 2px;
	content: "";
	width: 2px;
	height: auto;
	background: #604c3f;
}
.plan_search .fukidashi span:before {
	left: 0;
	transform: rotateZ(-30deg);
}
.plan_search .fukidashi span:after {
	right: 0;
	transform: rotateZ(30deg);
}
.plan_search .coupon_anc {
	margin-top: 6px;
	font-size: 2rem;
	text-align: center;
}
.search-app {
	margin-top: 12px;
	color: #333;
	box-shadow: 0 0 7px rgba(0, 0, 0, 0.2);
}
.search-app .tab {
	margin-top: 22px;
}
.search-app .tab .tab-btn {
	display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	height: 60px;
	font-size: 1.7rem;
	font-weight: bold;
	line-height: 1.1;
}
.search-app .tab .tab-btn img {
	width: auto;
	height: 32px;
	margin-right: 15px;
}
.search-app .tab .tab-btn p {
	margin-top: 5px;
}
.search_new_plan {
	margin: 20px 0 -11px;
	text-align: left;
}
.search_new_plan p span {
	margin: auto;
	background: #fff;
}
.bubble {
	display: table;
	padding: 5px 15px 2px;
	position: relative;
	border: 1px solid #055187;
	border-radius: 10px;
}
.bubble span {
	background: linear-gradient(transparent 69%, #ffe339 60%)!important;
}
.bubble:before,
.bubble:after {
	content: '';
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	left: calc(50% - 20px);
	border-right: 20px solid transparent;
	border-left: 20px solid transparent;
}
.bubble:before {
	bottom: -11px;
	border-top: 11px solid #055187;
}
.bubble:after {
	bottom: -10px;
	border-top: 11px solid #fff;
}
.bubble .txt-nomal {
	color: #333;
	background: none!important;
	font-weight: normal;
	font-size: 1.3rem;
}
.search-app .gadget_box.dp {
    margin-top: 15px;
}
#family-activity .fw-search-top__item--keyword {
    display: none;
}
/*吹き出し*/
.seach_fukidashi p {
    text-align: center;
}
.seach_fukidashi span {
	font-size: 1.6rem;
	font-weight: bold;
	position: relative;
	border: 2px solid #ff8110;
	border-radius: 5px;
	padding: 8px 50px;
	background: #fdfcf1;
	color: #ff8110;
}
.seach_fukidashi p span:before {
	position: absolute;
	content: '';
	top: -9px;
	left: 15%;
	width: 23px;
	height: 12px;
	box-sizing: border-box;
	background-color: #fdfcf1;
	transform: translateX(-50%);
	z-index: 0;
	clip-path: polygon(0% 100%, 50% 0%, 100% 100%);
}
.seach_fukidashi p span:after {
	content: "";
	position: absolute;
	top: -8px;
	left: 15%;
	width: 15px;
	height: 15px;
	box-sizing: border-box;
	border: 2px solid;
	border-color: #ff8110 #ff8110 transparent transparent;
	transform: translateX(-50%) rotate(-45deg);
}
/*こだわりツアー検索窓*/
#search-app .seach-box.tour {
	width: 100%;
    padding: 27px 30px 25px;
}
#search-app .seach-box.tour .form {
	max-width: 1000px;
	width: 100%;
	background: #f8f8f8;
	border-radius: 10px;
    margin-top: 15px;
}
/*------------------------------------------------------------------
その他バナー
------------------------------------------------------------------*/
.other_plan {
	padding: 40px 0;
}
.other_plan h2 span {
	display: inline-block;
	position: relative;
	padding: 0 37px 0 62px;
}
.other_plan h2 span:before {
    position: absolute;
    content: "";
    width: 53px;
    height: 53px;
    background-image: url(/plan/tokushu/family/activity/images/ic004.webp);
    top: -8px;
    left: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
	transform: rotate(-13deg);
}
.other_plan h2 span:after {
    position: absolute;
    content: "";
    width: 42px;
    height: 42px;
    background-image: url(/plan/tokushu/family/activity/images/ic002.webp);
    top: -6px;
    right: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
}
.other_plan .bnr_list {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
}
.other_plan .bnr_list li {
	width: calc(100% / 3 - 14px);
	margin: 28px 21px 0 0;
}
.other_plan .bnr_list li:nth-of-type(3n) {
	margin-right: 0;
}
.other_plan .bnr_list li a {
	display: block;
	transition: .25s ease;
}
.other_plan .bnr_list li a:hover {
	opacity: 0.7;
}
.other_plan .bnr_list li dd {
	padding-top: 5px;
	font-size: 1.6rem;
}
/*PCのみhover*/
@media screen and (min-width: 1000px) {
.link_list li:hover p {
	height: 100%;
	transition: all .3s;
}
}
/*------------------------------------------------------------------
家族旅行おすすめ記事
------------------------------------------------------------------*/
.osusume_article {
    padding: 10px 10px 24px;
    background: #fff;
    background-image: linear-gradient(0deg, transparent calc(100% - 1px), #f4f4f4 calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #f4f4f4 calc(100% - 1px));
    background-size: 18px 18px;
    background-repeat: repeat;
    background-position: top center;
    margin-bottom: 50px;
}
.osusume_article .article_wrap {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
    margin-top: 16px;
}
.osusume_article .article_wrap li {
    position: relative;
	width: 425px;
    background: #fff;
    box-shadow: 0 1px 5px rgb(157 157 157 / 55%);
    border: 1px solid #a89f87;
}
.osusume_article .article_wrap li + li {
	margin-left: 20px;
}
.osusume_article .article_wrap li a {
	position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    color: #333;
    padding: 14px;
    transition: 0.2s;   
}
.osusume_article .article_wrap li:hover {
	opacity: 0.8;
    box-shadow: none;
}
.osusume_article .article_wrap figure {
	width: 35%;
}
.osusume_article .article_wrap li a > div {
	width: 70%;
    margin-left: 7px;
}
.osusume_article .article_wrap .article_title {
	font-weight: bold;
    font-size: 1.5rem;
}
.section h3 {
	text-align: center;
}
.osusume_article .osusume_title {
	margin-top: 7px;
}
.osusume_article .osusume_title span {
	font-size: 2.2rem;
	position: relative;
	font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: bold;
}
.osusume_article .osusume_title span:after {
	position: absolute;
    content: "";
    width: 22px;
    height: 22px;
    background-image: url(/plan/tokushu/family/manabi/images/ic_pencil.webp);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50% 50%;
    right: -29px;
    top: 5px;
}
.osusume_article .article_title {
	text-align: left;
}
/*------------------------------------------------------------------
追従ボタン
------------------------------------------------------------------*/
.apply_anc a {
    position: relative;
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
    align-items: center;
    -webkit-align-items: center;
    width: 100%;
    aspect-ratio: 1 / 1;
    padding-top: 5px;
    border: 6px double #fff;
    border-radius: 100px;
    color: #ffffff;
    background-color: #0081d0;
    background-repeat: repeat;
    background-size: 40px 40px;
    font-size: min(2.5vw, 1.8rem);
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
    text-shadow: 2px 2px 0 rgb(0 0 0 / 15%);
    filter: drop-shadow(1.5px 1.5px 1.5px rgb(0 30 51 / 45%));
}
.apply_anc {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: 0.3s;
    position: fixed;
    bottom: 120px;
    right: 20px;
    width: 15%;
    max-width: 130px;
}
.apply_anc.show {
    opacity: 1;
    pointer-events: auto;
    visibility: visible;
    z-index: 2;
}
/*------------------------------------------------------------------
--------------------------------------------------------------------
　　　　　　　　　　　夏休みファミリー専用css スマホ用
--------------------------------------------------------------------
------------------------------------------------------------------*/
@media screen and (max-width: 999px) {
#family-activity {
	font-size: 1.5rem;
}
#family-activity .main-img {
	margin: 10px auto 0;
}
.inner {
	padding: 0 14px;
}
.section h2 {
	font-size: 2.4rem;
}
/*----------スライダー----------*/
#family-activity .slick-prev.slick-disabled:before,
#family-activity .slick-next.slick-disabled:before {
    opacity: 0;
}
/*------------------------------------------------------------------
リード文
------------------------------------------------------------------*/
.lead_txt {
	font-size: 1.6rem;
}
/*------------------------------------------------------------------
観光・体験プラン検索窓
------------------------------------------------------------------*/
.family-plan_search .form_inner .column:not(:first-child) {
    margin-top: 0;
}
/*------------------------------------------------------------------
注目の夏休みイベントプラン
------------------------------------------------------------------*/
.focus_event h2 {
	font-size: 2.1rem;
}
.focus_event:before {
	width: 100px;
    height: 40px;
	left: 85px;
}
.focus_event:after {
	width: 100px;
    height: 40px;
	right: 85px;
}
.focus_event .theme_box_list .theme_box {
	width: 342px;
}
.slider1 .slick-list,
.slider2 .slick-list,
.slider3 .slick-list {
	padding: 0 0 15px 10px;
}
/*------------------------------------------------------------------
エリアのおすすめプラン
------------------------------------------------------------------*/
/*----------共通----------*/
.bg01, .bg02, .bg03, .bg04 {
	padding: 40px 0;
}
.osusume_list h2 {
	font-size: 3.5rem;
}
.osusume_list .theme_box_list .theme_box,
.osusume_list .anytime_plan .theme_box_list .theme_box {
	width: 342px;
}
.plan_schedule .schedule_tag {
	padding: 2px 10px;
}
/*----------首都圏----------*/
.bg01:after {
	background: url(/plan/tokushu/family/activity/images/wave_top01_sp.webp) no-repeat center top;
}
.bg01:before {
	width: 100px;
    height: 100px;
	top: 52px;
    left: 10px;
}
.bg01 .inner:before {
	width: 100px;
    height: 100px;
	bottom: -14px;
    right: 10px;
}
.osusume_list .bg01 h2:before {
	width: 55px;
    height: 55px;
    top: 0px;
    left: calc(50% - 45px);
}
/*----------静岡----------*/
.bg02:after {
	background: url(/plan/tokushu/family/activity/images/wave_top02_sp.webp) no-repeat center top;
}
.bg02:before {
	width: 90px;
    height: 85px;
    left: 10px;
}
.bg02 .inner:before {
	width: 80px;
    height: 70px;
	bottom: 5px;
    right: 10px;
}
.osusume_list .bg02 h2:before {
	width: 55px;
    height: 55px;
    top: 0px;
    left: calc(50% - 45px);
}

/*----------中部----------*/
.bg03:after {
	background: url(/plan/tokushu/family/activity/images/wave_top03_sp.webp) no-repeat center top;
}
.bg03:before {
	width: 100px;
    height: 95px;
    top: 42px;
    left: 10px;
}
.bg03 .inner:before {
	width: 110px;
    height: 90px;
	bottom: -5px;
    right: 10px;
}
.osusume_list .bg03 h2:before {
	width: 55px;
    height: 55px;
    top: 0px;
    left: calc(50% - 45px);
}

/*----------近畿----------*/
.bg04:after {
	background: url(/plan/tokushu/family/activity/images/wave_top04_sp.webp) no-repeat center top;
}
.bg04:before {
	width: 110px;
    height: 110px;
    top: 45px;
    left: 0px;
}
.bg04 .inner:before {
	width: 90px;
    height: 90px;
	bottom: -10px;
    right: 10px;
}
.osusume_list .bg04 h2:before {
	width: 55px;
    height: 55px;
    top: 0px;
    left: calc(50% - 45px);
}

/*------------------------------------------------------------------
すべての観光プランを検索
------------------------------------------------------------------*/
.bg05:after {
	background: url(/plan/tokushu/family/activity/images/wave_top05_sp.webp) no-repeat center top;
}
.all_kanko {
    padding-top: 40px;
}
/*------------------------------------------------------------------
検索窓
------------------------------------------------------------------*/
.plan_search {
    padding: 0 0 25px;
}
.plan_search .fukidashi span {
	font-size: 2.4rem;
}
.plan_search .coupon_anc {
	font-size: 1.9rem;
}
.search-app .tab .tab-btn {
	font-size: 1.4rem;
}
.search_new_plan .txt-nomal {
	font-size: 1.0rem;
}
.search-app .seach-box {
	padding: 18px 10px 27px;
}
/*こだわりツアー検索窓*/
#plan_search .seach-box.tour {
	padding: 18px 15px 25px;
}
}
@media screen and (max-width: 700px) {
.search-app .tab .tab-btn {
	-webkit-flex-direction: column;
	flex-direction: column;
	height: 70px;
}
.search-app .tab .tab-btn img {
	width: auto;
	height: 30px;
	margin-right: 0;
}
}
@media screen and (max-width: 680px) {
.apply_anc {
    right: 5px;
    bottom: 70px;
    width: 80px;
}
.apply_anc a {
    width: 80px;
    height: 80px;
    border: 4px double #fff;
    background-size: 25px 25px;
    font-size: 1.35rem;
    text-shadow: 1.2px 1.2px 0 rgb(0 0 0 / 15%);
}
}
@media screen and (max-width: 599px) {
.section h2 {
	font-size: 2.0rem;
}
.no599 {
	display: none;
}
.br-599 {
	display: block;
}
figcaption {
	font-size: 1.0rem;
}
/*------------------------------------------------------------------
リード文
------------------------------------------------------------------*/
.lead_txt {
	font-size: min(3.7vw, 1.6rem);
	text-align: left;
}
/*------------------------------------------------------------------
観光・体験プラン検索窓
------------------------------------------------------------------*/
.section .family-plan_search h2 {
	font-size: 1.8rem;
}
.family-plan_search h2 span {
	padding: 0 30px 0 48px;
}
.family-plan_search h2 span:before {
    width: 44px;
    height: 44px;
}
.family-plan_search h2 span:after {
    width: 42px;
    height: 42px;
    top: 18px;
    right: -10px;
}
.family-plan_search .form_inner .column {
    width: 100%;
}
.family-plan_search .form_inner .column:not(:first-child) {
	margin-top: 10px;
}
/*------------------------------------------------------------------
注目の夏休みイベント
------------------------------------------------------------------*/
.focus_event h2 {
	margin: 25px 0 15px;
}
.focus_event:before {
	width: 80px;
    height: 30px;
	top: 20px;
    left: 20px;
}
.focus_event:after {
	width: 80px;
    height: 30px;
	top: 20px;
    right: 28px;
}
.area_tag span {
	font-size: 1.1rem;
	margin-bottom: 6px;
    padding: 3px 8px 2px 23px;
}
.area_tag span:before {
	top: 55%;
	left: 6px;
    font-size: 1.2rem;
}
.focus_event .event_title {
	font-size: 1.4rem;
}
.slider1 .slick-list,
.slider2 .slick-list,
.slider3 .slick-list {
    padding: 0 0 15px 5px;
}
.focus_event .slick-slider {
	margin: 0 10px 10px 10px;
}
.focus_event .theme_box_list .theme_box {
	width: 155px;
	margin: 0 4px 20px 4px;
	padding: 7px;
}
.focus_event .slick-arrow.slick-prev {
	left: -20px;
}
.focus_event .slick-arrow.slick-next {
	right: -27px;
}
/*----------アンカーリンク----------*/
.anc_link {
	margin: 10px 0 25px;
}
.area_ashirai {
	font-size: 1.6rem;
    margin-top: 20px;
}
.anc_link li {
    width: calc((100% - 24px) / 4);
    margin: 0 3px;
}
.anc_link li a {
	padding: 8px 20px 8px 10px;
    font-size: 1.4rem;
}
.anc_link li a:after {
	right: 4px;
	font-size: 1.1rem;
}
/*------------------------------------------------------------------
エリアのおすすめプラン
------------------------------------------------------------------*/
/*----------共通----------*/
.bg01, .bg02, .bg03, .bg04 {
	padding: 30px 0 40px;
}
.bg01:after, .bg02:after, .bg03:after, .bg04:after, .bg05:after {
	background-size: 100%;
}
.osusume_list h2 {
	font-size: 3.0rem;
	padding-top: 45px;
	line-height: 1.2;
    margin-bottom: 15px;
}
.gentei {
	font-size: 1.7rem;
    margin: 10px 0 5px;
    padding: 3px 0px;
}
.osusume_list .theme_box_list .theme_box {
	width: 305px;
	padding: 7px;
	margin: 0 8px 20px 8px;
}
.section .osusume_list h3 {
	font-size: 1.5rem;
}
.plan_schedule {
	font-size: 1.4rem;
	margin-top: 5px;
}
.plan_schedule .schedule_tag {
	padding: 2px 7px 1px;
}
.btn_list {
    margin-top: 10px;
}
.anytime_plan .title {
	font-size: 1.5rem;
	line-height: 1.1;
}
.speechBubble {
	width: 90%;
	padding: 5px 20px 3px;
}
.anytime_plan .title .sup {
	font-size: 1.2rem;
}
.osusume_list .anytime_plan .theme_box_list .theme_box {
	width: 155px;
	margin: 0 5px 20px 5px;
}
.anytime_plan .slick-slider {
	margin: 0 10px 30px 10px;
}
.btn_list a.app_btn {
	font-size: 1.2rem;
	padding: 7px 10px 8px 7px;
}
.btn_list a:after {
	right: 5px;
}
.osusume_list .all_plan {
	font-size: 1.5rem;
}
.osusume_list .all_btn {
	width: 100%;
}
.btn_list a.app_btn .pc-show1000 {
	display: none;
}
/*----------首都圏----------*/
.osusume_list .bg01 h3:before {
	left: calc(50% - 21px);
	width: 45px;
    height: 45px;
}
.bg01:before {
    width: 70px;
    height: 70px;
    top: 57px;
}
.bg01 .inner:before {
    width: 70px;
    height: 70px;
    bottom: -3px;
}
.osusume_list .bg01 h2:before {
    width: 53px;
    height: 53px;
    top: -4px;
    left: calc(50% - 27px);
}
/*----------静岡----------*/
.osusume_list .bg02 h3:before {
	left: calc(50% - 21px);
	width: 45px;
    height: 45px;
}
.bg02:before {
    width: 70px;
    height: 65px;
    top: 44px;
}
.bg02 .inner:before {
    width: 60px;
    height: 50px;
    bottom: 3px;
}
.osusume_list .bg02 h2:before {
    width: 53px;
    height: 53px;
    top: -4px;
    left: calc(50% - 27px);
}

/*----------中部----------*/
.osusume_list .bg03 h3:before {
	left: calc(50% - 21px);
	width: 45px;
    height: 45px;
}
.bg03:before {
    width: 80px;
    height: 75px;
    top: 43px;
}
.bg03 .inner:before {
    width: 90px;
    height: 90px;
    bottom: -22px;
}
.osusume_list .bg03 h2:before {
    width: 53px;
    height: 53px;
    top: -4px;
    left: calc(50% - 27px);
}

/*----------近畿----------*/
.osusume_list .bg04 h3:before {
	left: calc(50% - 21px);
	width: 45px;
    height: 45px;
}
.bg04:before {
    width: 90px;
    height: 90px;
    top: 33px;
}
.bg04 .inner:before {
    width: 70px;
    height: 70px;
    bottom: -6px;
}
.osusume_list .bg04 h2:before {
    width: 53px;
    height: 53px;
    top: -4px;
    left: calc(50% - 27px);
}

/*------------------------------------------------------------------
新幹線パックを検索
------------------------------------------------------------------*/
.plan_search.shinkansen {
    padding: 50px 0 30px;
}
.h2_ahirai span {
	padding: 0px 12px;
    font-size: 1.6rem;
}
.plan_search.shinkansen h2 span {
	padding: 0 30px 0 48px;
}
.plan_search.shinkansen h2 span:before {
	width: 44px;
    height: 44px;
    top: -8px;
}
.plan_search.shinkansen h2 span:after {
	width: 42px;
    height: 42px;
    top: -8px;
    right: -5px;
}
.plan_search {
    padding-bottom: 20px;
}
.plan_search .fukidashi span {
	font-size: min(4.5vw, 1.9rem);
}
.plan_search .coupon_anc {
	font-size: min(3.8vw, 1.6rem);
}
.search-app .tab .tab-btn p {
	font-size: 1.1rem;
}
.seach_fukidashi p span {
    font-size: 1.3rem;
    display: block;
    padding: 5px;
}
/*------------------------------------------------------------------
その他バナー
------------------------------------------------------------------*/
.other_plan h2 span {
	padding: 0 30px 0 48px;
}
.other_plan h2 span:before {
	width: 44px;
    height: 44px;
    top: -8px;
}
.other_plan h2 span:after {
	width: 42px;
    height: 42px;
    top: -8px;
    right: -10px;
}
.other_plan .bnr_list li {
	width: calc(100% / 2 - 5px);
	margin: 18px 10px 0 0;
}
.other_plan .bnr_list li:nth-of-type(3n) {
	margin-right: 10px;
}
.other_plan .bnr_list li:nth-of-type(2n) {
	margin-right: 0;
}
.other_plan .bnr_list li dd {
	font-size: 1.4rem;
}
/*------------------------------------------------------------------
おすすめ記事
------------------------------------------------------------------*/
.osusume_article .osusume_title span {
	font-size: 1.9rem;
}
.osusume_article .article_wrap {
    display: block;
}
.osusume_article .article_wrap li {
    width: 100%;
}
.osusume_article .article_wrap .article_title {
    font-size: 1.4rem;
}
.osusume_article .article_wrap li + li {
    margin-left: 0;
    margin-top: 12px;
}
}
@media screen and (max-width: 360px) {
.section h2 {
    font-size: 1.7rem;
}
.section .family-plan_search h2 {
	font-size: 1.6rem;
}
.focus_event:before {
	width: 70px;
	left: 15px;
}
.focus_event:after {
	width: 70px;
	right: 25px;
}
.anc_link li a {
    padding: 8px 10px 8px 4px;
    font-size: 1.3rem;
}
.anc_link li a:after {
    right: 2px;
    font-size: 0.9rem;
}
.anytime_plan .title {
	font-size: 1.4rem;
}
.osusume_list .all_btn {
	font-size: 1.4rem;
}
.osusume_list .all_btn:after {
	right: 5px;
}
.h2_ahirai span {
	font-size: 1.5rem;
}
}
@media screen and (max-width: 320px) {
#family-activity .slick-slider {
	margin: 0 10px 30px 10px;
}
.osusume_list .theme_box_list .theme_box {
	width: 265px;
}
.osusume_list .anytime_plan .theme_box_list .theme_box {
	width: 175px;
}
}




