@charset "UTF-8";


/** ************************************* **

	TABLE CONTENTS
	---------------------------
		01. Globals
		02. HEADER
		03. SECTION Setting
		04. timeline
		05. Animations
		06. nav overwrite
		08. アニメーション丸ボタン
		09. テキスト各種設定
		10. タイトル付き枠
		13. 背景画像
		15. 丸の中の文字
		16. 角丸の画像・背景
		17. table
		18. Vertical Timeline
		19. Toggle
		20. Chart
		21. Moving arrow
		22. back to home
		23. Add indent
		24. 続きを読むボタン
		25. whats new
		27. 文字のサイズ変更
	---------------------------

** ************************************* **/



/** 01. Globals
 **************************************************************** **/
/*===== responsive hack =====*/
.sp {
	display: block;
}

.pc {
	display: none;
}

@media (min-width: 992px) {
	.sp {
		display: none;
	}
	
	.pc {
		display: block;
	}
}

ul {
	list-style-type: disc;
	padding-inline-start: 0;
}



/*===== // responsive hack =====*/

body {
	font-family: "vdl-v7gothic",sans-serif;
	background-color: #fff;
	font-size: 15px;
}

article {
	overflow-x: hidden;
}

/* loading */
#loader-bg {
	background: #fff;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	z-index: 10000;
}

#loading {
	position: relative;
	left: 50%;
	top: 50%;
	margin: -32px 0 0 -32px;
}

#loading img {
	width: 64px;
	height: auto;
}

#menu-wrap {
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	width: 100%;
	/*background: rgba(0,0,0,0.0);*/
	background: rgba(255,255,255,0.80);
	transition: .3s;
}

#menu-wrap .logo {
	width: 180px;
	height: auto;
	margin-top: -10px;
}

@media (max-width: 600px) {
	#menu-wrap .logo {
		width: 140px;
		height: auto;
		margin-top: -10px;
	}
}

.section-heading {
	font-family: "vdl-v7gothic",sans-serif;
	font-size: 3rem;
	font-weight: 900;
	margin: 1rem auto 3rem;
}

.section-heading-2 {
	font-family: "vdl-v7gothic",sans-serif;
	font-size: 2rem;
	font-weight: 900;
	margin: 1rem auto 3rem;
}

.section-heading-3 {
	font-family: "vdl-v7gothic",sans-serif;
	font-size: 3rem;
	font-weight: 900;
	margin: 1rem auto 1rem;
}

/* material */
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
	font-family: "vdl-v7gothic","Open Sans", "Helvetica Neue", Helvetica, "Arial", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

h1,h2,h3,h4,h5,h6 {
	font-weight: 700;
}

h2 {
	font-size: 1.8rem;
}

p {
	font-size: 1.2rem;
	line-height: 2;
}

.icon-block {
	padding: 0 15px;
}

.icon-block .material-icons {
	font-size: inherit;
}

p b,h2 b {
	background: linear-gradient(transparent 60%,#ff6 40%);
	margin: 0 .1em;
}

.box-trans {
	margin: 2em auto;
}

ul li,ol li {
	font-size: 1.1rem;
}

dl dt {
	font-size: .1rem;
	font-weight: 900;
}

dl dd {
	font-size: 1.1rem;
}

@media (min-width: 992px) {
	/* PC size */
	h2 {
		font-size: 2.8rem;
	}
	
	h5 {
		font-size: 2rem;
		line-height: 110%;
		margin: 0.82rem 0 0.656rem 0;
	}
}

.invisible {
	transition: opacity 1.5s ease;
	opacity: 0;
}

.visible {
	transition: opacity 1.5s ease;
	opacity: 1;
}

.d-block d-sm-none {
	display: none!important;
}

@media (max-width: 768px) {
	.d-block d-sm-none {
		display: block !important;
	}
}

.img-circle {
	border-radius: 50%;
}

.container {
	padding: 2rem 0 3rem;
}

.content_inner {
	padding: 15px 15px;
}

.border_bottom_dot {
	border-bottom: 4px dotted #828282;
	margin: 0 0px 10px 0px;
	padding-bottom: 10px;
}

a:hover {
	text-decoration: none;
}

#mediasalon_logo {
	width: 300px;
	display: block;
	text-align: center;
}

@media (max-width:768px) {
	#mediasalon_logo {
		width: 200px;
		display: block;
		text-align: center;
	}
}

.modal-content {
margin-bottom: 100px;
}



/** 02. HEADER
 **************************************************************** **/
/*===== HEADER =====*/
header[role="header"] {
	width: 100%;
	height: 100vh;
	text-align: center;
	background: #fff;
}

#juku header[role="header"] {
	width: 100%;
	height: 80vh;
	text-align: center;
	background: #fff;
}

header.row {
	margin-bottom: 0;
}

#juku {
	position: relative;
}

#juku_header {
	position: relative;
}

#juku_header header[role="header"] .catch {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	/*display: flex;*/
	width: 80%;
	height: 25%;
	border-top: solid 1px #fff;
	border-bottom: solid 1px #fff;
	padding: 20px 10px;
	animation: fadeIn 8s ease 0 1 normal;
	-webkit-animation: fadeIn 8s ease 0 1 normal;
	z-index: 3;
}

@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@-webkit-keyframes fadeIn {
	0% {
		opacity: 0;
	}
	
	100% {
		opacity: 1;
	}
}

header[role="header"] .catch > h1 {
	display: flex;
	-webkit-align-items: center;
	-webkit-justify-content: center;
	align-items: center;
	justify-content: center;
	width: 100%;
	font-size: 1.2rem;
	text-align: center;
	color: #333;
	padding: 0 2rem;
}

header[role="header"] .catch > h1 img {
	width: 100%;
	height: auto;
}

header[role="header"] .catch2 {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	display: flex;
	width: 100%;
	height: auto;
	padding: 20px 10px;
	animation: fadeIn 8s ease 0 1 normal;
	-webkit-animation: fadeIn 8s ease 0 1 normal;
	z-index: 3;
}

header[role="header"] .catch2 > h1 img {
	width: 300px;
	height: auto;
	left: 0;
	top: 80px;
	position: absolute;
	opacity: 0.9;
}



@media ( max-width : 768px ) {
header[role="header"] {
	width: 100%;
	height: 90vh;
	text-align: center;
	background: #fff;
}
#juku_header header[role="header"] .catch {
		width: 60%;
		height: 50%;
	}
header[role="header"] .catch > h3 {
	display: flex;
	-webkit-align-items: center;
	-webkit-justify-content: center;
	align-items: center;
	justify-content: center;
	width: 100%;
	font-size: 1.6rem;
	text-align: center;
	color: #333;
	padding: 0 2rem;
}

#juku header[role="header"] {
	width: 100%;
	height: 35vh;
	text-align: center;
	background: #fff;
	margin-top: 56px;
}
}


@media ( max-width : 480px ) {
	#juku_header header[role="header"] .catch {
		width: 80%;
	}
}



@media ( min-width : 960px ) {
	header[role="header"] .catch > h1 {
		font-size: 1.8rem;
	}
header[role="header"] .catch2 > h1 img {
	width: 300px;
	height: auto;
	left: 0;
	top: 80px;
	position: absolute;
	opacity: 0.9;
}
}
/*===== //HEADER =====*/





/*===== HEADER SLIDER =====*/
.slider_css {
	height: 100vh;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}

#juku .slider_css {
	height: 80vh;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}

.slider_css ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.slider_css ul li {
	background-size: cover;
	width: 100%;
	height: 100vh!important;
	position: absolute;
	top: 0;
	left: 0;
/*	animation-iteration-count: infinite;
	animation-duration: 25s;*/
}

.slider_css ul li:before {
	z-index: 0;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(255,255,255,0.2);
}

.slider_css ul li:nth-child(1) {
	background-image: url(../img/top/section1_01_1900.jpg);
	background-position: center center;
	/*animation-name: slider-zoomin;
	animation-delay: -3s;*/
}
/*.slider_css ul li:nth-child(2) {
	background-image: url(../img/top/2020_section1_02_1900.jpg);
	background-position: center center;
	animation-name: slider-zoomin;
	opacity: 0;
	animation-delay: 3s;
}
.slider_css ul li:nth-child(3) {
	background-image: url(../img/top/2020_section1_03_1900.jpg);
	background-position: center center;
	animation-name: slider-zoomin;
	opacity: 0;
	animation-delay: 9s;
}
.slider_css ul li:nth-child(4) {
	background-image: url(../img/top/2020_section1_04_1900.jpg);
	background-position: center center;
	animation-name: slider-zoomin;
	opacity: 0;
	animation-delay: 15s;
}*/

.slider_css ul li img {
	width:130%;
}

/*#juku .slider_css {
	background-image: url(../img/top/juku_01_1900.jpg);
	background-position: center center;
}
*/

#juku .slider_css ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#juku .slider_css ul li {
	background-size: cover;
	width: 100%;
	height: 100vh!important;
	position: absolute;
	top: 0;
	left: 0;
animation-iteration-count: infinite;
	animation-duration: 25s;
}

#juku .slider_css ul li:before {
	z-index: 0;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

#juku .slider_css ul li:nth-child(1) {
	background-image: url(../img/top/juku_01_1900.jpg);
	background-position: center center;
	animation-name: slider-zoomin;
	animation-delay: -3s;
}
#juku .slider_css ul li:nth-child(2) {
	background-image: url(../img/top/juku_02_1900.jpg);
	background-position: center center;
	animation-name: slider-zoomin;
	opacity: 0;
	animation-delay: 3s;
}
#juku .slider_css ul li:nth-child(3) {
	background-image: url(../img/top/juku_03_1900.jpg);
	background-position: center center;
	animation-name: slider-zoomin;
	opacity: 0;
	animation-delay: 9s;
}
#juku .slider_css ul li:nth-child(4) {
	background-image: url(../img/top/juku_04_1900.jpg);
	background-position: center center;
	animation-name: slider-zoomin;
	opacity: 0;
	animation-delay: 15s;
}

#juku .slider_css ul li img {
	width:130%;
}

@media (max-width: 768px) {
	.slider_css ul li:nth-child(1) {
		background-image: url(../img/top/section1_01_1900_sm.jpg);
		background-position: center center;
		animation-name: slider-zoomin;
		animation-delay: -3s;
	}
	.slider_css ul li:nth-child(2) {
		background-image: url(../img/top/2020_section1_02_1900_sm.jpg);
	/*	animation-name: slider-zoomout; */
		background-position: center center;
		animation-name: slider-zoomin;
		opacity: 0;
		animation-delay: 5s;
	}
	.slider_css ul li:nth-child(3) {
		background-image: url(../img/top/2020_section1_03_1900_sm.jpg);
		background-position: center center;
		animation-name: slider-zoomin;
		opacity: 0;
		animation-delay: 13s;
	}
	.slider_css ul li:nth-child(4) {
		background-image: url(../img/top/2020_section1_04_1900_sm.jpg);
		background-position: center center;
		animation-name: slider-zoomin;
		opacity: 0;
		animation-delay: 21s;
	}
	.slider_css {
	height: 90vh;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}
	
/*	#juku .slider_css {
	background-image: url(../img/top/juku_01_1900_sm.jpg);
	background-position: center center;
	background-size:cover;
}*/

#juku .slider_css ul li:nth-child(1) {
	background-image: url(../img/top/juku_01_1900_sm.jpg);
	background-position: center center;
	animation-name: slider-zoomin;
	animation-delay: -3s;
}
#juku .slider_css ul li:nth-child(2) {
	background-image: url(../img/top/juku_02_1900_sm.jpg);
	background-position: center center;
	animation-name: slider-zoomin;
	opacity: 0;
	animation-delay: 3s;
}
#juku .slider_css ul li:nth-child(3) {
	background-image: url(../img/top/juku_03_1900_sm.jpg);
	background-position: center center;
	animation-name: slider-zoomin;
	opacity: 0;
	animation-delay: 9s;
}
#juku .slider_css ul li:nth-child(4) {
	background-image: url(../img/top/juku_04_1900_sm.jpg);
	background-position: center center;
	animation-name: slider-zoomin;
	opacity: 0;
	animation-delay: 15s;
}

#juku .slider_css {
	height: 40vh;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}



}

@keyframes slider-zoomin {
	0% {
		opacity: 0;
		transform: scale(1);
	}
	12.5% {
		opacity: 1;
	}
	20% {
		opacity: 1;
	}
	29.5% {
		opacity: 0;
	}
	100% {
		opacity: 0;
		transform: scale(1.15);
	}
}

@keyframes slider-zoomout {
	0% {
		opacity: 0;
		transform: scale(1.3);
	}
	12.5% {
		opacity: 1;
	}
	20% {
		opacity: 1;
	}
	27.5% {
		opacity: 0;
	}
	100% {
		opacity: 0;
		transform: scale(1);
	}
}
/*===== // HEADER SLIDER =====*/






/** 03. SECTION Setting
 **************************************************************** **/
section {
	clear: both;
	padding: 0!important;
	margin: 0;
}

section#schedule, section#unei {
	clear: both;
	padding: 20px 0!important;
}

.power section#support  {
	position: relative;
	top:100px;
}

.power section#Line  {
	position: relative;
	top:20px;
}

section#unei2 {
	clear: both;
	padding: 20px 0!important;
	margin: 0 auto 0;
}

.box-grd {
	background: linear-gradient(#EB3349 0%,#DD5E89 100%);
	width: 100%;
	font-size: 2rem;
	font-weight: 900;
	color: #fff;
	padding: 1em 1.2em 1em 1.2em;
	margin: 1em auto 1.5rem;
}

.box-grd p {
	font-size: 1.5rem;
}

.box-grd2 {
	background: #EB3349;
	width: 100%;
	font-size: 1.5rem;
	font-weight: 600;
	color: #fff;
	padding: 1em 1em 1em 1em;
	margin: -20px auto 1.5rem;
	text-align: center;
}

.box-grd2 p {
	margin: 0;
}

.bfr {
	padding: 0!important;
	margin-top: -50px;
}

.bfr h2 {
	font-size: 1.6rem;
}

.power {
	line-height: 1.5;
	position: relative;
}

.power .col {
	line-height: 1.5;
	padding: 1rem 2rem;
	display: flex;
	-webkit-align-items: center;
	-webkit-justify-content: center;
	align-items: center;
	justify-content: center;
	width: 300px;
	height: 300px;
	border-radius: 100%;
	z-index: 4;
	flex-flow: column;
}

#jyukouryou .col {
	line-height: 1.5;
	padding: 1rem 2rem;
	display: flex;
	-webkit-align-items: center;
	-webkit-justify-content: center;
	align-items: center;
	justify-content: center;
	border-radius: 100%;
	z-index: 4;
	flex-flow: wrap;
	margin-bottom: 2em;
}



#voice .power .col {
	line-height: 1.5;
	padding: 1rem 2rem;
	display: flex;
	-webkit-align-items: center;
	-webkit-justify-content: center;
	align-items: center;
	justify-content: center;
	width: 400px;
	height: 300px;
	border-radius: 100%;
	z-index: 4;
	flex-flow: column;
}

.power .col::before {
	white-space: normal;
	content: '';
	background-color: rgba(255,255,255,0.00);
	display: block;
	position: absolute;
	width: 200px;
	height: 200px;
	z-index: -1;
	border-radius: 50%;
	-webkit-transform: scale(1.8);
	transform: scale(1.8);
	box-shadow: 0 0 0 13px #fff0, 0 0 0 2px #d8107d;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}

.power2 {
	position: relative;
}

.power2 .col {
	line-height: 1.5;
	padding: 1rem 2rem;
	display: flex;
	z-index: 4;
	flex-flow: column;
	left: 160px;
	position: absolute;
	top: -100px;
	color: #333;
}

.power2 p {
	line-height: 1.2;
}

.power2 a {
	color: #333;
	font-weight: bold;
}

.power2 a:hover,.power2 a:focus{
	color: #E36728;
	font-weight: bold;
	opacity: 0.8;
}

@media (max-width: 768px) {
.power .col {
	line-height: 1.5;
	padding: 1rem 2rem;
	display: flex;
	-webkit-align-items: center;
	-webkit-justify-content: center;
	align-items: center;
	justify-content: center;
	width: 150px;
	height: 150px;
	border-radius: 100%;
	z-index: 4;
}

#voice .power .col {
	line-height: 1.5;
	padding: 1rem 2rem;
	display: flex;
	-webkit-align-items: center;
	-webkit-justify-content: center;
	align-items: center;
	justify-content: center;
	width: 150px;
	height: 150px;
	border-radius: 100%;
	z-index: 4;
}

.power .col::before {
	white-space: normal;
	content: '';
	background-color: rgba(255,255,255,0.00);
	display: block;
	position: absolute;
	width: 100px;
	height: 100px;
	z-index: -1;
	border-radius: 50%;
	-webkit-transform: scale(1.8);
	transform: scale(1.8);
	box-shadow: 0 0 0 13px #fff0, 0 0 0 2px #d8107d;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}

.power2 a {
	font-size: 0.8em;
}

}

@media (max-width: 768px) {
	.power2 .col {
		line-height: 1.5;
		padding: 1rem 2rem;
		display: flex;
		border-radius: 100%;
		z-index: 4;
		left: 10px;
		top: -50px;
	}
}

.power h2 {
	font-size: 1.5rem!important;
	color: #fff;
	text-align:center;
}

.power p {
	font-weight: 100;
	line-height: 2;
}

.power .col.col_block {
	line-height: 1.5;
	min-height: 0rem;
	padding: 0rem 1rem;
	display: block;
	-webkit-align-items: center;
	-webkit-justify-content: center;
	align-items: center;
	justify-content: center;
}

.power #unei .row {
	margin-bottom: 0px;
}

.power img {
	z-index: 3;
}

.m-man {
	background-image: url(../img/M-man_white_opa.png);
	background-size: 100px auto;
	background-position: left bottom;
	background-repeat: no-repeat;
}

.m-man_150 {
	background-image: url(../img/M-man_white_opa.png);
	background-size: 150px auto;
	background-position: left bottom;
	background-repeat: no-repeat;
}

@media (min-width: 768px) {
	/* tablet size */
	.box-grd2 {
		font-size: 1.6rem;
	}
	.power h2 {
	font-size: 3rem!important;
}
}

@media (min-width: 992px) {
	/* PC size */
	section {
		clear: both;
		/*padding: 40px 0!important;
		margin: 40px auto;*/
	}
	
	section#schedule {
		clear: both;
		padding: 40px 0!important;
	}
	
	.box-grd2 {
		margin: -40px auto 1.5rem;
	}
	
	.box-grd {
		width: 90%;
	}
	
	.box-grd p {
		font-size: 3rem;
	}
	
	.bfr h2 {
		font-size: 2.8rem;
	}
	
	.power h2 {
		font-size: 3rem!important;
		color: #fff;
		text-align: center;
	}
}








/* sec1 */
section#sec1  {
	clear: both;
	padding: 0!important;
	margin: 0 auto 0;
}

#sec1 h3 {
margin-top: 0.5em;
margin-bottom: 1em;
}

#sec1 h3.top_mg1em {
margin-top: 1em;
}

section#sec1 .row  {
	margin: 0 auto 0;
}

@media (max-width: 768px) {
	#sec1 h3  {
		font-size: 1.7rem;
	}
}

@media (max-width: 480px) {
	#sec1 h3  {
		font-size: 1.4rem;
	}
}






/* sec2 */
section#sec2  {
	clear: both;
	padding: 0!important;
	margin: 0 auto 0;
}

#sec2 ul {
	clear: both;
	margin: 0;
	padding: 35px;
	text-align: center;
}

#sec2 li {
	padding-left: 10px;
	padding-right: 10px;
	border-right: solid 1px #fff;
	margin: 0;
	display: inline-block;
}

#sec2 .nav-tabs > li > a{
	border: 0px solid transparent;
	border-radius: 0 0 0 0;
}

#sec2 .nav > li > a:hover, #sec2 .nav > li > a:focus {
	text-decoration: none;
	background-color: rgba(238,238,238,0.20);
}

#sec2 .nav-tabs > li.active > a,#sec2 .nav-tabs > li.active > a:hover, #sec2 .nav-tabs > li.active > a:focus {
	cursor: default;
	background-color: rgba(249,249,249,0.00);
	border: 0px solid #ddd;
	border-bottom-color: transparent;
}

#sec2 li:first-child {
	border-left: solid 1px #fff;
}

#sec2 li a {
	color: #fff;
	font-size: 20px;
}

#sec2 li a:hover,#sec2 li a:active {
	color: #4fc3f7;
}

@media (max-width: 768px) {
	#sec2 li a {
		font-size: 13px;
	}
	#sec2 ul {
		clear: both;
		margin: 0;
		padding: 35px 5px;
		text-align: center;
	}

	#sec2 li {
		padding-left: 10px;
		padding-right: 10px;
		border-right: solid 1px #fff;
		margin: 0;
	}

	#sec2 li:first-child {
		border-left: solid 1px #fff;
	}
}








/* sec3 */
section#sec3  {
	background: linear-gradient(#D8107D, #E36728);
	color: #fff;
	padding-top: 50px;
	position: relative;
	z-index: 2;
}

#sec3 .catch3 > img {
	width: 30%;
	height: auto;
	left: 45%;
	top: -20%;
	position: absolute;
	opacity: 0.9;
	z-index: -1;
}

@media (max-width: 768px) {
	#sec3 .catch3 > img {
		width: 50%;
		height: auto;
		left: 45%;
		top: -25%;
		position: absolute;
		opacity: 0.9;
		z-index: -1;
	}
}

#sec3 .catch4 {
	position: relative;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	display: flex;
	width: 100%;
	height: auto;
	padding: 20px 10px;
	animation: fadeIn 8s ease 0 1 normal;
	-webkit-animation: fadeIn 8s ease 0 1 normal;
	z-index: 3;
}

#sec3 .catch4 > h1 img {
	width: 70px;
	height: auto;
	right: 0;
	bottom: 10px;
	position: absolute;
	opacity: 0.7;
}

@media (max-width: 768px) {
#sec3 .catch4 > h1 img {
	width: 50px;
}
}







/* sec4 */
#sec4 .catch4 {
	position: relative;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	display: flex;
	width: 100%;
	height: auto;
	padding: 20px 10px;
	animation: fadeIn 8s ease 0 1 normal;
	-webkit-animation: fadeIn 8s ease 0 1 normal;
	z-index: 3;
}

#sec4 .catch4 > h1 img {
	width: 70px;
	height: auto;
	right: 0;
	bottom: 10px;
	position: absolute;
	opacity: 0.7;
}

@media (max-width: 768px) {
#sec4 .catch4 > h1 img {
	width: 50px;
}
}








/* keyword */
.power #keyword {
	position: relative;
	z-index: -10;
}







/* keyword3 */
.power #keyword3 {
	margin-bottom: 3rem;
}







/* timline */
section#timeline {
	position: relative;
	margin-bottom: 100px;
}

section#timeline .power {
	position: absolute;
	top: 0px;
	bottom: 0;
	width: 50%;
	background: #EAE522;
	z-index: -1;
	padding-bottom: 100px;
}

section#timeline .power .col {
	margin-top: 0px;
}

section#timeline .container {
	padding-top: 100px;
	padding-bottom: 200px;
}


@media (max-width: 768px) {
	section#timeline .power .col {
		margin-top: 0px;
	}

	section#timeline .container {
		padding-top: 150px;
	}
}

@media (max-width: 600px) {
	section#timeline .container {
		padding-top:250px;
		padding-bottom: 100px;
	}
}

@media (max-width: 480px) {
	section#timeline .container {
		padding-top:250px;
		padding-bottom: 100px;
	}
}

section#timeline .top_disclaimer {
	z-index: 10;
	position: absolute;
	top:350px;
	left: 10px;
}


@media (max-width: 768px) {
	section#timeline .top_disclaimer {
		top:200px;
		left: 10px;
	}
}

@media (max-width: 600px) {
	section#timeline .top_disclaimer {
		top:180px;
	}
}

#timeline .catch5 > img {
	width: 35%;
	height: auto;
	left: 42%;
	top: 15%;
	position: absolute;
	opacity: 0.9;
	z-index: -1;
}

@media (max-width: 1200px) {
	#timeline .catch5 > img {
		width: 45%;
		height: auto;
		left: 35%;
		top: 15%;
		position: absolute;
		opacity: 0.9;
		z-index: -1;
	}
}

@media (max-width: 768px) {
	#timeline .catch5 > img {
		width: 45%;
		height: auto;
		left: 35%;
		top: 25%;
		position: absolute;
		opacity: 0.9;
		z-index: -1;
	}
}

@media (max-width: 600px) {
	#timeline .catch5 > img {
		width: 55%;
		height: auto;
		left: 30%;
		top: 30%;
		position: absolute;
		opacity: 0.9;
		z-index: -1;
	}
}

@media (max-width: 480px) {
	#timeline .catch5 > img {
		width: 75%;
		height: auto;
		left: 20%;
		top: 30%;
		position: absolute;
		opacity: 0.9;
		z-index: -1;
	}
}

#timeline .catch6 > img {
	width: 25%;
	height: auto;
	left: 45%;
	top:10px;
	position: absolute;
	opacity: 1;
	z-index: -1;
}

@media (max-width: 600px) {
	#timeline .catch6 > img {
		width: 30%;
		height: auto;
		left: 45%;
		top:100px;
		position: absolute;
		opacity: 1;
		z-index: -1;
	}
}


@media (max-width: 480px) {
	#timeline .catch6 > img {
		width: 40%;
		height: auto;
		left: 45%;
		top:100px;
		position: absolute;
		opacity: 1;
		z-index: -1;
	}
}


#timeline .catch7 {
	position: relative;
}

#timeline .catch7 > img {
	width: 25%;
	height: auto;
	left: 45%;
	top:-100px;
	position: absolute;
	opacity: 1;
	z-index: -1;
}

@media (max-width: 600px) {
	#timeline .catch7 > img {
		width: 30%;
		height: auto;
		left: 45%;
		top:-50px;
		position: absolute;
		opacity: 1;
		z-index: -1;
	}
}


@media (max-width: 480px) {
	#timeline .catch7 > img {
		width: 40%;
		height: auto;
		left: 45%;
		top:-80px;
		position: absolute;
		opacity: 1;
		z-index: -1;
	}
}








/* back_orangeline */
section.back_orangeline  {
	position: relative;
}

section.back_orangeline .power{
	position: absolute;
	top: 0px;
	bottom: 0;
	right: 0;
	width: 60%;
	background: #E36728;
	z-index: -1;
	padding-bottom: 100px;
}










/* #voice */
section#voice >.container {
	padding-top:  300px;
	width: 60%;
}

@media (max-width: 900px) {
section#voice >.container  {
	padding-top:  300px;
	width: 80%;
}
}

@media (max-width: 768px) {
section#voice >.container  {
	padding-top:  150px;
	width: 80%;
}
}

@media (max-width: 480px) {
section#voice >.container  {
	padding-top:  150px;
	width: 100%;
}
}
section#voice .power .col {
	left: 10px;
	position: absolute;
}

section#voice .power .col::before  {
	display: none;
}










/* back_blue */
section.back_blue  {
	position: relative;
}

section.back_blue .power{
	position: absolute;
	top: 0px;
	bottom: 0;
	right: 0;
	width: 20%;
	background: #1890D7;
	z-index: -1;
	padding-bottom: 100px;
}








/* back_blue2 */
section.back_blue2  {
	position: relative;
}

section.back_blue2 .power{
	position: absolute;
	top: 0px;
	bottom: 0;
	right: 0;
	width: 60%;
	background: #1890D7;
	z-index: -1;
	padding-bottom: 100px;
}

section.back_blue2 .content_inner  {
	background: #fff;
	border: solid 2px #0067A4;
	padding: 2em;
	margin: 0 30px;
}









/* back_green */
section.back_green  {
	position: relative;
}

section.back_green .power{
	position: absolute;
	top: 0px;
	bottom: 0;
	left: 0;
	width:20%;
	background: #84BF41;
	z-index: -1;
	padding-bottom: 100px;
}







/* guardian */
section#guardian  {
	margin-top: 100px;
	margin-bottom: 100px;
}

section#guardian ul {
	padding-inline-start: 40px;
}

section#guardian h3.boder_left_blue {
	position: relative;
	left: 70px;
}

section#guardian h3.boder_left_blue::before {
	content: "";
	padding: 0 0 0 0.7em;
	width: 50px;
	height: 20px;
	background: #607d8b;
	position: absolute;
	top: 40%;
	left: -30px;
	transform: translateX(-50%);
}

@media (max-width: 768px) {
	section#guardian h3.boder_left_blue {
		font-size: 1.7rem;
	}
	section#guardian h4 {
		font-size: 1.5rem;
	}
}

#schedule h2 {
	font-size: 1.8rem;
}
#schedule h4 {
	font-size: 1.6rem;
}
@media (min-width: 992px) {
	/* PC size */
	#schedule h2 {
		font-size: 2.8rem;
	}
	
	#schedule h4 {
		font-size: 2.5rem;
	}
}








/* question  */
#question {
	background-image: url(../img/section5_01_1500.jpg);
	background-position: center top;
	-moz-background-size: 160% auto;
	background-size: 160% auto;
	background-repeat: no-repeat;
}

@media (min-width: 768px) {
	#question {
		background-image: url(../img/section5_01_1500.jpg);
		background-size: 100% auto;
		background-position: 50% 20%;
	}
}

/* hover contents */
.full_content {
	width: 100%;
	min-height: 480px;
	position: relative;
	margin: 0 auto;
	clear: both;
}

.menu {
	width: 100px;
	height: 25px;
	background: #EC8E9E;
	float: left;
	list-style: none;
	padding: 10px 0 0;
	margin-left: 2px;
	text-align: center;
	display: block;
	cursor: pointer;
	color: #FFF;
}

.menu:first-child {
	margin-left: 0;
}

.hover {
	background: #6CC;
	font-weight: 700;
}

.add_left01 {
	left: 50px;
}

.add_left02 {
	left: 200px;
}

.add_left03 {
	left: 80px;
}

.add_left04 {
	left: 220px;
}

.content {
	width: 100%;
	min-height: 140px;
	border: #6CC 5px solid;
	background: #FFF;
	top: 300px;
	left: 0;
	padding: 10px;
	position: absolute;
	z-index: 100;
}

.full_content ul {
	line-height: 1.5;
	margin: .5em .5em 1em 2em;
}

.full_content ul li {
	list-style: disc;
}

/* ボタン */
.a-btn {
	width: 120px;
	height: 100px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	display: block;
	margin: 20px auto 20px 0;
	float: left;
	background: #f0ad4e;
	position: relative;
	z-index: 1;
	-webkit-box-shadow: 0 0 5px 0 rgba(246,212,163,0.5) inset,0 -1px 5px 4px rgba(170,77,27,0.2) inset,0 0 0 7px #fff,0 0 1px 8px rgba(188,188,188,0.4),0 0 0 9px #fff;
	-moz-box-shadow: 0 0 5px 0 rgba(246,212,163,0.5) inset,0 -1px 5px 4px rgba(170,77,27,0.2) inset,0 0 0 7px #fff,0 0 1px 8px rgba(188,188,188,0.4),0 0 0 9px #fff;
	box-shadow: 0 0 5px 0 rgba(246,212,163,0.5) inset,0 -1px 5px 4px rgba(170,77,27,0.2) inset,0 0 0 7px #fff,0 0 1px 8px rgba(188,188,188,0.4),0 0 0 9px #fff;
	-webkit-transition: all .3s linear;
	-moz-transition: all .3s linear;
	-o-transition: all .3s linear;
	transition: all .3s linear;
	opacity: .9;
}

@media (max-width: 330px) {
	.q-btn2 {
		margin-left: 30px;
	}
	.q-btn4 {
		margin-left: 30px;
	}
}

.a-btn span {
	display: table-cell;
	width: 140px;
	height: auto;
	text-align: center;
	vertical-align: middle;
	font-size: 20px;
	color: #fff;
	text-shadow: 0 1px 1px #646464;
	font-family: "a-otf-midashi-go-mb31-pr6n";
	padding: 20px 10px 10px;
	margin: 20px auto;
	position: relative;
	-webkit-transition: all .3s linear;
	-moz-transition: all .3s linear;
	-o-transition: all .3s linear;
	transition: all .3s linear;
}

.a-btn span:nth-child(1),.a-btn span:nth-child(3) {
	position: absolute;
	top: 0;
	left: 0;
	font-size: 40px;
	line-height: 1em;
	opacity: 0;
}

.a-btn span:nth-child(3) {
	line-height:.2em;
	font-size:60px;
	margin-left:-10px;
}

span.q-h-2 {
	padding-top: 10px;
	line-height: 1.2em;
}
.btnbtn1 {
	width: 200px;
	margin: 10px auto;
}

@media (min-width: 768px) {
	.full_content {
		min-height: 580px;
	}
	
	.a-btn {
		width: 200px;
		height: 140px;
	}
	
	.a-btn span {
		width: 200px;
		font-size: 32px;
		padding-top: 1em;
	}
	
	.q-h-2 {
		margin-top: -.5em;
	}
	
	.a-btn span:nth-child(3) {
		margin-left: 0;
		margin-top: 0;
	}
	
	.content {
		width: 80%;
		top: 400px;
		margin: 0 auto 0 80px;
	}
	
	.add_left02 {
		left: 480px;
	}
	
	.add_left04 {
		left: 520px;
	}
}

.a-btn:hover {
	background: rgba(170,77,27,0.6);
	-webkit-box-shadow: 0 0 5px 0 rgba(246,212,163,0.5) inset,0 -1px 5px 4px rgba(170,77,27,0.2) inset,0 0 0 7px #fff,1px 4px 5px 8px rgba(188,188,188,0.6),0 0 0 9px #fff;
	-moz-box-shadow: 0 0 5px 0 rgba(246,212,163,0.5) inset,0 -1px 5px 4px rgba(170,77,27,0.2) inset,0 0 0 7px #fff,1px 4px 5px 8px rgba(188,188,188,0.6),0 0 0 9px #fff;
	box-shadow: 0 0 5px 0 rgba(246,212,163,0.5) inset,0 -1px 5px 4px rgba(170,77,27,0.2) inset,0 0 0 7px #fff,1px 4px 5px 8px rgba(188,188,188,0.6),0 0 0 9px #fff;
}

.a-btn:hover span:nth-child(3) {
	opacity: 1;
}

.a-btn:hover span:nth-child(2) {
	opacity: 0;
	-webkit-transform: scale(0);
	-moz-transform: scale(0);
	transform: scale(0);
}

.a-btn:active {
	-webkit-box-shadow: 0 0 5px 0 rgba(246,212,163,0.5) inset,0 -1px 5px 4px rgba(170,77,27,0.2) inset,0 0 0 7px #fff,0 -1px 0 8px rgba(188,188,188,0.3),0 0 0 10px #fff;
	-moz-box-shadow: 0 0 5px 0 rgba(246,212,163,0.5) inset,0 -1px 5px 4px rgba(170,77,27,0.2) inset,0 0 0 7px #fff,0 -1px 0 8px rgba(188,188,188,0.3),0 0 0 10px #fff;
	box-shadow: 0 0 5px 0 rgba(246,212,163,0.5) inset,0 -1px 5px 4px rgba(170,77,27,0.2) inset,0 0 0 7px #fff,0 -1px 0 8px rgba(188,188,188,0.3),0 0 0 10px #fff;
}

.a-btn:active span:nth-child(2) {
	color:r gba(170,77,27,0.8);
	text-shadow: 0 1px 1px rgba(255,255,255,0.6);
}

/* btn2 */
.a-btn2 {
	width: 140px;
	height: 140px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	display:block;
	margin: 20px auto 20px 0;
	float: left;
	background: #f0ad4e;
	position: relative;
	z-index: 1;
	-webkit-box-shadow: 0 0 0 7px #fff,0 0 1px 8px rgba(188,188,188,0.4),0 0 0 9px #fff;
	-moz-box-shadow: 0 0 0 7px #fff,0 0 1px 8px rgba(188,188,188,0.4),0 0 0 9px #fff;
	box-shadow: 0 0 0 7px #fff,0 0 1px 8px rgba(188,188,188,0.4),0 0 0 9px #fff;
	-webkit-transition: all .3s linear;
	-moz-transition: all .3s linear;
	-o-transition: all .3s linear;
	transition: all .3s linear;
	opacity: .9;
}

.a-btn2 span {
	display: table-cell;
	width: 140px;
	height: auto;
	text-align: center;
	vertical-align: middle;
	font-size: 1.2em;
	line-height: 1.3;
	letter-spacing: -.1em;
	color: #fff;
	font-family: "a-otf-midashi-go-mb31-pr6n";
	padding: 20px 20px 10px;
	position: relative;
	-webkit-transition: all .3s linear;
	-moz-transition: all .3s linear;
	-o-transition: all .3s linear;
	transition: all .3s linear;
}

.a-btn2 span span {
	font-size: 10px;
}

.a-btn2 span:nth-child(1),.a-btn2 span:nth-child(3) {
	position: absolute;
	top: .5em;
	left: 0;
	line-height: 1.5em;
	opacity: 0;
}

.a-btn2 span:nth-child(3) {
	line-height: 1.2em;
	font-size: 1.1em;
}

.a-btn2:hover {
	background: rgba(170,77,27,0.6);
	-webkit-box-shadow: 0 0 5px 0 rgba(172,172,172,0.5) inset,0 -1px 5px 4px rgba(170,170,170,0.2) inset,0 0 0 7px #fff,1px 4px 5px 8px rgba(188,188,188,0.6),0 0 0 9px #fff;
	-moz-box-shadow: 0 0 5px 0 rgba(172,172,172,0.5) inset,0 -1px 5px 4px rgba(170,170,170,0.2) inset,0 0 0 7px #fff,1px 4px 5px 8px rgba(188,188,188,0.6),0 0 0 9px #fff;
	box-shadow: 0 0 5px 0 rgba(172,172,172,0.5) inset,0 -1px 5px 4px rgba(170,170,170,0.2) inset,0 0 0 7px #fff,1px 4px 5px 8px rgba(188,188,188,0.6),0 0 0 9px #fff;
}

.a-btn2:hover span:nth-child(3) {
	opacity:1;
}

.a-btn2:hover span:nth-child(2) {
	opacity:0;
	-webkit-transform:scale(0);
	-moz-transform:scale(0);
	transform:scale(0);
}

.a-btn2:active {
	-webkit-box-shadow:0 0 5px 0 rgba(246,212,163,0.5) inset,0 -1px 5px 4px rgba(170,77,27,0.2) inset,0 0 0 7px #fff,0 -1px 0 8px rgba(188,188,188,0.3),0 0 0 10px #fff;
	-moz-box-shadow:0 0 5px 0 rgba(246,212,163,0.5) inset,0 -1px 5px 4px rgba(170,77,27,0.2) inset,0 0 0 7px #fff,0 -1px 0 8px rgba(188,188,188,0.3),0 0 0 10px #fff;
	box-shadow:0 0 5px 0 rgba(246,212,163,0.5) inset,0 -1px 5px 4px rgba(170,77,27,0.2) inset,0 0 0 7px #fff,0 -1px 0 8px rgba(188,188,188,0.3),0 0 0 10px #fff;
}

.a-btn2:active span:nth-child(2) {
	color:rgba(170,77,27,0.8);
	text-shadow:0 1px 1px rgba(255,255,255,0.6);
}

@media (min-width: 768px) {
	.a-btn2 {
		width: 180px;
		height: 180px;
	}
	
	.a-btn2 span {
		width: 180px;
		font-size: 1.4em;
		padding-top: 3rem;
	}
	
	.a-btn2 span:nth-child(3) {
		line-height: 1.5em;
		font-size: 1.4em;
		padding-top: 2rem;
	}
}





/* add */
.ls-01 {
	letter-spacing: -.1em;
}

.mt50 {
	margin-top: 50px;
}

.mt-mt {
	margin-top: 50px;
}

.mb50 {
	margin-bottom: 50px;
}

@media (min-width: 768px) {
	.mt-mt {
		margin-top: 150px;
	}
}

/* qanda contents */
dl.qanda {
	margin-top: 20px;
}

dl.qanda dt {
	color: #c2185b;
	text-indent: -1.7em;
	font-size: 1.2em;
	margin-left: 1em;
	margin-top: 20px;
}

dl.qanda dt:before {
	content: "Q.";
	color: #e91e63;
	font-size: 2em;
	margin-right: .1em;
}

dl.qanda dd {
	text-indent: -1.25em;
	line-height: 1.6em;
	font-size: 1.1em;
	padding: 0 0 .4em .6em;
	margin-left: 1.2em;
	margin-top: 1rem;
}

dl.qanda dd:before {
	display: inline-block;
	content: "A.";
	color: #1976d2;
	font-size: 1.8em;
	margin-right: .5em;
}





/* LINE@ */
#line-sec {
	margin-bottom: 0!important;
}

#line-sec p {
	color: #47951d;
}

#line-sec p.top-cap {
	width: 100%;
}

#line-sec h2 {
	width: 100%;
	font-size: 1.2rem;
	color: #5eab34;
	line-height: 1.5;
}

#line-sec h2 span {
	display: block;
	font-weight: 100;
	text-align: left;
}

#line-sec h2 img {
	width: 100%;
	height: auto;
}




.howtoline {
	padding: 1rem 2rem;
}

.howtoline h3 {
	font-size: 1.3rem;
	color: #333!important;
	padding-bottom: 5px;
	border-bottom: 1px dotted;
}

.howtoline p {
	color: #333!important;
}







/* FOOTER */
footer {
	/*background-image: url(../img/footer_200325.jpg);*/
	background: #DADADA;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.bg-blk {
	height:100%;
	background:rgba(0,0,0,0.7);
}

footer.page-footer {
	background: #DADADA;
}

footer.page-footer ul{
	list-style: none;
}
footer .container {
	padding: 2rem 0 1rem;
}

footer a:hover {
	text-decoration: none;
}

footer a:visited {
	color: inherit;
}

.footer-menu {
	position: fixed;
	width: 150px;
	height: 150px;
	background-color: #0067A4;
	bottom: 10px;
	right: 10px;
	opacity: 1;
	z-index: 100;
	border-radius: 50%;
}

.footer-menu:hover {
	background-color: #0284D1;
}

.footer-menu .offer {
	width: 150px;
	height: 150px;
	line-height: 1.5;
	top:50%;
	color: #fff;
	font-size: 1.5rem;
	padding: .8rem;
	margin: 0 auto;
	z-index: 200;
	-webkit-display: flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	text-align: center;
}

.footer-menu .offer a:link {
	color: inherit;
	font-weight: 900;
	text-decoration: none;
}

.footer-menu .offer a:hover {
	color: inherit;
	text-decoration: none;
}

.footer-menu .offer a:visited {
	color: inherit;
	text-decoration: none;
}

@media (max-width: 768px) {
	.footer-menu {
		position: fixed;
		width: 110px;
		height: 110px;
		background-color: #0067A4;
		bottom: 10px;
		right: 10px;
		opacity: 1;
		z-index: 100;
		border-radius: 50%;
	}

	.footer-menu .offer {
		width: 110px;
		height: 110px;
		font-size: 1.1rem;
	}
}







/** 04. timeline
 **************************************************************** **/
.timeline {
	list-style: none;
	padding: 0;
	position: relative;
	margin-top: -2em;
}

.timeline:before {
	top: 0;
	bottom: 0;
	position: absolute;
	content: "";
	width: 2px;
	background-color: #f1f1f1;
	left: 50px;
	margin-left: -1.5px;
}

.timeline > li {
	margin-bottom: 50px;
	position: relative;
	min-height: 50px;
}

.timeline > li:before,.timeline > li:after {
	content: " ";
	display: table;
}

.timeline > li:after {
	clear: both;
}

.timeline > li .timeline-panel {
	width: 100%;
	float: right;
	padding: 0 20px 0 100px;
	position: relative;
	text-align: left;
}

.timeline > li .timeline-panel:before {
	border-left-width: 0;
	border-right-width: 15px;
	left: -15px;
	right: auto;
}

.timeline > li .timeline-panel:after {
	border-left-width: 0;
	border-right-width: 14px;
	left: -14px;
	right: auto;
}

.timeline > li .timeline-image {
	left: 0;
	margin-left: 0;
	width: 100px;
	height: 100px;
	position: absolute;
	z-index: 0;
	background-color: #c2c2c2;
	color: #fff;
	border-radius: 100%;
	border: 7px solid #f1f1f1;
	text-align: center;
}

.timeline > li .timeline-image h3 {
	width: 2em;
	text-align: center;
	font-size: 20px;
	line-height: 20px;
	margin-top: 30px;
	margin-left: 22px;
}

.timeline > li .timeline-image h3.bbb {
	margin-top: 22px;
}

.timeline > li.timeline-inverted > .timeline-panel {
	float: right;
	text-align: left;
	padding: 1em 20px 30px 100px;
	margin-top: 0;
}

.timeline > li.timeline-inverted > .timeline-panel:before {
	border-left-width: 0;
	border-right-width: 15px;
	left: -15px;
	right: auto;
}

.timeline > li.timeline-inverted > .timeline-panel:after {
	border-left-width: 0;
	border-right-width: 14px;
	left: -14px;
	right: auto;
}

.timeline > li:last-child {
	margin-bottom: 0;
}

.timeline .timeline-heading h4 {
	color: inherit;
	font-size: 1.4rem;
	vertical-align: middle;
	margin-left: 1em;
}

.timeline .timeline-heading h4.subheading {
	text-transform: none;
}

.timeline .timeline-body > p,.timeline .timeline-body > ul {
	margin-bottom: 0;
}

@media (min-width: 768px) {
	.timeline:before {
		left: 40%;
	}
	
	.timeline > li {
		margin-bottom: 100px;
		min-height: 150px;
	}
	
	.timeline-heading h4 {
		margin-top: 3em;
	}
	
	.timeline > li .timeline-panel {
		width: 55%;
		float: left;
		padding: 0 20px 20px 30px;
		text-align: right;
	}
	
	.timeline > li .timeline-image {
		width: 180px;
		height: 180px;
		left: 40%;
		margin-left: -90px;
	}
	
	.timeline > li .timeline-image h3 {
		width: 2em;
		font-size: 40px;
		line-height: 42px;
		margin-top: 60px;
		margin-left: 42px;
	}
	
	.timeline > li .timeline-image h3.bbb {
		margin-top: 42px;
	}
	
	.timeline > li.timeline-inverted > .timeline-panel {
		float: right;
		text-align: left;
		padding: 0 30px 20px 40px;
	}
	
	.tlcap {
		display: none;
	}
	
	.timeline > li:last-child {
		margin-bottom: 50px;
	}
}







/** 05. Animations
 **************************************************************** **/
.fromTopIn {
	transition: transform 1s ease,opacity 1s ease;
	transform: translate(0,0);
	opacity: 1;
}

.fromTopOut {
	transition: transform 1s ease,opacity 1s ease;
	transform: translate(0,-10px);
	opacity: 0;
}

.fromBottomIn {
	transition: transform 1s ease,opacity 1s ease;
	transform: translate(0,0);
	opacity: 1;
}

.fromBottomOut {
	transition: transform 1s ease,opacity 1s ease;
	transform: translate(0,10px);
	opacity: 0;
}

.fromLeftIn {
	transition: transform 1s ease,opacity 1s ease;
	transform: translate(0,0);
	opacity: 1;
}

.fromLeftOut {
	transition: transform 1s ease,opacity 1s ease;
	transform: translate(-10px,0);
	opacity: 0;
}

.fromRightIn {
	transition: transform 1s ease,opacity 1s ease;
	transform: translate(0,0);
	opacity: 1;
}

.fromRightOut {
	transition :transform 1s ease,opacity 1s ease;
	transform: translate(10px,0);
	opacity: 0;
}

.scaleUpIn {
	transition: transform 1s ease,opacity 1s ease;
	transform: scale(1.0,1.0);
	opacity: 1;
}

.scaleUpOut {
	transition: transform 1s ease,opacity 1s ease;
	transform: scale(1.3,1.3);
	opacity: 0;
}

.scaleDownIn {
	transition: transform 1s ease,opacity 1s ease;
	transform: scale(1.0,1.0);
	opacity: 1;
}

.scaleDownOut {
	transition: transform 1s ease,opacity 1s ease;
	transform: scale(0.7,0.7);
	opacity: 0;
}







/** 06. nav overwrite
 **************************************************************** **/
.userView {
	/*height:160px;*/
	height: 70px;
}

.userView .background::before {
	position: absolute;
	top:40%;
	left: 5%;
	content: "";
	display: inline-block;
	width: 50px;
	height: 50px;
	margin: 0 0 0 5px;
	background: url("../img/menu.svg") no-repeat;
	background-size: contain;
}

.userView .background::after {
	position: absolute;
	top:35%;
	right: 5%;
	content: "";
	display: inline-block;
	width: 80px;
	height: 50px;
	margin: 0 0 0 5px;
	background: url("../img/logo_MEDIASALON_light.svg?210910") no-repeat;
	background-size: contain;
}

@media (min-width: 768px) {
	.userView {
		/*height:200px;*/
		height:64px;
		position: relative;
	}
	
	.userView .background::before {
		position: absolute;
		top:35%;
		left: 5%;
		content: "";
		display: inline-block;
		width: 80px;
		height: 50px;
		margin: 0 0 0 5px;
		background: url("../img/menu.svg") no-repeat;
		background-size: contain;
	}
	
	.userView .background::after {
		position: absolute;
		top: 35%;
		right: 5%;
		content: "";
		display: inline-block;
		width: 100px;
		height: 50px;
		margin: 0 0 0 5px;
		background: url("../img/logo_MEDIASALON_light.svg?210902") no-repeat;
		background-size: contain;
	}
	
	.side-nav {
		width: 400px;
	}
	
	.side-nav a {
		font-size: 1.2em;
	}
}

.side-nav a.lineh_12 {
		line-height: 1.2;
	}

.lineh_12 {
		line-height: 1.2;
	}







/** 08. アニメーション丸ボタン
 **************************************************************** **/
.btn04 {
	color: #5B81C9;
	font-size: 20px;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	position: relative;
	z-index: 10;
	display: table;
	width: 200px;
	height: 200px;
	margin: 10px;
	margin-left: auto;
	margin-right: auto;
	border-radius: 50%;
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
	box-shadow:
		0 0 0 10px #fff,
		0 0 0 12px #5B81C9;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}

.btn04.green {
	color: #fff;
	box-shadow:
		0 0 0 10px #548235,
		0 0 0 12px #fff;
}

.btn04.orange {
	color: #fff;
	box-shadow:
		0 0 0 10px #EA973F,
		0 0 0 12px #fff;
}

.btn04.blue {
	color: #fff;
	box-shadow:
		0 0 0 10px #2279B4,
		0 0 0 12px #fff;
}

.btn04.purple {
	color: #fff;
	box-shadow:
		0 0 0 10px #7030A0,
		0 0 0 12px #fff;
}

.btn04.red {
	color: #fff;
	box-shadow:
		0 0 0 10px #D8107D,
		0 0 0 12px #fff;
}

.btn04:hover {
	color: #fff;
}

.btn04.green:hover {
	color: #548235;
}

.btn04.orange:hover {
	color: #EA973F;
}

.btn04.blue:hover {
	color: #2279B4;
}

.btn04.purple:hover {
	color: #7030A0;
}

.btn04.red:hover {
	color: #ffffff;
}

.btn04 a{
	color: #5B81C9;
	font-size: 20px;
	font-weight: bold;
}

.btn04 a:hover {
	color: #fff;
}

.btn04 span.btn_text{
	display: table-cell; /* IE8から使用可能 */
	vertical-align: middle;
}

.btn04 .btn_text{
	display: table-cell; /* IE8から使用可能 */
	vertical-align: middle;
}

.btn04::before {
	white-space: normal;
	content: '';
	background-color: #fff;
	display: block;
	position: absolute;
	width: 200px;
	height: 200px;
	z-index: -1;
	border-radius: 50%;
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
	box-shadow:
		0 0 0 10px #fff,
		0 0 0 12px #5B81C9;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}

.btn04::after {
	white-space: normal;
	/*font-family: "Font Awesome 5 Free";*/
	/*content: "\f0d7";*/
	content: "Click";
	color: #d8107d;
	/*font-size: 55px;*/
	font-size: 1rem;
	line-height: 55px;
	background-color: #fff;
	display: block;
	position: absolute;
	right: 10px;
	bottom: 10px;
	width: 55px;
	height: 55px;
	z-index: -1;
	border-radius: 50%;
	box-shadow:
	0 0 0 0px #fff,
	0 0 0 2px #d8107d;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}

.btn04:hover::after {
	white-space: normal;
	/*font-family: "Font Awesome 5 Free";
	content: "\f0d7";*/
	content: "Click";
	color: #fff;
	/*font-size: 55px;*/
	font-size: 1rem;
	line-height: 55px;
	background-color: #d8107d;
	display: block;
	position: absolute;
	right: 10px;
	bottom: 10px;
	width: 55px;
	height: 55px;
	z-index: -1;
	border-radius: 50%;
	box-shadow:
	0 0 0 0px #d8107d,
	0 0 0 2px #fff;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}

.btn04.green::before  {
	background-color: #548235;
	box-shadow:
		0 0 0 10px #548235,
		0 0 0 12px #fff;
}

.btn04.orange::before  {
	background-color: #EA973F;
	box-shadow:
		0 0 0 10px #EA973F,
		0 0 0 12px #fff;
}

.btn04.blue::before  {
	background-color: #2279B4;
	box-shadow:
		0 0 0 10px #2279B4,
		0 0 0 12px #fff;
}

.btn04.purple::before  {
	background-color: #7030A0;
	box-shadow:
		0 0 0 10px #7030A0,
		0 0 0 12px #fff;
}

.btn04.red::before  {
	background: linear-gradient(#D8107D, #E36728);
	box-shadow:
		0 0 0 10px #D8107D,
		0 0 0 12px #fff;
}

.btn04:hover::before {
	color: #fff;
	background-color: #7897D2;
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
	box-shadow:
		0 0 0 12px #fff,
		0 0 0 14px #5B81C9;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}

.btn04.green:hover::before {
	color: #548235;
	background-color: #fff;
	box-shadow:
		0 0 0 12px #548235,
		0 0 0 14px #fff;
}

.btn04.orange:hover::before {
	color: #EA973F;
	background-color: #fff;
	box-shadow:
		0 0 0 12px #EA973F,
		0 0 0 14px #fff;
}

.btn04.blue:hover::before {
	color: #2279B4;
	background-color: #fff;
	box-shadow:
		0 0 0 12px #2279B4,
		0 0 0 14px #fff;
}

.btn04.purple:hover::before {
	color: #7030A0;
	background-color: #fff;
	box-shadow:
		0 0 0 12px #7030A0,
		0 0 0 14px #fff;
}

.btn04.red:hover::before {
	color: #ffffff;
	background-color: #fff;
	box-shadow:
		0 0 0 12px #D8107D,
		0 0 0 14px #fff;
}


@media (max-width: 768px) {
.btn04 {
	color: #5B81C9;
	text-decoration: none;
	text-align: center;
	position: relative;
	z-index: 10;
	display: table;
	width: 150px;
	height: 150px;
	margin: 10px;
	margin-left: auto;
	margin-right: auto;
	border-radius: 50%;
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
	box-shadow:
		0 0 0 10px #fff,
		0 0 0 12px #5B81C9;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}

.btn04:hover {
	color: #fff;
}

.btn04 span.btn_text{
	display: table-cell; /* IE8から使用可能 */
 	vertical-align: middle;
}

.btn04::before {
	white-space: normal;
	content: '';
	background-color: #fff;
	display: block;
	position: absolute;
	width: 150px;
	height: 150px;
	z-index: -1;
	border-radius: 50%;
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
	box-shadow:
		0 0 0 10px #fff,
		0 0 0 12px #5B81C9;
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
}

.btn04:hover::before {
	color: #fff;
	background-color: #7897D2;
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
	box-shadow:
		0 0 0 12px #fff,
		0 0 0 14px #5B81C9;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}

.btn04::after {
	/*font-size: 30px;*/
	font-size: 1rem;
	line-height: 45px;
	right: -30px;
	bottom: -10px;
	width: 45px;
	height: 45px;
	z-index: -1;
	border-radius: 50%;
	box-shadow:
		0 0 0 0px #fff,
		0 0 0 2px #d8107d;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}

.btn04:hover::after {
	white-space: normal;
	font-family: "Font Awesome 5 Free";
	content: "\f0d7";
	color: #fff;
	font-size: 30px;
	line-height: 45px;
	background-color: #d8107d;
	display: block;
	position: absolute;
	right: -30px;
	bottom: -10px;
	width: 45px;
	height: 45px;
	z-index: -1;
	border-radius: 50%;
	box-shadow:
	0 0 0 0px #d8107d,
	0 0 0 2px #fff;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}
}




@media (max-width: 480px) {
.btn04 {
	color: #5B81C9;
	text-decoration: none;
	text-align: center;
	position: relative;
	z-index: 10;
	display: table;
	width: 120px;
	height: 120px;
	border-radius: 50%;
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
	box-shadow:
		0 0 0 10px #fff,
		0 0 0 12px #5B81C9;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}

.btn04:hover {
	color: #fff;
}

.btn04 span.btn_text{
	display: table-cell; /* IE8から使用可能 */
	vertical-align: middle;
}

.btn04::before {
	white-space: normal;
	content: '';
	background-color: #fff;
	display: block;
	position: absolute;
	width: 120px;
	height: 120px;
	z-index: -1;
	border-radius: 50%;
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
	box-shadow:
		0 0 0 10px #fff,
		0 0 0 12px #5B81C9;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}

.btn04:hover::before {
	color: #fff;
	background-color: #7897D2;
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
	box-shadow:
		0 0 0 12px #fff,
		0 0 0 14px #5B81C9;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}
}







/** 09. テキスト各種設定
 **************************************************************** **/
/*===== ブロックレベル要素内テキストの行揃え用 =====*/
.center {
	text-align: center;
}

.center img, .center table {
	margin-left: auto;
	margin-right: auto;
}

.right {
	text-align: right;
}

.left {
	text-align: left;
}
/*===== //ブロックレベル要素内テキストの行揃え用 =====*/


/*===== テキストサイズ 以下 % 指定 =====*/
.em01 {
	font-size: 10%;		/* フォントサイズ 10% */
}
.em02 {
	font-size: 20%;		/* フォントサイズ 20% */
}
.em03 {
	font-size: 30%;		/* フォントサイズ 30% */
}
.em04 {
	font-size: 40%;		/* フォントサイズ 40% */
}
.em05 {
	font-size: 50%;		/* フォントサイズ 50% */
}
.em06 {
	font-size: 60%;		/* フォントサイズ 60% */
}
.em07 {
	font-size: 70%;		/* フォントサイズ 70% */
}
.em08 {
	font-size: 80%;		/* フォントサイズ 80% */
}
.em09 {
	font-size: 90%;		/* フォントサイズ 90% */
}
.em10 {
	font-size: 100%;	/* フォントサイズ 100% */
}
.em11 {
	font-size: 110%;	/* フォントサイズ 110% */
}
.em12 {
	font-size: 120%;	/* フォントサイズ 120% */
}
.em13 {
	font-size: 130%;	/* フォントサイズ 130% */
}
.em14 {
	font-size: 140%;	/* フォントサイズ 140% */
}
.em15 {
	font-size: 150%;	/* フォントサイズ 150% */
}
.em16 {
	font-size: 160%;	/* フォントサイズ 160% */
}
.em17 {
	font-size: 170%;	/* フォントサイズ 170% */
}
.em18 {
	font-size: 180%;	/* フォントサイズ 180% */
}
.em19 {
	font-size: 190%;	/* フォントサイズ 190% */
}
.em20 {
	font-size: 200%;	/* フォントサイズ 200% */
}
.em21 {
	font-size: 210%;	/* フォントサイズ 210% */
}
.em22 {
	font-size: 220%;	/* フォントサイズ 220% */
}
.em23 {
	font-size: 230%;	/* フォントサイズ 230% */
}
.em24 {
	font-size: 240%;	/* フォントサイズ 240% */
}
/*===== // テキストサイズ 以下 % 指定 =====*/

/*===== テキストサイズ 以下 pixel 指定（使う時は最大限注意） =====*/
.px10 {
	font-size: 10px;	/* フォントサイズ 10px */
}
.px11 {
	font-size: 11px;	/* フォントサイズ 11px */
}
.px12 {
	font-size: 12px;	/* フォントサイズ 12px */
}
.px13 {
	font-size: 13px;	/* フォントサイズ 13px */
}
.px14 {
	font-size: 14px;	/* フォントサイズ 14px */
}
.px15 {
	font-size: 15px;	/* フォントサイズ 15px */
}
.px16 {
	font-size: 16px;	/* フォントサイズ 16px */
}
.px17 {
	font-size: 17px;	/* フォントサイズ 17px */
}
.px18 {
	font-size: 18px;	/* フォントサイズ 18px */
}
.px19 {
	font-size: 19px;	/* フォントサイズ 19px */
}
.px20 {
	font-size: 20px;	/* フォントサイズ 20px */
}
/*===== // テキストサイズ 以下 pixel 指定（使う時は最大限注意） =====*/

/*===== フォント太さ（weight） =====*/
.bold {
	font-weight: 900;
}
.normal {
	font-weight: normal;
}
/*===== // フォント太さ（weight） =====*/










/** 11. 受講生の声 背景
 **************************************************************** **/
/* 受講生の声 背景 */
.bkimg_1 {
	/*
	background-image: url(../img/tohoku_jyuku_bkimg1.jpg);
	*/
	position: relative;
	background-color: #E3F2FD !important;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	padding:20px 0;
	margin:0 10px 10px 10px;
	border-radius: 30px 30px 30px 30px;
	z-index: 99;
}
.bkimg_1:after {
	content: "";
	position: absolute;
	top: -10px; left: 50%;
	margin-left: -10px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 0 10px 10px 10px;
	border-color: transparent transparent #E3F2FD transparent;
}
/* balloon-2 top */
#balloon-2-top {
	position: relative;
	display: inline-block;
	padding: 0 15px;
	width: auto;
	min-width: 115px;
	height: 40px;
	color: #F6F6F6;
	line-height: 40px;
	text-align: center;
	background: #19283C;
	z-index: 0;
}
#balloon-2-top:after {
	content: "";
	position: absolute;
	top: -10px; left: 50%;
	margin-left: -10px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 0 10px 10px 10px;
	border-color: transparent transparent #19283C transparent;
}
















/** 13. 背景画像
 **************************************************************** **/
#menu-wrap .bg {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-image: url(../img/side-nav_01.png);
	background-repeat: no-repeat;
	background-position: right bottom 5%;
	background-size:45% auto;
	z-index: -1;
}








/** 15. 丸の中の文字
 **************************************************************** **/
.maru {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	flex-flow: column; 
	vertical-align: middle;
	margin: 1px;
	text-align:center;
}

/* 円の大きさ */
.size_normal{
	width: 40px;
	height: 40px;
}


/* 文字の大きさ */
.letter3 {
	font-size: 0.6em;
}

.size_70{
	height: 70px;
	line-height: 70px;
	width: 70px;
}

/* 円と文字の色 */
.orange1 {
	color: #EA973F;
	background-color: #fff;
	-webkit-transition: 0.8s;
	-moz-transition: 0.8s;
	-o-transition: 0.8s;
	-ms-transition: 0.8s;
	transition: 0.8s;
}

.orange1:hover,.orange1:active {
	color: #fff;
	background-color: #EA973F;
}

/* 円と文字の色 */
.gray1 {
	color: #fff;
	background-color: #9E9E9E;
	-webkit-transition: 0.8s;
	-moz-transition: 0.8s;
	-o-transition: 0.8s;
	-ms-transition: 0.8s;
	transition: 0.8s;
}

.gray1:hover,.gray1:active {
	color: #fff;
	background-color: #9E9E9E;
}






/** 16. 角丸の画像・背景
 **************************************************************** **/
.kadomaru-top {
	border-radius: 20px 20px 0px 0px;
	margin: 0;
}

.kadomaru {
	border-radius: 20px 20px 20px 20px;
	margin: 20px 0;
}

.kadomaru_inner {
	padding: 20px;
}








/** 17. table
 **************************************************************** **/
td.c, th.c, tr.c {
	text-align: center;
}

th {
	font-size: 20px;
}

td {
	font-size: 17px;
}

@media (max-width: 768px) {
	th {
		font-size: 18px;
	}
	
	td {
		font-size: 14px;
	}
}

.nowrap {
	white-space: nowrap;
}

.upright {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
	-webkit-text-orientation: upright;
	text-orientation: upright;
}


.mini-calendar table td {
	position: relative;
}

.mini-calendar .calendar-labels1 {
	padding: 5px;
	right: -5px;
	bottom: -5px;
	text-align: right;
	top: -5px;
}

.mini-calendar td span.calender-label-p_border {
	font-size: 14px;
	line-height: 1.2;
	background-color: #D8107D;
	text-align: center;
	height: auto;
	margin-top: 0;
	margin-bottom: 0;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	padding: 5px;
	white-space: nowrap;
	color: #ffffff;
	border-radius: 5px;
}

.mini-calendar td span.calender-label-b_border {
	font-size: 14px;
	line-height: 1.2;
	background-color: #0067A4;
	text-align: center;
	height: auto;
	margin-top: 0;
	margin-bottom: 0;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	padding: 5px;
	white-space: nowrap;
	color: #ffffff;
	border-radius: 5px;
}

.mini-calendar td span.calender-label-p_border2 {
	font-size: 16px;
	line-height: 1.5;
	background-color: #D8107D;
	text-align: center;
	height: 230px;
	margin-top: 0;
	margin-bottom: 0;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	padding: 8px;
	white-space: nowrap;
	color: #ffffff;
	border-radius: 5px;
}

.mini-calendar td span.calender-label-b_border2 {
	font-size: 16px;
	line-height: 1.5;
	background-color: #0067A4;
	text-align: center;
	height: 350px;
	margin-top: 0;
	margin-bottom: 0;
	position:absolute;
	top:-50px;
	left:50%;
	transform:translate(-50%,-50%);
	padding: 8px;
	white-space: nowrap;
	color: #ffffff;
	border-radius: 5px;
}

@media (max-width: 768px) {
	.mini-calendar td span.calender-label-p_border2 {
		height: 230px;
	}

	.mini-calendar td span.calender-label-b_border2 {
		height: 320px;
		top:-30px;
	}
}

@media (max-width: 400px) {
	.mini-calendar td span.calender-label-p_border2 {
		height: 280px;
	}
}









/** 18. Vertical Timeline
 **************************************************************** **/
/*===== Vertical Timeline =====*/
#conference-timeline {
	position: relative;
	width: 100%;
	margin: 0 auto;
	z-index: 1;
	background: #e6e6e6;
}

#conference-timeline .timeline-start,
#conference-timeline .timeline-end {
	display: table;
	font-family: 'YakuHanJP' ,"Roboto", "Open Sans", "Helvetica Neue", Helvetica, "Arial","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "游ゴシック", YuGothic, sans-serif;
	font-size: 18px;
	font-weight: 900;
	text-transform: uppercase;
	background: #29b6f6;
	padding: 15px 23px;
	color: #fff;
	max-width: 30%;
	width: 100%;
	text-align: center;
	margin: 0;
}

#conference-timeline .conference-center-line {
	position: absolute;
	width: 3px;
	height: 82%;
	top: 0;
	left: 14%;
	background: #29b6f6;
	z-index: -1;
}

#conference-timeline .conference-timeline-content {
	position: relative;
	padding-top: 0px;
	padding-bottom: 30px;
}

.timeline-article {
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	margin: 20px 0;
}

.timeline-article .content-left-container,
.timeline-article .content-right-container {
	max-width: 80%;
	width: 100%;
}

.timeline-article .timeline-author {
	display: block;
	font-weight: 400;
	font-size: 14px;
	line-height: 24px;
	color: #242424;
	text-align: right;
}

.timeline-article .content-left,
.timeline-article .content-right {
	position: relative;
	width: auto;
	border: 1px solid #ddd;
	background-color: #fff;
	box-shadow: 0 1px 3px rgba(0,0,0,.03);
	padding: 27px 25px;
}

.timeline-article p {
	margin: 0 0 0 150px;
	padding: 0;
	font-weight: 400;
	color: #242424;
	font-size: 17px;
	line-height: 1.5;
	position: relative;
}

.timeline-article ul {
	margin: 0 0 0 60px;
	font-size: 18px;
	line-height: 1.5;
	position: relative;
}

.timeline-article p span.article-number {
	position: absolute;
	font-weight: 300;
	font-size: 30px;
	top: -5px;
	left: -150px;
	color: #29b6f6;
	line-height: 1.3;
}

.timeline-article .content-left-container {
	float: left;
}

.timeline-article .content-right-container {
	float: right;
}

.timeline-article .content-left:before,
.timeline-article .content-right:before{
	position: absolute;
	top: 5px;
	font-size: 23px;
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	color: #fff;
}

.timeline-article .content-left:before {
	content: "\f0da";
	right: -8px;
}

.timeline-article .content-right:before {
	content: "\f0d9";
	left: -8px;
}

.timeline-article .meta-date {
	position: absolute;
	top: 0;
	left: 15.1%;
	width: 110px;
	height: auto;
	margin-left: -80px;
	color: #fff;
	border-radius: 10px;
	background: #29b6f6;
}

.timeline-article .meta-date.non {
	position: absolute;
	top: 25px;
	left: 55px;
	width: 20px;
	height: 20px;
	margin-left: -10px;
	color: #fff;
	border-radius: 100%;
	background: #29b6f6;
}

.timeline-article .meta-date .date,
.timeline-article .meta-date .month {
	display: block;
	text-align: center;
	font-weight: 900;
}

.timeline-article .meta-date .date {
	font-size: 30px;
	line-height: 40px;
}

.timeline-article .meta-date .month {
	font-size: 18px;
	line-height: 10px;
}
/*===== // Vertical Timeline =====*/

/*===== Resonsive Vertical Timeline =====*/
@media only screen and (max-width: 830px) {
	#conference-timeline .timeline-start,
	#conference-timeline .timeline-end {
		margin: 0;
		max-width: 100%;
	}
	
	#conference-timeline .conference-center-line {
		margin-left: 0;
		left: 55px;
	}
	
	#conference-timeline .conference-center-line:before {
		content: "";
		position: absolute;
		left: -15px;
		bottom: -16px;
		border: 16px solid transparent;
		border-top: 16px solid #29b6f6;
	}
	
	.timeline-article .meta-date {
		margin-left: 0;
		left: 0px;
	}
	
	.timeline-article .meta-date.non {
		margin-left: 0;
		left: 23px;
	}
	
	.timeline-article .content-left-container,
	.timeline-article .content-right-container {
		max-width: 100%;
		width: auto;
		float: none;
		margin-left: 120px;
		min-height: 53px;
	}
	
	.timeline-article .content-left-container {
		margin-bottom: 20px;
	}
	
	.timeline-article .content-left,
	.timeline-article .content-right {
		padding: 10px 20px;
		min-height: 65px;
	}
	
	.timeline-article .content-left:before {
		content: "\f0d9";
		right: auto;
		left: -8px;
	}
	
	.timeline-article .content-right:before {
		/* display: none;*/
	}
}

@media only screen and (max-width: 540px) {
	.timeline-article p {
		margin: 0;
	}
	
	.timeline-article ul {
		margin: 0px;
		font-size: 14px;
		line-height: 24px;
		position: relative;
	}
	
	.timeline-article p span.article-number {
	position: absolute;
	font-weight: 300;
	font-size: 30px;
	top: 0px;
	left: 0px;
	color: #29b6f6;
	line-height: 1.3;
}

#conference-timeline .conference-center-line {
	margin-left: 0;
	left: 55px;
}

.timeline-article .meta-date {
	position: absolute;
	top: 0;
	left: 55px;
	width: 80px;
	height: auto;
	margin-left: -40px;
	color: #fff;
	border-radius: 10px;
	background: #29b6f6;
}

	.timeline-article .meta-date .date {
	font-size: 15px;
	line-height: 40px;
}

	.timeline-article p.article-text{
		margin-top:30px;
	}
	
	.timeline-article p.article-text .article-number{
		top:-30px;
	}
	
	.timeline-article .content-left-container,
	.timeline-article .content-right-container {
		max-width: 100%;
		width: auto;
		float: none;
		margin-left: 110px;
		min-height: 53px;
	}
}
/*===== // Resonsive Vertical Timeline =====*/








/** 19. Toggle
 **************************************************************** **/
.list-toggle-con {
	height: 0;
	overflow: hidden;
	border: solid 1px #e0e0e0;
}

.list-toggle li:first-child {
	border-top: 0px solid #ccc;
}

.list-toggle-a {
	display: block;
	position: relative;
	padding: 14px 50px 14px 10px;
	line-height: 1.6;
	line-height: 1.4;
	font-size: 12px;
	font-size: 1.2rem;
}

.list-toggle-a:after {
	font-family: 'Font Awesome 5 Free';
	/*content: " \f077";*/
	content: " \f067";
	/*     color: blue; */
	margin-top: -12px;
	position: absolute;
	right: 25px;
	top: 50%;
	width: 22px;
	text-indent: 0.25em;
	font-weight: 600;
}

.list-toggle-a.state-active::after {
	-webkit-transition: transform 0.3s ease;
	-moz-transition: transform 0.3s ease;
	-ms-transition: transform 0.3s ease;
	transition: transform 0.3s ease;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

ul.qanda li .q {
	color: #404040;
	text-indent: -1.5em;
	font-size: 1.2em;
	padding-left: 2em;
	font-weight: 400;
	background-color: #e0e0e0;
}

ul.qanda li .q:before {
	content: "Q.";
	color: #56A6DC;
	font-size: 1.5em;
	margin-right: 0em;
	font-weight: 700;
}

ul.qanda li .a {
	text-indent: -1.2em;
	line-height: 1.6em;
	font-size: 1.1em;
	padding: 0 0 .4em 2.5em;
	margin-top: 1rem;
	margin-left: 0.5rem;
	margin-right: 0.5em;
}

ul.qanda li .a:before {
	display: inline-block;
	content: "A.";
	color: #EA973F;
	font-size: 1.5em;
	margin-right: .3em;
	font-weight: 700;
}

ul:not(.browser-default) li {
	border: solid 0px #ccc;
}

ul li {
	font-size: 1.2rem;
}









/** 20. Chart
 **************************************************************** **/
.myChart,.myChart2 {
	position: relative;
}

.myChart p{
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	text-align: center;
	top: 45%;
	z-index: 9;
}

.myChart2 p{
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	text-align: center;
	top: 40%;
	z-index: 9;
	line-height: 1.5;
}

@media only screen and (max-width: 540px) {
	.myChart p {
		position: absolute;
		left: 0;
		right: 0;
		margin: auto;
		text-align: center;
		top: 52%;
		line-height: 1.2;
	}
	.myChart2 p {
		position: absolute;
		left: 0;
		right: 0;
		margin: auto;
		text-align: center;
		top: 45%;
		line-height: 1.2;
	}
}

.myChart .bk_w,.myChart2 .bk_w{
	width: 250px;
	height: 250px;
	background: #fff;
	border-radius: 50%;
	top: 29%;
	text-align: center;
	z-index: 8;
}

.myChart .bk_w2,.myChart2 .bk_w2{
	width: 480px;
	height: 480px;
	background: #fff;
	border-radius: 50%;
	top: 5%;
	text-align: center;
	z-index: 8;
}

.myChart .bk_w3,.myChart2 .bk_w3{
	width: 480px;
	height: 25px;
	background: #fff;
	top: 1%;
	text-align: center;
	z-index: 8;
}

#myChart,#myChart2 {
	z-index: 99;
	position: relative;
}



@media only screen and (max-width: 530px) {
	.myChart .bk_w2,.myChart2 .bk_w2{
		width: 460px;
		height: 460px;
		background: #fff;
		border-radius: 50%;
		top: 9%;
		text-align: center;
		z-index: 8;
	}

	.myChart .bk_w3,.myChart2 .bk_w3{
		width: 480px;
		height: 50px;
		background: #fff;
		top: 1%;
		text-align: center;
		z-index: 8;
	}
}

@media only screen and (max-width: 500px) {
	.myChart,.myChart2{
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.myChart .bk_w2,.myChart2 .bk_w2{
		display: none;
	}
}






/** 21. Moving arrow
 **************************************************************** **/
.arrow-3 {
	position: relative;
	margin-bottom: 140px;
}

.arrow-3 a {
	padding-top: 80px;
}

.arrow-3 a span {
	position: absolute;
	top: 0;
	left: 50%;
	width: 24px;
	height: 24px;
	margin-left: -12px;
	border-left: 1px solid #DD5E89;
	border-bottom: 1px solid #EB3349;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-animation: sdb 2s infinite;
	animation: sdb 2s infinite;
	opacity: 0;
	box-sizing: border-box;
}

.arrow-3 a span:nth-of-type(1) {
	-webkit-animation-delay: 0;
	animation-delay: 0;
}

.arrow-3 a span:nth-of-type(2) {
	top: 16px;
	-webkit-animation-delay: .15s;
	animation-delay: .15s;
}

.arrow-3 a span:nth-of-type(3) {
	top: 32px;
	-webkit-animation-delay: .3s;
	animation-delay: .3s;
}

@-webkit-keyframes sdb {
	0% {
		opacity:0;
	}
	50% {
		opacity:1;
	}
	100% {
		opacity:0;
	}
}
@keyframes sdb {
	0% {
		opacity:0;
	}
	50% {
		opacity:1;
	}
	100% {
		opacity:0;
	}
}







/*************soical icons**********/
.social-1{
	margin: 0;
	padding: 0;
	position: relative;
	top: 7px;
}

.social-1 a i {
	position: absolute;
	right: 60px;
	top:5px;
	width:33px;
	height: 33px;
	line-height: 30px;
	text-align: center;
	color:#fff;
	font-size: 15px;
	-webkit-transition: all 200ms ease-in;
	-o-transition: all 200ms ease-in;
	-moz-transition: all 200ms ease-in;
	transition: all 200ms ease-in;
}

.social-1 a i:hover {
	opacity: 0.8;
}

.social-1 a i.fa-facebook {
	background-color: #3b5998;
}

.social-1 a i.fa-twitter {
	background-color: #0084b4;
}

.social-1  a i.fa-instagram {
	background-color: #ea4c89;
}


@media only screen and (min-width: 601px) {
.social-1 a i {
	top:8px;
}
}





/** 22. back to home
 **************************************************************** **/
 a.btn_home {
	display: inline-block; 
	min-width: 120px;
	padding: 8px 24px;
	margin: 10px 0;
	text-align: center;
	text-decoration: none;
	background: transparent;
	border-color: rgba(66,172,194,0.90);
	border-style: solid;
	border-width: 1px;
	color: rgba(66,172,194,0.90);
	-webkit-border-radius: 5px;
	border-radius: 5px;
	font-size: 14px;
}

 a.btn_home:hover {
	background-color: rgba(66,172,194,0.90); 
	color: #fff; 
	cursor: pointer;
}





/** 23. Add indent
 **************************************************************** **/
span.rev_ind {					/* spanブロック化 */
	display: block;
	padding: 0 0 0 0.5em;
	text-indent: -0.5em;
}

span.rev_ind i {
	text-indent: 0;
}

span[class*="ind"] i { /* セレクタ名の部分一致 */
	text-indent: 0;
}

span[class*="ind"] a.btn { /* セレクタ名の部分一致 */
	text-indent: 0;
}

span.ind_005 {					/* spanブロック化 */
	display: block;
	padding-left: 0.5em;
	text-indent: -0.5em;
}

span.ind_01 {					/* spanブロック化 */
	display: block;
	padding-left: 1em;
	text-indent: -1em;
}

span.ind_012 {					/* spanブロック化 */
	display: block;
	padding-left: 1.2em;
	text-indent: -1.2em;
}

span.ind_015 {					/* spanブロック化 */
	display: block;
	padding-left: 1.5em;
	text-indent: -1.5em;
}

span.ind_02 {					/* spanブロック化 */
	display: block;
	padding-left: 2em;
	text-indent: -2em;
}

span.ind_025 {					/* spanブロック化 */
	display: block;
	padding-left: 2.5em;
	text-indent: -2.5em;
}

span.ind_03 {					/* spanブロック化 */
	display: block;
	padding-left: 3em;
	text-indent: -3em;
}

span.ind_04 {					/* spanブロック化 */
	display: block;
	padding-left: 4em;
	text-indent: -4em;
}

span.ind_05 {					/* spanブロック化 */
	display: block;
	padding-left: 5em;
	text-indent: -5em;
}

span.ind_06 {					/* spanブロック化 */
	display: block;
	padding-left: 6em;
	text-indent: -6em;
}

.rev_ind {					/* spanブロック化 */
	display: block;
	padding: 0 0 0 0.5em;
	text-indent: -0.5em;
}

[class*="ind"] i { /* セレクタ名の部分一致 */
	text-indent: 0;
}

[class*="ind"] a.btn { /* セレクタ名の部分一致 */
	text-indent: 0;
}

.ind_005 {
	display: block;
	padding-left: 0.5em;
	text-indent: -0.5em;
}

.ind_01 {
	display: block;
	padding-left: 1em;
	text-indent: -1em;
}

.ind_012 {
	display: block;
	padding-left: 1.2em;
	text-indent: -1.2em;
}

.ind_015 {
	display: block;
	padding-left: 1.5em;
	text-indent: -1.5em;
}

.ind_02 {
	display: block;
	padding-left: 2em;
	text-indent: -2em;
}

.ind_025 {
	display: block;
	padding-left: 2.5em;
	text-indent: -2.5em;
}

.ind_03 {
	display: block;
	padding-left: 3em;
	text-indent: -3em;
}

.ind_04 {
	display: block;
	padding-left: 4em;
	text-indent: -4em;
}

.ind_05 {
	display: block;
	padding-left: 5em;
	text-indent: -5em;
}

.ind_06 {
	display: block;
	padding-left: 6em;
	text-indent: -6em;
}
















/* moduleタイトル */
.module-title {
	margin: 0;
	padding: 0;
}

.module-black {
	background-color: #333;
	color: #fff;
}

.module_inner {
	padding: 20px 20px;
}
@media screen and (max-width: 768px){
	.module_inner {
		padding: 10px 20px;
	}
}

#content .module-title h2 {
	margin: 0 -4px 20px 0;
	letter-spacing: 4px;
	font-size: 28px;
	color: #3333333;
	border-bottom: 2px dashed #e63c96;
	display:inline-block;
	padding: 0 10px 5px 10px;
	text-indent: 0em;
}

#content .module-title h2::before {
	display: none;
}

.module-title p {
	font-size: 16px;
}

.module,
.module-sm {
	padding: 30px 0 20px 0;
}

.module-sm .container {
	width: 80%;
}

.module-sm .container .content_inner {
	background: #fff;
}

.client.after{
	height: 100%;
	background: #5F7B85;
}

.client .content_inner{
	margin: 0 20px 20px;
}

.owl-carousel .owl-stage-outer{
	border: 3px solid #5F7B85;
	background: #5F7B85;
}


.owl-stage {
	display: flex;
	justify-content: center;
	align-items: center;
}

.module-sm .container .title {
	background: #5F7B85;
	position: relative;
	padding: 20px;
}

.module-sm .container .title .col {
	position: relative;
	height: 100%;
}

.module-sm .container .title .name {
	color: #fff;
	position: absolute;
	font-size: 1.2rem;
	bottom: 10px;
	left: 10px;
}

.client.after .text {
	font-style: normal;
	font-weight: 500;
	font-size: 1.5rem;
	color: #333;
}



@media (max-width: 991px) {
	.client.after .title {
		font-size: 4vmin;
	}

	.client.after .text {
		font-size: 1.5rem;
	}
}

@media (max-width: 768px) {
	.module,
	.module-sm {
		padding: 15px 0 10px 0;
	}

	.client.after .title {
		font-size: 3.2vmin;
	}
	.module-sm .container .title .name {
	color: #fff;
	position: relative;
	font-size: 1.2rem;
	margin: 10px;
	}

	.client.after .text {
		font-size: 1.5rem;
	}


}

@media (max-width: 480px) {
	.client.after {
		padding-right: 0px;
	}

	.client.after .title {
		font-size: 4.9vmin;
	}

	.client.after .text {
		font-size: 1.2rem;
	}
}




.module-gray {
	background-color: #EEEEEE;
}

.module-yellow {
	background-color: #ffee00;
}

.kan412 {
	font-family: kan412typos-std, sans-serif;
}

h2.kan412 {
	font-family: kan412typos-std, sans-serif;
	vertical-align: middle;
}



/* page2top
---------------------------------------------------- */
#page2top{
	line-height: 40px;
	text-align: center;
	font-weight: bold;
	color: #fff;
	font-size: 20px;
	text-decoration: none;
	position:fixed;
	bottom:60px;
	right:45%;
	z-index: 999;
	display:none;
}

#page2top a {
	text-decoration: none;
	background: rgba(255,255,255,0.50);
	color: #333;
	width:40px;
	height: 40px;
	line-height: 0;
	padding: 0.4em 0;
	text-align: center;
	display: block;
	font-weight: normal !important;
	filter:alpha(opacity=50);
	opacity:0.5;
	-moz-opacity: 0.5;
	transition: all 0.3s;
	border-radius: 50%;
	border: solid 1px #333;
}

#page2top a:hover{
	text-decoration:none;
	opacity: 1;
	color:#333;
}

p#page2top{
	margin: 0 0 0px;
}

@media all and (max-width: 768px) {
	#page2top{
		bottom:60px;
	}
}


/** 24. 続きを読むボタン
 **************************************************************** **/

a.btn_readmore{
	font-family: "游ゴシック体", YuGothic, "YuGothic M", sans-serif;
	display: inline-block;
	padding: 8px 0 7px;
	margin: 15px 0;
	color:rgba(66,172,194,0.90);
	text-align: center;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	background:transparent;
	border:1px solid rgba(66,172,194,0.90);
	font-size: 14px;
}


a.btn_readmore:hover {
	background-color:rgba(66,172,194,0.90); 
	color:#fff; 
	cursor:pointer;
}





/** 25. whats new
 **************************************************************** **/

/* リスト用アイコン指定 */

.ic_list p {
	padding-left: 24px;
	line-height: 1.4;
	font-size: 95%;
}

.ic_list h5.list-group-item-heading {
	padding-left: 24px;
	min-height: 20px;
	font-size: 14.5px;
	font-weight: 600;
	margin-bottom: 5px;
	margin-top: 5px;
}

.ic_list .ic_info h5 {
	background: url(/c/images/icon/info.gif) no-repeat 0 0;
}

.ic_list .ic_store h5 {
	background: url(/c/images/icon/store.gif) no-repeat 0 0;
}

.ic_list .ic_shopping h5 {
	background: url(/c/images/icon/shopping.gif) no-repeat 0 0;
}

.ic_list .ic_foodservice h5 {
	background: url(/c/images/icon/foodservice.gif) no-repeat 0 0;
}

.ic_list .ic_travel h5 {
	background: url(/c/images/icon/travel.gif) no-repeat 0 0;
}

.ic_list .ic_book h5 {
	background: url(/c/images/icon/book.gif) no-repeat 0 0;
}

.ic_list .ic_event h5 {
	background: url(/c/images/icon/event.gif) no-repeat 0 0;
}

.ic_list .ic_career h5 {
	background: url(/c/images/icon/career.gif) no-repeat 0 0;
}

.ic_list .ic_pay h5 {
	background: url(/c/images/icon/pay.gif) no-repeat 0 0;
}

.ic_list .ic_important h5 {
	background: url(/c/images/icon/important.gif) no-repeat 0 0;
}

.ic_list .ic_newlife h5 {
	background: url(/c/images/icon/newlife.gif) no-repeat 0 0;
}

.ic_list .ic_document h5 {
	background: url(/c/images/icon/blog_tohoku.png) no-repeat 0 0;
	background-size: 20px 20px;
}




h5 .list-group-item-date {
    font-size: 12px;
    color: #555;
}




/** 26. under line
 **************************************************************** **/
.under {
	border-bottom: solid 3px #87CEFA;
}
.under.blueline {
	border-bottom: solid 3px #87CEFA;
}
.under.redline {
	border-bottom: solid 3px #b11216;
}
.under.pinkline {
	border-bottom: solid 3px #E63C97;
}
.under.grayline {
	border-bottom: solid 3px #5D5D5D;
}


/** 27. 文字のサイズ変更
 **************************************************************** **/


.md {
	font-size: 200%;
}

.bg {
	font-size: 400%;
}

.sm {
	font-size: 140%;
}

.ssm {
	font-size: 140%;
}

@media all and (max-width: 515px) {


.bg {
	font-size: 5.6vw;
}

.md {
	font-size: 4.7vw;
}

.sm {
	font-size: 4.0vw;
}

.ssm {
	font-size: 3.0vw;
}

}