@charset "utf-8";

/*  MV
============================================================================= */
@media screen and (min-width: 769px) {
	.mv { height: 800px}
}

/*  見出し
============================================================================= */
.page-ttl.-line:after,
.page-ttltxt span:after{
	background: #ea8076;
}


/*  ルックJTBで行く/海外航空券・海外ホテル
============================================================================= */
.lookjtb{
	background: repeating-linear-gradient(-45deg, rgba(255, 241, 240, 30%), rgba(255, 241, 240, 30%) 2px, rgba(255, 241, 240, 100%) 2px, rgba(255, 241, 240, 100%) 4px);
}
.arrange{
	background: repeating-linear-gradient(-45deg, rgba(243, 251, 255, 30%), rgba(243, 251, 255, 30%) 2px, rgba(243, 251, 255, 100%) 2px, rgba(243, 251, 255, 100%) 4px);
}

/*  JTB特典/画像なしへレイアウト変更/注意文言追加
============================================================================= */
.page-subttltxt2{
text-align:center;
font-weight:bold;
color:#CC0D21;}


/*  マイバス追加　20250404
============================================================================= */
.mybus_box_all {
    display: flex;
    flex-wrap: wrap;
    margin: 50px 0 0 -20px;
    text-align: left;
}
.mybus_box {
    border: 1px solid #ccc;
    padding: 10px;
    margin: 20px 0 0 20px;
    width: calc(100% / 2 - 20px);
    box-shadow: 0 0 0.2em rgb(0 0 0 / 20%);
    background: #fff;
}

.mybus-cas {
    display: flex;
    flex-wrap: nowrap;
}
.mybus-cas_txt {
    padding: 5px;
    width: calc(100% / 2);
}

.oppage-subttlbox {
    margin-top: 30px;
    margin-bottom: 30px;
}

.mybus_box figcaption{text-align: left;}


/*キーワード*/
.c-keyword__list { display: flex; flex-wrap: wrap; margin-top: 1em; }
.c-keyword__list .c-word { align-items: center; background-color: #fff; border: 1px solid; border-radius: 100vh; display: inline-flex; height: 3.125em; justify-content: center; margin: .5em .25em; padding: 0 2em; color: #003B82;}
.c-keyword__list .c-word span { font-weight: bold; }
.c-keyword__list .c-word span::before { content: "＃" !important; padding-right: .25em; }
.c-word:hover { background-color: #003B82 !important; color:#fff !important; }



@media screen and (min-width: 1000px) {
    #op .fbt_txt {
        font-size: 1.6rem;
    }

.mybus-cas_txt img {
    max-width: 100% !important;
    height: 210px;
    object-fit: cover;
}

#op .fbt {margin-top: 45px;}
}

@media screen and (max-width: 999px) {

.mybus_box_all {
    margin: 10px 0 0 -20px;
}

.mybus_box {width:calc(100% - 20px); border:unset;}
.c-keyword__list .c-word {
    height: 2.5em;
    margin: .25em;
    padding: 0 1em;
}

.mybus-cas_txt_s{/*font-size:70%;*/}
#op .fbt a{font-size:70%; min-height:0; padding:2px 5px;}
#op .fbt{margin:5px auto 0;}

/*.c-keyword__list .c-word span {font-size: 80%;}*/
.c-keyword__list .c-word span {font-size: 16px;}
.mybus_box figcaption{text-align: center; font-size: 70%;}

.mybus_box .fbt_txt {font-size: 16px;}

}



/*  OP
============================================================================= */
.oppage-subttlbox{
	display: flex;
	flex-direction: column;
	flex-direction: column-reverse;
	margin-left: auto;
	width: auto;
	margin-top:20px;

}

.op-subttl{font-size: 3.0rem;
font-weight: bold;
text-align:center;
margin-bottom:-20px;
}


.oppage-subttl{
	text-align: center;
	font-size: 2.0rem;
	font-weight: bold;
}
.oppage-subttltxt{
	margin-bottom: 5px;
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
}
.oppage-subttltxt:before, .oppage-subttltxt:after{
	content: "－";
}
.oppage-subttltxt:before{
	margin-right: 5px;
}
.oppage-subttltxt:after{
	margin-left: 5px;
}

@media screen and (max-width: 759px){
.oppage-subttlbox{
	display: flex;
	flex-direction: column;
	flex-direction: column-reverse;
	margin-left: auto;
	width: auto;
	margin-top:20px;
}
.op-subttl{font-size: 2.0rem;
font-weight: bold;
text-align:center;
margin-bottom:-10px;
}
.oppage-subttltxt{
		font-size: 1.4rem;
		letter-spacing: .1em;
	
}


/* =============================================================================
    注目情報 
============================================================================= */
.spot-sect{
padding: 20px 0;
background:repeating-linear-gradient(-45deg, rgba(255, 241, 240, 30%), rgba(255, 241, 240, 30%) 2px, rgba(255, 241, 240, 100%) 2px, rgba(255, 241, 240, 100%) 4px);
}
.spot-sect .page-title-h2{
/* display: inline-block;*/
text-align: center;
position: center;
padding: 0 20px 8px;
font-size: 1.8rem;
font-weight: bold;
}
.page-title-h2__wrap{
padding: 20px 15px;
background: #fff;
}

.page-title-h2__wrap {
margin: 0 auto;
padding: 20px 30px 10px;
max-width: 1000px;
}


.news__list--new{
background: #fff;
}

.news__list > dt {
border-top: 1px dashed #d9d9d9;
}
.news__list > dt a{
position: relative;
display: flex;
justify-content: space-between;
align-items: center;
padding: 10px 0 7px 45px;
color: #323743;
text-decoration: none;
}

.news__list > dt p{
padding: 0 0 7px 50px;
color: #323743;
font-size:12px
}


@media screen and (max-width: 759px){
.news__list > dt a{
font-size: 1.4rem;
}
}

.news__list > dt a::after {
display: flex;
justify-content: center;
align-items: center;
font-family:'Material Icons Round';
content: "\e5cc";
color: #3498DB;
font-size: 2.5rem;
line-height: 1;
}
.news__list > dt.news__list--new a::before {
position: absolute;
left: 0;
top: 12px;
display: inline-block;
padding: 0 .4em;
font-size: 1.2rem;
content: "NEW";
border-radius: 3px;
color: #fff;
text-align: center;
background-color: #3498DB;
}
	
.news_none {
  display: none
}

@media screen and (min-width: 760px) {
.spot-sect{
padding: 20px 0;
background: repeating-linear-gradient(-45deg, rgba(255, 241, 240, 30%), rgba(255, 241, 240, 30%) 2px, rgba(255, 241, 240, 100%) 2px, rgba(255, 241, 240, 100%) 4px);
}
.news{
margin: 15px auto 0;
}
.news__list > dt {
border-top: none;
border-bottom: 1px dashed #d9d9d9;
}
.news__list > dt:first-of-type {
border-top: 1px dashed #d9d9d9;
}
.news__list > dt a{
padding: 10px 10px 7px 75px;
}

.news__list > dt p{
position: relative;
display: flex;
justify-content: space-between;
align-items: center;
padding: 0 0 7px 75px;
color: #323743;
text-decoration: none;
font-size:12px
}



}
