@charset "UTF-8";

/************************************
base
************************************/
html,body {
	height: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
}
body {
	font-family: 'Open Sans','游ゴシック', 'Yu Gothic', 'Lucida Grande', 'Hiragino Kaku Gothic ProN', Meiryo, 'MS PGothic', sans-serif;
	font-size: 14px;
	line-height: 1.5;
  letter-spacing: 0.05em;
	color: #333;
	background: #fff;
	word-wrap: break-word;
	overflow-wrap: break-word;
	position: relative;
}
.cf:after {
	content: "";
	clear: both;
	display: block;
}
.fll {
	float: left;
}
.flr {
	float: right;
}
* {
	-webkit-font-smoothing: antialiased;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
a {
	text-decoration: none;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all  0.3s;
	color:#333;
}
img {
	vertical-align: bottom;
	width: 100%;
	height: auto;
}

.sp {
	display: none;
}
.pc {
	display: block;
}

.popup_window{
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.6);
	position: fixed;
	top: 0;
	left: 0;
}

.popup_window .popup_content{
	width: 30%;
	position:absolute;
  top: 50%;
  left: 50%;
	background: #fff;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
	border-radius: 5px;
	padding: 5%;
	text-align: center;
}

.popup_window .popup_content p{
	font-weight: bold;
	font-size: 20px;
	margin-bottom: 20px;
}

.popup_window .popup_content a{
	color: #1C89EA;
	text-decoration: underline;
	font-size: 16px;
}

.popup_window .popup_content a:hover{
	text-decoration: none;
}

.popup_window .popup_content .popup_close_btn{
	position: absolute;
	top: 10px;
	right: 30px;
	font-size: 18px;
	cursor: pointer;
}
/************************************
header
************************************/
header {
	/* position: fixed; */
	top: 0;
	left: 0;
	z-index: 999;
	width: 100%;
	background: #fff;
	margin: 0 auto;
}
.logo img{
	width: 185px;
}

.head_content{
	width: 880px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 10px 0;
}

.head_icon ul.head_icon_wrap{
	display: flex;
}

.head_icon ul.head_icon_wrap .user_content{
	margin-left: 25px;
	position: relative;
}

.head_icon ul.head_icon_wrap .user_content li.user_icon{
	cursor: pointer;
}

.head_icon ul.head_icon_wrap .user_content li.user_icon:hover{
	opacity: 0.8;
}

.head_icon ul.head_icon_wrap .notification_content{
	position: relative;
}

.head_icon ul.head_icon_wrap .notification_content .notification_dot{
	position: absolute;
	content: '';
	top: -2px;
	right: -2px;
	width: 6px;
	height: 6px;;
	background: #FF7052;
	border-radius: 50%;
}

.head_icon ul.head_icon_wrap .notification_content li.notification_icon{
	cursor: pointer;
}

.head_icon ul.head_icon_wrap .notification_content li.notification_icon:hover{
	opacity: 0.8;
}

.head_icon ul.head_icon_wrap ul.pop_up_menu{
	padding: 20px 0;
}

.head_icon ul.head_icon_wrap ul.pop_up_menu p.pop_up_menu_ttl{
	font-weight: bold;
	padding: 10px 20px;
	font-size: 12px;
	position: relative;
}

.head_icon ul.head_icon_wrap ul.pop_up_menu p.pop_up_menu_ttl span.close_btn{
	position: absolute;
	top: 0;
	right: 20px;
	font-size: 20px;
	cursor: pointer;
}

.head_icon ul.head_icon_wrap ul.pop_up_menu li{
	padding: 5px 20px;
	font-size: 12px;
	cursor: pointer;
}

.head_icon ul.head_icon_wrap ul.pop_up_menu li:hover{
	background: #EFF1F4;
}

.head_icon ul.head_icon_wrap ul.pop_up_menu li:hover img.pop_up_icon01{
	display: none;
}

.head_icon ul.head_icon_wrap ul.pop_up_menu li:hover img.pop_up_icon02{
	display: inline-block;
}

.head_icon ul.head_icon_wrap ul.pop_up_menu li img{
	width: 20px;
	vertical-align: middle;
	margin: 0 5px 3px 0;
}

.head_icon ul.head_icon_wrap ul.pop_up_menu li img.pop_up_icon02{
	display: none;
}

ul.notification_menu_list{
	display: none;
	position: absolute;
	top: 25px;
	right: 0;
	width: 290px;
	box-shadow: 1px 3px 3px #eee;
	background: #fff;
	z-index: 100;
	border-radius: 5px;
}

ul.notification_menu_list a.notice_link{
	display: block;
	text-align: center;
	font-size: 12px;
	text-decoration: underline;
	color: #1C89EA;
	margin-top: 10px;
}

ul.notification_menu_list a.notice_link:hover{
	text-decoration: none;
}

.head_icon ul.head_icon_wrap .user_content{
	position: relative;
}

ul.user_menu_list{
	display: none;
	position: absolute;
	top: 25px;
	right: 0;
	width: 290px;
	box-shadow: 1px 3px 3px #eee;
	background: #fff;
	z-index: 100;
	border-radius: 5px;
}

.logo_content{
	width: 80%;
	margin: 0 auto;
	padding: 10px 0;
}

nav.globalnav{
	background: #1964cb;
}

nav.globalnav ul.globalnav__list{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 880px;
	margin: 0 auto;
	padding: 30px 0;
}

nav.globalnav li{
	width: 20%;
	/* height: 42px; */
	text-align: center;
	position: relative;
}

nav.globalnav li a{
	color: #fff;
	display: block;
	border-left: 1px solid #fff;
}

nav.globalnav li:last-child a{
	border-right: 1px solid #fff;
}

nav.globalnav li a:hover{
	font-weight: bold;
}

nav.globalnav li.current a{
	font-weight: bold;
}

.page-id-235 .globalnav,.page-id-237 .globalnav{
	display: none;
}
/************************************
main
************************************/
main {
	width: 100%;
}

#index #member_related{
	padding: 65px 0;
	width: 880px;
	height: 545px;
	margin: 0 auto;
}

#index #member_related h1{
	font-size: 24px;
	margin-bottom: 40px;
}

#index #member_related .inner_member_related{
	width: 410px;
}

#index #member_related .txt_field{
	margin-bottom: 20px;
}

#index #member_related .txt_field input{
	width: 400px;
}

#index #member_related .rememberme{
	margin-bottom: 25px;
}

/* #member_related .btn{
	width: 300px;
	background: #0067C2;
	color: #fff;
	font-weight: bold;
	margin: 0 auto;
} */

#index #member_related .forget{
	text-align: center;
	margin: 10px 0 5px;
}

#index #member_related .forget a{
	font-size: 12px;
	color: #B0B4BA;
	text-decoration: underline;
}

#index #member_related .forget a:hover{
	text-decoration: none;
}

#index #member_related p.member_related_txt{
	margin-bottom: 20px;
}

#index #member_related .login_back_btn{
	text-align: center;
	margin-top: 10px;
}

#index #member_related .login_back_btn a{
	color: #1C89EA;
	text-decoration: underline;
}

#index #member_related .login_back_btn a:hover{
	text-decoration: none;
}

#index #member_related .form_sub_txt{
	text-align: center;
}

#index #member_related .form_sub_txt a{
	font-size: 14px;
	color: #1C89EA;
	text-decoration: underline;
}

#index #member_related .form_sub_txt a:hover{
	text-decoration: none;
}

#index #member_related #resetpwd .btn a{
	width: 300px;
	height: 55px;
	line-height: 55px;
	background: #0067C2;
	color: #fff;
	font-weight: bold;
	margin: 0 auto;
	display: block;
	border-radius: 5px;
}

.index_bg img{
	position: absolute;
	top: 0;
	right: 0;
	max-width: 680px;
	width: 55%;
	height: 586px;
}
/************************************
会員登録関連
************************************/
#register,
#pre_register,
#delete{
	padding: 100px 0;
	background: #F9FAFC;
}

.register_content{
	background: #fff;
	padding: 80px 100px;
	box-shadow: 0 2px 10px rgb(0 0 0 / 10%);
}

#register h1,
#pre_register h1,
#delete h1{
	font-size: 24px;
	text-align: center;
	margin-bottom: 40px;
}

#register .form_intro_txt,
#pre_register .form_intro_txt,
#delete .form_intro_txt{
	margin-bottom: 20px;
}

.form_step{
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}

.form_step div{
	font-weight: bold;
}

.form_step span{
	display: block;
	text-align: center;
	margin: 0 auto 5px;
	width: 30px;
	height: 30px;
	line-height: 30px;
	border-radius: 50%;
	color: #fff;
	font-weight: bold;
}

.form_step div.active span{
	background: #0067C2;
}

.form_step div span{
	background: #8F9CAA;
}

.form_flex{
	display: flex;
	justify-content: space-between;
}

.form_flex div{
	width: 49%;
}

.form_term{
	margin: 40px 0 5px;
	font-size: 18px;
	font-weight: bold;
}

.form_description{

}

.ex{
	font-size: 12px;
  margin-top: 5px;
  display: block;
  color: #415964;
}

.req{
	background: #FF7052;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	padding: 5px;
	border-radius: 3px;
	vertical-align: middle;
	margin-left: 20px;
}

.any{
	background: #415964;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	padding: 5px;
	border-radius: 3px;
	vertical-align: middle;
	margin-left: 20px;
}

.register_content .terms_policy{
	margin-top: 20px;
	text-align: center;
}

.register_content .terms_policy a{
	color: #0067C2;
	text-decoration: underline;
}

.register_content .terms_policy a:hover{
	text-decoration: none;
}

.register_content input[type="submit"],
.register_content button{
	width: 300px;
  height: 55px;
  color: #fff;
  background: #0067C2;
  font-weight: bold;
	border: none;
	margin: 20px auto 0;
	display: block;
}

.register_content .form_sub_txt{
	text-align: center;
	margin-top: 10px;
}

.register_content .form_sub_txt a{
	color: #0067C2;
	text-decoration: underline;
}

.register_content .form_sub_txt a:hover{
	text-decoration: none;
}

#delete .modal_btn{
	margin-top: 10px;
	color: #8F9CAA;
}

.modal_overlay{
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.5);
	z-index: 103;
}

.modal_window .modal_content{
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	background: #fff;
	padding: 80px 80px;
	border-radius: 5px;
	width: 50%;
	z-index: 104;
}

.modal_window .modal_content .modal_message{
	font-weight: bold;
}

.modal_window .modal_content .modal_btn_wrap{
	width: 420px;
	margin: 20px auto 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.modal_submit button{
	width: 200px;
	height: 50px;
	line-height: 50px;
	margin-top: 0;
}

.modal_window .modal_content .btn.modal_close{
	width: 200px;
  height: 50px;
  line-height: 50px;
  color: #8F9CAA;
  font-size: 12px;
  background: #EEF2F5;
  border: 1px solid #EEF2F5;
  display: block;
  text-align: center;
  margin: 0 5px;
  font-weight: bold;
  cursor: pointer;
}

.step3 a{
	color: #0067C2;
  text-decoration: underline;
}

.step3 a:hover{
	text-decoration: none;
}
/************************************
パスワードを忘れた方
************************************/
#member_related p.intro_txt{
	margin-bottom: 30px;
}
/************************************
パスワード再設定
************************************/
#member_related #resetpwd dd{
	margin-bottom: 25px;
}

#member_related #resetpwd dd input{
	width: 100%;
}
/************************************
マイページ
************************************/
#mypage .mypage_intro_txt{
	padding-bottom: 20px;
}

#mypage .mypage_intro_txt p span{
	font-weight: bold;
	font-size: 16px;
}

#mypage .mypage_activity{
	border-top: 1px solid #E9EBEF;
	border-bottom: 1px solid #E9EBEF;
	padding: 20px 0;
	margin-top: 30px;
}

#mypage .mypage_activity li{
	background: #fff;
}

#mypage .mypage_activity li:hover{
	background: #EFF1F4;
}

#mypage .mypage_activity li:hover img.arrow_icon01{
	display: none;
}

#mypage .mypage_activity li:hover img.arrow_icon02{
	display: block;
}

#mypage .mypage_activity li img.arrow_icon02{
	display: none;
}

#mypage .mypage_activity li a{
	display: flex;
	align-items: center;
	padding: 25px;
}

#mypage .mypage_activity li .activity_icon{
	width: 10%;
}

#mypage .mypage_activity li .activity_txt{
	margin-left: 10px;
	width: 80%;
}

#mypage .mypage_activity li .activity_txt time{
	color: #B0B4BA;
}

#mypage .mypage_activity li .activity_txt p{
	font-weight: bold;
}

#mypage .mypage_activity li .activity_arrow{
	margin: 0 0 0 auto;
	width: 5%;
}

#mypage .mypage_content_wrap{
	display: flex;
	justify-content: space-between;
}

#mypage .mypage_head{
	width: 250px;
}

#mypage .mypage_head h2{
	font-size: 20px;
	margin-bottom: 10px;
}

#mypage .mypage_head p{
	color: #B0B4BA;
	line-height: 1;
	font-size: 12px;
}

#mypage .mypage_content{
	width: 600px;
}

#mypage .mypage_column{
	border-top: 1px solid #E9EBEF;
	border-bottom: 1px solid #E9EBEF;
	padding: 20px 0;
}

#mypage .mypage_column .archive_column .column_content_wrap{
	display: flex;
  align-items: center;
}

#mypage .mypage_column .archive_column li{
	background: #fff;
	margin-bottom: 15px;
}

#mypage .mypage_column .archive_column li .column_img{
	width: 40%;
}

#mypage .mypage_column .archive_column li .column_content{
	width: 60%;
	padding: 15px;
}

#mypage .mypage_column .archive_column li .column_content p{
	font-size: 12px;
  margin: 5px 0;
}

#mypage .mypage_column .archive_column li .column_content p.cat_txt{
	background: #1C89EA;
  color: #fff;
  display: inline-block;
  border-radius: 3px;
  padding: 5px 10px;
  font-weight: bold;
}

#mypage .mypage_column .archive_column li .column_content time{
	color: #B0B4BA;
  font-size: 12px;
}

#mypage .mypage_video{
	border-bottom: 1px solid #E9EBEF;
	padding: 20px 0;
}

#mypage ul.archive_video{
	display: flex;
  flex-wrap: wrap;
}

#mypage .archive_video li{
	width: 280px;
	margin: 0 0 0 20px;
}

#mypage .archive_video li:nth-child(3n+1){
	margin-left: 0;
}

#mypage .archive_video li .video_item iframe{
	width: 100%;
	height: 160px;
}

#mypage .archive_video li .video_txt{
	background: #fff;
	padding: 15px;
}

#mypage .archive_video li .video_txt_item{
	display: flex;
	justify-content: space-between;
	font-size: 12px;
	color: #B0B4BA;
	margin-top: 10px;
}

#mypage .mypage_edit{
	padding: 20px 0 0;
}

#mypage .mypage_edit .mypage_edit_content_wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#mypage .mypage_edit .mypage_edit_content_wrap .mypage_edit_content{
	width: 430px;
	background: #fff;
	margin: 0 0 20px 0;
}

#mypage .mypage_edit .mypage_edit_content_wrap .mypage_edit_content:nth-of-type(odd){
	margin-left: 0;
}

#mypage .mypage_edit .mypage_edit_content_wrap .mypage_edit_content a{
	display: block;
	padding: 25px;
}

#mypage .mypage_edit .mypage_edit_content_wrap .mypage_edit_content h3{
	margin: 5px 0;
}

#mypage .mypage_edit .mypage_edit_content_wrap .mypage_edit_content p{
	font-size: 12px;
	color: #B0B4BA;
}

#mypage .mypage_edit .mypage_edit_content_wrap .mypage_edit_content img{
	width: 20px;
}

#mypage .mypage_edit .mypage_edit_content_wrap .mypage_edit_content img.arrow{
	width: 28px;
	display: block;
	margin: 0 0 0 auto;
}
/************************************
会員情報変更、パスワード変更
************************************/
#edit .edit_ttl h1{
	font-size: 20px;
	position: relative;
	padding-left: 25px;
	margin-bottom: 5px;
}

#edit .edit_ttl h1::before{
	content: '';
	position: absolute;
	background: #1C89EA;
	width: 15px;
	height: 15px;
	top: 7px;
	left: 0;
}

#edit .form_content{
	margin-top: 40px;
}

.form_content dt{
	font-weight: bold;
}

#edit .form_content dt{
	margin-bottom: 5px;
	font-size: 18px;
}

#edit .form_content dt span{
	background: #FF7052;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	padding: 5px;
	border-radius: 3px;
	vertical-align: middle;
	margin-left: 20px;
}

#edit .form_content dd{
	margin-bottom: 40px;
}

#edit .form_content dd span{
	display: block;
	color: #B0B4BA;
	font-size: 14px;
	margin-top: 5px;
}

#edit .form_content dd input{
	width: 100%;
}

#edit .form_content dd.input_half input{
	width: 49%;
}

#edit .form_content dd textarea{
	width: 100%;
	height: 215px;
}

#edit .form_content .btn_wrap{
	text-align: center;
}

#edit .form_content .wpcf7-acceptance .wpcf7-list-item{
	margin-left: 0;
}

#edit .form_content .wpcf7-acceptance .wpcf7-list-item a{
	color: #1C89EA;
	text-decoration: underline;
}

#edit .form_content input[type="button"]{
	width: 300px;
	height: 55px;
	color: #fff;
	background: #0067C2;
	font-weight: bold;
}

#edit .form_sub_txt{
	text-align: center;
	margin-top: 10px;
}

#edit .form_sub_txt a{
	color: #8F9CAA;
}
/************************************
ログアウト
************************************/
#logout h1{
	font-size: 20px;
	margin-bottom: 40px;
	text-align: center;
}
/************************************
input関連
************************************/
p.caution{
	color: #FF7052;
	font-weight: bold;
}

p.caution img{
	vertical-align: middle;
	margin: 0 5px 3px 0;
	width: 20px;
}

.txt_field{
	margin-bottom: 20px;
}

.txt_field p{
	margin-bottom: 5px;
	font-weight: bold;
}

.btn{
	text-align: center;
}

.btn img{
	vertical-align: middle;
	margin: 0 5px 3px 0;
	width: 15px;
}

.btn input[type="button"]{
	width: 300px;
	background: #0067C2;
	color: #fff;
	font-weight: bold;
	margin: 0 auto;
}

.btn:hover{
	opacity: 0.8;
}

button {
	cursor: pointer;
}

input[type="submit"],
input[type="button"]{
	cursor: pointer;
}
input[type="submit"]:hover,
input[type="button"]:hover{
	opacity: 0.8;
}
input,
textarea{
  -webkit-appearance: none;
}
input[type="submit"],
input[type="button"],
input[type="reset"],
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="search"],
textarea{
  -webkit-appearance: none;
  border-radius: 0;
  border: 0;
	background: #E9EBEF;
	border-radius: 5px;
	padding: 10px;
	width: 100%;
	height: 55px;
}

input[type="checkbox"]{
	-webkit-appearance: checkbox;
	appearance: checkbox;
}

input[type="radio"]{
	-webkit-appearance: radio;
	appearance: radio;
}

.custom-select-wrapper {
  position: relative;
  display: inline-block;
  user-select: none;
}
.custom-select-wrapper select {
  display: none;
}

.custom-select {
  position: relative;
  display: inline-block;
	border: none;
	background: transparent;
}

.custom-select:hover .custom-select-trigger:after{
	border-bottom: 1px solid #3C3E43;
  border-right: 1px solid #3C3E43;
	transition: none;
}

.custom-select-trigger {
  position: relative;
  display: block;
  color: #B0B4BA;
  cursor: pointer;
	margin-right: 50px;
}

.custom-select-trigger:hover{
	color: #3C3E43;
}

.custom-select-trigger:after {
  position: absolute;
  display: block;
  content: '';
  width: 10px;
	height: 10px;
  top: 50%;
	right: -25px;
  margin-top: -3px;
  border-bottom: 1px solid #B0B4BA;
  border-right: 1px solid #B0B4BA;
  transform: rotate(45deg) translateY(-50%);
  transition: all .2s ease-in-out;
  transform-origin: 50% 0;
}

.custom-select.opened .custom-select-trigger:after {
	margin-top: 3px;
	transform: rotate(-135deg) translateY(-50%);
}

.custom-options {
	width: 240px;
	position: absolute;
	display: block;
	top: 100%;
	left: 0;
	right: 0;
	margin: 10px 0 0;
	padding: 15px 0;
	border-radius: 5px;
	box-sizing: border-box;
	box-shadow: 1px 1px 1px rgba(0,0,0,.07);
	background: #fff;
	transition: all .2s ease-in-out;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(-15px);
	z-index: 101;
}

.custom-select.opened .custom-options {
	opacity: 1;
	visibility: visible;
	pointer-events: all;
	transform: translateY(0);
}

.option-hover:before {
  background: #f9f9f9;
}
.custom-option {
  position: relative;
  display: block;
  cursor: pointer;
  transition: all .4s ease-in-out;
	padding: 10px 20px 10px 30px;
	color: #B0B4BA;
}

.custom-option:hover,
.custom-option.selection {
  background: #EFF1F4;
	color: #3C3E43
}

.custom-options span:nth-of-type(1){
	background: url(../img/icon/down02.svg);
	background-repeat: no-repeat;
	background-size: 15px 15px;
	background-position: 10px;
}

.custom-options span:nth-of-type(1):hover{
	background: url(../img/icon/down01.svg);
	background-repeat: no-repeat;
	background-size: 15px 15px;
	background-position: 10px;
}

.custom-options span:nth-of-type(2){
	background: url(../img/icon/up02.svg);
	background-repeat: no-repeat;
	background-size: 15px 15px;
	background-position: 10px;
}

.custom-options span:nth-of-type(2):hover{
	background: url(../img/icon/up01.svg);
	background-repeat: no-repeat;
	background-size: 15px 15px;
	background-position: 10px;
}

.custom-options span:nth-of-type(3){
	background: url(../img/icon/status02.svg);
	background-repeat: no-repeat;
	background-size: 15px 15px;
	background-position: 10px;
}

.custom-options span:nth-of-type(3):hover{
	background: url(../img/icon/status01.svg);
	background-repeat: no-repeat;
	background-size: 15px 15px;
	background-position: 10px;
}

.custom-options span:nth-of-type(4){
	background: url(../img/icon/category02.svg);
	background-repeat: no-repeat;
	background-size: 15px 15px;
	background-position: 10px;
}

.custom-options span:nth-of-type(4):hover{
	background: url(../img/icon/category01.svg);
	background-repeat: no-repeat;
	background-size: 15px 15px;
	background-position: 10px;
}
/************************************
ページ共通
************************************/
#page{
	padding: 70px 0 50px;
}

#page p{
	line-height: 1.8;
}

#page.bg{
	background: #FAFAFA;
}

.content_inner{
	width: 880px;
	margin: 0 auto;
}

#page h1{
	font-size: 24px;
	margin-bottom: 40px;
}

#terms h1,#privacypolicy h1,#company h1{
	font-size: 24px;
	margin-bottom: 40px;
}

#terms h2,#privacypolicy h2{
	font-size: 20px;
	margin: 30px 0 10px;
	position: relative;
	padding-left: 25px;
}

#terms h2::before,#privacypolicy h2::before{
	content: '';
	background: #1C89EA;
	position: absolute;
	top: 7px;
	left: 0;
	width: 15px;
	height: 15px;
}

#terms h3{
	margin: 5px 0;
}

#terms section p{
	line-height: 2.2;
}

.message{
	font-weight: bold;
	margin-bottom: 40px;
	font-size: 16px;
}
/************************************
顧客一覧
************************************/
/* #clientlist .content_inner{
	width: 90%;
} */

#clientlist .console_course_search_ttl{
	text-align: center;
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 10px;
}

#clientlist .console_course_search_item{
	display: flex;
	justify-content: center;
}

#clientlist .console_course_search_item input[type="search"]{
	width: 50%;
	border: 1px solid #EFF1F4;
  background: #fff;
	height: 40px;
}

#clientlist .console_course_search_item input[type="submit"]{
	width: 10%;
	margin-left: 10px;
	background: #1C89EA;
	color: #fff;
	height: 40px;
	font-weight: bold;
}

#clientlist .not_found{
	margin-bottom: 40px;
	font-size: 16px;
}

#clientlist .console__table{
	margin-top: 40px;
}

#clientlist .console__table thead th{
	text-align: left;
	padding: 0 15px 10px 15px;
	width: 10%;
}

#clientlist .console__table tbody td{
	padding: 15px;
}

#clientlist .console__table td a{
	color: #0067c2;
	text-decoration: underline;
}

#clientlist .console__table td a:hover{
	text-decoration: none;
}
/************************************
顧客詳細
************************************/
#client dl{
	font-size: 16px;
}

#client dl dt{
	font-weight: bold;
	margin-bottom: 5px;
}

#client dl dd{
	margin-bottom: 20px;
}

#client dl textarea{
	height: 200px;
}
/************************************
ワークスペース
************************************/
#workspace .comment_content_wrap .comment_content img{
	width: 50px;
	height: 50px;
	object-fit: cover;
}

#workspace .comment_content_wrap .comment_content_answer{
	margin-top: 15px;
	border-bottom: 1px solid #ddd;
	padding-bottom: 15px;
}

#workspace .comment_content_wrap .comment_content_txt .name{
	font-weight: bold;
}

#workspace .comment_content_wrap .comment_content_txt time{
	color: #B0B4BA;
}

#workspace .comment_content_wrap .hide{
	display: none;
}

#workspace .course_review_btn{
	margin-top: 10px;
	font-weight: bold;
	cursor: pointer;
	display: inline-block;
}

#workspace .comment_content_textarea{
	margin-top: 20px;
}

#workspace .comment_content_txt textarea{
	height: 200px;
}

#contract .comment_create_btn.addition_btn{
	line-height: 1;
}

#contract #comment .dl_btn a{
	width: 300px;
  height: 55px;
  line-height: 55px;
  background: #0067C2;
  color: #fff;
  font-weight: bold;
  margin: 20px auto 0;
  display: block;
  border-radius: 5px;
}

#contract #comment .comment_content_textarea{
	margin-top: 40px;
}

#contract #comment .comment_content_textarea .comment_content_txt{
	width: 100%;
	margin: 0;
}

#workspace .comment_content_wrap .review_delete_btn a{
	color: #FF7052;
	font-weight: bold;
	text-decoration: underline;
}

#workspace .comment_content_wrap .review_delete_btn a:hover{
	text-decoration: none;
}
/************************************
契約書
************************************/
#contract .contract_sort_content_wrap{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 40px;
}

#contract .contract_sort_content_wrap .contract_sort_l{
	display: flex;
}

#contract .contract_sort_content_wrap .contract_sort_l .sort_all{
	margin-right: 20px;
	color: #B0B4BA;
	cursor: pointer;
}

#contract .contract_sort_content_wrap .contract_sort_l .sort_all:hover{
	color: #3C3E43;
}

#contract .contract_sort_content_wrap .contract_sort_r{
	display: flex;
	align-items: center;
}

#contract .contract_sort_content_wrap .contract_sort_r .contract_link{
	margin-right: 50px;
}

#contract .contract_sort_content_wrap .contract_sort_r .contract_link a{
	color: #B0B4BA;
}

#contract .contract_sort_content_wrap .contract_sort_r .contract_link a:hover{
	color: #3C3E43;
}

#contract .contract_sort_content_wrap .contract_sort_r .contract_create_btn input[type="button"]{
	width: 190px;
	position: relative;
	padding-left: 20px;
}

#contract .contract_sort_content_wrap .contract_sort_r .contract_create_btn .btn{
	position: relative;
}

#contract .contract_sort_content_wrap .contract_sort_r .contract_create_btn .btn::before{
	content: '';
	background-image: url(../img/icon/add.svg);
	background-size: 100% 100%;
	display: inline-block;
	vertical-align: middle;
	width: 15px;
	height: 15px;
	position: absolute;
	left: 20px;
	top: 20px;
	z-index: 10;
}

#contract .contract_sort_content_wrap .contract_sort_r .contract_create_btn img.create_btn_img{
	display: none;
}

#contract .contract_table table{
	width: 100%;
}

#contract .contract_table thead th{
	text-align: left;
	padding: 0 15px 10px 15px;
}

#contract .contract_table tbody tr{
	border-bottom: 1px solid #E9EBEF;
}

#contract .contract_table tbody tr:first-child{
	border-top: 1px solid #E9EBEF;
}

#contract .contract_table tbody tr td:nth-of-type(1){
	width: 40%;
}

#contract .contract_table tbody tr td:nth-of-type(2){
	width: 20%;
}

#contract .contract_table tbody tr td:nth-of-type(3){
	width: 20%;
}

#contract .contract_table tbody tr td:nth-of-type(4){
	width: 20%;
}

#contract .contract_table tbody td{
	padding: 15px;
}

#contract .contract_table tbody td span{
	width: 95px;
	display: block;
	text-align: center;
	padding: 10px 0;
	font-size: 12px;
	font-weight: bold;
}

#contract .contract_table tbody td.incomplete span{
	background: #FCEFEB;
	color: #FF7052;
}

#contract .contract_table tbody td.completion span{
	background: #E9F9F0;
	color: #2DC76D;
}

#contract .contract_table tbody td.confirmed span{
	background: #FFF9E5;
	color: #FFD806;
}

#contract .contract_table .table{
	display: table;
	width: 100%;
}

#contract .contract_table .table .thead_th:nth-of-type(1){
	width: 350px;
}

#contract .contract_table .table .thead_th:nth-of-type(2){
	width: 175px;
}

#contract .contract_table .table .thead_th:nth-of-type(3){
	width: 175px;
}

#contract .contract_table .table .thead_th:nth-of-type(4){
	width: 175px;
}

#contract .contract_table .table .thead_th{
	display: table-cell;
	font-weight: bold;
	padding: 0 15px 10px 15px;
}

#contract .contract_table .table .tbody_tr:first-child{
	border-top: 1px solid #E9EBEF;
}

#contract .contract_table .table .tbody_tr{
	border-bottom: 1px solid #E9EBEF;
	position: relative;
}

#contract .contract_table .table .tbody_td{
	display: table-cell;
	padding: 15px;
}

#contract .contract_table .table .tbody_tr .tbody_td:first-child{
	width: 350px;
}

#contract .contract_table .table .tbody_tr .tbody_td{
	width: 175px;
}

#contract .contract_table .table .tbody_tr .contract_edit_btn{
	position: absolute;
	top: 10px;
	right: 5px;
	cursor: pointer;
}

#contract .contract_table.contract_table_file .table .tbody_tr .contract_edit_btn{
	top: 10px;
}

#contract .contract_table .table .tbody_tr .contract_delete{
	display: none;
	position: absolute;
	top: 25px;
	right: 0;
	width: 290px;
	box-shadow: 1px 3px 3px #eee;
	background: #fff;
	z-index: 100;
	border-radius: 5px;
	padding: 25px 0 20px;
}

#contract .contract_table .table .tbody_tr .pop_up_menu span.close_btn{
	position: absolute;
  top: 0;
  right: 20px;
  font-size: 20px;
  cursor: pointer
}

#contract .contract_table .table .tbody_tr .pop_up_menu li{
	padding: 5px 20px;
	font-size: 12px;
	cursor: pointer;
	margin-top: 10px;
	position: relative;
	color: #B0B4BA;
}

#contract .contract_table .table .tbody_tr .pop_up_menu li:nth-of-type(1)::before{
	content: '';
	width: 10px;
	height: 10px;
	background: #FF7052;
	display: inline-block;
	border-radius: 50%;
	margin: 0 10px 0 3px;
}

#contract .contract_table .table .tbody_tr .pop_up_menu li:nth-of-type(2)::before{
	content: '';
	width: 10px;
	height: 10px;
	background: #FFD806;
	display: inline-block;
	border-radius: 50%;
	margin: 0 10px 0 3px;
}

#contract .contract_table .table .tbody_tr .pop_up_menu li:nth-of-type(3)::before{
	content: '';
	width: 10px;
	height: 10px;
	background: #2DC76D;
	display: inline-block;
	border-radius: 50%;
	margin: 0 10px 0 3px;
}

#contract .contract_table .table .tbody_tr .pop_up_menu li:nth-of-type(4)::before{
	content: '';
	width: 10px;
	height: 10px;
	background: #1C89EA;
	display: inline-block;
	border-radius: 50%;
	margin: 0 10px 0 3px;
}

#contract .contract_table .table .tbody_tr .pop_up_menu li img{
	width: 20px;
  vertical-align: middle;
  margin: 0 5px 3px 0;
}

#contract .contract_table .table .tbody_tr .pop_up_menu li:hover{
	background: #EFF1F4;
	color: #3C3E43;
}

#contract .contract_table .table .tbody_tr .pop_up_menu li img.pop_up_icon02{
	display: none;
}

#contract .contract_table .table .tbody_tr .pop_up_menu li:hover img.pop_up_icon01{
	display: none;
}

#contract .contract_table .table .tbody_tr .pop_up_menu li:hover img.pop_up_icon02{
	display: inline-block;
}

#contract .contract_table .table .tbody_tr a{
	display: block;
	width: 100%;
}

#contract .contract_table .table .tbody_tr:hover{
	background: #EFF1F4;
}

#contract .contract_table .table .tbody_tr .tbody_td span{
	width: 95px;
	display: block;
	text-align: center;
	padding: 10px 0;
	font-size: 12px;
	font-weight: bold;
}

#contract .contract_table .table .tbody_tr .tbody_td.incomplete span{
	background: #FCEFEB;
	color: #FF7052;
}

#contract .contract_table .table .tbody_tr .tbody_td.completion span{
	background: #E9F9F0;
	color: #2DC76D;
}

#contract .contract_table .table .tbody_tr .tbody_td.confirmed span{
	background: #FFF9E5;
	color: #FFD806;
}

#contract .contract_table .table .tbody_tr .tbody_td.archive span{
	background: #E1EDF8;
	color: #1C89EA;
}

#contract #new{
	width: 480px;
	margin: 0 auto;
}

#contract #new h1{
	font-size: 24px;
	text-align: center;
	margin-bottom: 40px;
}

#contract #new .radio_item{
	margin-bottom: 20px;
}

#contract #new .radio_item div{
	margin-bottom: 15px;
}

#contract #new #newfile_form .acf-field--post-title.is-required{
	display: none;
}

#contract #new #newfile_form .acf-field-61d690746ac30{
	display: none;
}

#contract #new input[type="file"]{
	display: none;
}

#contract #new #newfile_form .acf-file-uploader .hide-if-value a.button{
	background: #E1EDF8;
	cursor: pointer;
	color: #1C89EA;
	padding: 10px 25px;
	font-weight: bold;
	border-radius: 3px;
}

#contract #new #newfile_form .acf-file-uploader .hide-if-value a.button::before{
	content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url(../img/icon/upload_b.svg);
  background-size: contain;
  vertical-align: middle;
	background-repeat: no-repeat;
	margin: 0 5px 3px 0;
}

#contract #new label.file_style{
	background: #E1EDF8;
	cursor: pointer;
	color: #1C89EA;
	padding: 10px 25px;
	font-weight: bold;
	border-radius: 3px;
}

#contract #new label.file_style img{
	width: 15px;
	vertical-align: middle;
	margin: 0 5px 3px 0;
}

#contract #new .file_select_txt{
	margin: 15px 0 0 0;
}

#contract p.file_style_txt{
	display: inline-block;
	vertical-align: middle;
	color: #B0B4BA;
	padding-left: 10px;
	line-height: 1;
	margin-bottom: 0;
}

#contract #new select{
	border-radius: 5px;
  padding: 10px;
  width: 100%;
  height: 55px;
}

#contract #new .btn{
	margin-top: 50px;
}

#contract h1{
	font-size: 20px;
	margin-bottom: 40px;
}

#contract .addition_btn{
	width: 190px;
	height: 55px;
	background: #0067C2;
	color: #fff;
	line-height: 55px;
	text-align: center;
	font-weight: bold;
	border-radius: 5px;
	cursor: pointer;
}

#contract .addition_btn:hover{
	opacity: 0.8;
}

#contract .addition_btn img{
	vertical-align: middle;
	width: 15px;
	margin: 0 5px 3px 0;
}

#contract .file_create_btn{
	margin-top: 20px;
}

#contract .file_create_btn a{
	color: #fff;
}

#contract .comment_content_wrap{
	margin-top: 30px;
}

/* #contract #workspace .contract_table .table .tbody_tr .tbody_td.count{
	color: #0067C2;
	text-decoration: underline;
} */

#contract #workspace .contract_table .table .tbody_tr .tbody_td.count_no{
	color: #B0B4BA
}

#contract .file_preview_content_wrap{
	margin-bottom: 40px;
	background: #E9EBEF;
	padding: 25px 175px;
}

#contract #comment .comment_ttl{
	border-bottom: 1px solid #E9EBEF;
	padding-bottom: 15px;
	font-weight: bold;
}

#contract #comment .comment_content{
	display: flex;
}

#contract #comment .comment_content.comment_content_answer{
	padding: 20px 0;
}

#contract #comment .comment_content_txt{
	width: 750px;
	margin-left: 20px;
}

#contract #comment .comment_content_txt p.name{
	font-weight: bold;
}

#contract #comment .comment_content_txt time{
	color: #B0B4BA;
}

#contract #comment .comment_content_txt p.comment_txt{
	margin-top: 10px;
}

#contract #comment .comment_content_answer .comment_content_txt{
	border-bottom: 1px solid #E9EBEF;
	padding-bottom: 20px;
}

#contract #comment .comment_content_textarea textarea{
	height: 165px;
}

/* #contract #comment .comment_create_btn{
	margin: 20px 0 0 74px;
} */

#contract #task .complete_content .task_ttl{
	padding-bottom: 10px;
	font-weight: bold;
}

#contract #task .complete_content.complete .task_ttl{
	color: #1C89EA;
}

#contract #task .complete_content ul{
	background: #fff;
}

#contract #task .complete_content li{
	border-bottom: 1px solid #E9EBEF;
	padding: 20px;
	position: relative;
}

#contract #task .complete_content.incomplete li{
	padding-left: 40px;
}

#contract #task .complete_content.incomplete li::before{
	content: '';
	position: absolute;
	top: 22px;
	left: 15px;
	border: 1px solid #B0B4BA;
	width: 15px;
	height: 15px;
	border-radius: 50%;
}

#contract #task .complete_content.incomplete textarea{
	height: 165px;
	margin: 20px 0;
}

#contract #task .complete_content.complete{
	margin-top: 40px;
}

#contract #task .complete_content.complete li img{
	vertical-align: middle;
	margin: 0 10px 5px 0;
	width: 15px;
}

#contract #edit .hide-if-value a.button.acf-button{
	background: #E1EDF8;
  cursor: pointer;
  color: #1C89EA;
  padding: 10px 25px;
  font-weight: bold;
  border-radius: 3px;
}

/* #contract #edit .hide-if-value a.button.acf-button:hover{
	opacity: 0.8;
} */

#contract #edit .hide-if-value a.button.acf-button::before{
	content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url(../img/icon/upload_b.svg);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin: 0 5px 3px 0;
}

#contract #edit .acf-field-post-object .acf-label{
	display: none;
}

#contract #edit .file_style_txt{
	display: inline-block;
}

#contract #edit .file_style input[type="file"]{
	display: none;
}

#contract #edit .file_style{
	background: #E1EDF8;
  cursor: pointer;
  color: #1C89EA;
  padding: 10px 25px;
  font-weight: bold;
  border-radius: 3px;
}

#contract #edit .file_style img{
  display: inline-block;
  width: 20px;
  height: 20px;
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin: 0 5px 3px 0;
}
/************************************
ダウンロードコンテンツ
************************************/
#dlc .dlc_sort_content{
	margin-bottom: 30px;
}

#dlc .dlc_sort_content .dlc_sort_content_head{
	font-size: 18px;
	font-weight: bold;
	position: relative;
	margin-bottom: 10px;
	padding-left: 25px;
}

#dlc .dlc_sort_content .dlc_sort_content_head::before{
	content: '';
	position: absolute;
	background: #1C89EA;
	width: 15px;
	height: 15px;
	top: 6px;
	left: 0;
}

#dlc .dlc_sort_content input{
	height: 40px;
}

#dlc .dlc_sort_content input.search_input{
	border: 1px solid #EFF1F4;
	background: #fff;
	width: 775px;
}

#dlc .dlc_sort_content input[type="submit"]{
	background: #1C89EA;
	color: #fff;
	width: 95px;
	font-weight: bold;
}

#dlc .dlc_sort_content ul{
	display: flex;
	flex-wrap: wrap;
}

#dlc .dlc_sort_content li{
	margin: 0 0 5px 5px;
}

#dlc .dlc_sort_content li a{
	width: 100%;
	display: block;
	color: #868890;
	background: #E9EBEF;
	padding: 5px 10px;
	border-radius: 3px;
	text-align: center;
}

#dlc .dlc_sort_content li a:hover{
	color: #3C3E43;
}

#dlc .dlc_sort_content li.current a{
	color: #fff;
	background: #1C89EA;
}

#dlc .dlc_table .table{
	display: table;
	width: 100%;
}

#dlc .dlc_table .table .thead_th:nth-of-type(1){
	width: 365px;
}

#dlc .dlc_table .table .thead_th:nth-of-type(2){
	width: 300px;
}

#dlc .dlc_table .table .thead_th:nth-of-type(3){
	width: 300px;
}

#dlc .dlc_table .table .thead_th{
	display: table-cell;
	font-weight: bold;
	padding: 0 15px 10px 15px;
}

#dlc .dlc_table .table .tbody_tr:first-child{
	border-top: 1px solid #E9EBEF;
}

#dlc .dlc_table .table .tbody_tr{
	border-bottom: 1px solid #E9EBEF;
}

#dlc .dlc_table .table .tbody_td{
	display: table-cell;
	padding: 15px;
}

#dlc .dlc_table .table .tbody_tr .tbody_td:first-child{
	width: 365px;
}

#dlc .dlc_table .table .tbody_tr .tbody_td{
	width: 300px;
}

#dlc .dlc_table .table .tbody_tr .tbody_td:last-child{
	margin: 0 0 0 auto;
	text-align: right;
}

#dlc .dlc_table .table .tbody_tr .tbody_td:last-child a{
	background: #1C89EA;
	color: #fff;
	display: inline-block;
	width: 140px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	font-size: 12px;
}

#dlc .dlc_table .table .tbody_tr .tbody_td:last-child img{
	width: 15px;
	vertical-align: middle;
	margin: 0 5px 3px 0;
}

#dlc .dlc_detail_content_wrap{
	margin-bottom: 60px;
}

#dlc .dlc_detail_preview{
	width: 80%;
	margin: 50px auto;
}

#dlc .ead-document-loading{
	display: none;
}

#dlc .dlc_detail_content_wrap .dlc_cat_tag ul{
	display: flex;
}

#dlc .dlc_detail_content_wrap .dlc_cat_tag li{
	margin: 0 0  5px 5px;
}

#dlc .dlc_detail_content_wrap .dlc_cat_tag li a{
	width: 100%;
  display: block;
  color: #868890;
  background: #E9EBEF;
  padding: 5px 10px;
  border-radius: 3px;
  text-align: center;
}

#dlc .dlc_detail_content_wrap h1{
	font-size: 24px;
	margin: 10px 0;
}

#dlc .dlc_detail_content_wrap h2{
	font-size: 18px;
	position: relative;
	padding-left: 25px;
	margin-bottom: 5px
}

#dlc .dlc_detail_content_wrap h2::before{
	content: '';
  position: absolute;
  background: #1C89EA;
  width: 15px;
  height: 15px;
  top: 6px;
  left: 0;
}

#dlc .dlc_detail_content_wrap .dlc_detail_ex{
	margin-bottom: 30px;
}

#dlc .dlc_detail_table{
	margin-bottom: 40px;
}

#dlc .dlc_detail_table dl{
	display: flex;
}

#dlc .dlc_detail_table dt{
	background: #EFF1F4;
	color: #868890;
	width: 240px;
	padding: 25px;
}

#dlc .dlc_detail_table dd{
	background: #fff;
	width: 640px;
	padding: 25px;
}

#dlc .dlc_detail_content_wrap .btn a{
	width: 300px;
	height: 55px;
	line-height: 55px;
  background: #0067C2;
  color: #fff;
  font-weight: bold;
  margin: 0 auto;
	display: block;
	border-radius: 5px;
}
/************************************
動画コンテンツ
************************************/
.cat_menu{
	position: relative;
	background: #fff;
	margin-bottom: 30px;
}

.cat_menu ul{
	display: flex;
	justify-content: space-around;
	padding: 20px 0;
}

.cat_menu ul li.current a{
	color: #3C3E43;
  border-bottom: 2px solid #1C89EA;
  padding-bottom: 10px;
  font-weight: bold;
}

.cat_menu ul li a{
	color: #B0B4BA;
}

.cat_menu ul li a:hover{
	color: #1C89EA;
}

.cat_menu .cat_menu_content_sp{
	display: none;
}
/************************************
アーカイブ共通
************************************/
.page_content_l{
	float: left;
	width: 600px;
}

.subside{
	float: right;
	width: 240px;
}

.subside p.side_ttl{
	font-weight: bold;
	margin-bottom: 15px;
	font-size: 16px;

}

.subside p.side_ttl img{
	vertical-align: middle;
	margin: 0 10px 5px 0;
	width: 20px;
}

.subside .popular_wrap{
	margin-bottom: 40px;
}

.subside .popular_wrap li{
	background: #fff;
	margin-bottom: 20px;
}

.subside .popular_wrap li .column_content_wrap{
	display: flex;
	align-items: center;
}

.subside .popular_wrap li .column_img{
	width: 25%;
}

.subside .popular_wrap li .column_content{
	width: 75%;
	padding: 5px 10px;
}

.subside .popular_wrap li time{
	color: #B0B4BA;
	font-size: 10px;
}

.subside .popular_wrap li h2{
	font-size: 10px;
	margin-top: 5px;
}

.subside .popular_wrap .qa_content{
	padding: 10px;
}

.subside .side_wrap{
	background: #fff;
	border-radius: 5px;
	padding: 25px 15px;
}

.subside .side_wrap li:first-child{
	padding-top: 0;
}

.subside .side_wrap li{
	font-weight: bold;
	border-bottom: 1px solid #E9EBEF;
	padding: 15px 0;
}

.subside .side_wrap li a span{
	color: #B0B4BA;
	font-size: 12px;
	margin-left: 10px;
}

.subside .side_wrap li:hover a{
	color: #1C89EA;
}

.pagenavi{
	margin-top: 40px;
}

.pagenavi span.current{
	background: #1C89EA;
	color: #fff;
	width: 40px;
	height: 40px;
	line-height: 40px;
	display: inline-block;
	text-align: center;
	font-weight: bold;
	margin: 0 10px;
}

.pagenavi a{
	color: #B0B4BA;
	background: #fff;
	width: 40px;
	height: 40px;
	line-height: 40px;
	display: inline-block;
	text-align: center;
	margin: 0 10px;
}
/************************************
動画コンテンツ
************************************/
#video ul.archive_video{
	display: flex;
	flex-wrap: wrap;
}

#video .archive_video li{
	width: 280px;
	margin: 0 0 20px 20px;
}

#video .archive_video li:nth-child(3n+1){
	margin-left: 0;
}

#video .video_thumbnail img,#mypage .video_thumbnail img{
	width: 280px;
	height: 160px;
	object-fit: cover;
}

#video .archive_video li .video_item iframe{
	width: 100%;
	height: 160px;
}

#video .archive_video li .video_txt{
	background: #fff;
	padding: 15px;
}

#video .archive_video li .video_txt h2{
	font-size: 14px;
}

#video .archive_video li .video_txt_item{
	display: flex;
	justify-content: space-between;
	font-size: 12px;
	color: #B0B4BA;
	margin-top: 10px;
}

#video .single_video .single_video_ttl{
	margin: 10px 0;
}

#video .single_video .single_video_ttl h1{
	font-size: 24px;
}

#video .single_video p.cat_txt{
	background: #EFF1F4;
	padding: 10px;
	border-radius: 2px;
	display: inline-block;
	line-height: 1;
}

#video .single_video video{
	width: 100%;
}

#video .single_video iframe{
	width: 100%;
	height: 500px;
}

#video .single_video .single_content h2{
	font-size: 20px;
	position: relative;
	margin: 20px 0 5px;
	padding-left: 25px;
}

#video .single_video .single_content h2::before{
	content: '';
	background: #1C89EA;
	position: absolute;
	top: 7px;
	left: 0;
	width: 15px;
	height: 15px;
}

#video .post_link .prev{
	width: 48%;
	border-right: 1px solid #E9EBEF;
	padding-right: 20px;
}

#video .post_link .next{
	width: 48%;
}

#video .post_link .video_post_link_content{
	display: flex;
	align-items: center;
}

#video .post_link .pn_txt a{
	font-weight: bold;
	display: block;
}

#video .post_link p{
	margin-bottom: 5px;
}

#video .post_link iframe{
	width: 160px;
	height: 90px;
}

#video .post_link .video_thumbnail img{
	width: 160px;
	height: 90px;
}

#video .post_link .video_post_link_content h3 a{
	font-weight: normal;
	color: #B0B4BA;
	font-size: 12px;
}

#video .post_link .video_post_link_content h3 a:hover{
	color: #1C89EA;
}

#video .post_link h3,#video .post_link p{
	font-size: 12px;
}

#video .post_link .prev .video_post_link_content h3{
	margin-left: 10px;
}

#video .post_link .next .video_post_link_content{
	justify-content: flex-end;
}

#video .post_link .next .video_post_link_content h3{
	margin-right: 10px;
}

#video .post_link .next p{
	text-align: right;
}
/************************************
コラム
************************************/
#column .page_content_l .archive_column li{
	background: #fff;
	margin-bottom: 15px;
}

#column .page_content_l .archive_column li .column_content_wrap{
	display: flex;
	align-items: flex-start;
}

#column .page_content_l .archive_column li .column_img{
	width: 40%;
}

#column .page_content_l .archive_column li .column_content{
	width: 60%;
	padding: 15px;
}

#column .page_content_l .archive_column li .column_content p.cat_txt{
	background: #1C89EA;
	color: #fff;
	display: inline-block;
	border-radius: 3px;
	padding: 5px 10px;
	font-weight: bold;
}

#column .page_content_l .archive_column li .column_content p{
	font-size: 12px;
	margin: 5px 0;
}

#column .page_content_l .archive_column li .column_content time{
	color: #B0B4BA;
	font-size: 12px;
}

#column #ez-toc-container{
	width: 90%;
	margin: 30px auto;
	padding: 25px;
	background: #EFF1F4;
	box-shadow: none;
	border: none;
}

#column #ez-toc-container p.ez-toc-title{
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 15px;
}

#column #ez-toc-container ul li::marker{
	color: #1C89EA;
}

#column #ez-toc-container ul li{
	margin-top: 10px;
}

#column #ez-toc-container ul li a{
	color: #868890;
}

#column .single_column time{
	color: #B0B4BA;
	font-size: 14px;
}

#column .single_column h1{
	font-size: 20px;
	margin: 10px 0;
}

#column .single_column .single_content{
	border-bottom: 1px solid #E9EBEF;
	padding-bottom: 40px;
}

#column .single_column .single_content h2{
	font-size: 18px;
	position: relative;
	padding-left: 25px;
	margin: 40px 0 10px;
}

#column .single_column .single_content h2:first-child{
	margin-top: 0;
}

#column .single_column .single_content h2::before{
	content: '';
	background: #1C89EA;
	position: absolute;
	top: 6px;
	left: 0;
	width: 15px;
	height: 15px;
}

#column .single_column .single_content .column_img{
	margin-bottom: 10px;
}

#column .single_column .single_content p{
	line-height: 2;
}

#column .single_column .single_content p a{
	color: #868890;
	text-decoration: underline;
}

#column .single_column .single_content p a:hover{
	text-decoration: none;
}

.post_link{
	display: flex;
	justify-content: space-between;
	margin-top: 40px;
}

.post_link a:hover{
	color: #1C89EA;
}
/************************************
QA
************************************/
#qa .qa_search_wrap h2{
	font-size: 18px;
	position: relative;
	margin-bottom: 10px;
	padding-left: 25px;
}

#qa .qa_search_wrap h2::before{
	content: '';
	background: #1C89EA;
	position: absolute;
	top: 6px;
	left: 0;
	width: 15px;
	height: 15px;
}

#qa .qa_search_wrap .qa_search_content{
	margin-bottom: 30px;
}

#qa .qa_search_wrap input{
	height: 40px;
}

#qa .qa_search_wrap input.search_input{
	border: 1px solid #EFF1F4;
	background: #fff;
	width: 510px;
}

#qa .qa_search_wrap input[type="submit"]{
	background: #1C89EA;
	color: #fff;
	width: 75px;
	font-weight: bold;
	margin-left: 5px;
}

#qa .page_content_l .archive_qa li{
	background: #fff;
	margin-bottom: 25px;
	padding: 15px;
}

#qa .page_content_l .archive_qa li h2{
	margin: 10px 0;
}

#qa .page_content_l .archive_qa li p{
	font-size: 12px;
}

#qa p.cat_txt a,#column p.cat_txt a{
	background: #1C89EA;
	color: #fff;
	display: inline-block;
	border-radius: 3px;
	padding: 5px 10px;
	font-weight: bold;
	font-size: 12px;
}

#qa p.cat_txt a:hover,#column p.cat_txt a:hover{
	opacity: 0.8;
}

#qa .page_content_l .archive_qa li p.q_txt{
	margin-bottom: 10px;
}

#qa .page_content_l .archive_qa li time{
	color: #B0B4BA;
	font-size: 12px;
}

.tag_item{
	margin-top: 15px;
}

.tag_item a{
	color: #B0B4BA;
	font-size: 12px;
	margin: 0 5px 5px 0;
}

#qa .single_qa{
	background: #fff;
	padding: 30px;
}

.cat_time_box{
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.cat_time_box .cat_l p{
	padding: 0;
}

.cat_l p{
	background: #1C89EA;
	color: #fff;
	display: inline-block;
	border-radius: 3px;
	padding: 5px 10px;
	font-weight: bold;
	font-size: 12px;
}

#qa .single_qa time{
	color: #B0B4BA;
}

#qa .single_qa .single_q_ttl{
	margin: 10px 0;
}

#qa .single_qa .single_q_ttl h1{
	font-size: 18px;
}

#qa .single_qa .a_content{
	margin-top: 30px;
}

#qa .single_qa .a_content .single_a_ttl{
	margin-bottom: 10px;
}

#qa .single_qa .a_content .single_a_ttl span{
	background: #1C89EA;
	color: #fff;
	font-size: 20px;
	border-radius: 5px;
	width: 30px;
	height: 30px;
	line-height: 30px;
	font-weight: bold;
	text-align: center;
	display: inline-block;
	vertical-align: middle;
}

#qa .single_qa .a_content .single_a_ttl h2{
	display: inline-block;
	width: 90%;
	vertical-align: middle;
	font-size: 16px;
	margin-left: 5px;
}

#qa .qa_search_wrap.single_qa_search_wrap{
	margin-top: 40px;
}

#qa .keyword_txt{
	margin-bottom: 10px;
}

#qa .keyword_txt span{
	font-weight: bold;
	font-size: 16px;
}

#qa .keyword_txt span:nth-of-type(2){
	font-size: 18px;
}

#qa .not_found{
	font-weight: bold;
}
/************************************
法律相談
************************************/
#form .form_content{
	width: 720px;
	margin: 0 auto;
}

#form h1{
	font-size: 20px;
	position: relative;
	padding-left: 25px;
	margin-bottom: 10px;
}

#form h1::before{
	content: '';
  position: absolute;
  background: #1C89EA;
  width: 15px;
  height: 15px;
  top: 7px;
  left: 0;
}

#form p.intro_txt{
	margin-bottom: 40px;
}

#form .form_content dt{
	margin-bottom: 5px;
	font-size: 18px;
}

#form .form_content dt span{
	background: #FF7052;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	padding: 5px;
	border-radius: 3px;
	vertical-align: middle;
	margin-left: 20px;
}

#form .form_content dd{
	margin-bottom: 40px;
}

#form .form_content dd span{
	display: block;
	color: #B0B4BA;
	font-size: 14px;
	margin-top: 5px;
}

#form .form_content dd span.wpcf7-not-valid-tip{
	color: #dc3232;
}

#form .form_content dd input{
	width: 100%;
}

#form .form_content dd textarea{
	width: 100%;
	height: 215px;
}

#form .form_content .btn_wrap{
	text-align: center;
}

#form .form_content .wpcf7-acceptance .wpcf7-list-item{
	margin-left: 0;
}

#form .form_content .wpcf7-acceptance .wpcf7-list-item a{
	color: #1C89EA;
	text-decoration: underline;
}

#form .form_content input[type="submit"]{
	width: 300px;
	height: 55px;
	color: #fff;
	background: #0067C2;
	font-weight: bold;
	margin-top: 20px;
}

#form .thx_ttl h1{
	font-size: 20px;
	position: relative;
	padding-left: 25px;
	margin-bottom: 10px;
}

#form .thx_ttl h1::before{
	content: '';
	background: #1C89EA;
	position: absolute;
	top: 6px;
	left: 0;
	width: 15px;
	height: 15px;
}

.top_back_btn a{
	color: #fff;
	background: #0067C2;
	width: 300px;
	height: 55px;
	line-height: 55px;
	display: block;
	margin: 0 auto;
	text-align: center;
	font-weight: bold;
}

.top_back_btn a:hover{
	opacity: 0.8;
}
/************************************
通知
************************************/
#notification .page_content_l .archive_notification li{
	background: #fff;
	border-bottom: 1px solid #E9EBEF;
}

#notification .page_content_l .archive_notification li:hover{
	background: #EFF1F4;
}

#notification .page_content_l .archive_notification li .notification_item{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 25px 25px 20px 25px;
	position: relative;
}

#notification .page_content_l .archive_notification li .notification_item::after{
	position: absolute;
  display: block;
  content: '';
  width: 10px;
  height: 10px;
  top: 50%;
  right: 25px;
  margin-top: -3px;
  border-bottom: 1px solid #B0B4BA;
  border-right: 1px solid #B0B4BA;
  transform: rotate(45deg) translateY(-50%);
  transition: all .4s ease-in-out;
  transform-origin: 50% 0;
}

#notification .page_content_l .archive_notification li .notification_item.open::after{
	margin-top: 3px;
  transform: rotate(-135deg) translateY(-50%);
}

#notification .page_content_l .archive_notification li .notification_content{
	width: 90%;
}

#notification .page_content_l .archive_notification li time{
	color: #B0B4BA;
}

#notification .page_content_l .archive_notification li h2{
	font-size: 16px;
	margin-top: 5px;
}

#notification .page_content_l .archive_notification li:hover .notification_arrow img.arrow_icon02{
	display: block;
}

#notification .page_content_l .archive_notification li:hover .notification_arrow img.arrow_icon01{
	display: none;
}

#notification .notification_arrow img.arrow_icon02{
	display: none;
}

#notification .notification_txt{
	display: none;
	padding: 0 25px 25px 25px;
}

#notification .page_content_l .archive_notification li.notification_list.hash .notification_txt{
	display: block;
}
/************************************
お知らせ
************************************/
#news .page_content_l .archive_news li{
	background: #fff;
	border-bottom: 1px solid #E9EBEF;
}

#news .page_content_l .archive_news li:hover{
	background: #EFF1F4;
}

#news .page_content_l .archive_news li a{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 25px;
}

#news .page_content_l .archive_news li .news_content{
	width: 90%;
}

#news .page_content_l .archive_news li time{
	color: #B0B4BA;
}

#news .page_content_l .archive_news li h2{
	font-size: 16px;
	margin-top: 5px;
}

#news .single_news{
	background: #fff;
	padding: 30px 0;
}

#news .single_news .single_news_ttl{
	border-bottom: 1px solid #E9EBEF;
	padding: 0 25px 20px 25px;
	margin-bottom: 20px;
}

#news .single_news .single_news_ttl time{
	color: #B0B4BA;
	font-size: 16px;
}

#news .single_news .single_news_ttl h1{
	font-size: 16px;
	margin-top: 10px;
}

#news .single_news .single_content{
	padding: 0 25px;
}

#news .single_news .single_content h2{
	margin: 10px 0;
}

#news .single_news .single_content h3{
	margin: 10px 0;
}

#news .single_news .single_content a{
	color: #0067C2;
}

#news .single_news .single_content a:hover{
	text-decoration: underline;
}

#news .single_news .single_content img{
	max-width: 100%;
	width: auto;
	height: auto;
}

#news .post_link a{
	display: block;
	width: 165px;
	height: 55px;
	line-height: 55px;
	background: #0067C2;
	color: #fff;
	margin: 30px auto 0;
	text-align: center;
	font-weight: bold;
	border-radius: 5px;
}

#news .page_content_l .archive_news li:hover .news_arrow img.arrow_icon02{
	display: block;
}

#news .page_content_l .archive_news li:hover .news_arrow img.arrow_icon01{
	display: none;
}

#news .news_arrow img.arrow_icon02{
	display: none;
}
/************************************
会社概要
************************************/
#company .company_item{
	display: flex;
}

#company .company_item dt{
	width: 20%;
	font-weight: bold;
	border-bottom: 2px solid #1964cb;
	padding: 25px 15px;
}

#company .company_item dd{
	width: 70%;
	border-bottom: 1px solid #ddd;
	padding: 25px 15px;
}
/************************************
breadcrumbs
************************************/
.breadcrumbs {
	width: 100%;
	font-size: 12px;
	margin-top: 60px;
	color: #B0B4BA;
}

.breadcrumbs span a{
	color: #B0B4BA;
	text-decoration: underline;
}

.breadcrumbs span a:hover{
	text-decoration: none;
}

.breadcrumbs span.current-item{
	color: #3C3E43;
}
/************************************
404
************************************/
#page404 .page__head{
	text-align: center;
	margin-bottom: 40px;
}


/************************************
footer
************************************/
footer {
	width: 100%;
	background: #2c7ff1;
	padding: 20px 0;
}

.footer_wrap{
	display: flex;
	justify-content: space-between;
	width: 90%;
	margin: 0 auto;
}

.footer_wrap ul{
	display: flex;
}

.footer_wrap ul li{
	border-right: 1px solid #fff;
	padding: 0 15px;
}

.footer_wrap ul li a{
	color: #fff;
	font-size: 12px;
}

.footer_wrap ul li a:hover{
	text-decoration: underline;
}

.footer_wrap ul li:first-child{
	padding-left: 0;
}

.footer_wrap ul li:last-child{
	border-right: none;
}

.footer_wrap .copyright p{
	color: #fff;
	font-size: 12px;
}
