@charset "utf-8";
/* ===============================================
# マージン
=============================================== */
.mt_00 {margin-top: 0px !important;}
.mt_05 {margin-top: 5px !important;}
.mt_10 {margin-top: 10px !important;}
.mt_15 {margin-top: 15px !important;}
.mt_20 {margin-top: 20px !important;}
.mt_25 {margin-top: 25px !important;}
.mt_30 {margin-top: 30px !important;}
.mt_35 {margin-top: 35px !important;}
.mt_40 {margin-top: 40px !important;}
.mt_45 {margin-top: 45px !important;}
.mt_50 {margin-top: 50px !important;}
.mt_55 {margin-top: 55px !important;}
.mt_60 {margin-top: 60px !important;}
.mt_70 {margin-top: 70px !important;}
.mt_75 {margin-top: 75px !important;}
.mt_80 {margin-top: 80px !important;}
.mt_85 {margin-top: 85px !important;}
.mt_90 {margin-top: 90px !important;}
.mt_95 {margin-top: 95px !important;}
.mt_100 {margin-top: 100px !important;}

.mb_00 {margin-bottom: 0px !important;}
.mb_05 {margin-bottom: 5px !important;}
.mb_10 {margin-bottom: 10px !important;}
.mb_15 {margin-bottom: 15px !important;}
.mb_20 {margin-bottom: 20px !important;}
.mb_25 {margin-bottom: 25px !important;}
.mb_30 {margin-bottom: 30px !important;}
.mb_35 {margin-bottom: 35px !important;}
.mb_40 {margin-bottom: 40px !important;}
.mb_45 {margin-bottom: 45px !important;}
.mb_50 {margin-bottom: 50px !important;}
.mb_55 {margin-bottom: 55px !important;}
.mb_60 {margin-bottom: 60px !important;}
.mb_70 {margin-bottom: 70px !important;}
.mb_75 {margin-bottom: 75px !important;}
.mb_80 {margin-bottom: 80px !important;}
.mb_85 {margin-bottom: 85px !important;}
.mb_90 {margin-bottom: 90px !important;}
.mb_95 {margin-bottom: 95px !important;}
.mb_100 {margin-bottom: 100px !important;}

.ml_05 {margin-left: 5px !important;}
.ml_10 {margin-left: 10px !important;}
.ml_15 {margin-left: 15px !important;}
.ml_20 {margin-left: 20px !important;}
.ml_25 {margin-left: 25px !important;}
.ml_30 {margin-left: 30px !important;}
.ml_35 {margin-left: 35px !important;}
.ml_40 {margin-left: 40px !important;}
.ml_45 {margin-left: 45px !important;}
.ml_50 {margin-left: 50px !important;}

.mr_05 {margin-right: 5px !important;}
.mr_10 {margin-right: 10px !important;}
.mr_15 {margin-right: 15px !important;}
.mr_20 {margin-right: 20px !important;}
.mr_25 {margin-right: 25px !important;}
.mr_30 {margin-right: 30px !important;}
.mr_35 {margin-right: 35px !important;}
.mr_40 {margin-right: 40px !important;}
.mr_45 {margin-right: 45px !important;}
.mr_50 {margin-right: 50px !important;}
/* ===============================================
# 幅指定
=============================================== */
.width_05 {width: 5%;}
.width_06 {width: 6%;}
.width_07 {width: 7%;}
.width_08 {width: 8%;}
.width_09 {width: 9%;}
.width_10 {width: 10%;}
.width_12 {width: 12%;}
.width_15 {width: 15%;}
.width_20 {width: 20%;}
.width_25 {width: 25%;}
.width_28 {width: 28%;}
.width_30 {width: 30%;}
.width_35 {width: 35%;}
.width_40 {width: 40%;}
.width_45 {width: 45%;}
.width_50 {width: 50%;}
.width_55 {width: 55%;}
.width_60 {width: 60%;}
.width_65 {width: 65%;}
.width_70 {width: 70%;}
.width_75 {width: 75%;}
.width_80 {width: 80%;}
.width_85 {width: 85%;}
.width_90 {width: 90%;}
.width_95 {width: 95%;}
.width_100 {width: 100%;}

.width_1em{width:1em;}
.width_2em{width:2em;}
.width_3em{width:3em;}
.width_4em{width:4em;}
.width_5em{width:5em;}
.width_6em{width:6em;}
.width_7em{width:7em;}
.width_8em{width:8em;}
.width_9em{width:9em;}
.width_10em{width:10em;}
.width_11em{width:11em;}
.width_12em{width:12em;}
.width_13em{width:13em;}
.width_14em{width:14em;}
.width_15em{width:15em;}
.width_16em{width:16em;}
.width_17em{width:17em;}
.width_18em{width:18em;}
.width_19em{width:19em;}
.width_20em{width:20em;}

@media print,screen and (min-width :769px){
  .width_05_pc {width: 5%;}
  .width_10_pc {width: 10%;}
  .width_15_pc {width: 15%;}
  .width_20_pc {width: 20%;}
  .width_25_pc {width: 25%;}
  .width_28_pc {width: 28%;}
  .width_30_pc {width: 30%;}
  .width_35_pc {width: 35%;}
  .width_40_pc {width: 40%;}
  .width_45_pc {width: 45%;}
  .width_50_pc {width: 50%;}
  .width_55_pc {width: 55%;}
  .width_60_pc {width: 60%;}
  .width_65_pc {width: 65%;}
  .width_70_pc {width: 70%;}
  .width_75_pc {width: 75%;}
  .width_80_pc {width: 80%;}
  .width_85_pc {width: 85%;}
  .width_90_pc {width: 90%;}
  .width_95_pc {width: 95%;}
  .width_100_pc {width: 100%;}
}
@media screen and (max-width :768px) {
  .width_05_sp {width: 5%;}
  .width_10_sp {width: 10%;}
  .width_15_sp {width: 15%;}
  .width_20_sp {width: 20%;}
  .width_25_sp {width: 25%;}
  .width_28_sp {width: 28%;}
  .width_30_sp {width: 30%;}
  .width_35_sp {width: 35%;}
  .width_40_sp {width: 40%;}
  .width_45_sp {width: 45%;}
  .width_50_sp {width: 50%;}
  .width_55_sp {width: 55%;}
  .width_60_sp {width: 60%;}
  .width_65_sp {width: 65%;}
  .width_70_sp {width: 70%;}
  .width_75_sp {width: 75%;}
  .width_80_sp {width: 80%;}
  .width_85_sp {width: 85%;}
  .width_90_sp {width: 90%;}
  .width_95_sp {width: 95%;}
  .width_100_sp {width: 100%;}  
}
/*
　背景色
-----------------------------------------------------------*/
.bgWhite {
	background-color:#FFF !important;
}

.bgGray01 {
	background-color:#666 !important;
}

.bgGray02 {
	background-color:#e6e6e6 !important;
}

.bgGray03 {
	background-color:#f5f5f5 !important;
}

.bgGray04 {
	background-color:#c0c0c0 !important;
}

.bgBlue01 {
	background-color:#e1ebf8 !important;
}

.bgBlue02 {
	background-color:#f5f9fd !important;
}

.bgBlue03 {
	background-color:#cee5fd !important;
}

.bgBlue04 {
	background-color:#3475d0 !important;
	color: #FFF !important;
}

.bgBlue05 {
	background-color:#d3e8fc !important;
}
.bgBlue06 {
	background-color:#e5eff9 !important;
}
.bgBlue07 {
	background-color:#fc98cc !important;
}
.bgBlue08 {
	background-color:#F00 !important;
}
.bgBlue09 {
  background-color:#dde7f7 !important;
}


img[loading="lazy"]{
  -webkit-animation: PageIn 0.7s ease 0s 1 normal;
  animation: PageIn 0.7s ease 0s 1 normal;
}
/*
テキスト
-----------------------------------------------------------*/
.textLeft {
	text-align:left !important;
}

.textCenter {
	text-align:center !important;
}

.textRight {
	text-align:right !important;
}

em,b,strong,
.textBold {
	font-weight:bold;
}
i {
  font-style: italic;
}
.textDecoration {
	text-decoration:underline;
}

.textlink {
  color: #014099;
	text-decoration:underline;
}
.textlink.nolink{
  color: inherit;
  pointer-events: none;
}

.textNormal {
	font-weight:normal;
}

.textSize75{
	font-size:75%;
}

.textSize80{
	font-size:80%;
}

.textSize85{
	font-size:85%;
}

.textSize90{
	font-size:90%;
}

.textSize110{
	font-size:110%;
}

.textSize125{
	font-size:125%;
}

.textSize140{
	font-size:140%;
}

.textSize200{
	font-size:200%;
}

.textBlue01 {
	color:#336699;
}

.textBlue02 {
	color:#0066cc;
}

.textBlue03 {
	color:#014099;
}

.textRed01 {
	color:#F00;
}

.textRed02 {
	color:#c90200;
}

.textBlack01 {
	color:#333;
}

.textOrange01 {
	color:#e98f01;
}

@media print,screen and (min-width :769px){
  .textCenter_pc{
    text-align: center;
  }
}
/*アイコン*/
.ico_link,
img[src*=".svg"].ico_link{
  margin-left: 13px;
  margin-right: 3px;
  vertical-align: middle;
  width: 18px;
}

@media screen and (max-width :768px){
  .ico_link,
  img[src*=".svg"].ico_link{
    width: 15px;
  }
}

/*注意書き*/
.cmn_caution{
  padding: 9px 0;
  color: #ff0033;
  font-weight: bold;
  font-size: 17px;
  font-size: 1.7rem;
  padding-left: 56px;
  background: url(/assets/img/ico_caution.svg)no-repeat left top;
  background-size: 38px auto;
  line-height: 1.3;
}
@media screen and (max-width :768px){
  .cmn_caution{
    padding: 3px 0;
    font-size: 15px;
    font-size: 1.5rem;
    padding-left: 33px;
    background-size: 26px auto;
  }
}
/* ===============================================
# フォント
=============================================== */
.en{
  font-family: 'Roboto Condensed',"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
/* ===============================================
# パンくず
=============================================== */
.cmn_topicpath{
  position: relative;
  z-index: 1;
  padding:17.5px 0;
  line-height: 1.2;
  font-size: 13px;
  font-size: 1.3rem;
  align-items: center;
  overflow-x: auto;
  overflow-y: hidden;
  background: #f5f9fd;
}
.cmn_topicpath .inner{

}
.cmn_topicpath ol{
  padding: 0 25px;
}
.cmn_topicpath li{
  padding-right: 10px;
  white-space: nowrap;
}
.cmn_topicpath li:nth-child(n+2){
  padding-left:18px;
  background: url(/assets/img/ico_arrow.svg) no-repeat 3px center;
  background-size:6px auto;
}
@media print,screen and (max-width :1300px){
  .cmn_topicpath{
    padding: 17.5px 0 17.5px 50px;
  }
  .cmn_topicpath ol{
    max-width: inherit;
  }
}
@media screen and (max-width :768px){
  .cmn_topicpath{
    padding:13px 15px 13px;
    font-size: 11px;
    font-size: 1.1rem;
    height: 38px;
  }
  .cmn_topicpath ol{
    padding:0;
  }
  .cmn_topicpath li:nth-child(n+2){
    padding-left:20px;
    background-size:9px auto;
  }
}
/* ===============================================
# ページタイトル
=============================================== */
.cmn_ttl_page {
  padding: 44px 0 28px;
  border-bottom: solid 1px #014099;
}
.cmn_ttl_page .ttl{
  font-size: 32px;
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1.3;
}
.cmn_ttl_page .sub{
  position: relative;
  margin-left: 12px;
  padding-left: 54px;
  font-size: 16px;
  font-size: 1.6rem;
  vertical-align: middle;
}
.cmn_ttl_page .sub:not(.block)::before{
  content: '';
  width: 37px;
  height: 37px;
  background:url(/assets/img/ico_ttl_slash.svg) no-repeat left center;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.cmn_ttl_page .sub.block{
  display: block;
  padding-left: 0;
  margin-left: 0;
  margin-top: 10px;
}

@media print,screen and (max-width :1024px){
  .cmn_ttl_page .sub{
    display: block;
    padding-left: 0;
    margin-left: 0;
    margin-top: 10px;
  }
  .cmn_ttl_page .sub:not(.block)::before{
    display: none;
  }
}
@media screen and (max-width :768px){
  .cmn_ttl_page {
    padding: 18px 75px 13px 0;
  }
  .cmn_ttl_page .ttl{
    font-size: 22px;
    font-size: 2.2rem;
  }
  .cmn_ttl_page .sub{
    font-size: 13px;
    font-size: 1.3rem;
  }
}


/* ===============================================
# アコーディオン
=============================================== */
.cmn_acd{
  margin-bottom: 10px;
}
.cmn_acd > .ttl{
  position: relative;
  padding: 9px 50px 9px 28px;
  background: #f5f9fd;
  color: #014099;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  border-left: solid 1px #b8cce1;
  border-right: solid 1px #b8cce1;
  border-top: solid 4px #98bbec;
  border-bottom: solid 3px #b8cce1;
  cursor: pointer;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.cmn_acd > .ttl::after{
  position: absolute;
  top: 50%;
  right:20px;
  margin-top: -13px;
  content: '';
  width: 26px;
  height: 26px;
  background: #014099 url(/assets/img/ico_plus.svg) no-repeat center center;
  background-size: 12px auto;
}
.cmn_acd > .ttl.open::after{
  background-image: url(/assets/img/ico_minus.svg);
}
.cmn_acd > .ttl:hover{
  background-color: #e0effd;
}

.cmn_acd > .item{
  display: none;
  padding:20px 4.3%;
  border: solid 1px #b8cce1;
}
/*.cmn_acd .item .cmn_ttl02{
  font-size: 20px;
  font-size: 2rem;
  padding: 12px 29px;
  margin-bottom: 10px;
}*/

@media screen and (max-width :768px){
  .cmn_acd{
    margin-bottom: 10px;
  }
  .cmn_acd > .ttl{
    padding: 23px 35px 23px 10px;
    line-height: 1.091;
    font-size: 15.5px;
    font-size: 1.55rem;
    border-top: solid 2.5px #98bbec;
    border-bottom: solid 2.5px #b8cce1;
  }
  .cmn_acd > .ttl::after{
    right:10px;
    margin-top: -10px;
    content: '';
    width: 20px;
    height: 20px;
    background-size:9px auto;
  }
  .cmn_acd > .item{
    padding:13px 3%;
  }
/*  .cmn_acd .item .cmn_ttl02{
    font-size: 16px;
    font-size: 1.6rem;
    padding: 12px 18px;
    margin-bottom: 8px;
  }*/
}
/* ===============================================
# アコーディオン2
=============================================== */
.cmn_acd2{
  margin-bottom: 10px;
}
.cmn_acd2 > .ttl{
  position: relative;
  padding: 9px 28px 9px 60px;
  color: #014099;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  border: solid 1px #014099;
  cursor: pointer;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.cmn_acd2 > .ttl::after{
  position: absolute;
  top: 50%;
  left:20px;
  margin-top: -13px;
  content: '';
  width: 26px;
  height: 26px;
  background: #014099 url(/assets/img/ico_plus.svg) no-repeat center center;
  background-size: 12px auto;
}
.cmn_acd2 > .ttl.open::after{
  background-image: url(/assets/img/ico_minus.svg);
}
.cmn_acd2 > .ttl:hover{
  background-color: #e0effd;
}

.cmn_acd2 > .item{
  display: none;
  padding:20px 30px;
}

@media screen and (max-width :768px){
  .cmn_acd2{
    margin-bottom: 10px;
  }
  .cmn_acd2 > .ttl{
    padding: 13px 10px 13px 40px;
    line-height: 1.091;
    font-size: 15.5px;
    font-size: 1.55rem;
  }
  .cmn_acd2 > .ttl::after{
    left:10px;
    margin-top: -10px;
    content: '';
    width: 20px;
    height: 20px;
    background-size:9px auto;
  }
  .cmn_acd2 > .item{
    padding:13px 3%;
  }

}
/* ===============================================
# ページ内リンク
=============================================== */
.cmn_anchor{
  font-size:0;
  margin-bottom: 30px;
}
.cmn_anchor li{
  display: inline-block;
  margin-bottom: 20px;
  font-size: 15px;
  font-size: 1.5rem;
  padding-left: 20px;
  background: url(/assets/img/ico_anchor.svg) no-repeat left top 8px;
  background-size: 10px 7px;
}
.cmn_anchor li:not(:last-child){
  margin-right: 50px;
}
.cmn_anchor li a{
  display: inline-block;
  border-bottom: solid 1px #014099;
}

.cmn_anchor.col1 li{
  display: block;
  margin-right: 0;
}

.frame_anchor {
	border: #1c499a 2px solid;
	padding: 20px;
	margin-bottom: 20px;
}
.list_anchor_down {
	width: 100%;
	overflow: hidden;
}
.list_anchor_down li {
	display: inline-block;
	background-image: url("/assets/img/ico_down_line.svg");
	background-position: 0px 10px;
	background-repeat: no-repeat;
	background-size: 13px auto;
	padding-left: 25px;
	box-sizing: border-box;
	width: 24%;
}
@media print,screen and (min-width :769px){
  .cmn_anchor.col2{
    display: -webkit-box;
    display: -ms-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
  }
  .cmn_anchor.col2 li{
    width: 48%;
    margin-left: 4%;
    margin-right: 0;
    background-position: left top 5px;
  }
  .cmn_anchor.col2 li:nth-child(odd){
    margin-left: 0;
  }
  .list_anchor_down.col2 {
    display: -webkit-box;
    display: -ms-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
  }
  .list_anchor_down.col2 li{
    width: 48%;
    margin-left: 4%;
    margin-right: 0;
    background-position: left top 5px;
  }
  .list_anchor_down.col2 li:nth-child(n+2) {
    margin-top: 5px;
  }
  .list_anchor_down.col2 li:nth-child(odd){
    margin-left: 0;
  }
}
@media screen and (max-width :768px){
  .cmn_anchor{
    margin-bottom:10px;
  }
  .cmn_anchor li{
    margin-bottom: 20px;
    font-size: 13px;
    font-size: 1.3rem;
    padding-left: 14px;
    background-size: 8px 5px;
  }
  .cmn_anchor li:not(:last-child){
    margin-right: 22px;
  }

  .cmn_anchor.col2 li{
    display: block;
    margin-right: 0;
  }

  .frame_anchor {
    padding: 15px 0px 15px 15px;
  }
  .list_anchor_down li {
    width: auto;
      margin-right: 25px;
  }
  .list_anchor_down.col2 {
    display: -webkit-box;
    display: -ms-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
  }
}
/* ===============================================
# 文字下げ枠
=============================================== */
.cmn_wrap{
  padding-left: 24px;
}
@media screen and (max-width :768px){
  .cmn_wrap{
    padding-left: 12px;
  }
}
/* ===============================================
# 本文
=============================================== */
.cmn_p{
  margin-bottom: 20px;
}

/* ===============================================
# 見出し
=============================================== */
/*大見出し*/
.cmn_ttl01{
  position: relative;
  margin-bottom: 20px;
  padding: 14px 25px 10px;
  color: #014099;
  font-size: 23px;
  font-size: 2.3rem;
  font-weight: bold;
  line-height: 1.3;
  background: #e5eff9;
  border-bottom: solid 2px #014099;
}
.cmn_ttl01::after{
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #fff;
}
.main_content .inner .cmn_ttl01:nth-of-type(n+2){
  margin-top: 60px;
}
@media screen and (max-width :768px){
  .cmn_ttl01{
    margin-bottom: 20px;
    padding: 16px 15px 12px;
    font-size: 17px;
    font-size: 1.7rem;

  }
  .main_content .inner .cmn_ttl01:nth-of-type(n+2){
    margin-top: 40px;
  }
}

/*中見出し*/
.cmn_ttl02{
  margin-bottom: 15px;
  padding: 5px 0 5px 16px;
  font-size: 21px;
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 1.3;
  color: #014099;
  border-left: solid 4px #014099;
}

@media screen and (max-width :768px){
  .cmn_ttl02{
    padding: 5px 0 5px 8.5px;
    font-size: 17px;
    font-size: 1.7rem;
    border-width: 3.5px;
  }
}

/*小見出し*/
.cmn_ttl03{
  margin-bottom: 10px;
  color: #014099;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.3;
}
.cmn_ttl03.large{
  font-size: 24px;
  font-size: 2.4rem;
}
.cmn_ttl03.black{
  color:#000;
}
@media screen and (max-width :768px){
  .cmn_ttl03{
    font-size: 16px;
    font-size: 1.6rem;
  }
  .cmn_ttl03.large{
    font-size: 17px;
    font-size: 1.7rem;
  }  
}

/*小見出し2*/
.cmn_ttl05{
  margin-bottom: 20px;
  color: #014099;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.3;
  padding-bottom: 3px;
  border-bottom: #CCC 1px dashed;
}
@media screen and (max-width :768px){
  .cmn_ttl05{
    font-size: 16px;
    font-size: 1.6rem;
  }
}

/*中見出し２*/
.cmn_ttl04{
  position: relative;
  color: #014099;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.3;
  text-align: center;
  margin-bottom: 20px;
}
.cmn_ttl04 .small{
  display: block;
  font-size: 17px;
  font-size: 1.7rem;
}
.cmn_ttl04::after{
  display: block;
  content: '';
  width: 40px;
  height: 4px;
  background: #014099;
  margin: 20px auto 0;
}
@media screen and (max-width :768px){
  .cmn_ttl04{
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 23px;
  }
  .cmn_ttl04::after{
    width: 30px;
    height: 3.4px;
    margin-top: 15px;
  }
}

/*タイトルフラグ*/
.cmn_ttl01 .flag,
.cmn_defList .flag,
.cmn_ttl02 .flag,
.cmn_acd2 .flag{
  width: 36px;
  margin-right: 5px;
  vertical-align: middle;
}
.cmn_acd2 .ttl .flag{
  float: right;
  margin-top: 5px;
}
.cmn_acd2 .ttl span{
  display: block;
}
.cmn_acd2 .ttl span::before{
  content: '';
  clear: both;
  display: block;
}
/* ===============================================
# 写真＋テキスト
=============================================== */
.cmn_textPhoto {
	width: 100%;
	overflow:hidden;
  margin-bottom: 30px;
}
.cmn_textPhoto figcaption{
  font-size: 15px;
  font-size: 1.5rem;
  color: #014099;
  font-weight: bold;
  margin-top: 10px;
  line-height: 1.3;
}
.cmn_textPhoto .text a{
  text-decoration: underline;
}

.cmn_textPhoto .photo iframe{
  width: 100%;
  height: auto;
}

.cmn_textPhoto .text .cmn_btn a{
  text-decoration: none;
}
.cmn_textPhoto figure img:nth-of-type(n+2){
  margin-top: 20px;
}
.cmn_textPhoto .photo.movie{
  width: 48.5%;
}
.cmn_textPhoto .photo.movie .area_iframe{
  padding-top: 56.25%;
  position: relative;
}
.cmn_textPhoto .photo.movie iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#cms_contener .cmn_textPhoto .photo img{
  width: auto !important;
}

@media print,screen and (min-width : 769px){
  .cmn_textPhoto .photo{
    float: left;
    max-width: 48.4%;
    margin-right:3.2%;
  }
  .cmn_textPhoto.right .photo{
    float: right;
    margin-right: 0;
    margin-left: 3.2%;
    }
  .cmn_textPhoto::after{
    clear: both;
    content:'';
    display: block;
  }
  .cmn_textPhoto .text{
    overflow: hidden;
    zoom: 1;
  }

  .cmn_textPhoto a.tellink{
    text-decoration: none;
    color: #000;
  }
}

@media screen and (max-width : 768px){
  .cmn_textPhoto{
    margin-bottom: 20px;
    display: -webkit-box;
    display: -ms-flex;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
  }
  .cmn_textPhoto .photo{
    float: none;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 20px;
    text-align: center;
  }
  .cmn_textPhoto.right .photo{
    -webkit-box-ordinal-group:3;
	  -ms-flex-order:2;
	  order:2;
    margin-bottom: 0;
    margin-top: 20px;
  }
  .cmn_textPhoto img{
    width: 100%;
  }
  .cmn_textPhoto.right img{
    -webkit-box-ordinal-group:2;
	  -ms-flex-order:1;
	  order:1;
  }
  .cmn_textPhoto figcaption{
    font-size: 11px;
    font-size: 1.2rem;
    margin-top: 5px;
    text-align: left;
  } /*動画*/
  .cmn_textPhoto .photo.movie{
    width: 100%;
  }
}

/* ===============================================
# layout
=============================================== */
.cmn_layout_col2_pc{
  width: 100%;
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
}
@media print,screen and (min-width : 835px){
  .cmn_layout_col2_pc >*{
    width: 49%;
    margin-left: 2%;
  }
  .cmn_layout_col2_pc >*:nth-child(2n+1){
    margin-left: 0;
  }
}
@media screen and (max-width: 834px) {
  .cmn_layout_col2_pc{
    display: block;
  }
  .cmn_layout_col2_pc >*:nth-child(n+2){
    margin-top: 30px;
  }
}

/* ===============================================
# ギャラリー
=============================================== */
.cmn_gallery{
  margin-bottom: 30px;
  text-align: center;
}
.cmn_gallery figure{
  display: inline-block;
  max-width: 100%;
  text-align: center;
}
.cmn_gallery figure > a{
  display: inline-block;
}
.cmn_gallery.left figure{
  display: block;
  text-align: left;
}
.cmn_gallery figcaption{
  margin-top: 10px;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.3;
  color: #014099;
  text-align: left;
}
.cmn_gallery figcaption.center{
  text-align: center;
}

.cmn_gallery.txtblack figcaption{
  color: #000;
  font-weight: normal;
}
.cmn_gallery.col3 figcaption,
.cmn_gallery.col4 figcaption,
.cmn_gallery.col5 figcaption{
  font-size: 13px;
  font-size: 1.3rem;
}
@media print,screen and (min-width :769px){
  .cmn_gallery:not(.col1){
    display: -webkit-box;
    display: -ms-flex;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  /*1列*/
  .cmn_gallery.col1 figure:nth-child(n+2){
    margin-top: 60px;
  }
  /*2列*/
  .cmn_gallery.col2 figure{
    width: 48.4%;
    margin-left: 3.1%;
  }
  .cmn_gallery.col2 figure:nth-child(n+3){
    margin-top: 25px;
  }
  .cmn_gallery.col2 figure:nth-child(2n+1){
    margin-left: 0;
  }
  /*3列*/
  .cmn_gallery.col3 figure{
    width: 31%;
    margin-left: 3.5%;
  }
  .cmn_gallery.col3 figure:nth-child(n+4){
    margin-top: 25px;
  }
  .cmn_gallery.col3 figure:nth-child(3n+1){
    margin-left: 0;
  }
  /*4列*/
  .cmn_gallery.col4 figure{
    width: 22.6%;
    margin-left: 3.2%;
  }
  .cmn_gallery.col4 figure:nth-child(n+5){
    margin-top: 25px;
  }
  .cmn_gallery.col4 figure:nth-child(4n+1){
    margin-left: 0;
  }
  /*5列*/
  .cmn_gallery.col5 figure{
    width: 17.6%;
    margin-left: 3%;
  }
  .cmn_gallery.col5 figure:nth-child(n+6){
    margin-top: 25px;
  }
  .cmn_gallery.col5 figure:nth-child(5n+1){
    margin-left: 0;
  }
}

.cmn_gallery.cmn_scroll_area.pc > *{
  width: 1200px;
  margin-bottom: 5px;
}
@media screen and (max-width :768px){
  .cmn_gallery{
    margin-bottom: 20px;
  }
  .cmn_gallery figcaption{
    margin-top: 5px;
    font-size: 10px;
    font-size: 1rem;
  }

  .cmn_gallery figure:nth-child(n+2){
    margin-top: 12.5px;
  }
  /*3列のまま*/
  .cmn_gallery.col3.spline figure{
    width: 32%;
    margin-left: 2%;
    margin-top: 0;
  }
  .cmn_gallery.col3.spline figure:nth-child(n+4){
    margin-top: 12.5px;
  }
  .cmn_gallery.col3.spline figure:nth-child(3n+1){
    margin-left: 0;
  }
  /*3列*/
  .cmn_gallery.col2.spline,
  .cmn_gallery.col3,
  .cmn_gallery.col4,
  .cmn_gallery.col5{
    display: -webkit-box;
    display: -ms-flex;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .cmn_gallery.col2.spline figure,
  .cmn_gallery.col3:not(.spline) figure,
  .cmn_gallery.col4 figure,
  .cmn_gallery.col5 figure{
    width: 49%;
    margin-left: 2%;
    margin-top: 0;
  }
  .cmn_gallery.col2.spline figure:nth-child(n+3),
  .cmn_gallery.col3:not(.spline) figure:nth-child(n+3),
  .cmn_gallery.col4 figure:nth-child(n+3),
  .cmn_gallery.col5 figure:nth-child(n+3){
    margin-top: 12.5px;
  }
  .cmn_gallery.col2.spline figure:nth-child(2n+1),
  .cmn_gallery.col3:not(.spline) figure:nth-child(2n+1),
  .cmn_gallery.col4 figure:nth-child(2n+1),
  .cmn_gallery.col5 figure:nth-child(2n+1){
    margin-left: 0;
  }
  /*scroll*/
  .cmn_gallery.cmn_scroll_area figure{
    width: 1200px;
    margin-bottom: 5px;
  }
  .cmn_gallery.cmn_scroll_area.w1000 figure,
  .cmn_gallery.cmn_scroll_area .w1000{
    width:1000px;
  }
  .cmn_gallery.cmn_scroll_area.w900 figure,
  .cmn_gallery.cmn_scroll_area .w900{
    width:900px;
  }
  .cmn_gallery.cmn_scroll_area.w800 figure,
  .cmn_gallery.cmn_scroll_area .w800{
    width:800px;
  }
  .cmn_gallery.cmn_scroll_area.w700 figure,
  .cmn_gallery.cmn_scroll_area .w700{
    width:700px;
  }
  .cmn_gallery.cmn_scroll_area.w600 figure,
  .cmn_gallery.cmn_scroll_area .w600{
    width:600px;
  }
  .cmn_gallery.cmn_scroll_area.w500 figure,
  .cmn_gallery.cmn_scroll_area .w500{
    width:500px;
  }
}



/* ===============================================
# テキストリンク
=============================================== */
.listLink1{
  margin-bottom: 20px;
}
.listLink1 li{
  padding-left: 1.5em;
  background: url(/assets/img/ico_arrow.svg)no-repeat top 5px left 3px;
  background-size: 9px 14px;
  line-height: 1.3;
  color: #014099;
  text-indent: 0;
}
.listLink1 li:nth-child(n+2){
  margin-top: 15px;
}
.listLink1 li img{
  margin-left: 13px;
  vertical-align: middle;
  width: 18px !important;
  height: auto !important;
}
.listLink1 li a{
  text-decoration:underline;
}
.listLink1 li a:hover{
  opacity: 0.6;
}

/*リンク切る場合*/
.listLink1 li a.nolink{
  pointer-events: none;
  opacity: 0.5;
}

@media screen and (max-width :768px){
  .listLink1{
  }
  .listLink1 li{
    background-size: 7px 11px;
  }
  .listLink1 li:nth-child(n+2){
    margin-top: 10px;
  }
  .listLink1 li img{
    margin-left: 8px;
    width: 15px;
  }
}
/* ===============================================
# テキストボタン
=============================================== */
.cmn_btn{
  margin-bottom: 10px;
}
.cmn_btn a{
  display: inline-block;
  border: solid 1px #014099;
  border-radius: 25px;
  line-height: 1.3;
  padding: 12px 20px 12px 40px;
  background: url(/assets/img/ico_arrow.svg) no-repeat left 20px center;
  background-size: 9px auto;
  background-color: #fff;
  text-align: left;
}
.cmn_btn a.nolink{
  pointer-events: none;
  background-color: #E0E0E0;
  opacity: 0.5;
  border-color: #A4A4A4;
}
.cmn_btn.center{
  text-align: center;
}
@media print,screen and (min-width :769px){
  .cmn_btn a:hover{
    background-color: #e5eff9;
    opacity: 1;
  }
  .cmn_btn.btnl a{
    min-width: 700px;
  }
  .cmn_btn.btnm a{
    min-width: 564px;
  }
  .cmn_btn.btns a{
    min-width: 364px;
  }
  /*横並び*/
  .cmn_btn_wrap{
    display: -webkit-box;
    display: -ms-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
  }
  .cmn_btn_wrap .cmn_btn a{
    width: 100%;
    min-width: inherit !important;
  }
  .cmn_btn_wrap.col2 .cmn_btn{
    width: 48%;
  }
  .cmn_btn_wrap.col2 .cmn_btn:nth-child(even){
    margin-left: 4%;
  }
  .cmn_btn_wrap.col2 .cmn_btn:nth-child(n+3){
    margin-top: 10px;
  }
  .cmn_btn_wrap.col2_center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  }
  .cmn_btn_wrap.col2_center .cmn_btn {
    width: 33%;
    min-width: 300px;
    max-width: 48%;
  }
  .cmn_btn_wrap.col2_center .cmn_btn:nth-child(even){
  margin-left: 3%;
  }
  .cmn_btn_wrap.col3 .cmn_btn{
    width: 31%;
    margin-left: 3.5%;
  }
  .cmn_btn_wrap.col3 .cmn_btn:nth-child(3n+1){
    margin-left: 0;
  }
  .cmn_btn_wrap.col3 .cmn_btn:nth-child(n+5){
    margin-top: 10px;
  }
}
@media screen and (max-width :768px){
  .cmn_btn a{
    width: 100%;
    border-radius:23px;
    padding: 11px 20px 11px 35px;
    background-position: left 20px center;
    background-size: 7px auto;
    line-height: 1.2;
  }
  .cmn_btn.btnl a{
    width: 100%;
  }
  .cmn_btn.btnm a{
    width: 100%;
  }
  .cmn_btn.btns a{
    width: 70%;
  }
  .cmn_btn_wrap.col2_center .cmn_btn {
    width: 100%;
    margin-bottom: 15px;
  }
}
/* ===============================================
# ボタン
=============================================== */
.cmn_btn_link{
  text-align:center;
  margin-bottom: 30px;
}
.cmn_btn_link a{
  display: inline-block;
  color: #fff;
  background-color: #014099;
  border-radius: 30px;
  text-align: center;
  padding: 13px 20px;
}
.cmn_btn_link a span{
  display: inline-block;
  padding: 0 0 0 23px;
  background: url(/assets/img/ico_arrow_w.svg) no-repeat left center;
  background-size: 9px auto;
}

.cmn_btn_link.red a{
  background-color: #e90101;
}
.cmn_btn_link.orange a{
  background-color: #fc7100;
}

.cmn_btn_link a.nolink{
  pointer-events: none;
  background-color: #cccccc;
}
@media print,screen and (min-width :769px){
  .cmn_btn_link a{
    min-width: 400px;
  }
  .cmn_btn_link a:hover{
    background-color: #4274bc;
    opacity: 1;
  }
  .cmn_btn_link.red a:hover{
    background-color: #f25353;
  }
  .cmn_btn_link.orange a:hover{
    background-color: #FF8D30;
  }
}
@media screen and (max-width :768px){
  .cmn_btn_link{
  }
  .cmn_btn_link a{
    border-radius: 28px;
    padding: 13px 20px;
  }
  .cmn_btn_link a span{
    padding: 0 0 0 22px;
    background-size: 7px auto;
  }
  .cmn_btn_link a{
    width: 100%;
  }
}

/*ページ戻るボタン*/
.cmn_pageback a{
  background: #e0e8f3;
  border-radius: 10px;
  text-align: center;
  color: #014099;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.25;
  padding: 21px 0;
}
.cmn_pageback a span{
  display: inline-block;
  padding-left: 35px;
  background: url(/assets/img/ico_arrow_back.svg)no-repeat left center;
  background-size: 9px auto;
}
@media screen and (min-width :769px){
  .cmn_pageback a:hover{
    background: #014099;
    color: #fff;
  }
  .cmn_pageback a:hover span{
    background: url(/assets/img/ico_arrow_back_w.svg)no-repeat left center;
    background-size: 9px auto;
  }
}
@media screen and (max-width :768px){
.cmn_pageback a{
  border-radius: 5px;
  line-height: 1.25;
  padding: 16px 0;
}
.cmn_pageback a span{
  display: inline-block;
  padding-left: 32px;
  background-size: 7px auto;
}
}

/*国際で使用*/
.cmn_interblue{
  border-radius: 6px;
  box-shadow: 0px 3px 0px 0px rgba(119, 164, 231, 0.75);
  width: 100%;
  max-width: 450px;
  height:auto;
  background:#1d4295 url("/assets/img/ico_arrow_w.svg") no-repeat center left 15px;
  background-size: 8px auto;
  margin-bottom:3px;
  font-size: 20px;
  font-size: 2rem;
}
.cmn_interblue.center{
  margin-right: auto;
  margin-left: auto;
}

.cmn_interblue a{
 padding:9px 0 9px 40px;
 display:block;
}

.cmn_interblue a{
 color:#fff;
}

@media screen and (max-width : 768px){
  .cmn_interblue{
    width: 100%;
    line-height: 1.091;
    font-size: 15.5px;
    font-size: 1.55rem;
}
}
/* ===============================================
# インデックス
=============================================== */
.cmn_index{
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.cmn_index .ttl{
  display: flex;
}
.cmn_index .ttl a{
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
  width: 100%;
  padding: 10px 35px 10px 27px;
  min-height: 94px;
  font-weight: bold;
  font-size: 19px;
  font-size: 1.9rem;
  line-height: 1.263;
  background: url(/assets/img/ico_arrow.svg) no-repeat right 20px center;
  background-size: 9px auto;
  background-color: #f5f9fd;
  border-top: solid 4px #98bbec;
  border-bottom: solid 2px #b8cce1;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.cmn_index .ttl a .ico{
  position: relative;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  font-weight: bold;
  padding: 10px 8px;
  border: solid 1px #98bbec;
  border-radius: 17.2px;
  box-shadow: 0px 2px 0px 0px rgba(152, 187, 236, 1);
  background: #fff;
  line-height: 1;
  white-space: nowrap;
  margin-left: 10px;
}
.cmn_index .ttl a .ico.hiratsuka,
.cmn_index .ttl a .ico.yokohama,
.cmn_index .ttl a .ico.minatomirai{
  padding-left: 30px;
  padding-right: 15px;
}
.cmn_index .ttl a .ico.hiratsuka::before,
.cmn_index .ttl a .ico.yokohama::before,
.cmn_index .ttl a .ico.minatomirai::before{
  position: absolute;
  left: 5px;
  top: 7px;
  content: '●';
  color: #51d08d;
  font-size: 22px;
}
.cmn_index .ttl a .ico.yokohama::before{
  color: #3dcfff;
}
.cmn_index .ttl a .ico.minatomirai::before{
  color: #214ebb;
}
.cmn_index .txt{
  padding-top: 15px;
  padding-bottom: 20px;
}
.cmn_index .cmn_textPhoto{
  margin-top: 20px;
}
.cmn_index .ttl a.on,
.cmn_index .ttl a:hover{
    background-color: #e0effd;
}

/*リンク切る場合*/
.cmn_index .ttl a.nolink{
  pointer-events:none;
  opacity: 0.6;
}

@media print,screen and (min-width :769px){
  /*3列*/
  .cmn_index.col3 > li{
    width: 31.6%;
    margin-left: 2.6%;
  }
  .cmn_index.col3 > li:nth-child(3n+1){
    margin-left: 0;
  }
  .cmn_index.col3 > li:nth-child(n+4){
    margin-top: 20px;
  }
  /*2列*/
  .cmn_index.col2 > li{
    width: 48.7%;
    margin-left:2.6%;
  }
  .cmn_index.col2 > li:nth-child(2n+1){
    margin-left: 0;
  }
  .cmn_index.col2 > li:nth-child(n+3){
    margin-top: 20px;
  }

  /*写真あり*/
  .cmn_index .cmn_textPhoto .photo{
    width: 42.8%;
  }
  .cmn_index .cmn_textPhoto.right .photo{
    margin-left: 3%;
  }
  .cmn_index .cmn_textPhoto.left .photo{
    margin-right: 3%;
  }
}
@media screen and (max-width :768px){
  .cmn_index{
    display: block;
    margin-bottom: 10px;
  }
  .cmn_index li:nth-child(n+2){
    margin-top: 10px;
  }
  .cmn_index .ttl a{
    padding: 10px 30px 10px 20px;
    min-height: 70px;
    font-size: 16.5px;
    font-size: 1.65rem;
    line-height: 1.091;
    background-position: right 15px center;
    background-size: 7px 11px;
    border-top: solid 3px #98bbec;
    border-bottom: solid 1.5px #b8cce1;
  }
  .cmn_index .ttl a .ico{
    font-size: 12px;
    font-size: 1.2rem;
    padding: 7px 6px;
    border-radius: 14px;
  }
  .cmn_index .ttl a .ico.hiratsuka,
  .cmn_index .ttl a .ico.yokohama,
  .cmn_index .ttl a .ico.minatomirai{
    padding-left:20px;
    padding-right: 8px;
  }
  .cmn_index .ttl a .ico.hiratsuka::before,
  .cmn_index .ttl a .ico.yokohama::before,
  .cmn_index .ttl a .ico.minatomirai::before{
    left: 5px;
    top: 7px;
    font-size: 12px;
  }
  .cmn_index .txt{
    padding-top:10px;
    padding-bottom: 20px;
  }

  /*写真あり*/
  .cmn_index .cmn_textPhoto{
    display: block;
  }
  .cmn_index .cmn_textPhoto::after{
    clear: both;
    content:'';
    display: block;
  }
  .cmn_index .cmn_textPhoto .photo{
    float: left;
    width: 54.3%;
    margin-top: 0;
  }
  .cmn_index .cmn_textPhoto.right .photo{
    float: right;
    margin-left: 3%;
  }
  .cmn_index .cmn_textPhoto.left .photo{
    margin-right: 3%;
  }
  .cmn_index .cmn_textPhoto .text{
    overflow: hidden;
    zoom: 1;
  }
}

/* ===============================================
# お問い合わせ
=============================================== */
.cmn_contact{
  margin-bottom: 30px;
}
.cmn_contact > dl > dt{
  padding: 18px 30px;
  background: #7093c5;
  color: #fff;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.3;
  font-weight: bold;
}
.cmn_contact > dl > dd{
  padding: 25px 4.3%;
  background: #f5f9fd;
}

.cmn_contact .tellink{
  font-size: 20px;
  font-size: 2rem;
}
.cmn_contact .mail{
  color: #000;
}
.cmn_contact .cmn_wrap{
  padding-left: 14px;
}

@media screen and (max-width :768px){
  .cmn_contact{
    margin-bottom: 25px;
  }
  .cmn_contact > dl > dt{
    padding: 12px 20px;
    font-size: 17px;
    font-size: 1.7rem;
  }
  .cmn_contact > dl > dd{
    padding: 20px 10px;
  }
  .cmn_contact .tellink{
    font-size: 15px;
    font-size: 1.5rem;
  }
  .cmn_contact .cmn_btn a{
    min-width: inherit;
    width: 100%;
  }
  .cmn_contact .cmn_wrap{
    padding-left: 13px;
  }
}
/* ===============================================
# 注意事項
=============================================== */
.cmn_bg_yellow{
  margin-bottom: 30px;
}
.cmn_bg_yellow > dl{
  border: solid 2px #ff9900;
}
.cmn_bg_yellow > dl > dt{
  padding: 18px 30px;
  background: #ff9900;
  color: #fff;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.3;
  font-weight: bold;
  text-align: center;
}
.cmn_bg_yellow > dl > dd{
  padding: 25px 4.3%;
  background: #fffadc;
}
@media screen and (max-width :768px){
  .cmn_bg_yellow{
    margin-bottom: 25px;
  }
  .cmn_bg_yellow > dl > dt{
    padding: 12px 20px;
    font-size: 17px;
    font-size: 1.7rem;
  }
  .cmn_bg_yellow > dl > dd{
    padding: 20px 10px;
  }
  .cmn_bg_yellow .tellink{
    font-size: 15px;
    font-size: 1.5rem;
  }
  .cmn_bg_yellow .cmn_btn a{
    min-width: inherit;
    width: 100%;
  }
  .cmn_bg_yellow .cmn_wrap{
    padding-left: 13px;
  }
}
/* ===============================================
# 紹介リンク
=============================================== */
.cmn_information{
  margin-bottom: 30px;
}
.cmn_information > dl > dt{
  background: #014099;
  color: #fff;
  line-height: 1.3;
  text-align: center;
  font-size: 20px;
  font-size: 2rem;
  padding: 17px 10px;
}
.cmn_information > dl > dd{
  background: #f7f6f0;
  padding: 30px 4.3%;
}

.cmn_information > dl > dd .listLink1.large{
  font-size: 21px;
  font-size: 2.1rem;
}
.cmn_information > dl > dd .listLink1.large li{
  background-position: top 7px left;
}

@media screen and (max-width :768px){
  .cmn_information{
    margin-bottom: 35px;
  }
  .cmn_information > dl > dt{
    text-align: left;
    font-size: 17px;
    font-size: 1.7rem;
    padding: 10px 3%;
  }
  .cmn_information > dl > dd{
    padding: 20px 3%;
  }

  .cmn_information > dl > dd .listLink1.large{
    font-size: 17px;
    font-size: 1.7rem;
  }
}
/* ===============================================
# 定義リスト
=============================================== */
.cmn_defList{
  margin-bottom: 30px;
}
.cmn_defList dl{
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
  border-top: dotted 1px #144dab;
  padding: 20px 0;
}
.cmn_defList dl:last-child{
  border-bottom: dotted 1px #144dab;
}
.cmn_defList > dl > dt{
  width: 29%;
  padding-right:1em;
  font-weight: bold;
}
.cmn_defList > dl > dd{
  flex: 1;
  padding-left: 2em;
  border-left: solid 1px #144dab;
}

/*シンプルバージョン*/
.cmn_defList.simple dl{
  border-top:1px dotted #ccc;
  padding: 7px 0;
  min-height: inherit;
}
.cmn_defList.simple dl:last-child{
  border-bottom:1px dotted #ccc;
}
.cmn_defList.simple > dl > dt{
  position: relative;
  width: 15%;
  padding-left:0;
  padding-right: 1em;
  color: #000;
}
.cmn_defList.simple.nomal > dl > dt{
  font-weight: normal;
}
.cmn_defList.simple > dl > dd{
  padding-left: 1em;
  border-left: none;
}
.cmn_defList.simple > dl > dt::after{
  content: ':';
  position: absolute;
  right: 0;
  top: 0;
}
/*タイトル長さ違い*/
.cmn_defList.w10 > dl > dt{
  width: 10%;
}
.cmn_defList.w20 > dl > dt{
  width: 20%;
}
.cmn_defList.w30 > dl > dt{
  width: 30%;
}
.cmn_defList.w40 > dl > dt{
  width: 40%;
}
.cmn_defList.w5em > dl > dt{
  width: 5em;
}
.cmn_defList.w6em > dl > dt{
  width: 6em;
}
.cmn_defList.w7em > dl > dt{
  width: 7em;
}
.cmn_defList.w8em > dl > dt{
  width: 8em;
}
.cmn_defList.w9em > dl > dt{
  width: 9em;
}
.cmn_defList.w10em > dl > dt{
  width: 10em;
}

@media screen and (max-width :768px){
  .cmn_defList dl{
    padding: 18px 0;
    min-height: inherit;
  }
  .cmn_defList > dl > dt{
    width: 31.8%;
    padding-right: 1em;
  }
  .cmn_defList > dl > dd{
    padding-left: 1em;
  }

  /*スマホ縦並び*/
  .cmn_defList.sprow dl{
    display: block;
  }
  .cmn_defList.sprow dl dt{
    width: 100%;
    padding: 0;
  }
  .cmn_defList.sprow dl dt::after{
    display: block;
    content: '';
    width: 75px;
    height: 1px;
    background: #014099;
    margin-top: 7px;
    margin-bottom: 10px;
  }
  .cmn_defList.sprow dl dd{
    border-left: none;
    padding: 0;
  }
}

@media screen and (max-width :768px){
  .cmn_defList.simple > dl{
    display: block;
  }
  .cmn_defList.simple > dl > dt{
    width: 100%;
    padding-right: 0;
  }
  .cmn_defList.simple.nomal > dl > dt{
    font-weight: bold;
  }
  .cmn_defList.simple > dl > dd{
    width: 100%;
    padding-left: 0;
  }
  .cmn_defList.simple > dl > dt::after{
    display: none;
  }
}
/*学科ページ*/
.cmn_defList.faculty > dl > dt{
  font-size: 20px;
  font-size: 2rem;
  padding-right: 20px;
}
.cmn_defList.faculty > dl > dd{
  font-size: 18px;
  font-size: 1.8rem;
}
@media screen and (max-width :768px){
  .cmn_defList.faculty > dl > dt{
    font-size: 17px;
    font-size: 1.7rem;
    padding-right: 0;
  }
  .cmn_defList.faculty > dl > dd{
    font-size: 15px;
    font-size: 1.5rem;
  }
}
/*学科ページコース用*/
.cmn_defList.course > dl > dt{
  width: 24.2%;
}
.cmn_defList.course dl dd{
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.cmn_defList.course dl dd .text{
  flex: 1;
}
.cmn_defList.course dl dd .goal{
  width: 275px;
  margin-left: 30px;
  padding-left: 60px;
  background: url(/assets/img/ico_license_arrow.svg) no-repeat left center;
  background-size:31px auto;
  font-weight: bold;
  color: #014099;
  font-size: 16px;
  font-size: 1.6rem;
}
@media screen and (max-width :768px){
  .cmn_defList.course > dl > dt{
    width: 100%;
  }
  .cmn_defList.course dl dd{
    display: block;
  }
  .cmn_defList.course dl dd .goal{
    width: 100%;
    margin-left:0;
    padding:33px 0 0 0;
    background: url(/assets/img/ico_license_arrow2.svg) no-repeat top center;
    background-size: 17px auto;
  }
}

/* ===============================================
# 青背景枠
=============================================== */
.cmn_bg_blue{
  margin-bottom: 30px;
  background: #e9f3fd;
  padding: 45px 50px;
}
.cmn_bg_blue.slim{
  padding: 20px 20px;
}
@media screen and (max-width :768px){
  .cmn_bg_blue{
    margin-bottom: 25px;
    padding: 32px 6%;
  }

  .cmn_bg_blue.slim{
    padding: 10px 3%;
  }
}

/* ===============================================
# テーブル
=============================================== */
.cmn_tableStyle,
.cms_txt > table {
  width: 100%;
  margin-bottom: 30px;
  table-layout: fixed;
  text-align: left;
}
.cmn_tableStyle th,
.cmn_tableStyle td,
.cms_txt > table th,
.cms_txt > table td{
  border: solid 1px #014099;
}
.cmn_tableStyle th,
.cms_txt > table th{
  background: #3f79ca;
  color: #fff;
  font-weight: bold;
  vertical-align: middle;
  line-height: 1.3;
  height: 60px;
  padding: 5px 20px;
}
.cmn_tableStyle td,
.cms_txt > table td{
  padding: 15px 20px;
}

.cmn_tableStyle.vm td,
.cmn_tableStyle.vm th,
.cmn_tableStyle tr.vm td,
.cmn_tableStyle tr.vm th,
.cmn_tableStyle td.vm,
.cms_txt > table.vm td,
.cms_txt > table.vm th,
.cms_txt > table tr.vm td,
.cms_txt > table tr.vm th,
.cms_txt > table td.vm{
  vertical-align: middle;
}

.cmn_tableStyle.striped tr:nth-child(odd),
.cms_txt > table.striped tr:nth-child(odd){
  background-color: #e5eff9;
}
/*mini*/
.cmn_tableStyle.mini th,
.cms_txt > table.mini th{
  height: inherit;
}
.cmn_tableStyle.mini td,
.cms_txt > table.mini td{
  padding: 10px 20px;
}

/*admission*/
.cmn_tableStyle.admission th,
.cms_txt > table.admission th{
  height: inherit;
  padding: 10px 10px;
}
.cmn_tableStyle.admission td,
.cms_txt > table.admission td{
  padding: 10px 10px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.35;
}
@media screen and (max-width :768px){
  .cmn_tableStyle,
  .cms_txt > table{
    margin-bottom: 25px;
    line-height: 1.1;
  }
  .cmn_tableStyle th,
  .cmn_tableStyle td,
  .cms_txt > table th,
  .cms_txt > table td{
    padding: 11px 10px;
  }

  /*mini*/
  .cmn_tableStyle.mini td,
  .cms_txt > table.mini td{
    padding: 10px 10px;
  }
}

/* ===============================================
# 表組
=============================================== */
.tableStyle{
  width: 100%;
  margin-bottom: 60px;
  table-layout: fixed;
  text-align: left;
}
.tableStyle table{
  width: 100%;
  table-layout: fixed;
  text-align: left;
}
.tableStyle th,
.tableStyle td{
  padding: 16px 24px;
  border: solid 1px #014099;
}
.tableStyle th{
  width: 33.33%;
  background: #d3e8fc;
}
@media screen and (max-width :768px){
  .tableStyle table{
    margin-bottom: 30px;
    border-top: solid 1px #014099;
  }
  .tableStyle th,
  .tableStyle td{
    width: 100%;
    padding: 15px 5%;
    display: block;
  }
  .tableStyle th{
    width: 100%;
    line-height: 1.1;
    border-top: none;
    border-bottom: none;
  }
}

/* ===============================================
# スクロール
=============================================== */
.cmn_scroll_area{
  position: relative;
  z-index: 1;
}
@media screen and (min-width :769px){
}
@media screen and (max-width :1200px) and (min-width :769px){
  .cmn_scroll_area.pc{
    width: 100%;
    padding-bottom: 10px;
    overflow-x: auto;
    margin-bottom: 30px;
  }
  .cmn_scroll_area.pc > *{
    width: 1200px;
    margin-bottom: 5px;
  }

}
@media screen and (max-width :768px){
  .cmn_scroll_area{
    position: relative;
    width: 100%;
    overflow-x: auto;
    margin-bottom: 30px;
    padding-bottom: 50px;
    background: url(/assets/img_smp/ico_scroll.svg) no-repeat bottom 10px right;
    background-size: 111px auto;
  }
  .cmn_scroll_area > *{
    width: 1200px;
    margin-bottom: 5px;
  }
  .cmn_scroll_area.w1000 > *,
  .cmn_scroll_area .w1000{
    width:1000px;
  }
  .cmn_scroll_area.w900 > *,
  .cmn_scroll_area .w900{
    width:900px;
  }
  .cmn_scroll_area.w800 > *,
  .cmn_scroll_area .w800{
    width:800px;
  }
  .cmn_scroll_area.w700 > *,
  .cmn_scroll_area .w700{
    width:700px;
  }
  .cmn_scroll_area.w600 > *,
  .cmn_scroll_area .w600{
    width:600px;
  }
}
/* ===============================================
# キャッチコピー
=============================================== */
.cmn_catch{
  font-size: 35px;
  font-size: 3.5rem;
  color: #014099;
  line-height: 1.3;
  margin-bottom: 40px;
}
.cmn_catch.medium{
  font-size: 32px;
  font-size: 3.2rem;
  margin-bottom: 20px;
  line-height: 1.563;
}
.cmn_catch.small{
  font-size: 28px;
  font-size: 2.8rem;
  margin-bottom: 20px;
}
.cmn_catch.black{
  color: #000;
}
@media screen and (max-width :768px){
  .cmn_catch{
    font-size: 22.5px;
    font-size: 2.25rem;
    line-height: 1.222;
    margin-bottom: 30px;
  }
  .cmn_catch.medium{
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 15px;
  }
  .cmn_catch.small{
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 15px;
  }
}
/* ===============================================
# 名前
=============================================== */
.cmn_name{
  padding-left: 20px;
  border-left: solid 2px #014099;
  color: #014099;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.8rem;
}
.cmn_name .name > span{
  display: inline-block;
  margin-right: 0.5em;
  font-size: 22px;
  font-size: 2.2rem;
}
@media screen and (max-width :768px){
  .cmn_name{
    padding-left: 11px;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .cmn_name .name > span{
    font-size: 15px;
    font-size: 1.5rem;
  }  
  .cmn_name .note{
    font-size: 13px;
    font-size: 1.3rem;
  }    
}
/* ===============================================
# リスト
=============================================== */
/*数字-------------------------*/
ol.cmn_deciList{
  margin-bottom: 30px;
}

ol.cmn_deciList{
  text-indent: 0;
  counter-reset: number;
  list-style-type: none;
}
ol.cmn_deciList > li{
  position: relative;
  counter-increment: number;
  padding-left: 1.5em;
}
ol.cmn_deciList > li b{
  font-weight: bold;
}
ol.cmn_deciList > li::before{
  position: absolute;
  left: 0;
  top: 0;
  min-width: 1em;
  display: inline-block;
  counter-increment: count 1;
  content: counter(number) ".";
  color: #014099;
}
ol.cmn_deciList > li:nth-child(n+2){
  margin-top: 6px;
}
@media screen and (max-width :768px){
  ol.cmn_deciList{
    margin-bottom: 20px;
  }
  ol.cmn_deciList > li:nth-child(n+2){
    margin-top: 3px;
  }
}

.cms_txt > ol{
  list-style: decimal;
  padding-left: 1em;
}
/*通常-------------------------*/
ul.cmn_discList{
  margin-bottom: 30px;
}
.cms_txt > ul,
ul.cmn_discList{
  text-indent: 0;
}
.cms_txt > ul > li,
ul.cmn_discList > li{
 position: relative;
 padding-left: 1.5em;
}
.cms_txt > ul > li b,
ul.cmn_discList > li b{
  font-weight: bold;
}
.cms_txt > ul > li:before,
ul.cmn_discList > li:before {
  position: absolute;
  top: 0.5em;
  left:0;
	color:#014099;
	content:"●";
	font-size:10px;
  display:inline-block;
}
ul.cmn_discList > li a.nolink{
  pointer-events: none;
  color: #ccc;
}
/*2列*/
ul.cmn_discList.col2,
ul.cmn_discList.col3{
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
}
@media print,screen and (min-width :769px){
  .cms_txt > ul > li:nth-child(n+2),
  ul.cmn_discList:not(.col3):not(.col2):not(.sp_col2) > li:nth-child(n+2){
    margin-top: 6px;
  }  
  
  ul.cmn_discList.col2 > li{
    width: 50%;
    padding-right: 1em;
  }
  ul.cmn_discList.col2 > li:nth-child(n+3){
    margin-top: 6px;
  }  
  /*3列*/
  ul.cmn_discList.col3 > li{
    width:33.33%;
    padding-right: 1em;
  }
  ul.cmn_discList.col3 > li:nth-child(n+4){
    margin-top: 6px;
  }  
}
@media screen and (max-width :768px){
 ul.cmn_discList{
    margin-bottom: 20px;
  }
 .cms_txt > ul > li:before,
 ul.cmn_discList > li:before {
   top: 0.2em;
   -webkit-transform: scale(0.8);
   transform: scale(0.8);
 }
  .cms_txt > ul > li:nth-child(n+2),
  ul.cmn_discList > li:nth-child(n+2){
    margin-top: 3px;
  }
  ul.cmn_discList.sp_col2 > li:nth-child(2){
    margin-top: 0;
  }
  
  ul.cmn_discList.col2,
  ul.cmn_discList.col3{
    display: block;
  }  
}
/*注釈-------------------------*/
ul.cmn_komeList{
  text-indent: 0;
  margin-bottom: 20px;
}
ul.cmn_komeList > li{
 position: relative;
 padding-left: 1.5em;
}
ul.cmn_komeList > li b{
  font-weight: bold;
}
ul.cmn_komeList > li:before {
  position: absolute;
  top: 0;
  left:0;
	content:"※";
  display:inline-block;
}
ul.cmn_komeList > li:nth-child(n+2){
  margin-top: 6px;
}
@media screen and (max-width :768px){
  ul.cmn_komeList > li:nth-child(n+2){
    margin-top: 3px;
  }
}

/*インデントのみ-----------------*/
ul.cmn_indent{
  text-indent: 0;
  margin-bottom: 20px;
}
ul.cmn_indent li:nth-child(n+2){
  margin-top: 6px;
}
ul.cmn_indent > li{
  margin-left: 1em;
  text-indent: -1em;
}
ul.cmn_indent.txt15 > li{
  margin-left: 1.5em;
  text-indent: -1.5em;
}
ul.cmn_indent.txt2 > li{
  margin-left: 2em;
  text-indent: -2em;
}
ul.cmn_indent.txt25 > li{
  margin-left: 2.5em;
  text-indent: -2.5em;
}
ul.cmn_indent.txt3 > li{
  margin-left: 3em;
  text-indent: -3em;
}
@media screen and (max-width :768px){
  ul.cmn_indent li:nth-child(n+2){
    margin-top: 3px;
  }
}
/*アルファベット-----------------*/
ol.cmn_alphaList{
  text-indent: 0;
  list-style: lower-alpha;
  margin-left: 1em;
  margin-bottom: 20px;
}
ol.cmn_alphaList > li{
  list-style-position: outside;
  padding-left: 0.5em;
  color: #014099;
}
ol.cmn_alphaList > li *{
  color: #000;
}
ol.cmn_alphaList li:nth-child(n+2){
  margin-top: 6px;
}
ol.cmn_alphaList li b{
  font-weight: bold;
}
@media screen and (max-width :768px){
  ol.cmn_alphaList li:nth-child(n+2){
    margin-top: 3px;
  }
}

/* ===============================================
# ページタブ
=============================================== */
.cmn_area_pagetab{
  max-width: 1200px;
  margin: 0 auto 30px;
  overflow-y: auto;
  scrollbar-color: #3f79ca #DFDFDF;
  scrollbar-width: thin;
  border-bottom: solid 2px #014099;
}
.cmn_area_pagetab::-webkit-scrollbar{
  height: 5px;
}
.cmn_area_pagetab::-webkit-scrollbar{
  background: #DFDFDF;
}
.cmn_area_pagetab::-webkit-scrollbar-thumb{
  background: #3f79ca;
}
.cmn_area_pagetab ul{
  display: inline-flex;
}
.cmn_area_pagetab ul li{
  overflow: hidden;
  min-height: 58px;
}
.cmn_area_pagetab ul li a,
.cmn_area_pagetab ul li button{
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  border-radius: 5px 5px 0 0;
  padding: 5px 30px;
  line-height: 1.2;
  height: 100%;
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  white-space: nowrap;
  border-top:solid 1px #014099;
  border-left:solid 1px #014099;
  border-right:solid 1px #014099;
  border-bottom: none;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  cursor: pointer;
  background-color: #fff;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  color: #014099;
}
.cmn_area_pagetab ul li.on a,
.cmn_area_pagetab ul li:hover a:not(.nolink),
.cmn_area_pagetab ul li.on button,
.cmn_area_pagetab ul li:hover button:not(.nolink){
  color: #fff;
  background: #014099;
}
.cmn_area_pagetab ul li:nth-child(n+2){
  margin-left: 10px;
}
/*詰め*/
.cmn_area_pagetab.short ul li a,
.cmn_area_pagetab.short ul li button{
  padding: 5px 15px;
}
/*リンクなし*/
.cmn_area_pagetab ul li a.nolink,
.cmn_area_pagetab ul li button.nolink{
  border-color: #cccccc;
  color: #cccccc;
  pointer-events: none;
}
/*タブ下*/
.cmn_area_pagetab.bottom{
  margin: 30px auto 0;
  border-bottom: none;
  border-top: solid 2px #014099;
}
.cmn_area_pagetab.bottom ul li a,
.cmn_area_pagetab.bottom ul li button{
  border-radius: 0 0 5px 5px;
  border-bottom:solid 1px #014099;
  border-top:none;
}
@media print,screen and (max-width :1200px){
  .cmn_area_pagetab ul{
    padding: 0 2%;
  }
}
@media screen and (max-width :768px){
  .cmn_area_pagetab ul{
    padding: 0 4%;
  }
  .cmn_area_pagetab ul li{
    min-height: 45px;
  }
  .cmn_area_pagetab ul li a,
  .cmn_area_pagetab ul li button{
    padding: 5px 26px;
    font-size: 13.5px;
    font-size: 1.35rem;
  }
  .cmn_area_pagetab ul li:nth-child(n+2){
    margin-left: 5px;
  }
  /*詰め*/
  .cmn_area_pagetab.short ul li a,
  .cmn_area_pagetab.short ul li button{
    padding: 5px 15px;
  }
}

/* ===============================================
# Feature（学科ページ）
=============================================== */
.cmn_feature {
  margin-bottom: 80px;
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
}
.cmn_feature:not(.swiper-wrapper),
.cmn_feature.col1{
  margin-bottom: 30px;
}
.cmn_feature .item{
  width: 48.5%;
  margin-left: 3%;
  background: #e5eef8;
  padding: 32px ;
}
.cmn_feature.col1 .item{
  width: 100%;
  margin-left: 0;
}
.cmn_feature .item.swiper-slide{
  height: auto;
}
.cmn_feature .ttl{
  display: inline-block;
  margin-bottom: 17px;
  padding-right: 18px;
  padding-bottom: 20px;
  line-height: 1;
  color: #014099;
  font-size: 20px;
  font-size: 2rem;
  background: url(/education/faculty/common/img/bg_ttl_line.png) no-repeat left bottom;
  background-size: 88px auto;
}
.cmn_feature .lead{
  color: #014099;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: 5px;
}
.cmn_feature .text{
  font-size: 18px;
  font-size: 1.8rem;
}
/*画像あり*/
.cmn_feature.photo .item{
  display:-webkit-box;
  display:flex;  
}
.cmn_feature.photo figure{
  width: 154px;
  margin-right: 25px;
}
.cmn_feature.photo .box_txt{
  -webkit-box-flex: 1;
  flex: 1;  
}
@media print,screen and (min-width :769px){
  .cmn_feature:not(.col3) .item:nth-child(odd){
    margin-left: 0;
  }
  .cmn_feature:not(.col3) .item:nth-child(n+3){
    margin-top: 35px;
  }

  .cmn_feature.col3 .item{
    width: 31.3%;
    margin-left: 3%;
  }  
  .cmn_feature.col3 .item:nth-child(3n+1){
    margin-left: 0;
  }
  .cmn_feature.col3 .item:nth-child(n+4){
    margin-top: 35px;
  }
  
  .swiper_faculty_feature .swiper-prev,
  .swiper_faculty_feature .swiper-next{
    display: none;
  }

}
@media (max-width :1024px){
  .cmn_feature.photo .item{
    display: block;
  }
  .cmn_feature.photo figure{
    width: 154px;
    margin: 0 auto 20px;
  }
}
@media screen and (max-width :768px){
  .swiper_faculty_feature{
    position: relative;
  }
  .cmn_feature {
    margin-bottom: 43px;
    flex-wrap:nowrap;
  }
  .cmn_feature.col1,
  .cmn_feature:not(.swiper-wrapper){
    margin-bottom: 25px;
  }
  .cmn_feature .item{
    width: 100%;
    margin-left: 0;
    padding: 15px 5%;
    height: auto;
  }
  .cmn_feature:not(.swiper-wrapper){
    display: block;
  }
  .cmn_feature:not(.swiper-wrapper) .item:nth-child(n+2){
    margin-top: 20px;
  }
  .cmn_feature .ttl{
    margin-bottom: 10px;
    padding-right: 0;
    padding-bottom:10px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.2;
    background-size: 53px auto;
  }
  .cmn_feature .lead{
    font-size: 17.5px;
    font-size: 1.75rem;
    margin-bottom: 5px;
  }
  .cmn_feature .text{
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.533;
  }

  .swiper_faculty_feature .swiper-prev,
  .swiper_faculty_feature .swiper-next{
    padding: 6px 10px;
    line-height: 1;
    text-align: center;
    position: absolute;
    top: 48%;
    z-index: 10;
    background: #fff;
    box-shadow: 0px 0px 7px 0px rgba(126, 162, 201, 0.83);
  }
  .swiper_faculty_feature .swiper-prev img,
  .swiper_faculty_feature .swiper-next img{
    width: 7px;
  }
  .swiper_faculty_feature .swiper-prev{
    left: -4%;
  }
  .swiper_faculty_feature .swiper-prev img{
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  .swiper_faculty_feature .swiper-next{
    right: -4%;
  }
  
  /*画像あり*/
  .cmn_feature.photo figure{
    width: 117px;
    margin: 0 auto 12px;
  }

}

/* ===============================================
# 資格表（学科ページ）
=============================================== */
.cmn_license{
  margin-bottom: 30px;
}
.cmn_license dl{
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
  border-top: dotted 1px #144dab;
  padding: 20px 0;
  min-height: 100px;
}
.cmn_license dl:last-child{
  border-bottom: dotted 1px #144dab;
}
.cmn_license > dl > dt{
  width: 48%;
  color: #014099;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  padding-right: 100px;
  background: url(/assets/img/ico_license_arrow.svg) no-repeat right 40px center;
  background-size: 31px auto;
}
.cmn_license > dl > dt .small{
  font-size: 14px;
  font-size: 1.4rem;
}
.cmn_license > dl > dd{
  flex: 1;
}
.cmn_license > dl > dd ul{
  font-size: 0;
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
}
.cmn_license > dl > dd ul > li{
 position: relative;
 padding-left: 1em;
 font-size: 18px;
 font-size: 1.8rem;
 padding-right: 0.5em;
}
.cmn_license > dl > dd ul > li b{
  font-weight: bold;
}
.cmn_license > dl > dd ul > li:before {
  position: absolute;
  top: 0.6em;
  left:0;
	color:#014099;
	content:"●";
	font-size:10px;
  display:inline-block;
}

/*type1*/
.cmn_license > dl.type1 > dt{
  width: 100%;
  background: none;
  padding: 0;
}
@media print,screen and (min-width :769px){
  .cmn_license > dl > dd ul.pc_col1 > li{
    width: 100%;
  }
  .cmn_license > dl > dd ul.pc_col2 > li{
    width: 50%;
  }
  .cmn_license > dl > dd ul.pc_col3 > li{
    width: 33.33%;
  }
  .cmn_license > dl > dd ul > li.long{
    width: 100%;
    padding-right: 0;
  }
}
@media screen and (max-width :768px){
  .cmn_license{
    margin-bottom: 20px;
  }
  .cmn_license dl{
    display: block;
    padding: 20px 0;
    min-height:inherit;
  }
  .cmn_license > dl > dt{
    width: 100%;
    padding-right: 0;
    padding-bottom: 33px;
    background: url(/assets/img/ico_license_arrow2.svg) no-repeat bottom center;
    background-size: 17px auto;
    font-size: 15px;
    font-size: 1.5rem;
  }
  .cmn_license > dl > dt .small{
    font-size: 14px;
    font-size: 1.4rem;
  }
  .cmn_license > dl > dd{
    padding-top: 10px;
  }
  .cmn_license > dl > dd ul > li{
   font-size: 15px;
   font-size: 1.5rem;
   width: 50%;
  }
  .cmn_license > dl > dd ul > li.long,
  .cmn_license > dl > dd ul > li.sp_long{
    width: 100%;
    padding-right: 0;
  }
  .cmn_license > dl > dd ul > li:before {
   top: 0.2em;
   -webkit-transform: scale(0.8);
   transform: scale(0.8);
  }
}
/* ===============================================
# 動画
=============================================== */
.cmn_movie{
  margin-bottom: 40px;
  text-align: center;
}
.cmn_movie .box_movie{
  max-width: 100%;
  margin: 0 auto;
}
.cmn_movie .box_movie .area_iframe{
  width: 100%;
  padding-top: 56.25%;
  position: relative;
}
.cmn_movie .box_movie .area_iframe iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.cmn_movie .box_movie .caption{
  margin-top: 13px;
  line-height: 1.3;
  text-align: left;
  font-size: 16px;
  font-size: 1.6rem;
  color: #00b097;
}
/*1列*/
.cmn_movie.col1 .box_movie{
  width:745px;
}
.cmn_movie.col1 .box_movie:nth-child(n+2){
  margin-top: 60px;
}
/*2列*/
.cmn_movie.col2{
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.cmn_movie.col2 .box_movie{
  width: 48.5%;
  margin-left: 3%;
}
.cmn_movie.col2 .box_movie:nth-child(n+3){
  margin-top: 60px;
}
.cmn_movie.col2 .box_movie:nth-child(2n+1){
  margin-left: 0;
}
  @media (min-width :835px){
  /*3列*/
  .cmn_movie.col3{
    display: -webkit-box;
    display: -ms-flex;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .cmn_movie.col3 .box_movie{
    width: 31.6%;
    margin-left: 2.6%;
  }
  .cmn_movie.col3 .box_movie:nth-child(n+4){
    margin-top: 60px;
  }
  .cmn_movie.col3 .box_movie:nth-child(3n+1){
    margin-left: 0;
  }  
}
@media screen and (max-width :834px){
  .cmn_movie{
    margin-bottom: 30px;
  }
  .cmn_movie .box_movie .caption{
    margin-top: 5px;
    font-size: 13px;
    font-size: 1.3rem;
    font-weight: bold;
  }
  /*2列*/
  .cmn_movie.col2 .box_movie,
  .cmn_movie.col3.box_movie{
    width: 47.8%;
    margin-left: 4.4%;
  }
  .cmn_movie.col2 .box_movie:nth-child(n+3),
  .cmn_movie.col3 .box_movie:nth-child(n+3){
    margin-top: 30px;
  }
}
/* ===============================================
# map
=============================================== */
.cmn_map{
  position: relative;
  width: 100%;
  padding-top: 40%;
  margin: 0 auto 30px;
}
.cmn_map iframe{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100% !important;
}
@media screen and (max-width :768px){
  .cmn_map{
    padding-top: 60%;
  }
}
/* ===============================================
# google calendar
=============================================== */
.cmn_gcalendar{
  position: relative;
  width: 100%;
  padding-top: 60%;
  margin: 0 auto 30px;
}
.cmn_gcalendar iframe{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100% !important;
}
@media screen and (max-width :768px){
  .cmn_gcalendar{
    padding-top: 90%;
  }
}
/* ===============================================
# cmn_newslist
=============================================== */
.cmn_newslist > ul{
  border-top: dotted 1px #014099;
  margin-bottom: 20px;
}
.cmn_newslist > ul > li{
  border-bottom: dotted 1px #014099;
}
.cmn_newslist > ul > li > *{
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
  color: #014099;
  padding: 15px 0;
  line-height: 1.3;
}
.cmn_newslist > ul > li > a:hover{
  background: #f5f9fd;
}
.cmn_newslist > ul > li .date{
  min-width: 164px;
  padding: 0 0 0 26px;
  color: #000;
  font-family: 'Roboto Condensed', sans-serif;
  vertical-align: middle;
}
.cmn_newslist > ul > li .date .ico_new{
  font-size: 12px;
  font-size: 1.2rem;
  color: #fff;
  text-align: center;
  display: inline-block;
  width: 3em;
  margin-left: 13px;
  padding: 2px 0 2px;
  background-color: #f30017;
  vertical-align: middle;
}

@media screen and (max-width :768px){
  .cmn_newslist > ul > li > *{
    padding: 18px 0;
  }
  .cmn_newslist > ul > li .date{
    min-width: 110px;
    padding:0;
    font-size: 14px;
    font-size: 1.4rem;
    text-align: left;
  }
  .cmn_newslist > ul > li .date .ico_new{
    font-size: 10px;
    font-size: 1.0rem;
    margin-left: 8px;
    padding: 2px 0 2px;
  }
  .cmn_newslist > ul > li .ttl{
    padding-left: 0;
  }
}
/* WEB出願・入試要項 */
.cmn_newslist2>li {
  border-top: 1px solid  #ccc;
}
.cmn_newslist2>li:last-child {
  border-bottom: 1px solid  #ccc;
}
.cmn_newslist2>li>* {
  position: relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  width: 100%;
  padding: 12px 0 11px;
  color: #014099;
}
.cmn_newslist2>li>* .date {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.3;
  min-width: 145px;
  padding-left: 3px;
  color: #666;
  font-family: 'Roboto Condensed', sans-serif;
  position: relative;
}
.cmn_newslist2>li>* .ico_new{
  font-size: 12px;
  font-size: 1.2rem;
  color: #fff;
  text-align: center;
  display: inline-block;
  width: 3em;
  padding: 2px 0 2px;
  background-color: #f30017;
  margin-left: 13px;
}
.cmn_newslist2>li>* .ttl {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.3;
  -webkit-box-flex: 1;
  flex: 1;
}
@media screen and (max-width :768px){
  .cmn_newslist2>li>* .date {
    font-size: 14px;
    font-size: 1.4rem;
    padding-left: 0;
    min-width: 110px;
  }
  .cmn_newslist2>li>* .ico_new{
    font-size: 10px;
    font-size: 1.0rem;
    padding: 2px 0 2px;
    margin-left: 6px;
  }
  .cmn_newslist2>li>* .ttl {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

/*トップ重要なお知らせ*/
.cmn_newslist2.type02 > li:first-of-type{
  border-top: none;
}
.cmn_newslist2.type02 > li > *{
  padding: 10px 0 8px;
}
.cmn_newslist2.type02 > li > *::after{
  content: '';
  display: block;
  width: 104px;
  height: 1px;
  background: #1d4293;
  position: absolute;
  bottom: -1px;
  left: 0;
  z-index: 1;
}
.cmn_newslist2.type02 > li > * .ttl{
  font-weight: bold;
}
@media screen and (max-width :768px){
  .cmn_newslist2.type02 > li > *::after{
    width: 78px;
  }
}
/* ===============================================
# cmn_newsbox
=============================================== */
.cmn_newsbox .tab_news .list_tab {
  margin-bottom: 22px;
}
.cmn_newsbox .tab_news .list_tab>li {
  width: 140px;
  max-width: 15%;
  margin-right: 20px;
}
.cmn_newsbox .tab_news .list_tab>li>a {
  display: block;
  text-align: center;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.1;
  color: #ccc;
  border-bottom: 1px solid #ccc;
  padding-bottom: 8px;
  height: 100%;
}
.cmn_newsbox .tab_news .list_tab>li>a:not(.en) {
  font-weight: bold;
}
.cmn_newsbox .tab_news .list_tab>li>a.active {
  color: #1d4293;
  border-bottom: 1px solid #1d4293;
  pointer-events: none;
}
@media screen and (min-width: 769px) {
  .cmn_newsbox .tab_news .list_tab>li>a:hover {
    color: #1d4293;
    border-bottom: 1px solid #1d4293;
  }
}
@media screen and (max-width: 768px) {
  .cmn_newsbox .tab_news .list_tab {
    -ms-flex-wrap: wrap;
  	flex-wrap: wrap;
    margin-bottom: 10px;
  }
  .cmn_newsbox .tab_news .list_tab>li {
    width: 216px;
    max-width: 30%;
    margin-right: 5%;
  }
  .cmn_newsbox .tab_news .list_tab>li:nth-child(3n) {
    margin-right: 0;
  }
  .cmn_newsbox .tab_news .list_tab>li:nth-child(n+4) {
    margin-top: 14px;
  }
  .cmn_newsbox .tab_news .list_tab>li>a {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.28;
  }
  .cmn_newsbox .tab_news .list_tab>li>a.en {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .android .cmn_newsbox .tab_news .list_tab {
    display: block;
  }
  .android .cmn_newsbox .tab_news .list_tab>li {
    width: 100%;
  }
  .android .cmn_newsbox .tab_news .list_tab>li:nth-child(n+2) {
    margin-top: 14px;
  }
}
.cmn_newsbox .area_news_wrap ul {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.cmn_newsbox .area_news_wrap ul>li a[href=""]{
  cursor: none;
  pointer-events: none;
}
.cmn_newsbox .area_news_wrap ul>li {
  width: 17.8%;
  margin-right: 2.75%;
}
.cmn_newsbox .area_news_wrap ul > li .box_img{
  position: relative;
}
.cmn_newsbox .area_news_wrap ul > li .box_img .new{
  position: absolute;
  bottom: -5px;
  right: 0;
  z-index: 1;
  background: #e20505;
  color: #fff;
  font-style: italic;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1;
  padding: 2px 10px;
}
.cmn_newsbox .area_news_wrap ul>li figure {
  position: relative;
  width: 100%;
  padding-top: 70%;
  overflow: hidden;
}
.cmn_newsbox .area_news_wrap ul>li figure img {
  position: absolute;
  width: 100%;
  height: auto;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.cmn_newsbox .area_news_wrap ul>li .box_txt .box_date{
  position: relative;
}
.cmn_newsbox .area_news_wrap ul>li .box_txt .date {
  color: #666666;
  font-size: 15px;
  font-size: 1.5rem;
  margin-top: 10px;
}
.cmn_newsbox .area_news_wrap ul>li .box_txt .ico{
  position: absolute;
  right: 0;
  top: 0;
  color: #fff;
  background: #50b0fb;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1;
  border-radius: 12.8px;
  padding: 5px 18px;
}
.cmn_newsbox .area_news_wrap ul>li .box_txt .ttl {
  color: #1d4293;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.33;
  margin-top: 3px;
}
.cmn_newsbox .area_news_wrap ul>li .box_txt .type {
  text-align: right;
  margin-top: 6px;
}
.cmn_newsbox .area_news_wrap ul>li .box_txt .type span {
  color: #999999;
  font-size: 13px;
  font-size: 1.3rem;
  border-top: 1px solid #024098;
  padding-top: 3px;

}
@media screen and (min-width: 924px) {
  .cmn_newsbox .area_news_wrap ul>li:nth-child(n+6){
    margin-top: 40px;
  }
  .cmn_newsbox .area_news_wrap ul>li:nth-child(5n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 923px) and (min-width: 769px){
  .cmn_newsbox .area_news_wrap ul>li {
    width: 23.2%;
    margin-right: 2.4%;
  }
  .cmn_newsbox .area_news_wrap ul>li:nth-child(n+5) {
    margin-top: 40px;
  }
  .cmn_newsbox .area_news_wrap ul>li:nth-child(4n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .sec_top_news {
    padding: 35px 0 49px;
  }
  .sec_top_news  .tit_h2 {
    margin-bottom: 25px;
  }
  .cmn_newsbox .area_news_wrap ul>li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 0 !important;
    border-bottom: #cccccc 1px solid;
  }
  .cmn_newsbox .area_news_wrap.ready ul>li:nth-child(n+6){
    display: none;
  }
  .cmn_newsbox .area_news_wrap ul>li>a {
    display:-webkit-box;
  	display:-ms-flexbox;
    display: flex;
    -webkit-box-align: start;
	  -ms-flex-align: start;
	  align-items: flex-start;
    padding: 12px 0 15px;
  }
  .cmn_newsbox .area_news_wrap ul>li .box_img{
    width: 104px;
    margin-right: 16px;
  }
  .cmn_newsbox .area_news_wrap ul>li .box_txt {
    -webkit-box-flex: 1;
    flex: 1;
  }
  .cmn_newsbox .area_news_wrap ul>li .box_txt .ico{
    position: relative;
    margin-left: 5px;
    display: inline-block;
    right: auto;
    font-size: 10px;
    font-size: 1rem;
    border-radius: 9px;
    padding: 3px 15px;
    vertical-align: middle;
  }
  .cmn_newsbox .area_news_wrap ul>li .box_txt .date {
    display: inline-block;
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 0;
  }
  .cmn_newsbox .area_news_wrap ul>li .box_txt .ttl {
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 3px;
  }
  .cmn_newsbox .area_news_wrap ul>li .box_txt .type {
    text-align: left;
    margin-top: 6px;
  }
  .cmn_newsbox .area_news_wrap ul>li .box_txt .type span {
    font-size: 10px;
    font-size: 1.0rem;
  }
  .cmn_newsbox .area_news_wrap.ready .btn_news_more {
    display: block;
  }
  .cmn_newsbox .area_news_wrap .btn_news_more,
  .cmn_newsbox .area_news_wrap.active  .btn_news_more {
    display: none;
  }
  .cmn_newsbox .btn_news_more a {
    max-width: 325px;
    color: #1d4293;
    font-weight: bold;
    font-size: 14px;
    font-size: 1.4rem;
    border-radius: 10px;
    padding: 18px 0;
    display: block;
    margin: 15px auto 0;
    border: solid 1px #1d4293;
    text-align: center;
    line-height: 1;
  }
}
/*タブ切り替え用*/
.cmn_newsbox.can_change .area_list_wrap ul,
.cmn_newsbox.can_change .area_news_wrap ul {
  display: none;
}
.cmn_newsbox.can_change .area_list_wrap ul.is_active,
.cmn_newsbox.can_change .area_news_wrap ul.is_active.list_media {
  display: block;
}
.cmn_newsbox.can_change .area_news_wrap ul.is_active:not(.list_media) {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;;
}
@media screen and (max-width: 768px) {
  .cmn_newsbox.can_change .area_news_wrap ul.is_active:not(.list_media) {
  	display: block;
  }
}
/* ===============================================
# テキスト付きアイコン
=============================================== */
.icotext,
.icotextB {
	background-color:#ff9900;
	color:#fff;
	padding:2px 4px;
	display:inline-block;
	font-size:75%;
	margin-left:8px;
	vertical-align:top;
}

.icotextB {
	font-size:100%;
	margin-right:8px
}

/* blue　追加 */

.icotext_blue,
.icotextB_blue {
  background-color: #014099;
  color: #fff;
  display: inline-block;
  font-size: 12px;
  font-weight: bold;
  vertical-align: top;
  padding: 1px 4px;
  margin-top: 3px;
  margin-left: 8px;
  /* min-width: 22%; */
  height: 100%;
  white-space: nowrap;
}

.icotextB_blue {
	font-size:100%;
	margin-right:8px;
  
}

@media screen and (max-width: 768px) {
  .icotext_blue,
  .icotextB_blue {
    padding: 3px 4px 3px;
    margin-top: -2px;
    font-size: 11px;
    margin-left: 6px;
  }
}

.icotext_round {
  display: inline-block;
  border: solid 1px #98bbec;
  background-color: #fff;
  border-radius: 17px;
  color: #014099;
  font-weight: bold;
  font-size: 13px;
  text-align: center;
  width: 90px;
  min-width: 28%;
  height: 3rem;
  padding: 5px 10px 4px 10px;
  margin: -3px 8px -3px -8px;
}
@media screen and (max-width: 768px) {
  .icotext_round{
    margin-left: 0;
    font-size: 11px;
    width: 73px;
    height: 2.4rem;
    padding: 5px 6px 4px 6px;
    margin-right: 6px;
  }
}

/* ===============================================
# 書籍など
=============================================== */
.cmn_books > ul{
  flex-wrap: wrap;
}
.cmn_books > ul > li{
  position: relative;
  width: 25%;
  padding: 20px 10px;
  text-align: center;
  line-height: 1.353;
}
.cmn_books > ul > li a figure{
  max-width: 200px;
  margin: 0 auto;
}
.cmn_books > ul > li .top{
  margin-bottom: 10px;
}
.cmn_books > ul > li .ttl{
  margin-top: 20px;
}
.cmn_books > ul > li a.link_other{
  text-decoration: underline;
}
.cmn_books > ul > li img[src*=".svg"].ico_link{
  margin-left: 3px;
}
@media screen and (min-width: 769px) {
  .cmn_books > ul > li > a.over::before{
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #f5f9fd;
    z-index: -1;
    opacity: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
  }
  .cmn_books > ul > li > a.over:hover::before{
    opacity: 1;
  }
}
@media screen and (max-width: 768px) {
  .cmn_books > ul > li{
    width: 33.33%;
  }
}
@media screen and (max-width: 640px) {
  .cmn_books > ul > li{
    width: 50%;
    padding: 20px 3px;
  }
  .cmn_books > ul > li a figure{
    max-width: 240px;
  }
  .cmn_books > ul > li img[src*=".svg"].ico_link{
    width: 12px;
  }

  .android .cmn_books ul{
    display: block;
  }
  .android .cmn_books > ul > li{
    width: 100%;
    max-width: 375px;
    margin: 0 auto;
  }
}
/* ===============================================
# 画像ボタン
=============================================== */
.cmn_imgbtn{
  text-align: center;
  margin-bottom: 30px;
}
.cmn_imgbtn a{
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.cmn_imgbtn a:hover{
  opacity: 0.7;
}

/* ===============================================
# カテゴリー
=============================================== */
.cmn_txt_index {
  margin-bottom: 27px;
  display: -webkit-box;
    display: -ms-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
}
.cmn_txt_index li{
  border-bottom: #0445a3 1px solid;
  display: inline-block;
  margin-right: 3%;
  width: 31.3%;
  background-image: url(/assets/img/ico_arrow.svg);
  background-repeat: no-repeat;
  background-position: 10px 50%;
  background-size: 9px auto;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
}
/*3列*/
.cmn_txt_index.col3 li{
  margin-right: 3%;
  width: 31.3%;
}
.cmn_txt_index.col3 li:first-child {
  border-top: #0445a3 1px solid;
}
.cmn_txt_index.col3 li:nth-child(2) {
  border-top: #0445a3 1px solid;
}
.cmn_txt_index.col3 li:nth-child(3) {
  border-top: #0445a3 1px solid;
}
.cmn_txt_index.col3 li:nth-child(3n) {
  margin-right: 0px;
}
/*2列*/
.cmn_txt_index.col2 li{
  width: 48.7%;
  margin-right :2.6%;
}
.cmn_txt_index.col2 li:first-child {
  border-top: #0445a3 1px solid;
}
.cmn_txt_index.col2 li:nth-child(2) {
  border-top: #0445a3 1px solid;
}
.cmn_txt_index.col2 li:nth-child(2n) {
  margin-right: 0px;
}

.cmn_txt_index li a{
  padding: 12px 0px 12px 35px;
  height: 100%;
  display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.cmn_txt_index li a.nolink{
  pointer-events: none;

}

.cmn_photo_index{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 27px;
}
/*3列*/
.cmn_photo_index.col3 li{
  display: inline-block;
  margin-right: 3%;
  width: 31.3%;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  box-shadow: 1px 1px 4px rgb(204 204 204 / 60%);
  border-radius: 5px;
  background: #fff;
}
.cmn_photo_index.col3 li:nth-child(3n) {
  margin-right: 0px;
}
.cmn_photo_index.col3 li:nth-child(n+4) {
  margin-top: 20px;
}
.cmn_photo_index.col3 li .photo img{
  width: 100%;
  max-width: 376px;
  border-radius: 5px 5px 0px 0px;
}
/*2列*/
.cmn_photo_index.col2 li{
  display: inline-block;
  width: 48.7%;
  margin-right: 2.6%;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  box-shadow: 1px 1px 4px rgb(204 204 204 / 60%);
  border-radius: 5px;
  background: #fff;
}
.cmn_photo_index.col2 li:nth-child(2n) {
  margin-right: 0px;
}
.cmn_photo_index.col2 li:nth-child(n+3) {
  margin-top: 20px;
}
.cmn_photo_index.col2 li .photo img{
  width: 100%;
  max-width: 584px;
  border-radius: 5px 5px 0px 0px;
}
.cmn_photo_index li a{
  display: block;
  background-image: url(/assets/img/ico_arrow.svg);
  background-repeat: no-repeat;
  background-size: 9px auto;
  font-size: 19px;
  font-size: 1.9rem;
}
.cmn_photo_index.col3 li a{
  padding: 13px 2% 13px 13%;
  background-position: 6% 50%;
}
.cmn_photo_index.col2 li a {
  padding: 13px 2% 13px 9%;
  background-position: 4% 50%;
}
@media screen and (max-width: 768px) {
  /*3列*/
  .cmn_txt_index.col3 li{
    display: block;
    width: 100%;
  }
  .cmn_txt_index.col3 li{
    border-top: #0445a3 1px solid;
    border-bottom: none;
    margin-right: 0px;
    width: 100%;
    background-position: 5px 17px;
  }
  .cmn_txt_index.col3 li:last-child {
    border-bottom: #0445a3 1px solid;
  }
  /*2列*/
  .cmn_txt_index.col2 li{
    display: block;
    width: 100%;
  }
  .cmn_txt_index.col2 li{
    border-top: #0445a3 1px solid;
    border-bottom: none;
    margin-right: 0px;
    width: 100%;
    background-position: 5px 17px;
  }
  .cmn_txt_index.col2 li:last-child {
    border-bottom: #0445a3 1px solid;
  }
  .cmn_txt_index li a {
    padding: 12px 0px 12px 25px;
  }
  .cmn_photo_index {
    display: block;
    width: 100%;
    max-width: 372px;
    margin: 0 auto 27px;
  }
  /*3列*/
  .cmn_photo_index.col3 li{
    margin-right: 0px;
    margin-top: 17px;
    width: 100%;
    background-position: 5px 15px;
  }
  .cmn_photo_index.col3 li:nth-child(n+4) {
    margin-top: 17px;
  }
  /*2列*/
  .cmn_photo_index.col2 li{
    margin-right: 0px;
    margin-top: 17px;
    width: 100%;
    background-position: 5px 15px;
  }
  .cmn_photo_index.col2 li:nth-child(n+3) {
    margin-top: 17px;
  }
  .cmn_photo_index li a{
    font-size: 16px;
    font-size: 1.6rem;
  }
  .cmn_photo_index.col2 li a{
    padding: 13px 2% 13px 13%;
    background-position: 6% 50%;
  }
}
.cmn_border_index {
  margin-bottom: 27px;
  display: -webkit-box;
    display: -ms-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
}
.cmn_border_index li{
  border: #014099 1px solid;
  border-radius: 5px;
  margin-right: 3%;
  width: 31.3%;
  background-image: url(/assets/img/ico_arrow.svg);
  background-repeat: no-repeat;
  background-position: 16px 50%;
  background-size: 9px auto;
  font-size: 19px;
  font-size: 1.9rem;
  font-weight: bold;
  -webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
  display: -webkit-box;
    display: -ms-flex;
    display: -webkit-flex;
    display: flex;
}
/*3列*/
.cmn_border_index.col3 li{
  margin-right: 3%;
  width: 31.3%;
}
.cmn_border_index.col3 li:nth-child(3n) {
  margin-right: 0px;
}
.cmn_border_index.col3 li:nth-child(n+4) {
  margin-top: 15px;
}
/*2列*/
.cmn_border_index.col2 li{
  width: 48.7%;
  margin-right :2.6%;
}
.cmn_border_index.col2 li:nth-child(2n) {
  margin-right: 0px;
}
.cmn_border_index.col2 li:nth-child(n+3) {
  margin-top: 15px;
}
.cmn_border_index li a{
  display: block;
  width: 100%;
  padding: 12px 0px 12px 35px;
}
@media screen and (max-width: 768px) {
  .cmn_border_index li{
    font-size: 16px;
    font-size: 1.6rem;
    background-position: 8px 50%;
  }
  /*3列*/
  .cmn_border_index.col3 li{
    display: block;
    width: 100%;
    margin-right: 0px;
  }
  .cmn_border_index.col3 li:nth-child(n+2) {
  margin-top: 12px;
  }
  /*2列*/
  .cmn_border_index.col2 li{
    display: block;
    width: 100%;
    margin-right: 0px;
    background-position: 5px 17px;
  }
  .cmn_border_index.col2 li:nth-child(n+2) {
    margin-top: 12px;
  }
  .cmn_border_index li a {
    padding: 12px 0px 12px 25px;
  }
}
/* ===============================================
 体験談詳細
=============================================== */
.cmn_tit_comment{
  background:#eaf0f8;
  padding:15px;
  border-top: solid 2px #1663d4;
  border-bottom: solid 2px #1663d4;
  margin-bottom: 20px;
}
.cmn_tit_comment .flag{
  max-width:35px;
  margin-right: 5px;
  vertical-align: middle;
}
/* ===============================================
# CMSの時余白の調整
=============================================== */
#cms_contener > .cms_txt{
  margin-bottom: 20px;
}
#cms_contener .listLink1+.cmn_btn{
  margin-top: 40px;
}
.cmn_p+.cmn_ttl02,
.cms_txt+.cmn_ttl02,
.listLink1+.cmn_ttl02,
.listLink1+.cmn_ttl03,
.listLink1+.cmn_ttl05,
.cmn_btn+.cmn_ttl02,
.cmn_btn+.cmn_ttl02,
.cmn_btn+.cmn_ttl05{
  margin-top: 40px;
}
#cms_contener .cmn_ttl01 + .cmn_btn,
#cms_contener .cmn_ttl02 + .cmn_btn,
#cms_contener .cmn_ttl03 + .cmn_btn,
#cms_contener .listLink1 + .cms_txt,
#cms_contener .cmn_btn + .cms_txt{
  margin-top: 30px;
}
#cms_contener .tableStyle .listLink1{
  margin-bottom: 0;
}

.cmn_index+.cmn_ttl01{
  margin-top: 40px;
}
.cms_table table{
  width: 100%;
  table-layout: fixed;
  margin-bottom: 60px;
}
#cms_contener .cmn_gallery figure img{
  width: auto !important;
}
@media screen and (max-width :768px){
  .cms_table table{
    margin-bottom: 30px;
  }
}

/* ===============================================
# 画像スライド
=============================================== */
.cmn_area_slide {
  padding-top: 20px;
  padding-bottom: 20px;
}
.cmn_area_slide * {
  box-sizing: border-box;
  text-align: center;
}
.cmn_area_slide img {
  vertical-align: bottom;
}
.cmn_area_slide .thumb_container{
  position: relative;
}
.cmn_area_slide .thumb_container .arrow {
  display:-webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  position: absolute;
  z-index: 100;
  width: 32px;
  height: 32px;
  top: 50%;
  border-radius: 50%;
  background: #1d4295;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  cursor: pointer;
}
.cmn_area_slide .thumb_container .prev {
  left: -16px;
  padding-left: 3px;
}
.cmn_area_slide .thumb_container .next {
  right: -16px;
  padding-right: 3px;
}
.cmn_area_slide .thumb_container .arrow::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
}
.cmn_area_slide .thumb_container .prev::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.cmn_area_slide .thumb_container .next::after {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.cmn_area_slide .carousel_thumb {
  display:-webkit-box;
  display: flex;
  margin: 0 auto;
}
.cmn_area_slide .carousel_thumb li {
  position: relative;
  width: 20%;
  background-color: #fff;
  border: 2px solid #fff;
  box-sizing: content-box;
  cursor: pointer;
  background: #fff;
}
.cmn_area_slide .carousel_thumb figure {
  /* aspect-ratio対策 */
  width: 100%;
  padding-top: 56.25%;
  overflow: hidden;
  height: auto;
  position: relative;
}
.cmn_area_slide .carousel_thumb figure img {
  opacity: 0.6;
  object-fit: cover;
  aspect-ratio: 16/9;
  /* aspect-ratio対策 */
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.cmn_area_slide .carousel_thumb li.swiper-slide-active img,
.cmn_area_slide .carousel_thumb li.swiper-slide-thumb-active img {
  opacity: 1;
  border: solid 2px #1d4295;
}
.cmn_area_slide .carousel_thumb li {
  float: left;
}
.cmn_area_slide .view_block {
  position: relative;
  margin: 0 2px;
}
.cmn_area_slide .view_block figure{
  background-color: #fff;
}
.cmn_area_slide .view_block figure img {
  vertical-align: bottom;
  max-height: 500px;
}
.cmn_area_slide .view_block .arrow {
  display: none;
}
.cmn_area_slide .view_block figcaption{
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(29, 66, 149, 0.70);
  color: #fff;
  padding: 5px 20px;
  display: none;
  -webkit-animation:fadein 2s ease;
  animation: fadein 2s ease;
}
.cmn_area_slide .view_block .swiper-slide-active figcaption {
  display: block;
  -webkit-animation:fadein 2s ease;
  animation: fadein 2s ease;
}
.cmn_area_slide .view_block figcaption p{
  -webkit-animation:fadein 1s ease;
  animation: fadein 1s ease;
}
.cmn_area_slide .view_block figcaption p.title{
  font-weight: bold;
  font-size: 110%;
  display: none;
}
.cmn_area_slide .view_block .swiper-slide-active figcaption p{
  display: block;
  -webkit-animation:fadein 1s ease;
  animation: fadein 1s ease;
}
@-webkit-keyframes fadein {
  0%{
    opacity: 0;
  }
  100%{
    opacity: 1;
  }
}
@keyframes fadein {
  0%{
    opacity: 0;
  }
  100%{
    opacity: 1;
  }
}
@media screen and (max-width: 640px) {
  .cmn_area_slide .view_block figcaption{
    padding: 5px 15px;
  }
  .cmn_area_slide .view_block figcaption p{
    font-size: 12px;
    font-size: 1.2rem;
  }
  .cmn_area_slide .view_block figcaption p.title{
    font-size: 14px;
    font-size: 1.4rem;
  }
  .cmn_area_slide .view_block figure{
    /* aspect-ratio対策 */
    width: 100%;
    padding-top: 66.6666%;
    overflow: hidden;
    height: auto;
    position: relative;
  }
  .cmn_area_slide .view_block figure img {
    aspect-ratio: 4/3;
    /* aspect-ratio対策 */
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
  }
  .cmn_area_slide .thumb_container .arrow {
    display: none !important;
  }
  .cmn_area_slide .main_block {
    position: relative;
  }
  .cmn_area_slide .view_block {
    position: relative;
  }
  .cmn_area_slide .view_block .arrow {
    display:-webkit-box;
    display: flex;
    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center;
    position: absolute;
    z-index: 10;
    width: 32px;
    height: 32px;
    top: 50%;
    margin: 0 2.6%;
    border-radius: 50%;
    background: #fff;
    opacity: 1;
  }
  .cmn_area_slide .view_block .prev {
    left: 0;
    padding-left: 3px;
  }
  .cmn_area_slide .view_block .next {
    right: 0;
    padding-right: 3px;
  }
  .cmn_area_slide .view_block .arrow::after {
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    border-top: 2px solid #1d4295;
    border-left: 2px solid #1d4295;
  }
  .cmn_area_slide .view_block .prev::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .cmn_area_slide .view_block .next::after {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }
}