@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/


.sp_only {
	display: none !important;
}


#container #content, #main,
.container .content, .main {
background: none;
	margin-top: 0;
	margin-bottom: 0;
	padding: 0;
}
#container {
position: relative;
overflow: hidden;
}
.content {
position: relative;
	margin-top: 0;
	padding: 0;
}
.main {
position: relative;
background: none;
}

h2, h3, h4, h5, h6 {
	font-size: 120%;
	margin: 0;
	padding: 0;
	margin-bottom: 20px;
	line-height: 150%;
	background: none;
	border: none;
}
p {
	margin: 0;
	padding: 0;
	margin-bottom: 15px;
}
ul, ol {
margin-top: 0;
}
.entry-content h3, .entry-content h4, .entry-content h5,
.article h3, .article h4, .article h5 {
    margin: 0;
    margin-bottom: 20px;
    border: none;
    padding: 0;
}

/*ページの投稿日・更新日・著者情報を消す*/
.page .date-tags,
.page .author-info {
    display: none;
} 
/*エントリーカードカテゴリー名非表示*/
.cat-label {
    display: none;
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}
/*パンくず*/
#breadcrumb {
background: none;
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
body {
line-height: 160%;
}

div table th, div table td {
font-size: 1em;
}
.sp_only {
	display: inline;
}
.pc_only {
	display: none !important;
}

.content {
	margin: 0 1em;
}
#breadcrumb {
	display: none;
}

}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}



/************************************
** ヘッダー
************************************/
.head_flex {
display: flex;
justify-content: space-between;
align-items: center;
}
.head_left {
display: block;
width: 420px;
}
.head_right {
width: 100%;
}

#header-container {
position: relative;
	padding: 0;
	margin: 0 auto;
	z-index: 10000;
	box-shadow: 0 0 2px rgba(0,0,0,0.3);
}
#header-container-in {
	max-width: 1250px;
	padding: 10px 15px;
	margin: 0 auto;
}



#header-in {
	display: block;
	padding: 0 0;
	width: 420px;
}

@media screen and (max-width: 1023px){
#header-container {
display: none;
}
#header-in {
	display: block;
	padding: 0 0;
}
}



h1 {
	margin: 0;
	padding: 0;
}

h1.logo {
	display: inline-block;
	margin: 0;
	padding: 0;
}
h1.logo img {
	display: block;
	width: 100%;
	max-height: inherit !important;
}

img.site-logo-image{
	width: 220px !important;
	height: auto;
	max-height: inherit !important;
}
@media screen and (max-width: 1080px){
.head_left {
width: 200px;
}
img.site-logo-image{
margin-top: 5px;

margin-bottom: 5px;
	width: 200px !important;
}
}
@media screen and (max-width: 1023px){
img.site-logo-image{
	width: 200px !important;
	max-width: 80%;
vertical-align: middle;
	max-height: inherit !important;
}
}
@media screen and (max-width: 640px){
img.site-logo-image{
	width: 200px !important;
}
}

@media screen and (max-width: 480px){
img.site-logo-image{
max-width: 80%;
}
}




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


@media screen and (min-width: 1023px){
.navi-in{
display: inline-block;
float: right;
margin-top: 15px;
margin-right: 10px;
width: auto;
}
.navi-in > ul {
margin: 0;
}

.navi-in > ul li {
display: inline-block;
border-collapse: collapse;
  height: auto;
  width: auto;
  margin: 0 0;
  padding: 0;
  line-height: 130%;
  position: relative;
  font-weight: 400;
}
.navi-in > ul li a {
  display: block;
  padding: 0;
  margin: 0 0.5em;
  color: #000;
  font-size: 85%;
  text-align: center;
  height: auto;
}
.navi-in > ul li ul li a {
  padding: 0.75em 0.5em;
  text-align: left;
}
.navi-in > ul li:hover > ul {
  display: block;
}
.navi-in a:hover {
	text-decoration: none;
}
.navi-in .has-icon {
  display: none;
}
.navi-in > ul li a:hover {
	color: #F90;
	background: none;
}
.navi-in > ul li ul li {
display: block;
  height: auto;
  width: auto;
  min-width: 100%;
  line-height: auto;
	border-top: 1px dotted #CCC;
	font-weight: normal;
	letter-spacing: 0;
}
.navi-in > ul li ul li:last-child {
	border-bottom: 1px dotted #999;
}
}


.navi-in > ul .sub-menu {
  background-color: rgba(255,255,255,0.9);
	text-align: left;
}
.navi-in > ul .sub-menu a {
  padding-left: 10px;
  padding-right: 10px;
}

.navi-menu-button {
margin-top: 10px;
color: #555;
}
.navi-menu-button .navi-menu-icon.menu-icon {
font-size: 130%;
}




.head_top_contact {
float: right;
}

@media screen and (max-width: 1023px){
.head_top_contact {
display: none;
}
}



.head_top_contact {
position: relative;
float: right;
}

@media screen and (max-width: 1023px){
.head_top_contact {
display: none;
}
}

ul.head_contact {
	margin: 0;
	padding: 0;
}

ul.head_contact li {
line-height: 150%;
display: inline-block;
vertical-align: middle;
list-style: none;
	margin: 0;
	margin-left: 3px;
	padding: 0;
	white-space: nowrap;
}
ul.head_contact li.bt_top a {
	display: block;
	margin: 0;
	padding: 0.5em 1.5em;
	text-decoration: none;
	background-color: #F90;
	color: #FFF;
	font-size: 110%;
	text-align: center;
  border-radius: 30px;
	box-shadow: none;
}

ul.head_contact li.bt_top a:hover {
	text-decoration: none;
	background-color: #F60;
	box-shadow: 0 0 5px rgba(0,0,0,0.5);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}




/************************************
** フッター
************************************/
#footer {
	clear: both;
	display: block;
	margin: 0 auto;
	margin-top: 50px;
	padding: 0 0;
}
#footer-in {
	display: block;
	margin: 0 auto;
	padding: 50px 0;
	padding-top: 0;
text-align: center;
}

@media screen and (max-width: 1023px){
#footer {
	padding: 0 0;
	padding-top: 20px;
	margin-top: 0;
}
#footer-in {
	padding: 0;
	padding-bottom: 20px;
}
}
.foot_copy {
display: block;
padding: 1.5em 0.5em;
text-align: center;
color: #FFF;
line-height: 120%;
background-color: #000;
}
.copyright {
font-size: 80%;
}
@media only screen and (max-width: 834px) {
.copyright {
font-size: 70%;
}
#footer-in {
	padding: 0;
}

}

.footer-bottom-content {
float: none;
text-align: left;
}

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

.footmenu_box {
display: block;
width: 32%;
}
@media only screen and (max-width: 834px) {
.footer-bottom, .footer-bottom-content {
margin: 0;
padding: 0;
}
.flex_footmenu {
display: block;
}

.footmenu_box {
width: auto;
}
}



ul.foot_menu {
	margin: 0;
	padding: 0;
	font-size: 110%;
}
ul.foot_menu li {
display: block;
	vertical-align: top;
	list-style: none;
	margin: 0;
	margin-bottom: 5px;
	padding: 0;
	font-size: 100%;
	font-weight: 600;
}
ul.foot_menu li a {
position: relative;
	display: block;
	padding: 0 1em;
	padding-left: 1.2em;
	color: #000;
	text-decoration: none;
}
ul.foot_menu li a:before {
position: absolute;
  content: '\f105';
  font-family: "Font Awesome 5 Free";
 font-weight: 900;
 color: #F90;
 margin-left: -1.2em;
}

ul.foot_menu li a:hover {
	color: #CCC;
	text-decoration: underline;
}


ul.foot_menu li ul {
	margin: 0;
	margin-left: 20px;
	padding: 0;
}
ul.foot_menu li ul li {
	margin: 0;
	padding: 0;
	font-size: 90%;
	font-weight: 400;
}

ul.foot_menu li ul li a:before {
position: absolute;
  content: '\f101';
 font-weight: 900;
 color: #CCC;
}

@media only screen and (max-width: 834px) {
ul.foot_menu li {
	border-bottom: 1px dotted #CCC;
	margin-bottom: 0;
}
ul.foot_menu li a {
	padding: 0.75em 1em;
	padding-left: 2em;
}
ul.foot_menu li a:hover {
	color: #090;
	background-color: #EEE;
	text-decoration: none;
}
ul.foot_menu li a:before {
 margin-left: -1em;
}
ul.foot_menu li ul {
	margin: 0;
	border-top: 1px dotted #CCC;
}
ul.foot_menu li ul li {
display: inline-block;
	margin: 0;
	padding: 0;
	border: none;
}
ul.foot_menu li ul li a {
	padding: 0.75em 2em;
	padding-left: 2.5em;
}
ul.foot_menu li ul li a:before {
position: absolute;
margin-left: -1em;
}
}



/** フッター概要
************************************/

.foot_gray {
display: block;
background-color: #F5F5F5;
padding: 3em 0;
}

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

.foot_add {
order: 1;
position: relative;
overflow: hidden;
display: block;
width: 32%;
font-size: 80%;
}

.foot_add h5 {
font-weight: 600;
font-size: 150%;
margin-bottom: 10px;
}

.foot_map {
order: 2;
position: relative;
display: block;
width: 65%;
    padding-bottom: 350px;
    height: 0;
    overflow: hidden;
}

.foot_map iframe {
    position: absolute;
	top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 1023px){
.foot_gray {
padding: 0;
}
.foot_gray .content {
padding: 0;
margin: 0;
}

.footer_flex {
display: block;
}

.foot_add {
width: auto;
padding: 1.5em;
}
.foot_add p {
text-align: center;
}

.foot_add h5 {
font-size: 130%;
}
.foot_map {
width: 100%;
    padding-bottom: 250px;
}
}



.logo-footer {
width: 220px;
margin-bottom: 0;
}
.logo.logo-footer.logo-image {
margin: 0;
padding: 0;
}
.logo-footer img {
display: block;
max-width: 100%;
width: auto;
height: auto;
margin: 0;
padding: 0;
}
@media screen and (max-width: 1023px){
.logo-footer {
display: block !important;
margin: 0 auto !important;
padding: 0;
max-width: 460px;
}
.logo-footer img {
margin: 0 auto;
padding: 0;
}
}
@media screen and (max-width: 640px){
.logo-footer {
max-width: 420px;
}
}
@media screen and (max-width: 480px){
.logo-footer {
max-width: 80%;
}
}

ul.list_group {
margin: 0;
padding: 0;
}
ul.list_group li {
position: relative;
display: block;
margin-bottom: 0.5em;
color: #000;
margin: 0;
padding: 0;
padding-left: 1.2em;
}
ul.list_group li:before {
position: absolute;
  content: '\f14a';
  font-family: "Font Awesome 5 Free";
  margin-left: -1.2em;
 font-weight: 400;
 color: #F90;
}
ul.list_group li a {
color: #000;
text-decoration: none;
}
ul.list_group li a:hover {
color: #F90;
text-decoration: underline;
}

@media screen and (max-width: 1023px){
ul.list_group {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
ul.list_group li {
display: inline-block;
min-width: 25%;
margin-bottom: 10px;
}
}



/************************************
** タイトル
************************************/
#title {
position: relative;
z-index: -1;
	background-image: url(../../uploads/2022/08/title.jpg);
	background-size: cover;
	background-position: top right;
	clear: both;
	display: block;
	margin: 0 auto;
	margin-bottom: 0;
}
.title {
position: relative;
	display: block;
	width: 1200px;
	height: 320px;
	margin: 0 auto;
color: #FFF;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.95),0 0 5px rgba(0,0,0,0.95);
}

.title_txt {
	position: absolute;
	top: 50%;
	left: 2%;
	transform: translateY(-50%);
}

.title_txt p {
font-weight: 400;
	font-size: 160%;
	margin: 0;
	padding: 0;
}
.title_txt h2 {
font-weight: 400;
	font-size: 240%;
	margin: 0;
	padding: 0;
}

@media screen and (max-width: 1023px){
.title {
	width: auto;
	padding: 10px;
}
}

@media screen and (max-width: 834px){
#title {
	margin-bottom: 20px;
}
.title {
	width: auto;
	padding: 10px;
	height: 280px;
}
.title_txt h2 {
	font-size: 180%;
}
.title_txt p {
	font-size: 130%;
}
}
@media screen and (max-width: 640px){
.title {
	height: 240px;
}
}



/************************************
** メイン
************************************/
#main_head {
	position: relative;
	display: block;
	margin: 0 auto;
	width: 100%;
	margin-bottom: 50px;
	height: 65vh;
	overflow: hidden;
}
@media screen and (max-width: 834px){
#main_head {
	margin-bottom: 30px;
}
}
.n2-ss-slide-backgrounds {
height: 65vh;

}
.main_slide {
	position: relative;
	display: block;
	height: auto;
}





/************************************
** ページ全体
************************************/

main .content {
margin: 0;
padding: 0 1.5em
}
@media screen and (max-width: 834px){
main .content {
padding: 0 0.5em
}
}

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

.top_content {
margin-bottom: 80px;
}
@media screen and (max-width: 834px){
.top_content {
margin-bottom: 40px;
}
}

/** 見出し
************************************/

h3.top_title {
font-size: 36px;
font-weight: 900;
letter-spacing: 0.2em;
margin-bottom: 30px;
}
h4.top_title {
font-weight: 400;
font-size: 280%;
}
h5.top_title {
font-weight: 400;
font-size: 160%;
margin-bottom: 5px;
}
@media screen and (max-width: 834px){
h3.top_title {
font-size: 28px;
margin-bottom: 15px;
}
h4.top_title {
font-size: 200%;
}
h5.top_title {
font-size: 130%;
}
}


h3.title_top_concept {
font-size: 480%;
text-align: center;
font-weight: 300;
line-height: 110%;
margin-bottom: 50px;
  color: #7099a5;
}
h3.title_top_concept .sub {
display: block;
font-size: 40%;
line-height: 120%;
}

p.txt_concept {
text-align: center;
font-weight: 300;
line-height: 280%;
margin-bottom: 30px;
  color: #666;
}
p.txt_concept.bigtext {
font-size: 110%;
  color: #7099a5;
}

h4.title_top_access {
font-weight: 300;
font-size: 280%;
  color: #FFF;
}

h4.title_top_kanri {
position: relative;
font-size: 130%;
text-align: center;
font-weight: 300;
line-height: 110%;
margin-bottom: 50px;
}
h4.title_top_kanri:before {
  position: absolute;
  bottom: -15px;
  left: calc(50% - 30px);
  width: 60px;
  height: 1px;
  content: '';
  background: #FFF;
}
h5.title_top_kanri {
position: relative;
font-size: 110%;
text-align: center;
font-weight: 300;
line-height: 160%;
margin-bottom: 30px;
}


/** お知らせ
************************************/

dl.list_top_news {
	margin: 0;
	margin-bottom: 20px;
	padding: 0;
border-bottom: 1px dotted #CCC;
}
dl.list_top_news dt {
clear: both;
float: left;
margin: 0;
padding: 1em 1em;
width: 140px;
border-top: 1px dotted #CCC;
}
dl.list_top_news dd {
margin: 0;
margin-left: 140px;
padding: 1em 1em;
border-top: 1px dotted #CCC;
}

.list_top_news a {
color: #000;
text-decoration: none;
}
.list_top_news a:hover {
color: #F90;
}

.list_top_news p {
margin: 0;
}
@media screen and (max-width: 834px){
dl.list_top_news {
	margin-bottom: 20px;
border-bottom: 1px dotted #CCC;
}
dl.list_top_news dt {
float: none;
margin: 0;
padding-bottom: 0.15em;
width: auto;
font-weight: 600;
border-top: 1px dotted #CCC;
}
dl.list_top_news dd {
margin-left: 0;
padding-top: 0;
border-top: none;
}
}


.bt_top_oshirase {
display: inline-block;
}

.bt_top_oshirase a {
display: block;
background-color: #FFF;
color: #000;
border: 2px solid #000;
font-weight: 600;
font-size: 110%;
padding: 0.75em 2em;
border-radius: 30px;
text-decoration: none;
}
.bt_top_oshirase a:hover {
background-color: #EEE;
color: #F90;
	-webkit-transition: all 0.7s;
	-moz-transition: all 0.7s;
	transition: all 0.7s;
}

@media screen and (max-width: 834px){
.bt_top_oshirase a {
font-size: 100%;
padding: 0.5em 2em;
}
}


/** よよこ〜のはじまり
************************************/


.top_profile_wrap {
display: flex;
align-items: center;
justify-content: space-between;
}
.top_profile_left,
.top_profile_right {
display: block;
width: 45%;
}

.top_profile_right {
order: 2;
}

.top_profile_pic {
position: relative;
  display: block;
  height: 0;
  padding-bottom: 130%;
  overflow: hidden;
  border-radius: 30px;
  background: #CCC;
 }
  .top_profile_pic img {
	position: absolute;
	object-fit: cover;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
  width: 100%;
  height: 100%
 }
 
@media screen and (max-width: 834px){
.top_profile_wrap {
display: block;
margin-bottom: 40px;
}
.top_profile_left,
.top_profile_right {
width: auto;
}
.top_profile_pic {
  padding-bottom: 100%;
  margin-bottom: 15px;
}
}

.top_profile_left h4 {
text-align: center;
font-size: 38px;
font-weight: 900;
}
@media screen and (max-width: 834px){
.top_profile_left h4 {
font-size: 28px;
}
}
@media screen and (max-width: 480px){
.top_profile_left h4 {
font-size: 23px;
}
}
@media screen and (max-width: 360px){
.top_profile_left h4 {
font-size: 21px;
}
}
 

/** 連絡掲示板 / ダウンロード
************************************/



ul.list_top_main_bt {
margin: 0;
padding: 0;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
	justify-content: center;
}
ul.list_top_main_bt li {
position: relative;
display: inline-block;
width: calc(100% / 2 - 4px);
text-align: center;
border-left: 2px dotted #333;
}
ul.list_top_main_bt li:last-child {
border-right: 2px dotted #333;
}
ul.list_top_main_bt li a {
display: block;
padding: 3em 2.5em;
color: #000;
text-decoration: none;
}
.list_top_main_bt h4 {
font-size: 200%;
font-weight: 900;
}
@media screen and (max-width: 834px){
ul.list_top_main_bt {
margin: 0;
padding: 0;
    display: block;
}
ul.list_top_main_bt li {
display: block;
width: auto;
border-left: none;
border-top: 2px dotted #333;
}
ul.list_top_main_bt li:last-child {
border-right: none;
border-bottom: 2px dotted #333;
}
ul.list_top_main_bt li a {
padding: 1.5em 0;
}
.list_top_main_bt h4 {
font-size: 180%;
}
}


ul.list_top_main_bt li a:hover {
color: #F90;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}

ul.list_top_main_bt li a i {
position: absolute;
color: #CCC;
font-size: 150%;
right: 20px;
bottom: 10px;
}
ul.list_top_main_bt li a:hover i {
color: #09F;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}



/** 学校案内
************************************/

.top_annnai_wrap {
position: relative;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
.top_annnai_wrap::after{
  content:"";
  display: block;
  width:22%;
}
.top_annnai_wrap_in {
position: relative;
display: block;
width: 22%;
margin: 0;
margin-bottom: 20px;
}

@media screen and (max-width: 1023px){
.top_annnai_wrap {
margin: 0 -1em;
margin-bottom: 80px;
}
.top_annnai_wrap_in {
margin: 10px 1em;
margin-bottom: 20px;
}
}


.top_annnai_wrap {
margin-top: 0;
}
.top_annnai_wrap h4 {
font-weight: 900;
font-size: 20px;
text-align: center;
margin-bottom: 10px;
}
.top_annnai_wrap p {
color: #555;
margin-bottom: 0;
}


.top_annnai_pic {
position: relative;
  display: block;
  height: 0;
  padding-bottom: 100%;
  overflow: hidden;
  border-radius: 30px;
  margin-bottom: 5px;
  margin-bottom: 10px;
 }
 .top_annnai_pic img {
	position: absolute;
	object-fit: cover;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
  width: 100%;
  height: 100%
 }
 .top_annnai_pic p {
 position: absolute;
  display: none;
  margin: 0;
  text-align: center;
  font-weight: 600;
  text-decoration: none;
width: 100%;
padding: 1em;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
 }

@media screen and (max-width: 1023px){
.top_annnai_pic p {
padding: 0.5em;
}
}

a:hover .top_annnai_pic {
box-shadow: 0 0 10px rgba(255,153,0,0.7);
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
 }

a:hover .top_annnai_pic img {
opacity: 0.1;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
 }
 
a:hover .top_annnai_pic p {
  display: block;
  color: #555;
 }



/** トピックス
************************************/

.top_topics_wrap {
display: flex;
justify-content: space-between;
}
.top_topics_in {
display: block;
width: 30%;
}
@media screen and (max-width: 1023px){
.top_topics_wrap {
margin: 0 -1em;
}
.top_topics_in {
margin: 10px 1em;
margin-bottom: 20px;
}
}
.top_topics_wrap {
margin-top: 0;
}
.top_topics_wrap h4 {
font-weight: 900;
font-size: 20px;
text-align: center;
margin-bottom: 10px;
}


/********* プライバシーポリシー ***********************************************/

dl.privacy {
	display: block;
	margin: 0;
	padding: 0;
}
.privacy dt {
	margin: 0;
	padding: 0;
}
.privacy dd {
	margin: 0;
	margin-bottom: 20px;
	padding: 10px;
	border-bottom: 1px dotted #CCC;
}
.privacy ul {
	padding: 0;
	margin: 20px;
	margin-top: 0;
}
@media screen and (max-width: 834px){
.privacy dt {
	font-size: 110%;
}
.privacy dd {
	padding: 10px;
	padding-top: 0;
}
}





/**会社概要
************************************/
table.table_company {
table-layout: fixed;
width: 100%;
background: none;
border: none;
}
table.table_company tr, table.table_company th, table.table_company td {
background: none;
border: none;
margin: 0;
padding: 0;
}
table.table_company th, table.table_company td {
margin: 0;
padding: 1em 1px;
vertical-align: top;
border-bottom: 1px dotted #CCC;
}
table.table_company th {
text-align: left;
width: 100px;
}
table.table_company td {
margin-bottom: 15px;
}

@media screen and (max-width: 834px){
table.table_company th, table.table_company td {
display: block;
padding: 0.5em 1em;
}
table.table_company th {
width: auto;
font-size: 110%;
}
table.table_company td {
border: none;
}
}




/************************************
** ページャー
************************************/

table.table_postnavi {
table-layout: auto;
width: auto;
margin: 0 auto;
padding: 0;
}
table.table_postnavi tr, table.table_postnavi th, table.table_postnavi td {
margin: 0;
padding: 0;
background: none;
border: none;
}
table.table_postnavi th {
font-weight: 400;
padding: 0 15px;
width: auto;
text-align: center;
white-space: nowrap;
}
table.table_postnavi th a {
padding: 15px;
}
table.table_postnavi td.left_post {
}
table.table_postnavi td.right_post {
text-align: right;
}






/************************************
** コンテンツ
************************************/

h3.title_content {
color: #333;
font-size: 160%;
font-weight: 400;
line-height: 150%;
margin-bottom: 20px;
  border-bottom: solid 3px #CCC;
  position: relative;
}
h3.title_content:first-letter {
  font-size: 1.3em;
color: #090;
}
h3.title_content:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #090;
  bottom: -3px;
  width: 20%;
}
h4.title_content {
color: #090;
font-size: 140%;
font-weight: 400;
line-height: 150%;
margin-bottom: 15px;
}


@media screen and (max-width: 834px){
h3.title_content {
font-size: 140%;
}
h3.title_content:first-letter {
  font-size: 1.3em;
}
h4.title_content {
font-size: 130%;
}
}


ul.bt_submenu {
	margin: 0;
	margin-bottom: 50px;
	padding: 0;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
	justify-content: space-between;
}

ul.bt_submenu li {
	display: inline-block;
	list-style: none;
	width: 30%;
	margin: 0 0.5%;
	margin-bottom: 10px;
	padding: 0;
	text-align: center;
	border-radius: 10px; 	
	box-shadow: 0 0 2px rgba(0, 0, 0, 0.29);
	
}
ul.bt_submenu li a {
  display: block;
  position: relative;
  font-weight: bold;
  text-decoration: none;
  background-color: #FFF;
  color: #F90;
  padding: 0.5em;
  border-radius: 10px; 	
  border: 2px solid #090;
}
ul.bt_submenu li a:hover {
  background-color: #090;
  color: #FFF;
	box-shadow: 2px 2px 5px rgba(0,0,0,0.5);
	opacity:0.70;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}
@media screen and (max-width: 834px){
ul.bt_submenu li {
	margin: 0 0.5%;
	width: 49%;
	margin-bottom: 5px;
}
}
@media screen and (max-width: 640px){
ul.bt_submenu {
display: block;
}
ul.bt_submenu li {
display: block;
	margin: 0 0.5%;
	width: auto;
	margin-bottom: 10px;
}
}

/************************************
** wrap
************************************/
.wrap_double {
display: flex;
justify-content: space-between;
}
.wrap_double_middle {
display: flex;
justify-content: space-between;
align-items: center;
}
.wrap_double_only {
display: flex;
justify-content: space-between;
}
.wrap_double_middle_only {
display: flex;
justify-content: space-between;
align-items: center;
}
.wrap_double_pic {
order: 2;
display: block;
width: 47.5%;
}
.wrap_double_txt {
order: 1;
width: 47.5%;
display: block;
}

.wrap_double_txt_half {
display: block;
width: 47.5%;
}
.wrap_double_txt_triple {
display: block;
width: 30%;
}
.wrap_double_middle_only_txt {
display: block;
width: 47.5%;
}
.wrap_double_txt_half_only {
display: block;
width: 47.5%;
}

.wrap_double_txt_triple_only {
display: block;
width: 47.5%;
}

@media screen and (max-width: 834px){
.wrap_double,
.wrap_double_middle,
.wrap_double_txt_triple {
display: block;
width: auto;
}
.wrap_double_pic {
display: block;
width: 80%;
margin: 0 auto;
margin-bottom: 15px;
}

.wrap_double_txt {
order: 1;
display: block;
width: auto;
}
.wrap_double_txt_half {
display: block;
width: auto;
}
}

.wrap_feature_pic {
order: 1;
display: block;
width: 25%;
}

.wrap_feature_txt {
order: 1;
display: block;
width: 70%;
}

@media screen and (max-width: 834px){
.wrap_feature_pic {
order: 1;
display: block;
max-width: inherit;
width: 70%;
margin: 0 auto;
margin-bottom: 20px;
}

.wrap_feature_txt {
order: 1;
display: block;
width: auto;
}
}


/************************************
** 連絡掲示板 / ダウンロード様式
************************************/

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

.box_secure {
position: relative;
display: block;
width: 47.5%;
background-color: #FFF;
border-top-left-radius: 20px;
box-shadow: 0 0 5px rgba(0,0,0,0.35);
padding: 1.5em 1.5em;
margin-bottom: 30px;
border-bottom: 5px solid #CCC;
}
.box_secure::after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 5px #F90;
  bottom: -5px;
  left: 0;
  width: 30%;
}
.box_secure_full {
position: relative;
display: block;
background-color: #FFF;
border-top-left-radius: 20px;
box-shadow: 0 0 5px rgba(0,0,0,0.35);
padding: 1.5em 1.5em;
margin-bottom: 30px;
border-bottom: 5px solid #CCC;
}
.box_secure_full::after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 5px #F90;
  bottom: -5px;
  left: 0;
  width: 30%;
}
@media screen and (max-width: 834px){
.box_secure_wrap {
display: block;
}

.box_secure {
display: block;
width: auto;
border: 5px solid #CCC;
padding: 1em 1em;
}
}
.box_secure h4 {
position: relative;
padding: 0.3em 1em;
padding-left: 2em;
font-size: 24px;
background-color: #DEC;
border-radius: 15px;
  box-shadow: 0px 0px 0px 5px #DEC;
  border: dashed 2px #FFF;
}
.box_secure h4:before {
position: absolute;
  content: '\f2c2';
  font-family: "Font Awesome 5 Free";
  margin-left: -1.2em;
 font-weight: 400;
 color: #F90;
}
.box_secure h4.icon_id:before {
  content: '\f2c2';
 font-weight: 400;
}
.box_secure h4.icon_pdf:before {
  content: '\f1c1';
 font-weight: 400;
}
.box_secure h4.icon_tel:before {
  content: '\f3cd';
 font-weight: 900;
}

.box_secure h5 {
position: relative;
padding-left: 1.5em;
font-size: 20px;
margin-bottom: 5px;
color: #F90;
}
.box_secure h5:before {
position: absolute;
  content: '\f549';
  font-family: "Font Awesome 5 Free";
  margin-left: -1.5em;
 font-weight: 400;
 color: #090;
}

p.p_lu {
margin-bottom: 5px;
color: #090;
font-weight: 600;
font-size: 80%;
}
p.p_lu span {
color: #000;
font-weight: 400;
}
.download-link {
position: relative;
padding-left: 1.2em;
color: #555;
text-decoration: none;
}
.download-link:before {
position: absolute;
  content: '\f35a';
  font-family: "Font Awesome 5 Free";
  margin-left: -1.2em;
 font-weight: 900;
 color: #090;
}




/************************************
** 学校生活
************************************/

h3.title_photo {
position: relative;
padding: 0.25em 0;
padding-left: 1.2em;
font-size: 24px;
border-bottom: 2px dotted #CCC;
}
h3.title_photo:before {
position: absolute;
  content: '\f030';
  font-family: "Font Awesome 5 Free";
  margin-left: -1.2em;
 font-weight: 400;
 color: #090;
}

h4.title_photo {
position: relative;
padding: 0.25em 0;
padding-left: 1.2em;
font-size: 24px;
border-bottom: 2px dotted #CCC;
}
h4.title_photo:before {
position: absolute;
  content: '\f030';
  font-family: "Font Awesome 5 Free";
  margin-left: -1.2em;
 font-weight: 400;
 color: #090;
}



.wrap_double_photo {
display: flex;
justify-content: space-between;
align-items: center;
}
.wrap_double_pic_left {
order: 1;
display: block;
width: 50%;
}
.wrap_double_pic_right {
order: 2;
display: block;
width: 50%;
}
.wrap_double_txt {
width: 47.5%;
display: block;
}
@media screen and (max-width: 834px){
.wrap_double_photo {
display: block;
}
.wrap_double_pic_left,
.wrap_double_pic_right {
display: block;
width: 100%;
margin: 0 auto;
margin-bottom: 10px;
}

.wrap_double_txt {
width: auto;
display: block;
margin-bottom: 20px;
}
}

.wrap_triple_photo {
display: flex;
justify-content: space-between;
}
.wrap_triple_photobox {
 width: 31.5%;
display: block;
}
.wrap_triple_photobox p {
margin-bottom: 0;
text-align: center;
font-size: 110%;
font-weight: 600;
}
@media screen and (max-width: 834px){
.wrap_triple_photo {
display: block;
}
.wrap_triple_photobox {
width: auto;
display: block;
margin-bottom: 20px;
font-size: 110%;
}
}

.youtube {
    position: relative;
	display: block;
	background: #CCC;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}
 
.youtube iframe {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

/*youtubeのサイズ変更*/
.video-container {
max-width: 100%;
margin: 0px auto;
}



/************************************
** アルバム
************************************/
ul.list_photo {
	margin: 0;
	padding: 0;
    display:flex;
	justify-content: space-between;
    flex-wrap:wrap;
}
ul.list_photo::before{
  content:"";
  display: block;
width: calc(100% / 3 - 10px);
  order:1;
}
ul.list_photo::after{
  content:"";
  display: block;
width: calc(100% / 3 - 10px);
}
ul.list_photo li {
	position: relative;
	display: inline-block;
width: calc(100% / 3 - 10px);
	margin: 0;
	padding: 0;
	border: 1px solid #CCC;
	background-color: #FFF;
	margin-bottom: 15px;
}
ul.list_photo li .inner {
padding: 0.5em;
}

@media screen and (max-width: 834px){
ul.list_photo::before{
width: calc(100% / 2 - 10px);
}
ul.list_photo::after{
width: calc(100% / 2 - 10px);
}
ul.list_photo li {
width: calc(100% / 2 - 10px);
}
}
@media screen and (max-width: 640px){
ul.list_photo {
    display: block;
}
ul.list_photo li {
    display: block;
	margin-bottom: 15px;
width: auto;
}
}
.box_photo {
position: relative;
display: block;
background-color: #F5F5F5;
height: 0;
padding-bottom: 67%;
overflow: hidden;
}
.box_photo img {
	position: absolute;
	object-fit: cover;
	width: 100%;
	height: 100%;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
}

p.photo_day {
margin-bottom: 0;
font-size: 80%;
text-align: right;
padding: 0.25em 1em;
margin-top: 0.5em;
}

/************************************
** 学校案内
************************************/


ul.list_childpage {
	margin: 0;
	padding: 0;
    flex-wrap: wrap; /* 画面幅に合わせてカラム落ちさせる */
    display: flex;
    justify-content: space-between;
    align-items: top
}
ul.list_childpage li {
	position: relative;
	list-style: none;
	display: block;
	width: 23%;
	margin: 0;
	margin-bottom: 20px;
	padding: 0;
	padding-bottom: 20px;
	border: 1px solid #CCC;
	background-color: #FFF;
}

ul.list_childpage:after {
    content: ' ';
    display: block;
    width: 23%;
}


ul.list_childpage li .inner {
padding: 5%;
}

ul.list_childpage li h5, ul.list_childpage li h5 a {
font-size: 110%;
font-weight: 600;
text-decoration: none;
color: #000;
margin-bottom: 10px;
    border: none;
}

@media screen and (max-width: 834px){
ul.list_childpage li {
	width: 48%;
	margin-bottom: 20px;
}
ul.list_childpage:after {
    width: 48%;
}
}

@media screen and (max-width: 520px){
ul.list_childpage {
    display: block;
}
ul.list_childpage li {
	width: auto;
	margin-bottom: 20px;
}
ul.list_childpage:after {
display: none;
}
}
.list_pic_childpage {
position: relative;
display: block;
height: 0;
padding-bottom: 100%;
overflow: hidden;
margin-bottom: 10px;
background-color: #CCC;
}
.list_pic_childpage img {
	position: absolute;
	object-fit: contain;
	width: 100%;
	height: 100%;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
}
.list_pic_childpage a img {
display: block;
}
	
.list_pic_childpage a:hover img {
	width: 150%;
	height: 150%;
    -webkit-transition: all 0.7s;
    -moz-transition: all 0.7s;
    transition: all 0.7s;
}

ul.list_childpage li .bt_more_block {
position: absolute;
bottom: 10px;
left: 15px;
width: 85%;
}
@media screen and (max-width: 834px){
ul.list_childpage li .bt_more_block {
}
}



.list_pic_blog {
position: relative;
display: block;
height: 0;
padding-bottom: 100%;
overflow: hidden;
margin-bottom: 10px;
}
.list_pic_blog img {
	position: absolute;
	object-fit: cover;
	width: 100%;
	height: 100%;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
}
.list_pic_blog a img {
display: block;
}
	
.list_pic_blog a:hover img {
	width: 150%;
	height: 150%;
    -webkit-transition: all 0.7s;
    -moz-transition: all 0.7s;
    transition: all 0.7s;
}


/************************************
** ごあいさつ / 建学の精神
************************************/

h4.title_greeting,
h4.title_kangaku,
h4.title_univercity,
h4.title_senmon,
h4.title_pdf {
position: relative;
font-size: 150%;
margin-bottom: 20px;
padding: 0;
padding-left: 1.5em;
}
h4.title_greeting:before,
h4.title_kangaku:before,
h4.title_univercity:before,
h4.title_senmon:before,
h4.title_pdf:before {
position: absolute;
  content: '\f007';
  font-family: "Font Awesome 5 Free";
margin-left: -1.5em;
 font-weight: 900;
 color: #090;
}
h4.title_kangaku:before {
  content: '\f549';
}
h4.title_univercity:before {
  content: '\f19c';
 font-weight: 900;
}
h4.title_senmon:before {
  content: '\f594';
 font-weight: 900;
}
h4.title_pdf:before {
  content: '\f1c1';
 font-weight: 400;
}

@media only screen and (max-width: 834px) {
h4.title_greeting,
h4.title_kangaku,
h4.title_univercity,
h4.title_senmon,
h4.title_pdf {
font-size: 140%;
}
}
p.person_greeting {
display: inline-block;
background-color: #F5F5F5;
color: #555;
padding: 0.5em 1em;
margin-bottom: 0;
}

.wrap_double_greeting {
display: flex;
justify-content: space-between;
align-items: center;
}
.wrap_greeting_pic {
order: 2;
display: block;
width: 28%;
}
.wrap_greeting_txt {
order: 1;
width: 65%;
display: block;
}

@media screen and (max-width: 834px){
.wrap_double_greeting {
display: block;
}
.wrap_greeting_txt {
width: auto;
}
.wrap_greeting_pic {
width: 75%;
margin: 0 auto;
margin-bottom: 15px;

}
}

ul.list_shinro {
margin: 0;
padding: 0;
display: flex;
flex-wrap: wrap;
}
ul.list_shinro li {
position: relative;
display: block;
list-style: none;
margin: 0;
margin-bottom: 5px;
padding: 0 1em;
padding-left: 1.5em;
}
ul.list_shinro li:before {
position: absolute;
  content: '\f138';
  font-family: "Font Awesome 5 Free";
margin-left: -1.5em;
 font-weight: 900;
 color: #F90;
}

.float_right_pic {
display: block;
float: right;
max-width: 47.5%;
margin-left: 1.5em;
margin-bottom: 1em;
}

@media screen and (max-width: 834px){
.float_right_pic {
display: block;
float: none;
margin: 0 auto;
margin-bottom: 20px;
max-width: 80%;
}
}
/************************************
** アクセス
************************************/


table.table_list_honbu {
table-layout: auto;
width: 100%;
margin: 0;
padding: 0;
border: none;
background: none;
}
table.table_list_honbu tr, table.table_list_honbu th, table.table_list_honbu td {
margin: 0;
padding: 0;
border: none;
background: none;
}
table.table_list_honbu th, table.table_list_honbu td {
border-top: 1px solid #CCC;
border-bottom: 1px solid #CCC;
padding: 18px 10px;
}

table.table_list_honbu th {
background-color: #F5F5F5;
min-width: 20%;
font-weight: 500;
}


.page_access_map {
position: relative;
display: block;
    padding-bottom: 400px;
    height: 0;
    overflow: hidden;
}

.page_access_map iframe {
    position: absolute;
	top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/************************************
** よくある質問
************************************/
.box_faq_wrap {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.box_faq {
position: relative;
display: block;
width: 47.5%;
background-color: #FFF;
border-top-left-radius: 20px;
box-shadow: 0 0 5px rgba(0,0,0,0.35);
padding: 1.5em 1.5em;
margin-bottom: 30px;
border-bottom: 5px solid #CCC;
}
.box_faq::after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 5px #F90;
  bottom: -5px;
  left: 0;
  width: 30%;
}



@media screen and (max-width: 834px){
.box_faq_wrap {
display: block;
}
.box_faq {
width: auto;
}
}

dl.faq {
margin: 0;
padding: 0;
}
.faq dt {
	position: relative;
	display:block;
margin: 0;
margin-bottom: 10px;
padding: 0.2em;
padding-left: 2em;
padding-right: 2em;
color: #555;
  }

.faq dt:before {
position: absolute;
  content: '\f007';
  font-family: "Font Awesome 5 Free";
 font-weight: 900;
	margin-left: -1.5em;
	font-size: 150%;
	color: #CCC;
}
.faq dt:after {
position: absolute;
  content: '\f067';
  font-family: "Font Awesome 5 Free";
 font-weight: 900;
	right: 0;
	top: 0;
	font-size: 150%;
	color: #090;
}
.faq dt.active:after {
position: absolute;
  content: '\f2d1';
  font-family: "Font Awesome 5 Free";
 font-weight: 900;
	font-size: 150%;
	color: #777;
}


dl.faq dd {
	position: relative;
	display:none;
margin: 0;
margin-bottom: 15px;
background-color: #F5F5F5;
padding: 1em 2em;
padding-left: 2.5em;

}
dl.faq dd:before {
position: absolute;
  content: '\f02d';
  font-family: "Font Awesome 5 Free";
 font-weight: 900;
	margin-left: -1.2em;
	font-size: 150%;
	color: #090;
}



/************************************
** リンク
************************************/



ul.list_link {
margin: 0;
padding: 0;
}
ul.list_link li {
display: block;
list-style: none;
margin: 0;
margin-bottom: 10px;
padding: 0;
line-height: 150%;
font-size: 120%;
}

ul.list_link li a {
position: relative;
display: block;
padding-left: 1.5em;text-decoration: none;
}
ul.list_link li a:before {
position: absolute;
  content: '\f35d';
  font-family: "Font Awesome 5 Free";
  margin-left: -1.5em;
 font-weight: 900;
 color: #555;
}



/************************************
** 新着情報
************************************/



article.entry-card {
border-bottom: 10px #EEE solid;
padding-bottom: 15px;
margin-bottom: 30px;
}

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

.wrap_newslist_pic {
order: 2;
display: block;
width: 35%;
}
.wrap_newslist_txt {
order: 1;
display: block;
width: 60%;
}

@media only screen and (max-width: 834px) {
.wrap_newslist {
display: block;
}

.wrap_newslist_pic {
width: auto;
margin: 0 auto;
margin-bottom: 10px;
}
.wrap_newslist_txt {
width: auto;
}
}
.eye-catch-wrap {
margin: 0 auto;
background-color: #F5F5F5;
margin-bottom: 30px;
max-height: 600px;
}
.eye-catch {
display: block;
margin: 0 auto;
}
.eye-catch img {
display: block;
margin: 0 auto;
max-width: 100%;
width: auto;
height: auto;
max-height: 600px;
}



p.daytime {
display: inline-block;
margin-right: 5px;
}
.tag_new {
	display: inline-block;
	margin: 0;
	font-size: 80%;
	padding: 5px 10px;
	background-color: #F00;
	color: #FFF;
	text-align: center;
	line-height: 100%;
}



.title_entry {
display: block;
margin-bottom: 20px;
border-bottom: 1px dotted #999;
}

.title_entry p {
margin-bottom: 0;
}

.title_entry h3,
.title_entry h4  {
position: relative;
font-size: 150%;
margin-bottom: 10px;
padding: 0;
padding-left: 1.2em;
}
.title_entry h3:before,
.title_entry h4:before {
position: absolute;
  content: '\f138';
  font-family: "Font Awesome 5 Free";
margin-left: -1.2em;
 font-weight: 900;
 color: #090;
}
.title_entry h3 a,
.title_entry h4 a {
color: #000;
text-decoration: none;
}
@media only screen and (max-width: 834px) {
.title_entry h3,
.title_entry h4 {
font-size: 140%;
}
}



.tag_category {
display: inline-block;
white-space: nowrap;
font-size: 80%;
}

.tag_category a {
display: block;
background-color: #232e87;
color: #FFF;
padding: 0 10px;
padding-top: 2px;
text-decoration: none;
}
.tag_category a:hover {
background-color: #999 !important;
color: #000;
}

.bt_top_news {
display: inline-block;
position: relative;
margin: 0.5em;
}
.bt_top_news a {
position: relative;
z-index: 10;
display: block;
padding: 0.5em 3em;
border: 1px solid #2d6595;
color: #2d6595;
background-color: #FFF;
text-decoration: none;
border-radius: 30px;
}
.bt_top_news a:after {
position: absolute;
  content: '\f054';
  font-family: "Font Awesome 5 Free";
  margin-left: -1em;
 font-weight: 900;
 right: 1em;
}
.bt_top_news a:hover {
background-color: #2d6595;
border: 1px solid #2d6595;
color: #FFF;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
}
.bt_top_news a:after:hover {
position: absolute;
 right: 0.25em;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
}
@media screen and (max-width: 834px){
.bt_top_news {
display: block;
margin: 0.5em 1em;
text-align: center;
}
.bt_top_news a {
position: relative;
z-index: 10;
display: block;
padding: 0.5em 0.5em;
}
}
@media screen and (max-width: 480px){
.bt_top_news {
margin: 0.5em 1em;
}
}




/************************************
** フォーム
************************************/


.input-mini { width:100px !important }
.input-small { width: 30% !important; display: inline-block; }
.input-medium { width: 50% !important }
.input-large { width: 100% !important }
.input-xlarge { width: 100% !important }
.input-xxlarge { width: 100% !important }

@media screen and (max-width: 834px){
.input-small { width: 50% !important }
.input-medium { width: 98% !important }
.input-large { width: 98% !important }
.input-xlarge { width: 98% !important }
}

table.form_table {
table-layout: fixed;
width: 100%;
background: none;
border: none;
border-bottom: 1px solid #CCC;
margin-bottom: 30px;
}
table.form_table tr, table.form_table th, table.form_table td {
background: none;
border: none;
margin: 0;
padding: 0;
}
table.form_table th, table.form_table td {
border-top: 1px solid #CCC;
margin: 0;
padding: 1.5em 2em;
vertical-align: middle;
}
table.form_table th {
vertical-align: top;
border-color: #2d6595;
padding: 1em;
color: #2d6595;
width: 280px;
text-align: left;
font-size: 110%;
}

@media screen and (max-width: 834px){
table.form_table th, table.form_table td {
display: block;
padding: 0.5em 1em;
}
table.form_table th {
width: auto;
font-size: 110%;
padding-bottom: 0;
}
table.form_table td {
border: none;
padding-top: 0;
}
}



table.form_table p {
	margin: 0;
	padding: 0;
}



 .hissu {
	border-radius: 0;
	font-size: 70%;
	line-height: 100%;
	padding: 5px 5px;
	margin-left: 10px;
	text-decoration:none;
	display:inline-block;
	color: #FFF !important;
	background-color: #C00;
	font-weight: 400;
	margin-top: -10px;
}

select,textarea,input[type="text"],input[type="email"],input[type="tel"],input[type="datetime"],input[type="datetime-local"],input[type="date"] {
	display:inline-block;
	margin: 5px;
	width: auto;
	min-width: inherit;
  border-radius:0;
}


select{
  -webkit-appearance:none;
    appearance:none;
  width:100%;
  padding: 0.65em 1em;
padding-right: 30px;
  box-sizing:border-box;
  border:#ccc 1px solid;
  border-radius:0;
  background:#fff;
}

.selectbox {
display: inline-block;
margin:0;
position:relative;
}
.selectbox::after{
  content:"";
  display:block;
  width:5px;
  height:5px;
  position:absolute;
  right:10%;
  top:45%;
  border-bottom:#333 2px solid;
  border-right:#333 2px solid;
  transform:rotate(45deg)translateY(-30%);
}

.selectbox_souba {
position:relative;
display: block;
margin:0;
margin-bottom: 0;
}

.selectbox_souba select{
  width: 98%;
  padding: 0.65em 1em;
  box-sizing:border-box;
  border:#ccc 1px solid;
  border-radius:0;
  background:#edeceb;
}

.selectbox_souba::after{
  content:"▼";
  display:block;
  position:absolute;
  right:0;
  top: 5px;
  padding: 0.4em 1em;
  background-color: #f19ba5;
  color: #FFF;
}

select,textarea,input[type="text"],input[type="email"],input[type="tel"],input[type="datetime"],input[type="datetime-local"],input[type="date"] {
	display:inline-block;
	margin: 5px;
	width: auto;
	min-width: inherit;
  border-radius:0;
}

.box_mitsumorisousa input[type="text"], .box_mitsumorisousa input[type="email"], .box_mitsumorisousa input[type="tel"] {
	display:block;
	width: 98%;
}


.btn {
	background-color:#F90;
}
.btn:hover {
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	opacity: 0.7;
}
.btn-primary{
	color:#FFF !important;
	background-color:#F00 !important;
}



/************************************
** ボタン
************************************/

.bt_center {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	margin-bottom: 20px;
}
a .bt_center {
	display: block;
}
a:hover .bt_center  {
	box-shadow: 2px 2px 5px rgba(0,0,0,0.5);
	opacity:0.70;
	background-color: #F00;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}




.bt_more_block {
display: block;
vertical-align: top;
list-style: none;
margin: 5px;
padding: 0;
text-align: center;
line-height: 130%;
}
.bt_more_block a {
position: relative;
display: block;
font-weight: 400;
padding: 0.5em 0.5em;
color: #FFF;
text-decoration: none;
background-color: #090;
border-radius: 50px;
}

.bt_more {
display: inline-block;
vertical-align: top;
list-style: none;
margin: 5px;
padding: 0;
text-align: center;
line-height: 130%;
}

.bt_more a {
position: relative;
display: block;
font-weight: 400;
padding: 0.5em 5em;
color: #FFF;
text-decoration: none;
background-color: #090;
border-radius: 50px;
}

.bt_more a:hover,
.bt_more_block a:hover {
color: #2d6595;
background-color: #c6d2dd;
box-shadow: 2px 2px 5px rgba(0,0,0,0.5);
    transition: all 0.3s;
}
.bt_more a:after,
.bt_more_block a:after {
position: absolute;
  content: '\f105';
  font-family: "Font Awesome 5 Free";
  right: 3em;
 font-weight: 900;
 color: #FFF;
}
.bt_more a:hover::after {
  right: 1em;
    transition: all 0.3s;
}
@media only screen and (max-width: 834px) {
.bt_more {
display: block;
margin: 5px;
}
.bt_more a {
font-weight: 600;
padding: 0.7em;
}
.bt_more a:after {
  right: 1em;
}
.bt_more a:hover::after {
  right: 0.2em;
}
}


.bt_blue {
display: inline-block;
vertical-align: top;
list-style: none;
margin: 5px;
padding: 0;
text-align: center;
line-height: 130%;
}

.bt_blue a {
position: relative;
display: block;
font-weight: 600;
padding: 5px 30px;
color: #FFF;
text-decoration: none;
background-color: #0168b7;
border-radius: 5px;
}

.bt_blue a:hover {
color: #FF0;
box-shadow: 2px 2px 5px rgba(0,0,0,0.5);
    transition: all 0.3s;
}
.bt_blue a:before {
position: absolute;
  content: '\f0da';
  font-family: "Font Awesome 5 Free";
  margin-left: -20px;
 font-weight: 400;
 font-size: 150%;
}
.bt_blue a:hover::before {
  margin-left: -10px;
  color: #FF0;
    transition: all 0.3s;
}

/************************************
** ボックス
************************************/


.box_white {
display: block;
vertical-align: top;
list-style: none;
background-color: #FFF;
margin: 0;
padding: 1.5em 2em;
border-radius: 15px;
margin-bottom: 30px;
}



.box_line_white {
position: relative;
display: block;
background-color: #FFF;
border-top-left-radius: 20px;
box-shadow: 0 0 5px rgba(0,0,0,0.35);
padding: 1.5em 1.5em;
margin-bottom: 30px;
border-bottom: 5px solid #CCC;
}
.box_line_white::after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 5px #F90;
  bottom: -5px;
  left: 0;
  width: 30%;
}



.box_gray {
display: block;
padding: 1.5em 2em;
background-color: #F5F5F5;
margin-bottom: 20px;
}

.box_shadow {
display: block;
padding: 1.5em 2em;
border-radius: 15px;
background-color: rgba(255,255,255, 0.5);
box-shadow: 0 0 5px rgba(0,0,0,0.5);
margin-bottom: 20px;
}
@media screen and (max-width: 834px){
.box_line_white {
padding: 1.5em;
margin-bottom: 15px;
}
.box_gray {
padding: 1.5em;
margin-bottom: 15px;
}
.box_shadow {
padding: 1.5em;
margin-bottom: 15px;
}
}

/************************************
** 画像
************************************/
.pic_left_page {
	float: left;
	display: inline-block;
	max-width: 43%;
	margin-right: 5%;
}
.pic_right_page {
	float: right;
	display: inline-block;
	max-width: 43%;
	margin-left: 5%;
}
.pic_right_page img, .pic_left_page img {
	display: block;
	margin: 0 auto;
	max-width: 100%;
}
@media only screen and (max-width: 834px) {
.pic_right_page, .pic_left_page {
	float: none;
	display: block;
	max-width: 100%;
	margin: 0 auto;
}
}

.imageright {
	float: right;
	margin-bottom: 20px;
	margin-left: 20px;
}
.imageright_pc {
	float: right;
	margin-bottom: 15px;
	margin-left: 15px;
	max-width: 50%;
}
@media screen and (max-width: 834px){
.imageright_pc {
float: none;
	max-width: 100%;
	display: block;
	margin: 0 auto;
	margin-bottom: 15px;
}
}

.imageleft {
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
}
.imagecenter {
	max-width: 100%;
	display: block;
	margin: 0 auto;
	margin-bottom: 15px;
}
.imagecenter00 {
	max-width: 100%;
	display: block;
	margin: 0 auto;
}
.pic_size {
	max-width: 80%;
	display: block;
	margin: 0 auto;
	margin-bottom: 15px;
}
/************************************
** 個別
************************************/


table.table_double {
table-layout: fixed;
margin: 0;
padding: 0;
border: none;
background: none;
width: 100%;
}
table.table_double tr, table.table_double th, table.table_double td {
margin: 0;
padding: 0;
background: none;
border: none;
}
table.table_double td:nth-child(odd) {
padding-right: 2%;
}
table.table_double td:nth-child(even) {
padding-left: 2%;
}
table.table_double td.w55 {
width: 55%;
}
table.table_double td.w60 {
width: 60%;
}
table.table_double td.w65 {
width: 65%;
}
table.table_double td.w70 {
width: 70%;
}
table.table_double td.w75 {
width: 75%;
}

@media screen and (max-width: 1023px){
table.table_double td.w55, table.table_double td.w60, table.table_double td.w65, table.table_double td.w70, table.table_double td.w75 {
width: 50%;
}
}
@media screen and (max-width: 834px){
table.table_double td {
display: block;
padding: 0;
margin-bottom: 20px;
}
table.table_double td:nth-child(odd) {
padding-right: 0;
}
table.table_double td:nth-child(even) {
padding-left: 0;
}
table.table_double td.w60, table.table_double td.w65, table.table_double td.w70, table.table_double td.w75 {
width: auto;
}
}


.right {
float: right;
}

.red {
color: #F00;
}
.pink {
color: #fc5987;
}
.yellow {
color: #f9d50b;
}
.blue {
color: #0168b7;
}

.green {
color: #53c0c7;
}
.navy {
color: #2f418f;
}
.pink02 {
color: #F9B;
}
.gold {
color: #eee06d;
}
.gray {
color: #555;
}
.wine {
color: #B07;
}

.lh200 {
line-height: 200%;
}

.f50 {
	font-size: 50%;
}
.f60 {
	font-size: 60%;
}
.f70 {
	font-size: 70%;
}
.f80 {
	font-size: 80%;
}
.f90 {
	font-size: 90%;
}
.f110 {
	font-size: 110%;
}
.f120 {
	font-size: 120%;
}
.f150 {
	font-size: 150%;
}
.f200 {
	font-size: 200%;
}

.f10 {
	font-size: 10px;
	line-height: 110%;
}
.f12 {
	font-size: 80%;
	line-height: 90% !important;
}




.mb001 {
	margin-bottom: 70px;
}

.t_center {
	text-align: center !important;
}
.t_center_pc {
	text-align: center;
}

.member_pic {
	width: 20%;
		margin-top: -10px;
}

@media only screen and (max-width: 834px) {
.t_center_pc {
	text-align: left;
}
.t_center_sp {
	text-align: center;
}
}
.t_left {
	text-align: left !important;
}
.t_right {
	text-align: right !important;
	}	





