@charset UTF-8;

*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

a {
	color: inherit;
	display: block;
}
a:active {
	background-image: inherit;
	background-color: rgba(167,65,38,0.2);
	transition: 0.08s;
	}

a.detail_link:active {
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.4));
	transition: 0.08s;
}
a.inline {
	display: inline-block;
	margin: 0 0.2em;
	padding: 0 0.6em;
	color: #fff;
	background-color: #a74126;
}
a.inline2 {
	display: inline-block;
	padding: 0 0.6em;
	color: #a74126;
}

html {
	font-family: 'Bookman Old Style',
		a-otf-ud-shin-go-pr6n,
		YuGothic,  /* For Mac */
		"Yu Gothic M", "Yu Gothic Medium",  /* For Windows Firefox, Edge, IE */
		"Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro",  /* For Mac Fallback */
		Meiryo,  /* For Windows Fallback (Chrome) */
		sans-serif;
	font-size: 18px;
	width: 100%;
	height: 100%;
}

body {
	width: 100%;
	height: 100%;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	text-align: justify;
	line-height: 2em;
}

h1, h2, h3, h4 {
	width: 100%;
	font-family: "fot-udkakugo-large-pr6n", sans-serif;
	line-height: 2em;
	font-weight: 600;
	text-align: center;
	margin: 0;
	padding: 0;
}
h1 {
	font-size: 2.6em;
}
h2 {
	font-size: 1.4em;
}
h3 {
	font-size: 1.2em;
}
h4 {
	font-size: 1em;
}

dl {
	margin: 0.6em 0;
	padding: 0;
}
dt {
	margin: 0.6em 0.8em 0;
	padding: 0;
	font-weight: 800;
}
dt:nth-child(1) {
	margin-top: 0;
}
dd {
	margin: 0 0.8em;
	padding: 0;
}
#click {
  display: none;
  position: absolute;
  z-index: 10001;
  width: 30px;
  height: 30px;
  background: #a74126;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px;
  filter: drop-shadow(0px 0px 6px rgba(0,0,0,0.4));
}

.old {
	font-family: 'FOT-筑紫オールドゴシック Std B',TsukuOldGothicStd-B, sans-serif;
}

.emphasis {
	-webkit-text-emphasis: filled sesame;
	text-emphasis: filled sesame;
}
.center {
	text-align: center;
}
.underline {
	border-bottom: 6px solid #a74126;
}
.bold {
	font-family: fot-udkakugo-large-pr6n;
	font-weight: 500;
}
.small {
	font-size: 0.8em;
}
.rose {
	color: #AB4E68;
}
	
div.list {
	margin: 1.6em 0;
	padding: 0.6em;
	background: #efefef;
}
div.list h3 {
	margin: 1em 0 0.6em 0;
	font-size: 1em;
	text-align: left;
}
div.list h3:before {
	display: inline-block;
	margin-right: 0.6em;
	content: '';
	width: 1em;
	height: 1em;
	background: #333;
}

.more {
	width: 100%;
	height:4em;
	margin: 2.6em auto 0;
	text-align: center;
	color: #fff;
	cursor: pointer;
}
.more:active {
	background-image: inherit;
	background-color: rgba(167,65,38,0.2);
	transition: 0.08s;
	}
.more_button {
	display: inline-block;
	width: 7.8em;
	height:2.6em;
	margin: 0.7em auto;
	line-height:2.6em;
	background: #a74126;
}

.second_part {
	margin-top: 2.6em;
}

div.last_paragraph {
	margin-top: 2.6em;
}

div.document_link {
	width: 100%;
	height:4em;
	margin: 2.6em auto 0;
	text-align: center;
	color: #fff;
	cursor: pointer;
}
div.document_link a {
	line-height: 4em;
	background: #2A0C4E;
}
div.document_link.light a {
	line-height: 4em;
	background: #644E7E;
}
div.document_link.deep a {
	line-height: 4em;
	background: #1F0939;
}
div.asc {
	margin: 1em;
	padding: 1em;
	border: 1px solid #999;
}

/* -----------------------------------------------------------------------------　グローバルメニュー */

#global_navi {
	width: 100%;
	height: 45px;
	margin: 0;
	padding: 0 5px;
	border-bottom: 1px rgba(31, 23, 21, 0.4) dashed;
	position: fixed;
	display: flex;
	justify-content: space-between;
	background: rgba(255,255,255,0.9);
	z-index: 10000;
}
#go_to_ssc {
	display: inline-block;
	box-sizing: border-box;
	width: 40%;
	height: 45px;
	padding-left: 5%;
	
}
#go_to_ssc a {
	display: block;
	width: 100%;
	height: 45px;
	background: url(img/out.svg) top 4px left/ auto 41px no-repeat;
}

#global_menu {
	display: inline-block;
	width: 20%;
	text-align: center;
	line-height: 85px;
} 
#menu_button {
	display: none;
}
#menu_button span::after {
	color: #fff;
	display:block;
	content: '';
	width: 60px;
	height: 60px;
	background: url(img/menu_open.svg) center/ 30px no-repeat;
}
.open #menu_button span::after {
	display:block;
	content: '';
	width: 60px;
	height: 60px;
	background: url(img/menu_close.svg) center/ 30px no-repeat;
}
.js_modal {
	visibility: visible;
}
#modal {
	position: absolute;
	top:45px;
	left: 0;
	width: 100vw;
	background: rgba(255, 255, 255, 0.7);
	z-index: 1000;
}
#modal ul {
	padding: 0 0;
	width: 100%;
	height: 93px;
	display: flex;
	justify-content: space-around;
}
#modal ul li {
	width: 25%;
}
li.menu_item a {
	border-bottom: 2px solid;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
li.menu_item div.sign {
	margin: 0.1em 1em 0;
	font-size: 1em;
	transform: rotate(10deg);
}
li.menu_item h3 {
	line-height: 1em;
	margin-bottom: 0em;
}
li.menu_item .menu_description {
	display: none;
}
#language, #language2 {
	display: inline-block;
	box-sizing: border-box;
	width: 40%;
	line-height: 45px;
	padding-right: 5%;
	text-align: right;
}
#language a, #language2 a {
	display: block;
	width: 100%;
	height: 45px;
}

#language a {
	background: url(img/english.svg) top 8px right/ auto 33px no-repeat;
}
#language2 a {
	background: url(img/japanese.svg) top 8px right/ auto 33px no-repeat;
}

/* --------------------------------------------------------------------------------- 　トップページ */

#index {
	width: 100%;
	height: 100%;
}

#index #section1 {
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	padding-top: 130px;
	display: flex;
	justify-content: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	align-items: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	background: url(img/index_background.jpg) center/ cover no-repeat fixed;
	color: #fff;
	font-weight: 800;
	text-shadow: 0 0 10px rgba(0,0,0,0.7);
}
#index #section1 #osd_name {
	text-align: center;
}
#index #section1 #osd_name h1 {
	letter-spacing: 0.05em;
}
#index #section1 #osd_name h2 {
	margin-bottom: 1em;
	display: flex;
	justify-content: center;
	aling-content: center;
}
#index #section1 #osd_name h2 div {
	margin: 0 0.5em;
}


#index #main_wrapper {
	display: flex;
	flex-wrap: nowrap;
}
#index #section2 {
	box-sizing: border-box;
	width: 75%;
	min-height: 100%;
	background-color: #f2f2f2;
	background-image: url(img/otis-redding.png);
	padding: 3em 1.3% 2em;
}
#index #section2 #panel_menu {
	width: 67.4vw;
	height: 67.4vw;
	margin: 0 auto;
	display: flex;
}
#index #section2 #panel_menu #panel {
	width: 100%;
	height: 100%;
	display: flex;
	flex-wrap: wrap;
	background: url(img/panel_cross.svg) center/ contain no-repeat;
}
#index #section2 #panel_menu #panel .panel_item {
	width: 50%;
	height: 50%;
}
#index #section2 #panel_menu #panel .panel_item a {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	align-content: center;
	-ms-flex-line-pack: center;
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
}
#index #section2 #panel_menu #panel .panel_item .img_wrapper {
	display: block;
	width: 20vw;
	height: 20vw;
}
#index #section2 #panel_menu #panel .panel_item #tobestudents {
	background: url(img/tobestudents.svg) center / 90% no-repeat;
}
#index #section2 #panel_menu #panel .panel_item #students {
	background: url(img/students.svg) center / contain no-repeat;
}
#index #section2 #panel_menu #panel .panel_item #parents {
	background: url(img/parents.svg) center / contain no-repeat;
}
#index #section2 #panel_menu #panel .panel_item #faculties {
	background: url(img/faculties.svg) center / contain no-repeat;
}
#index #section2 #panel_menu #panel .panel_item h3 {
	width: 100%;
	font-size: 1.2em;
	line-height: 2.6em;
	text-align: center;
}

#index #section2 div.separater_zigzag {
	width: 60%;
	height: 3vw;
	margin: 5em auto;
	background: url(img/separater_zigzag.svg) center/ contain no-repeat;
}
#index #section2 #news {
	padding: 0;
	display:flex;
	justify-content: center;
	flex-wrap: wrap;
}
#index #section2 #news div.img_wrapper {
	width: 4em;
	height: 4em;
	position: relative;
	bottom: -0.6em;
	left: -4.4em;
	background: url(img/news.svg) center/ contain no-repeat;
}
#index #section2 #news h3 {
	margin: 0 0 1em 0;
	width: 100%;
	text-align: center;
	letter-spacing: 0.2em;
}
#index #section2 #news div.news_item {
	position: relative;
	width: 95%;
	margin: 1em auto 2.6em;
	padding: 1em 1.6em 1em;
	line-height: 2em;
	border: 2px solid #4a546a;
	border-radius: 0.6em;
	background: #fff;
}

#index #section2 #news div.news_item::before {
	content: "";
	display: block;
	width: 36px;
	height: 27px;
	background: url(img/fukidashi_1.svg) center/ contain no-repeat;
	position: absolute;
	bottom: -26px;
	right: 5%;
}
#index #section2 #news div.news_date {
	font-family: "fot-udkakugo-large-pr6n", sans-serif;
	font-weight: 500;
	font-size: 1em;
}
#index #section2 #news div.news_content {
	margin: 0.6em 0 0;
}
#index #section2 #news .news_content a {
	width: 7.8em;
	height:2.6em;
	margin: 0.6em 0 0.2em auto;
	line-height:2.6em;
	text-align: center;
	color: #fff;
	border-radius: 0.6em; 
	background: #a74126;
}

#index #side_menu {
	box-sizing: border-box;
	width: 25%;
	background: #fcf58c url(img/otis-redding.png) repeat;
	padding: 1.3%;
}
#index #side_menu #side {
	padding: 2em 0;
}
#index #side_menu #side .side_item {
	margin: 4em 0;
}
#index #side_menu #side .side_item a {
	width: 100%;
	display: flex;
	justify-content: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	align-content: center;
	-ms-flex-line-pack: center;
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
}
#index #side_menu #side .side_item .img_wrapper {
	display: block;
	width: 10vw;
	height: 10vw;
}
#index #side_menu #side .side_item #about {
	background: url(img/about.svg) center/ contain no-repeat;
}
#index #side_menu #side .side_item #recruit {
	background: url(img/recruit.svg) center/ contain no-repeat;
}
#index #side_menu #side .side_item #resource {
	background: url(img/resource.svg) center/ contain no-repeat;
}
#index #side_menu #side .side_item h3 {
	width: 100%;
	text-align: center;
	line-height: 2.6em;
}
#footer {
	width: 100%;
	height: 45px;
	margin: 0;
	padding: 0 5px;	
	display: flex;
}
#go_to_university {
	line-height: 45px;
	width: 30%;
	letter-spacing: -0.1em;
	
}
#go_to_university a {
	display: inline-block;
	height: 41px;
	width: 90px;
	margin: 2px 0;
	background: url(img/university_logo.svg) center/ auto no-repeat;
}
#go_to_top {
	width: 60px;
	height: 60px;
	margin: 0 auto;
	background: #4a546a url(img/go_to_top.svg) center/ 27px no-repeat;
	border-radius: 50%;
	font-size: 2em;
	position: relative;
	top: -30px;
	color: #fff;
}
#go_to_top a {
	width: 60px;
	height: 60px;
	text-align: center;
	line-height: 60px;
	background: none;
}
#footer_right{
	height: 45px;
	width: 30%;
}


/* ------------------------------------------------------------------------　グローバルメニューページ */

#service #section1, #disability #section1, #supporter #section1, #contact #section1 {
	box-sizing: border-box;
	width: 100%;
	min-height: 100%;
	display: flex;
	justify-content: center;
	align-content: center;
	flex-wrap: wrap;
	background: url(img/page_background.jpg) center / cover fixed;
	position: relative;
	padding-top: 180px;
	color: #fff;
}
#service #section1 h3, #disability #section1 h3, #supporter #section1 h3, #contact #section1 h3 {
	margin-top: 0em;
	font-size: 1.8em;
	letter-spacing: 0.2em;
}
#service #section1 .name_of_osd::after, #disability #section1 .name_of_osd::after, #supporter #section1 .name_of_osd::after, #contact #section1 .name_of_osd::after {
	content: '';
	display: block;
	margin: 0.3em auto 0.9em;
	width: 15%;
	height: 0px;
/*	background: url(img/separater_arrow.svg) center/ contain no-repeat; */
}
#service #section1 h1, #disability #section1 h1, #supporter #section1 h1, #contact #section1 h1 {
	margin: 0em auto 2em;
	width: 11em;
	font-family: 'Bookman Old Style', "fot-udkakugo-large-pr6n", sans-serif;
	letter-spacing: 0.2em;
	border-top: 2px solid;
	border-bottom: 2px solid;
}
#service #section1 h1 {
	margin-bottom: 1em;
}
#service #section1 nav, #disability #section1 nav, #supporter #section1 nav, #contact #section1 nav {
	width: 95%;
	font-size: 1.2em;
	justify-content: center;
	align-item: center;
}
#service #section1 ul, #disability #section1 ul, #supporter #section1 ul {
	width: 34em;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#service #section1 li, #disability #section1 li, #supporter #section1 li {
	box-sizing: border-box;
	width: 16em;
	height: 2.8em;
	margin: 0.4em 0;
	font-family: "fot-udkakugo-large-pr6n", sans-serif;
	text-align: center;
	letter-spacing: 0.1em;
}
#service #section1 nav li a, #disability #section1 nav li a, #supporter #section1 nav li a {
	display: inline-block;
	vertical-align: middle;
	box-sizing: border-box;
	width: 100%;
	line-height: 1em;
}
#service div.separater_zigzag, #disability div.separater_zigzag, #supporter div.separater_zigzag, #contact div.separater_zigzag {
	width: 40%;
	height: 3vw;
	margin: 6em auto 2em;
	background: url(img/separater_straight.svg) center/ contain no-repeat;
}

#service article, #disability article, #supporter article {
	width: 95%;
	margin: -120px auto 0em;
	padding: 150px 0;
}
#service article h2, #disability article h2, #supporter article h2 {
	position: relative;
	left: -0.4em;
}
#service article article, #disability article article, #supporter article article {
	box-sizing: border-box;
	width: 75%;
	margin: 2em auto 0;
	padding: 0 7%;
	border-left: 6px solid #cfcfcf;
	border-right: 6px solid #cfcfcf;
}
#service article h3, #disability article h3, #supporter article h3 {
	margin: 2.6em 0 1em;;
}


/* ------------------------------------------------------------------------------------ 支援のこと */

/* ------------------------------------------------------------------------------------ 合理的配慮 */

#service #application_flow h3 {
	height: 3em;
	line-height: 3em;
	margin-bottom: 1.2em;
	border: 1px solid #666;
}

/* ------------------------------------------------------------------------------------ 障害のこと */

/* ------------------------------------------------------------------------------------ サポーター */

/* --------------------------------------------------------------------------------------- アイル */

#air_schedule, #air_activity, #air_pr {
	background: linear-gradient(0deg, rgba(223,223,223,1) 0%, rgba(239,239,239,1) 100%) fixed;
}

#air {
	background: linear-gradient(0deg, rgba(255,240,249,1) 0%, rgba(255,245,237,1) 100%) fixed;
}
#introduction {
	width: 77.5%;
	margin: 0px auto 0;
	padding: 150px 2% 0;
}
#air #introduction {
	display: flex;
	flex-direction: column;
	line-height: 2.6em;
}
#introduction h1 {
	height: 160px;
	border: 1px solid;
	visibility: hidden;
}
#introduction #air_logo {
	height: 210px;
	width: 210px;
	position: absolute;
	top: 160px;
	left: 15%;
	background: url(img/air_logo.svg) center center/ contain no-repeat;
}
#introduction article {
	margin: 10px 0;
	padding: 0 5%;
	text-indent: 7em;
}
#menu_link {
	box-sizing: border-box;
	height: 30vw;
	width: 80vw;
	margin: 3em auto;
	position: relative;
}
#menu_link div {
	width: 16vw;
	height: 25vw;
}
#menu_link #member {
	position: absolute;
	top: 2.5vw;
	left: 8vw;
	z-index: 4;
	transform: rotate(-5deg);
	background: url(img/member.jpg) center center/ contain no-repeat;
}
#menu_link #schedule {
	position: absolute;
	top: 2.5vw;
	left: 24vw;
	z-index: 3;
	transform: rotate(6deg);
	background: url(img/schedule.jpg) center center/ contain no-repeat;
}
#menu_link #activity {
	position: absolute;
	top: 2.5vw;
	left: 40vw;
	z-index: 2;
	transform: rotate(-2.5deg);
	background: url(img/activity.jpg) center center/ contain no-repeat;
}
#menu_link #pr {
	position: absolute;
	top: 2.5vw;
	left: 56vw;
	z-index: 1;
	transform: rotate(11deg);
	background: url(img/pr.jpg) center center/ contain no-repeat;
}
#recruit h2 {
	font-size: 1.2em;
	height: 6.5em;
	padding-top: 0.9em;
	line-height: 6.1em;
	background: url(img/cloud.svg) center center/ contain no-repeat;	
}
#recruit article {
	width: 77.5%;
	margin: 80px auto 60px;
	padding: 0px 7% 0;
	line-height: 2.6em;
}
#recruit ul {
	margin: 1.2em 0 2em;
	padding: 1em;
	background: #fff;
}
#recruit a {
	display: inline-block;
}

#air_member {
	background: linear-gradient(0deg, rgba(137,147,255,1) 0%, rgba(206,169,255,1) 69%, rgba(248,183,255,1) 100%) fixed;
}
#air_member h2 {
	text-align: center;
	color: #fff;
}
div.question {
	margin: 2em 20% 0 auto;
	width: calc(85% - 62px);
	position: relative;
	display: flex;
	flex-direction: row-reverse;
	align-items: start;
	filter: drop-shadow(0 0 4px rgba(51,51,51,0.3));
}
div.question_content {
	margin: 6em 0px 1em 0;
	line-height: 1.4em;
	padding: 6px 8px;
	border-radius: 15px;
	text-align: right;
	background: #fff;
}
div.question_content::after {
	content:'';
	display: block;
	width: 18px;
	height: 18px;
	position: absolute;
	right: -8px;
	top: 6.5em;
	font-size: 0.9em;
	background: url(img/fukidashi_3.svg) center center/ cover no-repeat;
}
div.speach {
	margin: 2em 25% 3em 20%;
	width: 55%;
	display: flex;
}
div.speaker_wrapper {
	flex: 0 0 90px;
	width: 90px;
	height: 90px;
}
div.speaker_photo {
	width: 100%;
	height: 100%;
	border-radius: 50%;
}
div.air_kattyan {
	background: url(img/air_kattyan.png) center center/ cover no-repeat;
}
div.air_yuki {
	background: url(img/air_yuki.jpg) center center/ cover no-repeat;
}
div.air_kenzo {
	background: url(img/air_kenzo.jpg) center center/ cover no-repeat;
}
div.air_murase {
	background: url(img/air_murase.jpg) center center/ cover no-repeat;
}
div.air_moko {
	background: url(img/air_moko.jpg) center center/ cover no-repeat;
}
div.air_erii {
	background: url(img/air_erii.jpg) center center/ cover no-repeat;
}
div.air_nakarin {
	background: url(img/air_nakarin.jpg) center center/ cover no-repeat;
}

div.speach_wrapper {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	align-items: start;
	margin-left: 12px;
	padding-top: 20px;
	position: relative;
	filter: drop-shadow(0 0 4px rgba(51,51,51,0.3));
}
div.speaker_name {
	color: #fff;
	font-size: 0.8em;
	line-height: 1.4em;
	font-weight: 800;
}
div.speach_content {
	margin-top: 0.2em;
	line-height: 1.4em;
	padding: 6px 8px;
	border-radius: 15px;
	background: #fff;
}
div.speach_content::before {
	content:'';
	display: block;
	width: 18px;
	height: 18px;
	position: absolute;
	top: calc(20px + 1.4em);
	left: -8px;
	font-size: 0.9em;
	background: url(img/fukidashi_2.svg) center center/ cover no-repeat;
}

#air_schedule div.event_wrapper, #air_activity div.activity_wrapper, #air_pr #lede_wrapper {
	width: 60%;
	margin: 4em 20%;
	background: #fff;
	border-radius: 15px;
	filter: drop-shadow(0 0 6px #ccc);
	display: flex;
	flex-wrap: wrap;
	align-content: start;
}
#air_schedule div.date {
	box-sizing: border-box;
	width: 40%;
	height: 3em;
	flex: 0 0 40%;
	font: 900 2em/1.2em toppan-bunkyu-midashi-go-std, sans-serif;
	padding: 0.3em 0;
	text-align: center;
}
#air_schedule div.time_wrapper {
	height: 3em;
	padding: 0 3em;
	flex: 1 0 auto;
	display: flex;
	flex-direction: column;
	align-items: start;
}
#air_schedule div.time {
	height: 3em;
	line-height: 3em;
	text-align: center;
}
#air_schedule div.category {
	margin: 0.3em 0 0.5em;
	flex: 0 0 auto;
	width: auto;
	height: 2em;
	line-height: 2em;
	padding: 0 1em;
	border-radius: 1.2em;
	background: #cce;
}
#air_schedule div.event_name {
	height: 3.2em;
	width: 100%;
	padding: 0.2em 0.6em 0;
	font: 900 1.8em/3em toppan-bunkyu-midashi-go-std, sans-serif;
	border-top: 2px dashed #efefef;
}
#air_schedule div.event_detail {
	width: 100%;
	padding: 0.4em 1em;
	line-height: 1.8em;
	text-align: justify;
}
#air_activity div.activity_wrapper {
	flex-direction: column;
}
#air_activity .activity_title h3 {
	width: 100%;
	padding: 0.4em 0.6em;
	font-size: 1.4em;
	text-align: left;
}
#air_activity div.activity_abstract {
	margin: 0.6em 1em 0.3em;
	position: relative;
}
#air_activity i.event {
	color: #F4E87C;
        filter: drop-shadow(0px 0px 4px rgba(0,0,0,.6));
	-webkit-filter: drop-shadow(0px 0px 4px rgba(0,0,0,.6));
}
#air_activity i.lecture {
	color: #9EB7E5;
        filter: drop-shadow(0px 0px 4px rgba(0,0,0,.6));
	-webkit-filter: drop-shadow(0px 0px 4px rgba(0,0,0,.6));
}
#air_activity i.assist {
	color: #ED7D3A;
        filter: drop-shadow(0px 0px 4px rgba(0,0,0,.6));
	-webkit-filter: drop-shadow(0px 0px 4px rgba(0,0,0,.6));
}
#air_activity i.voluntary {
	color: #5C8001;
        filter: drop-shadow(0px 0px 4px rgba(0,0,0,.6));
	-webkit-filter: drop-shadow(0px 0px 4px rgba(0,0,0,.6));
}
#air_activity div.activity_abstract img {
	float: left;
	width: 150px;
	height: 150px;
	margin: 0em 1em 0.2em 0;
	background: #ccc;
}
#air_activity div.switch {
	margin-bottom: 0.3em;
	text-align: center;
	font-size: 1.6em;
}
#air_activity div.box_more {
	display: none;
	margin: 0.6em 1em;
	position: relative;
}
#air_activity div.activity_reporter {
	width: 80px;
	height: 80px;
	background: #ccc center center/ contain no-repeat;
	border-radius: 50%;
}
#air_activity div.reporter_mai {
	background: url(img/air_member_2021/mai.jpg) center center/ cover no-repeat;
}

#air_activity div.activity_report {
	margin: 34px 0;
	padding: 0.6em 1em;
	border: 1px solid #999;
	border-radius: 6px;
}
#air_activity div.activity_report::after {
	content:'';
	display: block;
	width: 14px;
	height: 22px;
	position: absolute;
	top: 98px;
	left: 30px;
	background: url(img/fukidashi_4.svg) center center/ cover no-repeat;
}
#air_activity hr {
	margin: 0 20%;
	border-width: 2px 0 0 0;
	border-style: dotted;
	border-color: #fff;
}

#air_pr #lede_wrapper {
	background: none;
	filter: drop-shadow(0 0 0 #fff);
}
#air_pr #lede {
	margin: 1.6em 1em;
}
#air_pr #latest_wrapper, #air_pr #backnumber_wrapper {
	box-sizing: border-box;
	width: 95%;
	margin: 2em 2.5%;
	border-radius: 15px;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: space-around;
	align-items: center;
}
#air_pr h4 {
	width: 100%;
	flex: 0 0 100%;
}
#air_pr div.leaflet {
	width: 59.4vw;
	height: 42vw;
	margin: 0.6em auto;
	border: 1px dotted;
	display: flex;
	justify-content: center;
	align-items: center;
}
#air_pr div.no001 {
	background: #fff url(img/air_letter_01_ja.jpg) center/ contain no-repeat;
}
#air_pr div.no002 {
	background: #fff url(img/air_letter_02_ja.jpg) center/ contain no-repeat;
}
#air_pr div.no003 {
	background: #fff url(img/air_letter_03_ja.jpg) center/ contain no-repeat;
}

#back {
	margin: 6em 20% 0;
	padding-bottom: 3em;
}
#back a {
	display: inline;
	width: 4em;
	display: flex;
	align-items: center;
}
#back i {
	font-size: 1.6em;
	color: #150578;
}
div.back {
	margin-left: 0.4em;
}

div.kenji {
	background: url(img/);
}

/* ------------------------------------------------------------------------------------ コンタクト */

#contact #section1 nav {
	background: url(img/mark_contact.svg) center/ auto 7.6em no-repeat;
}
#contact #main_wrapper {
	width: 100%;
	height: 100vh;
	display: flex;
}
#contact #section2, #contact #section3 {
	box-sizing: border-box;
	width: 50%;
	display: flex;
}
#contact #section2, #contact #section3  {
	flex-direction: column;
}
#contact #section2 {
	background: #fcf58c url(img/otis-redding.png) center;
}
#contact #section2 div.item_wrapper, #contact #section3 div.item_wrapper  {
	min-height: 25vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#contact #section2 #contact_osd, #contact #section3 #contact_ssc {
	position: relative;
	line-height: 1em;
	letter-spacing: 0.1em;
}

#contact #section2 #contact_osd #open_hour, #contact #section3 #contact_ssc div.note {
	text-align: center;
	font-size: 0.8em;
}
#contact #section2 #contact_osd div.separater_zigzag, #contact #section3 #contact_ssc div.separater_zigzag {
	position: absolute;
	left: 30%;
	bottom: 0em;
	margin-top: -2em;
}
#contact #section2 .item_wrapper, #contact #section3 .item_wrapper {
	width: 100%;
}
#contact #section2 .item_wrapper div, #contact #section3 .item_wrapper div {
	text-align: center;
}
#contact #section2 #osd_mail, #contact #section3 #osd_mail {
	letter-spacing: 0.05em;
}
#contact #section2 #osd_mail a, #contact #section3 #ssc_mail a {
	height: 4em;
	background: url(img/mail.svg) center/ contain no-repeat;
}
#contact #section2 #osd_phone a, #contact #section3 #ssc_phone a {
	height: 4em;
	background: url(img/phone.svg) center/ contain no-repeat;
}

#contact #section2 #osd_address div.image_wrapper {
	height: 4.5em;
	background: url(img/location.svg) center/ contain no-repeat;
	cursor: default;
}
#contact #section2 #osd_location #osd_address {
	min-height: 25vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	cursor: default;
	pointer-events: none;
}
#contact #section2 #osd_location #osd_map {
	visibility: hidden;
}
#contact #section3 #ssc_home a {
	height: 4.5em;
	background: url(img/home.svg) center/ contain no-repeat;
}

#contact #section4 {
	width: 100%;
	height: 100vh;
	background: #cc0;
}
#contact #section4 #osd_map_for_pc {
	background: #f2f2f2 url(img/otis-redding.png);
	box-shadow: 0px 6px 5px -4px rgba(0,0,0,0.4) inset;
}
#contact #section4 #osd_map_for_pc div.map_wrapper {
	box-sizing: border-box;
	height: 50vh;
}
#contact #section4 #osd_map_for_pc #osd_map_detail {
	background: url(img/osd_map_detail.svg) center/ auto 90% no-repeat;
}
#contact #section4 #osd_map_for_pc #osd_map_wide #map {
	width: auto;
	height: 100%;
}

/* ---------------------------------------------------------------------------　パネルメニューページ */

#tobestudents, #students, #parents, #faculties {
	width: 100%;
	background: #f2f2f2 url(img/otis-redding.png);
}
#tobestudents #section1, #students #section1, #parents #section1, #faculties #section1 {
	width: 100%;
	min-height: 100vh;
	font-family: a-otf-ud-reimin-pr6n, serif;
}
#tobestudents #section1::after, #students #section1::after, #parents #section1::after, #faculties #section1::after {
	display: block;
	width: 50%;
	height: 6px;
	margin: 6em auto 0;
	content:'';
	background: #fff;
}
#tobestudents #section1 div.title_wrapper, #students #section1 div.title_wrapper, #parents #section1 div.title_wrapper, #faculties #section1 div.title_wrapper {
	box-sizing: border-box;
	width: 100%;
	min-height: 60vh;
	padding: 200px 0 1em;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	aling-items: center;
}
#tobestudents #section1 div.img_wrapper, #students #section1 div.img_wrapper, #parents #section1 div.img_wrapper, #faculties #section1 div.img_wrapper {
	margin: 0 auto 1.2em;
	width: 30vh;
	height: 25vh;
}
#tobestudents #section1 div.title_wrapper h1, #students #section1 div.title_wrapper h1, #parents #section1 div.title_wrapper h1, #faculties #section1 div.title_wrapper h1 {

}
#tobestudents #section1 div.lede_wrapper, #students #section1 div.lede_wrapper, #parents #section1 div.lede_wrapper, #faculties #section1 div.lede_wrapper {
	width: 75%;
	min-height: 20vh;
	margin: 0 auto;
	padding: 0.8em 1.6em;
}
#tobestudents #section1 div.lede_wrapper div.lede_rectangle, #students #section1 div.lede_wrapper div.lede_rectangle, #parents #section1 div.lede_wrapper div.lede_rectangle, #faculties #section1 div.lede_wrapper div.lede_rectangle {
	box-sizing: border-box;
	width: 100%;
	min-height: 20vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 0.4em 0.8em;
	background: #fff;
}
#tobestudents #section1 #go_to_next, #students #section1 #go_to_next, #parents #section1 #go_to_next, #faculties #section1 #go_to_next {
	width: 100%;
	height: 15vh;
	margin-bottom: 4em;
	display: flex;
	justify-content: center;
	align-content: center;
}
#tobestudents #section1 #go_to_next a, #students #section1 #go_to_next a, #parents #section1 #go_to_next a, #faculties #section1 #go_to_next a {
	width: 100%;
	height: 100%;
}
#tobestudents #section1 #go_to_next div.down_arrow, #students #section1 #go_to_next div.down_arrow, #parents #section1 #go_to_next div.down_arrow, #faculties #section1 #go_to_next div.down_arrow {
	width: 100%;
	height: 4vh;
	margin: 5.5vh 0;
	background: url(img/down_arrow.svg) center/ contain no-repeat;
}
#tobestudents article, #students article, #parents article, #faculties article {
	box-sizing: border-box;
	width: 95%;
	margin: 4em auto 0;
	padding: 0px 0 2em;
}
#tobestudents h2, #students h2, #parents h2, #faculties h2 {
	position: relative;
	left: -0.4em;
}
#tobestudents article article, #students article article, #parents article article, #faculties article article {
	box-sizing: border-box;
	width: 75%;
	margin: 2em auto 0;
	padding: 0 5%;
	border-left: 6px dashed #fff;
	border-right: 6px dashed #fff;
}
#tobestudents article article.nomore, #students article article.nomore, #parents article article.nomore, #faculties article article.nomore {
	margin-bottom: 3.3em;
}
#tobestudents article article h3, #students article article h3, #parents article article h3, #faculties article article h3 {
	text-align: left;
	font-family: inherit;
	font-size: 1em;
	font-weight: 800;
	margin: 1.6em 0 1em;
}
#tobestudents div.list, #students div.list, #parents div.list, #faculties div.list {
	background: #fff;
}


/* ---------------------------------------------------------------------------　入学希望の方へページ */

#tobestudents #section1 div.img_wrapper {
	background: url(img/tobestudents.svg) center/ 90% no-repeat;
}
#tobestudents #entrance section {
	margin: 2em 0;
}
#tobestudents #entrance section h4 {
	height: 3em;
	line-height: 3em;
	margin-bottom: 1.2em;
	border: 1px solid #666;
}
#tobestudents #entrance section p {
	margin: 0;
}
#tobestudents #entrance div.indent0_3 {
	margin: 0;
	padding-left: 3em;
	text-indent: -3em;
}
#tobestudents #entrance div.indent3_3 {
	margin: 0;
	padding-left: 3em;
}
#tobestudents div.list {
	font-size: 0.9em;
}

#tobestudents #entrance section div.document {
	width: 60vw;
	height: 84.8vw;
	padding: 0.8em 0.2em;
	margin: 1em 0 1em 2%;
	font-size: 0.8em;
	line-height: 1.4em;
	background: #fff;
	border: 1px solid #333;
}
#tobestudents #entrance section div.center {
	margin-bottom: 1.6em;
}

/* ---------------------------------------------------------------------------　在学中の学生へページ */

#students #section1 div.img_wrapper {
	background: url(img/students.svg) center/ 90% no-repeat;
}

/* -----------------------------------------------------------------------------　保護者の方へページ */

#parents #section1 div.img_wrapper {
	background: url(img/parents.svg) center/ 90% no-repeat;
}

/* --------------------------------------------------------------------------------　教職員へページ */

#faculties #section1 div.img_wrapper {
	background: url(img/faculties.svg) center/ 90% no-repeat;
}

#faculties #online #img_container {
	margin: 1em 0;
}
#faculties #online img {
	width: 100%;
	margin: 0.6em 0;
}

/* ----------------------------------------------------------------------------　サイドメニューページ */

#about #section1, #resource #section1, #pastnews #section1 {
	width: 100%;
}
#about #section1 div, #resource #section1 div, #pastnews #section1 div {
	box-sizing: border-box;
	width: 100%;
	height: 100vh;
	margin-bottom: 2em;
	padding: 75px 0 0 8px;
	background: #efefef;
	display: flex;
	justify-content: space-around;
	align-items: center;
	align-content: center;
}
#about #section1 h1, #resource #section1 h1, #pastnews #section1 h1 {
	width: 1.8em;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	letter-spacing: 0.1em;
}
#about article, #resource article, #pastnews article {
	box-sizing: border-box;
	width: 95%;
	margin: -8em auto 0;
	padding: 10em 0 2em;
}
#about h2, #resource h2 {
	position: relative;
	left: 0em;
	margin-bottom: 2.6em;
}
#about h2::after, #resource h2::after {
	display: block;
	width: 3em;
	height: 12px;
	margin: 0.4em 0 0;
	position: absolute;
	left: calc( 50% - 1.5em );
	content: '';
	background: #fcf58c url(img/otis-redding.png) repeat;
}

#about article article, #resource article article {
	box-sizing: border-box;
	width: 80%;
	margin: 2em auto 0;
	padding: 0em 7% 0;
	border-left: 1px solid #000;
	border-right: 1px solid #000;
}
#about article article h3 {
	text-align: left;
	font-family: inherit;
	font-size: 1em;
	font-weight: 800;
	margin: 1.6em 0 1em;
}

#about #mission ul li {
	text-indent: 1em;
} 

#about div.identify div.img_wrapper {
	width: 100%;
	height: 25vh;
}
#about div.identify div.kudo {
	background: #ccc url(img/kudo.jpg) center/ contain no-repeat;
}
#about div.identify div.idehara {
	background: #ccc url(img/idehara.jpg) center/ contain no-repeat;
}
#about div.identify div.shige {
	background: #ccc url(img/shige.jpg) center/ contain no-repeat;
}
#about article article div.date {
	margin-top: 1em;
}

/* ------------------------------------------------------------------------------　ニュース一覧ページ */

#pastnews #main, #news_detail #event {
	padding-top: 250px;
}
#pastnews article, #news_detail article {
	box-sizing: border-box;
	width: 95%;
	margin: 0 auto 0;
	padding: 0 0 2em;
}
#pastnews h2, #news_detail h2 {
	margin-bottom: 2.6em;
}
#pastnews article article {
	box-sizing: border-box;
	width: 80%;
	margin: 2em auto 0;
}
#pastnews .news_item {
	margin: 1.6em 0;
	padding: 1.6em 0 0;
	border-top: 1px dotted;
	display: flex;
	flex-direction: row;
}
#pastnews .news_date {
	width: 13.6em;
	font-size: 0.8em;
	font-weight: 800;
	color: #12355B;
}
#pastnews .news_content {
	flex: 1;
}
#pastnews .news_item .news_content a {
	width: 7.8em;
	height:2em;
	margin: 0.6em 0 0 auto;
	line-height:2em;
	text-align: center;
	color: #fff;
	border-radius: 0.1em; 
	background: #a74126;
}

/* -------------------------------------------------------------------------------　各ニュースページ */

#news_detail article article {
	box-sizing: border-box;
	width: 80%;
	margin: 2em auto 0;
	padding: 0 7%;
	border-left: 1px solid #000;
	border-right: 1px solid #000;
}
#news_detail article article h3 {
	text-align: left;
	font-family: inherit;
	font-size: 1em;
	font-weight: 800;
	margin: 1.6em 0 1em;
}
#news_detail #event #event_outline {
	margin: 4em 0 0;
}
#news_detail #event #event_outline a.img_link_wrapper {
	text-align: center;
	padding: 0 0 2em;
}
#news_detail div.separater_zigzag {
	width: 40%;
	height: 3vw;
	margin: 1.6em auto 1.6em;
	background: url(img/separater_straight.svg) center/ contain no-repeat;
}

/* ---------------------------------------------------------------------------------　コロナのページ */

#covid-19 {
	width: 100%;
	padding: 0.7em 10%;
	line-height: 1.6em;
	text-align: center;
}
#covid-19 a {
	color: #a74126;
}

/* -----------------------------------------------------------------------------　各ICT＋UD化ページ */
/* ---- news_detail がベース --------------------------------------------------------------------- */

#ICT_UD #event {
	padding-top: 250px;
}
#ICT_UD article {
	box-sizing: border-box;
	width: 95%;
	margin: 0 auto 0;
	padding: 0 0 2em;
}
#ICT_UD h2 {
	margin-bottom: 2.6em;
}

#ICT_UD article article {
	box-sizing: border-box;
	width: 80%;
	margin: 2em auto 0;
	padding: 0 7%;
	border-left: 1px solid #000;
	border-right: 1px solid #000;
}

#ICT_UD article article h3 {
	padding: 0.4em 0.2em;
	background: #333;
	text-align: center;
	font-family: inherit;
	font-size: 1em;
	font-weight: 800;
	color: #fff;
	margin: 6em 0 2em;
}
#ICT_UD article article h3::first-child {
	margin-top: 0em;
}
#ICT_UD article article h4 {
	width: 60%;
	padding: 0.2em;
	border-bottom: 2px dashed #333;
	text-align: left;
	font-family: inherit;
	font-size: 1em;
	font-weight: 800;
	margin: 2em 0 1.6em;
}
#ICT_UD article article h5 {
	text-align: left;
	font-family: inherit;
	font-size: 1em;
	font-weight: 800;
	margin: 1em 0 1em;
}

#ICT_UD video {
	width: 100%;
	margin: 2em 0;
	padding: 0 10%;
}
#ICT_UD img {
	display: block;
	width: 100%;
	margin: 2em 0;
	padding: 0 10%;
}

#ICT_UD #event #event_outline {
	margin: 4em 0 0;
}
#ICT_UD #event #event_outline a.img_link_wrapper {
	text-align: center;
	padding: 0 0 2em;
}
#ICT_UD div.separater_zigzag {
	width: 40%;
	height: 3vw;
	margin: 1.6em auto 1.6em;
	background: url(img/separater_straight.svg) center/ contain no-repeat;
}

#ICT_UD table {
	width: 100%;
	margin: 2em auto;
	text-align: left;
	font-size: 0.8em;
	line-height: 1.8em;
}
#ICT_UD table th {
	text-align: center;
	padding: 0.4em 0.1em;
	border-top: 1px solid #333;
	border-bottom: 1px solid #333;
}
#ICT_UD table td {
	padding: 0.2em 0.1em; 
	vertical-align: top;
	border-bottom: 1px solid #333;
}
#ICT_UD table .col_head {
	width: 6em;
}
#ICT_UD table .col_data {
	width: 20%;
}
#ICT_UD table th.width30 {
	width: 30%;
}
#ICT_UD table th.width70 {
	width: 70%;
}
#ICT_UD table td.noborder {
	border-bottom: 0;
}
#ICT_UD table td img.library_photo {
	width: 90%;
	margin: 0.5em 10% 1em 0;
	padding: 0;
}