/*
 Theme Name:   RFP Child
 Theme URI:    http://rfp.com/
 Description:  RFP Child Theme
 Author:       ProVision
 Author URI:   http://ProVision.com
 Template:     hello-elementor
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  rfp-theme
*/
@font-face {
	font-family: 'Noto Sans CJKjp';
	src: url("/fonts/NotoSansCJKjp-VF.otf") format("otf"),
		 url("/fonts/NotoSansCJKjp-VF.ttf") format("ttf");
	font-weight: normal;
	font-style: normal;
}

html, body {
	overflow-x: hidden;
	width: 100%;
}
.memberPage_br-sm br{
	display: none;
}

//Custom plugin timeline widget
.timelinePlugin{
	height:100%;
}
.timelinePlugin > .elementor-widget-container {
	height: inherit;
}
.timelinePlugin .twae-end, 
.timelinePlugin .twae-start,
.timelinePlugin .twae-vertical-right .twae-arrow{
	display: none!important;
}
.timelinePlugin .twae-vertical-right .twae-content {
	margin-left: -40px;
	display: block !important;
}
.timelinePlugin .twae-icondot {
	width: calc(var(--tw-ibx-size)/ 4)!important;
	height: calc(var(--tw-ibx-size)/ 4)!important;
	left: calc(var(--tw-ibx-size) * .88 - var(--tw-ibx-size) * 2)!important;
}
.timelinePlugin .twae-timeline {
	padding: 60px 0!important;
	margin-left: -20%!important;
	height: inherit;
}
.timelinePlugin .twae-wrapper {
	--tw-line-width: 2px!important;
	--tw-line-bg: rgba(255, 255, 255, 0.3)!important;
	--tw-cbx-shadow:none!important;
	--tw-cbx-shadow-left: none!important;
	--tw-cbx-shadow-hover:none!important;
	height:inherit;
}
.elementor-element.timelinePlugin .twae-title, 
.timelinePlugin .twae-popup .twae-title {
	display: inline-block !important;
	width: fit-content;
	margin-right: 5%;
}
.timelinePlugin .twae-wrapper .twae-description {
	color: var(--tw-cbx-des-color);
	display: inline-block;
	width: fit-content;
}
.timelinePlugin .twae-wrapper, .timelinePlugin .twae-wrapper *, 
.timelinePlugin .twae-wrapper :after, .timelinePlugin .twae-wrapper :before, 
.timelinePlugin .twae-wrapper:after, .timelinePlugin .twae-wrapper:before {
	font-weight: 700;
}
.timelinePlugin .twae-description ol, .timelinePlugin .twae-description ul, 
.timelinePlugin .twae-description p, .timelinePlugin .twae-description span {
	font-weight: 400;
	margin-bottom: 5px!important;
}
//End custom plugin timeline widget

.show-sp {
	display: block;
	transition: 0.25s;
}

.hidden-sp {
	display: none;
	transition: 0.25s;
}

.white-button .elementor-button-wrapper::after {
	content: '';
    width: 450px;
    height: 100%;
    border-radius: 1000px;
    border: 30px solid #FFF;
    position: absolute;
    z-index: -1;
    top: -14px;
    left: -39px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-animation: ring 3s infinite;
    animation: ring 3s infinite;
    pointer-events: none;
}


.button-entry .elementor-button-wrapper::after {
	content: '';
	width: 430px;
	height: 69%;
	border-radius: 1000px;
	border: 30px solid #FFF;
	position: absolute;
	z-index: -1;
	top: 39px;
	left: -37px;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-animation: ring 3s infinite;
	animation: ring 3s infinite;
	pointer-events: none;
}

.border-chart svg {
	border-radius: 15px 15px;
}

.display-flex-chart div {
	text-align: center!important;
}
.margin-12 {
	margin: 0 12px;
}
.wrapper12-sp svg, .wrapper13-sp svg {
	margin-left: -12px;
	width: 100%!important;
}

.site-logo {
	display: flex;
}

.icon-social-bar {
	padding: 8px 0;
	padding-left: 25px;
}

.icon-social-bar a {
	padding-left: 15px;
	color: #000;
}

@-webkit-keyframes ring {
	0% {
		transform: scale(0.1);
		opacity: 1;
	}
	50% {
		transform: scale(1);
		opacity: 0;
	}
	100% {
		transform: scale(0);
		opacity: 0;
	}
}

@keyframes ring {
	0% {
		transform: scale(0.1);
		opacity: 1;
	}
	50% {
		transform: scale(1);
		opacity: 0;
	}
	100% {
		transform: scale(0);
		opacity: 0;
	}
}

@media screen and (max-width: 1299px) {
	.site-logo {
		display: block;
	}
}

@media screen and (max-width: 992px) {
	.entry-content-widget {
		position: relative;
	}
	.entry-type-job-wrapper {
		float: none;
		width: auto;
		display: block;
	}
	.entry-title {
		width: auto;
		display: block;
		padding-right: 20px;
		padding-top: 10px;
	}
	.entry-post-permalink {
		display: block;
		position: absolute;
		right: 0;
		top: 38%;
	}
	.entry-content-widget.faq {
		display: flex;
		padding-left: 75px;
		padding-right: 22px;
	}
	.entry-content-box.entry-order-div {
		position: absolute;
		left: 0;
	}
	.entry-content-question-answer {
		width: auto;
	}
	.entry-content-box.entry-icon-div {
		position: absolute;
		right: 0;
	}
	.entry-description-div {
		margin-left: -75px;
	}
	.entry-content-question-answer .entry-title-p {
		font-size: 18px;
	}
	#site-footer .footer-inner {
		display: flex;
		flex-wrap: unset!important;
	}
	.site-footer .site-branding .site-logo img {
		width: 172px;
		max-width: 172px;
	}
	.copyright.show {
		font-size: 12px;
		line-height: 2.3;
	}
	header#site-header {
		z-index: 100;
		position: fixed;
		top: 0;
		width: 100%;
	}
	ul.menu {
		overflow-y: scroll;
		height: 700px;
		min-height: 700px;
		pointer-events: all;
		overflow-x: hidden;
		min-height: -webkit-fill-available;
  		-webkit-overflow-scrolling: touch;
	}
	body {
		padding-top: 74px;
	}
	.icon-cross-menu-sp{
		float: right;
		background-color: #005bac;
		color: #fff;
		border-radius: 50%;
		font-size: 17px;
		padding-top: 0.2em;
		padding-right: 0.2em;
		padding-bottom: 0.17em;
		padding-left: 0.175em;
	}
	.icon-cross-menu-sp:hover {
		color: #fff;
	}
	.active-icon-cross {
		transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
	}
	.site-navigation-dropdown ul.menu li.current-menu-item a {
		background: none;
		color: #31373C;
	}
	/*.current-menu-item > a {
		color: #005BAC;
	}*/
	.site-navigation-dropdown ul.menu li a {
		font-family: "Noto Sans JP", Sans-serif;
		-webkit-box-shadow: none!important;
    	box-shadow: none!important;
		border-bottom: 1px rgb(0 0 0 / 10%) solid;
	}
	.site-navigation-dropdown ul.menu li > a {
		font-size:20px;
	}
	.site-navigation-dropdown ul.menu li .list-icons-sub-menu{
		display: none;
		align-items: end;
		min-height: 100%;
	}
	.site-navigation-dropdown ul.menu li .icons-sub-menu{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 80px;
		background-color: #CAE2F7;
	}
	.site-navigation-dropdown ul.menu li .icons-sub-menu a {
		border: none !important;
		box-shadow: 0px 0px 2px 4px white !important;
		color: white !important;
		padding: 0 !important;
		margin:  0 7px;
		height: 45px;
		width: 45px;
		background-color: #005bac !important;
		border-radius: 999px;
		text-align: center;
		line-height: 45px;
	}

	@media screen and (max-width: 992px) {
		.icon-social-bar{
			display: none;
		}
	}
	
	.menu-item-type-custom a {
		margin-left: 20px;
		padding-left: 0!important;
		font-size: 16px!important;
	}
	.site-header {
		/*webkit-box-shadow: inset 0 -1px 0 rgb(0 0 0 / 10%);
		box-shadow: inset 0 -1px 0 rgb(0 0 0 / 10%);*/
		border-bottom: 1px rgb(0 0 0 / 10%) solid;
	}
	.remove-box-shadow-first {
		webkit-box-shadow: none!important;
		box-shadow: none!important;
	}
	.add-box-shadow-first {
		border-top: 1px rgb(0 0 0 / 10%) solid;
	}
	.menu .elementor-active > a {
		border-bottom: none!important;
	}
	.sub-menu li:last-of-type {
		border-bottom: 1px rgb(0 0 0 / 10%) solid;
	}	
	.sub-menu li:last-of-type a {
		border-bottom: none!important;
	}
	.sub-menu li a {
		border-bottom: 1px rgb(0 0 0 / 10%) solid!important;
	}
	.menu .header-menu:first-of-type {
		border-top: 1px rgb(0 0 0 / 10%) solid;
	}
	
	.infographics-section-chart {
		background-color: #CAE2F7!important;
	}
	.infographics-border-radius #chart-sport .elementor-widget-container {
		border-radius: 15px;
	}
	
	.button-entry .elementor-button-wrapper::after {	 
		content: '';
		width: 420px;
		height: 100%;
		border-radius: 1000px;
		border: 30px solid #FFF;
		position: absolute;
		z-index: -1;
		top: -14px;
		left: 0;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		-webkit-animation: ring-sp 3s infinite;
		animation: ring-sp 3s infinite;
		pointer-events: none;
	}	 

	.white-button .elementor-button-wrapper::after {	 
		content: '';
		width: 430px;
		height: 100%;
		border-radius: 1000px;
		border: 30px solid #FFF;
		position: absolute;
		z-index: -1;
		top: -14px;
		left: -39px;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		-webkit-animation: ring-sp 3s infinite;
		animation: ring-sp 3s infinite;
		pointer-events: none;	 
	}
	
	.site-logo {
		display: block;
	}
	.icon-social-bar {
		padding: 0;
	}
	
	@-webkit-keyframes ring-sp {	 
		0% {
			transform: scale(0.1);
			opacity: 1;
		}
		50% {
			transform: scale(1);
			opacity: 0;
		}
		100% {
			transform: scale(0);
			opacity: 0;
		}
	}
	@keyframes ring-sp {	 
		0% {
			transform: scale(0.1);
			opacity: 1;
		}
		50% {
			transform: scale(1);
			opacity: 0;
		}
		100% {
			transform: scale(0);
			opacity: 0;
		}
	}
}

@media screen and (max-width: 768px) {
	.entry-content-widget {
		position: relative;
	}
	.entry-type-job-wrapper {
		float: none;
		width: auto;
		display: block;
	}
	.entry-title {
		width: auto;
		display: block;
		padding-right: 20px;
		padding-top: 10px;
	}
	.entry-post-permalink {
		display: block;
		position: absolute;
		right: 0;
		top: 38%;
	}
	.entry-content-widget.faq {
		display: flex;
		padding-left: 75px;
		padding-right: 22px;
	}
	.entry-content-box.entry-order-div {
		position: absolute;
		left: 0;
	}
	.entry-content-question-answer {
		width: auto;
	}
	.entry-content-box.entry-icon-div {
		position: absolute;
		right: 0;
	}
	.entry-description-div {
		margin-left: -75px;
	}
	.entry-content-question-answer .entry-title-p {
		font-size: 18px;
	}
	#site-footer .footer-inner {
		display: flex;
		flex-wrap: unset!important;
	}
	.site-footer .site-branding .site-logo img {
		width: 172px;
		max-width: 172px;
	}
	.copyright.show {
		font-size: 12px;
		line-height: 2.3;
	}
	header#site-header {
		z-index: 100;
		position: fixed;
		top: 0;
		width: 100%;
	}
	ul.menu {
		overflow-y: scroll;
		height: 700px;
		min-height: 700px;
		pointer-events: all;
		overflow-x: hidden;
		min-height: -webkit-fill-available;
  		-webkit-overflow-scrolling: touch;
	}
	body {
		padding-top: 74px;
	}
	.icon-cross-menu-sp{
		float: right;
		background-color: #005bac;
		color: #fff;
		border-radius: 50%;
		font-size: 17px;
		padding-top: 0.2em;
		padding-right: 0.2em;
		padding-bottom: 0.17em;
		padding-left: 0.175em;
	}
	.icon-cross-menu-sp:hover {
		color: #fff;
	}
	.active-icon-cross {
		transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
	}
	.site-navigation-dropdown ul.menu li.current-menu-item a {
		background: none;
		color: #31373C;
	}
	/*.current-menu-item > a {
		color: #005BAC;
	}*/
	.site-navigation-dropdown ul.menu li a {
		font-family: "Noto Sans JP", Sans-serif;
		-webkit-box-shadow: none!important;
    	box-shadow: none!important;
		border-bottom: 1px rgb(0 0 0 / 10%) solid;
	}
	.site-navigation-dropdown ul.menu li > a {
		font-size:20px;
	}
	.site-navigation-dropdown ul.menu li .list-icons-sub-menu{
		display: none;
		align-items: end;
		min-height: 100%;
	}
	.site-navigation-dropdown ul.menu li .icons-sub-menu{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 80px;
		background-color: #CAE2F7;
	}
	.site-navigation-dropdown ul.menu li .icons-sub-menu a {
		border: none !important;
		box-shadow: 0px 0px 2px 4px white !important;
		color: white !important;
		padding: 0 !important;
		margin:  0 7px;
		height: 45px;
		width: 45px;
		background-color: #005bac !important;
		border-radius: 999px;
		text-align: center;
		line-height: 45px;
	}

	@media screen and (max-width: 992px) {
		.icon-social-bar{
			display: none;
		}
	}
	
	.menu-item-type-custom a {
		margin-left: 20px;
		padding-left: 0!important;
		font-size: 16px!important;
	}
	.site-header {
		/*webkit-box-shadow: inset 0 -1px 0 rgb(0 0 0 / 10%);
		box-shadow: inset 0 -1px 0 rgb(0 0 0 / 10%);*/
		border-bottom: 1px rgb(0 0 0 / 10%) solid;
	}
	.remove-box-shadow-first {
		webkit-box-shadow: none!important;
		box-shadow: none!important;
	}
	.add-box-shadow-first {
		border-top: 1px rgb(0 0 0 / 10%) solid;
	}
	.menu .elementor-active > a {
		border-bottom: none!important;
	}
	.sub-menu li:last-of-type {
		border-bottom: 1px rgb(0 0 0 / 10%) solid;
	}	
	.sub-menu li:last-of-type a {
		border-bottom: none!important;
	}
	.sub-menu li a {
		border-bottom: 1px rgb(0 0 0 / 10%) solid!important;
	}
	.menu .header-menu:first-of-type {
		border-top: 1px rgb(0 0 0 / 10%) solid;
	}
	
	.infographics-section-chart {
		background-color: #CAE2F7!important;
	}
	.infographics-border-radius #chart-sport .elementor-widget-container {
		border-radius: 15px;
	}
	
	.button-entry .elementor-button-wrapper::after {	 
		content: '';
		width: 420px;
		height: 100%;
		border-radius: 1000px;
		border: 30px solid #FFF;
		position: absolute;
		z-index: -1;
		top: -14px;
		left: 0;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		-webkit-animation: ring-sp 3s infinite;
		animation: ring-sp 3s infinite;
		pointer-events: none;
	}	 

	.white-button .elementor-button-wrapper::after {	 
		content: '';
		width: 430px;
		height: 100%;
		border-radius: 1000px;
		border: 30px solid #FFF;
		position: absolute;
		z-index: -1;
		top: -14px;
		left: -39px;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		-webkit-animation: ring-sp 3s infinite;
		animation: ring-sp 3s infinite;
		pointer-events: none;	 
	}
	
	.site-logo {
		display: block;
	}
	.icon-social-bar {
		padding: 0;
	}
	
	@-webkit-keyframes ring-sp {	 
		0% {
			transform: scale(0.1);
			opacity: 1;
		}
		50% {
			transform: scale(1);
			opacity: 0;
		}
		100% {
			transform: scale(0);
			opacity: 0;
		}
	}
	@keyframes ring-sp {	 
		0% {
			transform: scale(0.1);
			opacity: 1;
		}
		50% {
			transform: scale(1);
			opacity: 0;
		}
		100% {
			transform: scale(0);
			opacity: 0;
		}
	}
}

@media screen and (max-width: 425px) {
	.memberPage_br-sm br{
		display: block;
	}
	.memberPage_br-sm-none br{
		display: none;
	}

	.timelinePlugin .twae-timeline {
		padding: 40px 0!important;
		margin-left: -5% !important;
	}
	.timelinePlugin .twae-vertical-right .twae-content {
		padding-right: 0!important;
	}
}
@media screen and (max-width: 375px) {
	ul.menu {
		height: 600px;
		min-height: 600px;
	}
	.white-button .elementor-button-wrapper::after {	 
		content: '';
		width: 430px;
		height: 100%;
		border-radius: 1000px;
		border: 30px solid #FFF;
		position: absolute;
		z-index: -1;
		top: -14px;
		left: -43px;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		-webkit-animation: ring-sp 3s infinite;
		animation: ring-sp 3s infinite;
		pointer-events: none;	 
	}	 
}