@charset "utf-8";

/* ============================================================
common
============================================================ */
/* 追従メニュー */
main div.menu_top ul.anchor {align-items: center;}
main div.menu_top ul.anchor li a {
	padding: 4px 2px;
	border-left: none;
}
main div.menu_top ul.anchor li {position: relative;}
main div.menu_top ul.anchor li::before{
    content: "";
    display: block;
    height: 1.25em;
    border-left: 2px solid var(--blue);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}
main div.menu_top ul.anchor li:first-child::before {content: none;}
main div.menu_top ul.anchor a {font-size: 13px;}
body#kokunaiTOP main div.menu_top ul.anchor a {font-size: 16px;}
main div.menu_top ul.anchor a br {display: inline;}
.disnone {display: none!important;}

/* sp */
@media screen and (max-width: 759.9px) {
	/* 追従メニューSP */
	main div.menu_top ul.anchor {flex-wrap: wrap;}
    body#kokunaiTOP main div.menu_top ul.anchor a {font-size: 11px;}
	main div.menu_top ul.anchor li {
		width: calc(100% / 3);
     	max-width: calc(100% / 3); 
		padding: 4px 0;
	}
	main div.menu_top ul.anchor li:nth-child(4n)::before {content: none;}
	main div.menu_top ul.anchor li span.menu_s {font-size: 9px;}
}

/* ============================================================
Spacific
============================================================ */
/* div.menu_top */
main div.menu_follow {
	position: sticky;
	left: 0;
	top: 0;
	z-index: 10;
}

/* PC
-------------------------------------------------------------*/
@media screen and (min-width: 760px),print {
/* div.mv_header */
main div.mv_header.kaigai {background: #EDF6FB url("../images/bg_mv_kaigai_pc.jpg") no-repeat center top;}
body#kokunaiTOP main div.menu_top ul.anchor a br {display: none !important;}
} /* end @media */

/* ============================================================
発地
============================================================ */
/* メニュー */
.naviDept {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	margin: 80px 0 120px;
}
.naviDept li {
	text-align: center;
	border-radius: 5px;
	border: 2px solid #111184;
	background: #fff;
}
.naviDept li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 20px 30px;
	color: var(--blue);
	font-weight: 700;
}
.naviDept li.select a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 20px 30px;
	color: #fff;
	background: var(--blue);
}

/* コンテンツ */
main div.ItemBoxItem {
	position: relative;
	margin: 0 0 30px;
}
main div.ItemBoxItem li.slick-slide > div,
main ul.rank li.slick-slide > div {
	position: relative;
	width: 90%;
	margin: 0 auto 10px;
	border-radius: 5px;
	box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.25);
	overflow: hidden;
}
main div.ItemBoxItem a.slick-arrow,
main ul.rank a.slick-arrow {
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 1;
	width: 20px;
	height: 30px;
	margin: auto;
	background-size: cover;
}
main div.ItemBoxItem a.slick-prev,
main ul.rank a.slick-prev {
	left: -20px;
	background-image: url(/student/images/arrow_prev.svg);
}
main div.ItemBoxItem a.slick-next,
main ul.rank a.slick-next {
	right: -20px;
	background-image: url(/student/images/arrow_next.svg);
}
main ul.rank div.img {margin-bottom: 30px;}
main ul.rank div.img img {
	width: 100%;
	height: auto;
}
main ul.rank div.img span.copy {
	display: block;
	text-align: right;
	margin: 8px 8px 0 0;
	font-size: 11px;
	color: #B3B3B3;
}
main ul.rank div.txt {margin-bottom: 20px;}
main ul.rank div.txt dt {
	margin-bottom: 20px;
	text-align: center;
}
main ul.rank div.txt dt span.jp {
	display: inline-block;
	font-size: 22px;
	font-weight: 900;
}
main ul.rank div.txt dt span.en {
	display: inline-block;
	font-family: Lusitana;
	font-size: 16px;
	font-weight: 400;
	margin-left: 0.8em;
}
main ul.rank div.txt dd {
	padding: 0 15px;
	line-height: 1.5;
	font-size: 14px;
	font-weight: 500;
}
main ul.rank div.arearank_txt,
main ul.rank div.arearank_txt2,
main ul.rank div.price p {padding: 20px 15px 30px;}
main ul.rank div.arearank_txt2 {font-size: 12px;}
main ul.rank div.arearank_txt p.arearank_ttl,
main ul.rank div.arearank_txt2 p.arearank_ttl {
	display: inline-block;
	font-size: 18px;
	margin-bottom: 20px;
	position: relative;
	left: 50%;
	top: 0;
	transform: translate(-50%, 0);
	text-align: center;
}
main ul.rank div.arearank_txt p.arearank_ttl::after,
main ul.rank div.arearank_txt2 p.arearank_ttl::after {
	content: '';
	position: absolute;
	bottom: -0.1em;
	left: -3%;
	z-index: -1;
	width: 106%;
	height: 0.3em;
	background: #d6d6fc;
}
main ul.rank div.arearank_txt2 p.arearank_ttl span {
	display: inline-block;
	color: #D92225;
	font-size: 12px;
	margin-bottom: 8px;
}
main ul.rank div.arearank_txt ul.hotelrank {margin-bottom: 40px;}
main ul.rank div.arearank_txt ul.hotelrank li {
	margin-bottom: 16px;
	position: relative;
	padding-left: 24px;
}
main ul.rank div.arearank_txt ul.hotelrank li:first-child:before {
	content: "1";
	position: absolute;
	left: 0;
	color: #fff;
	background: #DAAF08;
	text-align: center;
	width: 20px;
	height: 20px;
	border-radius: 50%;
}
main ul.rank div.arearank_txt ul.hotelrank li:nth-child(2):before {
	content: "2";
	position: absolute;
	left: 0;
	color: #fff;
	background: #8F8F8F;
	text-align: center;
	width: 20px;
	height: 20px;
	border-radius: 50%;
}
main ul.rank div.arearank_txt ul.hotelrank li:nth-child(3):before {
	content: "3";
	position: absolute;
	left: 0;
	color: #fff;
	background: #A57E65;
	text-align: center;
	width: 20px;
	height: 20px;
	border-radius: 50%;
}
main ul.rank div.arearank_txt2 ul.price_txt {margin-bottom: 20px;}
main ul.rank div.arearank_txt2 ul.price_txt li {
	line-height: 1.5;
	margin-bottom: 10px;
}
main ul.rank div.arearank_txt2 ul.syutoken li {
	position: relative;
	padding-left: 16px;
}
main ul.rank div.arearank_txt2 ul.syutoken li:before {
	content: "■";
	position: absolute;
	left: 0;
	top: 4px;
}
main ul.rank div.price p {
	text-align: right;
	font-size: 12px;
}
main ul.rank div.price p span {
	color: #D92225;
	font-weight: 900;
	font-size: 21px;
	line-height: 1.25;
}
main ul.rank div.btn {padding: 0 15px 30px;}
main ul.rank div.btn ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 16px;
	margin-bottom: 20px;
}
main ul.rank div.btn li {width: 100%;}
main ul.rank div.btn li.btn_w {width: 100%;}
main ul.rank div.btn li a {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 10px 0;
	border-radius: 5px;
	border: 2px solid #111184;
	background: #fff;
	color: var(--blue);
	font-weight: 700;
}
main ul.rank div.btn li:nth-child(1) a {
	background: var(--blue);
	color: #fff;
	font-size: 16px;
}
main ul.rank div.btn li:nth-child(2) a,
main ul.rank div.btn li:nth-child(3) a {font-size: 16px;}
main ul.rank div.btn p a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 14px 0;
	border-radius: 22px;
	background: var(--blue);
	color: #fff;
	font-weight: 700;
	font-size: 14px;
	letter-spacing: -0.1em;
}
main ul.rank div.btn p a::after{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 14px;
	margin: auto;
	width: 0.5em;
	height: 0.5em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
}

/*sp*/
@media screen and (max-width: 759.9px) {
	/* メニュー */
	.naviDept {flex-wrap: wrap;}
	
	.naviDept li {width: calc((100% - 24px) / 3);}
	
	.naviDept li a,
	.naviDept li.select a {padding: 20px;}
		
	/* コンテンツ */
	main ul.rank {margin: 0 -4vw 30px;}
	main div.ItemBoxItem li.slick-slide > div,
	main ul.rank li.slick-slide > div {width: 94%;}
	
	main div.ItemBoxItem a.slick-prev,
	main ul.rank a.slick-prev {
		left: 15px;
		background-image: url(/student/images/arrow_prev.svg);
	}
	main div.ItemBoxItem a.slick-next,
	main ul.rank a.slick-next {
		right: 15px;
		background-image: url(/student/images/arrow_next.svg);
	}
	main ul.rank div.img {
		margin-bottom: 20px;
	}
	main ul.rank div.txt {
		margin-bottom: 16px;
	}
	main ul.rank div.txt dt {
		margin-bottom: 10px;
	}
	main ul.rank div.txt dt span.jp {
		font-size: 18px;
	}
	main ul.rank div.txt dt span.en {
		font-size: 12px;
	}
	main ul.rank div.txt dd {
		font-size: 12px;
	}
	main ul.rank div.btn ul {
		gap: 4vw;
	}
	main ul.rank div.btn li:nth-child(2),
	main ul.rank div.btn li:nth-child(3) {
		width: calc(50% - 2vw);
	}
	main ul.rank div.btn li:nth-child(1) a {
		font-size: 13px;
	}
	main ul.rank div.btn li:nth-child(2) a,
	main ul.rank div.btn li:nth-child(3) a {
		font-size: 10px;
	}
	main ul.rank div.btn li.btn_w {
		width: 100%;
	}
	main ul.rank div.btn li.btn_w a {
		font-size: 13px;
	}
}

/* ============================================================
海外
============================================================ */
.tabKaigai .tab_wrap .tab_content {width: 100%;}
ul.rank.fBtour dl dd.txt,
ul.rank.fDtour dl dd.txt {
	padding: 0 16px;
	margin-bottom: 8px;
}
ul.rank.fBtour dl dd p {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;
	padding: 0 16px;
}
ul.rank.fBtour dl dd span.rIcon,
ul.rank.fDtour dl dd.txt p span.rIcon {
	display: block;
	text-align: center;
	padding: 16px 0 10px;
	border-top: 1px solid #ECECEC;
}
ul.rank.fBtour dl dd.txt {
	font-weight: 500;
	font-size: 14px;
}
ul.rank.fBtour dl dd.txt dl dt {
	font-weight: 600;
	font-size: 16px;
	margin-bottom: 0;
}
ul.rank.fBtour dl dd.txt dl dd {
	color: #ED4245;
	text-align: center;
	font-size: 18px;
	font-weight: 600;
	padding: 8px 0;
}
ul.rank.fDtour dl dd.txt dl dd {padding: 0;}
ul.rank.fDtour dl dd.txt dl dd p {
	font-weight: 500;
	line-height: 1.5;
}
ul.rank.fDtour li dl dt.num {width: 100px;}
ul.rank.fBtour li dl dd.txt dl dt,
ul.rank.fDtour li dl dd.txt dl dt {text-align: left;}
ul.rank.fDtour li dl dd.txt dl dt {
	font-size: 18px;
	line-height: 1.4;
}
ul.rank.fDtour li dl dd.txt dl dt span {
	font-size: 14px;
	font-weight: 500;
}
ul.rank.fDtour li dl dd.txt dl dt img {
	display: inline-block;
	width: 14px;
	height: 14px;
	margin-right: 5px;
}
ul.rank.fBtour li dl dd a {
    display: block;
    height: 100%;
    width: 100%
}
.fplan_txt {
	font-weight: 500;
	margin-bottom: 40px;
}
.fplan_txt h4 {
	text-align: center;
	line-height: 1.5;
	margin-bottom: 20px;
}
.fplan_txt h4 span {
	font-size: 13px;
	font-weight: 500;
}
.fplan_txt h4 span.uLine {
	position: relative;
    z-index: 1;
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 16px;
}
.fplan_txt h4 span.uLine::after {
    content: '';
    position: absolute;
    bottom: 0.1em;
    left: -3%;
    z-index: -1;
    width: 106%;
    height: 0.3em;
    background: #D6D6FC;
}
.fplan_txt ul {
	width: 60%;
	padding: 10px;
	border: 1px solid #ECECEC;
	margin: 0 auto;
	margin-bottom: 6px;
}
.fplan_txt ul li {line-height: 1.3;}
.fplan_txt p {
	text-align: center;
	font-size: 13px;
	line-height: 1.3;
}
.fplan_txt ul li.fplan_l {
	text-align: center;
	margin: 8px 0;
}
ul.gradtrip.kaigai {flex-wrap: wrap;}
ul.gradtrip.kaigai li:last-child {
	width: 100%;
	text-align: center;
}
div.tripa_btn {
	background: #111184;
    border-radius: 22px;
	margin: 30px auto 0;
	text-align: center;
}
div.tripa_btn a {
	display: block;
	color: #fff;
	padding: 10px 0;
	width: 100%;
}

@media screen and (min-width: 760px) {
ul.rank.fDtour {
	width: 970px;
	max-width: 96%;
	margin: 0 auto;
}
div.tripa_btn {width: 420px;}
}

@media screen and (max-width: 759.9px){
.fplan_txt ul {width: 100%;}
.tabKaigai .tab_wrap .tab_label{font-size: 18px;}
main ul.rank.fBtour a.slick-next,
main ul.rank.fDtour a.slick-next{right: 15px;}
main ul.rank.fBtour a.slick-prev,
main ul.rank.fDtour a.slick-prev{left: 15px;}
main ul.rank.fDtour dd.txt {margin-bottom: 0;}
main ul.rank.fDtour dd.txt dd {font-size: 14px;}
}

/*add 20250925*/
/*海外DP*/
:root {
    --theme-main-color: #BB6253;
    --theme-main-dark: #781A23;
    --theme-main-pale: #EADADB;
    --theme-main-pale20: #D97C7C;
    --vivid-color: #C22A39;
    --yellow-pale: #F5D3A3;
    --yellow-color: #EEB767;
    --yellow-dark: #C28F3A;
    --green-pale: #93C47D;
    --green-color: #6AA84F;
    --green-dark: #3B6E47;
    --main-border-color: #ddd;
    --sub-border-color: #ccc;
    --main-text-color: #333;
    --sub-text-color: #666;
    --map-bg-color: #F2ECD6;
    --gray-bg-color: #eee;
    --white-color: #fff;
    --black-color: #000;
    --price-color: #C22A39;
    --gray-00-color: #F5F5F5;
    --gray-10-color: #EADADB;
    --gray-60-color: #999;
    --dp-bg-01: var(--theme-main-color);
    --dp-bg-02: #FFC7A7;
    --dp-bg-03: #FFD091;
    --dp-bg-transparent-70: #F5D3A370;
    --dp-bg-transparent-80: #e9be6280;
    --bg-transparent-95: #ffffff95;
    --bg-transparent-90: #ffffff90;
    --bg-transparent-80: #ffffff80;
    --bg-transparent-b5: #ffffffb5;
    --bg-transparent-e4: #ffffffe4;
}
/*.ItemBoxItem {
    max-width: fit-content !important;
}
@media screen and (min-width: 760px), print {
    .ItemBoxItem {
	max-width: 1200px;
	margin: 0 auto;
	padding-left: 0;
    }
}
.ItemBoxItem {
    border-radius: 0.5rem;
    position: relative;
    padding-left: 0.25rem;
}
.scrollbox .ItemBoxItem {
    width: fit-content !important;
    display: flex !important;
    margin: 0 0 15px !important;
}
.ItemBoxItem {
    display: flex;
    justify-content: space-between;
}*/
.ItemBoxItem .ItemSetWrap {
  position: relative;
  background-color: var(--white-color);
  border: 1px solid var(--main-border-color);
  border-radius: 0.5rem;
  overflow: hidden;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
	font-family: "Noto Sans JP", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
}
.ItemBoxItem .ItemSetWrap *{
line-height: 1.5;
}
.ItemBoxItem .ItemSetWrap {
	/*width: calc((100% - 40px) / 4) !important;*/
	margin: 0 5px !important;
}
.ItemBoxItem .ItemSetWrap:hover {
  opacity: 1!important;
  transition: all 0.3s ease-in-out;
  box-shadow: 0px 2px 16px rgba(0, 0, 0, 0.25);
}
.ItemBoxItem .ItemSetWrap a {
  color: var(--main-text-color);
}
.ItemBoxItem .ItemSetWrap a:hover {
  opacity: 1!important;
  transition: all 0.3s ease-in-out;
}
.ItemBoxItem .ItemSetWrap a .ItemTitleWrap {
  position: relative;
  background-color: var(--gray-bg-color);
  overflow: visible;
  z-index: 2;
  min-height: 88px;
}
.ItemBoxItem .ItemSetWrap a .ItemTitle {
  font-size: 1rem;
  font-weight: 700;
  padding: 0.75rem 1rem;
  background-color: var(--gray-bg-color);
  border-radius: 0.5rem 0.5rem 0 0;
}
.ItemBoxItem .ItemSetWrap.is-tentsuki a .ItemTitle {
  font-size: 1rem;
  line-height: 1.3;
  font-weight: 700;
  padding: 0.75rem 1rem 0.25rem;
  background-color: var(--gray-bg-color);
  border-radius: 0.5rem 0.5rem 0 0;
	min-height: 3.4rem;
}
.ItemBoxItem .ItemSetWrap a .ItemTitleSubLine {
  font-size: 0.875rem;
  font-weight: normal;
  padding: 0.25rem 1rem 0.5rem;
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.ItemBoxItem .ItemSetWrap a .ItemTitleSubLine .ItemTitleSubLineIcon {
  background-color: var(--green-pale);
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  border-radius: 250%;
  padding: 0.125rem;
}
.ItemBoxItem .ItemSetWrap a .ItemTitleSubLine .ItemTitleSubLineIcon.tentsuki-from-japan {
  background-color: #BB6253;
}
.ItemBoxItem .ItemSetWrap a .ItemTitleSubLine .ItemTitleSubLineIcon svg {
  width: 14px;
  height: 14px;
  color: var(--white-color);
}
.ItemBoxItem .ItemSetWrap a .ItemSubTitle {
  display: inline-block;
  background-color: var(--theme-main-dark);
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
  color: var(--white-color);
  font-size: 0.875rem;
  position: absolute;
  top: 2.2rem;
  right: 1rem;
  font-weight: 700;
}
.ItemBoxItem .ItemSetWrap.is-tentsuki a .ItemSubTitle {
  display: inline-block;
  background-color: var(--theme-main-dark);
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
  color: var(--white-color);
  font-size: 0.875rem;
  position: absolute;
  top: auto;
    bottom:-0.5rem;
    right: 1rem;
  font-weight: 700;
}
.ItemBoxItem .ItemSetWrap a .ItemSet {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding: 0 0.75rem;
  border-bottom: 1px solid var(--main-border-color);
}
.ItemBoxItem .ItemSetWrap a .ItemSet:last-child {
  border-bottom: none;
}
.ItemBoxItem .ItemSetWrap.is-tentsuki a .ItemSet{
  padding: 0;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemSetInner {
  display: flex;
  width: 100%;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemSetInner .ItemSetIcon {
  width: 48px;
  padding: 0.75rem 0;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemSetInner .ItemSetIcon svg {
  width: 32px;
  height: 32px;
  background-color: var(--green-pale);
  padding: 0.375rem;
  border-radius: 250%;
  color: var(--white-color);
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemSetInner .ItemSetBody {
  width: 100%;
  padding: 0.5rem;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.125rem;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemSetInner .ItemSetBody .ItemSetCardName {
  font-size: 1rem;
  font-weight: bold;
  display: block;
  width: 100%;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemSetInner .ItemSetBody .ItemSetCardSubTitlte {
  font-size: 0.75rem;
  line-height: 1.2;
  display: flex;
  align-items: center;
  width: 100%;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemSetInner .ItemSetBody .ItemSetCardRating {
  font-size: 0.875rem;
  display: flex;
  align-items: center;
  width: 100%;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemSetInner .ItemSetBody .ItemSetCardRating .starIcon {
  background-image: url("https://www.nta.co.jp/kaigai/assets/svg/star.svg");
  background-size: cover;
  display: inline-block;
  width: 1em;
  height: 1em;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemSetInner .ItemSetBody .ItemSetCardRating .starIcon--active {
  background-image: url("https://www.nta.co.jp/kaigai/assets/svg/star-active.svg");
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemSetInner .ItemSetBody .ItemSetCardRating .starIcon--half {
  background-image: url("https://www.nta.co.jp/kaigai/assets/images/star_half.png");
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemCard {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  padding: 0;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemCard .ItemCardImage {
  width: 100%;
  max-height: 196px;
  overflow: hidden;
  border-radius: 0.25rem;
  margin-bottom: 0.25rem;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemCard .ItemCardImage_noslick {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  /*max-height: 196px;*/
  margin-bottom: 0.5rem;
  overflow: hidden;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemCard .ItemCardImage div.slick-slide{
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--gray-bg-color);
  text-align: center;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemCard .ItemCardImage_noslick div {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--gray-bg-color);
  width: 100%;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemCard .ItemCardImage img {
  display: block;
  max-height: 198px;
  border-radius: 0.25rem;
  width: auto;
  height: 100%;
  margin: 0 auto;
}
.ItemBoxItem .ItemSetWrap.is-tentsuki a .ItemSet .ItemCard .ItemCardImage img {
	width:100%;
	height:auto;
	max-height:unset!important;
	min-height:unset!important;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemCard .ItemCardImage_noslick img {
  display: block;
  /*max-height: 198px;*/
  border-radius: 0.25rem;
	width: 100%;
    height: auto;
	margin: 0;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemCard .ItemCardText {
  text-align: center;
  margin-bottom: 0.5rem;
}
.ItemBoxItem .ItemSetWrap.is-tentsuki a .ItemSet .ItemCard .ItemCardText {
  padding: 0.5rem;
  margin:8px;
  background-color: #FBF4E4;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemCard .ItemCardText .ItemCardTitle {
  font-size: 1rem;
  font-weight: bold;
  padding: 0.25rem;
}
.ItemBoxItem .ItemSetWrap a .ItemSet .ItemCard .ItemCardText .ItemCardSubText {
  font-size: 0.875rem;
  text-align: left;
  min-height: 4rem;
  font-weight:normal;
}
.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetTerm .ItemTermText {
  width: 100%;
  padding: 0.25rem 0.5rem;
  font-size: 0.75rem;
  font-weight: 400;
  text-align: center;
  color: var(--main-text-color);
}
.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetPrice {
  padding: 0.5rem;
}
/*.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetPrice .PricePop {
  width: 100%;
  margin: 0.25rem auto 0.125rem;
  padding: 0.125rem 0.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--gray-bg-color);
  gap: 0.25rem;
  border-radius: 0.25rem;
}
.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetPrice .PricePop .PricePopIcon {
  padding: 0.125rem;
  background-color: var(--white-color);
  border-radius: 5rem;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetPrice .PricePop .PricePopIcon svg {
  width: 16px;
  height: 16px;
  fill: var(--theme-main-pale);
  color: var(--theme-main-color);
}
.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetPrice .PricePop .PricePopText {
  font-size: 0.875rem;
  font-weight: 700;
  overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetPrice .PricePop .PricePopNumber {
  font-size: 0.75rem;
  width: 3.6rem;
  margin-left: auto;
  text-align: left;
}*/
.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetPrice .ItemPrice {
  width: 100%;
  padding: 0.25rem 0.25rem 0;
  font-size: 1.25rem;
  font-weight: bold;
  text-align: center;
  color: var(--price-color);
  letter-spacing: -0.005rem;
}
.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetPrice .ItemPrice .ItemPriceCurrency {
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetPrice .ItemPriceSubText {
  width: 100%;
  font-size: 0.75rem;
  font-weight: 400;
  text-align: center;
  color: var(--main-text-color);
}
.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetPrice .ItemPriceText {
  width: 100%;
  padding: 0 0.5rem 0;
  font-size: 0.75rem;
  font-weight: 400;
  text-align: center;
  color: var(--main-text-color);
}
/*.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetUpgrade  {
  width: 100%;
  display: flex;

  align-items: center;
  justify-content: center;
}
.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetUpgrade .ItemUpgradeText {
  padding: 0.25rem 0.5rem;
  font-size: 0.75rem;
  font-weight: 800;
  text-align: center;
  color: var(--main-text-color);
}
.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetUpgrade .ItemUpgradeIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem 0.5rem;
}
.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetUpgrade .ItemUpgradeIcon li.is-disabled {
  position: relative;
  opacity: 0.5;
}
.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetUpgrade .ItemUpgradeIcon li.is-disabled::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  width: 100%;
  height: 4px;
  background-color: #333;
  transform: rotate(45deg);
}
.ItemBoxItem .ItemSetWrap a .ItemSet.ItemSetUpgrade .ItemUpgradeIcon li svg {
  width: 24px;
  height: 24px;
}*/
/*.ItemBoxItem .ItemSetWrap a .ItemBook {
  position: absolute;
  bottom: -0.5rem;
  right: -0.5rem;
  background-color: var(--vivid-color);
  color: var(--white-color);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  width: 3rem;
  height: 3rem;
  padding: 0.5rem 0 0.75rem;
  border-radius: 5rem;
  text-align: center;
  display: none;
}
.ItemBoxItem .ItemSetWrap a .ItemBook .ItemBookLabel {
  width: 100%;
  font-size: 0.625rem;
  line-height: 1;
}
.ItemBoxItem .ItemSetWrap a .ItemBook .ItemBookIcon {
  width: 100%;
}
.ItemBoxItem .ItemSetWrap a .ItemBook .ItemBookIcon svg {
  width: 1.5rem;
  height: 1.5rem;
}*/

@media screen and (max-width: 759.9px) {
/*tab*/
#switching_tab_menu {display: flex;}
#switching_tab_menu li {
	width: 48%;
	position: relative;
	margin: 0 1%;
	padding: 5px 0 10px;
	border: 2px solid #111184;
	background: #fff;
	transition: .5s;
	font-size: 18px;
	color: #111184;
	text-align: center;
}
#switching_tab_menu li.select,
#switching_tab_menu li:hover {
    background: #111184;
    color: #fff;
}
#switching_tab_menu li.select::after {
    top: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(136, 183, 213, 0);
    border-top-color: #111184;
    border-width: 14px;
    margin-left: -14px;
}

/*PRbanner*/
.banner640 {
	width: 96%;
    margin: 2%;
}
.banner640 a img {
    width: 320px;
	height: 60px;
	display: block;
    margin: auto;
}
.banner640 p {
    text-align: center;
	font-size: 14px;
	color: #222;
	margin: 1% 0;
}
/*kaigai4*/
main h3#kaigai4 {
	margin: 40px 0 30px;
	text-align: center;
}
main h3#kaigai4 span {
	font-size: 18px;
}
/*お役立ち*/
main ul.oyakutachi li {
	width: 98%;
	margin:1%;
}
main ul.oyakutachi li dl {position:relative;}
main ul.oyakutachi li dt.img img {
	width: 100%;
    height: auto;
	border-radius: 10px;
}
main ul.oyakutachi li dd.txt {
	width: 100%;
    position: absolute;
    top: 25%;
    left: 0;
    background: rgba(255, 255, 255, 0.75);
    text-align: center;
    padding: 25px 0;
    color: #222;
    line-height: 1.8;
	font-size: 16px;
	font-weight: normal;
}
main ul.oyakutachi li dd.txt strong {
	font-weight: bold;
    text-decoration: underline;
}
/*btn*/
p.btn {margin: 30px 0;}
p.btn a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	/*width: 45%;*/
	margin: auto;
	padding: 1em 2em;
	line-height: 1.2;
	border-radius: 100px;
	border: 1px solid #FFF;
	background: var(--blue);
	font-size: 14px;
	color: #fff;
}
p.btn a::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 14px;
	margin: auto;
	width: 0.7em;
	height: 0.7em;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	transform: rotate(45deg);
}

}

@media screen and (min-width: 760px),print {
/*tab*/
#switching_tab_menu {display: flex;}
#switching_tab_menu li {
    position: relative;
    margin-right: 15px;
    padding: 7px 0;
    -webkit-flex: 1;
    -moz-flex: 1;
    -ms-flex: 1;
    -o-flex: 1;
    flex: 1;
    -webkit-order: -1;
    -moz-order: -1;
    -ms-order: -1;
    -o-order: -1;
    order: -1;
    border: 2px solid #111184;
    background: #fff;
    transition: .5s;
    cursor: pointer;
    font-size: 20px;
    color: #111184;
    text-align: center;
    line-height: 1.2;
}
#switching_tab_menu li.select,
#switching_tab_menu li:hover {
    background: #111184;
    color: #fff;
}
#switching_tab_menu li.select::after {
    top: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(136, 183, 213, 0);
    border-top-color: #111184;
    border-width: 14px;
    margin-left: -14px;
}
main ul.rank dd.btn {
	height: auto; 
}

/*PRbanner*/
.banner640 {
	width: 100%;
    margin-bottom: 2%;
    clear: both;
}
.banner640 a img {
    width: 640px;
	height: auto;
    display: block;
    margin: 0 auto;
}
.banner640 p {
    text-align: center;
	font-size: 14px;
	color: #222;
	margin: 1% 0;
}
/*kaigai4*/
main h3#kaigai4 {
	margin: 60px 0 40px;
	text-align: center;
}
main h3#kaigai4 span {
	position: relative;
	z-index: 1;
	font-size: 22px;
	font-weight: 700;
}
main h3#kaigai4 span::after {
	content: '';
	position: absolute;
	bottom: 0.1em;
	left: -3%;
	z-index: -1;
	width: 106%;
	height: 0.4em;
	background: #fffb95;
}
/*お役立ち*/
main ul.oyakutachi {
	width: 680px;
	margin: auto;
	display:flex;
}
main ul.oyakutachi li {
	width: 48%;
	margin:1%;
}
main ul.oyakutachi li dl {position:relative;}
main ul.oyakutachi li dt.img img {
	width: 100%;
    height: auto;
	border-radius: 10px;
}
main ul.oyakutachi li dd.txt {
	width: 100%;
    position: absolute;
    top: 22%;
    left: 0;
    background: rgba(255, 255, 255, 0.75);
    text-align: center;
    padding: 25px 0;
    color: #222;
    line-height: 1.8;
	font-size: 20px;
	font-weight: normal;
}
main ul.oyakutachi li dd.txt strong {
	font-weight: bold;
    text-decoration: underline;
}
/*btn*/
p.btn {margin: 30px 0;}
p.btn a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 45%;
	margin: auto;
	padding: 1em 2em;
	line-height: 1.2;
	border-radius: 100px;
	border: 1px solid #FFF;
	background: var(--blue);
	font-size: 14px;
	color: #fff;
}
p.btn a::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 14px;
	margin: auto;
	width: 0.7em;
	height: 0.7em;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	transform: rotate(45deg);
}
}

@media screen and (min-width: 760px),print {

    main div.mv_header div.inner {
        position: relative;
        height: auto;
    }
	main div.mv_header.kaigai {
		background-size: cover;
	}

} /* end @media */