@charset "utf-8";
/* CSS Document */

/*----------------------------*/

body {
	background: #e6f0f7;/**/
}


.head-inner .head_logo{
	          width: 30.25%;
	                margin-left: 1.37%;/*19.43*/
}
.head-inner .g_nav_wrap{
	        margin-left: 2.4%;
}
.head-inner .g_nav_wrap .bottom_menu{
	width: 91.68%;
        
	        margin-left: auto;
	letter-spacing: 0.05em;/**/
}

.page_tit_wrap.pattern01{
background: url('../images/policeacademy/title_img.webp');
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #fff;
	aspect-ratio: 1480 / 893;
}
.page_tit_wrap.pattern01 > div{
	        transform: translateY(6.6em);
}
.page_tit_wrap.pattern01 p{
color: #fff;
	font-size: 2.69em;
	padding: 1.56em 1.91em;
	position: relative;
	        letter-spacing: 0.2em;
	
}
.page_tit_wrap.pattern01 p::before{
content: "";
	position: absolute;
        width: calc(100% - 0.91em);
        height: calc(100% - 0.91em);
	background: rgba(0,91,176,.65);
	border-radius: 50%;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%); 
        z-index: -1;
	filter: blur(0.91em);
	 will-change: transform, filter;
	
}

:where(figure){
	margin-bottom: 0em !important;
}
:where(.wp-block-columns){
	margin-bottom: 0em !important;
	
}

section p{
	letter-spacing: 0.1em;
	color: #333;
	position: relative;
	
}
section p.txt{
	/*line-height: 2.12;
	text-align: justify;*/
	
}
section .midashi{
	/*padding-top: 3.13em;
	padding-left: 3.13em;
	padding-bottom: 0.81em;*/
	max-width: 68.75em;
        margin: 0 auto;
}
section .midashi > div{
	display: flex;
	align-items: baseline;
}
section .midashi h2{
	  font-family: "Zen Kaku Gothic New", sans-serif;
	color: #fff;
	font-size: 1.875em;
	line-height: 1.2;
        letter-spacing: 0.1em;	
	display: inline-block;
	position: relative;
	z-index: 0;
	padding-top: 1.66em; 
	padding-left: 1.66em;
	padding-bottom: 0.67em;
	        min-width: 9.76em;
}
section .midashi h2::before{
	background: url("../images/policeacademy/bg_h2.svg") no-repeat;
	content: "";
	position: absolute;
    height: 3.49em;
	bottom: 0;
	left: 0;
    z-index: -1;
	        width: calc(100% + 4.6em);
           background-position: left center;
	background-size: contain;

}
/**/section .midashi h2.bg_l{
	        min-width: 15.37em;
	
}
section .midashi h2.bg_m{
	        min-width: 13.67em;
	        
	
}
section .midashi h2.bg_s{
	        min-width: 12.3em;
	
}

section .midashi h2.bg_l::before{
	        width: 19.67em;
	
}
section .midashi h2.bg_m::before{
	        width: 18.33em;
}
section .midashi h2.bg_s::before{
	        width: 16.04em;
	
}


section .midashi p{
	font-size: 1.84em;
	line-height: 1.17;
	
}

.w-1100{
	max-width: 68.75em;
	margin: 0 auto;
}
.w-1000{
	max-width: 62.5em;
	margin: 0 auto;
}

.content_box_08{
	background: rgba(255,255,255,.8);
	border-radius: 1.43em;
	padding: 3.63em 4.69em 0;
}

.content_box_08 p{
	line-height: 1.88;
}
p.nowrap{
	white-space: nowrap;
}
/*----------------------------*/
section.wp-block-group {

        padding: 0px 1.56em;
}
section.wp-block-group .wp-block-group__inner-container{
	   /*     width: 100%;
        max-width: 1000px;
        margin: 0 auto;
        box-sizing: border-box;*/
}


/*----------------------------*/
section#catch {
/*background: url('../images/policeacademy/bg_catch_01.webp'),url('../images/policeacademy/bg_catch_02.webp'),url('../images/policeacademy/bg_catch_03.webp');
background-repeat: no-repeat;
	background-size: 100%;
	background-position: center top -8.27em,center top 4.73em, center bottom;
	overflow: hidden;
	background-color: #fff;
	aspect-ratio: 1480 / 1097;*/
	position: relative;
	
}
section#catch::before{
			content: '';
        width: 100%;
        height: auto;
        background: url('../images/policeacademy/bg_catch_01.webp'),url('../images/policeacademy/bg_catch_02.webp'),url('../images/policeacademy/bg_catch_03.webp');
       aspect-ratio: 1480 / 1097;
        position: absolute;
        bottom: 0px;
        left: 0px;
        z-index: -2;
        background-position: center top -8.27em, center top 4.73em, center bottom;
        background-size: 100%;
        background-repeat: no-repeat;
	
	background-color: #fff;
}



section#catch .catch_b{
	font-size: 2.88em;
	letter-spacing: 0.075em;
	line-height: 1.2;
	font-weight: 500;
}
section#catch .catch_b br{
	display: none;
}
section#catch .txt{
	font-size: 1.13em;
	line-height: 2.06;
	font-weight: 500;
	letter-spacing: 0;
}
/*----------------------------*/
section#nav01,section#nav02,section#nav03,section#nav04,section#nav05{
	/*background-color: #e6f0f7;*/
}
/*----------------------------*/
section#nav01 .sec_title > div{
	position: relative;
}
section#nav01 .sec_title .txt_eng{
	        font-size: 5.25em;
	color: #fff;
	        line-height: 1.17;
        padding-top: 1.59em;
        padding-bottom: 0.21em;
	background-image: url("../images/policeacademy/bg_schoollife.svg");
	        width: 100vw;
        margin: 0 calc(50% - 100vw / 2);/**/
	               background-size: calc(100vw - 1.25em);
	        background-position: left -2.68em top;
        background-repeat: no-repeat;
	    /*    margin-left: -0.3em;
        margin-right: -0.3em;*/
	padding-left: calc(50vw - 7.16em);
	        transform: translateY(-2.91em);
}
section#nav01 .sec_title .catch_b{
	font-size: 3.13em;
	        margin-left: calc(50vw - 12.64em);
}

section#nav01 .sec_title figure{
	position: absolute;
	        right: -1.56em;
	                bottom: 4.13em;
	        width: 49.11em;
	
}
.schedule_block .ac_tab{
  border:2px solid var(--theme-color);
	        border-radius: 0.67em;
	        position: relative;
        padding: 0.23em 1.67em;
        cursor: pointer;
        background: #fff;
        color: #026a9e;
        box-sizing: border-box;
        z-index: 1;
	display: flex;align-items: center;
} 
.schedule_block .ac_tab img{
        width: 4.29em;
        height: 4.29em;
}

 
.schedule_block .ac_tab p{
 color: var(--theme-color);
	font-size: 1.69em;
	  font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 500;
	margin-left: 0.74em;
}
.schedule_block .ac_tab .icon {
  position: absolute;
  right: 1.7em;/*34*/
  top: 50%;
  width: 2.5em;/*40*/
  height: 2.5em;
  transform: translateY(-50%);
  background-color: var(--theme-color);
  transition: transform 0.3s ease;
	        border-radius: 50%;
}
.schedule_block .ac_tab .icon::before{
  position: absolute;
  content: '';
  right: 25px;
  width: 1.56em;
  height: 2px;
  background-color:#fff;
  transform: rotate(90deg);
  transition: all .3s ease-in-out;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(90deg);
}

.schedule_block .ac_tab .icon::after{
  position: absolute;
  content: '';
  width: 1.56em;
  height: 2px;
  background-color:#fff;
  transition: all .3s ease-in-out;
	left: 50%;
  top: 50%;
        transform: translate(-50%, -50%);
}

.schedule_block .ac_tab.open .icon::before {
  transform: translate(-50%, -50%) rotate(180deg);
}
.schedule_block .ac_tab.open .icon::after {
}

.schedule_block .ac_content{
position: relative;
	        z-index: 0;
	display: none;
	margin-bottom: 2.5em;

}
.schedule_block .ac_content::before{
content: "";
	position: absolute;
        width: 0;
        height: 100%;
        border-left: 4px dotted var(--theme-color);
	        left: 5.31em;
	        z-index: -1;

}
.schedule_block .ac_content .schedule_content{
display: flex;
	        align-items: flex-start;
	        gap: 3.75em;
	margin-top:3.75em;

}

.schedule_block .ac_content .schedule_content:first-of-type {
	margin-top: 3.13em;
}
.schedule_block .ac_content .schedule_content:has(figure) {
	margin-top: 5.13em;
}

.schedule_block .ac_content .schedule_content:first-of-type:has(figure) {
	margin-top: 5.99em;
}

.schedule_block .ac_content .schedule_content .time{
        color: #fff;
        font-family: "Josefin Sans", sans-serif;
        background-color: var(--theme-color);
        flex-shrink: 0;
        font-size: 2.44em;
        border-radius: 0.71em;
        line-height: 1.3;
        width: 4.36em;
        display: flex;
        justify-content: center;
        position: relative;
        padding-top: 0.13em;
}
.schedule_block .ac_content .schedule_content .bubbleline {
background-color: #fff;
	border-radius: 0.44em;
	padding: 1.68em 2.58em 1.88em 2.67em;
	position: relative;
	box-sizing: border-box;
	width: 29.38em;
}
.schedule_block .ac_content .schedule_content .bubbleline::before {
        content: "";
        position: absolute;
        left: -2.25em;
	        top: 1.13em;
        width: 0;
        height: 0;
        border-bottom: 0.91em solid transparent;
        border-top: 0.91em solid transparent;
        border-right: 2.69em solid #fff;
}

.schedule_block .ac_content .schedule_content .bubbleline:has(figure) {
	        display: flex;
        /*align-items: flex-end;*/
	        width: 50.93em;
	justify-content: space-between;
	padding-right: 21.38em;
	min-height: 10em;
}
.schedule_block .ac_content .schedule_content .work{
	color: var(--theme-color);
	font-weight: 500;
	font-size: 1.375em;
	display: flex;
	align-items: center;
	gap:0.5em;
	
}
.schedule_block .ac_content .schedule_content .work::before{
	font-weight: 500;
	content: "";
  background-color: var(--theme-color);
display: inline-block;
	width: 0.68em;
	
	height: 0.68em;
	border-radius: 50%;
}
.schedule_block .ac_content .schedule_content .desc{
	            margin-top: 0.56em;
        line-height: 1.88;
}

.schedule_block .ac_content .schedule_content .bubbleline:has(figure) .desc{
        letter-spacing: 0.05em;
}
.schedule_block .ac_content .schedule_content figure{
	      position: absolute;
    right: 2.58em;
    top: -2.11em;
	width: 17.5em;
}

.schedule_block .ac_content .schedule_content figcaption{
position: absolute;
	        top: -1.05em;
	right: -2.58em;
	        font-size: 0.94em;
        font-weight: 500;
	
	padding: 0.28em 1em;
	
	color: var(--theme-color);
	border: 2px solid var(--theme-color);
	        border-radius: 1.16em;
	        background-color: #fff;
	        min-width: 13.93em;
        box-sizing: border-box;
	        text-align: center;
}

.schedule_block .ac_content .schedule_content figcaption::before{
  content: "";
  position: absolute;
bottom: -0.87em;
        border-style: solid;
        border-width: 0.87em 0.5em 0 0.5em ;
  border-color:  var(--theme-color) transparent transparent transparent;
left: 50%;
transform: translateX(-50%);
}
.schedule_block .ac_content .schedule_content figcaption::after{
  content: "";
  position: absolute;
        bottom: -0.6em;
        border-style: solid;
        border-width: 0.65em 0.33em 0 0.33em;
  border-color: #fff transparent transparent transparent;
left: 50%;
transform: translateX(-50%);


}
/*.schedule_block:last-of-type .ac_content .schedule_content:last-of-type{
background: #e6f0f7;
}*/
.schedule_block:last-of-type .ac_content::before{
	        height: calc(100% - 8em);
}
/*----------------------------*/
.schedule_scroll{
	
}

.schedule_year {
background-color: #fff;
        width: 100vw;
        margin: 0 calc(50% - 100vw / 2);
	        box-sizing: border-box;
	        padding: 2.81em 0 4.69em;
	position: relative;
}
.schedule_year .js-scroll > div{
	display: flex;
	        overflow-x: scroll;
	        gap: 3.75em;
        margin: 0 8.75em;
	        padding-bottom: 2.38em;
	/*margin-left:  8.75em;*/
}
.schedule_year .scroll > div{
}
.schedule_year .scroll > div::-webkit-scrollbar {
  width: 1em;
}

.schedule_year .scroll > div::-webkit-scrollbar-track {
  background-color: #e1e1e1;
}

.schedule_year .scroll > div::-webkit-scrollbar-thumb {
  background-color: #969696;
  border-radius: 8px;
}

.schedule_year::before{
	/**/content: "";
	position: sticky;
        width: calc(100% - 17.5em);
	height: 0;
	border-top: 4px dotted #00b0ff;

        display: block;
        margin: 0 auto;
	transform: translateY(4.75em);
}
.schedule_year_content{
	
}

.schedule_year_content:last-of-type{
	/*margin-right: 8.75em;*/
}
.schedule_year_content > div{
}
.schedule_year_content .month{
	font-size: 2.56em;
	display: block;
	position: relative;
}
.schedule_year_content .month::before{

}

.schedule_year_content_box_month{
	
}
.schedule_year_content_box_month > div{
	display: flex;
	        gap: 3.75em;
}
.schedule_year_content_box{
	
}
.schedule_year_content_box > div{
	display: flex;
	gap: 2.38em;
	margin-top: 4em;
	        min-width: 39.13em;
}

.schedule_year_content_box > div figure{
/*width: 100%;
	flex-shrink: 0;*/
}
.schedule_year_content_box > div .schedule_year_title{
font-size: 1.56em;
        border-bottom: 1px solid currentColor;
        padding-bottom: 0.4em;
	width: 12.4em;
	letter-spacing: 0;
}
.schedule_year_content_box > div .schedule_year_title br{
display: none;
}
.schedule_year_content_box > div .txt{
margin-top: 10px;
	width: 18.75em;
	line-height: 2;
	        text-align: justify;
}
.schedule_year_content_box > div .txt_wide{
	width: 23.13em;
}


/* 追加する CSS（.schedule_year の既存ルールの下に置いてください） */
.schedule_year .js-scroll > div {
  /* 既にある設定に上書きされないよう必要なら !important を付けてください */
  cursor: grab;
  -webkit-overflow-scrolling: touch;
  /* 横スクロールは既に設定されていますが、安全のため明示 */
  overflow-x: auto;
  overflow-y: hidden;
}

/* ドラッグ中カーソル */
.schedule_year .js-scroll > div:active {
  cursor: grabbing;
}

/* ドラッグ中のテキスト選択を防止 */
.schedule_year .js-scroll > div,
.schedule_year .js-scroll > div * {
  user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}

/* 画像のブラウザデフォルトドラッグを無効化（必要に応じてセレクタを狭める） */
.schedule_year .js-scroll > div img {
  -webkit-user-drag: none;
  user-drag: none;
  pointer-events: auto; /* 画像クリック等の挙動を維持したければそのまま */
}
/*----------------------------*/
#nav02 table tr th{
	    width: 24.21%;
	    font-size: 1.25em;
        padding: 1.225em 2em;
	    font-weight: 500;
}
#nav02 table tr td{

        padding:0 1.88em;
}


/*----------------------------*/
.message_grad_box{
	
}
.message_grad_box > div{
	display: flex;
	background-color: #fff;
	border-radius: 0.63em;
	padding: 2.08em 2.88em 2.88em 2.75em;
	column-gap: 1.69em;
}

.message_grad_box > div figure{
	flex-shrink: 0;
	        width: 28.62em;
}

.message_grad_box > div .catch{
    font-size: 1.25em;
    font-weight: 700;
    line-height: 1.6;
}
.message_grad_box > div .message_dep{
font-weight: 700;
	padding-left: 0.63em;
	    border-bottom: 1px solid #0094d6;
	padding-bottom: 1em;
}
.message_grad_box > div .message_name{
    font-size: 1.25em;
    font-weight: 700;
	color: #000;
	text-align: right;
	    border-bottom: 1px solid #0094d6;
    padding-bottom: 0.65em;
	padding-right: 1.25em;
	letter-spacing: 0;
}
.message_grad_box > div .message_name mark{
	background: unset;
    font-size: 1.36em;

}
.message_grad_box > div .txt{
line-height: 1.88;

}

.message_teacher_box {


}
.message_teacher_box > div figure{
    position: relative;
    z-index: 2;
	        width: 28.62em;

}

.message_teacher_box > div .message_teacher_info > div{
  background: linear-gradient(
  to top,
  rgba(243, 255, 63, 1) 6.0585%,  
  rgba(89, 192, 235, 1) 41.6711%,  
  rgba(20, 153, 201, 1) 72.279%   );
		
  mask-image: linear-gradient(
  to top,
  rgba(0,0,0,0) 0%,
  rgba(0,0,0,1) 41.6711%,
  rgba(0,0,0,1) 100% );
	
	padding: 2.72em 6.38em 3.69em 21em;
	margin-left: 2.97em;
	    position: relative;
    z-index: 1;
}
.message_teacher_box > div .message_teacher_info .message_dep{
	font-weight: 700;
        line-height: 1.88em;
	color: #fff;
	        margin-left: 9.5em;
}
.message_teacher_box > div .message_teacher_info .message_name{
	
	color: #fff;
	    font-size: 1.25em;
    font-weight: 700;
	text-align: right;
	    border-bottom: 1px solid currentcolor;
    padding-bottom: 0.65em;
	padding-right:  3.9em;
	letter-spacing: 0;
}
.message_teacher_box > div .message_teacher_info .message_name mark{
	background: unset;
    font-size: 1.36em;
	color: unset;

}
.message_teacher_box > div .txt{
	background-color: #fff;
	padding: 13.5em 6em 3.63em;
	line-height: 2.13em;

        position: relative;
        z-index: 0;
}
/*----------------------------*/

.qa {
  counter-reset: qa-counter;
	        max-width: 62.5em;
        margin: 0 auto;
}

/* 質問 */
.qa dt {
  position: relative;
  font-size: 1.25em;/*20*/
  padding: 1.05em 5.90em 1.05em 7.80em;/*21px 118px 21px 156px*/
  cursor: pointer;
  background: #fff;
  border: 1px solid #026a9e;
  border-radius: 1.4em;/*28*/
  min-height: 5em;
  font-weight: 500;
	
  color: #026a9e;
  line-height: 1.65;
  box-sizing: border-box;
  display: flex;
  align-items: center;
	z-index: 1;
}
.qa dt:not(:first-of-type){
margin-top: 1.15em;
}
.qa dt .faq_txt {
position: relative;
	display: flex;
        align-items: center;
}
/* Q部分 */
.qa dt .faq_txt::before {
  content: "Q";
  position: absolute;
  left: -3.30em;/*109*/
	font-family: "Josefin Sans", sans-serif;
	color: #00b7d5;
	font-size: 1.65em;/*33*/
	font-weight: 400;
}

/* 01.部分 */
.qa dt .faq_txt::after {
  content: counter(qa-counter, decimal-leading-zero) ". ";
  counter-increment: qa-counter;
  position: absolute;
  left: -2.27em;/*75*/
	font-family: "Josefin Sans", sans-serif;
	font-size: 1.65em;/*33*/
  color: #096596;
	        letter-spacing: 0.1em;
	font-weight: 400;
}

/* アイコン */
.qa dt .icon {
  position: absolute;
  right: 1.7em;/*34*/
  top: 50%;
  width: 2em;/*40*/
  height: 2em;
  transform: translateY(-50%);
  background-color: #00b7d5;
  transition: transform 0.3s ease;
	        border-radius: 50%;
}
.qa dt .icon::before{
  position: absolute;
  content: '';
  right: 25px;
  width: 1.25em;
  height: 2px;
  background-color:#fff;
  transform: rotate(90deg);
  transition: all .3s ease-in-out;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(90deg);
}

.qa dt .icon::after{
  position: absolute;
  content: '';
  width: 1.25em;
  height: 2px;
  background-color:#fff;
  transition: all .3s ease-in-out;
	left: 50%;
  top: 50%;
        transform: translate(-50%, -50%);
}

.qa dt.open .icon::before {
  transform: translate(-50%, -50%) rotate(180deg);
}
.qa dt.open .icon::after {
}
/* 答え */
.qa dd {
  padding: 3.56em 2.75em 3.44em 10.13em;
  display: none;
  line-height: 2.18;
  position: relative;
	text-align: justify;
	background-color: rgba(255,255,255,.8);
	color: #333333;
	border-radius: 0 0 1.75em 1.75em;
	letter-spacing: 0.1em;
	        transform: translateY(-1.25em);
	        
	margin-bottom: -0.31em;
}
section.wp-block-group:nth-of-type(even) .qa dd{
	/*background-color: #fff;*/
	
}
.qa dd .faq_txt {
position: relative;
}

/* A部分 */
.qa dd .faq_txt::before {
  content: "A";
  position: absolute;

  left:  -3.19em;;/*119*/
	font-family: "Josefin Sans", sans-serif;
	color: #00b7d5;
	font-size: 2.25em;/*36*/
	        top: -0.42em;/*15*/
	font-weight: 400;
}

/* 01. 部分 */
.qa dd .faq_txt::after {
  content: counter(qa-counter, decimal-leading-zero) ". ";
  position: absolute;
  left:  -2.33em;;/*84*/
	font-family: "Josefin Sans", sans-serif;
	font-size: 2.25em;/*36*/
  color: #096596;
	        letter-spacing: 0.1em;
	font-weight: 400;
	        top: -0.42em;/*15*/
	
}
/*すべて開くボタン*/
.wp-block-buttons>.wp-block-button.toggleall{
        max-width: 68.75em;
        margin: 0 auto;
	
}
.toggleall button {
	color: #026a9e;
    background-color: #fff;
    border-radius: 9999px;
    box-shadow: none;
    text-decoration: none;
    padding: 0.75em 1.4em;
    font-size: 1em;
	    border: 1px solid #026a9e;
	font-weight: 500;
	        display: flex;
        align-items: center;
	margin-top: -5.9em;
	        gap: 0.5em;
	        position: relative;
        z-index: 0;
	transition: all 0.5s;
	        right: -26.62em;
	
}

.toggleall button::after{
content: '';
        background: url(../images/common/anchor_ico_ora.webp) no-repeat;
        background-size: cover;
                width: 1.1em;
        height: auto;
        aspect-ratio: 1 / 1;
	display: block;
	
}
.toggleall button:hover {
	opacity: 0.6;
}

/*----------------------------*/
#nav05 .wp-block-columns{
	column-gap: 2.5em;
}


#nav05 .wp-block-columns .school_info{
	background: #fff;
	padding: 1.56em 2.5em 2.19em;
}
#nav05 .wp-block-columns .school_info p{
	color:#000;
	font-size: 1.19em;
	border-bottom: 1px solid #026a9e;
	font-weight: 500;
	padding-bottom: 0.51em;
}
#nav05 .wp-block-columns .school_info table{
	line-height: 1.81;
	letter-spacing: 0.1em;
}
#nav05 .wp-block-columns .school_info table tr th,.school_info table tr td{
	border:none !important;
}
#nav05 .wp-block-columns .school_info table tr th{
	font-weight: 500;
}

#nav05 .wp-block-columns .school_info table a{
	pointer-events: none;
}
#nav05 h3 {
font-size: 1.69em;
        text-align: center;
        display: block;
        letter-spacing: 0.1em;
        border-bottom: 0.37em solid;
        border-image: linear-gradient(to right, rgba(243, 255, 63, 1) 0%, rgba(116, 205, 232, 1) 22.59%, rgba(22, 169, 222, 1) 33.65%, rgba(22, 169, 222, 1) 66.35%, rgba(116, 205, 232, 1) 77.41%, rgba(243, 255, 63, 1) 100%);
        mask-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 22.59%, rgba(0, 0, 0, 1) 77.41%, rgba(0, 0, 0, 0) 100%);
        border-image-slice: 1;
        padding-bottom: 0.56em;
}




.sisetsu_title{
	font-size: 1.25em;
    border-bottom: 1px solid #0094d6;
    font-weight: 500;
    padding-bottom: 0.5em;
    margin-top: 0.75em;
	text-align: center;
}
.sisetsu_desc{
	        line-height: 2.13em;
	text-align: justify;
	margin-top: 1.56em;
}

.slick{
        width: 100vw;
        margin: 0 calc(50% - 100vw / 2);
	position: relative;
}

.slick::before{
content: "";
	position: absolute;
	width: 100%;
	height: 27.34em;
	
background-image: linear-gradient(to top, rgba(243, 255, 63, 1) 0%, rgba(116, 205, 232, 1) 45.1779%, rgba(22, 169, 222, 1) 67.3042%);
        mask-image: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 45.1779%, rgba(0, 0, 0, 1) 67.3042%);/**/
	        opacity: .4;
	top: 13.19em;
}

.slick .slick-slide { 
	margin: 0 5.63em; 
	width: 37.5em;}
.slick  .slick-dotted.slick-slider{
	margin-bottom: 0;
}
.slick .dots-wrap {
    display: flex;
    justify-content: center;
	margin-top: 4.69em;
}

.slick .dots-wrap li {
    width: 0.88em;
    height: 0.88em;
    margin: 0 0.44em;
    background: #fff;
    border-radius: 50%;
    cursor: pointer;
}

.slick .dots-wrap li:hover,
.slick .dots-wrap li.slick-active {
    background: #096596;
}
.slick .dots-wrap li button {
    display: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    padding: 0;
    border: none;
    background-color: transparent;
}

/*.slick .slick-prev,.slick .slick-next{
	font-size: unset;
	width: 4.06em;
	height: 4.06em;
	background-image: url("../images/policeacademy/slick_arrow.svg");
		z-index: 1;
	
}
.slick .slick-prev::before,.slick .slick-next::before{
	
	content: none;
	
}
.slick .slick-prev{
	left: calc(50%);
}
.slick .slick-next{
	right: calc(50%);

}
.slick .slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus{
	opacity: 0.6;
	color: unset;
    outline: unset;
    background: unset;
}*/
.prev-arrow,
.next-arrow {
    display: block;
	width: 4.06em;
	height: 4.06em;
    transition: all .3s ease;
    cursor: pointer;
	background-image: url("../images/policeacademy/slick_arrow.svg");
	        position: absolute;
        top: 11.15em;
	z-index: 1;
}
.prev-arrow{
	transform: rotate(-90deg);
	left: calc(50% - 26.31em);
}
.next-arrow{
	transform: rotate(90deg);
	right: calc(50% - 26.31em);
	
}
/*----------------------------*/
#footer{
	        background: #006491;
}
.foot_inn .foot_flex01 .logo{
	width: 28.10%;
}
/*----------------------------*/
/* 色変更 */
html:is(.pageBlue) #header::before {
	content: '';
	background: #0071b4;
	height: 120%;
}

html:is(.pageYellow) #header::before {
	content: '';
	background: #F4E621;
	height: 120%;
}

html:is(.pageBlack) #header::before {
	content: '';
	background: #000;
	height: 120%;
}

html.pageBlue  body { --page-bg: #0071b4; --page-c: #fff;}
html.pageYellow body { --page-bg: #F4E621; --page-c: #000;}
html.pageBlack body { --page-bg: #000; --page-c: #fff; }

html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group,

html:is(.pageYellow, .pageBlack, .pageBlue) .page_tit_wrap.pattern01 {
  background-color: var(--page-bg) !important;
	background-image: unset !important;
}


html:is(.pageYellow) .page_tit_wrap.pattern01 p::before {
	background-color: #fff !important;
}



html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .toggleall button,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .ac_tab,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .ac_content,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .qa dt,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .qa dd,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .schedule_block .ac_content .schedule_content .bubbleline,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .schedule_block .ac_content .schedule_content figcaption,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .schedule_year,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .message_grad_box > div,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .message_teacher_box > div .txt,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group#nav02 table tr th,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group#nav02 table tr td,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group#nav05 .wp-block-columns .school_info
{
   background-color: var(--page-bg) !important;
}

html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .qa dt .faq_txt::after, 
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .qa dd .faq_txt::after
{
  color: var(--page-c) !important;
}







html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .qa dd,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .schedule_block .ac_content .schedule_content .bubbleline,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .schedule_year,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .message_grad_box > div,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .message_teacher_box > div .txt,
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group#nav05 .wp-block-columns .school_info{
	border: 1px solid  var(--page-c) !important;
}

html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .schedule_block .ac_content .schedule_content .bubbleline::before{
	        border-right: 2.69em solid  var(--page-bg);
	        left: -2em;
}

html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .schedule_block .ac_content .schedule_content figcaption::before{
	       border-color: var(--page-c) transparent transparent transparent;
}
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .schedule_block .ac_content .schedule_content figcaption::after{
	       border-color: var(--page-bg) transparent transparent transparent;
}
html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .schedule_block .ac_content .schedule_content .bubbleline::after{
	        content: "";
        position: absolute;
        left: -2.25em;
        top: 1.13em;
        width: 0;
        height: 0;
        border-bottom: 0.91em solid transparent;
        border-top: 0.91em solid transparent;
        border-right: 2.69em solid  var(--page-c);
	        z-index: -1;
}

html:is(.pageBlue, .pageBlack) body section.wp-block-group .content_box_08 p{
	  color: var(--page-bg) !important;
}




html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .qa dt .icon 
{
  background-color: #f28e1e !important;
}/**/


html:is(.pageBlue, .pageYellow, .pageBlack) body section.wp-block-group .schedule_year::before
{
  border-color:var(--page-c) !important;
}/**/

