@charset "utf-8";

#content {}

/*---------------------------------------------------------------------------
  TITLE
---------------------------------------------------------------------------*/
#page_title {
	height: 100vh;
	max-height: 395px;
	position: relative;
	background:linear-gradient(rgba(40, 97, 137, 0.4),rgba(40, 97, 137, 0.4)), url(../image/world_map.jpg) no-repeat center;
	background-size: cover;
}
#page_title h2 {
	left: 0;
	right: 0;
	top: 65%;
	color:#FFF;
	margin: auto;
	display:block;
	font-size: 300%;
	position: absolute;
	text-align: center;
	transform: translateY(-35%);
}
#page_title h2.training_title {
	top: 55%;
}

#page_title .numbers {
	display: flex;
	margin: 0;
	width: 100%;
	justify-content: center;
	gap: 0 40px;
	position: absolute;
	bottom: 40px;
}
#page_title .numbers dl {
	display:flex;
	width: 350px;
	height: 60px;
	/*background: #FFF;*/
	position: relative;
	border-radius: 100px;
	align-items: center;
	padding: 0 22px 0 38px;
	transform-style: preserve-3d;
	justify-content: space-between;
}
#page_title .numbers dl::before {
	content: "";
	bottom:0;
	left: 0;
	width: 350px;
	height: 60px;
	background: #FFF;
	border-radius: 100px;
	position: absolute;
	z-index: -1;
}
#page_title .numbers dl::after {
	content: "";
	bottom:0;
	left: 35px;
	width: 75px;
	height: 75px;
	background: #FFF;
	border-radius: 50%;
	position: absolute;
	border: 2px solid #24A8D5;
	transform: translateZ(-1px);
	z-index: -2;
}

#page_title .numbers dl dt { text-align: center; }
#page_title .numbers dl dt b { font-size:150%; font-weight:700; }
#page_title .numbers dl dt small { font-size:120%; font-weight:700; }
#page_title .numbers dl dd {}
#page_title .numbers dl dd b { font-size:175%; font-weight: 700; line-height: 100%; color:#24A8D5; }
#page_title .numbers dl dd small { font-size:120%; font-weight:700; margin-left:5px; }

/*---------------------------------------------------------------------------
  PAN
---------------------------------------------------------------------------*/

.pan {
	clear:both;
	margin:0;
	padding: 0.5%;
	font-size: 80%;
	color: #666;
	text-align:right;
}
.pan a {color: #666; text-decoration:none;}
.pan a:hover {color: #333333;}


/*====================================================================================================

  SUBPAGE

====================================================================================================*/

#subpage {}

#subpage h3 { text-align:left; position:relative; }
#subpage h3::after {
	content: "";
	left: 0;
	bottom:-40px;
	width: 68px;
	height: 10px;
	position: absolute;
	background: url(../image/tit_bar.svg) no-repeat;
	background-size: contain;
}
#subpage h3 small {
	color: #286189;
	display: block;
	font-size: 125%;
	font-weight: 700;
}
#subpage h3 b {
	display: block;
	font-size: 215%;
	font-weight: 700;
	line-height: 135%;
	margin-top: 20px;
}
	#subpage h3 b span { font-size: 70%;}

#subpage .h4,
#subpage h4 {
	font-size: 140%;
	font-weight: 700;
	position: relative;
	padding-left: 15px;
}
#subpage .h4::before,
#subpage h4::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 7px;
	height: 32px;
	background: #F58342;
	transform: translateY(-50%);
}

.page h4{margin-bottom: 35px;}
.page .bg{background:#E9E9E9; padding-block:20px;}
.page .box_main{ padding-block: 100px; display: flex; justify-content:space-between; font-size: 112.5%;font-weight: 700; }
.page .box_main a {
	color: #286189;
	text-underline-offset: 10px;
	text-decoration-thickness: 1px;
}
.page .box_l { max-width:400px; width:100%;}
.page .box_r { max-width:740px; width:100%;}

.page .box_main ul.check li { font-size:112.5%; font-weight:700; position:relative; padding-left:40px; }
.page .box_main ul.check li+li { margin-top:30px; }
.page .box_main ul.check li::before {
	content: "";
	position: absolute;
	left: 0;
	width: 27px;
	height: 27px;
	background: url(../image/icon_check.svg) no-repeat;
	background-size: contain;
}

.page .box_main ul,.page .box_main ol { margin:30px 0; }
.page .box_main ol { padding: 0 0 0 20px; }
.page .box_main ul li+li,.page .box_main ol li+li { margin-top:30px; }
.page .box_main ul li {
	padding-left:36px;
	position:relative;
}
.page .box_main ul li::before {
	content: "";
	position: absolute;
	top: 6px;
	left: 0;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #286189;
}
.page .box_main ul li ul { margin-top:30px; }
.page .box_main ul li ul li { padding-left:20px; margin-bottom:30px; }
.page .box_main ul li ul li::before { top: 12px; width: 16px; height: 16px; background: #222; }
.page .box_main ul li ul li:last-child { padding-left:0; }
.page .box_main ul li ul li:last-child::before { display:none; }

.page .box_main table {}
.page .box_main table tr th {
	color:#FFF;
	font-size:125%;
	font-weight:700;
	text-align:left;
	padding: 25px 40px;
}
.page .box_main table tr th:nth-child(1) { background:#234D6C; }
.page .box_main table tr th:nth-child(2) { background:#286189; }
.page .box_main table tr th:nth-child(3) { background:#1E374B; }
.page .box_main table tr td { padding: 25px 33px 25px 40px; }
.page .box_main table tbody tr:nth-child(even) { background:#FFF; }




#subpage .default_template h3 { 
	text-align:center;
	position:relative;
	display: block;
	font-size: 215%;
	font-weight: 700;
	margin-top: 20px;
	margin-bottom: 40px;
}
#subpage .default_template h3::after {
	content: "";
	left: 0;
	right: 0;
	margin: auto;
	bottom:-40px;
	width: 68px;
	height: 10px;
	position: absolute;
	background: url(../image/tit_bar.svg) no-repeat;
	background-size: contain;
}


.page h4{margin-bottom: 35px;}


/*---------------------------------------------------------------------------
  WP PAGE NAVIGATION
---------------------------------------------------------------------------*/
.wp-pagenavi {
	width: 100%;
	display: flex;
	margin:0 auto;
	max-width: 1200px;
	padding-top: 150px;
	position: relative;
	align-items: center;
	justify-content: center;
}
.wp-pagenavi .pages { /*display:none;*/ }
.wp-pagenavi a, .wp-pagenavi span {
	width: 40px;
	height: 40px;
	color: #000;
	display: flex;
	margin: 0 10px;
	font-weight: 500;
	line-height: 100%;
	align-items: center;
	text-decoration: none;
	justify-content: center;
}

.wp-pagenavi a, .wp-pagenavi span {border: none;}
.wp-pagenavi .page { border:1px solid #1E374B; background:#FFF; color:#000; }
.wp-pagenavi .current { border:none; background:#1E374B; color:#FFF; }

.wp-pagenavi a:hover,
.wp-pagenavi a:hover { opacity:0.7; }

.wp-pagenavi .page:hover { border:none; background:#1E374B; color:#FFF; }


/*---------------------------------------------------------------------------
  SINGLE/POST NAVIGATION
---------------------------------------------------------------------------*/
.page_box { /* width: 100%; */ }
.page_box .post-navigation { max-width:100%; }
.page_box .post-navigation a { text-decoration:none; }
.page_box .post-navigation .nav-links {
	display: flex;
	margin:0 auto;
	max-width: 1200px;
	padding-top: 180px;
	position: relative;
	align-items: center;
	justify-content: center;
}
.page_box .nav-previous a,
.page_box .nav-next a {
	bottom: 0;
	color: #FFF;
	width: 330px;
	height: 80px;
	border: none;
	display: flex;
	font-size: 150%;
	font-weight: 700;
	border-radius: 0;
	/*line-height: 120%;*/
	position: absolute;
	align-items: center;
	text-decoration: none;
	justify-content: center;
}
.page_box .nav-previous a {
	left: 0;
	border-top-right-radius: 80px;
	background:#286189 url(../image/arrow_left1.svg) no-repeat 25%;
}
.page_box .nav-next a {
	right: 0;
	border-top-left-radius: 80px;
	background:#286189 url(../image/arrow_right4.svg) no-repeat 75%;
}
.page_box .nav-links a:hover { opacity:0.7; }


/*---------------------------------------------------------------------------
  COMMON SINGLE CSS
---------------------------------------------------------------------------*/
.title_box {}
.title_box ul {
	display:flex;
	flex-wrap:wrap;
	padding:0 0 30px 0;
	margin-top:0;
	align-items: center;
}
.title_box ul li { /*line-height:100%;*/padding: 0; }
.title_box ul li+li{margin-top: 0;}
.title_box ul li::before { content: none; }
.title_box ul li.date {
	/*font-size: 112.5%;
	font-weight: 700;*/
	text-align:center;
	margin-right:20px;
}
.title_box ul li.cate { width:110px; text-align:center; }
.title_box ul li.cate a {
	color: #FFF;
	display: block;
	font-size: 87.5%;
	font-weight: 700;
	text-align: center;
	padding-block: 5px;
	background: #286189;
	text-decoration: none;
}
.title_box ul li.cate a:hover { opacity:0.7; }
.title_box ul li.title { flex-basis:100%; margin-top:15px; font-size:137.5%; font-weight:700; color:#000; line-height: 1.6; }

.content_box { padding-block:60px; border-block:1px solid #000; }



/*====================================================================================================

  ERROR

====================================================================================================*/
#error { max-width:1000px; width:100%; margin:auto; padding-block:120px 170px; }
#error h4 { margin-bottom:20px; }
#error a {
	color: #286189;
	text-underline-offset: 7px;
	text-decoration-thickness: 1px;
}
#error a:hover { opacity:0.7; }
#error ul { padding:0 40px; }
#error ul li { margin-block:10px; }

/*====================================================================================================

  シェイクアウト訓練とは

====================================================================================================*/
#about {}
#about .box_l { max-width:400px; width:100%; }
#about .box_r { max-width:740px; width:100%; }
#about .come { }
#about .overview { padding-block: 100px 50px; }
#about .overview .wp-block-image { max-width:510px; width: 100%; }
#about .overview .wp-block-image img { width:100%; border-radius:80px; }
#about .overview p { max-width:600px; }

#about .benefits { background:#E9E9E9; padding-block:120px; }
#about .benefits .box_main { display:flex; justify-content:space-between; align-items:flex-start; }
#about .benefits .come { margin-bottom:60px; }
#about .benefits ul { margin-top: 0; }
#about .benefits ul li { position:relative; padding-left:40px; }
#about .benefits ul li+li { margin-top:30px; }
#about .benefits ul li::before {
	content: "";
	position: absolute;
	left: 0;
	width: 27px;
	height: 27px;
	background: url(../image/icon_check.svg) no-repeat;
	background-size: contain;
}

#about .explanation { display:flex; margin-block:120px; justify-content:space-between; }
#about .explanation .box_l ul { margin-top:120px; }
#about .explanation .box_l ul li { padding-left: 0; }
#about .explanation .box_l ul li::before { content: none; }
#about .explanation .box_l ul li+li { margin-top:40px; }
#about .explanation .box_r .come:not(:last-child) { margin-bottom:50px; }
#about .explanation .box_r ul li {
	padding-left:36px;
	position:relative;
	margin-bottom:50px;
}
#about .explanation .box_r ul li::before {
	content: "";
	position: absolute;
	top: 6px;
	left: 0;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #286189;
}
#about .explanation .box_r ul li ul { margin-top:30px; }
#about .explanation .box_r ul li ul li { padding-left:20px; margin-bottom:30px; }
#about .explanation .box_r ul li ul li::before { top: 12px; width: 16px; height: 16px; background: #222; }
#about .explanation .box_r ul li ul li:last-child { padding-left:0; }
#about .explanation .box_r ul li ul li:last-child::before { display:none; }

#about .participants { padding-block:120px 170px; background:#E9E9E9; }
#about .participants .box_main {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}
#about .participants .category { flex-basis:100%; margin-top:80px; }
#about .participants .prefectures { flex-basis:100%; margin-top:80px; }
#about .participants table { width:72.5%; margin:0 auto; }
#about .participants table tr th {
	color:#FFF;
	font-size:125%;
	font-weight:700;
	text-align:left;
	padding: 25px 40px;
}
#about .participants table tr th:nth-child(1) { background:#234D6C; }
#about .participants table tr th:nth-child(2) { background:#286189; }
#about .participants table tr th:nth-child(3) { background:#1E374B; }
#about .participants table tr td { /*font-size:112.5%; font-weight:700;*/ padding: 25px 33px 25px 40px; }
#about .participants table tbody tr:nth-child(even) { background:#FFF; }

#about .participants table.c2 tr th { width:50%; }
#about .participants table.c3 tr th { width:33.3%; }


/*====================================================================================================

  主催者になるには

====================================================================================================*/
#organizer {}
#organizer .box_main {}
#organizer .guidebook {clear: both;}
#organizer .guidebook img {float: left; margin: 0 40px 10px 0;}
#organizer ol li ul.check {margin-bottom: 60px;}


/*====================================================================================================

  ダウンロード

====================================================================================================*/
#download {}
#download .box_main {}
#download .box_main ul {margin-bottom: 60px;}
#download .img_download {margin-top: 20px;}
#download .img_download {display: flex; flex-wrap: wrap;justify-content: space-between; align-content: stretch;}
#download .img_download a {max-width: 350px;vertical-align: top;}
#download .img_download a:last-child {margin-bottom: 0;}
#download .img_download a img {max-width: 350px; margin-bottom: 20px;}

/*====================================================================================================

  組織概要

====================================================================================================*/
#organization {}
#organization .box_main {}
#organization .box_main th,#organization .box_main td:first-child {white-space: nowrap;}


/*====================================================================================================

  実施シェイクアウト && シェイクアウト訓練に参加 - ARCHIVE

====================================================================================================*/
#event > .box_main { padding-block:120px; }
#shakeout > .box_main { padding-block:120px; }
#event .select-box { text-align: right; margin: -60px 0 30px 0; }
#event .select-box label { margin-right: 10px; font-weight: 500;}
#event .select-box select {
	width: 150px;
	cursor: pointer;
	font-size: 100%;
	appearance: none;
	padding: 8px 20px 10px 30px;
	border: 1px solid #000;
	font-family: "Noto Sans JP", sans-serif;
	background: url(../image/arrow_down3.svg) no-repeat 12px;
}


/*====================================================================================================

  実施シェイクアウト && シェイクアウト訓練に参加 - SINGLE

====================================================================================================*/

#event section:nth-child(even){ background-color: #E9E9E9; }

#event .box_r { max-width:780px; width:100%; }
#event .come { font-size:112.5%; font-weight:700; line-height:200%; }
	#event .come h4  { margin-block:50px 30px; font-size: 120% !important;}
	#event .come p {margin-bottom: 1.0em;}
	#event .come ol { padding-inline-start:25px; }
	#event .come a {
		color: #286189;
		font-size: 112.5%;
		font-weight: 700;
		text-underline-offset: 10px;
		text-decoration-thickness: 1px;
	}

#event .callout {
	display:flex;
	align-items: flex-start;
	padding-block:115px 120px;
	justify-content:space-between;
}
	#event .callout .come{
		margin-bottom: 2.0em;
	}

#event .callout ul.download { display:flex; max-width:720px; justify-content:space-between;margin-top: 40px; }
#event .callout ul.download li { text-align:center; list-style-type: none; }
#event .callout ul.download li::before {content: none;}
#event .callout ul.download li+li{margin-top: 0;}
#event .callout ul.download li .photo img { height:180px; width:auto; }
#event .callout ul.download li .name { margin-block:10px; font-size:112.5%; font-weight:700; }

#event .application { padding-block:120px; }
#event .application .box_main {
	display:flex;
	align-items: flex-start;
	justify-content:space-between;
}

#event .event {
	display:flex;
	padding-block:120px;
	align-items: flex-start;
	justify-content:space-between;
}

#event .scenario { padding-block:120px 160px; }
#event .scenario .box_main {
	display:flex;
	align-items: flex-start;
	justify-content:space-between;
}

#event .form {
	display:flex;
	align-items: flex-start;
	padding-block: 120px 170px;
	justify-content:space-between;
}
#event .form .box_r .org_label {
	color: #FFF;
	padding: 15px;
	font-size: 112.5%;
	font-weight: 700;
	text-align: center;
	background: #286189;
	margin-top: 50px;
}
#event .form .box_r span.req { display: inline-block; font-size:112.5%; font-weight:700; color:#FF0000; }
#event .form .box_r select {
	width: 300px;
	cursor: pointer;
	font-size: 100%;
	appearance: none;
	padding: 18px 50px;
	border: 1px solid #000;
	font-family: "Noto Sans JP", sans-serif;
	background: #FFF url(../image/arrow_down3.svg) no-repeat 30px;
}
	#event .form .box_r select option {
		padding: 18px 0;
	}
#event .form .box_r input[type="text"] , #event .form .box_r input[type="email"],
#event .form .box_r textarea {
	width:100%;
	font-size: 100%;
	border-radius:0;
	padding:18px 20px;
	border: 1px solid #000;
	font-family: "Noto Sans JP", sans-serif;
}
#event .form .box_r input.w300 { width:300px; }
#event .form .box_r input.w300+span { margin-left:10px; }
#event .form .box_r span.mwform-checkbox-field { position:relative; padding-left:30px; margin:15px 0; display:block; }
#event .form .box_r span.mwform-checkbox-field input[type="checkbox"] { position: absolute; left: 0; top: 1.0em;}
#event .form .box_r span.mwform-radio-field { display: inline-block; margin-top:10px;}
#event .form .box_r p.note { font-size:87.5%; margin-top:10px; }
#event .form .box_r table { width:100%; border-bottom:1px solid #000; }
#event .form .box_r table tr { display:block; }
#event .form .box_r table tr+tr { margin-top:40px; }
#event .form .box_r table tr th {
	color: #000;
	display:block;
	font-size: 125%;
	font-weight: 700;
	text-align: left;
	padding: 0;
	padding-block: 10px 15px;
}
#event .form .box_r table tr th:nth-child(1),
#event .form .box_r table tr th:nth-child(2),
#event .form .box_r table tr th:nth-child(3){ background:none; }
#event .form .box_r table tr td { display:block; padding: 0;}
#event .form .box_r table tr:last-child { padding-bottom:40px; }
#event .form .box_r table tr:last-child th { padding-block: 10px 25px; }
#event .form .box_r table tr:last-child td span.mwform-radio-field { display:inline-block; padding-left:0; margin-right:50px; }
#event .form .box_r table tr:last-child td span.mwform-radio-field input[type="radio"] { margin-right:10px; }
#event .form .box_r .b_inqu { width:400px; margin:80px auto 0; }
#event .form .box_r .b_inqu input[type="submit"] {
	width: 100%;
	color: #FFF;
	border: none;
	cursor: pointer;
	font-size: 125%;
	font-weight: 900;
	background: #F58342;
	border-radius: 80px;
	padding-block: 20px;
	font-family: "Noto Sans JP", sans-serif;
}
#event .form .box_r .b_inqu:hover { opacity:0.7; }

#event .b_more { width:400px; margin:10px 0; }
#event input.w650 { width:650px; }

#event .form input[type="radio"] , #event .form input[type="checkbox"] { transform: scale(1.5);margin-left: 5px;  }



/* 確認画面のみ表示 */
.mw_wp_form_input .display_confirm{ display: none; }
.mw_wp_form_complete .display_confirm{ display: none; }

/*====================================================================================================

  お知らせ

====================================================================================================*/
#news { padding-block:120px 70px; }
#news .box_main { display: inherit; }
#news .box_main ul,#news .box_main ol { margin:0; }
#news .news_list { margin-top:100px; }
#news .news_list ul { display:flex; align-items:center; border-top:1px solid #000;margin-top: 0; }
#news .news_list ul:last-child { border-bottom:1px solid #000; }
#news .news_list ul li{padding-left: 0;}
#news .news_list ul li+li{margin-top: 0;}
#news .news_list ul li::before { content: none; }
#news .news_list ul li a { text-decoration:none; color:#000; display:block; font-weight:700; }
#news .news_list ul li.date {
	width:165px;
	text-align:center;
}
#news .news_list ul li.cate { width:110px; margin-right:40px; }
#news .news_list ul li.cate a {
	color: #FFF;
	font-size: 87.5%;
	text-align: center;
}
#news .news_list ul li.title { width:74.6%; }
#news .news_list ul li.title a {
	padding-block: 35px;
	transition: 0.5s ease;
	background: url(../image/arrow_right1.svg) no-repeat 96%;
}
#news .news_list ul:hover li.title a {
	background-position:98%;
	text-decoration: underline;
	text-underline-offset: 10px;
	text-decoration-thickness: 1px;
}
#news a:hover { opacity:0.7; }



/*====================================================================================================

  FAQ

====================================================================================================*/
#faq { padding-block: 120px 130px; }
#faq h3 { text-align: center; }
#faq h3::after { right: 0; margin: auto; }

#faq h3+.con_box { margin-top:130px;display: inherit; }
#faq .con_box+.con_box { margin-top:120px;display: inherit; }
#faq .con_tit { 
	position: relative;
	width: 304px; 
	margin: auto; 
	font-size: 250%; 
	font-weight: 700; 
	text-align: center; 
	line-height: 150%;
}
#faq .con_tit::before,
#faq .con_tit::after {
  content: "";
  top: 0;
  left: -30px;
  width: 30px;
  height: 60px;
  position: absolute;
  background: url(../../image/top/curve.svg) no-repeat;
  background-size: contain;
}
#faq .con_tit::after {
	left: auto;
  right: -30px;
  transform: scaleX(-1);
}


#faq .faq_list { margin-top:120px; }
#faq dl {
	border-top: 1px solid #000;
	background: url(../image/arrow_down.svg) no-repeat 98% 32px;
}
#faq dl.open {
	background: url(../image/arrow_up.svg) no-repeat 98% 32px;
}
#faq dl:last-child { border-bottom:1px solid #000; }
#faq dl dt {
	cursor: pointer;
	font-size: 125%;
	font-weight: 700;
	position: relative;
	padding: 40px 120px 40px 60px;
}
#faq dl dt::before {
	content: "";
	position: absolute;
	top: 46px;
	left: 20px;
	width: 27px;
	height: 27px;
	background: url(../image/icon_check.svg) no-repeat;
	background-size: contain;
}
#faq dl dd {
	display: none;
	padding:0 120px 40px 60px;
}



/*====================================================================================================

  お問い合わせ

====================================================================================================*/
#contact { max-width: 780px; width: 100%; margin: auto; }
#contact span.req { display: inline-block; color:#FF0000; }
#contact p.note { font-size:87.5%; text-align: center; margin-top:30px; }

#contact textarea,
#contact input[type="email"],
#contact input[type="text"] {
	width:100%;
	font-size: 100%;
	border-radius:0;
	padding:18px 20px;
	border: 1px solid #000;
	font-family: "Noto Sans JP", sans-serif;
}
#contact input.w300 { width:300px; }
#contact input.w500 { width:500px; }
#contact input.w650 { width:650px; }
#contact table { width:100%; border-bottom:1px solid #000; }
#contact table tr { display:block; }
#contact table tr+tr { margin-top:20px; }
#contact table tr th {
	color: #000;
	display:block;
	font-size: 125%;
	font-weight: 700;
	text-align: left;
	padding-block: 0;
}
#contact table tr th:nth-child(1) { background:none; }
#contact table tr th:nth-child(2) { background:none; }
#contact table tr th:nth-child(3) { background:none; }
#contact table tr td { display:block; }
#contact table tr:last-child { padding-bottom:40px; }

#contact .b_inqu { width:400px; margin:60px auto 0; }
#contact .b_inqu input[type="submit"] {
	width: 100%;
	color: #FFF;
	border: none;
	cursor: pointer;
	font-size: 125%;
	font-weight: 900;
	background: #F58342;
	border-radius: 80px;
	padding-block: 20px;
	font-family: "Noto Sans JP", sans-serif;
}
#contact .b_inqu:hover { opacity:0.7; }

/*** FOOTER *******************************************************************/
 #footer .box_main{padding-block: 90px 0;}