@charset "UTF-8";
/* https://www.wftakasu.com/wp-content/themes/karada/style.css */
/* Import rule from: https://www.wftakasu.com/common/css/common.css */
/*
Theme Name: karadaテンプレート
Theme URI: /w
Author: 
Description:  karadaテンプレート
Version: 1.0
*/
/*font-setting*/
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&display=swap');
@import url('https://fonts.googleapis.com/css?family=Roboto:400,700,700i&display=swap');
body {
  min-width: 1080px;
  width: 100%;
  font-size: 16px;
  line-height: 1.7;
  font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "Osaka", "MS PGothic", arial, helvetica, sans-serif;
  color: #333;
  background-color: #fff;
  letter-spacing: 0.06em;
  font-weight: 400;
}
.inner {
  width: 1080px;
  margin: 0 auto;
}
#subHeader {
  display: none;
}
#subHeader.scroll {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  -moz-box-shadow: 0px 1px 7px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0px 1px 7px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 1px 7px rgba(0, 0, 0, 0.2);
  overflow: visible !important;
  transition: 0.3s
}
#subHeader #gnav {
  background-color: #FFFFFF;
  position: relative;
  top: -10px;
  margin-bottom: -10px;
}
@media screen and (max-width: 767px) {
  #subHeader.scroll {
    display: none !important;
  }
  .inner {width: 100%;
  }
}
a {
  text-decoration: none;
  transition: 0.3s
}
a:link {
  color: #043869;
}
a:visited {
  color: #027670;
}
a:hover, a:active {
  text-decoration: underline;
}
hr {
  border: 0;
  height: 1px;
  background-color: #000;
  color: #000;
}
a img, :link img, :visited img {
  border: none;
}
a img:hover {opacity: 0.7}


/*---------Base Style---------*/

.footerTel a {
  display: block;
  background-color: #ffa200;
  color: #FFFFFF;
  font-weight: 400;
  padding: 12px 5% 14px 11%;
  font-size: 16px;
  position: fixed;
  bottom: 0px;
  width: 100%;
  background-repeat: no-repeat;
  background-position: 7% 50%;
  background-size: 30px auto;
  text-align: center;
  box-sizing: border-box;
  box-shadow: 0 0 20px rgba(0, 0, 0, .5);
}
.footerTel a:first-child {
    width: 50%;
    right: 0;
    background-color: #00aa63;
    background-image: url(/common/images/sp/icon_sp_web.png);
}
.footerTel a:last-child {
    width: 50%;
    left: 0;
    background-color: #dd381c;
    background-image: url(/common/images/sp/icon_sp_tel.png);
}
.btn a {
  color: #FFFFFF;
  display: block;
  text-align: center;
  background-position: 0 0;
  background-size: 200% auto;
  border-radius: 3px;
  transition: .3s;
  font-size: 14px;
}
.btn a{
  background-color: #043869;
  background-image: linear-gradient(to right, rgba(0,0,0,0) 50%, rgba(255,162,0,1.00) 50%);
  margin-right: 10px;
}
.btn a span{
  padding-left: 25px;
  background-repeat: no-repeat;
  background-position: 0px 50%;
  display: inline-block;
}
.btn a:hover {  
  background-position: -100% 0;
}
.w100p {
  width: 100%;
}
.w80p {
  margin: 0 auto;
  width: 80%;
}
.p100 img {
  width: 100%;
  height: auto;
}
@media all and (max-width: 767px) {
  img {
    max-width: 100%;
    height: auto;
    width /***/ : auto;
  }
  #fixpage {
    width: 100%;
    overflow: hidden;
  }
  #fixpage > .header, #fixpage .breadcrumbs, #fixpage .gr_navi, ul.sp_menu{
    display: none;
  }
  #fixpage .sgl_migi, #fixpage .renraku, #fixpage .side, #fixpage .footer_2 {
    float: none;
    margin: 0;
    width: 100%;
  }
  #fixpage img {
    width: 100%;
    margin: 0 auto;
    display: block;
  }
  }
/*SP,PC setting*/
.pc-only {
  display: block;
}
.sp-only {
  display: none;
}
@media screen and (max-width: 767px) {
  body {
    min-width: 100%;
  }
  .pc-only {
    display: none;
  }
  .sp-only {
    display: block;
  }
  img {
    max-width: 100%;
    height: auto;
  }
}
/*.header*/
.header {
  padding: 5px 0 0px;
  margin: 0 auto;
  background-color: #FFFFFF;
  z-index: 10;
  border-top: 2px solid #043869;
}
.header .inner {
  width: 1080px;
  margin: 0px auto 0;
  position: relative;
  padding: 30px 0px 0px;
}
.header .inner:after {
  content: "";
  clear: both;
  display: block;
}
.header .description {
  font-size: 12px;
  margin-bottom: 10px;
  position: absolute;
  top: 0px;
  left: 0px;
}
.header .logo {
  float: left;
}
.header .logo .homeLogo {
  float: left;
}
.header .info {
  background-color: #043869;
  color: #FFFFFF;
  font-size: 13px;
  padding:0px 7px;
  border-radius: 3px;
  display: inline-block;
  text-align: center;
  float: left;
  margin: 10px 0px 0px 15px;
}
.header .telBox {
  float: right
}
.header .telBox .links{
  margin-top: -39px;
  text-align: right;
}
.header .telBox .links.btn a {
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
  color: #fff;
  padding: 3px 10px 3px 10px;
  display: inline-block;
  background-color: #043869;
  margin: 0;
  line-height: 1em;
}
.header .telBox .links.btn a span {
  background-image: url(/common/images/common/icon_arrow01.png);
  background-repeat: no-repeat;
  background-position: 0% 50%;
  padding-left: 10px;
  font-size: 12px;
}
.header .telBox .telNum a {
  background-image: url(/common/images/common/icon_tel.png);
  background-repeat: no-repeat;
  background-position: 0% 50%;
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
  color: #333;
  font-size: 30px;
  padding-left: 40px;
}
/*.header .telBox .telNum a:after{
  content: url("/common/images/common/icon_telinfo.png");
  position: relative;
  top: 5px;
  margin-left: 10px;
}*/
.header .telBox .telNum a:hover{
  cursor: default
}
.header .telBox p {
  text-align: center;
  font-size: 13px;
  line-height: 1em;
  margin-top: -10px;
}
@media screen and (max-width: 767px) {
  .header {
    display: none;
  }
}

/*#gnav*/
#spMenu {
  display: none;
}
#gnav {
  height: 55px;
  margin-bottom: 20px;
}
#gnav a {
  transition: all 0.3s;
}
#gnav .inner {
  position: relative;
}
#gnav .gr_navi {
  position: relative;
  text-align: center;
  font-size: 0;
}
#gnav .gr_navi li {
  text-align: center;
  display: inline-block;
  margin: 0;
  width: 179px
}
#gnav .gr_navi li a {
  line-height: 55px;
  color: #333;
  display: block;
  text-decoration: none;
  height: 55px;
  position: relative;
  font-size: 15px;
  font-weight: 700;
  padding: 0px;
  width: 100%;
  letter-spacing: 0.08em;
  background-repeat: no-repeat;
  background-position: 50% 80%;
}
#gnav .gr_navi li a:hover {
  background-color: #F7F7F7;
}
#gnav .gr_navi li a:after {
  position: absolute;
  content: '';
  height: 42px;
  width: 1px;
  top: 50%;
  right: 0;
  margin-top: -21px;
  background: #c7c7c7;
}
#gnav .gr_navi li:first-child a:before {
  position: absolute;
  content: '';
  height: 42px;
  width: 1px;
  top: 50%;
  left: 0;
  margin-top: -21px;
  background: #c7c7c7;
}
#gnav .gr_navi li:nth-child(2) a{
  background-image: url(/common/images/common/icon_gnav05.png);
} 
#gnav .gr_navi li:nth-child(3) a{
  background-image: url(/common/images/common/icon_gnav05.png);
} 
#gnav .gr_navi li:nth-child(4) a{
  background-image: url(/common/images/common/icon_gnav05.png);
} 
#gnav .gr_navi li:nth-child(5) a{
  background-image: url(/common/images/common/icon_gnav05.png);
} 
#gnav .gr_navi li:nth-child(6) a{
  background-image: url(/common/images/common/icon_gnav05.png);
} 
#main .banner {
  background-color: #f8f8f7;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #spMenu {
    display: block;
    padding-bottom: 20px;
    padding-top: 20px;
  }
  #spMenu .spLogo {
    z-index: 3;
  }
  #spMenu .spLogo .ekiten {
    width: 15%;
    float: left;
  }
  #spMenu .spLogo .homeLogo {
  width: 50%;
  position: relative;
  margin: 5px 10% 0 4%;
  }
  #spMenu .pure-toggle-label {
  background-color: #043869 !important;
  border-color: #043869 !important;
  }
  #gnav {
    display: none;
  }
  #spMenu .headerinfo {
    position: fixed;
    z-index: 2;
    width: 100%;
    padding-top: 10px;
    top: 0px;
  }
  #spMenu .headerinfo:after {
    content: "";
    clear: both;
    display: block;
  }
  #spMenu .headerinfo .access {
    float: right;
    width: 40px;
    border: 2px solid #043869;
    height: 40px;
    border-radius: 10%;
    background-color: #043869;
    margin-right: 59px;
  }
 #spMenu .headerinfo .yoyaku {
    float: right;
    width: 100px;
    border-radius: 10%;
    margin-right: 10px;
  }
  #spMenu nav.pure-drawer ul {
    margin-top: 1em;
  }
  #spMenu nav.pure-drawer p {
    text-align: left;
    font-size: 14px;
    color: #515151;
    line-height: 1em;
  }
  #spMenu nav.pure-drawer h3 {
    text-align: left;
    font-size: 16px;
    color: #515151;
    line-height: 1em;
    padding-left: 10px;
    font-weight: 600;
    margin-top: 20px;
  }
  #spMenu nav.pure-drawer p:first-child a {
    background: #f69302;
    border-bottom: 1px solid #cf7319;
    background: radial-gradient(#f69600 65%, #f48809 90%);
    color: #fff;
    font-size: 18px;
    padding: 10px 2%;
    text-align: left;
    font-weight: 600;
  }
  #spMenu nav.pure-drawer ul li {
    width: 50%;
    border-bottom: 1px dotted #ccc;
    float: left;
  }
  #spMenu nav.pure-drawer a {
    color: #555555;
    transition: all 0.3s;
    padding: 6px 5px 6px 20px;
    display: block;
    background: url("/common/images/common/icon_arrow01.png") no-repeat 10px 50%;
  }
  #spMenu .pure-drawer {
  background-color: #fff !important;
  height: 85%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 10px 0;
    -webkit-box-shadow: 0px 1px 7px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 1px 7px rgba(0, 0, 0, 0.2);
  }
  #spMenu ul.cf:after {
    content: "";
    clear: both;
    display: block;
  }
}
.breadcrumbs {
  margin: 10px auto 10px;
  font-size: 14px;
}
.headTtl {
  padding: 20px 0;
  background-color: #f0f3f7;
  margin-bottom: 20px;
}
.entry-title {
  text-align: center;
  margin: 10px 0px 30px;
}
.entry-title span {
  margin-bottom: 10px;
  text-align: center;
  font-size: 24px;
  position: relative;
}
.entry-title span:after {
  position: absolute;
  content: '';
  width: 40px;
  height: 3px;
  left: 50%;
  margin: 18px 0 0 -20px;
  display: block;
  background: #043869;
  bottom: -10px;
  margin-top: 0;
}
.entry-content img {
  max-width: 100%;
}

@media all and (max-width: 767px) {
.breadcrumbs {
  padding: 0 4%
}
.headTtl {
  padding: 10px 0;
  margin-bottom: 10px;
}
.entry-title {
  margin: 0px 0px 20px;
}
.entry-title span {
  font-size: 18px;
}}
/*#container*/
#container {
  text-align: left;
  width: 1080px;
  margin: 0 auto;
}
#container .main {
  float: right;
  margin: 0 0 0 20px;
  width: 740px;
  clear: both
}
#container .side {
  float: left;
  width: 300px;
}
@media screen and (max-width: 767px) {
#container{
  width:96%;
  margin: 0 auto;  
  }
#container .main, 
#fixpage #container .main {
  float: none;
  margin: 0 auto;
  width:100%;
}
  #container .side {
    display: none;
  }
}
#side{
  padding: 0;
  margin: 0;
}
#side .ttl {
  font-size: 17px;
  position: relative;
  margin-bottom: 10px;
}
#side .ttl:before {
  content: "";
  width: 8px;
  height: 14px;
  top: 3px;
  display: inline-block;
  background-color: #043869;
  margin-right: 15px;
}
#side .banner{
  margin-bottom: 20px;
}
#side .timeTable {
  float: left;
  margin-top: 0px;
  margin-left: 0px;
  margin-bottom: 20px;
  width: 100%;
}
#side .timeTable table{
  width: 100%}
#side .timeTable table th,
#side .timeTable table td
{
  padding: 3px 4px
}
#side h4 {
  color: #FFFFFF;
  background-color: #043869;
  padding: 5px 20px;
  font-size: 17px;
}
#side ul {
  margin-bottom: 20px
}
#side ul li a {
  padding: 10px 20px;
  display: block;
  border-bottom: 1px dashed #333333;
  font-size: 14px;
  color: #333333;
}
#side ul li a:hover {
  text-decoration: none;
  background-color: #F5F5F5;
}
.main .news {display: none}
#side .news,.main .news {
  border-radius: 5px;
  margin: 30px 0;
  background-color: #FFFBED;
  overflow: hidden
}

#side .news h4,.main .news h4 {
  color: #000000;
  background-color: #FFC600;
  padding: 5px 20px;
  font-size: 14px;
}
#side .news ul,.main .news ul {
  margin-bottom: 0px;
}
#side .news li,.main .news li {
  margin-bottom: 10px;
}
#side .news li:last-child,.main .news li:last-child{
  margin-bottom: 0px;
}
#side .news li a,.main .news li a{
  padding: 5px 15px;
  display: block;
  border-bottom: 0px dashed #333333;
  font-size: 14px;
  color: #333333;}
#side .news li a .date ,.main .news li a .date{
  font-size: 12px;
  margin-right: 10px;
}
#side .news .btnNews {
  border-radius: 5px;
  background-color: #FFC600;
  text-align: center;
  font-size: 14px;
  display: inline-block;
  padding: 0 5px;
  margin-right: 10px;
  color: #000000;
  margin-bottom: 20px;
}
.topBtn {
  position: fixed;
  bottom: 20px;
  right: 20px;
  display: block;
  width: 90px;
  height: 90px;
  text-align: center;
  line-height: 90px;
  border-radius: 90px;
  background-color: #FFFFFF;
  padding-top: 40px;
  box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.3);
}
.topBtn:hover {
  opacity:0.7;
}
#footer {
  background: #0b2a4847;
  padding: 0 0 10px;
  margin-top: 60px;
  clear: both;
}
#footer .map,
.map {
position: relative;
padding-bottom: 30%;
padding-top: 30px;
height: 0px;
overflow: hidden;
}
#footer .map iframe,
#footer .map object,
#footer .map embed,

.map iframe,
.map object,
.map embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
#footer .inner {
  padding: 30px 0 0px;
}
#footer .logo {
  margin-bottom: 20px;
}
#footer .logo a {display: block;
float: left}
#footer .logo .info {
    background-color: #043869;
    color: #FFFFFF;
    font-size: 13px;
    padding: 0px 7px;
    border-radius: 3px;
    display: inline-block;
    text-align: center;
    float: left;
    margin: 10px 0px 0px 15px;
}
#footer .add {
  font-size: 14px;
  margin-bottom: 20px;
  text-indent: -3.5em;
  padding-left: 3.5em
}
#footer .txt{
  font-size: 14px;
  margin-bottom: 20px;}
#footer .txt .icon {
  display: inline-block;
  padding: 0 10px;
  background-color: #FFFFFF;
  margin-right: 15px;
}
#footer .txt .info {
  display: inline-block;}
.post .timeTable {
  float: none;
  margin-top: 30px;
  margin-left: 0px;
}
.timeTable{
  float: left;
  margin-top: 60px;
  margin-left:20px;
}
.timeTable table {
  border: 1px solid #C4C3C3;
  border-collapse: collapse;
  font-size: 12px;
}
.timeTable table th {
  background-color: #807770;
  padding: 3px 10px;
  text-align: center;
  color: #FFFFFF;
  border: 1px solid #C4C3C3;
}
.timeTable table td {
  padding: 3px 10px;
  text-align: center;
  background-color: #FFFFFF;
  color: #043869;
  border: 1px solid #C4C3C3;
}
.timeTable p {
  font-size: 12px;
  text-align: center
}
.copy {
  font-size: 12px;
  text-align: center;
}
@media screen and (max-width: 767px) {

  .topBtn {
  width: 50px;
  height: 50px;
  line-height: 50px;
  border-radius: 50px;
  padding: 17px 2% 0px;
  }
  #footer {
    margin-top: 30px;
  }
  #footer .inner {
  padding: 20px 4% 60px;
  }
  #footer .logo {
    margin-bottom: 20px;
  }
  #footer .add {
    font-size: 14px;
    margin-bottom: 20px;
    text-indent: -3.5em;
    padding-left: 3.5em
  }
  .timeTable{
  float: none;
  margin-top: 20px;
  margin-left: 0px;
  margin-bottom: 10px;
  }
  .copy {
    font-size: 12px;
    text-align: center;
  }
}



#information {
  margin-top: 60px;
  padding: 10px 0;
  background-color: #fff;
  border:10px solid #E8E5E0;
}
#information h4 {
  text-align: center;
  font-weight: 700;
  font-size: 22px;
  margin: 0 10px;
  padding:20px 0;
  background-color: #FFFFFF;
}
#information h4 img {
  width: 280px;
  margin-right: 10px;
}
#information .add {
  padding: 20px 60px;
}
#information .add .addIcon {
  background-color: #043869;
  color: #FFFFFF;
  width: 70px;
  text-align: center;
  font-weight: 700;
  margin-right: 20px;
  float: left;
  border-radius: 5px;
}
#information .add .addTxt{
  float: left;
}
#information .innerBox {
  margin: 15px;
  padding: 30px;
  border: 1px solid #B1B1B1;
}
#information .innerBox h5 {
  color: #043869;
  font-size: 17px;
  font-weight: 700
}
#information .innerBox p {font-size: 14px}
@media screen and (max-width: 767px) {
  #information {
    margin-top: 30px;
  }
  #information h4 {
    font-size: 18px;
    margin: 0 10px;
    padding:15px 0;
  }
  #information h4 img {
    width:60%;
    margin-right: 10px;
  }
  #information .add {
    padding: 10px 20px;
  }
  #information .add .addIcon {
    margin-right: 15px;
  }
  #information .innerBox {
    margin: 10px;
    padding: 10px;
  }
  #information .innerBox h5 {
    font-size: 16px;
  }
  #information .innerBox p {font-size: 14px}
}

/*お問い合わせ*/
.wpcf7 {
  margin-top: 30px;
}
table.contactTable {
  box-sizing: border-box;
  width: 100%;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  margin-bottom: 20px;
}
table.contactTable th {
  background-color: #F4F4F4;
  width: 24%;
}
table.contactTable th, table.contactTable td {
  padding: 10px 15px;
  color: #333333;
  box-sizing: border-box;
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
}
div.wpcf7 {
  background: #fff;
}
div.wpcf7-response-output {
  margin: 2em 0.5em 1em;
  padding: 0.2em 1em;
}
div.wpcf7-mail-sent-ok {
  border: 2px solid #398f14;
}
div.wpcf7-mail-sent-ng {
  border: 2px solid #ff0000;
}
div.wpcf7-spam-blocked {
  border: 2px solid #ffa500;
}
div.wpcf7-validation-errors {
  border: 2px solid #f7e700;
}
span.wpcf7-form-control-wrap {
  position: relative;
}
span.wpcf7-not-valid-tip {
  z-index: 100;
  background: #fff;
  border: 1px solid #ff0000;
  font-size: 10pt;
  width: 280px;
  padding: 2px;
}
span.wpcf7-not-valid-tip-no-ajax {
  color: #f00;
  font-size: 10pt;
  display: block;
}
span.wpcf7-list-item {
  margin-left: 0.5em;
}
.wpcf7-display-none {
  display: none;
}
div.wpcf7 img.ajax-loader {
  border: none;
  vertical-align: middle;
  margin-left: 4px;
}
div.wpcf7 .watermark {
  color: #888;
}
.wpcf7-text, .your-message textarea {
  border: 0;
  padding: 10px;
  font-size: 1.3em;
  font-family: Arial, sans-serif;
  color: #333;
  border: solid 1px #ccc;
  margin: 0 0 10px;
  border-radius: 3px;
  width: 100%;
  box-sizing: border-box
}
.wpcf7-text:focus {
  border: solid 1px #EEA34A;
}
.wpcf7-form p {
  font-size: 16px;
  margin-bottom: 0px;
}
.wpcf7-radio label {
  margin: 0 20px 0 0;
}
.wpcf7-list-item-label {
  margin-right: 25px;
}
.wpcf7-submit {
  font-size: 15px;
  width: 80%;
  height: 40px;
  display: block;
  margin: 20px auto 0;
  line-height: 40px;
  background-color: #2A71B9;
  color: #FFFFFF;
  border-radius: 3px;
  text-align: center;
  border-style: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
@media screen and (max-width: 767px) {
  table.contactTable th, table.contactTable td {
    width: 100% !important;
    display: block !important;
  }
}
/*個別ページ用CSS*/
/*body.home*/
body.home .mainBanner {
  text-align: center;
  background-color: #F8F8F8;
}
body.home #container .mainBanner .pc-only {
  margin: 0 auto
}
body.home #container .featureBox {
  margin: 10px 0 30px;
  text-align: center;
}
body.home #container .featureBox li {
  display: inline-block
}
body.home #container .featureBox2 {
  margin: 10px 0 30px;
  text-align: center;
}
body.home #container .featureBox2 li {
	display: inline-block;
    background-color: #043869;
    color: #fff;
    padding: 0.6em;
    border-radius: 5px;
    box-shadow: 0px 2px 2px #9e9e9e;
    margin: 7px;
    width: 31%;
    line-height: 2em;
    text-align: left;
}
body.home #container .featureBox2 li img {
	margin: 0 0.8em 0 1em;
    vertical-align: middle;
}

@media screen and (max-width: 767px) {
  body.home #container .featureBox {
    margin: 10px 0 20px;
  }
  body.home #container .featureBox li {
  margin-bottom: 10px;
  }}

body.home #container #sec01 {
  background-color: #FFF1AD;
  margin-bottom: 30px;
}
body.home #container #sec01 h2 {
  text-align: center;
  color: #FFFFFF;
  font-size: 26px;
  background-color: #043869;
  background-image: url(/common/images/common/line01.png);
  background-repeat: no-repeat;
  padding: 20px 0;
  background-position: 0% 0%;
  font-weight: 700;
}
body.home #container #sec01 .innerBox {
  padding: 30px;
}
body.home #container #sec01 .innerBox p.txt {
  color: #043869;
  font-size: 20px;
  font-weight: 700;
  float: left;
  width: 75%;
  letter-spacing: 0.06em
}
body.home #container #sec01 .innerBox .imgBox{
  float: right;
  text-align: right;
  width: 25%;
}
body.home #container #sec01 .innerBox p.info {
  font-size: 14px;
  margin-top: 10px;
  clear: both;
  text-align: right;
}
@media screen and (max-width: 767px) {
  body.home #container #sec01 {
    margin-bottom: 20px;
  }
  body.home #container #sec01 h2 {
	padding: 5px 0px 0px;
	font-size: 20px;
  }
  body.home #container #sec01 .innerBox {
    padding: 10px;
  }
  body.home #container #sec01 .innerBox p.txt {
  font-size: 17px;
  float: none;
  width: 100%;
  margin-bottom: 10px;
  }
  body.home #container #sec01 .innerBox .imgBox{
  float: none;
  text-align: center;
  width: 100%;
  }
  body.home #container #sec01 .innerBox p.info {
  font-size: 14px;
  margin-top: 10px;
  clear: both;
  text-align: center;
  }
}

body.home #container #sec02 {
  background-color: #eafffb;
  margin-bottom: 30px;
  border-radius: 5px;
}
body.home #container #sec02 h2 {
  text-align: center;
}
body.home #container #sec02 ul {
  padding: 0px 30px 30px
}
body.home #container #sec02 ul li {
  width: 32%;
  margin-right: 2%;
  float: left;
  border-radius: 3px;
  margin-bottom: 10px;
  overflow: hidden;    
  -moz-box-shadow: 0px 1px 7px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0px 1px 7px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 1px 7px rgba(0, 0, 0, 0.2);
}
body.home #container #sec02 ul li:nth-child(3n){
  margin-right: 0%;
}

@media screen and (max-width: 767px) {
body.home #container #sec02 {
  margin-bottom:20px;
}
body.home #container #sec02 ul {
  padding: 0px 15px 15px
}
body.home #container #sec02 ul li {
  width: 48%;
  margin-right: 0%;
  float: left;
}
body.home #container #sec02 ul li:nth-child(2n){
  float: right;
}
body.home #container #sec02 ul li:nth-child(7),
body.home #container #sec02 ul li:nth-child(8),
body.home #container #sec02 ul li:nth-child(9){
  display: none
}
}

body.home #container #sec03{
  background-color: #e7e1e4;
  margin-bottom: 30px;
  border-radius: 5px;
  padding: 30px;
}
body.home #container #sec03 h2 {
  margin: 30px 0;
  text-align: center;
}
body.home #container #sec03 li {
  float: left;
  width: 50%;
  padding: 0 5px 0 0px;
  margin-bottom: 15px;
}
body.home #container #sec03 li .thumb {
  float: left;
  width: 40%;  
}
body.home #container #sec03 li .txtBox {
  float: left;
  width: 60%;
  padding-left: 10px;
}
body.home #container #sec03 li .txtBox h3 {
  font-size: 18px;
  font-weight: 700;
  color: #3F1500;
}
body.home #container #sec03 li .txtBox p{
  font-size: 13px;
  color: #3F1500;}
body.home #container #sec03 li a {
  background-color: #3F1500;
  color: #FFFFFF;
  border-radius: 5px;
  text-align: center;
  display: inline-block;
  padding: 2px 10px;
  font-size: 12px;
}
@media screen and (max-width: 767px) {
  body.home #container #sec03{
  margin-bottom: 20px;
  padding: 15px;
  background-image: none;
  }
  body.home #container #sec03 h2 {
  margin: 20px 0;
  text-align: center;
  }
  body.home #container #sec03 li {
    float: none;
    width: 100%;
    margin-bottom: 10px;
  }
  body.home #container #sec03 li .txtBox h3 {
    font-size: 16px;
  }
  body.home #container #sec03 li .txtBox p{
    font-size: 14px;}}




body.home #container #sec04{
  background-color: #e5fbfa;
  margin-bottom: 30px;
  border-radius: 5px;
}
/*body.home #container #sec04 h2 {
	color: #ffffff;
    text-align: center;
    padding: 0.5em;
    border-bottom: 1px solid;
    background-color: #043869;
}*/
body.home #container #sec04 h2 {
 background-color: #009e96;
    background-image: linear-gradient( 
90deg
, #043869, #009e96 var(--lpos), #043869), repeating-linear-gradient( 
45deg
, rgba(0,0,0,0.8), rgba(0,0,0,0.8) 100px, transparent 0px, transparent 200px ), repeating-linear-gradient( 
-45deg
, rgba(0,0,0,0.5), rgba(0,0,0,0.5) 100px, transparent 0px, transparent 200px );
    background-size: 100%;
    animation: move 10s infinite both;
    color: #fff;
    text-align: center;
}
@keyframes move{
  0% {
    --lpos: 0%;
  }
  25% {
    --lpos: 75%;
  }
  50% {
    --lpos: 50%;
  }
  75% {
    --lpos: 25%;
  }
  100% {
    --lpos: 100%;
  }
}
body.home #container #sec04 h2 span {
    font-size: 1.2em;
    display: block;
    color: #ffe500;
}
}
body.home #container #sec04 h2 span {
    font-size: 1.2em;
    display: block;
    color: #ffe500;
}
body.home #container #sec04 ul {
  padding: 30px
}
body.home #container #sec04 li {
  margin-bottom: 40px;
}
body.home #container #sec04 li .num {
  border-radius: 60px;
  background-color: #FFFFFF;
  border: 1px solid #043869;
  font-family: 'Roboto', sans-serif;
  font-weight: 700;
  font-size: 17px;
  text-align: center;
  width: 60px;
  height: 60px;
  color: #043869;
  line-height: 1em;
  padding: 13px 0;
  font-style: italic;
  margin: 0 auto;
  display: block;
}
body.home #container #sec04 li .num span {
  font-size: 22px;
  display: block;
  margin-top: 3px;
}
body.home #container #sec04 li h3 {
  color: #043869;
  font-size: 22px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 30px;
}
body.home #container #sec04 li .thumb {
  float: right;
  width: 44%;
  padding-left: 15px;
}
body.home #container #sec04 li .txt {
  float: left;
  width: 56%;
}
@media screen and (max-width: 767px) {

  body.home #container #sec04{
    margin-bottom:20px;
  }
  body.home #container #sec04 ul {
    padding: 15px
  }
  body.home #container #sec04 li {
    margin-bottom: 20px;
  }
  body.home #container #sec04 li h3 {
    font-size: 18px;
    margin-bottom: 20px;
  }
  body.home #container #sec04 li .thumb {
  float: none;
  width: 100%;
  padding-left: 0px;
  text-align: center;
  }
  body.home #container #sec04 li .txt {
  float: none;
    width: 100%;
  margin-top: 20px;
  }
  body.home #container #sec04 li .txt p{font-size: 14px}}


body.home #container #sec05{
  margin-bottom:30px;
}

@media screen and (max-width: 767px) {
  body.home #container #sec05{
  margin-bottom:20px;
}
}



body.home #container #sec06{
  margin-bottom: 30px;
  padding: 30px;
  background-color: #FFFAF0;
  /*background-image: url(/common/images/common/line01.png);*/
  border-top: #043869 dashed 3px;
  background-repeat: no-repeat;
}
body.home #container #sec06 h2{
  margin-bottom: 30px;
  text-align: center;
  color: #043869;
  font-weight: bold;
}
body.home #container #sec06 li {
  margin-bottom: 30px;
  position: relative;
}
body.home #container #sec06 li span {
  position: absolute;
  left: 11px;
   font-size: 6em;
   font-family: 'Roboto';
   color: #043869;
    top: -17%;
    font-style: italic;
}
body.home #container #sec06 li:after {
 content: "";
 clear: both;
 display: block;
}
body.home #container #sec06 li .thumb {
  float: left;
  width: 40%;
}
body.home #container #sec06 li .txt {
  float: right;
  width: 60%;
  padding-left: 20px;
/*  padding-top: 20px;*/
}
body.home #container #sec06 li h3 {
  font-size: 22px;
  font-weight: 700;
  color: #043869;
}
body.home #container #sec06 li p {
  font-size: 14px
}
@media screen and (max-width: 767px) {
  body.home #container #sec06{
    margin-bottom: 20px;
    padding: 15px;
  }
  body.home #container #sec06 h2{
  padding: 5px 20px;
  margin-bottom: 15px;
  }
  body.home #container #sec06 li {
    margin-bottom: 20px;
  }
  body.home #container #sec06 li .thumb {
  width: 100%;
  margin-bottom: 10px;
  text-align: center;
  }
  body.home #container #sec06 li .txt {
    width: 100%;
    padding-left: 0px;
    padding-top: 0px;
  }
  body.home #container #sec06 li h3 {
    font-size: 16px;
  }
}




body.home #container #sec07{
  margin-bottom: 30px;
  padding: 30px 15px;
}
body.home #container #sec07 h2 {
  margin-bottom: 30px;
  background-repeat: repeat;
  padding: 30px 0 20px;
  background-image: url(/common/images/common/line02.png);
  text-align: center;
}
body.home #container #sec07 p.topTxt {
  font-weight: 700;
  font-size: 20px;
  text-align: center;
  margin-bottom: 30px;
}
body.home #container #sec07 .tel {
  border-radius: 10px;
  margin-bottom: 10px;
  color: #FFFFFF;
  font-weight: 900;
  font-family: 'Roboto', sans-serif;
  font-size: 55px;
  background-color: #043869;
}
body.home #container #sec07 .tel span {
  background-repeat: no-repeat;
  background-image: url(/common/images/top/icon_tel.png);
  padding: 10px 0 10px 60px;
  background-position: 0% 50%;
  font-style: italic;
}
body.home #container #sec07 .teltxt img{
  margin-left:10px 
}
body.home #container #sec07 .flow{
  margin: 30px 0;  
}
body.home #container #sec07 .flow p {
  font-weight: 700
}
body.home #container #sec07 .flow .first {
  margin-bottom: 20px
}
body.home #container #sec07 .flow .first .fL {
  width: 200px;
}
body.home #container #sec07 .flow .first .fR {
  width: 500px;
  padding: 10px 20px;
}
body.home #container #sec07 .flow .second .fR {
  width: 200px;
}
body.home #container #sec07 .flow .second .fL {
  width: 500px;
  padding: 10px 20px;
}
body.home #container #sec07 .flow .balloon{
  position: relative;
  padding: 20px;
  background-color: #fffaf0;
  border: 2px solid #043869;
  font-weight: 700;
  margin-bottom: 20px;
}
body.home #container #sec07 .flow .balloon.left::before{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: -15px;
  top: 20px;
  border-right: 15px solid #043869;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
}
body.home #container #sec07 .flow .balloon.left::after{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: -12px;
  top: 20px;
  border-right: 15px solid #fffaf0;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
}
body.home #container #sec07 .flow .balloon.right::before{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  right: -15px;
  top: 20px;
  border-left: 15px solid #043869;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
}
body.home #container #sec07 .flow .balloon.right::after{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  right: -12px;
  top: 20px;
  border-left: 15px solid #fffaf0;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
}
body.home #container #sec07 .box {
  background-color: #FFFAF0;
  padding: 20px 50px;
  margin-bottom: 30px;
}
body.home #container #sec07 .box li {font-size: 22px;
font-weight: 700;}
body.home #container #sec07 .box li:before {
  content: "\025c6";
  color: #043869;
  margin-right: 10px;
}

@media screen and (max-width: 767px) {
  body.home #container #sec07{
    margin-bottom: 20px;
    padding: 15px 10px;
  }
  body.home #container #sec07 h2 {
  margin-bottom: 20px;
  padding: 15px 20px 10px;
  }
  body.home #container #sec07 p.topTxt {
  font-size: 16px;
  margin-bottom: 15px;
  text-align: left;
    }
  body.home #container #sec07 .tel {
    font-size: 22px;
  }
  body.home #container #sec07 .tel span {
  padding: 10px 0 10px 30px;
  background-size: auto 50% ;
  }
  body.home #container #sec07 .flow{
    margin: 15px 0;  
  }
  body.home #container #sec07 p.bottomTxt {
    font-size: 14px;}
  body.home #container #sec07 .flow .first .fL {
  width: 100%;
  margin: 0 auto;
  text-align: center;
  }
  body.home #container #sec07 .flow .first .fR {
     width: 100%;
    padding: 10px 20px;
  }
  body.home #container #sec07 .flow .second .fR {
  width: 100%;;margin: 0 auto;
  text-align: center;
  }
  body.home #container #sec07 .flow .second .fL {
    width: 100%;
    padding: 10px 20px;
  }
  body.home #container #sec07 .flow .balloon{
    position: relative;
    padding: 20px;
    background-color: #fffaf0;
    border: 2px solid #043869;
    font-weight: 700;
    margin-bottom: 20px;
  }
  body.home #container #sec07 .flow .balloon.left::before,
  body.home #container #sec07 .flow .balloon.left::after,
    body.home #container #sec07 .flow .balloon.right::before,
    body.home #container #sec07 .flow .balloon.right::after{  
      display: none
  }
  body.home #container #sec07 .box {
    padding: 20px;
    margin-bottom: 20px;
  }
  body.home #container #sec07 .box li {font-size: 18px;}
  body.home .main .news {display: block}
}

/*for subpage layout*/
.post .aligncenter {
    display: block;
    margin: 0 auto;
}
.post .alignright { float: right; }
.post .alignleft { float: left; }
.post .headImg {
  margin-bottom: 30px;
  background-color: #fff;
  border-radius: 5px;
  border-top: 5px solid #E8E5E0;
  border-bottom: 5px solid #E8E5E0;
  border-left: 10px solid #E8E5E0;
  border-right: 10px solid #E8E5E0;
}

.post .boxContents {
  border-radius: 5px;
  padding: 20px;
  border: 5px solid #E8E5E0;
  margin-bottom: 60px;
}
.post strong {font-weight: bold}
.post .date{
  font-size: 14px;
  text-align: right
}
.post h3{
  background-color: #f6f4f2;
  border-left: 6px solid #043869;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 1.5em;
  padding: 5px 5px 5px 15px;
  margin-top: 60px;
}
.post h3:first-child {margin-top:0px}
.post h4 {
    font-size: 17px;
    position: relative;
    margin-bottom: 10px;
  font-weight: bold;
  clear:both;
}
.post h4:before {
    content: "";
    width: 8px;
    height: 14px;
    top: 3px;
    display: inline-block;
    background-color: #043869;
    margin-right: 15px;
}
.post p {
  margin-bottom: 1.5em;  
}
.post .imgBox {
  -webkit-box-shadow: 1px 2px 6px 1px rgba(0,0,0,0.20);
  -moz-box-shadow: 1px 2px 6px 1px rgba(0,0,0,0.20);
  padding: 10px;
  box-shadow: 1px 2px 6px 1px rgba(0,0,0,0.20);
  background-color: #FFFFFF;
  margin: 10px 10px 1.5em;
}
table.staff {
  width: 38%!important;

}
.staff th {
  text-align: center;
  padding: 10px;
  background-color: #E9F5F4;
  border: 1px solid #ddd;
  font-weight: 700;
  white-space: nowrap
}
.staff td {
  padding: 10px;
  background-color: #FCFCFC;
  border: 1px solid #ddd;
  text-align: center;
}
.post table{
  margin: 0 auto 2em;
  width: 90%;}
.post th {
  text-align: center;
  padding: 10px;
  background-color: #E9F5F4;
  border: 1px solid #ddd;
  font-weight: 700;
  white-space: nowrap
}
.post td {
  padding: 10px;
  background-color: #FCFCFC;
  border: 1px solid #ddd;
  text-align: center;
}
.post .imgList li {
  margin-bottom: 30px;
}
.post .imgList li:after {
 content: "";
 clear: both;
 display: block;
}
.post .imgList li .fL {
  width: 40%;
}
.post .imgList li .fL img{
  border: 1px solid #DDDDDD;
}
.post .imgList li .txt {
  width: 60%;
  float: right;
  padding: 10px
}
.post .imgList li .txt strong {
  font-size: 18px;
  color: #043869;
}
.post .txtList {
  padding: 20px;
  background-color: #FBF8EE;
  width: 90%;
  margin: 0px auto 60px;
}
.post .txtList li {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 1.5em;
}
.post .txtList li:before {
  content: "";
  width: 5px;
  height: 5px;
  background-color: #043869;
  display: inline-block;
  margin-right: 10px;
  position: relative;
  top: -3px;
}
.post .txtList li:last-child {
  margin-bottom: 0;
}
dl.qa-list {
    padding: 25px;
    background-color: #FFFFFF;
    border: 1px solid #eee;
    margin-top: 30px;
}
dl.qa-list dt {
  color: #4b2300;
  border-left: 5px solid #FFC600;
  padding: 0px 0px 0px 15px;
  background-color: #FFFFFF;
  background-image: none;
  line-height: 30px;
  margin-bottom: 30px;
  margin-top: 0px;
  text-align: left;
  border-bottom-width: 0px;
  border-right-width: 0px;
  border-top-width: 0px;
  font-weight: 700;
  font-size: 18px;
}
 dl.qa-list dd {
    font-size: 15px;
    margin-top: 5px!important;
}
.post .titleList li{
  margin-bottom: 20px;
}
.post .titleList li a.btn {
  border-radius: 5px;
  background-color: #043869;
  text-align: center;
  font-size: 14px;
  display: inline-block;
  padding: 3px 10px;
  color: #fff;
  margin-bottom: 20px;
}
.red {
  color: #FF0004
}
@media screen and (max-width: 767px) {
  
.post .aligncenter {
    display: block;
    margin: 0 auto;
}
.post .alignright { float: none; }
.post .alignleft { float: left; }
  .post h3{
    margin-top:30px;
  }
  .post h4 {
      font-size: 16px;
  }
  .post .imgList li {
    margin-bottom: 20px;
  }
  .post .imgList li .fL {
  width: 100%;
  margin-bottom: 10px;
  text-align: center;
  }
  .post .imgList li .txt {
    width: 100%;
    float: none;
    padding: 10px
    }
  .post .txtList {
    padding: 15px;
    width: 100%;
    margin: 0px auto 30px;
  }
  .post .txtList li {
    font-size: 15px;
  }
  dl.qa-list {
      padding: 15px;
      margin-top: 30px;
  }
  dl.qa-list dt {
    font-size: 16px;
  }
   dl.qa-list dd {
      font-size: 15px;
  }
}
table.tableStyle01 {
  border-collapse: collapse;
  text-align: left;
  line-height: 1.5;
  font-size: 16px;
}
table.tableStyle01 th {
  padding: 15px;
  vertical-align: middle;
  border-bottom: 1px solid #fff;
  background-color: #043869;
  color: #FFFFFF;
  text-align: left;
}
table.tableStyle01 td {
  padding: 15px;
  vertical-align: top;
  border-bottom: 1px solid #fff;
  background-color: #F8F8F8;
}
table.mailform {
  border-collapse: collapse;
  text-align: left;
  line-height: 1.5;
  font-size: 16px;
  width: 100%;
  border-top: 1px solid #e6eaee;
}
table.mailform th {
  padding: 40px 30px;
  vertical-align: top;
  border-bottom: 1px solid #e6eaee;
  width: 250px;
}
table.mailform td {
  padding: 40px 30px;
  vertical-align: top;
  border-bottom: 1px solid #e6eaee;
  width: 670px;
}

@media (max-width: 830px) {
table.tableStyle01 {
  font-size: 14px;
}
table.tableStyle01 th {
  padding: 10px 15px;
  width: 100%;
  display: block
}
table.tableStyle01 td {
  padding: 10px 15px;
  width: 100%;
  display: block
}
table.mailform {
  font-size: 14px;
}
table.mailform th {
  padding: 10px 15px;
  width: 100%;
  display: block
}
table.mailform td {
  padding: 10px 15px;
  width: 100%;
  display: block
}
}


/*input
=========================================*/
input, button, textarea, select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.tableStyle01 textarea {
  padding: 10px 15px;}
input[type="text"], textarea ,input[type="email"]{
  outline: none;
  -webkit-transition: all .3s;
  transition: all .3s;
  padding: 10px 15px;
  background-color: #fff;
  width: 100%;
}
.tableStyle01 textarea {
  height: 154px;
}
input[type="text"]:focus, textarea:focus {
  box-shadow: 0 0 7px #043869;
  border: 1px solid #043869;
}
input[type="submit"], button[type="submit"], a.submit {
  display: inline-block;
  font-size: 20px;
  padding: 20px 65px;
  background-color: #043869;
  text-align: center;
  background-image: linear-gradient(to right, rgba(0,0,0,0) 50%, rgba(245,128,50,1.00) 50%);
  background-size: 200% auto;
  transition: .3s;
  color: #FFFFFF;
  cursor: pointer
}
input[type="submit"]:hover, button[type="submit"]:hover {
  background-position: -100% 0;
  color: #FFFFFF;
}
a.submit {
  display: inline-block;
}
input[type="checkbox"], input[type="radio"] {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
label {
  position: relative;
  display: block;
  word-break: break-all;
}
label input[type="checkbox"] + span, label input[type="radio"] + span {
  position: relative;
  padding: 0 30px 0 35px;
}
label span {
  display: inline-block;
}
label input[type="checkbox"] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
label input[type="checkbox"] + span::before, label input[type="checkbox"] + span::after {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  content: '';
  box-sizing: border-box;
}
label input[type="checkbox"] + span::before {
  z-index: 0;
  background-color: transparent;
  width: 22px;
  height: 22px;
  border: 2px #E6E6E6 solid;
  border-radius: 5px;
}
label input[type="checkbox"] + span::after {
  z-index: 1;
  margin: 5px 8px;
  width: 6px;
  height: 9px;
}
label input[type="checkbox"]:checked + span::before {
  background-color: #999999;
  border: 2px #999999 solid;
}
label input[type="checkbox"]:checked + span::after {
  border: 2px solid #fff;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
/* Chrome */
::-webkit-input-placeholder {
 color: #ccc;
}

/* Firefox */
::-moz-placeholder {
 color: #ccc;
}

/* IE */
:-ms-input-placeholder {
 color: #ccc;
}


.contact + span{
  padding-left: 20px;
  position:relative;
  margin-right: 20px;
}
.contact + span::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #999;
  border-radius: 50%;
}
.contact:checked + span{
  color: #043869;
}
.contact:checked + span::after{
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
  width: 11px;
  height: 11px;
  background:#043869;
  border-radius: 50%;
}
span.required {
    background-color: #B00002;
    color: #FFFFFF;
    padding: 3px 5px;
    text-align: center;
    font-size: 11px;
    display: block;
    float: right;
}
span.any {
    background-color: #666666;
    color: #FFFFFF;
    padding: 3px 5px;
    text-align: center;
    font-size: 11px;
    display: block;
    float: right;
}
.secondlayout p{float: left;}
.secondlayout table{float: right;width: 60%;}
.bannerwaku{border: 2px solid #043869!important;}
@media screen and (max-width: 767px) {
  .secondlayout p{float: none;}
.secondlayout table{float: none;width: 100%;}
}h1.homeLogo{background:url(/common/images/common/logo.png) no-repeat left center;padding-left:2em}.oukan h2{display:flex;align-items:center}.oukan h2::before{content:url(/wp-content/themes/karada/images/top/oukan.png);margin-right:10px;display:inline-block}#sec04{position:relative}#sec04 h2{position:relative;padding-left:15%}#sec04 h2 img{width:13%;position:absolute;left:0;top:50%;transform:translateY(-50%)}.staff img{width:90%;max-width:100%;height:auto;display:block;margin:0 auto}.keni{text-align:center;background-color:#f8fafb;padding:1.5em;border-radius:8px}.keni>p{font-weight:700;margin-bottom:15px}.keni ul{display:flex;flex-wrap:wrap;gap:4%;padding:0;margin:0;list-style:none}.keni ul li{width:48%;box-sizing:border-box}@media screen and (max-width:767px){#sec04 h2{padding-left:22%}#sec04 h2 img{width:19%}.staff{width:100%;text-align:center}.staff img{width:100%}table.staff{width:100%!important}.keni{padding:1em}.keni ul{flex-direction:column;gap:1em}.keni ul li{width:100%}}.site-sidebar{width:100%}.sidebar-widget{background:#fff;border:1px solid #eee;border-radius:8px;padding:25px 20px;box-shadow:0 4px 15px rgb(0 0 0 / .03);margin-bottom:30px}.sidebar-widget:last-child{margin-bottom:0}.sidebar-title{font-size:1.15rem;color:#043869;border-bottom:2px solid #043869;padding-bottom:10px;margin:0 0 15px 0;font-weight:700;letter-spacing:.05em;position:relative}.banner-widget{padding:0;border:none;background:#fff0;box-shadow:none}.banner-widget img{width:100%;height:auto;border-radius:8px;box-shadow:0 4px 10px rgb(0 0 0 / .08);transition:transform 0.3s cubic-bezier(.4,0,.2,1),box-shadow 0.3s cubic-bezier(.4,0,.2,1)}.banner-widget a:hover img{transform:translateY(-3px);box-shadow:0 8px 20px rgb(0 0 0 / .15)}.sidebar-nav-list{list-style:none!important;padding:0!important;margin:0!important}.sidebar-nav-list li{border-bottom:1px dashed #e2e8f0;margin:0;padding:0}.sidebar-nav-list li:last-child{border-bottom:none}.sidebar-nav-list li a{display:block;padding:12px 25px 12px 5px;color:#333;text-decoration:none;font-size:.95rem;position:relative;transition:background-color 0.3s ease,color 0.3s ease,padding-left 0.3s ease}.sidebar-nav-list li a:hover{background:#f4f8fc;color:#043869;font-weight:700;padding-left:10px}.sidebar-nav-list li a::after{content:"\203a";position:absolute;right:10px;top:50%;transform:translateY(-50%);color:#999;font-size:1.4rem;line-height:1;transition:transform 0.3s ease,color 0.3s ease}.sidebar-nav-list li a:hover::after{color:#043869;transform:translate(4px,-50%)}.sidebar-post-list{list-style:none!important;padding:0!important;margin:0!important}.sidebar-post-list li{border-bottom:1px solid #f1f5f9;padding:12px 0;margin:0}.sidebar-post-list li:last-child{border-bottom:none;padding-bottom:0}.sidebar-post-list li a{display:flex;flex-direction:column;text-decoration:none;transition:opacity 0.3s ease}.sidebar-post-list li a:hover{opacity:.6}.post-date{font-size:.8rem;color:#888;margin-bottom:4px;display:flex;align-items:center}.post-date::before{content:"\1f552";margin-right:5px;font-size:.9em;opacity:.7}.post-title{font-size:.95rem;color:#333;line-height:1.5;font-weight:700}.sidebar-more-link{text-align:right;margin-top:15px;padding-top:15px;border-top:1px dashed #e2e8f0}.btn-more-news{font-size:.9rem;color:#043869;font-weight:700;text-decoration:none;transition:color 0.3s}.btn-more-news:hover{color:#d9534f;text-decoration:underline}@media screen and (max-width:767px){.site-sidebar{margin-top:40px}.sidebar-widget{padding:20px 15px;margin-bottom:25px}}.site-main-container{max-width:1200px;margin:0 auto;padding:0 15px;box-sizing:border-box}@media screen and (min-width:768px){.site-main-container{display:flex;justify-content:space-between;align-items:flex-start}.site-main-container .main{width:72%;margin:0}.site-main-container .site-sidebar,.site-main-container #side{width:25%;margin:0}}@media screen and (max-width:767px){.site-main-container{display:block}.site-main-container .main,.site-main-container .site-sidebar,.site-main-container #side{width:100%;float:none}.site-main-container .site-sidebar,.site-main-container #side{margin-top:50px}}.post-nav-links{display:flex;justify-content:space-between;align-items:center;margin:45px 0;padding:25px 0;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;gap:10px}.post-nav-links .nav-box{flex:1}.post-nav-links .nav-box-prev{text-align:left}.post-nav-links .nav-box-center{text-align:center;flex:.8}.post-nav-links .nav-box-next{text-align:right}.btn-post-nav{display:inline-flex;align-items:center;justify-content:center;padding:12px 15px;font-size:.9rem;font-weight:700;text-decoration:none!important;border-radius:6px;transition:transform 0.25s ease,background-color 0.25s ease,color 0.25s ease;box-sizing:border-box;width:100%}.btn-prev,.btn-next{background:#fff;color:#043869!important;border:2px solid #043869}.btn-prev:hover,.btn-next:hover{background:#043869;color:#ffffff!important;transform:translateY(-2px)}.btn-archive-list{background:#f1f5f9;color:#475569!important;border:1px solid #cbd5e1}.btn-archive-list:hover{background:#e2e8f0;color:#0f172a!important}.btn-post-nav .arrow{font-size:1.2rem;line-height:1;margin:0 4px}@media screen and (max-width:575px){.post-nav-links{padding:18px 0;gap:6px}.btn-post-nav{padding:10px 4px;font-size:.75rem}}.entry-content-area,.entry-content{font-size:16px!important;color:#333;line-height:1.9!important;letter-spacing:.03em}.entry-content-area p,.entry-content p{margin-bottom:1.8em!important;color:#333}.entry-content-area h2,.entry-content h2{font-size:20px!important;color:#043869!important;background:#f4f8fc;border-left:6px solid #043869;padding:14px 18px;margin:3.2em 0 1.2em 0;font-weight:700;border-radius:0 4px 4px 0;line-height:1.4;clear:both}.entry-content-area h2:first-child,.entry-content h2:first-child{margin-top:0.5em!important}.entry-content-area h3,.entry-content h3{font-size:18px!important;color:#043869!important;border-bottom:2px solid #043869;padding-bottom:8px;margin:2.6em 0 1em 0;font-weight:700;clear:both}.entry-content-area h4,.entry-content h4{font-size:16px!important;color:#333;border-left:4px solid #cbd5e1;padding-left:10px;margin:2em 0 .8em 0;font-weight:700}.entry-content-area img,.entry-content img{max-width:100%!important;height:auto!important;border-radius:6px;box-shadow:0 4px 12px rgb(0 0 0 / .08);margin:1.8em auto;display:block}.entry-content-area ul,.entry-content ul{list-style-type:disc!important;margin:1.5em 0 1.5em 1.5em!important;padding-left:0}.entry-content-area ol,.entry-content ol{list-style-type:decimal!important;margin:1.5em 0 1.5em 1.5em!important;padding-left:0}.entry-content-area li,.entry-content li{margin-bottom:.6em;line-height:1.7;color:#333}