@charset "utf-8";
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,button,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,summary,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video,*::before,*::after{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}img{vertical-align:bottom}

/* ===============================================
# common
=============================================== */
*{
  box-sizing: border-box;
}
html {
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;} /* 10px */

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
body{
  padding: 0;
  word-wrap : break-word;
  overflow-wrap : break-word;
  font-size:18px;
  font-size:1.8rem;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  -webkit-animation: PageIn 1.3s ease 0s 1 normal;
  animation: PageIn 1.3s ease 0s 1 normal;
  line-height: 1.722;
  -webkit-text-size-adjust: 100%;
}
@media all and (-ms-high-contrast:none) {
	body {
		font-family: "メイリオ",Meiryo,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	}
}
@keyframes PageIn {
    0% {opacity: 0;}
    100% {opacity: 1;}
}

@-webkit-keyframes PageIn {
    0% {opacity: 0;}
    100% {opacity: 1;}
}

.wrapper{
  position: relative;
  width: 100%;
}
main .inner{
  position: relative;
  width: 100%;
  max-width: 1450px;
  padding-right: 75px;
  padding-left: 75px;
  margin-right: auto;
  margin-left: auto;
}
a{
  color: #00b097;
  text-decoration: underline;
  word-break: break-all;
}
a[href=""],a.nolink {
  pointer-events: none;
  text-decoration: none;
}
img{
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
img[src*=".svg"] {
  width: 100%;
  height: auto;
}
button{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  text-align: left;
  font-size: 16px;
  font-size: 1.6rem;
  color: #000;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
input[type="text"],input[type="search"]{
  margin: 0;
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
}
.for_pc{
  display: block;
}
header .for_tab{
  display: none;
}
.for_sp{
  display: none;
}
span.for_pc,
br.for_pc,
img.for_pc{
  display: inline;
}
span.for_sp,
br.for_sp,
img.for_sp{
  display: none;
}
.flex{
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
}
.flex_center{
  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;  
}
@media print,screen and (min-width :835px){
  .flex_pc{
    display: -webkit-box;
    display: -ms-flex;
    display: -webkit-flex;
    display: flex;
  }
}
@media screen and (min-width :835px){
  a[href^="tel:"] {
    color: #000;
    pointer-events: none;
    text-decoration: none;
  }
}
@media screen and (max-width :1024px){
  main .inner{
    width: 90%;
    padding-right: 0;
    padding-left: 0;
  }  
  header .for_pc{
    display: none;
  }
  header .for_tab{
    display: block;
  }
}
@media screen and (max-width :834px){
  body{
    font-size:14px;
    font-size:1.4rem;
    line-height: 1.607;
  }
  .for_pc{
    display: none;
  }
  .for_sp{
    display: block;
  }
  span.for_pc,
  br.for_pc,
  img.for_pc{
    display: none;
  }
  span.for_sp,
  br.for_sp,
  img.for_sp{
    display: inline;
  }
  button{
    font-size:14px;
    font-size:1.4rem;
  }
}
@media screen and (max-width :340px){
  br.nomini{
    display: none !important;
  }
}
/*
 マウスオーバー
----------------------------------------------------------- */
.ov{
  display:block;
}
.over{
  display:block;
}
@media (hover:hover) and (pointer: fine) {
  .ov,
  .over{
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    cursor: pointer;
  }
  .ov:hover{
    opacity: .5;
    text-decoration: none;
  }
}
.cmn_arrow{
  position: relative;  
  padding-left: 22px;
}

.cmn_arrow,
.wrap_submenu .area_submenu dl dd a,
#lnav .ttl_third:not(.acd) > a,
#lnav .fourth a,
.nav_target .box_ttl ul a{
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;  
}
.cmn_arrow::before,
.wrap_submenu .area_submenu dl dd a::before,
#lnav .ttl_third:not(.acd) > a::before,
#lnav .fourth a::before,
.nav_target .box_ttl ul a::before{
  position: absolute;
  left:0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  content: '';
  width: 11px;
  height: 11px;
  background:url("/assets/img/ico_arrow.svg")no-repeat left center;
  background-size: contain;  
}
.cmn_arrow.right{
  padding-left: 0;
  padding-right: 22px;
}
.cmn_arrow.right::before,
#lnav .ttl_third:not(.acd) > a::before,
#lnav .fourth a::before{
  left: auto;
  right:0;
}
@media (hover: hover) and (pointer: fine) {
  a.cmn_arrow:hover,
  #header .menu_tool .language a:hover,
  .wrap_submenu .area_submenu dl dd a:hover,
  .nav_target .box_ttl ul a:hover{
    opacity: 0.5;
  }
    
  a.cmn_arrow:hover::before,
  #header .menu_tool .language a:hover::before,
  .wrap_submenu .area_submenu dl dd a:hover::before,
  #lnav .ttl_third:not(.acd) > a:hover::before,
  #lnav .fourth a:hover::before,
  .nav_target .box_ttl ul a:hover::before{
    -webkit-animation: arrow 0.6s cubic-bezier(0.645, 0.045, 0.355, 1);
    animation: arrow 0.6s cubic-bezier(0.645, 0.045, 0.355, 1); 
  }  
}
@media screen and (max-width :834px){
  .cmn_arrow {
    position: relative;
    padding-left: 17px;
  }  
  .cmn_arrow::before,
  .wrap_submenu .area_submenu dl dd a::before{
    width: 8px;
    height: 8px;
  }  
  .cmn_arrow.right{
    padding-right: 17px;
  }    
}
@-webkit-keyframes arrow {
  0% {
    background-position: left center; }
  45% {
    background-position: 8px center; }
  50% {
    opacity: 0;
    background-position: -8px center; }
  51% {
    opacity: 1;
    background-position: -8px center; }
  100% {
    background-position: left center; } }
@keyframes arrow {
  0% {
    background-position: left center; }
  45% {
    background-position: 8px center; }
  50% {
    opacity: 0;
    background-position: -8px center; }
  51% {
    opacity: 1;
    background-position: -8px center; }
  100% {
    background-position: left center; } }
/* ===============================================
# main
=============================================== */
main{
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
}
main .wrap_contents{
  position: relative;
  flex-wrap: wrap;
  z-index: 100;
}
main .wrap_right{
  min-height: 700px;  
  -webkit-box-ordinal-group:3;
  order: 2;   
  -webkit-box-flex: 1;
  flex: 1;
  overflow: hidden;
}
main .main_contents{
  padding-top: 65px;
  padding-bottom: 80px;
}
main .main_contents > *:last-child{
  margin-bottom: 0;
}
main .main_contents p > a{
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;  
}
main .main_contents p > a:hover{
  opacity: 0.5;
}
@media screen and (max-width :1024px){
  main .wrap_contents{
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; 
    flex-wrap: nowrap;
  }
  main .wrap_right{
    -webkit-box-flex: auto;
    flex: auto;
    width: 100%;
  }
}
@media screen and (max-width :834px){
  main .wrap_right{
    min-height: inherit;  
  }  
  main .main_contents{
    padding-top: 20px;
    padding-bottom: 40px;
  }  
}


/* ===============================================
# footer
=============================================== */
#footer{
  width: 100%;
  padding: 37px 0 30px;
  background: #e6f1ef;
}
#footer > .inner{
  position: relative;
  width: 92%;
  max-width: 1460px;
  margin: 0 auto;
}
@media screen and (max-width :1024px){
  #footer{
   padding: 0 0 15px; 
  }
  #footer > .inner{
   width: 100%;
   display:-webkit-box;
   display:-ms-flexbox;
   display:flex;
   -webkit-box-orient: vertical;
   -webkit-box-direction: normal;
   -ms-flex-direction: column;
   flex-direction: column;      
  }
}
/*logo---------------------------------*/
#footer .logo{
  width: 227px;
}
@media screen and (max-width :1024px){
  #footer .logo{
    width: 170px;
    -webkit-box-ordinal-group:2;
    order: 1;  
    margin: 30px auto 0;
  }
}
/*address---------------------------------*/
#footer address{
  margin-top: 24px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.4;
}
#footer address > p{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
}
@media print,screen and (min-width :1025px){
  #footer address > p .ttl{
    width: 18em;
  }
  #footer address > p .adr{
    -webkit-box-flex: 1;
    flex: 1;
  }  
}
@media screen and (max-width :1024px){
  #footer address{
    margin-top: 22px;
    text-align: center;
    -webkit-box-ordinal-group:3;
    order: 2;    
    font-size: 12px;
    font-size: 1.2rem;
  }
  #footer address > p,
  #footer address > p span{
    display: block;
  }
  #footer address > p:nth-child(n+2){
    margin-top: 1em;
  }
}
/*menu_siteinfo---------------------------------*/
#footer .menu_siteinfo{
  margin: 0 auto;
}
#footer .menu_siteinfo ul{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
  flex-wrap: wrap;
  max-width: 800px;
  margin: 0 0 0 auto;
}
#footer .menu_siteinfo li{
  padding: 0 10px;  
  margin-bottom:10px;
  text-align: center;
}
#footer .menu_siteinfo a{
  color: #000000;
  text-decoration: none;
}
@media print,screen and (min-width :1025px){
  #footer .menu_siteinfo{
    position: absolute;
    top: 0;
    right: 0;
    width: calc(100% - 300px);
    font-size: 13px;
    font-size: 1.3rem;  
  }
  #footer .menu_siteinfo li{
    border-left: solid 1px #939393;
  }  
  #footer .menu_siteinfo li:nth-child(1),
  #footer .menu_siteinfo li:nth-child(7){
    border-left: none;
  }
  #footer .menu_siteinfo a:hover{
    color: #00b097;
  }
}
@media screen and (max-width :1280px) and (min-width :1025px){
  #footer .menu_siteinfo{
    max-width: 500px;
  }
  #footer .menu_siteinfo li:nth-child(4){
    border-left: none;
  }    
}
@media screen and (max-width :1024px){
  #footer .menu_siteinfo{
    margin-top: 35px;
    font-size: 10px;
    font-size: 1rem;  
    -webkit-box-ordinal-group:5;
    order: 4;     
  }
  #footer .menu_siteinfo ul{
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 700px;    
  }
  #footer .menu_siteinfo li{
    padding: 0 12px;  
    border-left: solid 1px #00b097;
  }
  #footer .menu_siteinfo a{
    color: #00b097;
  }  
  #footer .menu_siteinfo li:nth-child(3n+6){
    border-right: solid 1px #00b097;
  }    
  .android #footer .menu_siteinfo ul{
    display: block;
  }
  .android #footer .menu_siteinfo li{
    display: inline-block;
  }
}
@media screen and (max-width :768px){
  #footer .menu_siteinfo ul{
    max-width: 400px;
  }
  #footer .menu_siteinfo li:nth-child(3){
    border-right: solid 1px #00b097;
  }    
}
@media screen and (max-width :396px){
  #footer .menu_siteinfo ul{
    max-width: 320px;
  }  
  #footer .menu_siteinfo li:nth-child(5),
  #footer .menu_siteinfo li:nth-child(8){
    border-right: solid 1px #00b097;
  }  
  #footer .menu_siteinfo li:nth-child(6){
    border-right:none;
  }     
}
/*menu_footer---------------------------------*/
#footer .menu_footer a[target="_blank"] span::after{
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  background: url("/assets/img/ico_blank_g.svg")no-repeat right center;
  background-size: contain;
  margin-left: 5px;
}
@media print,screen and (min-width :1025px){
  #footer .menu_footer{
    margin-top: 20px;
    padding-top: 20px;
    border-top: solid 1px #c8d9d7;
    -ms-flex-pack: distribute;
    justify-content: space-around;  
  }
  #footer .menu_footer .col{
    max-width: 20%;
    flex-grow:1;
    margin-bottom: 20px;
  }
  #footer .menu_footer .col:not(:last-child){
    padding-right: 1em;    
  }
  #footer .menu_footer .col dl:nth-child(n+2){
    margin-top: 30px;
  }
  #footer .menu_footer dl dt{
    font-size: 15px;
    font-size:1.5rem;
    font-weight: bold;
  }
  #footer .menu_footer dl dt a{
    text-decoration: none;
  }
  #footer .menu_footer dl dt button{
    display: none;
  }
  #footer .menu_footer dl dd{
    padding-top: 7px;
    padding-left: 23px;
    line-height: 1.3;  
  }
  #footer .menu_footer dl dd li{
    position: relative;
    padding-left: 12px;  
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: bold;
  }
  #footer .menu_footer dl dd li:nth-child(n+2){
    margin-top: 8px;
  }
  #footer .menu_footer dl dd a{
    text-decoration: none;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;      
  }
  #footer .menu_footer dl dd a:hover{
    opacity: 0.5;
  }
  #footer .menu_footer dl dd li::before{
    content: '';
    width: 7px;
    height: 2px;
    position: absolute;
    top:0.5em;
    left: 0;
    background: #00b097;
  }  
}
@media screen and (max-width :1024px){
  #footer .menu_footer{
    display: block;
    -webkit-box-ordinal-group:1;
    order:0;  
    font-size: 15px;
    font-size: 1.5rem;    
    font-weight: bold;
  }
  #footer .menu_footer .ttl_second{
    position: relative;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;  
    border-bottom: solid 1px #00b097;    
  }
  #footer .menu_footer .ttl_second::before{
    content: '';
    width: 50px;
    height: 2px;
    background: #00b097;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 3;
  }  
  #footer .menu_footer .ttl_second >a{
    display: block;
    position: relative;
    z-index: 5;
    -webkit-box-flex: 1;
    flex: 1;  
    padding: 13px 50px 13px 15px;
    text-decoration: none;
    color: #000;
  }
  #footer .menu_footer .ttl_second >a::before{
    display: none;
  }
  #footer .menu_footer .ttl_second .ico_acd{
    position: relative;
    z-index: 2;
    width: 50px;
    background: url("/assets/img/ico_acd_down.svg")no-repeat center center;
    background-size: 12px auto;
  }
  #footer .menu_footer .ttl_second .ico_acd.open{
    background-image: url("/assets/img/ico_acd_up.svg");
  }
  #footer .menu_footer .submenu{
    display: none;
    border-bottom: solid 1px #00b097;    
  }
  #footer .menu_footer .submenu.open{
    display: block;
  }
  #footer .menu_footer .third a{
    display: block;
    position: relative;  
    padding: 13px 50px 13px 30px;
    text-decoration: none;
    color: #000;
    background:url("/assets/img/ico_arrow.svg")no-repeat right 23px center;
    background-size: 8px auto;
  }
}
/*copyright---------------------------------*/
#footer .copyright{
  margin-top: 25px;
  text-align: center;
  font-size: 11px;
  font-size: 1.1rem;
  color: #00b097;
  font-family: 'Roboto Condensed', sans-serif;
}
@media screen and (max-width :1024px){
  #footer .copyright{
    margin-top: 0;
    -webkit-box-ordinal-group:6;
    order:5;
    font-size: 10px;
    font-size: 1rem;
  }
}
/* ===============================================
# アニメーション
=============================================== */
@keyframes listfade {
  0% {
    opacity: 0;
     -webkit-transform: translateY(5px);
    transform: translateY(5px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
@keyframes fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
     -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }

  to {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
/* ===============================================
# modal_translation
=============================================== */
.area_translation_wrap{
  display: none;
}
.modal_translation .modaal-container{
  max-width: 900px;
  overflow: hidden;
  background: none;
  box-shadow: none;
}
.modal_translation .modaal-content{
  border-radius: 40px;
  background: #fff;
}
.modal_translation .modaal-content-container{
  padding: 0;
}
.modal_translation #area_translation{
  display: block;
}
.modal_translation #area_translation.en .zh,
.modal_translation #area_translation.zh .en{
  display: block;
  content-visibility: visible;  
}

.modal_translation #area_translation.en .zh,
.modal_translation #area_translation.zh .en{
  display: none;
  content-visibility:hidden;
}

#area_translation{
  display: none;
  padding: 57px 30px 57px;
  color: #000;
  font-weight: 700;
  font-size: 16px;
  font-size: 1.6rem;  
}
#area_translation .en{
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
#area_translation .ttl{
  text-align: center;
  font-size: 30px;
  font-size: 3rem;
  margin-bottom: 25px;
  line-height: 1;
  color: #00b097;
}
#area_translation .ttl img{
  width: 45px;
  vertical-align: middle;
  margin-right: 20px;
}
#area_translation .txt{
  max-width: 615px;
  margin: 0 auto;
  line-height: 1.875;
}
#area_translation .btn{
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 30px;
}
#area_translation .btn li{
  width: 250px;
}
#area_translation .btn li.ok{
  margin-left: 50px;
}
#area_translation .btn li a{
  display: block;
  color: #000;
  text-align: center;
  background: #fff;
  border: solid 1px #cdcdcd;
  padding: 15px 10px;
  font-size: 13px;
  font-size: 1.3rem;
  text-decoration: none;
}
#area_translation .btn li.ok a{
  background: #00b097;
  border: solid 1px #00b097;
  color: #fff;
  border-radius: 3px;
}
#area_translation .btn li a > span.cmn_arrow{
  padding:0 40px;
}
#area_translation .btn li a > span.cmn_arrow.back::before{
  transform: scale(-1,1) translateY(-50%);
}
#area_translation .btn li.ok a > span.cmn_arrow::before{
  background:url("/assets/img/ico_arrow_w.svg")no-repeat left center;
}
@media screen and (max-width :768px){
  .modal_translation .modaal-inner-wrapper{
    padding-right: 10px;
    padding-left: 10px;
  }  
  .modal_translation .modaal-content{
    border-radius: 20px;
  }
  #area_translation{
    padding: 40px 22px 40px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  #area_translation .ttl{
    font-size: 27px;
    font-size: 2.7rem;
    margin-bottom: 20px;
  }
  #area_translation .ttl img{
    width: 32px;
    margin-right: 10px;
  }
  #area_translation .txt{
    line-height: 1.571;
  }  
  #area_translation .btn{
    margin-top: 30px;
  }
  #area_translation .btn li{
    width: 48%;
  }
  #area_translation .btn li.ok{
    margin-left: 4%;
  }
  #area_translation .btn li a{
    padding: 9px 10px;
    border-radius: 2px;
  }
  #area_translation .btn li a > span.cmn_arrow{
    padding:0 20px;
  }  
}
@charset "utf-8";
/* ===============================================
# マージン
=============================================== */
.mt_00{margin-top:0!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:5pc!important}.mt_85{margin-top:85px!important}.mt_90{margin-top:90px!important}.mt_95{margin-top:95px!important}.mt_100{margin-top:75pt!important}.mb_00{margin-bottom:0!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:5pc!important}.mb_85{margin-bottom:85px!important}.mb_90{margin-bottom:90px!important}.mb_95{margin-bottom:95px!important}.mb_100{margin-bottom:75pt!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}

.pt_00{padding-top:0!important}.pt_05{padding-top:5px!important}.pt_10{padding-top:10px!important}.pt_15{padding-top:15px!important}.pt_20{padding-top:20px!important}.pt_25{padding-top:25px!important}.pt_30{padding-top:30px!important}.pt_35{padding-top:35px!important}.pt_40{padding-top:40px!important}.pt_45{padding-top:45px!important}.pt_50{padding-top:50px!important}.pt_55{padding-top:55px!important}.pt_60{padding-top:60px!important}.pt_70{padding-top:70px!important}.pt_75{padding-top:75px!important}.pt_80{padding-top:5pc!important}.pt_85{padding-top:85px!important}.pt_90{padding-top:90px!important}.pt_95{padding-top:95px!important}.pt_100{padding-top:75pt!important}.pb_00{padding-bottom:0!important}.pb_05{padding-bottom:5px!important}.pb_10{padding-bottom:10px!important}.pb_15{padding-bottom:15px!important}.pb_20{padding-bottom:20px!important}.pb_25{padding-bottom:25px!important}.pb_30{padding-bottom:30px!important}.pb_35{padding-bottom:35px!important}.pb_40{padding-bottom:40px!important}.pb_45{padding-bottom:45px!important}.pb_50{padding-bottom:50px!important}.pb_55{padding-bottom:55px!important}.pb_60{padding-bottom:60px!important}.pb_70{padding-bottom:70px!important}.pb_75{padding-bottom:75px!important}.pb_80{padding-bottom:5pc!important}.pb_85{padding-bottom:85px!important}.pb_90{padding-bottom:90px!important}.pb_95{padding-bottom:95px!important}.pb_100{padding-bottom:75pt!important}.ml_05{padding-left:5px!important}.ml_10{padding-left:10px!important}.ml_15{padding-left:15px!important}.ml_20{padding-left:20px!important}.ml_25{padding-left:25px!important}.ml_30{padding-left:30px!important}.ml_35{padding-left:35px!important}.ml_40{padding-left:40px!important}.ml_45{padding-left:45px!important}.ml_50{padding-left:50px!important}.mr_05{padding-right:5px!important}.mr_10{padding-right:10px!important}.mr_15{padding-right:15px!important}.mr_20{padding-right:20px!important}.mr_25{padding-right:25px!important}.mr_30{padding-right:30px!important}.mr_35{padding-right:35px!important}.mr_40{padding-right:40px!important}.mr_45{padding-right:45px!important}.mr_50{padding-right:50px!important}
/* ===============================================
# 幅指定
=============================================== */
.width_05{width:5%!important}.width_10{width:10%!important}.width_13{width:13%!important}.width_15{width:15%!important}.width_17{width:17%!important}.width_20{width:20%!important}.width_25{width:25%!important}.width_28{width:28%!important}.width_30{width:30%!important}.width_35{width:35%!important}.width_40{width:40%!important}.width_45{width:45%!important}.width_50{width:50%!important}.width_55{width:55%!important}.width_60{width:60%!important}.width_65{width:65%!important}.width_70{width:70%!important}.width_75{width:75%!important}.width_80{width:80%!important}.width_85{width:85%!important}.width_90{width:90%!important}.width_95{width:95%!important}.width_100{width:100%!important}

.width_1em{width:1em!important}.width_2em{width:2em!important}.width_3em{width:3em!important}.width_4em{width:4em!important}.width_5em{width:5em!important}.width_6em{width:6em!important}.width_7em{width:7em!important}.width_8em{width:8em}.width_9em{width:9em!important}.width_10em{width:10em!important}.width_11em{width:11em}.width_12em{width:12em!important}.width_13em{width:13em!important}.width_14em{width:14em!important}.width_15em{width:15em!important}.width_16em{width:16em!important}.width_17em{width:17em!important}.width_18em{width:18em!important}.width_19em{width:19em!important}.width_20em{width:20em!important}

@media print,screen and (min-width :835px) {
  .w_70pc{
    width: 910px !important;
    max-width: 100%;
  }  
  .w_60pc{
    width: 780px !important;
    max-width: 100%;
  }
  .w_50pc{
    width: 650px !important;
    max-width: 100%;
  }
  .w_40pc{
    width: 520px !important;
    max-width: 100%;
  }  
  .w_30pc{
    width: 390px !important;
    max-width: 100%;
  }
  .w_20pc{
    width: 260px !important;
    max-width: 100%;
  }
  
  .width_05_pc{width:5%!important}.width_10_pc{width:10%!important}.width_15_pc{width:15%!important}.width_20_pc{width:20%!important}.width_25_pc{width:25%!important}.width_28_pc{width:28%!important}.width_30_pc{width:30%!important}.width_35_pc{width:35%!important}.width_40_pc{width:40%!important}.width_45_pc{width:45%!important}.width_50_pc{width:50%!important}.width_55_pc{width:55%!important}.width_60_pc{width:60%!important}.width_65_pc{width:65%!important}.width_70_pc{width:70%!important}.width_75_pc{width:75%!important}.width_80_pc{width:80%!important}.width_85_pc{width:85%!important}.width_90_pc{width:90%!important}.width_95_pc{width:95%!important}.width_100_pc{width:100%!important}  
}
@media screen and (max-width :834px) {
  .width_05_sp{width:5%!important}.width_10_sp{width:10%!important}.width_15_sp{width:15%!important}.width_20_sp{width:20%!important}.width_25_sp{width:25%!important}.width_28_sp{width:28%!important}.width_30_sp{width:30%!important}.width_35_sp{width:35%!important}.width_40_sp{width:40%!important}.width_45_sp{width:45%!important}.width_50_sp{width:50%!important}.width_55_sp{width:55%!important}.width_60_sp{width:60%!important}.width_65_sp{width:65%!important}.width_70_sp{width:70%!important}.width_75_sp{width:75%!important}.width_80_sp{width:80%!important}.width_85_sp{width:85%!important}.width_90_sp{width:90%!important}.width_95_sp{width:95%!important}.width_100_sp{width:100%!important}  
}
/* ===============================================
# フォント
=============================================== */
.fontMincho{
  font-family: "游明朝体", "Yu Mincho","ヒラギノ明朝Pro", "Hiragino Mincho Pro", YuMincho, serif  !important;
}
.en,
.fontEn{
  font-family: 'Roboto', sans-serif;
}
.fontEn2{
  font-family: 'Roboto Condensed', sans-serif;
}
.date,
time{
  font-family: 'Roboto', sans-serif;
}
.vtext{
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
  display: inline-block;
  vertical-align: middle;
}
.fRed,
.txtRed{
  color: #ff0000;
}
.fGreen{
  color: #00b097;
}
.fBlue{
  color: #0000ff;
}
.fBlack{
 color: #000; 
}
.fWhite{
 color: #fff; 
}
.txtCenter{
  text-align: center !important;
}
.txtLeft{
  text-align: left!important;
}
.txtRight{
  text-align: right!important;
}
b,.txtBold,em,strong{
  font-weight: bold;
}
sup {
  vertical-align: super;
  font-size: 70%;
}
sub {
  vertical-align: sub;
  font-size: 70%;
}
i{
  font-style: italic;
}
.font60{font-size:60%}.font65{font-size:65%}.font70{font-size:70%}.font75{font-size:75%}.font80{font-size:80%}.font85{font-size:85%}.font90{font-size:90%}.font95{font-size:95%}.font105{font-size:105%}.font110{font-size:110%}.font120{font-size:120%}.font125{font-size:125%}.font130{font-size:130%}.font140{font-size:140%}.font145{font-size:145%}.font150{font-size:150%}.font155{font-size:155%}.font160{font-size:160%}.font165{font-size:165%}

@media print,screen and (min-width :1025px){
  .txtCenter_pc{
    text-align: center !important;
  }
}
/* ===============================================
# サムネイル
=============================================== */
.thumb{
  position: relative;
  width: 100%;
  padding-top: 100%;
  overflow: hidden;
}
.thumb img{
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  max-width: inherit;
  object-fit: cover;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);  
}
@media all and (-ms-high-contrast:none) {
  .thumb img{
    height: auto;
	}
}
/* ===============================================
# 背景色
=============================================== */
.bg01{
  background: #f0faf9 !important;
}
.bg02{
  background: #f9f9ee !important;
}
.bg03{
  background: #00b097 !important;
}
.bg04{
  background: #f5f5f5 !important;
}
.bg05{
  background: #fff !important;
}
.bg06{
  background: #eaf6f4 !important;
}

/* ===============================================
# ページタイトル
=============================================== */
.cmn_ttl_page{
  min-height: 272px;
  background: rgb(220,247,243);
  background: linear-gradient(90deg, rgba(220,247,243,1) 0%, rgba(220,247,243,1) 50%, rgba(192,231,243,1) 100%);
}
/*topicpath*/
.cmn_ttl_page .topicpath{
  overflow-x: auto;
  scrollbar-color: #00b097 #E3E3E3;
  scrollbar-width: thin;    
  padding: 14px 2.3%;
}
.cmn_ttl_page .topicpath::-webkit-scrollbar{
  height: 10px;
}
.cmn_ttl_page .topicpath::-webkit-scrollbar{
  background: #E3E3E3;
}
.cmn_ttl_page .topicpath::-webkit-scrollbar-thumb{
  border-radius:0;
  background: #00b097;
}
.cmn_ttl_page .topicpath ol{
  font-size: 14px;
  font-size: 1.4rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: -webkit-inline-flex;
  display: inline-flex;
  flex-wrap: nowrap;  
}
.cmn_ttl_page .topicpath ol li{
  flex-shrink: 0;
}
.cmn_ttl_page .topicpath ol li:nth-child(n+2){
  margin-left: 20px;
  padding-left: 23px;
  background:url("/assets/img/ico_arrow2.svg")no-repeat left center;
  background-size: 8px auto;
}
.cmn_ttl_page .topicpath ol a{
  text-decoration: none;
  word-break: keep-all;
}
.cmn_ttl_page .topicpath ol li.home a{
  padding-left: 27px;
  background: url("/assets/img/ico_home.svg")no-repeat left center;
  background-size: 14px auto;
}
/*ttl*/
.cmn_ttl_page .box_ttl{
  width: 88%;
  margin: 0 auto;
  padding: 55px 0;
  position: relative;
  z-index: 1;
}
.cmn_ttl_page.news .box_ttl{
  padding: 20px 0 30px;
}
.cmn_ttl_page .box_ttl .ttl_second{
  font-size: 20px;
  font-size: 2rem;
  line-height: 1;
  margin-bottom: 20px;
}
.cmn_ttl_page .box_ttl .ttl_second .en{
  font-size: 16px;
  font-size: 1.6rem;
}
.cmn_ttl_page .box_ttl h1{
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: 500;
  line-height: 1.3;
}

/*area_news_date*/
.cmn_ttl_page .area_news_date{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; 
  flex-wrap: wrap;
}
.cmn_ttl_page .area_news_date .ttl_second{
  line-height: 1;
  padding-right: 27px;
  margin-right: 27px;
  margin-bottom: 15px;
  border-right: solid 1px #000;
  white-space: nowrap;
}
.cmn_ttl_page .area_news_date .box_date{
  margin-bottom: 15px;
	display : -webkit-inline-box;
	display : -ms-inline-flexbox;
	display : -webkit-inline-flex;
	display : inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; 
  flex-wrap: wrap;
}
.cmn_ttl_page .area_news_date .box_date time{
  display: block;
  color: #00b097;
  font-weight: 400;
  margin-right: 15px;
}

/*SNS*/
.cmn_ttl_page .box_sns{
  margin-top: 15px;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;  
}
.cmn_ttl_page .box_sns li{
  width: 36px;
}
.cmn_ttl_page .box_sns li:nth-child(n+2){
  margin-left: 29px;
}
@media screen and (max-width :834px){
  .cmn_ttl_page{
    min-height:170px;
  }
  /*topicpath*/
  .cmn_ttl_page .topicpath{
    padding: 10px 2.6%;
  }
  .cmn_ttl_page .topicpath ol{
    font-size: 1px;
    font-size: 1rem;
  }
  .cmn_ttl_page .topicpath ol li:nth-child(n+2){
    margin-left: 13px;
    padding-left: 20px;
    background-size: 6px auto;
  }
  .cmn_ttl_page .topicpath ol li.home a{
    padding-left:21px;
    background-size: 10px auto;
  }
  /*ttl*/
  .cmn_ttl_page .box_ttl{
    padding: 28px 0;
  }
  .cmn_ttl_page.news .box_ttl{
    padding: 5px 0 20px;
  }  
  .cmn_ttl_page .box_ttl .ttl_second{
    font-size: 14px;
    font-size: 1.4rem;
    margin-bottom: 12px;
  }
  .cmn_ttl_page .box_ttl .ttl_second .en{
    font-size: 12px;
    font-size: 1.2rem;
  }
  .cmn_ttl_page .box_ttl h1{
    font-size: 22.56px;
    font-size: 2.25rem;
  }  
  
  /*area_news_date*/
  .cmn_ttl_page .area_news_date{
    
  }
  .cmn_ttl_page .area_news_date .ttl_second{
    padding-right: 15px;
    margin-right: 15px;
  }
  .cmn_ttl_page .area_news_date .box_date{
    margin-bottom: 12px;
  }
  .cmn_ttl_page .area_news_date .box_date time{
    font-size: 11px;
    font-size: 1.1rem;
    margin-right: 12px;
  }
  
  /*SNS*/
  .cmn_ttl_page .box_sns{
    margin-top: 15px;
  }
  .cmn_ttl_page .box_sns li{
    width: 26px;
  }
  .cmn_ttl_page .box_sns li:nth-child(n+2){
    margin-left: 20px;
  }  
}

/*画像ありバージョン*/
.cmn_ttl_page.image .topicpath{
  background: #fff;
}
.cmn_ttl_page.image .inner{
    width: 100%;
    max-width: inherit;
}
.cmn_ttl_page.image .box_ttl::after {
  position: absolute;
  left: 0;
  bottom: 0;
  content: '';
  width: 100%;
  height: 1px;
  background-image: -moz-linear-gradient( -180deg, rgb(0,176,151) 0%, rgb(0,162,176) 100%);
  background-image: -webkit-linear-gradient( -180deg, rgb(0,176,151) 0%, rgb(0,162,176) 100%);
  background-image: -ms-linear-gradient( -180deg, rgb(0,176,151) 0%, rgb(0,162,176) 100%);
}
.cmn_ttl_page.image .box_ttl .ttl_second{
  margin-bottom: 10px;
  color: #00b097;
}
.cmn_ttl_page.image .box_ttl h1{
  font-size: 30px;
  font-size: 3rem;
}
@media print,screen and (min-width :835px){
  .cmn_ttl_page.image .inner{
    position: relative;
    min-height: 400px;
    overflow: hidden;
  }
  .cmn_ttl_page.image .bg{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    text-align: center;
  }  
  .cmn_ttl_page.image .bg img{
    width: 100%;
    height: 100%;
    max-width: inherit;
    object-fit: cover;
  }  
  .cmn_ttl_page.image .box_ttl{
    display: inline-block;
    width: 580px;
    padding: 38px 30px 33px;
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    text-align: center;
    background: #fff;
    box-shadow: 0px 0px 30px 0px rgba(92, 104, 99, 0.2);
  }  
}
@media all and (-ms-high-contrast:none) {
	.cmn_ttl_page.image .bg img{
    width: auto;
  }
    
}
@media screen and (max-width :834px){
  .cmn_ttl_page.image{
    min-height: inherit;
    background: #e5f7f5; 
  }
  .cmn_ttl_page.image .bg{
    position: relative;
  }
  .cmn_ttl_page.image .bg img{
    width: 100%;
  }  
  .cmn_ttl_page.image .box_ttl{
    display: block;
    width: 89.4%;
    padding: 25px 15px 20px;
    margin: 0 auto;
    text-align: center;
    background: #fff;
    box-shadow: 0px 0px 30px 0px rgba(92, 104, 99, 0.2);
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  .cmn_ttl_page.image .box_ttl .ttl_second{
    margin-bottom: 6px;
  }
  .cmn_ttl_page.image .box_ttl h1{
    font-size: 22.5px;
    font-size: 2.25rem;
  }  
}
/* ===============================================
# 本文
=============================================== */
.cmn_p{
  margin-bottom: 20px;
}

/* ===============================================
# タブ
=============================================== */
.cmn_area_pagetab{
  overflow-y: auto;
  padding-top: 60px;
  padding-bottom: 5px;
  scrollbar-color: #dcf7f3 #E3E3E3;
  scrollbar-width: thin;    
}
.cmn_area_pagetab .inner{
  width: 100%;
  max-width: inherit;
  padding: 0;
  border-bottom: solid 1px #dcdcdc;
}
.cmn_area_pagetab .inner::-webkit-scrollbar{
  height: 10px;
}
.cmn_area_pagetab .inner::-webkit-scrollbar{
  background: #E3E3E3;
}
.cmn_area_pagetab .inner::-webkit-scrollbar-thumb{
  border-radius:0;
  background: #dcf7f3;
}
.cmn_area_pagetab ul{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  flex-wrap: nowrap;
  max-width: 1400px;
  padding: 0 50px;
  margin: 0 auto;
}
.cmn_area_pagetab ul li{
  flex-shrink: 0;
}
.cmn_area_pagetab ul li:nth-child(n+2){
  margin-left: 10px;
}
.cmn_area_pagetab ul li a{
  display: block;
  padding: 0 20px 15px;  
  font-weight: bold;
  line-height: 1.3;
  text-decoration: none;
  color: #969696;
}
.cmn_area_pagetab ul li.on a{
  color: #000;
  pointer-events: none;
  border-bottom: solid 6px #00b097;
}
.cmn_area_pagetab ul li a:hover{
  color: #00b097;
}
@media screen and (max-width :834px){
  .cmn_area_pagetab{
    padding-top: 25px;
  }
  .cmn_area_pagetab ul{
    width: 90%;
    padding: 0;
  }
  .cmn_area_pagetab ul li a{
    padding: 0 10px 20px;  
    font-size: 12px;
    font-size: 1.2rem;
  }
  .cmn_area_pagetab ul li.on a{
    border-width: 3px;
  }
}
/* ===============================================
# ページ内リンク
=============================================== */
.cmn_anchor{
  margin-bottom: 10px;
  display : -webkit-inline-box;
	display : -ms-inline-flexbox;
	display : -webkit-inline-flex;
	display : inline-flex;
  flex-wrap: wrap;
}
.cmn_anchor li{
  margin-right: 50px;
  margin-bottom: 20px;
}
.cmn_anchor li:last-child{
  margin-right: 0;
}
.cmn_anchor a{
  padding-left: 23px;
  padding-bottom: 15px;
  color: #000;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.3;
  font-weight: bold;
  text-decoration: none;
  border-bottom: dashed 1px #cccccc;
  background: url("/assets/img/ico_arrow_down.svg")no-repeat left 4px top 5px;
  background-size: 10px auto;
}
.cmn_anchor a:hover{
  color: #00b097;
}

.cmn_anchor.col2,
.cmn_anchor.col3{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;  
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;  
  flex-wrap: wrap;
}
@media print,screen and (min-width :835px){
  .cmn_anchor.col3::after{
    content: '';
    width: 32%;
    display: block;
  }
  .cmn_anchor.col3 li{
    width: 32%;
    margin-right: 0;
  }  
  .cmn_anchor.col2::after{
    content: '';
    width: 49%;
    display: block;
  }  
  .cmn_anchor.col2 li{
    width: 49%;
    margin-right: 0;    
  }
}
@media screen and (max-width :834px){
  .cmn_anchor{
  }
  .cmn_anchor li{
    margin-right: 15px;
    margin-bottom: 15px;
  }
  .cmn_anchor a{
    padding-left: 20px;
    padding-bottom: 7px;
    font-size: 10px;
    font-size: 1rem;
    background-position:left 0 top 2px;
    background-size: 7px auto;
  }
  
  .cmn_anchor.col2::after,
  .cmn_anchor.col3::after{
    content: '';
    width: 48%;
    display: block;
  }    
  .cmn_anchor.col2 li,
  .cmn_anchor.col3 li{
    width: 48%;
    margin-right: 0 !important;
  }  
}
/* ===============================================
# キャッチコピー
=============================================== */
.cmn_catch{
  margin-bottom: 30px;
  font-size: 38px;
  font-size: 3.8rem;
  line-height: 1.3;
  font-family: "游明朝体", "Yu Mincho","ヒラギノ明朝Pro", "Hiragino Mincho Pro", YuMincho, serif;
}
.cmn_catch.center{
  text-align: center;
}
@media screen and (max-width :834px){
  .cmn_catch{
    font-size: 28px;
    font-size: 2.8rem;
    line-height: 1.393;
  }  
}
/* ===============================================
# 見出し
=============================================== */
/*大見出しーーーーーーーーーーーーーーーーーーーー*/
.cmn_ttl01{
  margin-bottom: 20px;
  min-height: 98px;
  padding: 10px 25px;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1.3;
  color: #fff;
  background-image: -moz-linear-gradient( -180deg, rgb(0,176,151) 0%, rgb(0,162,176) 100%);
  background-image: -webkit-linear-gradient( -180deg, rgb(0,176,151) 0%, rgb(0,162,176) 100%);
  background-image: -ms-linear-gradient( -180deg, rgb(0,176,151) 0%, rgb(0,162,176) 100%);
}
@media all and (-ms-high-contrast:none) {
	.cmn_ttl01{
    min-height: inherit;
    padding: 30px 25px;
  }
}
@media screen and (max-width :834px){
  .cmn_ttl01{
    margin-bottom: 15px;
    min-height: 62px;
    padding: 10px 15px;
    font-size: 20px;
    font-size: 2rem;
  }  
}
/*中見出しーーーーーーーーーーーーーーーーーーーー*/
.cmn_ttl02{
  margin-bottom: 20px;
  position: relative;
  min-height: 67px;
  padding: 15px 25px;  
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;  
  font-size: 21px;
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 1.3;
  background: #f0faf9   
}
.cmn_ttl02::before{
  position: absolute;
  left: 0;
  bottom: 0;
  content: '';
  width: 100%;
  height:2px; 
  background-image: -moz-linear-gradient( -180deg, rgb(0,176,151) 0%, rgb(0,162,176) 100%);
  background-image: -webkit-linear-gradient( -180deg, rgb(0,176,151) 0%, rgb(0,162,176) 100%);
  background-image: -ms-linear-gradient( -180deg, rgb(0,176,151) 0%, rgb(0,162,176) 100%);  
}
@media all and (-ms-high-contrast:none) {
	.cmn_ttl02{
    min-height: inherit;
    padding: 20px 25px;  
  }
}
@media screen and (max-width :834px){
  .cmn_ttl02{
    margin-bottom: 15px;
    min-height: 53px;
    padding: 15px 15px;  
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.375;
  } 
}
/*中見出し2ーーーーーーーーーーーーーーーーーーーー*/
.cmn_ttl06{
  margin-bottom: 20px;
  padding: 8px 0 8px 25px;  
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.3;
  border-left: solid 4px #00b097;
}
@media screen and (max-width :834px){
  .cmn_ttl06{
    margin-bottom: 15px;
    padding: 6px 0 6px 15px;  
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.333;
    border-left: solid 3px #00b097;
  }  
}
/*小見出しーーーーーーーーーーーーーーーーーーーー*/
.cmn_ttl03{
  margin-bottom: 15px;
  padding-left: 53px;
  position: relative;
  font-size: 21px;
  font-size: 2.1rem;
  line-height: 1.3;
  font-weight: bold;
}
.cmn_ttl03::before{
  display: block;
  content: '';
  width: 40px;
  height: 2px;
  background: #00b097;
  position: absolute;
  left: 0;
  top: 0.5em;
}
/*type_en*/
.cmn_ttl03.type_en{
  padding-left: 62px;
  font-size: 24px;
  font-size: 2.4rem;
}
.cmn_ttl03.type_en>.en{
  display: block;
  margin-top: 5px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  color: #00b097;
}
.cmn_ttl03.type_en::before{
  width: 35px;
}
@media screen and (max-width :834px){
  .cmn_ttl03{
    margin-bottom: 5px;
    padding-left: 29px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.375;
  }
  .cmn_ttl03::before{
    width: 22px;
  }  
  /*type_en*/
  .cmn_ttl03.type_en{
    padding-left: 28px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .cmn_ttl03.type_en>.en{
    font-size: 13px;
    font-size: 1.3rem;
  }
  .cmn_ttl03.type_en::before{
    width: 22px;
  }  
}

/*枠付き内見出しーーーーーーーーーーーーーーーーーーーー*/
.cmn_ttl10{
  margin-bottom: 20px;
  padding-bottom: 20px;
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1.3;
  font-weight: bold;
  text-align: center;
  border-bottom: solid 2px #00b097;
}
@media screen and (max-width :834px){
  .cmn_ttl10{
    margin-bottom: 15px;
    padding-top: 0;
    padding-bottom: 15px;
    font-size: 19px;
    font-size: 1.9rem;
  }
}

/*アイコン付き見出し　ーーーーーーーーーーーーーーーーー*/
.cmn_ttl05{
  margin-bottom: 15px;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.3;
  color: #00b097;
  font-weight: bold;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;  
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;  
}
.cmn_ttl05 .ico{
  display: inline-block;
  margin-right: 13px;
  background: #00b097;
  border-radius: 3px;
  padding: 7px 11px;
  color: #fff;  
  font-size: 16px;
  font-size: 1.6rem;
}
.cmn_ttl05 .ttl{
  display: inline-block;
  padding-top: 2px;
  -webkit-box-flex: 1;
  flex: 1;
}
@media screen and (max-width :834px){
  .cmn_ttl05{
    margin-bottom: 15px;
    font-size:17px;
    font-size:1.7rem;
  }
  .cmn_ttl05 .ico{
    margin-right: 10px;
    padding: 4px 6px;
    font-size: 13px;
    font-size: 1.3rem;
  }
  .cmn_ttl05 .ttl{
    padding-top: 1px;
  }
  
}


/*重要*/
.cmn_ttl_important{
  color: #09b29b;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 15px;
  background: url("/assets/img/ico_important.svg")no-repeat left top;
  background-size: 32px auto;
  padding-left: 46px;
}
@media screen and (max-width :834px){
  .cmn_ttl_important{
    font-size: 17px;
    font-size: 1.7rem;
    margin-bottom: 15px;
    background-size: 23px auto;
    padding-left: 35px;
  }  
}

/*お知らせ*/
.cmn_ttl07{
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.3;
  color: #09b29b;
  margin-bottom: 15px;
}

@media screen and (max-width :834px){
  .cmn_ttl07{
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 15px;
  }  
}
/* ===============================================
# キャッチコピー
=============================================== */
/*数字-------------------------*/
.cms_text ol,
ol.cmn_deciList{
  list-style:decimal;
  margin-left: 1.5em;
}
ol.cmn_deciList{
  margin-bottom: 20px;  
}
.cms_text ol > li,
ol.cmn_deciList > li{

}
.cms_text ol > li:nth-child(n+2),
ol.cmn_deciList > li:nth-child(n+2){
  margin-top: 0.5em;
}
@media screen and (max-width :834px){
}
/*通常-------------------------*/
.cms_text ul:not(.cmn_link),
ul.cmn_discList{
  text-indent: 0;
}
ul.cmn_discList{
  margin-bottom: 20px;  
}

.cms_text ul:not(.cmn_link) > li,
ul.cmn_discList > li{
 position: relative;
 padding-left: 1.5em;
}
.cms_text ul:not(.cmn_link) > li:before,
ul.cmn_discList > li:before {
  position: absolute;
  top: 0.6em;
  left:0.6em;
	color:#00b097;
	content:"●";
	font-size:10px;
  display:inline-block;
}
.cms_text ul:not(.cmn_link) > li:nth-child(n+2),
ul.cmn_discList > li:nth-child(n+2){
  margin-top:0.5em;
}
@media screen and (max-width :834px){
 .cms_text ul:not(.cmn_link) > li:before,
 ul.cmn_discList > li:before {
   top: 0.3em;
   -webkit-transform: scale(0.8);
   transform: scale(0.8);
 }
}

/*2列*/
ul.cmn_discList.col2,
ul.cmn_discList.col3{
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;  
  flex-wrap: wrap;
}
@media print,screen and (min-width :835px){
  ul.cmn_discList.col2 > li{
    width: 50%;
    padding-right: 1em;
  }
  ul.cmn_discList.col2 > li:nth-child(n+2){
    margin-top: 0;
  }
  /*3列*/
  ul.cmn_discList.col3 > li{
    width:33.33%;
    padding-right: 1em;
  }
  ul.cmn_discList.col3 > li:nth-child(-n+3){
    margin-top: 0;
  }  
}
@media screen and (max-width :834px){
  ul.cmn_discList.col2,
  ul.cmn_discList.col3{
    display: block;
  }  
}

/*インデントのみ-----------------*/
.cmn_indent{
  text-indent: 0;
  margin-bottom: 20px;
}
.cmn_indent > *{
  margin-left: 1em;
  text-indent: -1em;
}
.cmn_indent.txt15 > *{
  margin-left: 1.5em;
  text-indent: -1.5em;
}
.cmn_indent.txt2 > *{
  margin-left: 2em;
  text-indent: -2em;
}
.cmn_indent.txt25 > *{
  margin-left: 2.5em;
  text-indent: -2.5em;
}
.cmn_indent.txt3 > *{
  margin-left: 3em;
  text-indent: -3em;
}
.cmn_indent.txt4 > *{
  margin-left: 4em;
  text-indent: -4em;
}
@media screen and (max-width :834px){
}
/*注釈-------------------------*/
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;
}
@media screen and (max-width :834px){

}
/* ===============================================
# アイコン
=============================================== */
.ico_file[src*=".svg"]{
  width: 26px;
  margin-left: 5px;
  vertical-align: middle;
}
.ico_blank[src*=".svg"]{
  width: 14px;
  margin-left: 10px;
  vertical-align: middle;
}
p .ico_file[src*=".svg"]{
  width: 22px;
  margin-right: 5px;
}
p .ico_blank[src*=".svg"]{
  margin-right: 5px;
}

.cmn_link li img[src*=".svg"]{
  max-width: 25px;
}

/*mail*/
.cmn_mail_ico{
  display: inline-block;
  padding-left: 21px;
  background: url("/assets/img/ico_mail.svg")no-repeat left top 0.5em;
  background-size: 15px auto;
}
@media screen and (max-width :834px){
  .ico_file[src*=".svg"]{
    width: 21px;
  }
  .ico_blank[src*=".svg"]{
    width: 11px;
    margin-left: 5px;
  }
  .cmn_link li img[src*=".svg"]{
    max-width: 21px;
  }  
  /*mail*/
  .cmn_mail_ico{
    padding-left: 19px;
    background-position: left top 0.45em;
  }  
}
/* ===============================================
# リンクリスト
=============================================== */
.list_link,
.cmn_link{
  margin-bottom: 20px;
}
.list_link > li:nth-child(n+2),
.cmn_link > li:nth-child(n+2){
  margin-top: 0.4em;
}
.list_link a,
.cmn_link a{
  display: inline-block;
  color: #000;
  line-height: 1.3;
}

.cmn_link.noborder a{
  text-decoration: none;
}

.list_link a::before,
.cmn_link a::before{
  top: 0.35em;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

@media print,screen and (min-width :835px){
  /*2列*/
  .cmn_link.col2,
  .cmn_link.col3{
    display: -webkit-box;
    display: -ms-flex;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;  
    flex-wrap: wrap;
  }  
  .cmn_link.col2 > li{
    width: 49%;
  }
  .cmn_link.col2 > li:nth-child(even){
    margin-left: 2%;
  }  
  .cmn_link.col2 > li:nth-child(2){
    margin-top: 0;
  }
  /*3列*/
  .cmn_link.col3 > li{
    width: 31.2%;
    margin-left: 3.2%;
  }
  .cmn_link.col3 > li:nth-child(3n+1){
    margin-left: 0;
  }  
  .cmn_link.col3 > li:nth-child(-n+3){
    margin-top: 0;
  }  
}
@media screen and (max-width :834px){
}
/* ===============================================
# ２列表組
=============================================== */
.cmn_tableStyle2{
  width: 100%;
  table-layout: fixed;
  margin-bottom: 20px;
}
.cmn_tableStyle2 th,
.cmn_tableStyle2 td{
  border: solid 1px #b4b4b4;  
  padding: 11px 1em;
  line-height: 1.353;
}
.cmn_tableStyle2 th{
  width: 10em;
  background-color: #f0faf9;
  text-align: center;
  vertical-align: middle;
}
.cmn_tableStyle2 td>*:last-child{
  margin-bottom: 0;
}
.cmn_tableStyle2 td .cmn_link{
  margin-top: 20px;
}
.cmn_tableStyle2.vm td,
.cmn_tableStyle2.vm th,
.cmn_tableStyle2 tr.vm td,
.cmn_tableStyle2 tr.vm th,
.cmn_tableStyle2 td.vm{
  vertical-align: middle;
}

@media screen and (max-width :834px){
  .cmn_tableStyle2 th,
  .cmn_tableStyle2 td{
    padding: 14px 1em;
  }
  .cmn_tableStyle2 th{
    width: 7em;
  }
}

/*教員情報　teacher*/
.cmn_tableStyle2.teacher th{
  width: 198px;
}
.cmn_tableStyle2.teacher th .cmn_btnsq{
  margin-top: 10px;
}
.cmn_tableStyle2.teacher th .cmn_btnsq>*{
  min-width: inherit;
  font-size: 13px;
  font-size: 1.3rem;
  padding: 9px 15px;
}
.cmn_tableStyle2.teacher .ttl_subject{
  font-weight: bold;
  font-size: 21px;
  font-size: 2.1rem;
  color: #09b29b;
  line-height: 1.3;
  margin-bottom: 10px;
}
@media screen and (max-width :834px){
  .cmn_tableStyle2.teacher th{
    width: 130px;
    text-align: left;
  }
  .cmn_tableStyle2.teacher th .cmn_btnsq{
    margin-top: 7px;
  }
  .cmn_tableStyle2.teacher th .cmn_btnsq>*{
    font-size: 12px;
    font-size: 1.2rem;
    padding: 9px 5px;
  }
  .cmn_tableStyle2.teacher .ttl_subject{
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 10px;
  }  
}


/* ===============================================
# テーブル
=============================================== */
.cms_text table:not(.pc_scroll):not(.sp_scroll){
  max-width: 100%;
}
.cms_text table,
.cmn_tableStyle{
  width: 100%;
  table-layout: fixed;
  text-align: left;
}
.cmn_tableStyle{
  margin-bottom: 20px;
}
.cms_text table th,
.cms_text table td,
.cmn_tableStyle th,
.cmn_tableStyle td{
  border: solid 1px #cccccc;
}
.cms_text table th,
.cmn_tableStyle th{
  background-color: #00b097;
  color: #fff;
  vertical-align: middle;
  height: 55px;
  padding: 7px 1em;
  line-height: 1.3;  
}
.cms_text table th{
  text-align: center;
}
.cms_text table tbody th,
.cmn_tableStyle tbody th{
  background-color: #f0faf9;
  color: #000;
  padding: 11px 1em;
  font-weight: normal;
  text-align: center;
}
.cms_text table td,
.cmn_tableStyle td{
  padding: 11px 1em;
}

.cmn_tableStyle td>*:last-child{
  margin-bottom: 0;
}

.cms_text table td,
.cmn_tableStyle.vm td,
.cmn_tableStyle.vm th,
.cmn_tableStyle tr.vm td,
.cmn_tableStyle tr.vm th,
.cmn_tableStyle td.vm{
  vertical-align: middle;
}

.cmn_tableStyle.high th,
.cmn_tableStyle.high tbody th,
.cmn_tableStyle.high td{
  height: 84px;
}

.cmn_tableStyle .bg03{
  color: #fff;
}
.cmn_tableStyle.striped tr:nth-child(even){
  background-color: #f5f5f5;
}
@media screen and (max-width :834px){
  .cms_text table th,
  .cmn_tableStyle th{
    height: 52px;
    padding: 7px 1em;
  }
  .cms_text table tbody th,
  .cmn_tableStyle table tbody th{
    padding: 14px 1em;
  }
  .cms_text table td,
  .cmn_tableStyle td{
    padding: 14px 1em;
  }
}

.cmn_tableStyle th.noline_top,
.cmn_tableStyle td.noline_top{
  border-top: none;
}
.cmn_tableStyle th.noline_bottom,
.cmn_tableStyle td.noline_bottom{
  border-bottom: none;
}
.cmn_tableStyle th.noline,
.cmn_tableStyle td.noline{
  border-bottom: none;
  border-top: none;
}

/*英語能力試験*/
.cmn_tableStyle.english_test td{
  padding: 1px 0.5em;
  height: 70px;
  vertical-align: middle;
  text-align: center;
  line-height: 1.3;
}
/*無料職業紹介事業実績*/
.cmn_tableStyle.free_profession td{
  height: 80px;
  line-height: 1.3;
}
/*利用状況*/
.cmn_tableStyle.situation.high th{
  height: auto;  
}
.cmn_tableStyle.situation .vtext{
  width: 1em;
}
/* ===============================================
# 写真＋テキスト
=============================================== */
.cmn_textPhoto {
	width: 100%;
  margin-bottom: 60px;
}
.cmn_textPhoto .photo{
  margin: 0 auto;
}
.cmn_textPhoto .photo figure:nth-child(n+2){
  margin-top: 20px;
}
.cmn_textPhoto figcaption{
  margin-top: 13px;
  line-height: 1.3;
  text-align: left;
  font-size: 16px;
  font-size: 1.6rem;
  color: #00b097;
}
.cmn_textPhoto .photo >span:nth-child(n+2){
  display: block;
  margin-top: 20px;
}
.cmn_textPhoto .photo.movie{
  width: 48.5%;  
}
.cmn_textPhoto .photo .area_iframe{
  padding-top: 56.25%;
  position: relative;
}
.cmn_textPhoto .photo iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.cmn_textPhoto .text>*:last-child{
  margin-bottom: 0;
}

/*メッセージ用*/
.cmn_textPhoto.people figcaption{
  text-align: right;
}
.cmn_textPhoto.people figcaption .type{
  display: block;
  color: #000;
}
.cmn_textPhoto.people figcaption .name{
  display: inline-block;
  margin-top: 5px;
  padding-bottom: 5px;
  font-size: 28px;
  font-size: 2.8rem;
  color: #000;
  border-bottom: solid 1px #00b097;
}
.cmn_textPhoto.people figcaption .en{
  display: block;
  margin-top: 5px;
  font-size: 13px;
  font-size: 1.3rem;
  font-family: "游明朝体", "Yu Mincho","ヒラギノ明朝Pro", "Hiragino Mincho Pro", YuMincho, serif;
}

@media print,screen and (min-width : 835px){
  .cmn_textPhoto .photo{
    float: left;
    max-width: 48.5%;
    margin-right: 3%;
  }
  .cmn_textPhoto .photo.wide{
    max-width: inherit;
  }
  .cmn_textPhoto.right .photo{
    float: right;
    margin-right: 0;
    margin-left: 3%;
    }  
  .cmn_textPhoto::after{
    clear: both;
    content:'';
    display: block;
  }
  .cmn_textPhoto .text{
    overflow: hidden;
    zoom: 1;
  }
  /*メッセージ用*/
  .cmn_textPhoto.people .photo{
    max-width: 32.5%;
  }
}
@media screen and (max-width : 834px){
  .cmn_textPhoto{
    margin-bottom: 30px;
    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{
    -webkit-box-ordinal-group:3;
	  -ms-flex-order:2;
	  order:2;
    margin-bottom: 0;
    margin-top: 20px;
  }
  .cmn_textPhoto img{
    -webkit-box-ordinal-group:2;
	  -ms-flex-order:1;
	  order:1;    
    width: 100%;
  }
  .cmn_textPhoto figcaption{
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 5px;
    font-weight: bold;
  }
  /*メッセージ用*/
  .cmn_textPhoto.people figcaption{
    margin-top: 17px;
    font-weight: normal;
  }
  .cmn_textPhoto.people figcaption .name{
    margin-top:0;
    font-size: 22.5px;
    font-size: 2.25rem;
  }
  .cmn_textPhoto.people figcaption .en{
    font-size: 12px;
    font-size: 1.2rem;
  }  
  /*動画*/
  .cmn_textPhoto .photo.movie{
    width: 100%;  
  }
  /*スマホ写真上*/
  .cmn_textPhoto.sp_photo > .text{
    -webkit-box-ordinal-group:2;
    order: 1;
    margin-top: 20px;
  }
  .cmn_textPhoto.sp_photo > .photo{
    -webkit-box-ordinal-group:1;
    order: 0;    
    margin-top: 0;
  }
}

/* ===============================================
# ギャラリー
=============================================== */
.cmn_gallery{
  margin-bottom: 50px;
  text-align: center;  
}
.cmn_gallery figure{
  width: 100%;
}
.cmn_gallery figcaption{
  margin-top: 13px;
  line-height: 1.3;
  text-align: left;
  font-size: 16px;
  font-size: 1.6rem;
  color: #00b097;
}
.cmn_gallery.center{
  margin-right: auto;
  margin-left: auto;
}

/*1列*/
.cmn_gallery.col1 figure{
  display: inline-block;
  width: auto;
  max-width:100%;
}
.cmn_gallery.col1 figure:nth-child(n+2){
  margin-top: 50px;
}
/*2列*/
.cmn_gallery.col2{
  display: -webkit-box;
  display: -ms-flex;  
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;  
}  
.cmn_gallery.col2 figure{
  width: 48.5%;
  margin-left: 3%;
}
.cmn_gallery.col2 figure:nth-child(n+3){
  margin-top: 50px;
}
.cmn_gallery.col2 figure:nth-child(2n+1){
  margin-left: 0;
}
@media screen and (max-width :834px){
  .cmn_gallery{
    margin-bottom: 30px;
  }
  .cmn_gallery figcaption{
    margin-top: 5px;
    font-size: 13px;
    font-size: 1.3rem;
  }  
  /*1列*/
  .cmn_gallery.col1 figure:nth-child(n+2){
    margin-top: 15px;
  }  
  /*2列*/
  .cmn_gallery.col2 figure{
    width: 47.8%;
    margin-left: 4.4%;
  }  
  .cmn_gallery.col2 figure:nth-child(n+3){
    margin-top: 15px;
  } 
}

@media print,screen and (min-width :769px){
  /*3列*/
  .cmn_gallery.col3{
    display: -webkit-box;
    display: -ms-flex;  
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;  
  }  
  .cmn_gallery.col3 figure{
    width: 31.2%;
    margin-left: 3.2%;
  }
  .cmn_gallery.col3 figure:nth-child(n+4){
    margin-top: 60px;
  }
  .cmn_gallery.col3 figure:nth-child(3n+1){
    margin-left: 0;
  }
}
@media screen and (max-width :768px){
  /*3列*/
  .cmn_gallery.col3 figure:nth-child(n+2){
    margin-top: 15px;
  }  
}
/* ===============================================
# スクロール
=============================================== */
.cmn_scroll_area{
  position: relative;
  z-index: 1;
  scrollbar-color: #00b097 #E3E3E3;
  scrollbar-width: thin;    
}
.cmn_scroll_area::-webkit-scrollbar{
  height:10px;
}
.cmn_scroll_area::-webkit-scrollbar{
  background: #E3E3E3;
}
.cmn_scroll_area::-webkit-scrollbar-thumb{
  background: #00b097;
  border-radius: 0;
}  
@media screen and (min-width :835px){
}
@media screen and (max-width :1200px) and (min-width :835px){
  .cmn_scroll_area.pc{
    width: 100%;
    padding-bottom: 10px;
    margin-bottom: 10px;
    position: relative;
    overflow-x: auto;
    overflow-y: visible;
  }
  .cmn_scroll_area.pc > *{
    width: 1300px !important;
    max-width: inherit;
    margin-bottom: 0;
  }
}
@media screen and (max-width :834px){
  .cmn_scroll_area{
    padding-bottom: 10px;
    margin-bottom: 10px;    
    position: relative;
    width: 100%;
    overflow-x: auto;
    overflow-y: visible;
  }
  .cmn_scroll_area > *{
    width: 1300px !important;
    margin-bottom: 0;
    max-width: inherit;
  }
  .cmn_scroll_area.w1200 > *{
    width:1200px !important;
  }  
  .cmn_scroll_area.w1100 > *{
    width:1100px !important;
  }  
  .cmn_scroll_area.w1000 > *{
    width:1000px !important;
  }
  .cmn_scroll_area.w900 > *{
    width:900px !important;
  }
  .cmn_scroll_area.w800 > *{
    width:800px !important;
  }
  .cmn_scroll_area.w700 > *{
    width:700px !important;
  }
}

/* ===============================================
# アコーディオン
=============================================== */
.cmn_ttl_acd{
  margin-bottom: 20px;  
}
.cmn_ttl_acd > dt{
  position: relative;
}
.cmn_ttl_acd > dt::before{
  position: absolute;
  left: 0;
  bottom: 0;
  content: '';
  width: 100%;
  height:2px; 
  background-image: -moz-linear-gradient( -180deg, rgb(0,176,151) 0%, rgb(0,162,176) 100%);
  background-image: -webkit-linear-gradient( -180deg, rgb(0,176,151) 0%, rgb(0,162,176) 100%);
  background-image: -ms-linear-gradient( -180deg, rgb(0,176,151) 0%, rgb(0,162,176) 100%);  
}
.cmn_ttl_acd > dt button{
  width: 100%;
  padding: 15px 62px 15px 25px;  
  min-height: 67px;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 21px;
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 1.3;  
  background:#f0faf9 url("/assets/img/ico_acd2_down.svg")no-repeat right 24px center;
  background-size: 25px auto;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;  
}
.cmn_ttl_acd > dt button[aria-expanded="true"]{
  background-image: url("/assets/img/ico_acd2_up.svg");
}
.cmn_ttl_acd > dd{
  display: none;
  padding:30px 0;
}
.cmn_ttl_acd > dd>*:last-child{
  margin-bottom: 0;
}

@media (hover: hover) and (pointer: fine) {
  .cmn_ttl_acd > dt button:hover{
    color: #00b097;
  }
}
@media screen and (max-width :834px){
  .cmn_ttl_acd > dt button{
    padding: 15px 50px 15px 15px;  
    min-height: 53px;
    font-size: 16px;
    font-size:1.6rem;
    line-height: 1.375;
    background-position:right 15px center;
  }
  .cmn_ttl_acd > dd{
    padding:20px 0;
  }  
}

/* ===============================================
# 定義リスト
=============================================== */
.cmn_defList{
  margin-bottom: 20px;
}
.cmn_defList dl{
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
}
.cmn_defList > dl > dt{
  width: 300px;
  margin-right: 7px;
  padding: 18px 1em;
  font-weight: bold;
  border-top:solid 1px #00b097;  
}
.cmn_defList > dl:last-child > dt{
  border-bottom: solid 1px #00b097;
}
.cmn_defList > dl > dd{
  -webkit-box-flex: 1;
  flex: 1;
  padding: 18px 1em;
  border-top:solid 1px #cccccc;  
}
.cmn_defList > dl:last-child > dd{
  border-bottom: solid 1px #cccccc;
}
.cmn_defList > dl > dd >*:last-child{
  margin-bottom: 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;
}
.cmn_defList.w11em > dl > dt{
  width: 11em;
}
.cmn_defList.w12em > dl > dt{
  width: 12em;
}
.cmn_defList.w13em > dl > dt{
  width: 13em;
}
@media screen and (max-width :834px){
  .cmn_defList > dl > dt{
    width: 120px;
    margin-right: 10px;
    padding: 16px 0.5em;
  }
  .cmn_defList > dl > dd{
    padding: 16px 0.5em;
  }  
}
/* ===============================================
# ボタン
=============================================== */
.cmn_btn+*:not(.cmn_btn){
  margin-top: 30px;
}
.cmn_btn+.cmn_btn{
  margin-top: 7px;
}
.cmn_btn a,
.cmn_btn button{
  position: relative;
  display: inline-block;
  padding: 15px 40px 15px 56px;
  font-weight: bold;
  line-height: 1.3;
  font-size: 17px;
  font-size: 1.7rem;
  text-align: left;
  text-decoration: none;
  border: solid 1px #cccccc;
  border-radius: 60px;
  max-width: 100%;
  background: #fff;
}
.cmn_btn a::before,
.cmn_btn button::before{
  left: 34px;
}
.cmn_btn.btns a,
.cmn_btn.btns button{
  width: 400px;
}
.cmn_btn.btnm a,
.cmn_btn.btnm button{
  width: 600px;
}
.cmn_btn.btnl a,
.cmn_btn.btnl button{
  width: 900px;
}
.cmn_btn a[target="_blank"] span::after{
  content: '';
  display: inline-block;
  width: 14px;
  height: 14px;
  background: url("/assets/img/ico_blank_g.svg")no-repeat right center;
  background-size: auto;
  background-size: contain;
  margin-left: 10px;
  vertical-align: baseline;
}
/*センター*/
.cmn_btn.center{
  text-align: center;
}
/*緑*/
.cmn_btn >*.green{
  background: #00b097;
  color: #fff;
  border-color: #00b097;
}
.cmn_btn >*.green::before{
  background-image: url("/assets/img/ico_arrow_w.svg");
}
.cmn_btn a[target="_blank"].green span::after{
  background-image: url("/assets/img/ico_blank_w.svg");
}
@media print,screen and (min-width : 835px){
  /*横並び*/
  .cmn_btn.flex{
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .cmn_btn.flex.left{
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .cmn_btn.flex > *{
    max-width: 49%;
  }
  .cmn_btn.flex > *:nth-child(n+2){
    margin-left: 2%;
  }   
}
@media (hover: hover) and (pointer: fine) {
  .cmn_btn a:not(.nolink):hover,
  .cmn_btn button:not(.nolink):hover{
    background-color: #eff8f7;
    opacity: 1;
  }
  .cmn_btn >*.green:hover{
    background-color: #3FC1AE !important; 
  }
}
@media screen and (max-width :834px){
  .cmn_btn+.cmn_btn{
    margin-top: 15px;
  }
  .cmn_btn a,
  .cmn_btn button{
    padding: 15px 25px 15px 42px;
    line-height: 1.214;
    font-size: 13px;
    font-size: 1.4rem;
    border-radius: 50px;
  }
  .cmn_btn a::before,
  .cmn_btn button::before{
    left: 25px;
  }
  .cmn_btn.btns a,
  .cmn_btn.btns button{
    width: 265px;
  }
  .cmn_btn.btnm a,
  .cmn_btn.btnm button{
    width: 300px;
  }
  .cmn_btn.btnl a,
  .cmn_btn.btnl button{
    width: 100%;
  }
  .cmn_btn a[target="_blank"] span::after{
    width: 11px;
    height: 11px;
    margin-left: 5px;
  }
  
  .cmn_btn.flex{
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; 
  }  
  .cmn_btn.flex>*:nth-child(n+2){
    margin-top: 15px;
  }
}

/*四角ボタン-----------------------------------------*/
.cmn_btnsq+*:not(.cmn_btnsq){
  margin-top: 30px;
}
.cmn_btnsq+.cmn_btnsq{
  margin-top: 7px;
}
.cmn_btnsq >*{
  position: relative;
  display: inline-block;
  padding: 20px 30px;
  font-weight: bold;
  line-height: 1.3;
  text-align: center;
  color: #000;
  text-decoration: none;
  border: solid 1px #cdcdcd;
  min-width: 317px;
  max-width: 100%;  
  border-radius: 3px;
}
.cmn_btnsq >*.nolink{
  opacity: 0.5;
  cursor: default;
}
.cmn_btnsq >*>span{
  position: relative;
  display: inline-block;
}
.cmn_btnsq >*.back>span.cmn_arrow::before{
  transform: scale(-1,1) translateY(-50%);
}
.cmn_btnsq >*.green{
  background: #00b097;
  color: #fff;
  border-color: #00b097;
}
.cmn_btnsq >*.green>span::before{
  background-image: url("/assets/img/ico_arrow_w.svg");
}
.cmn_btnsq.center{
  text-align: center;
}

/*前のページの戻る*/
.cmn_btnsq.pageback{
  text-align: center;
  margin-top:80px !important;
}
@media (hover: hover) and (pointer: fine) {
  .cmn_btnsq >*:not(.nolink):hover{
    background-color: #eff8f7;
    opacity: 1;    
  }
  .cmn_btnsq >*.back:not(.nolink):hover{
    background-color: #f5f5f5;
  }  
  .cmn_btnsq >*.green:not(.nolink):hover{
    background-color: #fff;
    color: #00b097;
  }
  .cmn_btnsq >*.green:not(.nolink):hover>span::before{
    background-image: url("/assets/img/ico_arrow.svg");
  }  
  .cmn_btnsq >*:not(.nolink):hover span.cmn_arrow::before{
    -webkit-animation: arrow 0.6s cubic-bezier(0.645, 0.045, 0.355, 1);
    animation: arrow 0.6s cubic-bezier(0.645, 0.045, 0.355, 1); 
  }  
}
@media print,screen and (min-width : 835px){
  /*横並び*/
  .cmn_btnsq.flex,
  .cmn_btnsq.flex_pc{
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .cmn_btnsq.flex > *,
  .cmn_btnsq.flex_pc > *{
    max-width: 44%;
  }
  .cmn_btnsq.flex > *:nth-child(2),
  .cmn_btnsq.flex_pc > *:nth-child(2){
    margin-left: 5.6%;
  }   
}
@media screen and (max-width :834px){
  .cmn_btnsq+.cmn_btnsq{
    margin-top: 15px;
  }
  .cmn_btnsq >*{
    padding: 18px 30px;
    min-width: inherit;
    width: 100%;
  }
  
  /*横並び*/
  .cmn_btnsq.flex_pc{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;    
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; 
  }  
  .cmn_btnsq.flex_pc>*:nth-child(n+2){
    margin-top: 15px;
  }
  
  
  /*post*/
  .cmn_btnsq.flex_pc>*.next{
    -webkit-box-ordinal-group:1;
    order: 0;
    margin-top: 0;
  }
  .cmn_btnsq.flex_pc>*.back{
    -webkit-box-ordinal-group:2;
    order: 1;
    margin-top: 15px;
  }  
  
  /*前のページの戻る*/
  .cmn_btnsq.pageback{
    margin-top:60px !important;
  }  
}

/*calendar*/
.cmn_btnsq.calendar{
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
  margin-bottom: 20px;
}
.cmn_btnsq.calendar > *{
  width: 183px;
  font-size: 13px;
  font-size: 1.3rem;
  padding: 18px 30px;
}
@media screen and (max-width :834px){
  .cmn_btnsq.calendar{
  }
  .cmn_btnsq.calendar > *{
    width: 111px;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 15px 10px;
  }  
}
/* ===============================================
# 前のページに戻る
=============================================== */
.cmn_page_back{
  margin: 30px auto 0;
  text-align:right;
}
.cmn_page_back+.main_contents {
  padding-top: 30px;
}
.cmn_page_back a{
  padding: 6px 0 6px 63px;
  display: inline-block;
  border-left: solid 1px #dcdcdc;
  color: #000;
  font-weight: bold;
  font-size: 14px;
  font-size: 1.4rem;
  text-decoration: none;
}
.cmn_page_back a.cmn_arrow::before{
  left: 32px;
  transform: scale(-1,1) translateY(-50%);
}
@media screen and (max-width :834px){
  .cmn_page_back{
    margin: 18px auto 0;
  }
  .cmn_page_back a{
    padding: 5px 0 5px 47px;
    font-size: 10px;
    font-size: 1rem;
  }
  .cmn_page_back a.cmn_arrow::before{
    left: 23px;
  }  
}
/* ===============================================
# レイアウト
=============================================== */
.cmn_layout_col2_pc,
.cmn_layout_col3_pc,
.cmn_layout_col4_pc{
	width: 100%;
  display: -webkit-box;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
@media print,screen and (min-width : 835px){
  .cmn_layout_col2_pc >*{
    width: 48.5%;
    margin-left: 3%;
  }
  .cmn_layout_col2_pc >*:nth-child(2n+1){
    margin-left: 0;
  }
  .cmn_layout_col2_pc >*:nth-child(n+3){
    margin-top: 20px;
  }  
  
  .cmn_layout_col3_pc >*{
    width: 30.7%;
    margin-left: 3.95%;
  }
  .cmn_layout_col3_pc >*:nth-child(3n+1){
    margin-left: 0;
  }
  .cmn_layout_col3_pc >*:nth-child(n+4){
    margin-top: 20px;
  }   
  
  .cmn_layout_col4_pc >*{
    width: 22.3%;
    margin-left: 3.6%;
  }
  .cmn_layout_col4_pc >*:nth-child(4n+1){
    margin-left: 0;
  }
  .cmn_layout_col4_pc >*:nth-child(n+5){
    margin-top: 20px;
  }   
  
  .cmn_layout_col2_pc > .cmn_ttl_acd{
    margin-bottom: 0;
  }
}
@media screen and (max-width: 834px) {
  .cmn_layout_col2_pc{
    display: block;
  }
  .cmn_layout_col2_pc >*:nth-child(n+2){
    margin-top: 20px;
  }
  
  .cmn_layout_col3_pc{
    display: block;
  }
  .cmn_layout_col3_pc >*:nth-child(n+2){
    margin-top: 20px;
  }  
  
  .cmn_layout_col4_pc{
    display: block;
  }
  .cmn_layout_col4_pc >*:nth-child(n+2){
    margin-top: 20px;
  }   
}
/* ===============================================
# 動画
=============================================== */
.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 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{
    width: 47.8%;
    margin-left: 4.4%;
  }  
  .cmn_movie.col2 .box_movie:nth-child(n+3){
    margin-top: 30px;
  } 
}
/* ===============================================
# 地図
=============================================== */
.cmn_map{
  margin-bottom: 40px;
}
.cmn_map .map{
  position: relative;
  width: 100%;
  padding-top:33.33%;
  height: 0;
  overflow: hidden;  
}
.cmn_map iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
@media screen and (max-width: 834px) {
  .cmn_map{
    margin-bottom: 30px;
  }
  .cmn_map .map{
    padding-top:61.6%;
  }  
}
/* ===============================================
# メール・電話・リンクテキスト
=============================================== */
.cmn_tel{
  font-size: 26px;
  font-size: 2.6rem;
  padding-left: 52px;
  background: url("/assets/img/ico_c_tel.svg")no-repeat left top;
  background-size: 39px auto;
}
.cmn_mail{
  font-size: 26px;
  font-size: 2.6rem;
  padding-left: 52px;
  background: url("/assets/img/ico_c_mail.svg")no-repeat left top;
  background-size: 39px auto;
}
.cmn_tel a,
.cmn_mail a{
  text-decoration: none;
  font-family: 'Roboto', sans-serif;  
}
@media screen and (max-width: 834px) {
  .cmn_tel{
    font-size: 20px;
    font-size: 2rem;
    padding-left: 37px;
    background-position: left top 0.1em;
    background-size: 27px auto;
  }
  .cmn_mail{
    font-size: 20px;
    font-size: 2rem;
    padding-left: 37px;
    background-position: left top 0.1em;
    background-size: 27px auto;
  }
}

.cmn_link_txt{
  display: inline-block;
}

/* ===============================================
# お問い合わせ
=============================================== */
.cmn_contact{
  margin-bottom: 60px;
  padding: 30px 4.53% 30px;
  background: #f5f5f5;
}
.cmn_contact .cmn_ttl03{
  margin-bottom: 15px;
}
.cmn_contact .box_tel{
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;  
  flex-wrap: wrap;
  margin-bottom: 5px;
  margin-top: 5px;
}
.cmn_contact .box_tel >*{
  margin-right: 37px;
  margin-bottom: 5px;
}
.cmn_contact .box_tel >*:last-child{
  margin-right: 37px;
}


.cmn_contact .cmn_link_txt a{
  color: #000;
}
@media screen and (max-width: 834px) {
  .cmn_contact{
    padding: 25px 7.4% 20px;
  }
  .cmn_contact .cmn_ttl03{
    margin-bottom: 10px;
  }
  .cmn_contact .box_tel{
    display: block;
    margin-bottom:10px;
  }
  .cmn_contact .box_tel >*{
    margin-bottom: 0;
    margin-right: 0 !important;
  }
  .cmn_contact .box_tel >*:nth-child(n+2){
    margin-top: 7px;
  }
}
/* ===============================================
# メニューリスト
=============================================== */
.cmn_menulist{
  margin-bottom: 55px;
}
.cmn_menulist *{
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;  
}
.cmn_menulist > li>a{
  position: relative;
  display: block;
  height: 100%;
  color: #000;
  font-weight: bold;
  line-height: 1.3;
  text-decoration: none;
}
.cmn_menulist > li> a.on{
  background: #f0faf9;
  color: #00b097;
}
.cmn_menulist > li> a::after{
  content: '';
  display: block;
  width: calc(100% - 23px);
  height: 1px;
  background: #cacaca;
  position: absolute;
  bottom: 0;
  left: 0;
}
.cmn_menulist > li> a::before{
  content: '';
  display: block;
  width: 19px;
  height: 1px;
  background: #00b097;
  position: absolute;
  bottom: 0;
  right: 0;
}
.cmn_menulist > li > a >*{
  display: block;
  height: 100%;
  padding: 20px 25px 20px 0;
  position: relative;
}
.cmn_menulist > li > a:not([href=""]) >*::before{
  position: absolute;
  right:6px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  content: '';
  width: 11px;
  height: 11px;
  background:url("/assets/img/ico_arrow.svg")no-repeat left center;
  background-size: contain;
}

/*テキストあり*/
.cmn_menulist.text > li > a{
  height: auto;
}
.cmn_menulist.text > li > a >*{
  padding-top: 24px;
  padding-bottom: 24px;
}

.cmn_menulist.text .txt{
  margin-top: 22px;
}
.cmn_menulist.text .txt>*:last-child{
  margin-bottom: 0;
}
@media (hover: hover) and (pointer: fine) {
  .cmn_menulist > li>a:hover >*{
    opacity: 0.6;
  }
  .cmn_menulist > li>a:hover >*::before{
    -webkit-animation: arrow 0.6s cubic-bezier(0.645, 0.045, 0.355, 1);
    animation: arrow 0.6s cubic-bezier(0.645, 0.045, 0.355, 1); 
  }  
}
@media print,screen and (min-width : 769px){
  /*col1*/
  .cmn_menulist.col1:not(.text){
    border-top: solid 1px #cacaca;
  }
  .cmn_menulist.col1.line_green:not(.text){
    border-top: solid 1px #00b097;
  }  
  /*col2、3、4*/
  .cmn_menulist.col2,
  .cmn_menulist.col3{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;    
    flex-wrap: wrap;
  }  
  .cmn_menulist.col2::after{
    content: '';
    width: 48.3%;
    display:block;
  }
  .cmn_menulist.col2 > li{
    width: 48.3%;
  }
  .cmn_menulist.col2 > li:nth-child(-n+2){
    border-top: solid 1px #cacaca;
  }
  .cmn_menulist.col2.line_green > li:nth-child(-n+2){
    border-top: solid 1px #00b097;
  }  
  /*col3*/
  .cmn_menulist.col3::after{
    content: '';
    width: 30.7%;
    display:block;
  }
  .cmn_menulist.col3 > li{
    width: 30.7%;
  }
  .cmn_menulist.col3 > li:nth-child(-n+3){
    border-top: solid 1px #cacaca;
  }  
  .cmn_menulist.col3.line_green > li:nth-child(-n+3){
    border-top: solid 1px #00b097;
  }  
  /*col4*/
  .cmn_menulist.col4{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;    
    flex-wrap: wrap;
  }
  .cmn_menulist.col4 > li{
    width: 22.15%;
    margin-left: 3.8%;
  }
  .cmn_menulist.col4 > li:nth-child(4n+1){
    margin-left: 0;
  }
  .cmn_menulist.col4 > li:nth-child(-n+4){
    border-top: solid 1px #cacaca;
  } 
  .cmn_menulist.col4.line_green > li:nth-child(-n+4){
    border-top: solid 1px #00b097;
  }  
  .cmn_menulist.text > li{
    border-top: solid 1px #cacaca;
  }
  .cmn_menulist.text.line_green > li{
    border-top: solid 1px #00b097;
  }
  .cmn_menulist.text.col1 > li:nth-child(n+2),
  .cmn_menulist.text.col2 > li:nth-child(n+3),
  .cmn_menulist.text.col3 > li:nth-child(n+4),
  .cmn_menulist.text.col4 > li:nth-child(n+5){
    margin-top: 55px;
  }
}
@media screen and (max-width: 768px) {
  .cmn_menulist{
    margin-bottom: 25px;
  }
  .cmn_menulist.text > li,
  .cmn_menulist > li:first-child{
    border-top: solid 1px #cacaca;
  }
  .cmn_menulist.text > li:nth-child(n+2){
    margin-top: 20px !important;
  }
  .cmn_menulist > li > a >*{
    padding: 23px 25px 23px 0;
  }
  .cmn_menulist > li > a >*::before{
    position: absolute;
    right:5px;
    width: 8px;
    height: 8px;
  }  
  
  /*sp_col2*/
  .cmn_menulist.sp_col2{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;    
    flex-wrap: wrap;
  }  
  .cmn_menulist.sp_col2::after{
    content: '';
    width:47.7%;
    display:block;
  }
  .cmn_menulist.sp_col2 > li{
    width:47.7%;
  }
  .cmn_menulist.sp_col2 > li:nth-child(-n+2){
    border-top: solid 1px #cacaca;
  }  
  /*sp_col3*/
  .cmn_menulist.sp_col3{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;    
    flex-wrap: wrap;
  }  
  .cmn_menulist.sp_col3::after{
    content: '';
    width: 30.7%;
    display:block;
  }
  .cmn_menulist.sp_col3 > li{
    width: 30.7%;
  }
  .cmn_menulist.sp_col3 > li:nth-child(-n+3){
    border-top: solid 1px #cacaca;
  }    
  /*テキストあり*/
  .cmn_menulist.text > li > a >*{
    padding-top: 17px;
    padding-bottom: 17px;
  }
  .cmn_menulist.text .txt{
    margin-top: 14px;
  }  
  .cmn_menulist.text.line_green > li{
    border-top: solid 1px #00b097;
  }    
}

/*アイコンあり*/
.cmn_menulist.ico > li a > *{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;  
}
.cmn_menulist.ico > li a > * > img{
  width: 35px;
  margin-right: 10px;
}
.cmn_menulist.ico > li a > * .ttl{
  -webkit-box-flex: 1;
  flex: 1;
  line-height: 1.222;
}

/*幅狭い*/
.cmn_menulist.small > li a > *{
  padding-top: 14px;
  padding-bottom: 14px;  
}
.cmn_menulist.small.ico > li a > * > img{
  width: 29px;
}
@media screen and (max-width: 768px) {
  .cmn_menulist.ico > li a > * > img{
    width: 25px;
    margin-right: 8.5px;
  }
  .cmn_menulist.ico > li a > * .ttl{
    line-height: 1.357;
  }  
  /*幅狭い*/
  .cmn_menulist.small.ico > li a > * > img{
    width: 23px;
  }  
}
/* ===============================================
# メニューリスト２
=============================================== */
.cmn_menulist2{
  margin-bottom: 55px;
}
.cmn_menulist2 *{
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;  
}
.cmn_menulist2 > li{
  border-top: solid 1px #00b097;  
}
.cmn_menulist2 > li>a{
  position: relative;
  display: block;
  height: 100%;
  color: #000;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.3;
  text-decoration: none;
}
.cmn_menulist2 > li> a.on{
  background: #f0faf9;
  color: #00b097;
}
.cmn_menulist2 > li> a::after{
  content: '';
  display: block;
  width: 100%;
  width: calc(100% - 23px);
  height: 1px;
  background: #cacaca;
  position: absolute;
  bottom: 0;
  left: 0;
}
.cmn_menulist2 > li> a::before{
  content: '';
  display: block;
  width: 19px;
  height: 1px;
  background: #00b097;
  position: absolute;
  bottom: 0;
  right: 0;
}
.cmn_menulist2 > li > a >*{
  display: block;
  height: 100%;
  padding: 23px 25px 23px 0;
  position: relative;
}
.cmn_menulist2 > li > a:not([href=""]) >*::before{
  position: absolute;
  right:6px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  content: '';
  width: 11px;
  height: 11px;
  background:url("/assets/img/ico_arrow.svg")no-repeat left center;
  background-size: contain;
}
@media (hover: hover) and (pointer: fine) {
  .cmn_menulist2 > li>a:hover >*{
    opacity: 0.6;
  }
  .cmn_menulist2 > li>a:hover >*::before{
    -webkit-animation: arrow 0.6s cubic-bezier(0.645, 0.045, 0.355, 1);
    animation: arrow 0.6s cubic-bezier(0.645, 0.045, 0.355, 1); 
  }  
}
@media print,screen and (max-width: 1024px) {
  .cmn_menulist2 > li>a{
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media print,screen and (min-width : 769px){
  /*col2、3、4*/
  .cmn_menulist2.col2,
  .cmn_menulist2.col3{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;    
    flex-wrap: wrap;
  }  
  .cmn_menulist2.col2::after{
    content: '';
    width: 48.3%;
    display:block;
  }
  .cmn_menulist2.col2 > li{
    width: 48.3%;
  }
  .cmn_menulist2.col2 > li:nth-child(n+3){
    margin-top: 20px;
  }
  /*col3*/
  .cmn_menulist2.col3::after{
    content: '';
    width: 30.7%;
    display:block;
  }
  .cmn_menulist2.col3 > li{
    width: 30.7%;
  }
  .cmn_menulist2.col3 > li:nth-child(n+4){
    margin-top: 20px;
  }  
  /*col4*/
  .cmn_menulist2.col4{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;    
    flex-wrap: wrap;
  }
  .cmn_menulist2.col4 > li{
    width: 22.84%;
    margin-left: 2.88%;
  }
  .cmn_menulist2.col4 > li:nth-child(4n+1){
    margin-left: 0;
  }
  .cmn_menulist2.col4 > li:nth-child(n+5){
    margin-top: 20px;
  } 
}
@media screen and (max-width: 768px) {
  .cmn_menulist2{
    margin-bottom: 25px;
  }
  .cmn_menulist2 li{
    border-top: none;
  }
  .cmn_menulist2 li:first-child{
    border-top: solid 1px #cacaca;
  }
  .cmn_menulist2.text > li:nth-child(n+2){
    margin-top: 20px !important;
  }
  .cmn_menulist2 > li a{
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: bold;
  }
  .cmn_menulist2 > li a >*{
    padding: 23px 25px 23px 0;
  }
  .cmn_menulist2 > li a >*::before{
    position: absolute;
    right:5px;
    width: 8px;
    height: 8px;
  }  
  
  /*sp_col2*/
  .cmn_menulist2.sp_col2{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;    
    flex-wrap: wrap;
  }  
  .cmn_menulist2.sp_col2::after{
    content: '';
    width:47.7%;
    display:block;
  }
  .cmn_menulist2.sp_col2 > li{
    width:47.7%;
  }
  .cmn_menulist2.sp_col2 > li:nth-child(-n+2){
    border-top: solid 1px #cacaca;
  }  
}


/* ===============================================
# 第五階層メニュー
=============================================== */
.cmn_area_wide{
  padding: 48px 0;
}
.cmn_area_wide .inner>*:last-child{
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  .cmn_area_wide{
    padding: 40px 0;
  }
}
/* ===============================================
# インデックスリスト枠
=============================================== */
.cmn_wide_index{
  padding: 64px 0 70px;
}
.cmn_wide_index.news{
  padding: 50px 0 50px;
  border-top: solid 1px #92d8d4;
  background: #f7fcfb;
}
.cmn_wide_index.news .cmn_ttl07{
  margin-bottom: 42px;
}
@media screen and (max-width: 768px) {
  .cmn_wide_index{
    padding: 40px 0;
  }
  .cmn_wide_index.news{
    padding: 25px 0 30px;
  }
  .cmn_wide_index.news .cmn_ttl07{
    margin-bottom: 25px;
  }  
}
/* ===============================================
# インデックスリスト
=============================================== */
.cmn_indexbox{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;  
  margin-bottom: 55px;
}
.cmn_indexbox *{
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;  
}
.cmn_indexbox > ul > li{
  position: relative;
  display: block;
}
.cmn_indexbox > ul > li::before{
  content: '';
  display: block;
  width: 19px;
  height: 1px;
  background: #00b097;
  position: absolute;
  bottom: 0;
  right: 0;
}
.cmn_indexbox > ul > li >*{
  position: relative;
  height: 100%;
  padding: 10px 0 60px;
  border-top: solid 1px #00b097;  
  color: #000;
  text-decoration: none;
}
.cmn_indexbox > ul > li >*::after{
  content: '';
  display: block;
  width: calc(100% - 23px);
  height: 1px;
  background: #cacaca;
  position: absolute;
  bottom: 0;
  left: 0;
}
.cmn_indexbox > ul > li >*::before{
  position: absolute;
  right:6px;
  bottom: 25px;
  display: inline-block;
  content: '';
  width: 11px;
  height: 11px;
  background:url("/assets/img/ico_arrow.svg")no-repeat left center;
  background-size: contain;
}
.cmn_indexbox > ul > li >* figure{
  margin-bottom: 20px;
}
.cmn_indexbox > ul > li >* .ttl{
  font-weight: bold;
  text-align: center;
  font-size: 21px;
  font-size: 2.1rem;
  line-height: 1.3;
}
.cmn_indexbox > ul > li >* .ttl .ico_blank{
  vertical-align: baseline;
}
.cmn_indexbox > ul > li >* .txt{
  padding-top:10px;
}
@media (hover: hover) and (pointer: fine) {
  .cmn_indexbox > ul > li > a:hover p,
  .cmn_indexbox > ul > li > a:hover figure{
    opacity: 0.6;
  }
  .cmn_indexbox > ul > li > a:hover::before{
    -webkit-animation: arrow 0.6s cubic-bezier(0.645, 0.045, 0.355, 1);
    animation: arrow 0.6s cubic-bezier(0.645, 0.045, 0.355, 1); 
  }  
}
@media print,screen and (max-width : 1280px){
  .cmn_indexbox > ul > li >* .ttl{
    font-size: 19px;
    font-size: 1.9rem;
  }
  .cmn_indexbox > ul > li >* .txt{
    font-size: 17px;
    font-size: 1.7rem;
  }  
}
@media print,screen and (min-width : 769px){
  /*col2*/
  .cmn_indexbox.col2 > ul{
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .cmn_indexbox.col2 > ul::after{
    content: '';
    width: 47.15%;
    display: block;
  }
  .cmn_indexbox.col2 > ul >li{
    width: 47.15%;
  }
  .cmn_indexbox.col2 > ul >li:nth-child(n+3){
    margin-top: 40px;
  }  
  
  .cmn_indexbox.col2 > ul >li figure{
    margin-bottom: 30px;
  }
  .cmn_indexbox.col2 > ul >li .ttl{
    font-size: 24px;
    font-size: 2.4rem;
  }  
  .cmn_indexbox.col2 > ul >li .txt{
    padding-top:25px;
  }  
  /*col3*/
  .cmn_indexbox.col3 > ul{
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;    
    flex-wrap: wrap;
  }
  .cmn_indexbox.col3 > ul::after{
    content: '';
    width: 30.76%;
    display: block;
  }
  .cmn_indexbox.col3 > ul >li{
    width:30.76%;
  }
  .cmn_indexbox.col3 > ul >li:nth-child(n+4){
    margin-top: 40px;
  }
}
@media screen and (max-width: 768px) {
  .cmn_indexbox{
    display: block;
    margin-bottom: 40px;
  }
  .cmn_indexbox > ul > li:nth-child(n+2){
    margin-top: 25px;
  }
  .cmn_indexbox > ul > li > a::before{
    right:5px;
    bottom: 15px;
    width: 8px;
    height: 8px;
  }
  .cmn_indexbox > ul > li > *{
    padding: 10px 0 30px;
  } 
  .cmn_indexbox > ul > li > * figure{
    margin-bottom: 17px;
  }
  .cmn_indexbox > ul > li > * figure img{
    width: 100%;
  }
  .cmn_indexbox > ul > li > * .ttl{
    font-size: 16px;
    font-size: 1.6rem;
  }
  .cmn_indexbox > ul > li > * .txt{
    padding-top:20px;
  }    
}
/* ===============================================
# インデックスリスト2　第二階層利用
=============================================== */
.cmn_indexbox2{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;  
}
.cmn_indexbox2 dl{
  position: relative;
  height: 100%;
  padding: 18px 0 0;
  border-top: solid 1px #00b097;   
}
.cmn_indexbox2 dl dt{
  position: relative;
}
.cmn_indexbox2 dl dt::after{
  content: '';
  display: block;
  width: calc(100% - 23px);
  height: 1px;
  background: #cacaca;
  position: absolute;
  bottom: 0;
  left: 0;
}
.cmn_indexbox2 dl dt:before{
  content: '';
  display: block;
  width: 19px;
  height: 1px;
  background: #00b097;
  position: absolute;
  bottom: 0;
  right: 0;
}
.cmn_indexbox2 dt a{
  width: 100%;
  min-height: 110px;
  padding: 10px 0;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;  
  position: relative;
  font-weight: bold;
  color: #000;
  text-decoration: none;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.3;  
}
.cmn_indexbox2 dt a::before{
  position: absolute;
  right:0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  content: '';
  width: 11px;
  height: 11px;
  background:url("/assets/img/ico_arrow.svg")no-repeat left center;
  background-size: contain;
}
.cmn_indexbox2 dd{
  padding-top:15px;
}
.cmn_indexbox2 dd a{
  text-decoration: none;
}
@media (hover: hover) and (pointer: fine) {
  .cmn_indexbox2 dt a:hover::before{
    -webkit-animation: arrow 0.6s cubic-bezier(0.645, 0.045, 0.355, 1);
    animation: arrow 0.6s cubic-bezier(0.645, 0.045, 0.355, 1); 
  }  
}
@media print,screen and (min-width : 769px){
  /*col3*/
  .cmn_indexbox2.col3{
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .cmn_indexbox2.col3::after{
    content: '';
    width: 30%;
    display: block;
  }
  .cmn_indexbox2.col3 >*{
    width:30.76%;
  }
  .cmn_indexbox2.col3 >*:nth-child(n+4){
    margin-top: 40px;
  }
}
@media screen and (max-width: 768px) {
  .cmn_indexbox2{
    display: block;
  }
  .cmn_indexbox2 dl{
    padding-top: 10px;
  }
  .cmn_indexbox2 dl dt img{
    width: 100%;
  }
  .cmn_indexbox2 dl dt::after{
    width: calc(100% - 23px);
  }
  .cmn_indexbox2 dl dt:before{
    width: 18px;
  }
  .cmn_indexbox2 dt a{
    min-height: 65px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .cmn_indexbox2 dt a::before{
    width: 8px;
    height: 8px;
  }
  .cmn_indexbox2 dd{
    padding-top:15px;
  }
  .cmn_indexbox2.col3 >*:nth-child(n+2){
    margin-top: 37px;
  }  
}
/* ===============================================
# インデックスリスト　左写真
=============================================== */
.cmn_indexphoto{
  margin-bottom: 55px;
}
.cmn_indexphoto .area_item:nth-child(n+2){
  margin-top: 22px;
}
.cmn_indexphoto figure{
  width: 30.76%;
}
.cmn_indexphoto figure img{
  width: 100%;
}
.cmn_indexphoto .box_text{
  margin-left: 4.23%;
  -webkit-box-flex: 1;
  flex: 1;
}
.cmn_indexphoto .cmn_menulist.text li{
  border-top: none;
}
.cmn_indexphoto .cmn_menulist.text li a{
  font-size: 21px;
  font-size: 2.1rem;
}
@media screen and (max-width: 834px) {
  .cmn_indexphoto{
    margin-bottom: 40px;
  }
  .cmn_indexphoto .area_item{
    display: block;
  }
  .cmn_indexphoto .area_item:nth-child(n+2){
    margin-top: 25px;
  }
  .cmn_indexphoto figure{
    width: 100%;
  }
  .cmn_indexphoto .box_text{
    margin-left: 0;
  }
  .cmn_indexphoto .cmn_menulist.text li a{
    font-size:16px;
    font-size:1.6rem;
  }  
  .cmn_indexphoto .cmn_menulist.text li a > *{
    padding-top: 22px;
    padding-bottom: 22px;
  }
}
/* ===============================================
# 枠付き
=============================================== */
.cmn_frame{
  padding: 32px 3%;
  margin-bottom: 40px;
}
.cmn_frame>*:last-child{
  margin-bottom: 0;
}
.cmn_frame.line{
  border: solid 2px #09b29b;
}
@media screen and (max-width: 834px) {
  .cmn_frame{
    padding: 25px 5%;
  }  
}

/*第二階層利用枠付きメニュー*/
.cmn_frame_menu{
  position: relative;
  padding: 41px 20px 50px;
  border: solid 2px #06b29a; 
  border-radius: 5px;
}
.cmn_frame_menu .ttl_main{
  display: inline-block;
  padding: 0 1em;
  color: #00b097;
  font-size: 30px;
  font-size: 3rem;
  background: #fff;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  word-break: keep-all;
}
.cmn_frame_menu .cmn_textPhoto{
  max-width: 1110px;
  margin: 0 auto;
}
.cmn_frame_menu .cmn_textPhoto >.text{
  padding-top: 20px;
}
@media screen and (max-width :834px) {
  .cmn_frame_menu{
    padding: 29px 12px 25px;
  }
  .cmn_frame_menu .ttl_main{
    padding: 0 1em;
    font-size: 21px;
    font-size: 2.1rem;
  }
  .cmn_frame_menu .cmn_textPhoto >.text{
    padding-top: 0;
  }  
}
/* ===============================================
# タブ
=============================================== */
.cmn_ttl07+.cmn_news_tab{
  margin-top: 20px;
}
.cmn_news_tab{
  overflow-y: auto;
  scrollbar-color: #00b097 #E3E3E3;
  scrollbar-width: thin;    
  margin-bottom: 15px;  
  padding-bottom: 5px;
}
.cmn_news_tab::-webkit-scrollbar{
  height: 5px;
}
.cmn_news_tab::-webkit-scrollbar{
  background: #E3E3E3;
}
.cmn_news_tab::-webkit-scrollbar-thumb{
  border-radius:0;
  background: #00b097;
}
.cmn_news_tab ul{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  flex-wrap: nowrap;
}
.cmn_news_tab ul li{
  flex-shrink: 0;
}
.cmn_news_tab ul li:nth-child(n+2){
  margin-left: 30px;
}
.cmn_news_tab ul li button{
  display: block;
  padding: 0 10px 15px;  
  font-weight: bold;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.3;
  text-decoration: none;
  border-bottom: solid 4px rgba(255,255,255,0);
}
.cmn_news_tab ul li button.on{
  pointer-events: none;
  border-bottom: solid 4px #00b097;
}
.cmn_news_tab ul li button:hover{
  color: #00b097;
}

.translation .cmn_news_tab{
  display: none;
}
@media screen and (max-width :834px){
  .cmn_ttl07+.cmn_news_tab{
    margin-top: 22px;
  }
  .cmn_news_tab ul li:nth-child(n+2){
    margin-left: 20px;
  }  
  .cmn_news_tab ul li button{
    padding: 0 2px 10px;  
    font-size: 11px;
    font-size: 1.1rem;
  }
  .cmn_news_tab ul li.on button{
    border-width: 3px;
  }
}


/* ===============================================
# パーツ間の余白の調整
=============================================== */
/*本文→ボタン*/
.cms_text+*[class^="cmn_btn"],
.cmn_p+*[class^="cmn_btn"],
.cmn_link+*[class^="cmn_btn"],
.list_link+*[class^="cmn_btn"],
.cmn_contact+*[class^="cmn_btn"]{
  margin-top: 30px;
}

.cms_text+.cmn_gallery,
.cms_text+.cmn_link,
.cms_text+.cmn_defList{
  margin-top: 20px;
}
/*見出し→ボタン*/
.cmn_ttl01+*[class^="cmn_btn"],
.cmn_ttl02+*[class^="cmn_btn"],
.cmn_ttl03+*[class^="cmn_btn"],
.cmn_ttl06+*[class^="cmn_btn"],
.cmn_defList+*[class^="cmn_btn"]{
  margin-top: 30px;
}

/*本文・ボタン→見出し*/
.cms_text+*[class^="cmn_ttl0"],
.cmn_p+*[class^="cmn_ttl0"],
*[class^="cmn_btn"]+*[class^="cmn_ttl0"],
.cmn_layout_col2_pc+*[class^="cmn_ttl0"],
.cmn_tableStyle+*[class^="cmn_ttl0"],
.cmn_tableStyle2+*[class^="cmn_ttl0"],
.cmn_scroll_area+*[class^="cmn_ttl0"],
*[class^="cmn_btn"]+.cmn_textPhoto,
*[class^="cmn_btn"]+.cmn_gallery{
  margin-top: 50px;
}

.cms_text+.cmn_ttl03,
.cmn_p+.cmn_ttl03,
*[class^="cmn_btn"]+.cmn_ttl03,
.cmn_layout_col2_pc+.cmn_ttl03,
.cmn_tableStyle+.cmn_ttl03,
.cmn_tableStyle2+.cmn_ttl03,
.cmn_scroll_area+.cmn_ttl03,
.cms_text+.cmn_ttl05,
.cmn_p+.cmn_ttl05
{
  margin-top: 40px;
}

/*リスト→タイトル*/
.cmn_komeList+.cmn_ttl02,
.cmn_indent+.cmn_ttl02,
.cmn_discList+.cmn_ttl02,
.cmn_deciList+.cmn_ttl02,
.cmn_link+.cmn_ttl02,
.list_link+.cmn_ttl02,
.cmn_defList+.cmn_ttl02,
.cmn_komeList+.cmn_ttl06,
.cmn_indent+.cmn_ttl06,
.cmn_discList+.cmn_ttl06,
.cmn_deciList+.cmn_ttl06,
.cmn_link+.cmn_ttl06,
.list_link+.cmn_ttl06,
.cmn_defList+.cmn_ttl06{
  margin-top: 50px;
}
.cmn_komeList+.cmn_ttl03,
.cmn_indent+.cmn_ttl03,
.cmn_discList+.cmn_ttl03,
.cmn_deciList+.cmn_ttl03,
.cmn_link+.cmn_ttl03,
.list_link+.cmn_ttl03
{
  margin-top: 40px;
}
/*見出し→定義リスト、写真＋テキスト*/
.cmn_ttl02+.cmn_defList,
.cmn_ttl03+.cmn_defList,
.cmn_ttl06+.cmn_defList,
.cmn_ttl02+.cmn_textPhoto,
.cmn_ttl03+.cmn_textPhoto,
.cmn_ttl06+.cmn_textPhoto{
  margin-top: 25px;
}
/*アコーディオン+見出し*/
.cmn_ttl_acd+*[class^="cmn_ttl0"]{
  margin-top: 40px;
}

.main_contents > *+.cmn_anchor,
.main_contents > *:not(.cms_text):not(.cmn_anchor)+.cmn_ttl01,
.cmn_ttl01:nth-of-type(n+2){
  margin-top: 70px;
}
.cmn_anchor+.cmn_ttl01,
.cmn_anchor+.cms_text+.cmn_ttl01{
  margin-top: 0;
}
@media screen and (max-width: 834px) {
  /*本文→ボタン*/
  .cms_text+*[class^="cmn_btn"],
  .cmn_p+*[class^="cmn_btn"],
  .cmn_link+*[class^="cmn_btn"],
  .list_link+*[class^="cmn_btn"],
  .cmn_contact+*[class^="cmn_btn"]{
    margin-top: 25px;
  }
  /*見出し→ボタン*/
  .cmn_ttl01+*[class^="cmn_btn"],
  .cmn_ttl02+*[class^="cmn_btn"],
  .cmn_ttl03+*[class^="cmn_btn"],
  .cmn_ttl06+*[class^="cmn_btn"],
  .cmn_defList+*[class^="cmn_btn"]{
    margin-top: 25px;
  }

  /*本文・ボタン→見出し*/
  .cms_text+*[class^="cmn_ttl0"],
  .cmn_p+*[class^="cmn_ttl0"],
  *[class^="cmn_btn"]+*[class^="cmn_ttl0"],
  .cmn_layout_col2_pc+*[class^="cmn_ttl0"],
  .cmn_tableStyle+*[class^="cmn_ttl0"],
  .cmn_tableStyle2+*[class^="cmn_ttl0"],
  .cmn_scroll_area+*[class^="cmn_ttl0"],
  *[class^="cmn_btn"]+.cmn_textPhoto,
  *[class^="cmn_btn"]+.cmn_gallery{
    margin-top: 30px;
  }

  .cms_text+.cmn_ttl03,
  .cmn_p+.cmn_ttl03,
  *[class^="cmn_btn"]+.cmn_ttl03,
  .cmn_layout_col2_pc+.cmn_ttl03,
  .cmn_tableStyle+.cmn_ttl03,
  .cmn_tableStyle2+.cmn_ttl03,
  .cmn_scroll_area+.cmn_ttl03,
  .cms_text+.cmn_ttl05,
  .cmn_p+.cmn_ttl05
  {
    margin-top: 20px;
  }

  /*リスト→タイトル*/
  .cmn_komeList+.cmn_ttl02,
  .cmn_indent+.cmn_ttl02,
  .cmn_discList+.cmn_ttl02,
  .cmn_deciList+.cmn_ttl02,
  .cmn_link+.cmn_ttl02,
  .list_link+.cmn_ttl02,
  .cmn_defList+.cmn_ttl02,
  .cmn_komeList+.cmn_ttl06,
  .cmn_indent+.cmn_ttl06,
  .cmn_discList+.cmn_ttl06,
  .cmn_deciList+.cmn_ttl06,
  .cmn_link+.cmn_ttl06,
  .list_link+.cmn_ttl06,
  .cmn_defList+.cmn_ttl06{
    margin-top: 30px;
  }
  .cmn_komeList+.cmn_ttl03,
  .cmn_indent+.cmn_ttl03,
  .cmn_discList+.cmn_ttl03,
  .cmn_deciList+.cmn_ttl03,
  .cmn_link+.cmn_ttl03,
  .list_link+.cmn_ttl03
  {
    margin-top: 20px;
  }
  /*見出し→定義リスト、写真＋テキスト*/
  .cmn_ttl02+.cmn_defList,
  .cmn_ttl03+.cmn_defList,
  .cmn_ttl06+.cmn_defList,
  .cmn_ttl02+.cmn_textPhoto,
  .cmn_ttl03+.cmn_textPhoto,
  .cmn_ttl06+.cmn_textPhoto{
    margin-top: 20px;
  }
  /*アコーディオン+見出し*/
  .cmn_ttl_acd+*[class^="cmn_ttl0"]{
    margin-top: 30px;
  }

  .main_contents > *+.cmn_anchor,
  .main_contents > *:not(.cms_text):not(.cmn_anchor)+.cmn_ttl01,
  .cmn_ttl01:nth-of-type(n+2){
    margin-top: 50px;
  }
}

/* ===============================================
# アイコン
=============================================== */
.cmn_cate{
  display: inline-block;
}
.cmn_cate .ico{
  display: inline-block;
  background: #e5e5e4;
  border-radius: 3px;
  padding: 5px 9px;
  line-height: 1;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: normal;
  vertical-align: middle;
  margin-right: 10px;
}
.cmn_cate .ico::before{
  display: inline-block;
  content: '●';
  color: #00b097;
  margin-right: 3px;
  transform: scale(0.75,0.75);
  vertical-align: middle;
}
.cmn_cate .ico:last-child{
  margin-right: 0;
}

/*お知らせ*/
.cmn_cate .ico.cate_1::before{
  color: #138c3b;
}
/*入試*/
.cmn_cate .ico.cate_2::before{
  color: #ff9000;
}
/*スポーツ*/
.cmn_cate .ico.cate_00003::before,
.cmn_cate .ico.cate_3::before{
  color: #262e79;
}
/*地域連携*/
.cmn_cate .ico.cate_4::before{
  color: #85c94d;
}
/*全学年*/
.cmn_cate .ico.cate_5::before{
  color: #9b273a;
}
/*3年生*/
.cmn_cate .ico.cate_6::before{
  color: #1f9345;
}
/*留学生*/
.cmn_cate .ico.cate_7::before{
  color: #882276;
}
/*卒業生*/
.cmn_cate .ico.cate_8::before{
  color: #375766;
}
/*東松山*/
.cmn_cate .ico.cate_9::before{
  color: #348eb7;
}
/*板橋*/
.cmn_cate .ico.cate_10::before{
  color: #5d9c3a;
}
/*スポ・国関*/
.cmn_cate .ico.cate_11::before{
  color: #2a2e69;
}
/*学外*/
.cmn_cate .ico.cate_12::before{
  color: #db8116;
}
/*学外*/
.cmn_cate .ico.cate_12::before{
  color: #db8116;
}
/*文学部*/
.cmn_cate .ico.literature::before{
  color: #f2655d;
}
/*経済学部*/
.cmn_cate .ico.economics::before{
  color: #15bcc7;
}
/*外国語学部*/
.cmn_cate .ico.foreign::before{
  color: #f2718b;
}
/*法学部*/
.cmn_cate .ico.law::before{
  color: #f58345;
}
/*社会学部*/
.cmn_cate .ico.sociology::before{
  color: #62c0c7;
}
/*国際関係学部*/
.cmn_cate .ico.international::before{
  color: #3d85c6;
}
/*経営学部*/
.cmn_cate .ico.business::before{
  color: #7fbc5a;
}
/*スポーツ・健康科学部*/
.cmn_cate .ico.sports::before{
  color: #9e75b4;
}



@media screen and (max-width :834px){
  .cmn_cate .ico{
    border-radius: 2.5px;
    padding: 3px 9px;
    font-size: 9px;
    font-size: 0.9rem;
  }
}

/* CSS Document */
.large_logo {
  width: 75%;
  margin: 0 auto;
  padding-top: 90px;
}
@media screen and (min-width :835px) {
  .large_logo {
    max-width: 580px;
  }
}
.maintenance {
  margin: 0 auto;
  margin-top: 70px;
}
@media screen and (max-width :834px) {
  .maintenance {
    width: 90%;
  }
}
.maintenance p {
  text-align: center;
}
@media screen and (max-width :834px){
  .maintenance p {
  text-align: left;
}
}
.m_bold {
  font-weight: bold;
}
.red_large {
  font-size: 22px;
  font-size: 2.2rem;
}
@media screen and (max-width :834px) {
  .red_large {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
.bus {
  border: #00b097 1px solid;
  text-align: center;
  padding: 30px 0 35px;
  max-width: 1300px;
  width: 90%;
  margin: 0 auto;
  margin-top: 70px;
}
@media screen and (max-width :834px) {
  .bus {
    padding: 25px 8px 35px;
  }
}
.bus_ttl {
  font-size: 28px;
  font-size: 2.8rem;
  margin-bottom: 10px;
}
@media screen and (max-width :834px) {
  .bus_ttl {
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 20px;
  }
}
.bus_flex {
  margin: 0 auto;
  width: 100%;
}
@media screen and (min-width :835px) {
  .bus_flex {
    display: flex;
    justify-content: space-around;
    align-items: baseline;
    max-width: 850px;
    width: 97%;
  }
}
.other_link {
  width: 90%;
  margin: 0 auto;
  margin-top: 70px;
}
@media screen and (min-width :835px) {
  .other_link {
    max-width: 1300px;
  }
}
.link_list {
  margin-top: 20px;
}
@media screen and (min-width :835px) {
  .link_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    width: 100%;
  }
}
@media screen and (min-width :835px) {
  .link_list li {
    width: 48% !important;
    margin: 10px 0 0 0 !important;
  }
}

.maintenance_footer p {
  padding-bottom: 30px;
  text-align: center;
  font-size: 11px;
  font-size: 1.1rem;
  color: #00b097;
  font-family: 'Roboto Condensed', sans-serif;
}