html {
	font-family: 'Hiragino Kaku Gothic ProN', YuGothic, Meiryo, sans-serif;
	font-size: 62.5%;
}
body {
	color: #555555;
	margin: 0;
	padding: 0;
	animation: fadeIn 2s ease 0s 1 normal;
	-webkit-animation: fadeIn 3s ease 0s 1 normal;
}
 @keyframes fadeIn {
 0% {
opacity: 0
}
 100% {
opacity: 1
}
}
 @-webkit-keyframes fadeIn {
 0% {
opacity: 0
}
 100% {
opacity: 1
}
}
/* common */
div::after {
	display: block;
	clear: both;
	height: 0;
	line-height: 0;
	visibility: hidden;
	content:"";
}
li {
	list-style: none;
}
a {
	text-decoration: none;
	color: #555555;
}

figure {
	margin:0 0;
}


/* header */

header {
	width: 1000px;
	margin: 0 auto;
	padding-top: 30px;
}
.logo {
	float: left;
	margin-right: 25px;
	margin-top: -7px;
}
h1 {
	float: left;
	font-size: 1.6rem;
	display: inline-block;
	margin-right: 99px;
}
.btn-contact {
	float: left;
	display: inline-block;
}
.btn-contact a {
	background: #c01443;
	width: 168px;
	height: 35px;
	display: inline-block;
	color: #fff;
	text-decoration: none;
	line-height: 32px;
	font-size: 1.4rem;
	text-align: center;
	box-sizing: border-box;
	border: 2px solid #c01443;
}
.btn-contact a:hover {
	background: none;
	border: 2px solid #c01443;
	color: #c01443;
}
.global-navi ul {
	display: flex;
	width: 1000px;
	margin: 8px 0 0 -40px;
	clear: both;
	height: 50px;
}
.global-navi .global-navi_item {
	width: 25%;
}
.global-navi .global-navi_item a {
	display: block;
	width: 100%;
	font-size: 1.6rem;
	height: 50px;
	line-height: 50px;
	text-align: center;
	box-sizing: border-box;
	position: relative;
}
.global-navi .global-navi_item a:before {
	content: "";
	width: 1px;
	height: 20px;
	background: #cccccc;
	position: absolute;
	top: 16px;
	left: 0;
}
.global-navi .global-navi_item:last-child a:after {
	content: "";
	width: 1px;
	height: 20px;
	background: #cccccc;
	position: absolute;
	top: 16px;
	right: 0;
}
.global-navi .global-navi_item .global-navi_text {
	position: relative;
	display: inline-block;
	margin: 0;
	padding: 0;
}
.global-navi .global-navi_item .global-navi_text:before {
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	display: inline-block;
	width: 0;
	height: 2px;
	background: #555555;
	transition: 0.2s;
}
.global-navi .global-navi_item .global-navi_text:hover:before {
	width: 100%;
}
/* main */
.main h2 {
	font-size: 2.2rem;
	margin-bottom: 28px;
	text-align: center;
}
.main .lead {
	margin-bottom: 50px;
	font-size: 1.6rem;
	text-align: center;
}
.main-img {
	background: url(../images/main.jpg) center no-repeat;
	height: 516px;
	margin-top: 5px;
	margin-bottom: 40px;
	text-indent: -9999px;
}
.main-inner {
	width: 988px;
	margin: 0 auto;
}
.main-inner-small {
	width: 888px;
	margin: 0 auto;
}
.box01-outer.first {
	margin-bottom: 30px;
}
.box01 {
	width: 328px;
	float: left;
	margin-right: 2px;
	background: #f7f7f9;
}
.box01:last-child {
	margin-right: 0;
}
.main .text01 {
	font-size: 1.6rem;
	text-align: center;
	margin: 14px 0 10px;
}
.main .text02 {
	font-size: 1.3rem;
	text-align: center;
}
.main .text03 {
	font-size: 1.4rem;
	text-align: center;
	margin: 21px 0 10px;
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}
.box01 table {
	margin: 0 30px 30px;
	width: 268px;
	border: 1px solid #dddddd;
	border-collapse: collapse;
}
.box01 table td {
	border: 1px solid #dddddd;
	width: 33.333%;
	text-align: center;
	vertical-align: middle;
	height: 90px;
	font-size: 1.4rem;
	font-weight: bold;
}
.bg-grey {
	background: #f1f1f1;
	margin: 80px 0;
	font-size: 1.4rem;
	color: #232323;
}
.bg-grey.lg {
	padding: 80px 0;
}
.bg-grey.top-middle {
	padding: 60px 0 80px;
}
.bg-grey.middle {
	padding: 60px 0;
}
.btn-area:first-child {
	width: 495px;
	padding: 60px 0 60px 20px;
	box-sizing: border-box;
	float: left;
}
.btn-area:last-child {
	width: 493px;
	padding: 60px 0 60px 26px;
	box-sizing: border-box;
	float: left;
}
.border {
	border-right: 1px solid #c1bfbf;
	padding-right: 30px;
}
.btn-text {
	float: left;
	width: 262px;
}
/* 201905追加 */
.btn-area:first-child .btn-text {
	margin-top:0;
}
.btn-area:last-child .btn-text {
	float: left;
	width: 248px;
}
.graph-area {
	padding-left: 180px;
}
.graph-img {
	float: left;
	margin-right: 85px;
}
.graph-area ul {
	padding-top: 20px;
	font-size: 1.6rem;
	font-weight: bold;
	float: left;
	margin-left: -46px;
}
.graph-area ul li {
	margin-bottom: 20px;
	position: relative;
}
.graph-area ul li span {
	position: absolute;
	top: 0;
	left: -30px;
}
.graph-img02 {
	text-align: center;
	margin: 60px 0 40px;
}
.btn02 {
	margin: 0 auto;
	text-align: center;
}
.logo-area {
	float: left;
	display: inline-block;
	margin-right: 35px;
}
.about-box {
	margin-bottom: 50px;
}
.about-box .text-area {
	font-size: 1.4rem;
}
.about-box .text-area p:first-child {
	margin-bottom: -10px;
	font-size: 1.6rem;
}
.btn-section {
	text-align: center;
	margin: 70px 0 0;
}
.btn-section a:hover img {
	opacity: 0.7;
}
/* main-s */
.content { margin: 0 auto; width: 800px;}
.main-s {
	width: 800px;
	margin: 0 auto;
	padding-top: 20px;
	padding-bottom: 135px;
}
.main-s p {
	font-size: 1.6rem;
	line-height: 2;
	margin-bottom: 55px;
}
.main-s p.text01 {
	margin-bottom: 25px;
}
.main-s p.text02 {
	text-align: left;
	margin-bottom: 25px;
	border-bottom: 1px solid #dddddd;
	padding-bottom: 23px;
}
.main-s p.text03 {
	text-align: left;
	margin-bottom: 25px;
}
.main-s h2 {
	font-size: 2.6rem;
	font-weight: bold;
	text-align: center;
}
.main-s h2 span {
	position: relative;
}
.main-s h2 span:before {
	position: absolute;
	top: 13px;
	left: -30px;
	width: 20px;
	height: 1px;
	background: #555555;
	display: block;
	content: '';
}
.main-s h2 span:after {
	position: absolute;
	top: 13px;
	right: -30px;
	width: 20px;
	height: 1px;
	background: #555555;
	display: block;
	content: '';
}
.main-s h3 {
	font-size: 2.2rem;
	font-weight: bold;
}
.main-s h3 span.line {
	position: relative;
	display: block;
}
.main-s h3 span span {
	background: #FFFFFF;
	position: relative;
	z-index: 99;
	padding-right: 10px;
}
.main-s h3 span.line:after {
	position: absolute;
	bottom: 7px;
	right: 0;
	width: 100%;
	height: 1px;
	background: #555555;
	display: block;
	content: '';
}
.main-s h4 {
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: -10px;
}
/* footer */
footer {
	background: url(../images/bg-footer.png) center 0 no-repeat #dddddd;
	padding-top: 117px;
	max-width: 1300px;
	margin: 0 auto;
	padding-bottom: 46px;
}
footer .footer-inner {
	width: 988px;
	margin: 0 auto;
}
footer .info {
	font-size: 1.2rem;
	float: left;
	padding-left: 70px;
	width: 488px;
	margin-top: -15px;
}
footer .text04 {
	font-size: 1.4rem;
	font-weight: bold;
}
footer .link {
	float: left;
	width: 430px;
}
footer .link ul {
	margin-left: -20px;
}
footer .link li {
	float: left;
	background: url(../images/icon-arrow.png) 0 3px no-repeat;
	padding-left: 19px;
	margin-right: 20px;
	margin-top: 30px;
}
footer .link li a:hover {
	text-decoration: underline;
}
.btn-top {
	float: left;
	display: inline-block;
	margin-right: 21px;
	width: 230px;
	height: 40px;
	display: inline-block;
	color: #232323;
	text-decoration: none;
	line-height: 40px;
	font-size: 1.4rem;
	text-align: center;
	box-sizing: border-box;
	border: 2px solid #232323;
	position: relative;
}
.btn-top a {
	position: absolute;
	top: 0;
	left: 0;
	width: 230px;
	height: 40px;
	margin-top: -2px;
	margin-bottom: -6px;
	margin-left: -2px;
}
.btn-top a:hover {
	background: #fff;
	opacity: 0.5;
}
.btn-contact-f {
	float: left;
	display: inline-block;
}
.btn-contact-f a {
	background: #c01443;
	width: 172px;
	height: 40px;
	display: inline-block;
	color: #fff;
	text-decoration: none;
	line-height: 36px;
	font-size: 1.4rem;
	text-align: center;
	box-sizing: border-box;
	border: 2px solid #c01443;
}
.btn-contact-f a:hover {
	background: none;
	border: 2px solid #c01443;
	color: #c01443;
}
address {
	font-style: normal;
	text-align: center;
	font-size: 1rem;
	margin-top: 16px;
}
/* button */
.button {
	display: inline-block;
	width: 180px;
	height: 40px;
	text-align: center;
	text-decoration: none;
	line-height: 40px;
	outline: none;
	font-size: 1.4rem;
}
.button::before, .button::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button, .button::before, .button::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.button.button01 {
	position: relative;
	z-index: 2;
	background: url(../images/btn01-bg.jpg) 0 0 no-repeat;
	color: #333;
	overflow: hidden;
}
.button.button01:hover {
	color: #fff;
}
.button.button01::after {
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
}
.button.button01:hover::after {
	top: 0;
	left: 0;
	background: #011f2e;
	opacity: 0.5;
}
.button.button02 {
	position: relative;
	z-index: 2;
	background: url(../images/btn02-bg.jpg) 0 0 no-repeat;
	color: #c01443;
	overflow: hidden;
}
.button.button02:hover {
	color: #fff;
}
.button.button02::after {
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
}
.button.button02:hover::after {
	top: 0;
	left: 0;
	background: #c01443;
	opacity: 0.8;
}
.button.button03 {
	position: relative;
	z-index: 2;
	background: #232323;
	color: #fff;
	overflow: hidden;
	width: 360px;
	height: 60px;
	line-height: 60px;
	font-size: 1.6rem;
}
.button.button03:hover {
	color: #fff;
}
.button.button03::after {
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
}
.button.button03:hover::after {
	top: 0;
	left: 0;
	background: #c01443;
}
/* contact__box */
.contact__box {
	padding-top: 25px;
	text-align: center;
	border-top: 1px solid #555555;
}
.contact__box p:first-of-type {
	font-size: 18px;
	margin-bottom: 20px;
}
.contact__box p:nth-of-type(2) {
	font-weight: bold;
	margin-bottom: 23px;
}
.contact__box p:nth-of-type(2).contact__box__button--agree a:before {
	width: 16px;
	height: 15px;
	margin-right: 10px;
	border: 0;
	background-image: url(../images/sprite.png);
	background-position: -71px -53px;
}
.contact__box p:nth-of-type(2).contact__box__button--agree + ul:after {
	display: none;
}
.contact__box p:nth-of-type(2).contact__box__button--agree + ul a {
	background-color: #333;
}
.contact__box p:nth-of-type(2).contact__box__button--agree + ul a:hover {
	background-color: #9d1238;
}
.contact__box p a {
	display: inline-block;
	-webkit-transition: color .2s ease-out;
	transition: color .2s ease-out;
	text-decoration: none;
	color: #000;
}
.contact__box p a:before {
	position: relative;
	top: 2px;
	display: inline-block;
	width: 8px;
	height: 8px;
	margin-right: 12px;
	content: '';
	border: 3px solid #ddd;
}
.contact__box p a:hover {
	color: #c01443;
}
.contact__box > ul {
	font-size: 0;
	position: relative;
	margin: 0 auto 53px;
	margin-left: -40px;
}
.contact__box > ul:after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
}
.contact__box > ul li {
	font-size: 16px;
	line-height: 60px;
	display: inline-block;
}
.contact__box ul a {
	display: block;
	width: 360px;
	-webkit-transition: background-color .2s ease-out;
	transition: background-color .2s ease-out;
	text-decoration: none;
	color: #fff;
	background-color: #aeaeae;
}
.contact__box p:nth-of-type(3) {
	margin-bottom: 23px;
}
.contact__box dl:not(:last-of-type) {
	display: inline-block;
	box-sizing: border-box;
	width: 285px;
	height: 190px;
	margin: 0 7px 23px;
	padding: 18px 23px 0;
	text-align: left;
	vertical-align: top;
	border: 2px solid #f1f1f1;
}
.contact__box dl:not(:last-of-type) dt {
	font-weight: bold;
}
.contact__box p:last-of-type {
	margin-bottom: 0;
}
.contact__box dl:last-of-type {
	display: table;
	margin: 0 auto;
	text-align: left;
}
.contact__box dl:last-of-type dt {
	float: left;
	clear: both;
	width: 8em;
}
.contact__box dl:last-of-type dd {
	float: left;
}
/* fadeinup */

.fadeInDown {
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1s;
	-ms-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-name: fadeInDown;
	animation-name: fadeInDown;
	visibility: visible !important;
}
@-webkit-keyframes fadeInDown {
 0% {
opacity: 0;
-webkit-transform: translateY(20px);
}
 100% {
opacity: 1;
-webkit-transform: translateY(0);
}
}
@keyframes fadeInDown {
 0% {
opacity: 0;
-webkit-transform: translateY(20px);
-ms-transform: translateY(20px);
transform: translateY(20px);
}
 100% {
opacity: 1;
-webkit-transform: translateY(0);
-ms-transform: translateY(0);
transform: translateY(0);
}
}

.over:hover { opacity: 0.7;}

/* movie 追加 */
.archive-wrapper {
	text-align: center;
	font-size: 0;
}
.archive-text {
	display: inline-block;
	vertical-align: top;
	margin: 12px 20px 0 0;
	font-size: 1.4rem;
}
.archive-item {
	display: inline-block;
	vertical-align: top;
	margin: 0 0 0 20px;
}
.button-simple {
	display: block;
	position: relative;
	z-index: 2;
	background: #fff;
	color: #c01443;
	overflow: hidden;
	width: 330px;
	padding: 12px 0 12px;
	line-height: 1;
	font-size: 1.4rem;
	text-align: center;
	border: 2px solid #e07190;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.button-simple .icon-blank {
	display: inline-block;
	vertical-align: middle;
	content: "";
	width: 10px;
	height: 10px;
	margin-left: 10px;
	background: url("../images/icon_blank.png") no-repeat 0 0;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.button-simple:hover .icon-blank {
	background: url("../images/icon_blank_white.png") no-repeat 0 0;
}
.button-simple_text {
	display: inline-block;
	vertical-align: middle;
}
.button-simple:before,
.button-simple:after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.button-simple:after {
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
}
.button-simple:hover {
	color: #FFF;
	border-color: #c01443;
}
.button-simple:hover:after {
	top: 0;
	left: 0;
	background: #c01443;
}

.archive-meta {
	display: block;
	margin-top: 9px;
	text-align: right;
	font-size: 1.1rem;
}
.youtube-title {
	max-width: 640px;
	margin: 0 auto 10px;
	font-size: 1.6rem;
	color: #555;
}
.youtube-wrapper {
	max-width: 640px;
	margin-left: auto;
	margin-right: auto;
}
.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
.youtube-item {
	margin-bottom: 46px;
}
.hero {
	position: relative;
	min-height: 255px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.hero:before {
	content: "";
	display: block;
	padding-top: 19.61%;
}
.hero-movie {
	margin-top: 25px;
	margin-bottom: 72px;
	background-image: url(../images/hero_movie.jpg);
}
.hero_heading {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	letter-spacing: .2rem;
	text-align: center;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	font-size: 2.8rem;
	font-weight: bold;
	text-shadow: rgba(255,255,255,.4) 1px 1px 50px, rgba(255,255,255,.4) -1px 1px 50px, rgba(255,255,255,.4) 1px -1px 50px, rgba(255,255,255,.4) -1px -1px 50px, rgba(255,255,255,.4) 1px 1px 20px, rgba(255,255,255,.4) -1px 1px 20px, rgba(255,255,255,.4) 1px -1px 20px, rgba(255,255,255,.4) -1px -1px 20px, rgba(255,255,255,.2) 1px 1px 10px, rgba(255,255,255,.2) -1px 1px 10px, rgba(255,255,255,.2) 1px -1px 10px, rgba(255,255,255,.2) -1px -1px 10px;
}


.news-section {
	display: flex;
	align-items: center;
	margin-bottom: 70px;
	padding-bottom: 47px;
	border-bottom: 1px solid #dddddd;
}
.news-section .news_heading {
	position: relative;
	width: 160px;
	padding-left: 30px;
	box-sizing: border-box;
	font-weight: bold;
	font-size: 1.6rem;
	color: #555555;
}
.news_heading:after {
	position: absolute;
	top: 50%;
	right: 0;
	content: "";
	display: block;
	width: 1px;
	height: 85px;
	margin-top: -42px;
	background: #dddddd;
}
.news-group {
	flex: 1;
	padding: 0 68px 0 58px;
}
.news-group .news {
	border-bottom: 1px dotted #c1bfbf;
}
.news-group .news:last-child {
	border-bottom: none;
}
.news {
	display: flex;
	padding: 14px 0;
}
.news_data {
	width: 112px;
	margin: 0;
	padding: 0;
	font-size: 1.4rem;
	color: #c01443;
}
.news_text {
	flex: 1;
	margin: 0;
	padding: 0;
	font-size: 1.4rem;
	line-height: 1.5;
	font-weight: normal;
}
.news_text a {
	text-decoration: underline;
}
.news_text a:hover {
	text-decoration: none;
}
.safe-point-section {
	margin-bottom: 77px;
	padding-bottom: 80px;
	border-bottom: 1px solid #dddddd;
}
.safe-point {
	display: flex;
	justify-content: center;
	margin-bottom: 60px;
}
.safe-point_item a{
	display: flex;
	align-items: center;
	width: 265px;
	height: 76px;
	margin: 0 10px;
	background: #c01443;
	color: #ffffff;
}
.safe-point_number {
	position: relative;
	width: 78px;
	text-align: center;
}
.safe-point_number:after {
	position: absolute;
	top: 50%;
	right: 0;
	content: "";
	display: block;
	width: 1px;
	height: 43px;
	margin-top: -22px;
	background: #ffffff;
	font-size: 1.2rem;
}
.safe-point_number-large {
	display: block;
	line-height: 1;
	font-size: 3.0rem;
}
.safe-point_text {
	flex: 1;
	text-align: center;
	font-weight: bold;
	font-size: 1.6rem;
}
.btn-white {
	position: relative;
	overflow: hidden;
	display: block;
	width: 265px;
	margin-left: auto;
	margin-right: auto;
	padding: 10px 0;
	font-size: 1.4rem;
	line-height: 1;
	text-align: center;
	border: 2px solid #232323;
	-webkit-transition: all .3s;
    transition: all .3s;
}
.btn-white:after {
	position: absolute;
    z-index: -1;
    display: block;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	content: '';
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.btn-white:hover {
	color: #ffffff;
}
.btn-white:hover:after {
    left: 0;
    background: #232323;
}

/*---- ダウンロードページ 追加 ----*/

.main-s.download p{
	margin-bottom:0;
}

.download .privacypolicy-box {
	border:1px solid #ccc;
	padding:10px 30px;
	margin:20px 0;
}
.download .privacypolicy-box h3 {
	font-size:1.4rem;
}
.download .privacypolicy-box p {
	font-size:1.2rem;
	margin-bottom:1em;
}

/*---- ニュースページ 追加 ----*/

.tc {text-align:center; }
.main-s.news_page dt,
.main-s.news_page dd,
.main-s.news_page p,
.main-s.news_page li,
.main-s.news_page th,
.main-s.news_page td {
	font-size:1.6rem;
}

.main-s.news_page p {
	margin-bottom:3rem;
}

.main-s.news_page .bold {
	font-weight:bold;
}

.main-s.news_page dt {
	font-weight:bold;
	padding-top:1rem;
	margin-bottom:1em;
	text-align:right;
}

.main-s.news_page dd {
	margin:0 0 3rem 0;
	line-height:1.75;
}

.main-s.news_page ul.flexbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.main-s.news_page ul.flexbox.space-between  {
  -webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;
  margin-left:0;
  padding-left:0;
}

.main-s.news_page .w380 {
	width:380px;
}

.main-s.news_page .within img {
    max-width: 100%;
    height: auto;
}

.main-s.news_page .mb20 { margin-bottom:20px; }
.main-s.news_page .mr20 { margin-right:20px; }
.main-s.news_page .margin0 { margin:0; }


.main-s.news_page .profile {
	font-size:1.35rem;
	display:inline-block;
	padding-top:10px;
	line-height:1.7;
}

.main-s.news_page ul.square li {
	list-style-type:square;
	margin-bottom:0.5em;
}

.main-s.news_page .schedule th,
.main-s.news_page .schedule td {
	padding:0 0 10px 0;
	vertical-align:top;
}

.main-s.news_page .schedule th {
	white-space:nowrap;
	text-align:right;
	padding:0 20px 10px 0;
}


/*---- 事例紹介 追加 201906 ----*/

.casestudy {
	width:740px;
	padding:15px 10px 10px 20px;
	margin:80px auto 0;
	display:flex;
  -webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;
   font-size:14px;
   background-color:#555;
}

.casestudy p { margin:0 0;}

.casestudy .button-simple {
	margin:10px 0;
	width: auto;
}

.casestudy .text {
	padding-top:40px;
	color:#fff;
}

/*---- 産学共同ダイジェストムービー 追加 202012 ----*/

.sangaku iframe{
	text-align:center;
	margin:0 auto 20px;
	width:640px;
	height:360px;
	border:1px solid #ccc;
	display: block;
}

.oubo {
	margin-bottom:30px;
	
}

/*--add 2021.03.16--*/
.bold{
    font-weight: bold;
}
img.border_add{
    border: 1px solid #ccc;
}
.flex{
    display: flex;
}
.jc-sb{
    justify-content: space-between;
}
.split-2 .flex-element{
    width: 45%;
}

/*---- 産学共同発表会 追加 202111 ----*/

h2.sangaku span {
	font-size:18px;
}

h2.sangaku {
	margin-bottom:15px;
}


/* ========= font ========= */
.font-18{font-size: 18px;}
.font-20{font-size: 20px;}
.font-24{font-size: 24px;}

/* ========= margin ========= */
.mb10{margin-bottom:10px;}
.mb20{margin-bottom:20px;}
.mb30{margin-bottom:30px;}
.mb40{margin-bottom:40px;}
.mb50{margin-bottom:50px;}

hr.dotted {border: none; border-top: 1px dotted #8c8b8b;}

.top-bnr-section {
	margin-bottom: 40px;
}