@charset "utf-8";


/* フェード設? */

.fadein {
	opacity: 0;
	transform: translateY(50px);
	transition:all 2s;
}

.fadein.active {
	opacity: 1;
	transform: translateY(0px);
}


.pc { display: block !important; }
.sp { display: none !important; }


.freeArea-direct {
	box-sizing: border-box;
	margin: 0px;
	padding: 0px;
	overflow: hidden;
}

tr, th, td, div, span, a {
	color: inherit;
	font-size: inherit;
	text-decoration: inherit;
}

a:link, a:visited {
	text-decoration: inherit;
}

/* 画面100%表示用↓ここか? */
.mainContentMT {
	width: 100%;
}

/*　パンくずの表示くずれ防止　*/
.rootMT ul {
    overflow: hidden;
    width: 940px;
    margin: 0 auto;
}
/* 画面100%表示用↓ここまで */

/*all*/
#president_vip_2022 {
	max-width: 100%;
	text-align: center;
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	font-weight: 500;
	font-style: normal;
	font-feature-settings: "palt";
	position: relative;
	overflow: hidden;
	color: #1a1a1a;
	letter-spacing: 0.05em;
	overflow: hidden;
	background-color: #f1f1f1;
}


.back_white {
	margin: 0 auto;
	background-color: #f1f1f1;
}

.head {
	position: relative;
	background-color: #1a1a1a;
	padding: 4vw 0 0;
}

.head::after {
  content:"";
	display: block;
  width: 0;
  height: 0;
  border-style: solid;
   /*ここで三角形のサイズを決める?
  ?ず?100vwにして、ブラウザサイズ?っぱ?にしてください?*/
  border-width: 4vw 0 0 100vw ;
   border-color: transparent  transparent  transparent #fff;
}

.kiran_box {
	width: 940px;
	margin: 0 auto;
	position: relative;
	display: block;
	height: 1px;
}

.kiran {
	position: absolute;
	width: 280px;
	height: 280px;
	display: block;
	top: -350px;
	right: 5px;
	border-radius: 50%;
	overflow: hidden;
	opacity: 1;
	z-index: 1;
}

.kiran::before {
	background-color: #fff;
  content: "";
  display: block;
  position: absolute;
  top: -100px;
  left: 0;
  width: 30px;
  height: 100%;
  opacity: 0;
  transition: cubic-bezier(0.32, 0, 0.67, 0);
	animation: kiran 6s linear infinite;
	border-radius: 50%;
}

@keyframes kiran {
  95% {
    transform: scale(2) rotate(45deg);
    opacity: 0;
  }
  96% {
    transform: scale(20) rotate(45deg);
    opacity: 0.6;
  }
  97% {
    transform: scale(30) rotate(45deg);
    opacity: 0.4;
  }
  98% {
    transform: scale(45) rotate(45deg);
    opacity: 0.2;
  }
  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

img.main_title {
	margin: 0 auto;
	width: 940px;
	display: block;
}

img.main_img {
	margin: 0 auto;
	width: 840px;
	display: block;
}

.introduction {
	position: relative;
	background-color: #fff;
}

.introduction::after {
	display: block;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0vw 0vw 4vw 100vw;
	border-color: transparent transparent transparent #f1f1f1;
	transform: rotate(180deg);
}

.introduction p {
	font-size: 25px;
	text-align: center;
	font-weight: 500;
	font-style: normal;
	padding: 2rem 0;
	line-height: 2;
}

.magazine_contents {
	display: block;
	justify-content: center;
	flex-wrap: wrap;
	padding: 4em 0 0;
}

.president_img,.dancyu_img {
	width: 940px;
	margin: 0 auto;
}

.president_contents, .dancyu_contents {
	margin: 0 4em;
}

.president_btn a, .dancyu_btn a {
	display: inline-block;
	overflow: hidden;
	position: relative;
	margin: 0 auto 80px;
	background-color: #1a1a1a;
	font-size: 20px;
	color: #fff;
	z-index: 2;
	padding: 1em 5em;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.president_btn a::before, .dancyu_btn a::before{
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
 	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}


.president_btn a:hover::before, .dancyu_btn a:hover::before  {
	top: 0;
	left: 0;
	background-color: #a10000;
}

.president_btn a::after, .dancyu_btn a::after {
	font-family: "Font Awesome 5 Free";
	content: '\f0da';
	font-weight: 900;
	position: absolute;
	right: 1em;
	top: 50%;
	transform: translateY(-50%);
}


.caution {
	font-size: 14px;
	width: 700px;
	margin: 3em auto;
	line-height: 2;
	text-align: justify;
	font-weight: 400;
}

.caution p span{
	color: #a10000;
	font-weight: 600;
}

.bikou {
	font-size: 14px;
}


/* IE */
@media all and (-ms-high-contrast: none){
  .caution::before { bottom:290px; }
}


/*ここからスマ??*/
@media screen and (max-width: 767px) {

	.sp { display: block !important; }
	.pc { display: none !important; }

	#fftop_recomDetail section {
		padding: 0px;
}

h1,h2,h3,h4 {
	 background: none;
}

tr, th, td, div, span, a, p, h4,h1, h2,h3,li {
	color: inherit;

}

article p, article li {
	color: inherit;
	line-height: inherit;
}

article h1 {
background: none;
}

.head {
	padding: 10vw 0 0;
}

.head::after {
	border-width: 8vw 0 0 100vw;
}

img.main_title,.president_img,.dancyu_img {
	width: 90vw;
}

img.main_img {
	width: 95vw;
}

img.main_img {
	margin: 1em auto;
}

.kiran_box {
	width: 100vw;
}

.kiran {
	width: 39vw;
	height: 39vw;
	top: -71.5vw;
	right: 5.7vw;
	overflow: hidden;
	border-radius: 50%;
}

.introduction::after {
	border-width: 0 0 8vw 100vw;
}

.introduction p {
		font-size: 4.5vw;
	}

	.magazine_contents {
		padding: 1em 0 0;
	}

	.president_contents, .dancyu_contents {
		margin: 0;
	}

	.president_btn a, .dancyu_btn a {
		font-size: 5vw;
		margin: 0 auto 40px;
	}

	.president_btn a:active::before, .dancyu_btn a:active::before  {
		top: 0;
		left: 0;
		background-color: #a10000;
	}

	.bikou {
		font-size: 3.5vw;
	}

	.caution {
		width: 90vw;
		font-size: 3.5vw;
	}

}
