@charset "utf-8";


/* ================================================================================
	@SP BreakPoint 320px～767px
================================================================================ */


/* ================================================================================
	1:Header CSS
================================================================================ */
.header {
	position: fixed;
    top: 0;
    width: 100%;
	/* padding: 10px 0 10px; */
	padding: 4px 0 10px 0;
    background-color: #fff;
    z-index: 15;
	transition: transform 0.4s ease 0s;
}

.itsearch-head .inner {
	position: relative;
}

.itsearch-head .menu-btn {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 20px;
    height: 20px;
}

.itsearch-head .menu-btn__btn-ele{
  position: relative;
  width: 100%;
  height: 100%;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}
.itsearch-head .menu-btn__line{
  background: #000;
  border-radius: 5px;
  width: 100%;
  height: 2px;
  display: block;
  position: absolute;
  opacity: 1;
  transition: all .5s;
}
.itsearch-head .menu-btn__line:first-of-type{
  top: 0;
}
.itsearch-head .menu-btn__line:nth-of-type(2){
  top: 50%;
  transform: translateY(-50%);
}
.itsearch-head .menu-btn__line:last-of-type{
  bottom: 0;
}
.itsearch-head .menu-btn__btn-ele.is-open .menu-btn__line:first-of-type{
  top: 8px;
  transform: rotate(45deg);
}
.itsearch-head .menu-btn__btn-ele.is-open .menu-btn__line:nth-of-type(2){
  opacity: 0;
}
.itsearch-head .menu-btn__btn-ele.is-open .menu-btn__line:last-of-type{
  bottom: 10px;
  transform: rotate(-45deg);
}

.itsearch-head .logo {
	width: 100%;
	/* margin: 5px 10px 5px 0; */
	text-align: center;
}

.itsearch-head .logo .sp-logo {
	width: 150px;
	display: inline;
}

#login-head {
	position: absolute;
	top: 20px;
	left: 20px;
	width: 30px;
}

#login-head-mypage {
        position: absolute;
        top: 20px;
        left: 20px;
        width: 50px;
}

.itsearch-head .member_edit_icon {
	width:70;
	text-align:center
}

.itsearch-head .member_edit_icon .member_edit_text{
	font-size:10px;
}

/* Modal Window CSS */
.sp-login#modal-login {
	text-align: left;
}

.sp-login#modal-login .login {
    background-color: #393939;
    color: #ffffff;
}

.sp-login#modal-login .login h3 {
    padding: 15px 15px 10px;
    text-align: center;
    font-weight: normal;
}

.sp-login#modal-login .login form {
    padding: 10px 15px;
}

.sp-login#modal-login .login .login-area li {
	margin-bottom: 10px;
	font-size: 16px;
}

.sp-login#modal-login .login input {
    width: 100%;
	padding: 5px;
}

.sp-login#modal-login .login input[type="email"] {
	background: #fff url(../images/module/mail_icon01.png) 97% center no-repeat;
}

.sp-login#modal-login .login input[type="password"] {
	background: #fff url(../images/module/password_icon01.png) 97% center no-repeat;
}

.sp-login#modal-login .login .auto-login {
	display: inline-block;
	width: 15px;
	height: 12px;
	padding: 0;
}

.sp-login#modal-login .login li label {
	position: relative;
	top: -1px;
    display: inline;
    font-size: 12px;
}

.sp-login#modal-login .login .logins {
    text-align: center;
}

.sp-login#modal-login .logins li .bt {
    display: block;
    width: 210px;
    margin: 15px auto 0px;
    padding: 10px;
    border: none;
    height: inherit;
    border-radius: 6px;
    background: url(../images/module/login_bt_bg01.png) 0 0 repeat;
    font-size: 13px;
    font-weight: bold;
    color: #fff;
	line-height: 100%;
    text-align: center;
    cursor: pointer;
}

.sp-login#modal-login .logins li .bt:hover {
	text-decoration: underline;
}

.sp-login#modal-login li a {
	display: block;
	padding-top: 11px;
    font-size: 12px;
    color: #fff;
}

.sp-login#modal-login .new-member {
    background-color: #F2F2F2;
    color: #333333;
    padding-bottom: 15px;
}

.sp-login#modal-login .new-member h3 {
    padding: 15px;
    text-align: center;
    font-weight: normal;
}

.sp-login#modal-login .new-member h4 {
    text-align: center;
    font-weight: normal;
}

.sp-login#modal-login .new-member p {
    padding: 10px;
    text-align: center;
}

.sp-login#modal-login .new-member .bt-form {
    display: block;
    width: 210px;
    margin: 15px auto 0px;
    padding: 10px;
    border: medium none #393939;
    height: inherit;
    border-radius: 6px;
	background: url(../images/module/login_bt_bg01.png) 0 0 repeat transparent;
    font-size: 13px;
    font-weight: bold;
    color: #fff;
	line-height: 100%;
    text-align: center;
}

.sp-login#modal-login .new-member .bt-form:hover {
	text-decoration: underline;
}

.sp-login#modal-login .new-member .lead-member {
    background-color: #fff;
    width: 90%;
    margin: 0 auto;
	padding-bottom: 10px;
	box-shadow: 0 0 1px 2px #E0E0E0 inset;
    border-radius: 6px;
}

.sp-login#modal-login .new-member .lead-member h4 {
    padding: 13px 3px 3px 4px;
    border-bottom: 1px #999 dotted;
    width: 95%;
    margin: 10px auto;
    font-size: 13px;
    font-weight: bold;
}

.sp-login#modal-login .new-member .lead-member ul {
    padding: 0 10px;
    font-size: 12px;
}

.sp-login#modal-login .new-member .lead-member li {
    margin-bottom: 4px;
}

.sp-login#modal-login .new-member .lead-member .bt-more {
	display: inline-block;
    width: 185px;
    height: 27px;
    line-height: 27px;
    font-size: 13px;
    font-weight: normal;
	border-radius: 6px;
	background: url(../images/module/more_bt_bg01.png) 0 0 repeat;
	font-size: 13px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	line-height: 27px;
}

.remodal.sp-login .new-member .lead-member .bt-more:hover {
	text-decoration: underline;
}

#ads-head {
	margin: 0!important;
	padding-top: 75px;
	text-align: center;
}

#ads-head img {
	width: 100%;
}


/* ================================================================================
	2:Global Nav SP CSS
================================================================================ */
#mobile-bar a {
	display: block;
	overflow: hidden;
	width: 50px;
	height: 0;
	padding-top: 45px;
	background: url(../images/module/sp_menu_icon01.png) 0 0 no-repeat;
}

/* nav slide inner */
#sp-topnav .cse-search-box {
	position: relative;
	padding: 5px 0;
}

#sp-topnav .cse-search-box input[type="text"] {
	width: 100%;
	padding: 5px 10px !important;
	border: none!important;
	border-top: 1px solid #C5C5C5!important;
	border-left: 1px solid #C5C5C5!important;
	box-shadow: 1px 1px 1px #E7E7E7 inset;
	outline: none !important;
	font-size: 16px;
}

#sp-topnav .cse-search-box input[type="submit"] {
	position: absolute;
	top: 12px;
	right: 8px;
	overflow: hidden;
	width: 16px;
	height: 0;
	padding-top: 16px;
	background: url(../images/module/search_icon01.png) 0 0 no-repeat;
	border: none!important;
	cursor: pointer;
}


#sp-topnav .parent {
	padding: 10px;
	border-bottom: 4px solid #5D6E72;
	background: #859EA3 url(../images/module/side_nav_icon01.png) 97% center no-repeat;
	font-size: 16px;
	font-weight: normal;
	color: #fff;
    cursor: pointer;
}

#sp-topnav .mm-opened .parent {
	border-bottom: 4px solid #152B53;
	background: #3C4B66 url(../images/module/side_nav_icon01_on.png) 97% center no-repeat;
}

#sp-topnav .child-nav span {
	display: block;
	padding: 10px;
	border-left: 4px solid #4D5253;
	border-bottom: 1px solid #ddd;
	background: #fff url(../images/module/pc_gnav_arrow01.png) 97% center no-repeat;
	color: #004C72;
	font-size: 14px;
	font-weight: normal;
    cursor: pointer;
}

#sp-topnav .child-nav .mm-opened span {
	border-left: 4px solid #70B6C5;
	background: #F2F2F2 url(../images/module/pc_gnav_arrow01_on.png) 97% center no-repeat;
}

#sp-topnav .single a {
	display: block;
	padding: 10px;
	border-bottom: 4px solid #5D6E72;
	background: #859EA3;
	font-size: 16px;
	font-weight: normal;
	color: #fff;
    cursor: pointer;
}

#sp-topnav .ones li a {
	display: block;
	padding: 10px;
	border-left: 4px solid #4D5253;
	border-bottom: 1px solid #ddd;
	background: #fff;
	color: #004C72;
	font-size: 14px;
    cursor: pointer;
}

#sp-topnav .category-inner {
	padding: 20px 10px 15px;
	background: #F2F2F2;
}

#sp-topnav .category-inner .category {
	float: none;
	border-radius: 0;
	background-color: transparent;
}

#sp-topnav .category-inner .category li {
	margin-bottom: 10px;
}

#sp-topnav .category-inner .category a {
	display: block;
	font-size: 13px;
	color: #004D72;
}

#sp-topnav .category-inner .keyword {
	margin-top: 15px;
	padding: 15px 10px;
	background-color: #fff;
}

#sp-topnav .category-inner .keyword h5 {
	font-size: 13px;
	color: #666;
	text-align: center;
}

#sp-topnav .category-inner .keyword ul {
	margin-top: 25px;
}

#sp-topnav .category-inner .keyword li {
	margin-bottom: 10px;
}

#sp-topnav .category-inner .keyword a {
	display: inline-block;
	padding: 5px 10px;
	border-radius: 4px;
	background-color: #DAEFF5;
	color: #003147;
	font-size: 12px;
}


/* ================================================================================
	3:Side SP CSS
================================================================================ */
#side-col .ads {
	margin: 15px 10px 0;
	text-align: center;
}


/* ================================================================================
	4:Footer SP CSS
================================================================================ */
.footer {
	margin-top: 30px;
}

.footer .footer-inner {
	margin-top: 10px;
}

.footer #sp-footer {
	/* padding-bottom: 10px; */
}

.footer #sp-footer h5 {
	position: relative;
	padding: 9px 10px;
	background-color: #3C4B66;
	font-size: 18px;
	font-weight: normal;
	color: #fff;
	cursor: pointer;
}

.footer #sp-footer h5:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 14px;
	width: 17px;
	height: 12px;
	margin-top: -6px;
	z-index: 1;
	background: url(../images/module/footer_nav_icon01.png) 0 0 no-repeat;
}

.footer #sp-footer h5.selected:before {
	background: url(../images/module/footer_nav_icon01.png) 0 0 no-repeat;
	background-position: 0 -12px;
}

.footer #sp-footer h5:after {
	content: "";
	position: absolute;
	background-color: #00293E;
	top: 0;
	right: 0;
	width: 45px;
	height: 45px;
	z-index: 0;
}

.footer #sp-footer h6 {
	position: relative;
	padding: 5px 10px;
	margin: 10px 5px 0;
	background-color: #3C4B66;
	font-size: 16px;
	font-weight: normal;
	color: #fff;
	cursor: pointer;
}

.footer #sp-footer h6:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 17px;
	height: 12px;
	margin-top: -6px;
	z-index: 1;
	background: url(../images/module/footer_nav_icon01.png) 0 0 no-repeat;
}

.footer #sp-footer h6.selected:before {
	background: url(../images/module/footer_nav_icon01.png) 0 0 no-repeat;
	background-position: 0 -12px;
}

.footer #sp-footer h6:after {
	content: "";
	position: absolute;
	background-color: #00293E;
	top: 0;
	right: 0;
	width: 35px;
	height: 100%;
	z-index: 0;
}

.footer #sp-footer .one-menu li {
	border-bottom: 1px solid #ccc;
}

.footer #sp-footer .one-menu li:last-child {
	border-bottom: none;
}

.footer #sp-footer .one-menu a {
	display: block;
	background: url(../images/module/arrow_icon01.png) 98% center no-repeat;
	padding: 10px;
	color: #333;
	font-size: 14px;
}

.footer #sp-footer #sp-pagetop {
	margin-top: 30px;
	padding-top: 30px;
	background-color: #EFEFEF;
	border-top: 1px solid #ccc;
	text-align: center;
}

.footer #sp-footer #sp-copy {
	padding: 20px 0 10px 0;
	background-color: #EFEFEF;
	text-align: center;
}

.footer #sp-footer #sp-copy small {
	color: #666;
	font-size: 11px;
}


/* ================================================================================
	2:Main SP CSS
================================================================================ */
#main-col {
	margin-top: 20px;
}

#main_content {
	/* 広告表示時は以下を20pxに(2015/09/29) */
	/* ヘッダー変更により 70px → 71px */
    margin-top: 71px;
}

#side-col .pickup .headinng div.side_article_ranking,
#side-col .pickup .headinng h3 {
    padding: 10px;
    background-color: #3C4B66;
    color: #fff;
	font-size: 16px;
	font-weight: normal;
}

#side-col .pickup .headinng div.side_article_ranking span,
#side-col .pickup .headinng h3 span {
  display: block;
  float: right;
  padding: 2px;
  text-align: center;
  color: #fff;
  font-size: 12px;
  font-weight: normal;
}

#side-col .pickup .headinng .more {
    display: block;
    float: left;
    width: 23%;
    padding: 12px 0 11px 0;
    background-color: #00293E;
    text-align: center;
    color: #fff;
	font-size: 16px;
	font-weight: normal;
}

#side-col .pickup .headinng .more a {
    display: inline;
	width: 100%;
    height: inherit;
    background-image: none;
    font-size: 12px;
	font-weight: bold;
	color: #fff;
	text-align: center;
    line-height: 100%;
}

.pickup ul.side_article_ranking_list {
	margin:0 !important;
	padding:5px 0 10px 3px !important;
}

.pickup ul.side_article_ranking_list .row{
	margin: 0 5px !important;
	padding: 3px 0 5px 0 !important;
	border-bottom:solid 1px #CCCCCC !important;
	min-height: 52px;
}

.pickup ul.side_article_ranking_list .row p,
.pickup ul.side_article_ranking_list .row h4{
	margin-left: 35px !important;
}

.pickup ul.side_article_ranking_list .rank{
	display:none !important;
}

.pickup ul.side_article_ranking_list .row .img01{
	display:block !important;
	width:30px !important;
	height:26px !important;
	overflow:hidden !important;
	margin:10px 6px 0 0 !important;
	float:left !important;
	background: url(../images/module/right_ranklist_01.png) !important;
}

.pickup ul.side_article_ranking_list .row .img02{
	display:block !important;
	width:30px !important;
	height:26px !important;
	overflow:hidden !important;
	margin:10px 6px 0 0 !important;
	float:left;background: url(../images/module/right_ranklist_02.png) !important;
}

.pickup ul.side_article_ranking_list .row .img03{
	display:block !important;
	width:30px !important;
	height:26px !important;
	overflow:hidden !important;
	margin:10px 6px 0 0 !important;
	float:left !important;
	background: url(../images/module/right_ranklist_03.png) !important;
}

.pickup ul.side_article_ranking_list .row .other{
	display:block !important;
	width:30px !important;
	height:26px !important;
	margin:10px 6px 0 0 !important;
	float:left !important;
	text-align:center !important;
	font-weight: bold !important;
	color: #666666 !important;
}

#side-col .dictionary-it.sp-none {
display: block !important;
}

#side-col .dictionary-it {
    margin: 15px 0;
    background-color: #F2F2F2;
    padding-bottom: 15px;
}

#side-col .dictionary-it .heading h3 {
    background-color: #3C4B66;
    padding: 10px;
	font-size: 16px;
	font-weight: normal;
}

#side-col .dictionary-it .heading a {
    display: block;
	color: #fff;
}

#side-col .dictionary-it .lead {
    padding: 15px;
    font-size: 12px;
    margin-bottom: 0;
}

#side-col .dictionary-it .tags {
    overflow: hidden;
	padding: 10px;
}

#side-col .dictionary-it .tags li {
    float: left;
    background-color: #DAEFF5;
    border-radius: 3px;
    margin: 0 5px 8px 0;
    padding: 2px 6px;
}

#side-col .dictionary-it .tags a {
	font-size: 12px;
}

#side-col .dictionary-it .more {
	text-align: center;
}

#side-col .dictionary-it .bt-more {
	display: inline-block;
	background-repeat: repeat-x;
	background-position: 0 0;
	height: 50px;
	border-radius: 4px;
	line-height: 1.1;
	padding: 17px 0;
	width: 100%;
	font-size: 14px;
	color: #fff;
	font-weight: bold;
	background: url(../images/module/more_bt_bg01.png) 0 0 repeat;
}

#side-col .dictionary-it .bt-more:hover {
	color: #fff;
}

.side_new_article_last {
    margin: 0;
    padding: 14px 0 30px 0;
}

.side_new_article_first {
    margin: 0;
    padding: 14px 0 14px 0;
    border-bottom:solid 1px #CCCCCC;
}

.side_new_article {
    margin: 0;
    padding: 14px 0 14px 0;
    border-bottom:solid 1px #CCCCCC;
}

#side-col .new_articles {
	padding-bottom:15px;
}

#side-col .new_articles .left-col {
	margin:2px 0 3px 0;
}

#side-col .new_articles .sub-col {
	clear: both;
}

#side-col .new_articles .more {
	text-align: center;
}

#side-col .new_articles .bt-more {
	display: inline-block;
	background-repeat: repeat-x;
	background-position: 0 0;
	height: 50px;
	border-radius: 4px;
	line-height: 1.1;
	padding: 17px 0;
	width: 100%;
	font-size: 14px;
	color: #fff;
	font-weight: bold;
	background: url(../images/module/more_bt_bg01.png) 0 0 repeat;
}

#side-col .new_articles .headinng a {
    display: block;
	color: #fff;
}

#side-col .new_articles .side_new_articles_header {
	border-top: #3C4B66 solid 1px;
	border-bottom: #3C4B66 solid 1px;
	background: #3C4B66;
	font-weight: normal;
	color: #fff;
	padding: 13px 10px;
	line-height: 1;
	margin-bottom: 0 !important;
	height:44px;
}

#side-col .new_articles .side_new_articles_header_title {
	float: left;
	font-size: 16px;
}

#side-col .new_articles .side_new_articles_header_genre {
	float: right;
	padding: 2px;
	font-size: 12px;
}

#side-col .pickup .left-col {
	float: left;
    width: 60px;
}

#side-col .pickup .right-col {
    float: left;
    width: 73%;
    padding-left: 10px;
}

#side_additional_block .sp-none {
	display: block !important;
}

#side-col .seminar-info {
    margin: 15px 0;
	padding-bottom: 15px;
    background-color: #F2F2F2;
}

#side-col .seminar-info .heading h3 {
    padding: 10px;
    background-color: #3C4B66;
    color: #fff;
	font-size: 16px;
	font-weight: normal;
}

#side-col .seminar-info .heading a {
    display: block;
	color: #fff;
}

#side-col .seminar-info ul {
	margin-top: 5px;
    padding: 10px;
}

#side-col .seminar-info li {
    overflow: hidden;
	border-left:solid 3px #859EA3;
	padding-left:7px;
	margin:5px 0 10px 0;
}

#side-col .seminar-info .pic {
    float: left;
	width: 60px;
    margin: 0 10px 0 0;
}

#side-col .seminar-info h4 {
    font-size: 13px;
    font-weight: normal;
}

#side-col .seminar-info p {
  font-weight: bold;
}

#side-col .seminar-info .more {
	text-align: center;
}

#side-col .seminar-info .bt-more {
	display: inline-block;
	background-repeat: repeat-x;
	background-position: 0 0;
	height: 50px;
	border-radius: 4px;
	line-height: 1.1;
	padding: 17px 0;
	width: 100%;
	font-size: 14px;
	color: #fff;
	font-weight: bold;
	background: url(../images/module/more_bt_bg01.png) 0 0 repeat;
}

#side-col .seminar-info .bt-more:hover {
	color: #fff;
}

.side_product_howto_last {
	margin: 0;
	padding: 7px 0 7px 0;
}

.side_product_howto_first {
	margin: 0;
	padding: 0 0 7px 0;
	border-bottom:solid 1px #CCCCCC;
}

.side_product_howto {
	margin: 0;
	padding: 7px 0 7px 0;
	border-bottom:solid 1px #CCCCCC;
}

.side_product_howto_last .leftblock,
.side_product_howto_first .leftblock,
.side_product_howto .leftblock
{
	float: left;
}

.side_product_howto_last .rightblock,
.side_product_howto_first .rightblock,
.side_product_howto .rightblock
{
	margin-left:18px;
}

#side-col .pickup ul {
    margin-top: 5px;
    padding: 10px 0 5px 10px;
}

.mailmagazine_promotion_img
{
    padding:3px;
    max-width : 100%;
}

.mp_row_1
{
   padding-bottom: 0px !important;
}

.mp_row_2
{
    padding-top: 0px !important;
}

/* =========================================================
	8:Seminar Slider
========================================================= */
.accepting_content{
    width: 100%;
    margin-top: 70.95px;
}
.accepting_bg {
    position: relative;
}
.accepting_bg::after{
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
    width: 100%;
    background-color: #003A64;
    z-index: -1;
    min-height: 414px;
    padding-bottom: 50%;
}
.accepting_bg_inner{
    padding: 0 2vw;
    padding: 20px 0 0;
    position: relative;
}
.accepting_bg_inner_ttl {
    font-size: 24px;
    color: #FFFFFF;
    font-weight: bold;
    text-align: center;
    padding: 0 0 10px;
    border-bottom: solid 1px #fff;
    margin-bottom: 20px;
}
.seminar_slide__dots{
    display: flex;
    justify-content: center;
    margin: 40px 0 0;
}
.seminar_slide__dots button{
    cursor: pointer;
    outline: none;
    border: 0;
    padding: 0;
    margin: 0;
    background: none;
    appearance: none;
    border-radius: 0;
}
.seminar_slide__dots li{
    text-indent: -9999px;
    width: 12px;
    height: 12px;
    border-radius: 10px;
    background: #C4C4C4;
}
.seminar_slide__dots li:not(:last-of-type){
    margin-right: 10px;
}
.seminar_slide__dots li.slick-active{
    background: #87B9D6;
}
.seminar_slide__contents{
    padding: 0 20px;
}
.seminar_slide__box{
    display: block;
}
.seminar_slide__link{
    position: relative;
    margin: 30px 10px 0;
    display: block;
    opacity: 1;
    transition: opacity .3s;
    background: #fff;
}
.seminar_slide__link:hover{
    text-decoration: none;
    opacity: 0.7;
}
.seminar_slide__icon{
    width: 27px;
    position: absolute;
    top: -30px;
    left: 0;
}
.seminar_slide__image-frame{
    position: relative;
    width: 100%;
    padding-bottom: 50%;
    overflow: hidden;
}
.seminar_slide__image{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    max-width: initial;
    height: 100%;
}
.seminar_slide__link .seminar_slide__image:hover{
    transition: none;
    opacity: 1;
}
.seminar_slide__daytime{
    margin: 0 auto;
    font-weight: bold;
    background-color: #fff;
    color: #262525;
    padding: 13px 15px;
    text-align: center;
}
.seminar_slide__info{
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #87B9D6;
    padding: 25px 13px;
    min-height: 113px;
}
.seminar_slide__place-box{
    width: 80px;
    min-height: 78px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.seminar_slide__place{
    display: inline-block;
    min-width: 80px;
    border-radius: 16px;
    padding: 8px 12px;
    color: #262525;
    background-color: #fff;
}
.seminar_slide__place:not(:first-of-type){
    margin-top: 10px;
}
.seminar_slide__place p{
    font-weight: bold;
    color: #262525;
    font-size: 1.2rem;
    text-align: center;
}
.seminar_slide__ttl{
    font-weight: bold;
    font-size: 1.4rem;
    width: calc(100% - 110px);
}
/* =========================================================
	9:Seminar Content
========================================================= */
#main_content.main_content_flex{
    margin-top: 20px;
    padding: 0 20px;
}
.main_content_left{
    margin-bottom: 20px;
}
.main_content_left__title{
    text-align: center;
    color: #fff;
    background: #87B9D6;
    border-radius: 5px;
    padding: 10px;
    margin-bottom: 20px;
    font-weight: bold;
}
.main_content_left__sub-title{
    text-align: center;
    color: #004C72;
    font-weight: bold;
    margin-bottom: 20px;
}
.main_content_left__category{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.main_content_left__category::after{
    content: "";
    display: block;
    width: 32%;
}
.main_content_left__category-link{
    display: block;
    border: solid 1px #ccc;
    padding: 10px;
    text-align: center;
    width: 32%;
    transform: scale(1);
    transition: transform .5s;
}
.main_content_left__category-link:hover{
    transform: scale(1.05);
    text-decoration: none;
}
.main_content_left__category-link::after{
    content: "";
    display: block;
    margin: 5px auto;
    width: 10px;
    height: 10px;
    border-bottom: 2px solid #666;
    border-right: 2px solid #666;
    transform: rotate(45deg);
}
.main_content_left__category-link:nth-of-type(n+4){
    margin-top: 20px;
}
.left-line-title{
    font-size: 20px;
    font-weight: bold;
    border-left: solid 2px #004C72;
    padding: 10px;
    margin-bottom: 20px;
}
.main_content_right{
    margin-bottom: 20px;
}
.calendar_content{
    margin-bottom: 20px;
}
.calendar_content__tab{
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
}
.calendar_content__tab__month{
    background: #bbb;
    font-weight: bold;
    text-align: center;
    position: relative;
    padding: 5px;
    cursor: pointer;
    font-size: 12px;
    width: 25%;
}
.calendar_content__tab__month::after{
    content: "";
    width: 0;
    height: 0;
    display: block;
    border-style: solid;
    border-width: 5px 5px 0 5px;
    border-color: #bbb transparent transparent transparent;
    position: absolute;
    bottom: -5px;
    left: 50%;
    transform: translateX(-50%);
}
.calendar_content__tab__month.is-active{
    background: #87B9D6;
}
.calendar_content__tab__month.is-active::after{
    border-color: #87B9D6 transparent transparent transparent;
}
.calendar_content__main__day{
    display: none;
}
.calendar_content__main__tab{
    display: none;
}
.calendar_content__main__tab.is-active{
    display: block;
}
.calendar_content__main__date__box{
    border: solid 1px #ccc;
    padding: 20px;
    display: none;
}
.calendar_content__main__date__box.is-seminar{
    display: block;
}
.calendar_content__main__date__pc-date{
    display: none;
}
.calendar_content__main__date__sp-date{
    font-weight: bold;
    margin-bottom: 10px;
}
.calendar_content__main__date__seminar-title:nth-of-type(n+2){
    margin-top: 10px;
}
.calendar_content__main__date__seminar-title a{
    opacity: 1;
    transition: opacity .3s;
}
.calendar_content__main__date__seminar-title a:hover{
    text-decoration: none;
    opacity: 0.7;
}
.is-calendar-empty{
    display: none;
}
.seminar_content__link{
    display: block;
    border: solid 1px #ccc;
    transition: opacity .3s;
}
.seminar_content__link:nth-of-type(n+2){
    margin-top: 20px;
}
.seminar_content__link:hover{
    text-decoration: none;
    opacity: 0.7;
}
.seminar_content__upper{
    display: flex
}
.seminar_content__image-frame{
    width: 10%;
    min-width: 100px;
    overflow: hidden;
    position: relative;
}
.seminar_content__image{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 110%;
    height: auto;
}
.seminar_content__link .seminar_content__image:hover{
    transition: none;
    opacity: 1;
}
.seminar_content__text{
    background: #ccc;
    padding: 44px 20px 20px;
    position: relative;
    width: 90%;
}
.seminar_content__date{
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    padding: 5px 10px;
    color: #fff;
    background: #003A64;
    font-size: 12px;
    text-align: center;
}
.seminar_content__company-name{
    font-size: 12px;
    text-align: center;
    margin-bottom: 10px;
}
.seminar_content__speaker{
    font-size: 12px;
    text-align: center;
}
.seminar_content__lower{
    padding: 20px;
}
.seminar_content__seminar-title{
    text-align: center;
    font-size: 12px;
    margin-bottom: 15px;
}
.seminar_content__lecture-title{
    padding-bottom: 5px;
    margin-bottom: 5px;
    border-bottom: solid 1px #ccc;
    font-size: 14px;
}
.seminar_content__lecture-summary{
    font-size: 14px;
    padding: 5px;
}
/* =========================================================
	10:New Footer
========================================================= */
.footer {
    z-index: 9000;
}

.footerTop {
    background-color: #333;
}

.footerTop_head {
    display: block;
    margin-bottom: 18px;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: .08em;
}

.footerTop_information {
    padding: 35px 20px;
    background-color: #333;
}

.footerTop_information_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.footerTop_information_listNode {
    width: 50%;
    padding-right: 10px;
}

.footerTop_information_listNode:nth-of-type(n+3) {
    margin-top: 16px;
}

.footerTop_information_listLink {
    color: #fff;
    font-size: 11px;
    letter-spacing: .08em;
    line-height: 1.5;
}

.footerTop_mailmag {
    padding: 35px 20px;
    background-color: #222;
}

.footerTop_mailmagInner {
    display: block;
}

.footerTop_mailmag_text {
    color: #fff;
    font-size: 11px;
    letter-spacing: .08em;
    line-height: 1.6;
    word-break: break-word;
    overflow-wrap: break-word;
}

.footerTop_mailmag_link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 16px;
    color: #999;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: .04em;
}

.footerTop_mailmag_svg {
    width: 15px;
    height: 13px;
    margin-left: 8px;
}

.footerTop_sns {
    margin: 25px -20px 0;
    padding: 25px 20px 0;
    border-top: 1px solid #333;
}

.footerTop_sns_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.footerTop_sns_listNode {
    width: calc(33.33% - (20px / 3));
}

.footerTop_sns_listNode+.footerTop_sns_listNode {
    margin-left: 10px;
}

.footerTop_sns_listLink {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 40px;
    border-radius: 25px;
}

.footerTop_sns_listNode-facebook .footerTop_sns_listLink {
    background-color: #38599a;
}

.footerTop_sns_listNode-twitter .footerTop_sns_listLink {
    background-color: #00a1fa;
}

.footerTop_sns_listNode-youtube .footerTop_sns_listLink {
    background-color: #d7000f;
}

.footerTop_sns_listNode-facebook .footerTop_sns_listSvg {
    width: 9px;
    height: 18px;
}

.footerTop_sns_listNode-twitter .footerTop_sns_listSvg {
    width: 20px;
    height: 16px;
}

.footerTop_sns_listNode-youtube .footerTop_sns_listSvg {
    width: 26px;
    height: 18px;
}

.footerTop_tech {
    width: 100%;
    background-color: #333;
}

.footerTop_inner_tech {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0;
}

.footerTop_information_tech {
    width: 100%;
    padding: 25px 40px;
}

.footerTop_informationList_tech {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.footerTop_item_tech {
    width: 50%;
    font-size: 1.1rem;
}

.footerTop_link_tech {
    display: inline-block;
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease;
    color: #fff;
    font-size: 11px;
    letter-spacing: .08em;
    line-height: 1.5;
}

.footerMiddle {
    display: none;
    width: 100%;
    max-width: 1200px;
    margin: auto;
    padding: 0 40px;
}

.footerMiddle_inner {
    position: relative;
    padding: 35px 0;
    border-bottom: 1px solid #eee;
}

.footerMiddle_head {
    display: block;
    margin-bottom: 18px;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: .08em;
}

.footerMiddle_block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-right: 104px;
}

.footerMiddle_block+.footerMiddle_block {
    margin-top: 10px;
}

.footerMiddle_subhead {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 130px;
    color: #004da0;
    font-size: 12px;
    letter-spacing: .1em;
}

.footerMiddle_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.footerMiddle_listNode {
    margin: 0 11px 6px 0;
}

.footerMiddle_listLink {
    color: #666;
    font-size: 11px;
    letter-spacing: .08em;
}

.footerMiddle_pmark {
    position: absolute;
    right: 0;
    bottom: 35px;
}

.footerBottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 25px 20px;
}

.footerBottom_logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.footerBottom_logo_svg {
    width: 108px;
    height: 20px;
}

.footerBottom_copy {
    margin-top: 16px;
    font-family: "Red Hat Display", sans-serif;
    font-size: 10px;
    letter-spacing: .08em;
}

.footerBottom_list {
    display: none;
}

.footerBottom_listNode {
    font-size: 11px;
    letter-spacing: .08em;
}

.footerBottom_listNode+.footerBottom_listNode {
    margin-left: 28px;
}

.footerBottom_pagetop_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    visibility: hidden;
    position: fixed;
    right: 20px;
    bottom: 160px;
    width: 50px;
    height: 50px;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    border-radius: 50%;
    opacity: 0;
    background-color: #333;
}

.footerBottom_pagetop_inner::after {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 7px;
    height: 7px;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg);
    border-top: 1px solid #999;
    border-right: 1px solid #999;
    content: "";
    margin-top: 2px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}

.footerBottom_pagetop_inner.is-visible {
    visibility: visible;
    opacity: 1;
}