/*==============================================*/
/* moodle.css内の指定をクリアする設定 */
/*==============================================*/
/* 背景色、ボーダーを無しに */
.aalink.focus, .aalink:focus,
#page-footer a:not([class]).focus,
#page-footer a:not([class]):focus,
.arrow_link.focus,
.arrow_link:focus,
a:not([class]).focus,
a:not([class]):focus,
.activityinstance > a.focus,
.activityinstance > a:focus {
    outline: 0.2rem solid transparent;
    color: #212529;
    background-color: none !important;
    box-shadow: none !important; }

/*==============================================*/
/* 汎用設定 */
/*==============================================*/

a, a:link, a:visited, a:active {
    color: inherit !important;
}
em {
    font-style: normal;
}
:focus-visible {
    outline: none !important;
}
div#goto-top-link {
    z-index: 99999 !important;
}
.row {	/* パンくずリスト */
	margin-right: 0 !important;
	margin-left: 0 !important;
}
.card {
	box-shadow: none !important;
	border:none !important;
}
.d-print-none {
	width: 250px;
}
.google-visualization-table-tr-head [role="button"] {
	display: table-cell !important;
    text-align: center;
}
.page_resource_content {
    line-height: 1.7;
}
nav.fixed-top {
	position: static;
}
div#page {
	margin-top:0;
}
.l-content__sub {
	min-width: auto !important;
}
.empty-region-side-post.used-region-side-pre #page-content .region-main {
	flex: 0 0 100% !important;
	max-width: 100% !important;
}
[role="button"] {
	white-space: normal !important;
}
.google-visualization-table-tr-head [role="button"] {
	display: table-cell !important;
    text-align: center;
}

body section#region-main {
	border: none !important;
	background: transparent;
	border-radius: 0;
}
.p-card__item {
	margin-right: 30px;
}
.l-content__main {
    background-color: #f0f0f0;
}
section[class*="block_html"],
section[class*="block_cs_suggest"],
section[class*="block_news_items"],
section[class*="p-twitter"] {
    background-color: transparent;
}
section[class*="block_cs_suggest"] a,
section[class*="block_cs_suggest"] a:link,
section[class*="block_cs_suggest"] a:visited,
section[class*="block_cs_suggest"] a:active {
    text-decoration: none !important;
}
body[id*="page-question-"] section#region-main,
body[id*="page-mod-quiz-"] section#region-main,
body[id*="page-mod-forum-"] section#region-main,
body[id*="page-mod-resource-"] section#region-main,
body[id*="page-mod-feedback-"] section#region-main,
body[id*="page-admin-tool-customlang"] section#region-main,
body[id*="page-course-"] section#region-main,
body[id*="page-mod-hsvideo"] section#region-main,
body[id*="page-grade-"] section#region-main,
body[id*="page-enrol-"] section#region-main,
body[id*="page-admin-roles-"] section#region-main,
body[id*="page-admin-theme-"] section#region-main,
body[id*="page-admin-tool-"] section#region-main,
body[id*="page-blocks-keyword_search"] section#region-main,
body#page-admin-user section#region-main,
body#page-user-edit section#region-main,
body#page-admin-search section#region-main,
body#page-mod-scorm-player section#region-main,
body#page-mod-page-mod section#region-main,
/* cmid-69 cmid-102 はマイページ */
body#page-mod-page-view:not([class*="cmid-69 "]) section#region-main,
body#page-mod-page-view:not([class*="cmid-102 "]) section#region-main,
body#page-course-index-category section#region-main,
body#page-mod-scorm-mod section#region-main,
body#page-mod-scorm-view section#region-main,
body#page-my-indexsys section#region-main,
body#page-course-editsection section#region-main,
/*body#page-course-view-topics section#region-main, */
body#page-admin-course-customfield section#region-main,
body#page-login-change_password section#region-main,
body#page-user-editadvanced section#region-main,
body#page-admin-tool-dataprivacy-summary  section#region-main {
	margin: 0 1em 1em 1em;
	background-color: #FFF;
	border-radius: 5px;
	padding: 1em !important;
}

/*管理者用のボタンの表示設定*/
body#page-course-edit div#fgroup_id_buttonar div[class*="form-submit"] .btn-primary,
body#page-mod-feedback-edit_item div#fgroup_id_buttonar input#id_update_item,
body#page-mod-feedback-edit_item div#fgroup_id_buttonar input#id_clone_item,
body#page-mod-feedback-edit_item div#fgroup_id_buttonar input#id_save_item,
body#page-question-type-description input#id_updatebutton {
    color: #fff !important;
    background-color: #0c5ba1 !important;
    border-color: #0b5496 !important;
    padding: 0.5em 1em !important;
    margin-right: 1em !important;
}
body#page-mod-quiz-edit input#repaginatecommand {
    background-color: #0b5496;
    border: 1px solid #0b5496;
    color: #fff;
}

/*==============================================*/
/* 管理者用 */
/*==============================================*/
body section#region-main {
	border: none !important;
}
body[id*="page-admin-setting"] section#region-main {
	margin: 0 1em 1em 1em !important;
	padding: 1em !important;
	background-color: #FFF !important;
	border: 1px solid rgba(0,0,0,.125) !important;
}
body#page-admin-setting-courses form#adminsettings h3 {
	margin-bottom: 1em !important;
}
input#id_submitbutton, input#id_submitbutton2 {
	color: #fff;
	background-color: #0c5ba1;
	border-color: #0b5496;
	padding: 0.5em 1em;
	margin-right: 1em;
}
input#id_cancel {
	color: #333;
	background-color: #b8c1ca;
	border-color: #0b5496;
	padding: 0.5em 1em;
	margin-right: 1em;
}
fieldset#id_files_fieldset div[class*="card"],
fieldset#id_video_filemanager_fieldset div[class*="card"],
fieldset#id_packagefile_fieldset div[class*="card"] {
	border: 1px solid #8f959e !important;
	border-radius: 0;
}

/*==============================================*/
/* ユーザー登録ページの表示設定 */
/*==============================================*/
@media (min-width: 1200px) {
    div[class*="col-xl-6"] {
        max-width: 100% !important;
    }
}
/*
@media screen and (min-width: 1200px) スクリーンサイズが1200px以上の場合に適用
@media screen and (max-width: 1000px) スクリーンサイズが1000px以下の場合に適用
*/
.regist_info {
    background-color: #eee;
    padding: 1em;
    margin-bottom: 1em;
}
@media screen and (min-width: 1200px) {
    div.regist_info2 img {
        max-width: 90%;
    }
}
/*項目ごとに仕切り線を入れる*/
/*passwordpolicyinfoは修正されたら直すこと！*/
div#fitem_id_username,
div#fitem_id_password,
div#fitem_id_email,
div#fitem_id_birthyear,
div#fitem_id_country_custom,
div#fitem_id_country,
div#fitem_id_city_custom,
div#fitem_id_city,
div#fitem_id_firstname,
div#fitem_id_lastname,
div#fitem_id_facility,
div#fitem_id_institution_custom,
div#fitem_id_institution,
div#fgroup_id_interest_01,
div#fitem_id_interest,
div#fitem_id_expertise,
div#fitem_id_interest,
div#fgroup_id_itemarr,
div#fgroup_id_occupation_01,
div#fgroup_id_role_01,
div#fgroup_id_reg_reason,
div#fgroup_id_delivery,
div#fitem_id_user_terms_of_service,
div#fgroup_id_buttonar {
    border-top: 1px solid #9d9d9d;
    padding-top: 1em;
}
div#fitem_id_email2,
div#fitem_id_lastname + div#fitem_id_firstname,
div#fitem_id_firstname + div#fitem_id_lastname {
    border-top: 1px dashed silver !important;
    padding-top: 1em;
}
div#fgroup_id_interest_01 div[class*="col-form-label"],
div#fgroup_id_occupation_01 div[class*="col-form-label"],
div#fgroup_id_reg_reason div[class*="col-form-label"],
div#fgroup_id_role_01 div[class*="col-form-label"],
div#fgroup_id_delivery div[class*="col-form-label"] {
    padding-top: 0;
}
body#page-login-signup div.card-body .form-control[readonly] {
    pointer-events: none !important;
}
form#form_user_regist textarea#id_user_terms_of_service {
    background-color: #fff;
}
form#form_user_regist .form-control::placeholder {
    color: #c5c5c5 !important;
}
body#page-login-signup section#region-main,
body#page-login-confirm section#region-main {
    margin: 0 1em 1em 1em;
    background-color: #FFF;
    border-radius: 5px;
    padding: 1em !important;
}
body#page-login-confirm section#region-main div.singlebutton {
    margin-top: 1.25rem;
}
body[class*="path-blocks-signup-confirm"] div#sign_up_confirm_div {
    background-color: #fff;
    width: 100% !important;
    max-width: 100%;
    margin: 0;
    border: none;
}
body[class*="path-blocks-signup-confirm"] div#sign_up_confirm_div {
    padding: 1.25rem;
}
body[class*="path-blocks-signup-confirm"] #sign_up_confirm_tb tr td:first-child {
    white-space: nowrap;
    max-width: 25%;
}
body[class*="path-blocks-signup-confirm"] table#sign_up_confirm_tb tr {
    border-top: 1px solid silver !important;
}
body[class*="path-blocks-signup-confirm"] table#sign_up_confirm_tb tr:last-child {
    border-bottom: 1px solid silver !important;
}
body[class*="path-blocks-signup-confirm"] table#sign_up_confirm_tb textarea {
    width: 100%;
    line-height: 1.5;
}
body[class*="path-blocks-signup-confirm"] button#submit_cancel {
    color: #333;
    background-color: #b8c1ca;
    border-color: #b8c1ca;
    margin-left: 1em;
}
@media (min-width: 768px) {
    body#page-login-signup div[class*="col-md-8"] {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
}
@media (max-width: 768px) {
    body#page-login-signup section#region-main div[class*="container-fluid"],
    body#page-login-signup section#region-main form.mform {
        padding-left: 0;
        padding-right: 0;
    }
    body[class*="path-blocks-signup-confirm"] div#sign_up_confirm_div {
        min-width: 100%;
        margin: 0 0 30px 0;
    }
    body[class*="path-blocks-signup-confirm"] #sign_up_confirm_tb td {
        display: block;
    }
}

/* デザインページ用 */
form#form_user_regist div#fitem_id_passwordpolicyinfo {
    border: none;
    padding-top: 0;
}
form#form_user_regist div#fitem_id_password {
    border-top: 1px solid #9d9d9d;
    padding-top: 1em;
}
div.regist_info1 .menu_signup_caution {
    background-color: firebrick;
    display: inline-block;
    color: #fff;
    padding: 3px 15px 5px 10px;
    margin: .5em 0 1em 0;
    border-radius: 15px;
}
div.regist_info1 .regist_notes {
    margin-left: 2em;
}
div.regist_info1 .regist_notes li {
    text-indent: -.7em;
}
div.regist_info1 .regist_notes li > i {
    padding-right: 7px;
}
.fdescription.required {
    margin-bottom: 1em;
    color: #b22222;
}

/*==============================================*/
/* メインブロック */
/*==============================================*/
#page {
	padding: 0 !important;
}
#page-content .region-main {
	padding: 0;
}
/*
デスクトップ向けのスタイルを優先する場合（デスクトップファースト）
@media screen and (max-width: 1000px) { スクリーンサイズが1000px以下の場合に適用 }
@media screen and (max-width: 767px) { スクリーンサイズが767px以下の場合に適用 } 
@media screen and (max-width: 480px) { スクリーンサイズが480px以下の場合に適用 } 
@media screen and (max-width: 320px) { スクリーンサイズが320px以下の場合に適用 } 
@media screen and (min-width: 768px) { スクリーンサイズが768px以上の場合に適用 } 

モバイル向けのスタイルを優先する場合（モバイルファースト）
@media screen and (min-width: 768px) { スクリーンサイズが768px以上の場合に適用 } 
@media screen and (min-width: 1200px) { スクリーンサイズが1200px以上の場合に適用 } 
*/
@media (min-width: 576px) {
	#region-main {
		padding: 0 !important;
	}
}
@media (min-width: 769px){
	.l-inner {
		padding: 0 5.88235294% !important;
	}
}
@media (min-width: 992px) {
	.used-region-side-post.used-region-side-pre #page-content .region-main {
		flex: 0 0 75%;
		max-width: 75%;
	}
}
@media (min-width: 1200px) {
	.used-region-side-post.used-region-side-pre #page-content .region-main {
		flex: 0 0 80%;
		max-width: 80%;
	}
}
.l-header {	/* グローバルナビゲーション */
	width: 100%;
	box-shadow: none !important;
	background: transparent !important;
	padding: 0 3.78151261%;
}
.l-header__inner {
	padding: 0 !important;
	background: transparent !important;
	box-shadow: none;
}
.navbar {
	box-shadow: none;
	padding: 0;
}
div#region-main-box {	/*メインブロック*/
	padding: 0 !important;
}
div[class*="sitetopic"] {
	padding-top: 0 !important;
}

/*==============================================*/
/* メインブロック：ナビゲーション */
/*==============================================*/
nav[class*="navbar"] {
	height: 70px !important;
	min-height: 70px !important;
	max-height: 70px !important;
}
div.l-header__nav {
    display: flex;
    justify-content: flex-end;
}

/*======================================================================
    メインブロック：フッター
    余白が多いページでフッターをページ下部に固定する調整
========================================================================*/
footer#page-footer {
	background-color: #f7f7f7 !important;
	padding: 50px 0 !important;
}
footer#page-footer a {
	color: #1c1c1c !important;
	text-decoration: none !important;
}
.l-footer__local-nav {
    display: flex;
    justify-content: space-between;
}

/*==============================================*/
/* サイドメニュー：ログインブロック */
/*==============================================*/
form#login div.form-group input[type="text"],
form#login div.form-group input[type="password"] {
	background-color: #dbdbdb !important;
	border: 0 !important;
	border-radius: 0 !important;
	width: 100% !important;
	min-height: 40px !important;
}
form#login div.form-group input[type="submit"] {
	background-color: #fcbf49 !important;
	border-radius: 20px !important;
	width: 100% !important;
	min-height: 40px !important;
	padding: 0 10px !important;
	justify-content: center !important;
}
section[class*="block_login"] h5 {
	display: none !important;
}

/*==============================================*/
/* サイドメニュー：HTMLブロック */
/*==============================================*/
section[class*="l-sidebar__recommend"] > div[class*="p-3"],
section[class*="l-sidebar__bnr"] > div[class*="p-3"],
section[class*="l-sidebar__sns"] > div[class*="p-3"] {
	padding: 0 !important;
}
section[class*="l-sidebar__recommend"] > div[class*="card"],
section[class*="l-sidebar__bnr"] > div[class*="card"],
section[class*="l-sidebar__sns"] > div[class*="card"] {
	background-color: #FFF !important;
}
.p-twitter__account-link > figure {
    max-width: 60px;
    min-width: 50px;
    width: 55px;
}

/*==============================================*/
/* フロントページ */
/*==============================================*/
header#page-header {
	margin-bottom: 0 !important;
}
body#page-site-index span#maincontent {
	height: 0 !important;
}
section[class*="l-section-en"] .p-heading--bnr__main-header {
    flex: 0 0 270px;
}
@media (min-width: 1441px) {
    section[class*="l-section-en"] .p-heading--bnr__main-header {
        flex: 0 0 270px !important;
    }
}
section[class*="l-section-en"] div[class*="p-heading--bnr__main-header-label u-sp--hide"] {
    display: none;
}
section[class*="l-section-en"]  .p-heading--bnr__main-body-title {
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 1.2;
}
section[class*="l-section-en"] .p-heading--bnr__main-body-text {
  font-size: 14px;
  font-weight: normal;
  line-height: 1.3;
  margin-top: 20px;
}
section[class*="l-section-en"] .p-heading--bnr__main-header-img img {
    border-left: 1px solid #594e52;
    border-right: 1px solid #594e52;
}
@media only screen and (max-width: 768px) {
    section[class*="l-section-en"] .p-heading--bnr__main-body-title {
        font-size: 20px;
    }
    section[class*="l-section-en"] .p-heading--bnr__main-header {
        flex: none;
        width: 100% !important;
    }
    section[class*="l-section-en"] .p-heading--bnr__main-body {
        width: 100% !important;
    }
    section[class*="l-section-en"] .p-heading--bnr__main-body-text {
        margin-top: 5px;
        margin-bottom: 20px;
        -webkit-line-clamp: unset;
        line-clamp: unset;
    }
}

/*==============================================*/
/* フロントページ（スライダー） */
/*==============================================*/
section[class*="top_slider"] div[class*="card-body p-3"] {
    padding: 0 !important;
}
section[class*="top_slider"] div[class*="card-text content mt-3"] {
    margin-top: 0 !important;
}

/*==============================================*/
/* ユーザープロファイルページ */
/*==============================================*/
body#page-user-profile section#region-main {
	margin: 0 1em;
}

/*==============================================*/
/* パンくずリスト */
/*==============================================*/
header#page-header div[class*="d-flex align-items-center"] {
	display: none !important;	/*サイト名非表示*/
}
header#page-header div.card-body {
	padding: 0;
	background-color: #f0f0f0;
	font-size: 12px !important;
}

/*==============================================*/
/* SCORM再生画面 */
/*==============================================*/
body#page-mod-scorm-player #scormpage #scorm_object {
    width: 100% !important;
    height: 100% !important;
}
body#page-mod-scorm-player section#region-main {
	padding-left: 1em !important;
    /*モバイル環境の場合はpaddingはすべて「0」にする*/
}
@media only screen and (max-width: 768px) {
    body#page-mod-scorm-player section#region-main {
        padding: 0 !important;
        /*モバイル環境の場合はpaddingはすべて「0」にする*/
        margin: auto 0;
        /*モバイル環境の場合は左右のmarginを「0（PC版は14px）」にする*/
    }
    table.caution_scorm td,
    table.caution_hs-video td {
        display: block;
    }
    body#page-mod-hsvideo-view section#region-main {
        margin:0 !important;
        padding: 0 !important;
    }
}
#scorm_object {
	border: 1px solid #333 !important;
}
div[id*="fp-repo-"] a[class*="nav-link active"] {
	padding: 0.5em;
}
div#scorm_layout {
    margin-bottom: 0 !important;
}
div#scormtop {
    display: none !important;
}

/* 全体 */
table.caution_scorm,
table.caution_hs-video {
    margin-top: 1em;
    width: 100%;
}
/* 履修ボタン */
td.console_button .p-btn__group-btn {
    margin-bottom: 1em;
}
/* 注意書き */
td.caution_title {
    padding-right: 30px;
}
td.caution_scorm .caution_title,
td.caution_hs-video .caution_title {
    background-color: firebrick;
    display: inline-block;
    color: #fff;
    padding: 3px 15px 3px 10px;
    margin-bottom: .5em;
    border-radius: 15px;
}
td.caution_comments i.fa-exclamation-circle {
    margin-right: 3px;
}
td.caution_scorm .caution_title > i,
td.caution_scorm li > i,
td.caution_hs-video .caution_title > i,
td.caution_hs-video li > i {
    font-size: 16px;
    margin-right: 5px;
}
td.caution_scorm ul,
td.caution_hs-video ul {
    margin-left: .7em;
    line-height: 1.5;
}
td.caution_scorm li,
td.caution_hs-video li {
    color: #1c1c1c;
}
td.caution_scorm .caution_faq,
td.caution_hs-video .caution_faq {
    margin-top: 1em;
    border-top: 1px dashed gray;
    padding-top: .5em;
    padding: 3px 15px 3px 10px;
    margin-bottom: .5em;
}
td.caution_comments i.fa-chevron-circle-right {
    margin-right: 5px;
}
td.caution_comments i.fa-play {
    color: #4a66a5;
    margin: 0 3px;
}
td.caution_comments i.fa-check {
    color: #66cc00;
    margin: 0 3px;
}

/*ボタン表示*/
td.console_button {
    text-align: right;
    vertical-align: top;
    white-space: nowrap;
}
td.console_button > p {
    margin-top: .5em;
    margin-left: 3em;
}
td.console_button div.p-btn__group-btn {
    margin: 1em 0 0 auto;
}

/*==============================================*/
/* サイドメニュー：全コースメニュー（cs_suggest）  */
/*==============================================*/
section.block_course_menu > div {
	padding: 0 !important;
}
section.block_course_menu {
	background-color: #fff !important;
}
section.block_course_menu > div > h5 {
	background-color: #fdc863 !important;
	display: block !important;
	width: 100%;
	box-shadow: 0px 3px 7px rgba(0, 0, 0, 0.1);
	min-height: 40px;
	line-height: 40px;
	padding: 0 10px;
}
div.block_navigation li.tree_item {
    padding-left: 10px !important;
}
div.block_navigation .p-list__item-link {
    display: inline-block;
    padding-left: 5px;
    font-weight: normal !important;
}
div.block_navigation .block_tree [aria-expanded="false"]::before {
    content: "\f114";
    display: inline;
}
div.block_navigation .block_tree [aria-expanded="true"]::before {
    content: "\f115";
    display: inline;
}
div.block_navigation .c-icon--arrow-black::after {
    content: none !important;
}
.block_navigation .block_tree ul {
    margin-left: 0 !important;
    padding-left: 0 !important;
}
div.block_navigation .p-list--lv02 {
    padding: 0 !important;
}
.p-list--lv02 > .p-list__item > .p-list__item-link {
    padding: 5px 10px 5px 5px !important;
}
section[class*="block_course_menu"] > div > div {
    margin-top: 0 !important;
}
section[class*="block_course_menu"] > div > div > ul.unlist h3.l-sidebar__nav-title {
    background-color: #fdc863;
    box-shadow: 0px 3px 7px rgba(0, 0, 0, 0.1);
    min-height: 40px;
    padding: 0 10px;
    margin-bottom: 10px;
}
div.course_sisetsu h4 {
    background-color: #fdc863;
    padding: 10px 5px;
    min-height: 40px;
    display: flex;
    align-items: center;
}
section[class*="block_course_menu"] h3.l-sidebar__nav-title {
    background-color: #ff9655 !important;
    box-shadow: 0px 3px 7px rgba(0, 0, 0, 0.1);
    min-height: 40px;
    padding: 0 10px;
    margin-bottom: 10px;
}
div#sisetsu_course {
    background-color: #f0ece4 !important;
    padding-bottom: 1px;
}
.custom_link:hover {
    background-color: #ffeecc;
}
.custom_link a:hover {
    color: #ff8e0b;
}
a.link_sisetus {
    width: 100% !important;
}
a.link_sisetus > i[class*="fa-external-link"] {
    /* display: none; */
    padding-left: .5em;
}

/*==============================================*/
/* グローバルナビゲーション：言語切替 */
/*==============================================*/
/*==============================================*/
/* ダッシュボードページ */
/*==============================================*/
body#page-my-index header#page-header {
/*	display: none !important;*/
}
body#page-my-index header#page-header div.card-body {
    background-color: #fff;
}
/* 2023-05-23                                                     */
/* ダッシュボードページの「このページをカスタマイズする」を非表示にする */
/* プログラムまたは設定で非表示できるならそちらで対応すること！        */
body#page-my-index:not([class*="context-1"]) header#page-header {
    /*display: none;*/
}
body#page-my-index header#page-header div.card-body {
    background-color: #f0f0f0 !important;
}
.p-card__item-content {
    min-height: 120px;
    background-color: #f9f9f9;
}
/*講座名が長い場合の表示設定*/
.p-card__item-title {
    padding: 8px 20px 0 20px !important;
    border-bottom: 8px solid #fcbf49;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
ul.p-list--card > li.p-list__item > a.p-list__item-link {
    display: flex;
    align-items: center;
}
/* キービジュアル（ブロック化対応） */
section[class*="block_custom_bar"] div.p-3 {
    padding: 0 !important;
}
section[class*="block_custom_bar"] div[class*="card-text content mt-3"] {
    margin-top: 0 !important;
}

/*==============================================*/
/* 最新アナウンスメント（ダッシュボードページ） */
/*==============================================*/
.block_news_items .name {
    display: none;
}
.block_news_items .post {
    display: flex;
    padding: 1em !important;
    border-bottom: 1px solid #ccc;
}
section[class*="block_news_items"] ul.unlist {
	background-color: #FFF;
	padding: 0 1em 1em;
	border-radius: 7px;
}
section[class*="block_news_items"] div.footer {
    text-align: right;
    color: #f0f0f0;
}
section[class*="block_news_items"] div.footer a {
    background-color: #74aae8;
    color: white;
    padding: 0.3em 1em;
    border-radius: 1em;
    margin-top: 0.5em;
}
section[class*="block_news_items"] div.newlink {
    text-align: right;
    padding-bottom: .5em;
}

/*==============================================*/
/* ICRwebからのお知らせ（フロントページ） */
/*==============================================*/
body#page-site-index div#site-news-forum {
    max-width: 50%;
}
header[id*="post-header-"] div.mr-2,
header[class*="body-content-container"] div[class*="d-flex flex-wrap"] {
    display: none !important;
}
body#page-my-index section[class*="block_news_items"] h5 + div {
    margin-top: .5em !important;
}
body#page-mod-forum-discuss div.body-content-container a {
    color: #00A7C3 !important;
}
@media all and (max-width : 768px) {
    body#page-my-index section[class*="block_news_items"] li.post > div[class*="head"] {
        display: block !important;
        width: 100%;
    }
    section[class*="block_news_items"] li.post div.date {
        display: block;
        border-bottom: 1px dashed gray;
        margin-bottom: .5em;
        padding-bottom: .5em;
    }
}

/*==============================================*/
/* ICRwebからのお知らせ（個別ページ） */
/*==============================================*/
body#page-mod-forum-discuss span#maincontent + h2 {
    margin-bottom: 1em;
}
body#page-mod-forum-discuss div.forumsearch,
body#page-mod-forum-discuss h3.discussionname {
    display: none;
}
body#page-mod-forum-discuss div.post-content-container {
    margin: 1em 0 1.5em 0;
}
/*[編集][削除]ボタンは必要*/
body#page-mod-forum-discuss div[data-content="forum-discussion"] > article a[data-region="post-action"]:nth-child(1),
body#page-mod-forum-discuss div[data-content="forum-discussion"] > article a[data-region="post-action"]:nth-child(4) {
    display: none;
}
body#page-mod-forum-discuss div[data-content="forum-discussion"] > article a[data-region="post-action"]:nth-child(2),
body#page-mod-forum-discuss div[data-content="forum-discussion"] > article a[data-region="post-action"]:nth-child(3) {
    color: #fff !important;
    background-color: #0c5ba1;
    border-color: #0b5496;
    padding: 0.3em 1em;
    margin-top: 1em;
}
body#page-mod-forum-discuss div[data-content="forum-discussion"] > article .d-flex {
    display: block !important;
}
body#page-mod-forum-discuss div[data-content="forum-discussion"] > article h3[data-region-content="forum-post-core-subject"] {
    border-bottom: 1px solid #4a66a5;
    padding-bottom: .5em;
    margin-bottom: .5em !important;
}
body#page-mod-forum-view div.forumsearch,
body#page-mod-forum-view div#intro {
    display: none;
}
table.discussion-list thead,
table.discussion-list tr > th:nth-last-child(-n+3),
table.discussion-list tr > td:nth-last-child(-n+3),
td.author > div > div[class="align-middle p-0"],
td.author > div > div > div[class="mb-1 line-height-3 text-truncate"] {
    display: none;
}

/*==============================================*/
/* ICRwebからのお知らせ（英語ページで「Information」と表示させる） */
/*==============================================*/
html[lang="en"] body#page-mod-forum-view section#region-main h2,
html[lang="en"] body#page-mod-forum-discuss section#region-main h2 {
    font-size: 0;
}
html[lang="en"] body#page-mod-forum-view section#region-main h2::before,
html[lang="en"] body#page-mod-forum-discuss section#region-main h2::before {
    content: "Information";
    font-size: 20px;
}
html[lang="en"] body#page-mod-forum-view header#page-header ol.breadcrumb li:last-child a,
html[lang="en"] body#page-mod-forum-discuss header#page-header ol.breadcrumb li:nth-child(3) a {
    font-size: 0;
}
html[lang="en"] body#page-mod-forum-view header#page-header ol.breadcrumb li:last-child a::after,
html[lang="en"] body#page-mod-forum-discuss header#page-header ol.breadcrumb li:nth-child(3) a::after {
    content: "Information";
    font-size: 12px;
}

/*==============================================*/
/* ログインブロック */
/*==============================================*/
section[class*="block_login"] > div[class*="card-body p-3"] {
    padding: 0 10px !important;
}
label[for*="login_username"],
label[for*="login_password"] {
    font-size: 10px !important;
}
input#login_username,
input#login_password {
    padding: 0 !important;
}
form#login > div:last-of-type {
    max-width: 180px !important;
    margin: 20px auto 0 !important;
}
form#login + div {
    max-width: 180px !important;
    margin: 5px auto 0 !important;
}
form#login + div > a {
    background-color: #fff;
    border: 1px solid #dbdbdb;
    border-radius: 20px;
    width: 100%;
    min-height: 40px;
    padding: 0 10px;
    text-align: center;
    line-height: 2.5;
}
form#login + div + div {
    text-align: center;
}
form#login + div + div > a[href*="forgot_password.php"] {
    display: block;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.41666667;
    text-align: center;
    text-decoration: underline;
    margin-top: 20px;
}

/*==============================================*/
/* 言語カスタマイゼーション */
/*==============================================*/
.progressbar_container {
    max-width: 100%;
    width: 100%;
}
body#page-admin-tool-customlang-index div[id*="pbar_"] {
    max-width: 100%;
    width: 100%;
}
body#page-admin-tool-customlang-index div[id*="pbar_"] > .col-md-6 {
    flex: 0 0 100%;
    max-width: 100%;
}
body#page-admin-tool-customlang-index progress[id*="pbar_"] {
    width: 100%;
}

/*==============================================*/
/* ページリソース（汎用） */
/*==============================================*/
body#page-mod-page-view section#region-main div[role="main"] > div {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
/*==============================================*/
/* 更新日の表示（リリース時には非表示にするので一時的なデザイン） */
/*==============================================*/
body#page-mod-page-view section#region-main div[role="main"] > div.modified {
	border-top: 1px dashed silver;
	margin-top: 1em;
	padding-top: .5em !important;
    color: #a9a9a9;
}

/*==============================================*/
/* ICRwebからのお知らせ（ダッシュボード） */
/*==============================================*/
body#page-my-index section[class*="block_news_items"] h5 {
}
body#page-my-index section[class*="block_news_items"] li.post > div[class*="head"] {
    display: flex;
}
body#page-my-index section[class*="block_news_items"] li.post div.date {
    margin-right: 1em;
    white-space: nowrap;
}
body#page-my-index section[class*="block_news_items"] li.post span.new_info {
    background-color: #F00;
    border-radius: .5em;
    padding: 1px .7em;
    font-size: 80%;
    color: #FFF;
    margin-left: 1em;
    height: 1.7em;
}

/*==============================================*/
/* ICRwebからのお知らせ（サイトアナウンスメント一覧） */
/*==============================================*/
body#page-mod-forum-view[class*="forumtype-news"] div[data-name="ICRwebからのお知らせ"] {
    thead {
        display: none;
    }
    tr[data-region="discussion-list-item"] > td:first-child,
    tr[data-region="discussion-list-item"] > td:nth-child(n+4) {
        display: none;
    }
    tr[data-region="discussion-list-item"] > td[class*="author"] > div > div:first-child {
        display: none;
    }
    tr[data-region="discussion-list-item"] > td[class*="author"] > div > div > div:first-child {
        display: none;
    }
}

/*==============================================*/
/* ICRwebからのお知らせ（個別アナウンスメント） */
/*==============================================*/
body#page-mod-forum-discuss section[class*="region-main"] div[class*="discussion-nav"] {
    display: none;
}
body#page-mod-forum-discuss section[class*="region-main"] div[class*="discussion-nav"]+div {
    display: none !important;
}

/*==============================================*/
/* 講義一覧 */
/*==============================================*/
body#page-course-view section#region-main {
    margin: 0 !important;
    padding: 0 !important;
    background-color: transparent !important;

    div.course_detail_navbar {
        background-color: white;
        padding: 30px 5.88235294%;
    }
}
@media (min-width: 769px) {
    .p-btn__group-btn {
        width: 50% !important;
    }
}
@media screen and (max-width:768px) {
    body#page-course-view .p-card__item {
        margin: 0 !important;
    }
    body[class*="path-course "] .p-btn__group-btn {
        width: calc(50% - 5px) !important;
    }
    body[class*="path-course "] .p-btn--heading .p-btn__group-btn {
      max-width: 170px;
    }
    body[class*="path-course-view"] .p-btn__group-btn {
        width: 100% !important;
    }
}

/*==============================================*/
/* 小テストの編集画面 */
/*==============================================*/
body#page-mod-quiz-edit input#repaginatecommand {
    font-weight: 400;
    text-align: center;
    vertical-align: middle;
    padding: .375rem .75rem;
    font-size: .9375rem;
    line-height: 1.5;
}
body#page-mod-quiz-edit div[class*="dropdown-menu"] a[class*="dropdown-item"]:active,
body#page-mod-quiz-edit div[class*="dropdown-menu"] a[class*="dropdown-item"]:hover,
body#page-mod-quiz-edit div[class*="dropdown-menu"] a[class*="dropdown-item"]:focus {
    color: #fff !important;
}

/*==============================================*/
/* ボタンデザイン（ログイン・ログアウト・新規登録・マイページ） */
/*==============================================*/
.button_signup,
.button_login,
.button_logout,
.button_profile {
    background-color: #1c1c1c;
    color: #fff;
    padding: 6px 12px 6px 10px;
    margin-left: 15px;
    font-size: 12px;
    border-left: 10px solid #1c1c1c;
}
.button_signup a,
.button_login a,
.button_logout a,
.button_profile a {
    background-color: transparent !important;
}
.button_signup a:hover,
.button_login a:hover,
.button_logout a:hover,
.button_profile a:hover {
    color: #fff !important;
    text-decoration: none !important;
}    
.button_signup {
    border-left: 10px solid #f00;
}
.button_login {
    border-left: 10px solid #74aae8;
}
.button_logout {
    border-left: 10px solid #bbbbbb;
}
.button_profile {
    border-left: 10px solid #74aae8;
}

/*==============================================*/
/* マイページ */
/*==============================================*/
section#mypage h1.p-heading__title {
    border-bottom: 3px double #fcbf49;
    color: #fcbf49;
}
section.section--mypage span.icon-mypage > .icon {
    font-size: 24px !important;
    width: 24px !important;
}
section.section--mypage ul.faq-tips {
    margin-top: 1em;
    border-top: 1px dashed gray;
    padding-top: .5em;
}
section.section--mypage ul.faq-tips i[class*="fa fa-"] {
    padding-right: 5px;;
}
section.section--mypage .p-col__item-description {
    padding: 10px 20px;
}
a#link_myhistory,
a#link_userinfo,
a#link_userpass {
    background-color: #ffe86f;
}
body[class*="cmid-69 "] section#region-main,
body[class*="cmid-102 "] section#region-main {
    background-color: transparent !important;
    background-color: #f0f0f0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
body[class*="cmid-69 "] section#region-main div.p-heading__content,
body[class*="cmid-102 "] section#region-main div.p-heading__content {
    padding: 30px 5.88235294%;
}

/*==============================================*/
/* ダッシュボードページの講義のパネル表示 */
/*==============================================*/
.course_name_ellipsis {
    background-color: #fff;
    border-radius: 4px;
    padding: 20px;
    margin-bottom: 20px;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    max-height: 24px;
}

/*==============================================*/
/* アンケート回答画面のデザイン調整 */
/*==============================================*/
body#page-mod-feedback-complete section#region-main {
    background-color: transparent !important;
}
body#page-mod-feedback-complete section#region-main h2 {
    margin-bottom: 20px;
}
body#page-mod-feedback-complete section#region-main input#id_savevalues {
    background-color: #ffe86f;
    color: #333;
    padding: 0.5em 1em;
    margin-right: 1em;
}
/*ラベル*/
body#page-mod-feedback-complete div[id*="fitem_id_label_"] {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    background-color: #fff;
    border-radius: 4px;
    font-size: 14px;
    letter-spacing: 0.08em;
    line-height: 1.42857143;
    margin-top: 10px;
    padding: 20px;
}
body#page-mod-feedback-complete div[id*="fitem_id_label_"] > div[class*="col-md-3 col-form-label d-flex pb-0 pr-md-0"] {
    display: none !important;
}
div.feedback_description ul,
div.feedback_description ul li,
ul#questionnaire_template_label,
ul#questionnaire_template_label li {
    list-style: disc !important;
    list-style-position: inside !important;
}
/*タイトル部分（所要時間・有益度・難易度）*/
body#page-mod-feedback-complete div[id*="fgroup_id_group_multichoice_"] {
    display: inline-block;
    width: calc((100% - 40px) / 3);
    vertical-align: top;
}
/*タイトル部分（所要時間・有益度・難易度）*/
body#page-mod-feedback-complete div[id*="fgroup_id_group_multichoice_"] > div[class*="col-md-3 col-form-label d-flex pb-0 pr-md-0"],
body#page-mod-feedback-complete div[id*="fitem_id_textarea_"] > div[class*="col-md-3 col-form-label d-flex pb-0 pr-md-0"] {
    border-radius: 4px 4px 0 0;
    padding: 17px 20px;
    background-color: #dbdede;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.08em;
    line-height: 1.44444444;
    padding-bottom: 1em !important;
}
/*タイトル部分（有益度）*/
body#page-mod-feedback-complete div#fitem_id_anonymousmode + div + div {
    margin-right: 20px !important;
    margin-left: 20px !important;
}
/*ラベル*/
body#page-mod-feedback-complete div.feedback-item-label {
    background-color: #dbdede;
    font-size: 18px;
    font-weight: 500;
}
body#page-mod-feedback-complete div[id*="fgroup_id_group_multichoice_"] > div[class*="col-md-9 form-inline align-items-start felement"] {
    background-color: #fff;
    border-radius: 0 0 4px 4px;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    padding: 17px 20px;
}
/*選択肢*/
body#page-mod-feedback-complete div[id*="fgroup_id_group_multichoice_"] label {
    line-height: 2em;
}
/*タイトル部分（コメント）*/
body#page-mod-feedback-complete div[id*="fitem_id_textarea_"] {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
}
body#page-mod-feedback-complete div[id*="fitem_id_textarea_"] > div[class*="col-md-9 form-inline align-items-start felement"] {
    background-color: #fff;
    border-radius: 0 0 4px 4px;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    padding: 17px 20px;
}
body#page-mod-feedback-complete div[id*="fitem_id_textarea_"] textarea {
    min-height: 150px;
    width: 100%;
    max-width: 100%;
    border: 0 solid #dbdbdb;
    resize: none;
}
/*初級編*/
body#page-mod-feedback-complete[class*=" context-495 cmid-142 "] div[data-groupname="group_multichoice_100"],
body#page-mod-feedback-complete[class*=" context-495 cmid-142 "] div[data-groupname="group_multichoice_104"],
body#page-mod-feedback-complete[class*=" context-495 cmid-142 "] div[data-groupname="group_multichoice_107"],
body#page-mod-feedback-complete[class*=" context-495 cmid-142 "] div[data-groupname="group_multichoice_110"]{
    margin-right: 20px !important;
    margin-left: 20px !important;
}
body#page-mod-feedback-complete div[id*="fitem_id_textfield_"] {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
}
body#page-mod-feedback-complete div[id*="fitem_id_textfield_"] > div[class*="col-md-3 col-form-label d-flex pb-0 pr-md-0"] {
    border-radius: 4px 4px 0 0;
    padding: 17px 20px 1em 20px !important;
    background-color: #dbdede;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.08em;
    line-height: 1.44444444;
}
body#page-mod-feedback-complete div[id*="fitem_id_textfield_"] > div[class*="col-md-9 form-inline align-items-start felement"] {
    background-color: #fff;
    border-radius: 0 0 4px 4px;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    padding: 17px 20px;
}
body#page-mod-feedback-complete div[id*="fitem_id_textfield_"] input {
    min-height: 30px;
    width: 100%;
    max-width: 100%;
    border: 0 solid #dbdbdb;
    resize: none;
}

@media screen and (max-width:768px) {
    /*タイトル部分（所要時間・有益度・難易度）*/
    body#page-mod-feedback-complete div[id*="fgroup_id_group_multichoice_"] {
        display: inline-block;
        width: 100%;
        vertical-align: top;
    }
    body#page-mod-feedback-complete div#fitem_id_anonymousmode + div + div {
        margin: 0 !important;
    }
    body#page-mod-feedback-complete form#feedback_complete_form {
        padding: 0 !important;
    }
}

div#fitem_id_anonymousmode {
    display: none;
}
/*テスト受験画面（id=page-mod-quiz-attempt）*/
/*受験概要ページ（id=page-mod-quiz-summary）*/
div[class*="questionflag"] {
    display: none;
}
div[data-region="answer-label"] {
    cursor: default !important;
}
div.confirmation-message + div[class*="confirmation-buttons"] > input[class*="btn-primary"] {
    background-color: #ffe86f;
    padding: .5em 1.5em;
    border-radius: 20px;
    margin: 1em auto;
}
div.confirmation-message + div[class*="confirmation-buttons"] > input[class*="btn btn-secondary"] {
    background-color: #ced4da;
    padding: .5em 1.5em;
    border-radius: 20px;
    margin-bottom: 1em;
}
div.submitbtns input[type="submit"] {
    float: none !important;
    background-color: #ffe86f;
    color: #333;
    padding: 0.5em 1em;
    border-color: #fbbe48;

    border-radius: 25px;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.42857143;
    min-height: 30px;
    justify-content: center;
}
div.submitbtns input[type="submit"]:hover {
    background-color: #fbbe48 !important;
    border-color: #fbbe48 !important;
}
section#mod_quiz_navblock div.othernav a.endtestlink {
    background-color: #ffe86f;
    color: #333;
    padding: 0.5em 1em;
    border-color: #fbbe48;

    border-radius: 25px;
    font-size: 14px;
    line-height: 1.42857143;
    min-height: 30px;
    justify-content: center;
}
body#page-mod-quiz-summary tr.quizsummaryheading,
section#mod_quiz_navblock h3.mod_quiz-section-heading {
    display: none !important;
}
body#page-mod-quiz-attempt div[class*="informationitem"] div.info {
    background-color: #74aae8;
    color: #fff;
}
body#page-mod-quiz-attempt div[class*="informationitem"] div.info + div.content > div {
    background-color: #eee;
    border: 1px solid #dbdbdb;
}
/*クリアボタン*/
body#page-mod-quiz-attempt label[for*="_answer-"] {
    display: inline-block;
    background-color: #dbdbdb;
    border-radius: 10px;
    padding: 5px 10px;
    margin: 1em 0 0 0;
}
body#page-mod-quiz-attempt label[for*="_answer-"] a {
    padding: 0 !important;
    margin: 0 !important;
}

/* テストのナビゲーションの表示設定 */
.path-mod-quiz #mod_quiz_navblock .qnbutton.correct .trafficlight {
    background-color: #357a32;
}
.path-mod-quiz #mod_quiz_navblock .qnbutton.notanswered .trafficlight,
.path-mod-quiz #mod_quiz_navblock .qnbutton.incorrect .trafficlight {
    background-image: url(/theme/image.php/icrweb/theme/1689708024/mod/quiz/ngmark);
    background-color: #ca3120;
}

/*======================================================================
    施設コース
    body id="page-course-view-topics"
========================================================================*/

div.facility-course h2 {
    background-color: #fcbf49;
    width: 100%;
    padding: 5px 10px;
    margin-left: 0 !important;
}
div.facility-course h2 > i.icon {
    font-size: 20px !important;
    padding-right: 5px;
}
body#page-course-view-topics .p-heading--logo .p-heading__logo img {
    object-fit: contain;
}
body#page-course-view-topics header#page-header {
    display: none;
}
body#page-course-view-topics section.l-section {
    padding-top: 30px;
    padding-bottom: 30px;
    background-color: #fff;
}
body#page-course-view-topics div.p-lead__inner {
    padding-top: 17px !important;
    padding-bottom: 17px !important;
}
body#page-course-view-topics .p-info__content {
    background-color: #fff;
    border-radius: 4px;
    font-size: 14px;
    letter-spacing: 0.08em;
    line-height: 1.42857143;
    margin-top: 10px;
    padding: 20px;
    border: none;
}
body#page-course-view-topics .p-description {
    background-color: #fff;
    border-radius: 4px;
    padding: 20px;
    border: none;
}
@media screen and (max-width:768px) {
    body#page-course-view-topics section.l-section {
        padding-top: 0;
        padding-bottom: 0;
    }
}

/*======================================================================
    受講履歴・修了証発行画面のデザイン調整
    body id=page-blocks-showgrades-view
========================================================================*/
body#page-blocks-showgrades-view div.l-section--margin {
    padding-top: 0;
}
body#page-blocks-showgrades-view div.p-heading {
    background-color: transparent;
}
body#page-blocks-showgrades-view h1.p-heading__title {
    padding: 0 0 5px 5px;
    margin-bottom: 10px;
    border-bottom: solid 3px #faa137;
    color: #faa137;
}
html[lang="en"] body#page-blocks-showgrades-view div.p-btn__group-btn {
	max-width: 140px;
	min-width: 140px;
}
html[lang="en"] body#page-blocks-showgrades-view span.c-icon--circle {
	line-height: 1;
}
html[lang="en"] body#page-blocks-showgrades-view div.p-btn__group-btn a.c-btn--test-chapter,
html[lang="en"] body#page-blocks-showgrades-view div.p-btn__group-btn a.c-btn--survey {
    padding: 0 5px;
}
html[lang="en"] body#page-blocks-showgrades-view div.p-board__header div.p-btn__group-btn {
	max-width: 160px;
	min-width: 160px;
}

/* 受講状況の出力ボタンの表示設定 */
body#page-blocks-showgrades-view button.dl_status_csv {
    white-space: nowrap;
}
.section_course_title {
    display: flex;
    margin-bottom: 10px;
}
.course_title {
    flex: 1;
    margin-bottom: 0 !important;
}
.course_history {
    min-width: 130px;
    text-align: center;
}


/*==============================================*/
/* 受講履歴・修了証発行画面のデザイン調整          */
/* body id=myhistory                            */
/* body class=cmid-88                           */
/* body id=page-blocks-showgrades-view          */
/*==============================================*/

body[class*="cmid-88 "] section#region-main .p-filter__inner {
    padding: 20px !important;
}



/* ICRwebの標準講座 */
div.icrweb-course h2 {
    background-color: #ff9655;
    width: 100%;
    padding: 5px 10px;
    margin-left: 0 !important;
}

body[class*="cmid-88 "] section#region-main {
    background-color: transparent !important;
    background-color: #f0f0f0;
}
.c-btn--test-chapter {
    background-color: #fff;
    border: 1px solid #6cb55e;
    border-radius: 20px;
    color: #6cb55e;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.42857143;
    width: 100%;
    min-height: 40px;
    padding: 0 13px;
    justify-content: center;
}

/*リンク表示のカスタム用*/
.c-btn--test-chapter--hidden {
    display: none !important;
}

/*総合テスト*/
a[class*="c-btn--test-overall"][class*="disable"] {
    border: 1px solid #dbdbdb;
    color: #808080 !important;
    pointer-events: none;
}
a[class*="c-btn--test-overall"][class*="disable"] > span {
    color: #808080 !important;
    pointer-events: none;
}
a[class*="c-btn--test-overall"][class*="active"] {
    background-color: #f0f7ef !important;
}
a[class*="c-btn--test-overall"][class*="active"] > span::before {
    border-color: #6cb55e !important;
}
.c-btn--test-overall.active {
    border: 1px solid #7db268 !important;
    color: #ff8e0b;
}

/*総合アンケート*/
a[class*="c-btn--survey-overall"][class*="disable"] {
    border: 1px solid #dbdbdb;
    color: #808080 !important;
    pointer-events: none;
}
a[class*="c-btn--survey-overall"][class*="disable"] > span {
    color: #808080 !important;
    pointer-events: none;
}

a[class*="c-btn--survey-overall"][class*="active"] {
    border: 1px solid #9fa09e !important;
    background-color: #fbfbfb !important;
    color: #808080 !important;
}
a[class*="c-btn--survey-overall"][class*="active"] > span::before {
    color: #808080 !important;
    border-color: #736d71;
}

a[class*="c-btn--survey-overall"][class*="visited"] {
    border: 1px solid #dbdbdb;
    color: #808080 !important;
    pointer-events: none;
}
a[class*="c-btn--survey-overall"][class*="visited"] > span {
    color: #808080 !important;
    pointer-events: none;
}

/*修了証発行ボタンの有効期限表示設定*/
/*有効期限がある場合にclassを追加する*/
/*未払い（unpaid）のボタンデザインも用意する*/

a[class*="c-btn--issue"][class*="disable"] {
    border: 1px solid #dbdbdb;
    color: #808080 !important;
    pointer-events: none;
}
a[class*="c-btn--issue"][class*="disable"] > span {
    color: #808080 !important;
    pointer-events: none;
}
a[class*="c-btn--issue"][class*="active"] > span::before {
    border: none !important;
    /*background: transparent url("/theme/icrweb/pix/common/icon_check_bg_white.svg") center/cover;*/
}

a[class*="c-btn--issue"][class*="cert_unpaid"] {
    background-color: #d65e54;
}
a[class*="c-btn--issue"][class*="cert_unpaid"] > p.p-popup--issue__title {
    color: #000 !important;
}

a[class*="c-btn--issue"][class*="cert_waiting"] {
    display: block !important;
    background-color: #d65e54;
}
a[class*="c-btn--issue"][class*="cert_waiting"] > span {
    color: #000 !important;
}

.p-popup--issue__title {
    color: #000 !important;
}
a[class*="cert_paid"],
a[class*="cert_waiting"] {
    display: block !important;
}
a[class*="cert_paid"] > span,
a[class*="cert_waiting"] > span {
    display: block !important;
    text-align: center;
}
a[class*="cert_paid"] > .cert_expire,
a[class*="cert_waiting"] > .cert_expire {
    font-size: 10px;
    font-weight: normal;
    white-space: nowrap;
}


/*章末アンケート*/
a[class*="c-btn--survey"][class*="disable"] {
    border: 1px solid #dbdbdb;
    color: #808080 !important;
    pointer-events: none;
}
a[class*="c-btn--survey"][class*="active"] {
    border: 1px solid #9fa09e !important;
    color: #1c1c1c !important;
    background-color: #fbfbfb;
    pointer-events: auto;
}
a[class*="c-btn--survey"][class*="active"] > span::before {
    border: 1px solid #9fa09e;
}
a[class*="c-btn--survey"][class*="visited"] {
    border: 1px solid #c0c0c0;
    background-color: #dbdbdb;
    color: #808080 !important;
    pointer-events: none;
}
a[class*="c-btn--survey"][class*="visited"] > span::before {
    border: 0;
    background: transparent url("/theme/icrweb/pix/common/icon_check_bg_gray.svg") center/cover;
}

/*章末テスト*/
a[class*="c-btn--test-chapter"][class*="disable"] {
    border: 1px solid #dbdbdb;
    color: #808080 !important;
    pointer-events: none;
}
a[class*="c-btn--test-chapter"][class*="active"] {
    background-color: #f0f7ef !important;
}
a[class*="c-btn--test-chapter"][class*="active"] > span::before {
    border-color: #6cb55e !important;
}


/*==============================================*/
/* 修了証発行・受講状況確認ページの表示設定 */
/*==============================================*/
div.p-filter__search {
    display: flex;
    padding-top: 10px;
}
div.f_item:last-child{
    margin-left: auto;
}
div.f_item {
    padding: .5em 1em;
    min-width: 130px;
    text-align: center;
}
.f_item_reset {
    background-color: #b8c1ca;
    border-radius: 20px;
}
.f_item_search {
    margin-right: 10px;
    background-color: #0c5ba1;
    color: #fff;
    border-radius: 20px;
}
.f_item_about {
    background-color: #74aae8;
}
@media (max-width: 768px) {
    body#page-blocks-showgrades-view .p-filter__group {
        grid-template-columns: 1fr;
    }
    body#page-blocks-showgrades-view div.f_item {
        min-width: 100px;
    }
    body#page-blocks-showgrades-view .p-board__header .p-btn__group-btn {
        max-width: 150px;
    }
    body#page-blocks-showgrades-view .p-rating__bar {
        position: relative;
        bottom: 0;
    }
    body#page-blocks-showgrades-view .p-board--course .p-rating__label {
        font-size: 16px;
    }
}

/*==============================================*/
/* ログインユーザーブロックのカスタマイズ          */
/*==============================================*/
section[class*="block_myprofile"] > div > div {
    /*border: 1px solid red;*/
}
section[class*="block_myprofile"] {
    margin-bottom: 0 !important;
}
section[class*="block_myprofile"] div[class*="card-text content mt-3"] {
    margin-top: 0 !important;
}
section[class*="block_myprofile"] div[class*="myprofileitem"] {
    font-size: 1.2em !important;
    font-weight: 300 !important;
    line-height: 36px;
    margin-bottom: 0 !important;
}
section[class*="block_myprofile"] h5 {
    display: none !important;
}
.block_myprofile .myprofileitem.picture img {
    margin-right: 1em !important;
    width: 36px;
    height: 36px;
}
section[class*="block_myprofile"] .content {
    display: flex;
    flex-wrap: wrap !important;
}
section[class*="block_myprofile"] .w-100 {
    width: calc(100% - 53px) !important;
}
section[class*="block_myprofile"] .footer {
    max-width: 180px;
    border: 1px solid silver;
    padding: 5px 20px;
    border-radius: 20px;
    margin: 10px auto 0 auto;
    min-width: 130px;
    text-align: center;
}
section[class*="block_myprofile"] .footer {
    background-color: #ffe86f;
}
section[class*="block_myprofile"] .footer:hover {
    background-color: #ffffca;
}
section[class*="block_myprofile"] .footer > a,
section[class*="block_myprofile"] .footer > a:hover,
section[class*="block_myprofile"] .footer > a:active,
section[class*="block_myprofile"] .footer > a:focus {
    background-color: transparent !important;
    text-decoration: none !important;
    border: none !important;
}

/*==============================================*/
/* 問題バンクの編集画面のカスタマイズ          */
/*==============================================*/
body#page-question-edit div.modulespecificbuttonscontainer > input {
    padding: 7px 12px;
    border: 1px solid #8f959e;
}
body#page-question-type-multichoiceset fieldset#id_answerhdr div[class*="form-group row  fitem"] {
    background-color: #eee;
    border-right: 1px solid #bbb;
    border-left: 1px solid #bbb;
    margin-bottom: 0;
}
body#page-question-type-multichoiceset fieldset#id_answerhdr div[id*="fitem_id_feedback_"] {
    margin-bottom: 1em;
}
body#page-question-type-multichoiceset fieldset#id_answerhdr div[class*="editor_atto_content_wrap"] > div[id*="id_answer_"] {
    height: 4em !important;
}
body#page-question-type-multichoiceset fieldset#id_answerhdr div#fitem_id_addanswers {
    background-color: transparent !important;
    border-right: none !important;
    border-left: none !important;
}
body#page-question-type-multichoiceset fieldset#id_answerhdr div#fitem_id_addanswers input#id_addanswers {
    background-color: #b8c1ca;
    padding: 10px 20px;
    margin-bottom: 15px;
}
body#page-question-type-multichoiceset textarea#id_questiontext + div {
    border-left: 1px solid #8f959e;
    border-right: 1px solid #8f959e;
    border-bottom: 1px solid #8f959e;
}
/*
body#page-question-type-multichoice
*/
body#page-mod-quiz-edit div.modulespecificbuttonscontainer input[class*="btn btn-primary"] {
    padding: 8px 16px;
    color: #fff;
    background-color: #0c5ba1;
    border-color: #0b5496;
}
body#page-mod-quiz-edit input#id_existingcategory,
body#page-mod-quiz-edit input#id_newcategory {
    color: #fff;
    background-color: #0060df;
    padding: 7px 15px;
}
body#page-mod-quiz-edit input[name="savechanges"] {
    padding: 8px 15px;
    background-color: #b8c1ca;
}

.path-mod-quiz #mod_quiz_navblock .qnbutton.thispage .thispageholder {
    border-width: 1px !important;
}

/*
移動ボタン（プルダウン）を非表示に
*/
div[class*="activity-navigation"] {
    display: none;
}

/*==============================================*/
/* 講義概要ページ                                */
/*==============================================*/
body#page-course-lecture #region-main {
    margin: 0;
    padding: 0 !important;
    background-color: transparent !important;
}
body#page-course-lecture .p-heading__inner {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
}
body#page-course-lecture .p-lecture__body-text {
    margin-top: 0 !important;
}
body#page-course-lecture .p-lecture__body-text a {
    /*color: #0f6fc5 !important;*/
    color: #00A7C3 !important;
    display: inline !important;
}
body#page-course-lecture .p-lecture__img img {
    height: calc(100% - 10px) !important;
}
body#page-course-lecture  figure.p-lecture__img .p-rating__bar-bg {
    border-radius: 0 !important;
}
body#page-course-lecture figure.p-lecture__img .p-rating__bar-bg > .p-rating__bar-fg {
    background-color: #d65e54;
    border-radius: 0;
}
figure.p-card__item-img {
    background-color: #ccc !important;
}
.p-slider--regular .p-card__item-img {
    padding-top: 69.325% !important;
}
body#page-course-lecture div.p-pager div.p-pager__inner > label {
    margin-bottom: 0 !important;
    color: #f0f0f0 !important;
}
body#page-course-lecture div.p-pager div.p-pager__inner > label::before,
body#page-course-lecture div.p-pager div.p-pager__inner > label::after {
    background-image: none;
}
.p-view-time {
    width: 80px;
}
body#page-course-lecture div.p-comment label {
    white-space: nowrap;
    margin-bottom: 0;
}
html[lang="en"] body#page-course-lecture div.p-comment label {
    padding: 0 10px;
}
/*編集画面*/
body#page-course-view-topics div.course-content ul.topics div.summary div.no-overflow a {
    color: #0f6fc5 !important;
    display: inline !important;
}

@media screen and (max-width:768px) {
    .p-rating__bar {
        z-index: 99;
        position: absolute;
        bottom: 0;
    }
    .p-rating table {
        display: none !important;
    }
    .p-lecture__img {
        padding-top: 71.5%;
    }
    .p-view-time {
        bottom: 15px;
    }
    .p-btn--lecture .p-btn .c-btn--simple-yellow,
    .p-btn--lecture .p-btn .c-btn--simple {
        min-height: 40px;
    }
    body#page-course-lecture .p-lecture__body .u-pc--hide,
    .u-pc--hide {
        display: block !important;
    }
}
/*==============================================*/
/* 講義一覧ページ                                */
/*==============================================*/

body#page-course-view .p-card__item-img {
    position: relative;
}
body#page-course-view figure.p-card__item-img img {
    height: calc(100% - 5px) !important;
    top: calc(50% - 2.5px) !important
    /*top: 111px !important;*/
}
body#page-course-view  figure.p-card__item-img .p-rating__bar-bg {
    border-radius: 0 !important;
    height: 5px !important;
}
body#page-course-view figure.p-card__item-img .p-rating__bar-bg > .p-rating__bar-fg {
    background-color: #d65e54;
    border-radius: 0;
}
body#page-course-view .p-view-time {
    bottom: 20px;
}


/*==============================================*/
/* ダッシュボード                                */
/*==============================================*/
body#page-my-index header#page-header > div[class*="pb-3"] {
	padding-bottom: 0 !important;
}
body#page-my-index header#page-header > div[class*="pt-3"] {
	padding-top: 0 !important;
}
body#page-my-index header#page-header > div div.card {
    /*margin: 1em 0;*/
    margin: 0;
}
body#page-my-index ul.p-card__list {
    display: flex;
}
body#page-my-index .p-card__item-img {
    border-radius: 0;
    background-color: #d4d9dc;
}
body#page-my-index .p-card__item-img img {
    height: auto;
}
section[class*="block_cs_suggest"] {
    min-height: 220px;
}
body#page-my-index section[class*="block_cs_suggest"] a.p-list__item-link {
    min-height: 52px;
}

section[class*="block_recommend_contents"] {
    background-color: #dbdede !important;
}

/* スタンダード必修コースのみ背景色を設定する */
body#page-my-index section#inst103 {
    background-color: #dbdede;
    padding: 30px 0;
}
body#page-my-index section[class*="block_news_items"] h5 + div,
body#page-my-index div[class="p-description p-description--flex"],
body#page-my-index div[class*="card-body"] > h5 {
    margin: 0 5.88235294%;
}

/*==============================================*/
/* 講義一覧ページ                                */
/*==============================================*/
body#page-course-view .p-card__item {
	margin-right: 0 !important;
}
@media (min-width: 769px){
    body#page-course-view .p-card--lecture-list .p-card__list {
        /* auto-fit ⇒ auto-fill */
        grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)) !important;
    }
}
body#page-course-view .p-heading__inner {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
}
/* 施設コースメニューの設定 */
/* 背景色：#f0ece4 */
/* アイコン設定：<i class="icon fa fa-university fa-fw"></i> */
/*
h3.l-sidebar__nav-title > span {
    display: none !important;
}
*/

/*==============================================*/
/* パンくずリストの非表示設定 */
/*==============================================*/
body#page-course-view header#page-header,
body#page-course-lecture header#page-header {
    display: none;
}
/*==============================================*/
/* 講義一覧ページの講義の表示設定 */
/*==============================================*/
body#page-course-view-topics .p-card__item-content {
    background-color: #f9f9f9 !important;
}
body#page-course-view .p-card__item-content-title {
    min-height: 52px;
}
body#page-course-view .p-card__item-link:hover {
    text-decoration: none;
}
body#page-course-view section#region-main section.l-section div.p-heading__description a {
    color: #00a7c3 !important;
}

div#goto-top-link a {
    background-color: #ffe86f;
    border-radius: .25rem 0 0 .25rem;
    border-right-width: 0;
}

/*==============================================*/
/* キーワード検索結果ページの表示設定 */
/*==============================================*/
.l-header__form-search::after {
    content: none !important;
}
.l-header__form-input {
    width: calc(100% - 30px) !important;
    padding: 7px 0 6px 10px !important;
}
#btn_search {
    background-color: #1c1c1c;
    color: white;
    font-family: FontAwesome;
    height: 30px;
    width: 30px;
}
div#top_search_keyword_form button > img {
    display: none !important;
}
div.search_keyword_main > input#searchtext {
    max-width: 90%;
    width: 80%;
    padding: 5px 10px;
    border-radius: 5px;
    border: 1px solid gray;
    margin: .5em 0;
}
div.search_keyword_main > input#searchtext + button {
    background-color: #1c1c1c;
    color: #fff;
}
div#search_form_section form#inner_search button {
    background-color: #0b5496;
    border: 1px solid #0b5496;
    margin-left: .5em;
    padding: 5px 15px;
    border-radius: 5px;
}
div#search_result_section .header_primary {
    padding: 10px 12px !important;
    background-color: #fcbf49 !important;
    color: #fff !important;
    margin: 30px 30px 0 30px;
}
div#search_result_section .highlight {
    /*background:linear-gradient(transparent 60%, #ff6 60%);*/
    background-color: #fff462 !important;
    color: #1c1c1c !important;
}
div#search_result_list dt:nth-child(n+2) {
    border-top: 3px dotted #f0f0f0;
    padding-top: 1em;
}
div#search_result_list dd aside {
    background-color: #f1f1f2;
    padding: 5px 10px;
    margin-top: 20px;
}
div#search_result_list dt > a {
    font-size: 18px;
}
div#search_result_section a {
    color: #00a7c3 !important;
    text-decoration: none !important;
}
div#search_result_section aside {
    margin-bottom: 20px;
}
section[class*="search_result_section"] {
    margin: 0 !important;
    padding: 0 !important;
}

div#search_result_list {
    background-color: #fff;
    margin: 0 30px;
    padding: 20px;
}
div#search_result_list dt > a > span::before {
    font: normal normal normal 16px/1 FontAwesome;
    content: "\f02d";
    padding-right: 5px;
    display: inline;
}
div#search_result_list dd > p {
    margin:1em .5em 1em .5em;
}
div#search_result_list dd > aside {
    margin-top: 0;
}
div#search_result_list dd > aside p.category::before {
    font: normal normal normal 16px/1 FontAwesome;
    content: "\f114";
    padding-right: 5px;
    display: inline;
}
div#search_result_list dd > p + br {
    display: block;
    content: "";
}
@media screen and (max-width:1110px) {
    .l-header__form-search {
        max-width: 250px;
    }
    .l-header__form {
        width: calc(100% - 60px) !important;
    }
    .l-header__form-input {
        font-size: 16px;
    }
    .l-header__form-input::placeholder {
        font-size: 14px;
    }
}

/*==============================================*/
/* ログインページ */
/*==============================================*/

div.form_login_infomation {
    color: #e8383d;
    line-height: 1.8;
}
dl.menu_signup li {
    margin-bottom: 1em;
}
div.form_login_infomation > i {
    font-size: 16px;
    padding-right: 7px;
}
div.form_login_infomation > strong {
    font-weight: normal;
    text-decoration:underline wavy #e8383d;
}
div.form_login_infomation span {
    padding-left: 23px;
}
/* ------------------------------
   #tabAccordion
------------------------------ */
#tabAccordion {
	margin: 0 auto;
	max-width: 1000px;
	width: 800px;
	min-width: 600px;
	height: auto;
	font-size: 16px;
	position: relative;
}
#tabAccordion dl {
	top: 0;
	left: 0;
	width: 100%;
	position: absolute;
}
#tabAccordion dl dt {
	top: 0;
	left: 0;
	width: calc((100% - 6px) / 3);
	font-weight: bold;
	position: absolute;
	border-right: #f0f0f0 3px solid;
	background: #ffe86f;
	box-sizing: border-box;
}
#tabAccordion dl:nth-child(2) dt {
	left: calc(((100% - 6px) / 3) + 3px);
}
#tabAccordion dl:nth-child(3) dt {
	left: calc((((100% - 6px) / 3) * 2) + 6px);
	border-right: none;
}
#tabAccordion dl dt a {
	padding: 15px 0;
	font-weight: bold;
	display: block;
	text-align: center;
	-moz-transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
#tabAccordion dl dt.btnAcv {
	border-bottom: none;
	background: #fcbf49;
}
#tabAccordion .menu_tab a:focus {
	background: #fcbf49 !important;
}
#tabAccordion dl dd {
	top: 53px;
	left: 0;
	padding: 30px;
	width: 100%;
	height: auto;
	text-align: left;
	overflow-y: auto;
	display: none;
	position: absolute;
	box-sizing: border-box;
	border: 3px solid #fcbf49;
	background-color: #fff;
}
#tabAccordion label,
#tabAccordion .btn_login {
	width: 100%;
}
#tabAccordion .form_login {
	margin: 5px 10%;
}
#tabAccordion .form_login_button {
    margin-bottom: 1.5em;
}
#tabAccordion .request_info {
	text-align: center !important;
    margin: 1.5em auto;
}
#tabAccordion label span {
	display: block;
}
#tabAccordion label input[type="text"],
#tabAccordion label input[type="password"] {
    height: 2.4em;
    width: 100%;
    padding: 0 16px;
    border-radius: 4px;
    border: none;
    box-shadow: 0 0 0 1px #ccc inset;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}
#tabAccordion label input[type="text"]::placeholder,
#tabAccordion label input[type="password"]::placeholder {
    color: silver;
}
.c-form-text:focus {
    outline: 0;
    box-shadow: 0 0 0 2px rgb(33, 150, 243) inset;
}

/* ------------------------------
   MEDIAQUERIES LAYOUT
------------------------------ */
@media only screen and (max-width: 800px) {
    body#page-login-index section#region-main {
        padding: 0 !important;
    }
	#tabAccordion {
        height: auto !important;
		width: 100%;
        min-width: 100% !important;
		box-sizing: border-box;
	}
	#tabAccordion dl {
		width: 100%;
		box-sizing: border-box;
	}
	#tabAccordion dl dt {
		width: 33.3%;
	}
	#tabAccordion dl:nth-child(2) dt {
		left: 33.3%;
	}
	#tabAccordion dl:nth-child(3) dt {
		left: 66.6%;
	}
}

/* ------------------------------
   MEDIAQUERIES[SP]LAYOUT
------------------------------ */
@media only screen and (max-width: 768px) {
	#tabAccordion {
		width: 100%;
		height: auto;
		border: none;
		border-top: #999 1px solid;
	}
	#tabAccordion dl {
		top: auto;
		left: auto;
		width: 100%;
		position: relative;
	}
	#tabAccordion dl dt {
		top: auto;
		left: auto;
		width: 100%;
		position: relative;
		border-bottom: #999 1px solid;
        border-right: none !important;
	}
	#tabAccordion dl dd {
		border :none;
	}
	#tabAccordion dl, #tabAccordion dd {
		margin-bottom: 0 !important;
	}
	#tabAccordion dl:nth-child(2) dt,
	#tabAccordion dl:nth-child(3) dt,
	#tabAccordion dl:nth-child(4) dt {
		left: auto;
	}
	#tabAccordion dl dt a {
		padding: 20px;
		height: auto;
		line-height: 1em;
		text-align: left;
	}
	#tabAccordion dl dt a:after {
		content: '';
		margin-top: -4px;
		top: 50%;
		right: 15px;
		width: 8px;
		height: 8px;
		font-size: 1em;
		font-weight: bold;
		line-height: 1.2em;
		display: block;
		position: absolute;
		border-top: 2px solid #666;
		border-right: 2px solid #666;
		-moz-transform: rotate(135deg);
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
	}
	#tabAccordion dl dt.btnAcv {
		border-bottom: #999 1px solid;
		background: #fcbf49;
	}
	#tabAccordion dl dt.btnAcv a:after {
		content: none;
	}
	#tabAccordion dl dd {
		top: auto;
		left: auto;
		padding: 20px;
		width: 100%;
		height: auto;
		position: relative;
		border-bottom: #999 1px solid;
	}
}
body#page-login-index .caution_faq {
    margin-top: 1em;
    padding: 3px 15px 0 0;
    /*border-radius: 15px;*/
    border-top: #999 1px dashed;
    /*background-color: #ffe86f;*/
}
body#page-login-index .caution_faq i {
    margin-right: 7px;
}
body#page-login-index .caution_faq p {
    margin-top: .5em;
    margin-bottom: 0;
}
body#page-login-index div.form_login_button i,
body#page-login-index div.request_info i {
    font-size: 16px;
    margin-right: 5px;
}
body#page-login-index .menu_signup_caution {
    background-color: firebrick;
    display: inline-block;
    color: #fff;
    padding: 3px 15px 5px 10px;
    margin: .5em 0 1em 0;
    border-radius: 15px;
}
body#page-login-index .menu_signup_caution > i {
    margin-right: 5px;
    font-size: 18px;
}
body#page-login-index dl.menu_signup ul {
    margin-left: .7em;
}
body#page-login-index dl.menu_signup li {
    text-indent: -.6em;
}
body#page-login-index dl.menu_signup li > i {
    padding-right: 7px;
}
body#page-login-index dl.menu_signup button.btn-signup {
    padding: 1em 4em;
}


/* ===================================================================
講座一覧ページのデザイン調整用
=================================================================== */
body#page-course-view-topics section#region-main {
    background-color: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
}
body#page-course-view-topics section#region-main a {
    text-decoration: none !important;
}

/* ===================================================================
講座一覧ページの画像サイズの調整用
=================================================================== */
.p-card--course-list .p-card__item-img {
    /* padding-top: 46.0606%; */
    padding-top: 75.061%;
}
.p-card__item-img {
    border-radius: 0;
}

/* ===================================================================
リソースページのデザイン調整用
=================================================================== */

body[class*="cmid-10 "] div.no-overflow {
    overflow: visible;
}

/* ===================================================================
お問い合わせページのデザイン調整用
=================================================================== */
body[id*="page-blocks-contact"] section#region-main {
    margin: 0 1em 1em 1em;
    background-color: #FFF;
    border-radius: 5px;
    padding: 1em !important;
}
body[id*="page-blocks-contact"] section#region-main select {
    background-color: white;
    border: 1px solid #8f8f9d;
    padding: 2px;
}

/*======================================================================
    修了証発行について
    cmid-4
    div id=about_certificate
========================================================================*/
div.cert04 dl {
    border: 1px solid #c0c0c0;
    margin: 1em 0;
    margin-left: 24px;
    counter-reset: number;
    width: calc(100% - 24px);
    max-width: 800px;
}
div.cert04 dt {
    background-color: #dbdede;
    color: #333;
    padding: .3em .5em;
    font-weight: normal;
}
div.cert04 dd {
    padding: 0 .5em;
    position: relative;
    padding-left: 1.7em;
    margin: .5em;
}
div.cert04 dd::before {
    counter-increment: number;
    content: counter(number);
    position: absolute;
    top: 1px;
    left: 0;
    width: 20px;
    height: 20px;
    border: 1px solid #f00;
    background-color: #f00;
    border-radius: 50%;
    font-size: 14px;
    text-align: center;
    line-height: 1.2;
    color: #fff;
    
}


/* ===================================================================
特定商取引法に基づく表記ページのデザイン調整用
=================================================================== */
/*
div#tokushoho table.tokuteisyou {
    border: #e3e3e3 1px solid;
    margin-right: auto;
    border-collapse: collapse;
    border-spacing: 0
}
div#tokushoho table.tokuteisyou img {
    border: 1px solid #bbbbbb;
}
div#tokushoho table.tokuteisyou th {
    border: #e3e3e3 0px solid;
    padding: 5px;
    font-weight: bold;
    background: #f5f5f5;
    width: 30%;
    white-space: nowrap;
    text-align: center
}

div#tokushoho table.tokuteisyou td {
    border: #e3e3e3 0px solid;
    padding: 5px;
    width: 70%;
    text-align: left
}

div#tokushoho table.logo {
    border-right: 0px;
    border-top: 0px;
    border-left: 0px;
    border-bottom: 0px;
    border-spacing: 0
}

div#tokushoho table.logo th {
    border-right: medium none;
    padding-right: 5px;
    border-top: medium none;
    padding-left: 5px;
    background: none transparent scroll repeat 0% 0%;
    padding-bottom: 5px;
    border-left: medium none;
    padding-top: 5px;
    border-bottom: medium none;
    text-align: left
}

div#tokushoho table.logo td {
    border-right: medium none;
    padding-right: 5px;
    border-top: medium none;
    padding-left: 5px;
    font-size: x-small;
    padding-bottom: 5px;
    border-left: medium none;
    padding-top: 5px;
    border-bottom: medium none;
    text-align: left
}

div#tokushoho .samplelogo {
    margin-bottom: 30px;
}
div#tokushoho .samplelogo>dt {
    font-size: 11px;
    font-size: 1.1rem;
    font-weight: bold;
    margin-bottom: 10px;
}
div#tokushoho ul.samplelogobox {
    display: flex;
    flex-wrap: wrap;
    margin-top: 20px;
}
div#tokushoho ul.samplelogobox>li {
    text-align: center;
    margin: 0 20px 30px 0;
}
div#tokushoho ul.samplelogobox p {
    font-size: 9px;
}
*/

/* ===================================================================
お支払い手続きページのデザイン調整用
=================================================================== */
body#page-blocks-payment-payment section#region-main {
    margin: 0 2em 1em 2em;
    background-color: #FFF;
    border-radius: 5px;
    padding: 1em !important;
}
body#page-blocks-payment-payment section#region-main div[class*="form-group"] {
    margin-bottom: 0;
}
body#page-blocks-payment-payment section#region-main div[class*="col-form-label"] {
    position: relative;
    width: auto;
    background-color: #b7b7b7;
    color: #fff;
    padding: 10px 1em !important;
    min-height: 3em !important;
    margin-bottom: 2px !important;
}
body#page-blocks-payment-payment section#region-main div[class*="col-form-label"]::after {
    display: block;
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: calc(50% - 10px);
    right: -10px;
    border-left: 10px solid #b7b7b7;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    z-index: 10;
}
body#page-blocks-payment-payment section#region-main div[class*="col-form-label"] p {
    margin: auto 0 !important;
}
body#page-blocks-payment-payment section#region-main div[class*="col-form-label"] span {
    display: block !important;
    margin: auto 0 !important;
}
body#page-blocks-payment-payment section#region-main div[class*="form-inline"] {
    background-color: #eee;
    margin-bottom: 2px !important;
    padding: 10px 1em 10px 2em !important;
}
body#page-blocks-payment-payment section#region-main div[class*="form-inline"] a {
    color:#00a7c3 !important;
}
body#page-blocks-payment-payment section#region-main div[class*="form-inline"] a:hover {
    text-decoration: underline;
}
body#page-blocks-payment-payment section#region-main div#fgroup_id_buttonar {
    border-top: none !important;
}
body#page-blocks-payment-payment section#region-main div#fgroup_id_buttonar > div {
    background-color: #fff !important;
}
body#page-blocks-payment-payment section#region-main div#fgroup_id_buttonar > div::after {
    background-color: #fff !important;
    content: none !important;
}
div[class*="payment_title"] {
    position: relative;
    width: auto;
    background-color: #b7b7b7;
    color: #fff;
    padding: 10px 1em !important;
    min-height: 3em !important;
    margin-bottom: 2px !important;
}
div[class*="payment_title"] > span,
div[class*="payment_title"] > label,
div[class*="payment_title"] > p {
    margin: auto 0 !important;
}
div[class*="payment_title"]::after {
    display: block;
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: calc(50% - 10px);
    right: -10px;
    border-left: 10px solid #b7b7b7;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    z-index: 10;
}
div[class*="payment_item"] {
    background-color: #eee;
    margin-bottom: 2px !important;
    padding-left: 2em !important;
}
div.pay_credit,
div.pay_cvs {
    width: 100%;
    margin: 1em 0 1em 1em !important;
}
ul.payment_box {
    display: flex;
}
ul.payment_box li {
    padding-right: 5px;
}
ul.payment_info,
div.pay_caution {
    margin-top: .5em;
    font-size: 12px;
    color: #942343;
    width: 100%;
}
ul.payment_info li {
    list-style-type: square !important;
    margin-left: 1em;
}
body#page-blocks-payment-payment section#region-main div[id*="fgroup_id_error_"] {
    background-color: red;
    color: #FFF;
    padding: 0 5px;
    border-radius: 5px;
    font-size: 14px;
    margin-top: .7em;
}
body#page-blocks-payment-payment section#region-main div[id*="fgroup_id_error_"]::before {
    content: "\f071 ";
    font-family: FontAwesome;
    display: inline;
    color: #fff;
    padding-right: 5px;
}

/* リリース時に削除 */
body[class*="cmid-179 "] section#region-main div {
    padding: 0;
    margin: 0;
}
body[class*="cmid-179 "] section#region-main div[class*="form-group"] {
    margin-bottom: 0 !important;
}
body[class*="cmid-179 "] section#region-main div[class*="col-md-3"] {
    width: 30% !important;
    min-width: 30% !important;
    max-width: 30% !important;
    padding: 10px 1em !important;
}
body[class*="cmid-179 "] section#region-main div[class*="col-md-9"] {
    width: 70% !important;
    min-width: 70% !important;
    max-width: 70% !important;
    padding: 10px 1em !important;
    padding-left: 2em !important;
}
body[class*="cmid-179 "] section#region-main div[class*="col-md-9"] label {
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
}


/* ===================================================================
お支払い手続きについてのページのデザイン調整用
モバイル環境
=================================================================== */
@media (max-width: 768px) {
    div#payment_howto ol,
    ol.payment_flow_comv,
    ol.payment_flow_comv li,
    div.payment_flow_comv {
        margin-left: 0;
        margin-right: 0;
    }
    div.payment_flow_comv {
        padding-left: 0;
        padding-right: 0;
    }
    div.payment_flow_comv details > div {
        padding: 0 .5em;
    }
    div.payment_flow_comv details img {
        max-width: 350px !important;
    }
    div.payment_flow_caution {
        margin: auto;
    }
    div.payment_howto_ibfo table {
        width: 100%;
        margin: 1em 0 0 0;
    }
    body#page-blocks-payment-payment section#region-main {
        margin: 0 .5em;
        background-color: #FFF;
        border-radius: 5px;
        padding: 1em 0 !important;
    }
    body#page-blocks-payment-payment section#region-main div[class*="col-form-label"] {
        width: 100%;
        margin-bottom: 0 !important;
        padding-left: 10px !important;
    }
    body#page-blocks-payment-payment section#region-main div[class*="col-form-label"]::after {
        content: none;
    }
    body#page-blocks-payment-payment section#region-main div[class*="form-inline"] {
        padding: 10px !important;
    }
    body#page-blocks-payment-payment section#region-main div#fgroup_id_buttonar > div:first-child {
        display: none !important;
    }
}

/* ===================================================================
「施設契約について」ページのデザイン調整用：cmid-181
=================================================================== */
/*
cmid-181
*/

/*======================================================================*/
/* カスタムCSSから移動したスタイル設定 */
/*======================================================================*/

/*==============================================*/
/* ページリソース（ICRwebのご紹介） */
/*==============================================*/

div#staff h3:nth-child(n+2),
div#about_icrweb h3 {
    color: #fcbf49;
    line-height: 1.9;
    font-size: 24px;
    margin-top: 20px;
}
div#about h3 {
    margin-top: 0 !important;
}
div#about_icrweb div.icrweb_history .timeline {
    list-style: none;
    margin-top: 1em;
}
ul.about_icrweb_introduction li {
    margin-left: .5em;
    text-indent: -0.2em;
    padding-left: 1.5em;
    margin-right: 1em;
}
ul.about_icrweb_introduction li::before {
    content: "\f0c8";
    font-family: FontAwesome;
    display: inline;
    color: #ff9655;
    margin-left: -1em;
    padding-right: 5px;
}

@media (min-width: 768px) {

    div#about_icrweb div.icrweb_history .timeline > li {
        margin-bottom: 60px;
    }

    div#about_icrweb div.icrweb_history .timeline > li {
        overflow: hidden;
        margin: 0;
        position: relative;
    }
    div#about_icrweb div.icrweb_history .timeline-date {
        width: 80px;
        float: left;
        margin-top: 20px;
        padding-left: 10px;
    }
    div#about_icrweb div.icrweb_history .timeline-content h4 {
        margin-top: 20px;
        font-size: 18px;
        color: peru;
    }
    div#about_icrweb div.icrweb_history .timeline-content {
        width: 85%;
        float: left;
        border-left: 3px #e5e5d1 solid;
        padding-left: 25px;
    }
    div#about_icrweb div.icrweb_history .timeline-content > p:first-child {
        margin-top: 20px;
    }
    div#about_icrweb div.icrweb_history .timeline-content > p:last-child {
        margin-bottom: 10px;
    }
    div#about_icrweb  div.icrweb_history .timeline-content:before {
        content: '';
        width: 12px;
        height: 12px;
        background: #ff9655;
        position: absolute;
        left: 76px;
        top: 24px;
        border-radius: 100%;
    }

    div#about_icrweb div.icrweb_history .timeline > li:first-child p {
        margin-top: 0 !important;
    }
    div#about_icrweb  div.icrweb_history  .timeline > li:first-child .timeline-content:before {
        top: 6px;
    }
    div#about_icrweb div.icrweb_history .timeline > li:last-child p {
        margin-bottom: 0 !important;
    }
}

div#staff_list dl,
div#staff_list dl > dt,
div#staff_list dl > dd {
    box-sizing: border-box;
}

div#staff_list dl > dt,
div#staff_list dl > dd {
    padding: .5em;
    margin: 0px;
}

div#staff_list dl > dt {
    background-color:#e5e5d1;
    color: #333;
}

div#staff_list dl > dd {
    background-color:#f8f8f8;
}

@media screen and (max-width: 767px) {
    div#staff_list dl {
        border: 2px solid #e5e5d1;
        margin-bottom: .5em;
    }
    div#staff_list dl > dd {
        border: 1px solid fff;
        border-top: none;
    }
    div#staff_list dl > dt,
    div#staff_list dl > dd {
        text-align: center;
    }
    div#staff_list dl > dd > ul {
        text-align: left;
    }
}
@media print, (min-width: 768px) {
    div#staff_list dl {
        display: flex;
        flex-wrap: wrap;
        margin-bottom: .5em;
        border: 2px solid #e5e5d1;
    }
    div#staff_list dl > dt,
    div#staff_list dl > dd {
        display: flex;
        flex-direction: column;
        justify-content: center;
        
    }
    div#staff_list dl > dt {
        width: 20%;
        text-align: center;
    }
    div#staff_list dl > dd {
        width: 80%;
    }
    div#staff_list dl > dd br {
        display: none;
    }
}

/*==============================================*/
/* ページリソース（ICRwebのご紹介） */
/*==============================================*/
.tab-group {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    zoom: 1;
}
.tab-group>li {
    border: 1px solid #428bca;
    border-radius: 4px;
    position: relative;
    float: left;
}
.tab-group>li>a.active,
.tab-group>li>a.active:hover,
.tab-group>li>a.active:focus {
    background-color: #428bca;
    color: #fff;
}
.tab-group>li>a {
    border-radius: 0;
    padding: .5em 1em;
    text-decoration: none;
}
.tab-group>li>a:hover {
    border-radius: 4px;
}
.tab-group li+li {
    margin-left: -1px;
}
.tab-group>li:not(:first-child):not(:last-child),
.tab-group>li:not(:first-child):not(:last-child)>a:hover {
    border-radius: 0;
}
.tab-group>li:first-child,
.tab-group>li:first-child>a:hover {
    margin-left: 0;
}
.tab-group>li:first-child:not(:last-child),
.tab-group>li:first-child:not(:last-child)>a:hover {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.tab-group>li:last-child:not(:first-child),
.tab-group>li:last-child:not(:first-child)>a:hover {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

/*ICRwebについて*/

#about_icrweb #about {
color: #3F3F3F;
line-height: 2.0;
}

#about_icrweb #about a {
	color: #00A7C3 !important;
}

#about_icrweb #about h3 {
	color: #fcbf49;
	line-height: 1.9;
	font-size: 24px;
}
#about_icrweb .sp_t10 {
    margin-top: 10px;
}
#about_icrweb .sp_t15 {
    margin-top: 15px;
}
#about_icrweb .sp_b15 {
    margin-bottom: 15px;
}

#about_icrweb .bar1 {
    padding: 15px 0 5px 5px;
    margin-bottom: 10px;
    border-bottom: solid 3px #faa137;
}

#about_icrweb #about .introduction li {
    background-image: url(/draftfile.php/5/user/draft/780980753/ico_tri1.gif);
    background-repeat: no-repeat;
    background-position: left;
    padding-left: 15px;
    margin-bottom: 3px;
	
}

#about_icrweb #staff dl {
    display: block;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}
#about_icrweb #staff dd {
    display: block;
    margin-inline-start: 40px;
}

#about_icrweb #staff dt {
    display: block;
	float: left;
	font-weight:normal
}

#about_icrweb #staff .clearfix {
    min-width: 0;
    /* overflow: hidden; */
}

#about_icrweb .arrow{
	position: relative;
	display: inline-block;
	padding: 0 0 0 16px;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px;
}
#about_icrweb .arrow::before,
#about_icrweb .arrow::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

#about_icrweb .icon_01::before{
	width: 12px;
	height: 12px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #000;
}
#about_icrweb .icon_01::after{
	left: 3px;
	width: 3px;
	height: 3px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

@media (max-width: 768px) {
    div#about_icrweb div.icrweb_history .timeline {
        margin-left: .7em;
        margin-top: 0;
    }
    div#about_icrweb div.icrweb_history .timeline-date:before {
        content: "\f111";
        font-family: FontAwesome;
        display: inline;
        color: #ff9655;
        padding-right: 5px;
    }
    div#about_icrweb div.icrweb_history .timeline-date:nth-child(n+2) {
        margin-top: 3em;
    }
    div#about_icrweb div.icrweb_history .timeline-content > p {
        margin-left: 1em;
    }
    div#staff dl > dt,
    div#staff dl > dd {
        display: block;
        clear: both;
        margin-inline-start: 0 !important;
        width: 100%;
    }
    div#staff dl {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    div#staff dl > dt {
        background-color: #e5e5d1;
        height: auto !important;
        line-height: 1.5em !important;
        padding: .5em;
    }
    div#staff dl > dt {
        position: static;
        clear:both;
        width: 100%;
    }
    div#staff dl > dd {
        display:block;
        margin:0;
        margin-inline-start: 0 !important;
        padding: .5em;
    }
    div#staff dl > dd > p {
        margin-left: auto !important;
    }
    div#staff dl > dd > p:first-child {
        margin-top: auto;
    }
}

/*================================================================*/
/*修了証発行について*/
/*================================================================*/
#completion ol.faq01 {
    padding:0;margin:0;list-style:none;
    counter-reset:listnum1;
}
#completion ol.faq01 li {
    padding-left: 6em;
    margin-bottom: 2em;
}
#completion ol.faq01 li:before {
    counter-increment: listnum1; /* 任意の名前を付ける（もちろん英語で） */
    content: counter(listnum1); /* 名前を付けたカウンターをcontentで発動！ */
    background: #fcbf49;
    border: 2px solid #fcbf49;
    display: block;
    float:left;
    margin-left: -4em;
    margin-top:-2px;
    width: 2.8em;
    min-width: 1.3em;
    text-align: center;
    height: 2.8em;
    line-height: 2.0;
    border-radius:2.0em;
    color: #FFFFFF;
}
#completion ol.faq01 > li > p {
    margin:0;
}
#completion {
    color: #3F3F3F;
    line-height: 2.0;
}
#completion a {
    padding: 0 20px 13px 12px;
    position: relative;
    color: #00A7C3 !important;
}
#completion a::before {
    content: "";
    width: 8px;
    height: 8px;
    border-top: solid 2px #333;
    border-right: solid 2px #333;
    transform: rotate(45deg);
    position: absolute;
    margin-top: -10px;
    top: 50%;
    left: -5px;
}
#completion h3 {
	color: #000000;
	line-height: 1.9;
	font-size: 24px;
}
#completion .sp_t10 {
    margin-top: 10px;
}
#completion .sp_t15 {
    margin-top: 15px;
}
#completion .sp_b15 {
    margin-bottom: 15px;
}
#completion .sp_b25 {
    margin-bottom: 25px;
}
#completion .co_red {
    color: #D50003;
}
#completion .bar1 {
    padding: 15px 0 5px 5px;
    margin-bottom: 10px;
    border-bottom: solid 3px #faa137;
}

/*規制ガイドライン*/
#guidelines .li_top {
    margin-top: 20px;
}
#guidelines .list_block {
color: #3F3F3F;
line-height: 2.0;
}
#guidelines .list_block a {
	color: #00A7C3 !important;
}
#guidelines .list_block h3 {
	line-height: 1.9;
	font-size: 24px;
}
#guidelines .sp_t10 {
    margin-top: 10px;
}
#guidelines .sp_t15 {
    margin-top: 15px;
}
#guidelines .sp_b15 {
    margin-bottom: 15px;
}
#guidelines .bar1 {
    padding: 15px 0 5px 5px;
    margin-bottom: 10px;
    border-bottom: solid 3px #faa137;
}
#guidelines #about .introduction li {
    background-image: url(http://uat.eptech-demo.com/draftfile.php/5/user/draft/780980753/ico_tri1.gif);
    background-repeat: no-repeat;
    background-position: left;
    padding-left: 15px;
    margin-bottom: 3px;
}
.arrow{
	position: relative;
	display: inline-block;
	padding: 0 0 0 16px;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px;
}
.arrow::before,
.arrow::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.icon_01::before{
	width: 12px;
	height: 12px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #000;
}
.icon_01::after{
	left: 3px;
	width: 3px;
	height: 3px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
/*サイトポリシー*/
#policy {
    color: #3F3F3F;
    line-height: 2.0;
}
#policy a {
	color: #00A7C3 !important;
}
#policy h3 {
    padding: 15px 0 5px 5px;
    margin-bottom: 10px;
    border-bottom: solid 3px #faa137;
}
#policy .text_right {
	text-align: right;
	margin-bottom: 1em;
}
#policy .text_left {
	padding-left:30px;
	margin-bottom: 1em;
}
#policy .text_left_2 {
	margin-left:2em;
	margin-bottom: 1em;
}
#policy .sp_t10 {
    margin-top: 10px;
}
#policy .sp_t15 {
    margin-top: 15px;
}
#policy .sp_b15 {
    margin-bottom: 15px;
}
#policy .font_01 {
	color:#4169e1;
	font-weight:bold;
}
#policy .list_banner {
	list-style-type:none;
	list-style-position:outside;
	margin-left:2em;
}

/* ===================================================================
よくあるご質問ページのデザイン調整用
=================================================================== */
/*自動ナンバリング*/
div#faq_contents {
    counter-reset: number 0;
}
div#faq_contents a {
    color: #00A7C3 !important;
}
div#faq_contents ol.num_list {
    counter-reset: item;
    list-style-type: none;
    padding-left: 0;
}
div#faq_contents ol.num_list {
    padding-left: .3em;
}
div#faq_contents ol.num_list > li {
    text-indent: -1.3em;
    padding-left: 1.3em;
}
div#faq_contents ol.num_list > li:before {
    counter-increment: item;
    content: counter(item)'.';
    padding-right: .5em;
    font-weight: bold;
    color: #b40000;
}
div.faq_index table {
    width: 100%;
}
div.faq_index table + p {
    margin-top: 2em;
}
div#faq_contents h3 {
    padding: 15px 0 5px 5px;
    margin-bottom: 10px;
    border-bottom: solid 3px #faa137;
    color: #faa137;
    font-size: 24px;
}
div#faq_contents .faq dt {
    font-size: 18px;
}
div#faq_contents .faq dd {
    padding-top: .5em;
}
div#faq_contents ol.num_list .fa-check {
    color: #66cc00;
    margin: 0 3px;
    width: 16px;
    text-indent: 0;
}

@media (max-width: 768px) {
    .l-header {
        padding-left: 0 !important;
    }
    .l-sidebar {
        margin-top: 70px;
    }
    .d-print-none {
        width: 100%;
    }
    .blockcolumn, .region-main {
        padding: 0 !important;
    }
    div.faq_index table td {
        display: block;
    }
    .breadcrumb:not(:empty) {
        border: none;
        padding: 0;
        margin-bottom: 0;
    }
}


/*よくあるご質問*/
#faq_contents {
color: #3F3F3F;
line-height: 2.0;
}
/*
#faq_contents a {
	color: #00A7C3 !important;
}
*/
#faq_contents .sp_t10 {
    margin-top: 10px;
}
#faq_contents .sp_t15 {
    margin-top: 15px;
}
#faq_contents .sp_b15 {
    margin-bottom: 15px;
}
#faq_contents .sp_l20 {
    margin-left: 20px;
}
#faq_contents .bar1 {
    padding: 15px 0 5px 5px;
    margin-bottom: 10px;
    border-bottom: solid 3px #faa137;
}
/*
#faq_contents .introduction li {
    background-image: url(http://uat.eptech-demo.com/draftfile.php/5/user/draft/780980753/ico_tri1.gif);
    background-repeat: no-repeat;
    background-position: left;
    padding-left: 15px;
    margin-bottom: 3px;
}
*/
div.faq_index_new {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 10px;
    row-gap: 10px;
    place-items: center;
}
div.faq_index_new > div {
    width: 100%;
    height: 100%;
    background-color: #0c5ba1;
    padding: 5px 7px;
    line-height: 1.2;
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
}
div.faq_index_new > div > a {
    display: block;
    text-align: center;
    width: 100%;
    height: 100%;
    text-decoration: none;
}
div.faq_index_new > div > a > i {
    font-size: 24px;
    padding-top: 5px;
    padding-bottom: 5px;
    color: #fff;
}
div.faq_index_new > div > a > span {
    display: block;
    color: #fff;
}
div.faq_index {
    padding-top: 1em;
}
p.user_agent_info {
    margin-top: 1em;
    border-top: 1px dashed #777;
    padding-top: .5em;
}
div.user_agent_info {
    border: 1px solid navy;
    background-color: aliceblue;
    border-radius: 5px;
    padding: 0 5px;
    margin-top: .5em;
}
@media (max-width: 768px) {
    div.faq_index_new {
        grid-template-columns: repeat(1, 1fr);
    }
    div.faq_index_new > div > a {
        text-align: left;
    }
    div.faq_index_new > div > a > i {
        font-size: 18px;
    }
    div.faq_index_new > div > a > span {
        display: inline;
    }
    #faq_contents .faq dd {
        margin: 0 !important;
        padding: 0 1em .5em 1em !important;
    }
}
/*
#faq_contents .arrow{
	position: relative;
	display: inline-block;
	padding: 0 0 0 16px;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px;
}
#faq_contents .arrow::before,
#faq_contents .arrow::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
#faq_contents .icon_01::before{
	width: 12px;
	height: 12px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #000;
}
#faq_contents .icon_01::after{
	left: 3px;
	width: 3px;
	height: 3px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
*/
#faq_contents .faq dt {
    margin-bottom: 1em;
    color: #333333;
    font-weight: 600;
}
#faq_contents .faq dt::before,
#faq_contents .faq dd::before {
    margin-right: .4em;
}
#faq_contents .faq dt::before {
    counter-increment: number 1;
    content: "Q" counter(number) ".";
	color: #75bbff;
	font-size: 30px

}
#faq_contents .faq dd {
    margin: 1em 1.5em 1.5em 1.5em !important;
    padding: 1em 2em 1.2em 2em !important;
    background-color: #f2f2f2;
    color: #333333;
}
#faq_contents .faq dd::before {
    content: "A.";
	color: #ff8d8d;
	font-size: 30px;
    line-height: 1;
    display: inline-block;
    font-weight: bold;
}
#faq_contents .text_01 {
    color:#B22222;
    margin:0.3em 0;
}
#faq_contents .caution {
border:2px solid orange;
	background-color:#FFFAF0;
	border-radius:7px;
	padding:5px 10px;
	margin-top:0.5em;
}
#faq_contents .caution_title {
    color:orange;
	margin-bottom:1em;
	font-weight:bold;
	border-bottom:2px dotted orange;
	margin-top:0.5em;
}
#faq_contents .caution_p {
    padding-left:1em;
	text-indent:-1em;
	margin-bottom:0.5em;
}
#faq_contents .faq_p {
    line-height:1.5;
	margin:0 0 1em 0.5em;
}
/*特定商取引法に基づく表記*/
#tokushoho{
    color: #3F3F3F;
    line-height: 2.0;
}
.tokuteisyou{
    margin-top: 20px;
}
#tokushoho table{
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 2px;
}
#tokushoho table tr{
 /* border-bottom: solid 2px white;*/
}
#tokushoho table tr:last-child{
    border-bottom: none;
}
#tokushoho table th{
    position: relative;
    text-align: left;
    width: 30%;
    background-color: #b7b7b7;
    color: white;
    text-align: center;
    padding: 10px 0;
}
#tokushoho table th:after{
    display: block;
    content: "";
    width: 0px;
    height: 0px;
    position: absolute;
    top:calc(50% - 10px);
    right:-10px;
    border-left: 10px solid #b7b7b7;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
}
#tokushoho table td{
    text-align: left;
    width: 70%;
    text-align: left;
    background-color: #eee;
    padding: 10px 30px;
}
@media screen and (max-width:768px) {
	/*　この位置に記述する　*/
	#tokushoho .tokuteisyou {
	}
	#tokushoho .tokuteisyou th{
        display: block;
        position: relative;
        text-align: left;
        width: 100%;
        padding: 10px 15px;
    }
    #tokushoho .tokuteisyou th:after{
        border-left: #b7b7b7;
    }
    #tokushoho .tokuteisyou td{
        display: block;
        text-align: left;
        width: 100%;
        padding: 10px 15px;
    }
}

#tokushoho ul {
  display: flex;
  list-style: none;
}

#tokushoho ul li {
  margin-left: 1em;
  font-size: 0.7em

}
#tokushoho .payment_box {
	margin-top: 20px;
    margin-bottom: 20px;
}

#tokushoho a {
	color: #00A7C3 !important;
}

#tokushoho h3 {
    padding: 15px 0 5px 5px;
    margin-bottom: 10px;
    border-bottom: solid 3px #faa137;
}

#tokushoho .sp_t10 {
    margin-top: 10px;
}
#tokushoho .sp_t15 {
    margin-top: 15px;
}
#tokushoho .sp_b15 {
    margin-bottom: 15px;
}
#tokushoho .sp_l20 {
    margin-left: 20px;
}

/*======================================================================*/
/* 「お支払い方法について」ページのデザイン */
/*======================================================================*/
body[class*="cmid-180 "] section#region-main div[role="main"] > h2 {
    border-bottom: solid 3px #faa137;
}
div#payment_howto {
    margin-top: 1em;
}
div.payment_howto_card > h3,
div.payment_howto_comv > h3 {
    background-color: #ffe86f;
    margin: 1em 0 .5em 0;
    padding: .3em .5em;
}
div.payment_howto_card > ol,
div.payment_howto_comv > ol {
    counter-reset: chapter;
    margin: .5em;
}
div.payment_howto_card > ol > li:before,
div.payment_howto_comv > ol > li:before {
    content: "STEP "counter(chapter) ;
    counter-increment: chapter;
    margin: 0 5px 0 0;
    padding:0 10px;
    border-radius: 10px;
    background: #74aae8;
    color: #fff;
    text-align: center;
    z-index: 1;
}
div.payment_howto_card > ol > li > span,
div.payment_howto_comv > ol > li > span {
    display: block;
    margin: .3em 0 1em .3em;
}
div.payment_flow_comv {
    padding-left: 1em;
}
details.payment_flow_comv {
    max-width: 100%;
    background-color: #f0f5f9;
}
details.payment_flow_comv:not([open]) {
    margin-bottom: 7px;
}
details.payment_flow_comv summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: .5em 1em;
    border-radius: 5px;
    background-color: #143f6c;
    color: #fff;
    font-weight: 600;
    cursor: pointer;
}
details.payment_flow_comv summary::-webkit-details-marker {
    display: none;
}
details.payment_flow_comv summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
    content: '';
    transition: transform .3s;
}
details.payment_flow_comv[open] summary::after {
    transform: rotate(225deg);
}
details.payment_flow_comv div {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0 0 .5em 0;
    padding: 1em 2em 2em 2em;
    color: #333;
    transition: transform .5s, opacity .5s;
}
details.payment_flow_comv[open] div {
    transform: none;
    opacity: 1;
}
div.payment_flow_comv {
    margin-bottom: 1.5em;
}
p.payment_flow_image_title {
    font-weight: bold;
    margin-top: 1em;
    background-color: #ccc;
    padding: 3px;
    border-radius: 3px;
}
ol.payment_flow_comv {
    counter-reset: chapter;
}
ol.payment_flow_comv > li {
    margin: .5em;
}
ol.payment_flow_comv > li:before {
    content: counter(chapter) ;
    counter-increment: chapter;
    margin: 0 5px 0 0;
    padding:0 5px;
    border-radius: 4px;
    background: #CCC;
    color: #333;
    text-align: center;
    z-index: 1;
}
ol.payment_flow_comv > li > span > img {
    max-width: 400px;
    display: inline-block;
    padding: .5em 0 .5em 1.5em;
}
div.payment_flow_caution {
    margin: 0 1em auto;
    border: 2px solid #e8383d;
    border-radius: 3px;
    overflow: hidden;
}
div.payment_flow_caution span {
    padding: .4em .8em;
    background-color: #e8383d;
    color: #fff;
}
div.payment_flow_caution p {
    margin: 0;
    padding: 1em 1.5em;
    color: #333;
}
div.payment_howto_ibfo table {
    margin: 2em 1em 1em 1em;
    width: calc(100% - 2em);
}
div.payment_howto_ibfo table td {
    padding: .5em;
    font-size: 12px;
}
div.payment_howto_ibfo table td:first-child {
    width: 105px;
}




/*======================================================================*/
/* 「よくあるご質問」ページのデザイン */
/*======================================================================*/
table.faq_system_recommend {
    width: 100%;
}
table.faq_system_recommend caption {
    font-size: 16px;
    padding: 0;
}
table.faq_system_recommend th {
    background-color: #75bbff;
    text-align: center;
}
table.faq_system_recommend th,
table.faq_system_recommend td {
    border: 1px solid navy;
    padding: 5px 10px;
    font-size: 12px;
}
table.faq_system_recommend td {
    background-color: #fff;
}
div.faq_system_recommend > ul >li {
    font-size: 11px;
    color: #b22222;
    list-style: disc !important;
    list-style-position: outside !important;
    margin-left: 15px;
}
body[id*="page-blocks-contact"] div.contact_info h2,
body[id*="page-blocks-contact"] div.contact_info h3,
body[class*="cmid-57 "] div.contact_info h3 {
    border-bottom: solid 3px #faa137;
    color: #faa137;
    font-size: 24px;
}

@media screen and (max-width:768px) {
    table.faq_system_recommend thead {
        display: none;
    }
    table.faq_system_recommend td {
        display: block;
    }
    table.faq_system_recommend td::before {
        content: attr(data-label);
        font-size: .875rem;
        color: #fff;
        margin-bottom: 0.25rem;
        background-color: navy;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        padding-left: 10px;
    }
    table.faq_system_recommend tr td {
        border-bottom: none;
        position: relative;
        padding-top: 27px;
        background-color: white;
    }
    table.faq_system_recommend tr td:last-of-type {
        border-bottom: 1px solid navy;
    }
    table.faq_system_recommend tr:first-of-type {
        border-bottom: 10px solid #f2f2f2;
    }
}

/*=======================================================================
　　おすすめ関連情報紹介
=======================================================================*/
/*サイドブロック*/
section[class*="l-sidebar__recommend"] li.l-sidebar__recommend-item a {
    color: #fff !important;
}
section[class*="l-sidebar__recommend"] .l-sidebar__recommend-item-img img {
    width: auto;
    border: 1px solid #ccc;
}
a.disabled_intro_book_btn {
    pointer-events: none;
    background-color: #dbdbdb;
    color: #999 !important;
}
@media (min-width: 769px) {
    .l-sidebar__recommend-item-img--book {
        max-width: 90px;
        min-width: 70%;;
    }      
}
/*一覧*/
body#page-blocks-intro_links-list section#region-main,
body#page-blocks-intro_books-list section#region-main {
    background-color: #fff;
    margin: 1em;
    padding: 1em !important;
    border-radius: 5px;
}
body#page-blocks-intro_links-list table.intro_books_list_tb tr,
body#page-blocks-intro_books-list table.intro_books_list_tb tr {
    border-bottom: 1px dashed #aaa;
}
body#page-blocks-intro_links-list .intro_books_list_td1 div.p-related__header,
body#page-blocks-intro_books-list .intro_books_list_td1 div.p-related__header {
    margin-top: 20px;
}
body#page-blocks-intro_books-list .p-related__wrap {
    margin-top: 15px;
}
body#page-blocks-intro_links-list .p-related__inner {
    margin-top: 15px;
}
body#page-blocks-intro_books-list .p-related__text {
    margin-top: 10px;
}
body#page-blocks-intro_links-list div.p-btn,
body#page-blocks-intro_books-list div.p-btn {
    margin-top: 15px;
}
body#page-blocks-intro_links-list .intro_books_list_td1,
body#page-blocks-intro_books-list .intro_books_list_td1 {
    vertical-align: top;
}
body#page-blocks-intro_links-list .p-related__wrap {
    margin-top: 0 !important;
}
body#page-blocks-intro_links-list p.p-related__text {
    margin-top: 0;
}
body#page-blocks-intro_links-list figure.p-related__img img {
    border: 1px solid #ccc;
    margin-bottom: 20px;
    width: 256px;
}
body#page-blocks-intro_books-list figure.p-related__img img {
    margin-bottom: 20px;
}
body#page-blocks-intro_links-list .intro_books_list_td1 + td,
body#page-blocks-intro_books-list .intro_books_list_td1 + td {
    padding-bottom: 15px;
}

/*======================================================================*/
/* 「お問い合わせ」ページのデザイン */
/*  [class*="cmid-57 "]で設定している箇所は実装後にclass名で調整すること     */
/*======================================================================*/
body[id*="page-blocks-contact"] div.contact_info h2 + p,
body[class*="cmid-57 "] div.contact_info h3 + p {
    margin: 1em 0;
}
body[id*="page-blocks-contact"] div.contact_info h2 + p > a,
body[class*="cmid-57 "] div.contact_info h3 + p > a {
    color: #00a7c3 !important;
}

div.contact_caution {
    margin: 1.5em auto;
    border: 2px solid #e8383d;
    border-radius: 5px;
    overflow: hidden;
}
div.contact_caution span {
    padding: .4em .8em;
    background-color: #e8383d;
    border-bottom-right-radius: 5px;
    color: #fff;
}
div.contact_caution ul {
    padding: 1em  1em 1em 2em;
    color: #333;
}
div.contact_caution li {
    list-style: disc;
}
form#contact table{
    width: 100%;
    border-spacing: 0 2px;
    margin-top: .5em;
    margin-bottom: 1em;
    border-collapse: separate;
}
div.contact_info i.fa-exclamation-circle {
    color: #ca3120;
    padding: 0 .3em;
    font-size: 14px;
}
form#contact table tr:last-child{
    border-bottom: none;
}
form#contact table th{
    position: relative;
    width: 30%;
    background-color: #b7b7b7;
    color: white;
    text-align: center;
    padding: 10px 0;
    font-weight: normal;
}
form#contact table th:after{
    display: block;
    content: "";
    width: 0px;
    height: 0px;
    position: absolute;
    top:calc(50% - 10px);
    right:-10px;
    border-left: 10px solid #b7b7b7;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
}
form#contact table td{
    text-align: left;
    width: 70%;
    background-color: #eee;
    padding: 10px 10px 10px 30px;
}
form#contact table em {
    font-size: 12px;
    color: #ca3120;
}
form#contact table  textarea {
    width: 100%;
    min-height: 200px;
}
@media screen and (max-width:768px) {
    body[class*="cmid-57 "] section#region-main {
        overflow: hidden !important;
        box-sizing: content-box !important;
        margin: 0 !important;
        border-radius: 0 !important;
        font-size: 16px !important;
    }
    form#contact table th{
        display: block;
        position: relative;
        text-align: left;
        width: 100%;
        padding: 10px 5px;
    }
    form#contact table th:after{
        border-left: #b7b7b7;
    }
    form#contact table td{
        display: block;
        text-align: left;
        width: 100%;
        padding: 10px 5px !important;
    }
    form#contact table select {
        width: calc(100% - 20px);
        box-sizing: content-box;
        padding: 5px 0;
    }
    form#contact table textarea {
        width: calc(100% - 10px);
    }
}

/*======================================================================
    書籍紹介（編集画面）
    一覧：page-blocks-intro_books-edit
    個別：page-blocks-intro_books-intro_books_edit
========================================================================*/
body#page-blocks-intro_books-edit section#region-main,
body#page-blocks-intro_books-intro_books_edit section#region-main {
    margin: 0 20px;
}
body#page-blocks-intro_books-edit section#region-main table.intro_books_index_tb td {
    background-color: #fff;
}
body#page-blocks-intro_books-edit section#region-main table.intro_books_index_tb tr > td:nth-child(-n+2) {
    text-align: left !important;
    padding-left: 1em;
}
body#page-blocks-intro_books-edit section#region-main table.intro_books_index_tb tr:hover > td {
    background-color: #fff799;
}
body#page-blocks-intro_books-edit section#region-main table.intro_books_index_tb th.intro_books_index_td1 {
    width: 40%;
}
body#page-blocks-intro_books-edit section#region-main table.intro_books_index_tb tr > td:last-of-type {
    width: 65px;
    min-width: 60px;
    max-width: 70px;
}
body#page-blocks-job_openings-job_openings_edit section#region-main input[type="text"] {
    width: 100%;
}
body#page-blocks-intro_books-edit section#region-main table.intro_books_index_tb tr.job_close > td {
    background-color: #ddd;
    color:dimgray;
}

/*======================================================================
    関連リンク紹介（編集画面）
    一覧：page-blocks-intro_links-edit
    個別：page-blocks-intro_books-intro_books_edit
========================================================================*/
body#page-blocks-intro_links-edit section#region-main,
body#page-blocks-intro_books-intro_books_edit section#region-main {
    margin: 0 20px;
}
body#page-blocks-intro_links-edit section#region-main table.intro_links_index_tb td {
    background-color: #fff;
}
body#page-blocks-intro_links-edit section#region-main table.intro_links_index_tb tr > td:nth-last-child(n+2) {
    text-align: left !important;
    padding-left: 1em;
}
body#page-blocks-intro_links-edit section#region-main table.intro_links_index_tb tr:hover > td {
    background-color: #fff799;
}
body#page-blocks-intro_links-edit section#region-main table.intro_links_index_tb th.intro_links_index_td1 {
    width: 25%;
}
body#page-blocks-intro_links-edit section#region-main table.intro_links_index_tb tr > td:last-of-type {
    width: 65px;
    min-width: 60px;
    max-width: 70px;
}
body#page-blocks-job_openings-job_openings_edit section#region-main input[type="text"] {
    width: 100%;
}
body#page-blocks-intro_links-edit section#region-main table.intro_links_index_tb tr.job_close > td {
    background-color: #ddd;
    color:dimgray;
}

/*======================================================================
    求人情報
    page-blocks-job_openings-list
========================================================================*/
body#page-blocks-job_openings-list section#region-main {
    background-color: #fff;
    margin: 1em;
    padding: 1em !important;
    border-radius: 5px;
}
body#page-blocks-job_openings-list h2 {
    color: #faa137;
    border-bottom: solid 3px #faa137;
}
body#page-blocks-job_openings-list ul.job_openings_sel_ul {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
}
body#page-blocks-job_openings-list ul.job_openings_sel_ul > li[class*="sel_area"] {
    width:100% !important;
}
body#page-blocks-job_openings-list ul.job_openings_sel_ul > li[class*="sel_area"] a {
    width:100% !important;
    text-align: center;
}
body#page-blocks-job_openings-list ul.job_openings_sel_ul > li[class*="sel_area"] a:focus {
    background-color: transparent !important;
}
body#page-blocks-job_openings-list ul.job_openings_sel_ul > li[class*="sel_area"] a:hover {
    text-decoration: none !important;
}
body#page-blocks-job_openings-list ul.job_openings_sel_ul > li[class*="sel_all sel_area"] {
    color: #fff;
}
body#page-blocks-job_openings-list div.job_openings_recruit,
body#page-blocks-job_openings-list div.job_openings_past {
    max-width: 100%;
    margin-top: 0 !important;
}
body#page-blocks-job_openings-list div.job_openings_recruit table,
body#page-blocks-job_openings-list div.job_openings_recruit tr,
body#page-blocks-job_openings-list div.job_openings_recruit td,
body#page-blocks-job_openings-list div.job_openings_past table,
body#page-blocks-job_openings-list div.job_openings_past tr,
body#page-blocks-job_openings-list div.job_openings_past td {
    border: none;
    border-radius: 0;
}
body#page-blocks-job_openings-list div.job_openings_recruit table,
body#page-blocks-job_openings-list div.job_openings_past table {
    border-collapse: collapse;
    border: 1px solid navy;
}
body#page-blocks-job_openings-list div.job_openings_recruit tr:nth-child(2),
body#page-blocks-job_openings-list div.job_openings_past tr:nth-child(2) {
    border-top: 1px solid navy;
    border-bottom: 1px solid navy;
}
body#page-blocks-job_openings-list div.job_openings_recruit td.inst_head,
body#page-blocks-job_openings-list div.job_openings_recruit td.job_head {
    min-width: 6em;
    max-width: 6em;
    letter-spacing: .2em;
    font-weight: normal !important;
    background-color: #6495ed !important;
}
body#page-blocks-job_openings-list div.job_openings_recruit td.inst_name,
body#page-blocks-job_openings-list div.job_openings_recruit td.job_name {
    background-color: #f0f8ff !important;
}
body#page-blocks-job_openings-list div.job_openings_past td.inst_head,
body#page-blocks-job_openings-list div.job_openings_past td.job_head {
    min-width: 6em;
    max-width: 6em;
    letter-spacing: .2em;
    font-weight: normal !important;
    background-color: #939393 !important;
}
body#page-blocks-job_openings-list div.job_openings_past td.inst_name,
body#page-blocks-job_openings-list div.job_openings_past td.job_name {
    background-color: #f6f6f6 !important;
}
body#page-blocks-job_openings-list div.job_openings_recruit td.inst_name > div,
body#page-blocks-job_openings-list div.job_openings_past td.inst_name > div {
    margin-right: .5em;
}
body#page-blocks-job_openings-list div.job_openings_recruit td.job_name,
body#page-blocks-job_openings-list div.job_openings_past td.job_name {
    padding-left: 10px !important;
}
body#page-blocks-job_openings-list div.job_openings_recruit td.job_comm,
body#page-blocks-job_openings-list div.job_openings_past td.job_comm {
    border-radius: 0 !important;
}
body#page-blocks-job_openings-list div.job_openings_recruit div.job_new::after {
    content: "NEW!";
    background-color: #F00;
    color: #fff;
    font-size: 12px;
    padding: 0 5px;
    border-radius: 10px;
}
body#page-blocks-job_openings-list div.job_openings_recruit td.job_name > a,
body#page-blocks-job_openings-list div.job_openings_recruit td.job_comm a {
    color: #00a7c3 !important;
}
body#page-blocks-job_openings-list div.job_openings_recruit td.job_name > a:hover {
    text-decoration: none;
} 
body#page-blocks-job_openings-list div.job_openings_recruit td.job_name > a::after {
    font: normal normal normal 14px/1 FontAwesome;
    content: "\f08e";
    padding-left: 5px;
}
body#page-blocks-job_openings-list div.past_job_sel_div {
    max-width: 100%;
}
body#page-blocks-job_openings-list div.past_job_sel_div li[class*="kyujin_close current"] {
    padding: .5em 1.5em;
    width: auto !important;
}


@media screen and (max-width:768px) {
    body#page-blocks-job_openings-list ul.job_openings_sel_ul {
        flex-flow: wrap;
        justify-content: stretch;
        margin: 0;
    }
    body#page-blocks-job_openings-list ul.job_openings_sel_ul > li[class*="sel_area"] {
        width: calc( (100% - 9px) / 3) !important;
    }
    body#page-blocks-job_openings-list ul.job_openings_sel_ul > li[class*="sel_area"] {
        margin-bottom: 3px;
    }
}

/*======================================================================
    求人情報（編集画面）
    page-blocks-job_openings-edit
========================================================================*/
body#page-blocks-job_openings-edit section#region-main,
body#page-blocks-job_openings-job_openings_edit section#region-main {
    margin: 0 20px;
}
body#page-blocks-job_openings-edit section#region-main table.job_openings_index_tb td {
    background-color: #fff;
}
body#page-blocks-job_openings-edit section#region-main table.job_openings_index_tb tr > td:nth-child(-n+2) {
    text-align: left !important;
    padding-left: 1em;
}
body#page-blocks-job_openings-edit section#region-main table.job_openings_index_tb tr:hover > td {
    background-color: #fff799;
}
.job_openings_index_td7,
body#page-blocks-job_openings-edit section#region-main table.job_openings_index_tb tr > td:last-of-type {
    width: 65px;
    min-width: 60px;
    max-width: 70px;
}
body#page-blocks-job_openings-job_openings_edit section#region-main input[type="text"] {
    width: 100%;
}
body#page-blocks-job_openings-edit section#region-main table.job_openings_index_tb tr.job_close > td {
    background-color: #ddd;
    color:dimgray;
}

/*======================================================================
    セミナー案内
    page-blocks-intro_seminar-list
========================================================================*/
body#page-blocks-intro_seminar-list section#region-main {
    background-color: #fff;
    margin: 1em;
    padding: 1em !important;
    border-radius: 5px;
}
body#page-blocks-intro_seminar-list h2 {
    color: #faa137;
    border-bottom: solid 3px #faa137;
}
body#page-blocks-intro_seminar-list div.intro_seminar_info {
    max-width: 100%;
}
body#page-blocks-intro_seminar-list div.intro_seminar_list_header {
    line-height: 1.7;
    padding: 1em 0;
    border-bottom: none;
}
body#page-blocks-intro_seminar-list div.intro_seminar_recruit {
    max-width: 100%;
    margin-top: 0 !important;
}
body#page-blocks-intro_seminar-list div.intro_seminar_recruit table,
body#page-blocks-intro_seminar-list div.intro_seminar_recruit tr,
body#page-blocks-intro_seminar-list div.intro_seminar_recruit td {
    border: none;
}
body#page-blocks-intro_seminar-list div.intro_seminar_recruit table {
    border-collapse: collapse;
    border: 1px solid navy;
}
body#page-blocks-intro_seminar-list div.intro_seminar_recruit tr:nth-child(2) {
    border-top: 1px solid navy;
    border-bottom: 1px solid navy;
}
body#page-blocks-intro_seminar-list div.intro_seminar_recruit tr:nth-child(3) {
    border-bottom: 1px solid navy;
}
body#page-blocks-intro_seminar-list div.intro_seminar_recruit td.inst_head {
    min-width: 10em;
    max-width: 10em;
    font-weight: normal !important;
    background-color: #6495ed !important;
}
body#page-blocks-intro_seminar-list div.intro_seminar_recruit td.inst_name {
    background-color: #f0f8ff !important;
}
body#page-blocks-intro_seminar-list div.intro_seminar_recruit td.inst_name > div {
    margin-right: .5em;
}
body#page-blocks-intro_seminar-list div.intro_seminar_recruit div.seminar_new::after {
    content: "NEW!";
    background-color: #F00;
    color: #fff;
    font-size: 12px;
    padding: 0 5px;
    border-radius: 10px;
}
body#page-blocks-intro_seminar-list div.intro_seminar_recruit td.inst_name > a,
body#page-blocks-intro_seminar-list div.intro_seminar_recruit td.event_comm a {
    color: #00a7c3 !important;
}
body#page-blocks-intro_seminar-list div.intro_seminar_recruit td.inst_name > a:hover {
    text-decoration: none;
} 
body#page-blocks-intro_seminar-list div.intro_seminar_recruit td.inst_name > a::after {
    font: normal normal normal 14px/1 FontAwesome;
    content: "\f08e";
    padding-left: 5px;
}


@media screen and (max-width:768px) {
    body#page-blocks-intro_seminar-list div.intro_seminar_recruit td.inst_head,
    body#page-blocks-intro_seminar-list div.intro_seminar_recruit td.inst_name {
        display: block;
        width: 100% !important;
        max-width: 100% !important;
        text-align: left;
    }
}

/*======================================================================
    セミナー案内（編集画面）
    page-blocks-intro_seminar-edit
    page-blocks-intro_seminar-intro_seminar_edit
========================================================================*/
body#page-blocks-intro_seminar-edit section#region-main,
body#page-blocks-intro_seminar-intro_seminar_edit section#region-main {
    margin: 0 20px;
}
body#page-blocks-intro_seminar-edit section#region-main table.intro_seminar_index_tb td {
    background-color: #fff;
}
body#page-blocks-intro_seminar-edit section#region-main table.intro_seminar_index_tb tr > td:nth-child(-n+2) {
    text-align: left !important;
    padding-left: 1em;
}
body#page-blocks-intro_seminar-edit section#region-main table.intro_seminar_index_tb tr:hover > td {
    background-color: #ffffca;
}
body#page-blocks-intro_seminar-edit table.intro_seminar_index_tb .intro_seminar_index_td3 {
    width: 20%;
}
body#page-blocks-intro_seminar-edit table.intro_seminar_index_tb .intro_seminar_index_td4,
body#page-blocks-intro_seminar-edit table.intro_seminar_index_tb .intro_seminar_index_td5 {
    width: 8%;
}

body#page-blocks-intro_seminar-intro_seminar_edit section#region-main input[type="text"] {
    width: 100%;
}
.intro_seminar_index_td6,
body#page-blocks-intro_seminar-intro_seminar_edit section#region-main table.intro_seminar_index_tb tr > td:last-of-type {
    width: 65px;
    min-width: 60px;
    max-width: 70px;
}
body#page-blocks-intro_seminar-intro_seminar_edit section#region-main table.intro_seminar_index_tb tr.seminar_close > td {
    background-color: #ddd;
    color:dimgray;
}
body#page-blocks-intro_seminar-intro_seminar_edit div.editor_atto_content_wrap a {
    color: #00a7c3 !important;
    text-decoration: underline !important;
}

/*======================================================================
    修了証発行について
========================================================================*/
div.certificate_index {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 10px;
    row-gap: 10px;
    place-items: center;
    box-sizing: border-box;
}
html[lang="en"] div.certificate_index {
    grid-template-columns: repeat(3, 1fr);
}
div.certificate_index > div {
    width: 100%;
    height: 100%;
    background-color: #0c5ba1;
    padding: 5px 7px;
    line-height: 1.2;
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
}
div.certificate_index > div > a {
    display: block;
    text-align: center;
    width: 100%;
    height: 100%;
    text-decoration: none;
}
div.certificate_index > div > a > i {
    font-size: 24px;
    padding-top: 5px;
    padding-bottom: 5px;
    color: #fff;
}
div.certificate_index > div > a > span {
    display: block;
    color: #fff;
}
div#about_certificate h3 {
    padding: 1.5em 0 5px 5px;
    margin-bottom: 10px;
    border-bottom: solid 3px #faa137;
    color: #faa137;
    font-size: 24px;
}
div.cert01 h4,
div.cert02 h4 {
    margin: 1em 0;
    font-size: 18px;
}
div.cert01 {
    counter-reset: chapter;
}
div.cert01 dl {
    margin-left: 24px;
}
div.cert01 dt {
    color: #ca3120;
}
div.cert01 dt:before {
    content: counter(chapter) ". " ;
    counter-increment: chapter;
}
div.cert01 dd {
    margin-left: 1.2em;
    margin-bottom: .5em;
}
div.btn_status,
table.btn_status {
    margin-left: 24px;
}
div.btn_status > p > img {
    margin: 1em 0;
}
table.btn_status td {
    border: 1px solid silver;
    padding: .5em;
}
table.btn_status td:last-child {
    min-width: 600px;
}
table.btn_status td img {
    min-width: 140px;
}
table.btn_status tfoot td {
    border: none;
}
div.cert01 p > img,
div.cert02 p > img {
    max-width: 1102px;
    width: 100%;
    border: 1px solid silver;
}
div.cert01 em,
div.cert02 em {
    color: #ca3120;
    font-weight: bold;
}
div.cert02 p.test_info,
div.cert04 div.test_info {
    margin-top: .5em;
}
div.cert02 p.test_info > i,
div.cert04 div.test_info > i {
    color: #ca3120;
}
/*
div.cert02 p.test_info > span {
    background:linear-gradient(transparent 60%, #ff6 60%);
}
*/
div.cert03 li > span {
    margin-top: 1em;
    display: block;
    font-size: 18px;
}
div.cert03 li > img {
    margin-left: 24px;
    max-width: 1102px;
    width: calc(100% - 24px);
    border: 1px solid silver;
}
div.cert03 div.payment_caution {
    margin: .5em 0;
}
div.cert03 div.payment_caution > a {
    color: #00a7c3 !important;
}
div.cert03 div.payment_caution > i {
    color: #ca3120;
}
div.cert_image img {
    margin: 1em 0 1em 24px;
    border: 1px solid silver;
    max-width: 580px;
}
div.cert04 div > a {
    color: #00a7c3 !important;
}
@media screen and (max-width:768px) {
    div.btn_status,
    div.cert01 dl,
    div.cert02 dl,
    div.cert03 dl,
    div.cert04 dl,
    div.cert_image img {
        margin-left: 0;
        margin-right: 0;
        width: 100%;
        max-width: 100%;
    }
    table.btn_status {
        margin-left: 0;
        margin-right: 0;
        width: 100%;
        max-width: 100%;
    }
    table.btn_status td {
        display: block !important;
        width: 100%;
        max-width: 100%;
        border: none;
    }
    table.btn_status td:last-child {
        min-width: 100% !important;
    }
}

/*サイトポリシー*/
ul.secondary_use li > p:nth-child(1) {
    color: #ca3120;
    margin-top: .5em;
}
ul.secondary_use li > p:nth-child(2),
ul.secondary_use li > p:nth-child(3) {
    margin-left: 18px;
    line-height: 1.5;
}
ul.secondary_use li > p:nth-child(2) {
    margin-bottom: .7em;
}

/*======================================================================
    スマホ表示時のヘッダー＆サイドバー＆フッター
========================================================================*/
section.mobile_custom_menu {
    display: none;
}
@media screen and (max-width:768px) {
    .sp__logo.logo_pc_hide a {
        display: block;
        min-width: 150px;
        margin-left: 10px;
    }
    .button_signup, .button_login, .button_logout, .button_profile {
        padding: 6px;
        font-size: 14px;
        width: 30px;
        height: 30px;
        border-radius: 20px;
        border-left: none;
        overflow: hidden;
    }
    .button_signup a, .button_login a, .button_logout a, .button_profile a {
        max-height: 20px;
        max-width: 20px;
    }
    nav[class*="fixed-top navbar navbar-bootswatch navbar-expand moodle-has-zindex"] {
        background-color: #fff !important;
    }
    nav[class*="navbar"] {
        height: 60px !important;
        min-height: 60px !important;
        max-height: 60px !important;
    }
    .l-sidebar {
        margin-top: 60px !important;
    }
    .l-sidebar .p-certificate__link {
        padding: 10px;
    }
    section.mobile_custom_menu {
        display: block;
        background-color: #f0f0f0;
    }
    section.mobile_custom_menu div[class*="card-body p-3"] {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }
    section.mobile_custom_menu a {
        display: block;
        font-size: 14px;
        line-height: 1.42857143;
        padding: 10px 37px;
    }
    /*<nav class="nav navbar-nav d-md-none" aria-label="カスタムメニュー" id="yui_3_17_2_1_1695860738540_26">*/
    footer#page-footer div.container {
        display: none !important;
    }
    footer#page-footer {
        padding: 50px calc(1rem + 2.6667vmin) !important;
    }
    div.button_lang {
        background-color: #fff !important;
        width: 30px;
        height: 30px;
        border-radius: 20px;
        padding: 4px 0 0 4px;
        border: 1px solid #333;
        display: block !important;
    }
    .button_signup, .button_login, .button_logout, .button_profile, .button_lang {
        margin-left: 5px;
    }
}

/*======================================================================
    スマホデザイン調整時の注意事項 2023-09-07
    [1] ボックスが左右に動いてしまう場合は下記を確認
        ・box-sizing: content-box
        ・overflow: hidden
    [2] 入力フォームタップ時に画面が拡大されてしまう場合は下記を確認
        ・font-size: 16px（16px未満だと拡大される）
========================================================================*/

/*======================================================================
    スマホ表示時のサイドメニュー
    section class="mobile_custom_menu"
========================================================================*/





/*======================================================================
    管理者メニュー
========================================================================*/
body#page-mod-certificate-mod section#region-main,
body#page-blocks-cs_suggest-edit_cs_suggest section#region-main {
    margin: 0 20px;
    background-color: #fff;
    padding: 10px 20px !important;
    border-radius: 10px;
}
body#page-grade-report-grader-index div[role="main"] {
    max-width: calc(100vw - 330px) !important;
}
body#page-grade-report-grader-index .gradeparent {
    overflow-x: auto;
    min-width: calc(100% - 30px);
}
body#page-grade-report-grader-index #region-main {
    overflow-x: hidden;
    min-width: calc(100% - 30px) !important;
    width: auto;
    display: inline-flex;
    flex-direction: column;
}
/* 講座選択 */
body#page-blocks-cs_suggest-edit_cs_suggest .modal-dialog[tabindex="0"]:focus {
    box-shadow: none !important;
}
body#page-blocks-cs_suggest-edit_cs_suggest div.modal-content div.modal-header {
    background-color: #ffe86f;
}
body#page-blocks-cs_suggest-edit_cs_suggest div.modal-content div.modal-body {
    height: 80vh;
    overflow-y: scroll;
    padding: 0 !important;
    margin: 1em;
    border: 1px solid #ccc;
}
div.modal-content div.modal-body table {
    border-collapse:separate;
    border-spacing: 0;
    width: 100%;
    margin: 0 !important;
}
div.modal-content div.modal-body .table-bordered {
    border: none;
}
div.modal-content div.modal-body thead {
    position: sticky;
    top: 0;
    border: none;
}
div.modal-content div.modal-body thead td {
    background-color: #aaa;
    color: #fff;
}
div.modal-content div.modal-body tr,
div.modal-content div.modal-body td {
    border: none;
}
div.modal-content div.modal-body thead tr > td:first-child {
    border-right: 1px solid #fff;
}
div.modal-content div.modal-body tbody tr > td:first-child {
    border-right: 1px solid #ccc;
    vertical-align: middle;
}
div.modal-content div.modal-body tbody tr:nth-last-child(n+2) td {
    border-bottom: 1px solid #ccc;
}
div.modal-content div.modal-body table tr > td:first-child {
    width: 5em !important;
    text-align: center;
}
div.modal-content div.modal-body tbody tr:hover {
    background-color: #f8f4e6;
}
div.modal-content div.modal-body table tr > td:first-child input {
    color: #fff;
    background-color: #0c5ba1;
    border-color: #0b5496;
    padding: .3em .5em;
}

/* コースおよびカテゴリ管理 */
ul[class*="course-list"] li.listitem[data-visible="0"] {
    color: #a0a0a0 !important;
    background-color: #f5f5f5;
}

/* other */
.c-btn--issue {
    padding: 0 0 0 8px;
}
.c-icon--circle {
    padding-left: 15px;
}
html[lang="en"] body#page-course-view .c-icon--circle {
    line-height: 1;
}

/* サイドブロックの「管理者用メニュー」のデザイン */
section[class*="block_admin_menu"] {
    background-color: aliceblue !important;
}
section[class*="block_admin_menu"] h5 {
    background-color: navy;
    color: white;
    width: 100%;
    display: block !important;
    margin: 0 !important;
    padding: .3em .5em;
    border-radius: 3px;
}
section[class*="block_admin_menu"] h5 + div {
    margin-top: 0 !important;
}
section[class*="block_admin_menu"] ul {
    counter-reset:list;
    list-style-type:none;
    font: 14px/1.6 'arial narrow', sans-serif;
    padding:0;
}
section[class*="block_admin_menu"] ul li{
    position:relative;
    padding: 3px 0 3px 20px;
    font-weight: bold;
    font-size:14px;
    border-bottom: dashed 1px #000080;
}
section[class*="block_admin_menu"] ul li:before{
    counter-increment: list;
    content: "";
    display: block;
    position: absolute;
    left: 0px;
    height: 0;
    width: 0;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-left: 7px solid #000080;
    top: 50%;
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
section[class*="block_admin_menu"] ul a:focus {
    background-color: aliceblue !important;
}
section[class*="block_admin_menu"] ul span {
    font-weight: normal;
    font-size: 12px;
    color: #b22222;
}

/*======================================================================
    個別ページデザイン
========================================================================*/
/* What's ATLAS */
#about_icrweb #about h3 {
    color: #fcbf49;
    line-height: 1.9;
    font-size: 24px;
}
.about_atlas_0 {
    float: right;
    padding: 0 20px 15px 15px;
}
p.about_atlas {
    line-height: 1.7;
    margin-top: 1em;
}
p.about_atlas a {
    color: #00a7c3 !important;
}
@media screen and (max-width:768px) {
    .about_atlas_0 {
        float: none;
        text-align: center;
    }
}
/*======================================================================
    管理用ページデザイン
========================================================================*/
/* 課金状況一覧 */
body#page-blocks-payment-list section#region-main {
    margin: 0 20px 20px 20px
}
body#page-blocks-payment-list section#region-main form.mform {
    background-color: #fff;
}
body#page-blocks-payment-list section#region-main form.mform h2 {
    background-color: #f0f0f0;
    padding-bottom: 1em;
}
body#page-blocks-payment-list section#region-main form.mform hr {
    display: none;
}
body#page-blocks-payment-list section#region-main div#fitem_id_username {
    border-top: 1px solid #f0f0f0;
    border-bottom: 1px solid #f0f0f0;
}
body#page-blocks-payment-list section#region-main div#fgroup_id_buttonar {
    border-top: 1px solid #f0f0f0;
    background-color: #f0f0f0;
}
body#page-blocks-payment-list section#region-main #fgroup_id_purpose_grp {
    margin-top: 1em;
}
body#page-blocks-payment-list section#region-main #fgroup_id_buttonar {
    padding-bottom: 1em;
}
body#page-blocks-payment-list section#region-main .col-form-label {
    padding-top: 0;
}
body#page-blocks-payment-list section#region-main input#id_resetbutton {
    color: #212529;
    background-color: #b8c1ca;
    border-color: #b1bbc4;
    padding: 0.5em 1em;
}
body#page-blocks-payment-list section#region-main table {
    margin-bottom: 1em;
}
body#page-blocks-payment-list section#region-main table th {
    line-height: 25px;
    background-color: #555;
    color: #fff;
    border: 1px solid #fff;
    text-align: center;
    padding: 0;
}
body#page-blocks-payment-list section#region-main table td {
    background-color: #fff;
    vertical-align: middle;
    border: 1px solid #dee2e6;
    padding: 0;
}
body#page-blocks-payment-list section#region-main table tr:hover > td {
    background-color: #fff799;
}
body#page-blocks-payment-list section#region-main table .lastcol {
    width: 120px;
    text-align: center;
}
body#page-blocks-payment-list section#region-main table td button {
    margin: 5px 0;
}
body#page-blocks-payment-list section#region-main table .c0,
body#page-blocks-payment-list section#region-main table .c1,
body#page-blocks-payment-list section#region-main table .c3 {
    padding: 0 .5em;
}
body#page-blocks-payment-list section#region-main table .c2,
body#page-blocks-payment-list section#region-main table .c4 {
    text-align: center;
}

/*コメント*/
body#page-course-lecture .modal-dialog:focus,
body#page-course-lecture .modal-dialog button.close:focus {
    box-shadow: none !important;
}
body#page-course-lecture div.modal-content div.modal-header {
    background-color: #ffe86f;
}
body#page-course-lecture div.modal-content form#user_comment_mod {
    margin-top: 0 !important;
}
body#page-course-lecture div.modal-content form#user_comment_mod table td {
    background-color: #fff;
    border: none;
}
body#page-course-lecture div.modal-content form#user_comment_mod textarea#comment {
    width: 100%;
    height: 15em;
}
body#page-course-lecture div.modal-content .comment_caution {
    text-align: left !important;
    font-size: 90%;
    color: #b22222;
}

/*======================================================================
    重要なお知らせ
========================================================================*/
section.important_notices_block {
    background-color: transparent;
    margin: 0 calc(5.88235294% + 1rem);
    margin-top: 2rem !important;
    padding: 0 !important;
    border-radius: 7px;
}
section.important_notices_block div.card-body,
section.important_notices_block div.card-text {
    padding: 0 !important; 
    margin: 0 !important;
    border-radius: 7px;
}
section.important_notices_block details {
    display: block !important;
    width: 100% !important;
    margin: 0 0 .5rem 0 !important;
}
section.important_notices_block details:last-child {
    margin-bottom: 0 !important;
}
section.important_notices_block details summary {
    background-color: #000;
    color: #fff;
    font-weight: bold;
    line-height: 1.41666667;
    padding: 7px 1rem;
    display: block !important;
    width: 100% !important;
    border-radius: 7px;
}
section.important_notices_block details summary + div {
    background-color: #fff;
    font-weight: normal;
    line-height: 1.5;
    padding: 7px 1rem;
    display: block !important;
    width: 100% !important;
    border-radius: 0 0 7px 7px;
}
section.important_notices_block details a {
    color: #00A7C3 !important;
}
section.important_notices_block details[open] summary {
    border-radius: 7px 7px 0 0;
}
/*
section.important_notices {
    background-color: #fff;
    margin: 0 calc(5.88235294% + 1rem);
    margin-top: 2rem !important;
    border-radius: 7px;
}
section.important_notices h5 {
    background-color: #000;
    color: #fff;
    font-weight: bold;
    line-height: 1.41666667;
    padding: 7px 1rem;
    display: block !important;
    margin: 0 !important;
    width: 100% !important;
    border-radius: 7px 7px 0 0;
}
section.important_notices div.card-body {
    padding: 0 !important;
}
section.important_notices div.card-text {
    padding: 0 1rem 1rem 1rem; 
}
*/

/*======================================================================
    施設契約をご活用ください
========================================================================*/
section.btn_facility_contract {
    background-color: transparent;
    height: 40px;
}
section.btn_facility_contract div.card-body {
    background-color: transparent;
    padding: 0 !important;
    height: 40px;
}
section.btn_facility_contract div.card-text {
    background-color:transparent;
    margin: 0 !important;
    text-align: right;
    height: 40px;
}
section.btn_facility_contract div.no-overflow {
    background-color: #fcbf49;
    display: inline-block;
    width: 380px;
    text-align: center;
    height: 40px;
    line-height: 40px;
    overflow: hidden;
    position: relative;
}
section.btn_facility_contract div.no-overflow a {
    display: inline-block;
    width: 100%;
    height: 40px;
    line-height: 40px;
}
.triangle {
    display: block;
    height: 0;
    width: 0;
    position: absolute;
    bottom: 0;
    right: 0;
    border-left: 20px solid transparent;
    border-bottom: 20px solid #333;
}
@media (min-width: 769px) {
    section.btn_facility_contract div.no-overflow {
        width: 31.932773%;
        max-width: 380px;
    }
}
@media screen and (max-width:768px) {
    section.btn_facility_contract div.card-text {
        margin: 0 calc(50% - 190px) !important;
    }
}
/*======================================================================
    ユーザー情報修正を促すダイアログのデザイン
========================================================================*/
#user_update_modal_div .modal-dialog {
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.6);
}
#user_update_modal_div {
    background: rgba(128,128,128,0.5);
}
#user_update_modal_div #user_info {
    color: #3F3F3F;
    padding: 20px;
}
#user_update_modal_div #user_info .text_box {
    margin-top: 20px;
    margin-top: 15px;
    line-height: 2.0;
    text-align: center;
}
#user_update_modal_div #user_info .text_box_2 {
    margin-top: 20px;
    line-height: 2.0;
    text-align: center;
    background: #eaeaea;
    padding: 10px;
    border-radius: 0.3rem;
}
#user_update_modal_div #user_info .font_red {
    color: #F70004;
    margin-top: 10px;
    line-height: 2.0;
    text-align: center;
    font-weight: bold;
}
#user_update_modal_div #user_info h3 {
    line-height: 1.9;
    font-size: 24px;
    padding: 5px;
    margin-bottom: 10px;
    border-bottom: solid 5px #faa137;
    text-align: center;
}
#user_update_modal_div #user_info .sp_t10 {
    margin-top: 10px;
}
#user_update_modal_div #user_info .sp_t15 {
    margin-top: 15px;
}
#user_update_modal_div #user_info .sp_b15 {
    margin-bottom: 15px;
}
/*ボタン*/
#user_update_modal_div #user_info a.btn_01 {
    display: block;
    text-align: center;
    text-decoration: none;
    width: calc(180px + 8rem);
    margin: auto;
    padding: 1rem 4rem;
    font-weight: bold;
    border: 2px solid #e25619;
    background: #e25619;
    color: #fff !important;
    transition: 0.5s;
    border-radius: 0.3rem;
    margin-bottom: 10px;
}
#user_update_modal_div #user_info a.btn_01:hover {
    color: #e25619 !important;
    background: #fff;
}
#user_update_modal_div #user_info a.btn_02 {
    display: block;
    text-align: center;
    text-decoration: none;
    width: calc(100px + 4rem);
    margin: auto;
    padding: 0.1em 2rem;
    font-size: 0.75rem !important;
    border: 2px solid #9a9a9a;
    background: #9a9a9a;
    color: #fff !important;
    transition: 0.5s;
    border-radius: 0.3rem;
    margin-bottom: 10px;
}
#user_update_modal_div #user_info a.btn_02:hover {
    color: #9a9a9a !important;
    background: #fff;
}
#user_update_modal_div #user_info .image_50 {
    width: 40%;
    margin: auto;
    margin-top: 10px;
}
@media (min-width: 576px) {
    #user_update_modal_div .modal-dialog {
        max-width: 510px !important;
    }  
}

/*======================================================================
    施設契約をご活用ください
========================================================================*/
#facility-contract {
	color: #3F3F3F;
	margin-bottom: 5px;
}
#facility-contract .list_block {
    color: #3F3F3F;
    line-height: 2.0;
}
#facility-contract .list_block a {
	color: #00A7C3 !important;
}
#facility-contract .list_block h3 {
	line-height: 1.9;
	font-size: 24px;
}
#facility-contract .sp_t10 {
    margin-top: 10px;
}
#facility-contract .sp_t15 {
    margin-top: 15px;
}
#facility-contract .sp_t20 {
    margin-top: 20px;
}
#facility-contract .sp_b15 {
    margin-bottom: 15px;
}
#facility-contract .bar1 {
    padding: 15px 0 5px 5px;
    margin-bottom: 10px;
    border-bottom: solid 3px #faa137;
}
#facility-contract .marker_lime{
  background:linear-gradient(transparent 80%, #ffbb1e 80%);
}
#facility-contract .font_01{
    line-height: 2.0;
    font: bold;
    border-bottom: 3px double #a1a1a1;
    border-top-style: none;
    border-right-style: none;
    border-left-style: none;
}
#facility-contract .list_block_2 {
    margin: 20px 0 20px 0px;
	padding: 20px;
	background-color: #eaeaea;
	line-height: 2.0;
}
#facility-contract .list_block_3 a {
	color: #00A7C3!important;
}
#facility-contract .list_block_3 ol {
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding:0;
}
#facility-contract .list_block_3 ol li {
  position: relative;
  padding: 1.0em;
  line-height: 1.5em;
  background: #f1f8ff;
  border-left : solid 35px #5c9ee7;
  margin-bottom: 5px;
  margin-top: 10px;
}
#facility-contract .list_block_3 ol li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*数字のデザイン変える*/
  display:inline-block;
  color: white;
  font-family: 'Avenir','Arial Black','Arial',sans-serif;
  font-weight:bold;
  font-size: 15px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: -35px;
  width: 35px;
  height: 1em;
  line-height: 1;
  text-align: center;
}
/*タブ*/
#facility-contract .tab-group {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    zoom: 1;
}
#facility-contract .tab-group>li {
    border: 1px solid #428bca;
    border-radius: 4px;
    position: relative;
    float: left;
}
#facility-contract .tab-group>li>a.active,
#facility-contract .tab-group>li>a.active:hover,
#facility-contract .tab-group>li>a.active:focus {
    background-color: #428bca;
    color: #fff !important;
}
#facility-contract .tab-group>li>a {
    border-radius: 0;
    padding: .5em 1em;
    text-decoration: none;
}
#facility-contract .tab-group>li>a:hover {
    border-radius: 4px;
}
#facility-contract .tab-group li+li {
    margin-left: -1px;
}
#facility-contract .tab-group>li:not(:first-child):not(:last-child),
#facility-contract .tab-group>li:not(:first-child):not(:last-child)>a:hover {
    border-radius: 0;
}
#facility-contract .tab-group>li:first-child,
#facility-contract .tab-group>li:first-child>a:hover {
    margin-left: 0;
}
#facility-contract .tab-group>li:first-child:not(:last-child),
#facility-contract .tab-group>li:first-child:not(:last-child)>a:hover {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
#facility-contract .tab-group>li:last-child:not(:first-child),
#facility-contract .tab-group>li:last-child:not(:first-child)>a:hover {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
/*======================================================================
    アクセスカウンター
========================================================================*/
#access_counter {
	color: #3F3F3F;
	padding: 0px;
    margin: 0px;
}
.access_counter {
	color: #3F3F3F;
	padding: 15px;
}
#access_counter h3 {
	line-height: 1.0;
	font-size: 14px;
	padding: 15px;
    margin-top: 0px;
	color: #000000;
	background: #f0ece4; /*背景色*/
}
#access_counter div {
    display:flex;
    justify-content:flex-start;
    border-bottom: 1px dashed #c7c7c7;
}
#access_counter dt,
#access_counter dd{
    padding: 3px 0px;
}
#access_counter dt {
    flex-basis: 9em;
    font-size: 90%
}
#access_counter dd {
    margin-left: auto; /*要素を右寄せ*/
    padding-right: 1em;
    font-size: 85%
}
#access_counter div dt::before{
    padding-right: 5px;
}
#access_counter img {
    width:0 ;
    height: 0 ;
    padding-right: 5px;
}
.breadcrumb > li + li:before {
    content: "\f105";
    font-family: FontAwesome;
}
section.l-sidebar__counter div.p-3 {
    padding: 0 !important;
}

/*======================================================================
    お支払い手続き完了画面
========================================================================*/
body#page-blocks-payment-payment_notice section#region-main {
    background-color: #fff !important;
    margin: 1em !important;
    padding: 1em !important;
}
body#page-blocks-payment-payment_notice section#region-main div[role*="main"] p {
    color: #faa137;
    border-bottom: solid 3px #faa137;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.45;
    margin-bottom: 1em;
}
body#page-blocks-payment-payment_notice section#region-main div[role*="main"] div.singlebutton {
    margin-top: 1.5em;
}

/*======================================================================
    コース管理画面
========================================================================*/
body#page-course-management div[class*="modal-dialog"] div#fgroup_id_buttonar span[data-fieldtype="submit"] input[class*="btn-primary"] {
    color: #fff;
    background-color: #0b5496;
    border-color: #0b5496;
    padding: 0.5em 1em;
    margin-right: 1em;
}

/*======================================================================
    パスワードリクエスト
    body id="page-login-forgot_password"
========================================================================*/
body#page-login-forgot_password section#region-main {
    margin: 0 1em 1em 1em;
    background-color: #FFF;
    border-radius: 5px;
    padding: 1em !important;
}
body#page-login-forgot_password section#region-main div.generalbox {
    padding: 1rem;
}
body#page-login-forgot_password section#region-main .generalbox ol {
    margin: 1rem;
    list-style: decimal !important;
}
body#page-login-forgot_password section#region-main .generalbox li {
    list-style: decimal;
    margin: .5rem 1rem;
    color: #b22222;
}
body#page-login-forgot_password section#region-main .generalbox li span {
    color: #000;
}
body#page-login-forgot_password section#region-main .generalbox em {
    color: #b22222;
}
body#page-login-forgot_password section#region-main .generalbox a {
    color: #00A7C3 !important;
}
body#page-login-forgot_password section#region-main div#fitem_id_email .d-inline {
    width: 100%;
    text-align: right;
}
body#page-login-forgot_password section#region-main input.btn-primary {
    color: #fff;
    background-color: #0c5ba1;
    border-color: #0b5496;
    padding: 0.5em 1em;
    margin-right: 1em;
}
@media (max-width: 768px) {
    body#page-login-forgot_password section#region-main {
        padding: .5em !important;
    }
    body#page-login-forgot_password section#region-main div.generalbox {
        padding: .5rem;
    }
    body#page-login-forgot_password section#region-main .generalbox ol {
        margin: .5rem 0 .5rem .5rem;
    }
    body#page-login-forgot_password section#region-main .generalbox li {
        margin: 0;
        margin-left: 1rem;
    }
    body#page-login-forgot_password section#region-main div#fitem_id_email .d-inline {
        text-align: left;
    }
}

/*======================================================================
    モバイル対応
    スマホ　　：480px以下 または 560px以下
    タブレット：768px以下 または は960px以下
    Desktop First
    ＠media screen and (max-width: 1199px) ：スクリーンサイズが1199px以下の場合に適用
    ＠media screen and (max-width: 767px) ：スクリーンサイズが767px以下の場合に適用
========================================================================*/
@media (max-width: 768px) {
    .l-header__nav-list {
        display: none !important;
    }
    p[class*="p-card__item-title u-pc--hide"] {
        display: block !important;
    }
    .p-card__item-title {
        padding: 0 !important;
        border-bottom: none;
        overflow: hidden;
    }
    div#page-navbar * {
        display: inline !important;
    }
}

/* 共通ヘッダー用 */
body[class*="path-blocks-facility"] table.header_page {
    height: 135px;
    width: 100%;
    background:
        url(/theme/icrweb/pix/facility/mark.gif) no-repeat 10px 0,
        url(/theme/icrweb/pix/facility/header_back.gif) repeat-x;
    margin-bottom: 20px;
    background-color: #fff;
}
body[class*="path-blocks-facility"] table.header_page tr:first-child {
    height: 95px;
}
body[class*="path-blocks-facility"] table.header_page tr:last-child {
    height: 40px;
}
/*ページ名*/
body[class*="path-blocks-facility"] table.header_page td.header_page_title {
    font-size: 25px;
    padding-top: 20px;
    padding-left: 135px;
}
/*ログインページ*/
body[class*="path-blocks-facility"] div.login p {
    margin: 1em 0;
    font-size: 16px;
}
body[class*="path-blocks-facility"] .facility_login_btn {
    background: -webkit-gradient(linear, left top, left bottom, from(#0099CC), to(#006699));
    border: 1px solid #DDD;
    color: #FFF;
    padding: 10px 0;
    width: 100%;
    height: 50px;
    font-size: 1.2em;
    letter-spacing: 0.05em;
    text-align: center;
    text-transform: uppercase;
    transition: background 0.3s ease-in-out;
}
body[class*="path-blocks-facility"] section + div[class*="fdescription required"] {
    max-width: 100%;
    width: 90%;
    min-width: 80%;
    margin: 0 auto;
    margin-bottom: 30px;
}
/*アプリ紹介*/
/*ICRwebのアプリができました！*/
#ICRweb-app {
    color: #3F3F3F;
    margin-bottom: 5px;
}
#ICRweb-app .app_text_box {
    line-height: 2.0;
    text-align: center;
    border-bottom: 1px dashed #a1a1a1;
    margin-bottom: 20px;
    padding: 15px;
}
#ICRweb-app .app_text_box_2 {
    margin-top: 20px;
    width: 80%;
    margin: 0 auto;
    padding: 10px;
}
#ICRweb-app .app_tt_01 {
    line-height: 1.9;
    font-size: 24px;
    font-weight: bold;
}
#ICRweb-app h4 {
    font-size: 22px;
    font-weight: bold;
    padding: 0.5em; /*文字周りの余白*/
    color: #494949; /*文字色*/
    background: #fffaf4; /*背景色*/
    border-left: solid 5px #ffaf58; /*左線（実線 太さ 色）*/
}
#ICRweb-app .font_01 {
    line-height: 2.0;
    font-size: 25px;
    color: #faa137;
    font-weight: bold;
}
#ICRweb-app .style_01 {
    border: solid 1px #999999; /*左線（実線 太さ 色）*/ 
}
#ICRweb-app .bar1 {
    padding: 15px 0 5px 5px;
    margin-bottom: 10px;
    border-bottom: solid 3px #faa137;
}
#ICRweb-app img{
    margin: 20px;
}
/*app_2*/
#ICRweb-app .app_box {
    padding: 20px 0;
}
#ICRweb-app .app_boxInner {
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15 0px;
}
#ICRweb-app h5 {
    line-height: 2.0;
    font-size: 25px;
    color: #faa137;
    font-weight: bold;
}
#ICRweb-app .app_text {
    width: 60%;
    padding: 20px;
}
#ICRweb-app .app_pict {
    width: 40%;
    padding: 20px;
}
#ICRweb-app .app_pict img {
    width: 60%;
    height: auto;
}
#ICRweb-app .app_box:nth-child(even) {
    background-color: #e6e6e6;
}
#ICRweb-app .app_box:nth-child(even) .app_boxInner {
    flex-direction: row-reverse;
}
#ICRweb-app .app_box:nth-child(even) h5, #ICRweb-app .app_box:nth-child(even) .app_text {
    text-align: right;
}
@media screen and (max-width: 767px) {
    #ICRweb-app body {
        width: 100%;
    }
    #ICRweb-app .app_box {
        padding: 20px;
    }
    #ICRweb-app .app_boxInner {
        width: 100%;
        flex-direction: column-reverse;
    }
    #ICRweb-app .app_text {
        width: 100%;
        padding: 0;
        text-align: center;
    }
    #ICRweb-app .app_pict {
        min-height: 0%; /* ie11用 */
        width: 100%;
        padding: 0;
        margin-bottom: 20px;
        text-align: center;
    }
    #ICRweb-app .app_pict img {
        width: 70%;
        height: auto;
    }
    #ICRweb-app .app_box:nth-child(even) .app_boxInner {
        flex-direction: column-reverse;
    }
    #ICRweb-app .app_box:nth-child(even) h5, #ICRweb-app .app_box:nth-child(even) .app_text {
        text-align: center;
    }
}
#ICRweb-app h3 {
    padding: 15px 0 5px 5px;
    margin-bottom: 10px;
    border-bottom: solid 3px #faa137;
        color:#faa137;
        font-size: 20px;
}

/*アンケート回答一覧ページ用CSS*/
body#page-blocks-statistics-feedback_linklist section#region-main {
    background-color: #fff;
    margin: 1em;
    padding: 1em !important;
    border-radius: 5px;
}

body#page-blocks-statistics-feedback_linklist details {
    margin-bottom: 1em;
}

body#page-blocks-statistics-feedback_linklist details summary {
    background-color: #ddd;
    padding: 5px 10px;
    border-radius: 5px;
}

body#page-blocks-statistics-feedback_linklist details li {
    margin: 5px 0 5px 1.5em;
}

body#page-blocks-statistics-feedback_linklist section#region-main {
    margin-top: 0 !important;
}

body#page-blocks-statistics-feedback_linklist section#region-main h2 {
    color: #faa137;
    border-bottom: solid 3px #faa137;
    margin-bottom: 1em;
}

body#page-blocks-statistics-feedback_linklist section#region-main div.linklist>div {
    display: none;
}

body#page-blocks-statistics-feedback_linklist section#region-main summary {
    display: block;
    cursor: default;
}

body#page-blocks-statistics-feedback_linklist section#region-main summary::-webkit-details-marker {
    display: block;
}

/* 疑似要素でアイコンを表示 */
body#page-blocks-statistics-feedback_linklist section#region-main summary::before {
    content: "＋ ";
}

/* オープン時 */
body#page-blocks-statistics-feedback_linklist section#region-main details[open] summary::before {
    content: "－ ";
    transition: .1s;
}

body#page-blocks-statistics-feedback_linklist section#region-main details a {
    color: dodgerblue !important;
    cursor: pointer;
}

body#page-blocks-statistics-feedback_linklist section#region-main details a:hover {
    color: dodgerblue !important;
    text-decoration: underline;
}

@media (min-width: 768px) {
    body#page-blocks-statistics-feedback_linklist section#region-main form .col-md-3 {
        flex: 0 0 10%;
        max-width: 10%;
    }
}

body#page-blocks-statistics-view section#region-main {
    background-color: #fff;
    margin: 1em;
    padding: 1em 1em 3em 1em !important;
    border-radius: 5px;
}
body#page-blocks-statistics-view section#region-main .statistics-ul-content > p {
    margin-top:2em;
    color:#ff9655;
    font-size: 20px !important;
}
body#page-blocks-statistics-view section#region-main .tab-container .detail_table1,
body#page-blocks-statistics-view section#region-main .tab-container .detail_table2,
body#page-blocks-statistics-view section#region-main .tab-container .detail_table3 {
    background-color: white;
}
body#page-blocks-statistics-view section#region-main .google-visualization-table {
    border-top: 1px solid #a9a9a9;
    border-left: 1px solid #a9a9a9;
    border-bottom: 1px solid #a9a9a9;
}
body#page-blocks-statistics-view section#region-main .google-visualization-table-div-page {
    border-right: 1px solid #a9a9a9;
}
body#page-blocks-statistics-view section#region-main .certificate_table {
    width: 1000px;
    border: 1px solid #a9a9a9;
}

/*
総合・章末テスト、総合・章末アンケートを受けた場合の、「戻る」ボタンを、「前回の・・・」ボタンの右に配置
*/
.quizattempt >div{
    float: left;
    vertical-align: top;
}

.quizattempt >div:first-child{
    margin-left: 40%
}
.quizattempt >div:last-child{
    margin-left: 20px;
}

.complete-feedback >div{
    float: left;
    vertical-align: top;
}

.complete-feedback >div:first-child{
    margin-left: 40%
}
.complete-feedback >div:last-child{
    margin-left: 20px;
}