@charset "UTF-8";
@import 'base.css';
@import 'fonts.css';
@import 'fvn.css';
@import url('https://fonts.googleapis.com/css?family=Roboto');
/*==========================================================================*/
/*//////////////////////////////////////////////////////////////////////////*/
/*//////                                                              //////*/
/*//////  Copyright (C) 2009 株式会社フリーセル All Rights Reserved.  //////*/
/*//////                                                              //////*/
/*//////////////////////////////////////////////////////////////////////////*/
/*                                                                          */
/*    base.css  --> スタイルの初期設定を行うため、変更しないで下さい。      */
/*    fonts.css --> フォントの初期設定を行うため、変更しないで下さい。      */
/*                                                                          */
/*==========================================================================*/
/*==========================================================================*/
/*                           Common-Setting                                 */
/*==========================================================================*/
/* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */
h1,
h2,
h3,
h4,
h5,
h6,
input,
button,
textarea,
select,
p,
blockquote,
th,
td,
pre,
address,
li,
dt,
dd {
  font-size: 150%;
  -webkit-text-size-adjust: none;
}
.note {
  font-size: 130%;
}
.pc_none {
  display: none !important;
}
img {
  vertical-align: bottom;
}
h1 {
} /* Header内で設定 */
h2 {
}
h3 {
}
h4 {
}
a {
  color: #195cb1;
}
a:hover,
a:active {
  color: #195cb1;
}
a:visited {
}
ul {
}
li {
}
dl {
}
dt {
}
dd {
}
table {
  width: 100%;
}
th,
td {
}
th {
}
td {
}
p {
  margin: 0 0 25px;
}
p,
dd,
td,
th,
li {
  line-height: 1.4em;
}
.section {
  padding: 0 0 60px 0;
}
.section .section {
  padding: 0 0 30px;
}
/* .section:last-child {
  padding: 0;
} */
.image_l {
  float: left;
  margin: 0 20px 10px 0;
}
.image_r {
  float: right;
  margin: 0 0 10px 20px;
}
.rtt90 img {
  writing-mode: vertical-rl;
}
/* add
------------------------------------------------------------------------*/
/*==========================================================================*/
/*                            Container                                     */
/*==========================================================================*/
html {
  background: none;
}
body {
  color: #161616;
  font-family: 'NotoSansCJKjp-Regular';
}
#wrapper {
  min-width: 1100px;
  overflow: hidden;
}
.inner {
  width: 1080px;
  margin: 0 auto;
}
/*==========================================================================*/
/*                               Header                                     */
/*==========================================================================*/
#head_top {
  padding: 0 0 15px;
}

#head_top > .inner {
  margin-top: 15px;
}

#head_top h1 {
  font-family: 'NotoSansCJKjp-Regular';
  font-size: 13px;
  color: #171717;
  max-width: 290px;
  float: left;
  line-height: 1.46em;
  height: 60px;
  display: flex;
  display: -webkit-flex;
  align-items: center;
  box-sizing: border-box;
}
#head_top #logo {
  float: left;
  margin: 5px 30px 0 0;
}
#head_top .head_list01 {
  float: right;
  display: flex;
  display: -webkit-flex;
}
#head_top .head_list01 {
  display: flex;
  display: -webkit-flex;
  align-items: center;
}
#header .head_btn {
  margin: 0;
}
#header .head_btn a {
  width: 170px;
  height: 60px;
  box-sizing: border-box;
  text-decoration: none;
  color: #ffffff;
  font-family: 'NotoSansCJKjp-Medium';
  font-size: 16px;
  background: #de8315;
  border-bottom: #b26910 3px solid;
  border-radius: 5px;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
}
#header .head_btn a span {
  display: inline-block;
  background: url(../images/head_icon01.png) left 0 no-repeat;
  padding-left: 30px;
}
#header .head_list01 .head_btn a {
  margin-left: 20px;
}
#header .head_btn a:hover {
  opacity: 0.8;
}
#index #top_info {
  background: url(../images/bg_slide.jpg) center center no-repeat;
  background-size: cover;
}
#index #top_info .inner {
  position: relative;
  z-index: 1;
  height: 520px;
}
#index #top_info .box_slide {
  position: absolute;
  z-index: 1;
  height: 100%;
  width: 1330px;
  top: 0;
  left: calc(50% - 665px);
}
#index #top_info .box_slide ul a img {
  transition: 0.3s all;
}
#top_info .box_clip {
  position: absolute;
  bottom: -93px;
  right: -123px;
  z-index: 100;
}
#top_info .box_clip dt {
  width: 180px;
  height: 180px;
  margin: 0 auto 40px;
  background: #108ccf;
  color: #ffffff;
  font-family: 'NotoSansCJKjp-Regular';
  font-size: 21px;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  border-radius: 50%;
  text-align: center;
  line-height: 1.47em;
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  padding-top: 12px;
}
#top_info .box_clip dt:before {
  position: absolute;
  z-index: 1;
  bottom: -18px;
  left: calc(50% - 12px);
  content: '';
  display: block;
  width: 0px;
  height: 0px;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-top: 20px solid #108ccf;
}
#top_info .box_clip dd {
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
  background-color: #fff;
}
.box_clip a:hover img {
  opacity: 0.7;
}
.mfp-fade.mfp-bg {
  opacity: 0;
  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
}
.mfp-fade.mfp-bg.mfp-ready {
  opacity: 0.8;
}
.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}
.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
}
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}
/*==========================================================================*/
/*                              Footer                                      */
/*==========================================================================*/
.mt70 {
  margin-top: 70px;
}
#footer {
  clear: both;
  text-align: left;
}
#footer .footer_bnr01 {
  text-align: center;
  position: relative;
  z-index: 1;
  margin-top: -30px;
  padding-bottom: 50px;
  margin-bottom: 0;
}
#footer .footer_bnr01 a:hover {
  opacity: 0.8;
}
.under #footer {
  margin-top: 60px;
}
.under #footer .footer_bnr01 {
  margin-top: 40px;
  font-size: 14px;
  color: #939393;
}
.under #footer .footer_bnr01 a {
  margin-bottom: 10px;
  display: inline-block;
}
#footer #footer01 {
  background: #ececec;
  padding: 50px 0 25px;
}
#footer .footer_inner01,
#footer .footer_inner02 {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
}
#footer .footer_inner01 {
  background: #f6f6f6;
  padding: 40px 50px 35px;
}
.footer_inner01 .f_menu {
  width: calc(100% - 200px);
}
.footer_inner01 .f_menu ul {
  float: left;
  margin-right: 8%;
}

.footer_inner01 .f_menu ul + ul {
  margin-top: 10px;
}

.footer_inner01 .f_menu ul li {
  margin-bottom: 10px;
}
.footer_inner01 .f_menu ul li.mw190 {
  max-width: 190px;
}
.footer_inner01 .f_menu ul li:last-child {
  margin-bottom: 0;
}
.footer_inner01 .f_menu ul li a {
  font-size: 14px;
  text-decoration: none;
  color: #171717;
}
.footer_inner01 .f_menu ul li a:hover {
  text-decoration: underline;
}
.footer_inner01 .f_logo {
  margin: 0;
}
#footer .footer_inner02 {
  padding-top: 30px;
}
.footer_inner02 ul li {
  display: inline-block;
  background: url(../images/footer_icon01.png) right 2px no-repeat;
  padding-right: 20px;
  margin-right: 35px;
  line-height: 14px;
}
.footer_inner02 ul li a {
  color: #171717;
  font-size: 12px;
}
.footer_inner02 ul li a:hover {
  text-decoration: none;
}
#footer address {
  font-size: 12px;
}
#footer #footer02 {
  position: fixed;
  z-index: 9999;
  top: calc(50% - 300px);
  right: 0;
}
#footer02 ul li {
  background: #ffffff;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -webkit-border-radius: 5px;
  margin-bottom: 6px;
}
#footer02 ul li:last-child {
  margin-bottom: 0;
}
#footer02 ul li a {
  text-decoration: none;
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
  color: #ffffff;
  width: 55px;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  font-size: 14px;
  font-weight: bold;
  line-height: 20px;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-bottom: #327f1c 3px solid;
  box-sizing: border-box;
}
#footer02 ul li a:hover {
  opacity: 0.8;
}
#footer02 ul li#totop a {
  height: 58px;
  margin-bottom: 0;
  background: #108ccf;
  border-bottom: #2b6f7f 3px solid;
}
#footer02 ul .f02_btn01 a {
  background: #68a744;
  position: relative;
  z-index: 1;
}
#footer02 ul .f02_btn01 a span {
  font-family: 'NotoSansCJKjp-Bold';
  position: absolute;
  top: -30px;
  left: 4px;
  width: 45px;
  height: 45px;
  background: #fdef1b;
  font-size: 11px;
  display: block;
  border-radius: 50%;
  color: #333333;
  -webkit-writing-mode: horizontal-tb;
  -moz-writing-mode: horizontal-tb;
  -ms-writing-mode: horizontal-tb;
  writing-mode: horizontal-tb;
  -webkit-text-orientation: mixed;
  -moz-text-orientation: mixed;
  -ms-text-orientation: mixed;
  text-orientation: mixed;
  letter-spacing: 0;
  text-align: center;
  padding: 10px 5px 5px;
  box-sizing: border-box;
  line-height: 12px;
}
#footer02 ul .f02_btn01 a > i {
  font-style: normal;
}
#footer02 ul .f02_btn01 a span i {
  font-size: 9px;
  font-style: normal;
}
#footer02 ul .f02_btn01 a span:after {
  position: inherit;
  z-index: 1;
  bottom: -7px;
  left: calc(50% - 4px);
  content: '';
  display: block;
  width: 0px;
  height: 0px;
  border-left: 5px solid transparent;
  border-right: 4px solid transparent;
  border-top: 8px solid #fdef1b;
}
#footer02 ul .f02_btn02 a {
  background: url(../images/f02_icon01.png) center 13px no-repeat #68a744;
  background-size: 14px auto;
  padding-top: 22px;
}
#footer02 ul .f02_btn03 a {
  border-bottom: #b26910 3px solid;
  background: url(../images/f02_icon02.png) center 15px no-repeat #de8315;
  background-size: 16px auto;
  padding-top: 25px;
}
#footer03 {
  background: #02266b;
  padding: 45px;
  text-align: center;
}
#footer03 img {
  max-height: 48px;
}
div#footer03 a {
  max-width: 150px;
  margin: auto;
  display: block;
}
#footer03 a:hover {
  opacity: 0.8;
}
/*==========================================================================*/
/*                             Contents                                     */
/*==========================================================================*/
/* index
------------------------------------------------------------------------*/
#index #index_cont01,
#index #index_cont02,
#index #index_cont03,
#index #index_cont04,
#index #content {
  font-family: 'NotoSansCJKjp-Regular';
}
#index h3 {
  font-size: 34px;
  font-weight: bold;
  color: #1d2088;
  text-align: center;
}
#index .idx_btn01 {
  margin: 0 auto;
}
#index .idx_btn01 a {
  width: 470px;
  height: 60px;
  box-sizing: border-box;
  text-decoration: none;
  color: #ffffff;
  font-family: 'NotoSansCJKjp-Regular';
  font-size: 22px;
  background: #231d87;
  border-bottom: #151251 3px solid;
  border-radius: 5px;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  margin: 0 auto;
}
#index .idx_btn01 a:hover {
  background: #4d4c9f;
}
#index .idx_btn01 a span {
  color: #bcbcda;
  font-size: 15px;
  display: inline-block;
  padding: 0 20px 0 40px;
  transition: 0.5s all;
  position: relative;
  z-index: 1;
}
#index .idx_btn01 a span:after {
  position: absolute;
  top: calc(50% - 5px);
  right: 0;
  height: 10px;
  width: 8px;
  content: '';
  display: block;
  background: url(../images/idx_arrow01.png) right center no-repeat;
  background-size: 8px auto;
  transition: 0.2s all;
}
#index .idx_btn01 a:hover span:after {
  right: -10px;
}
/*=== 01 ===*/
#index_cont01 {
  background: url(../images/bg_cont01.jpg) repeat;
  padding: 75px 0 70px;
  color: #ffffff;
  text-align: center;
}
#index_cont01 h3 {
  margin-bottom: 15px;
}
#index_cont01 .cont01_p {
  line-height: 1.4em;
  font-size: 17px;
}
#index_cont01 .cont01_inner {
  display: flex;
  display: -webkit-flex;
  justify-content: space-around;
  -webkit-justify-content: space-around;
  margin: 70px 0 10px;
  flex-wrap: wrap;
}
.cont01_inner dl {
  position: relative;
  z-index: 1;
  background: #ffffff;
  color: #171717;
  font-family: 'NotoSansCJKjp-Medium';
  margin-bottom: 80px;
  width: 49%;
}
.cont01_inner dl:nth-child(3),
.cont01_inner dl:nth-child(4) {
  width: 49%;
}
.cont01_inner dl dt {
  font-size: 27px;
  color: #1d2088;
  background: url(../images/idx_baloon.png) center 0 no-repeat;
  width: 280px;
  height: 79px;
  position: absolute;
  z-index: 10;
  left: calc(50% - 140px);
  top: -38px;
  box-sizing: border-box;
  padding-top: 15px;
}
.cont01_inner dl:nth-child(n + 3) dt {
  font-size: 18px;
  padding: 0px 0 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cont01_inner dl dt span {
  position: absolute;
  z-index: 5;
  top: -25px;
  width: 60px;
  height: 60px;
  border-radius: 30px;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  flex-direction: column;
  font-family: 'Roboto', serif;
  font-weight: bold;
  color: #fff;
  font-size: 12px;
  line-height: 1.4em;
  left: -25px;
}
.cont01_inner dl dt span {
  background: #d15848;
}
.cont01_inner dl:nth-child(even) dt span {
}
.cont01_inner dl dt span i {
  font-size: 24px;
  font-style: normal;
  display: block;
  margin-top: 4px;
}
.cont01_inner dl dd {
  padding-bottom: 25px;
}
.cont01_inner dl dd .cont01_img {
  margin-bottom: 23px;
}
.cont01_inner dl dd .cont01_tit {
  color: #108ccf;
  font-size: 16px;
  margin-bottom: 5px;
  margin-top: 25px;
}
.cont01_inner dl:nth-child(3) dd .cont01_tit,
.cont01_inner dl:nth-child(4) dd .cont01_tit {
  margin-top: 50px;
}
.cont01_inner dl dd .cont01_tit > span {
  position: relative;
  z-index: 1;
  padding: 0 20px;
  display: inline-block;
}
.cont01_inner dl dd .cont01_tit > span:after,
.cont01_inner dl dd .cont01_tit > span:before {
  position: absolute;
  z-index: 1;
  content: '';
  display: block;
  width: 2px;
  height: 27px;
  background: #108ccf;
  top: 0;
}
.cont01_inner dl dd .cont01_tit > span:after {
  left: 0;
  transform: rotate(-28deg);
}
.cont01_inner dl dd .cont01_tit > span:before {
  right: 0;
  transform: rotate(28deg);
}
.cont01_inner dl dd .cont01_tit .txt_small,
.supplement {
  transform: translateY(-7px);
  display: inline-block;
}
.cont01_inner dl dd .cont01_txt {
  line-height: 1.5em;
  font-size: 19px;
  margin: 0;
}
.cont01_inner dl dd > .txt_small {
  font-size: 10px;
  margin: 15px 0 0;
}
.cont01_inner dl dd img {
  max-width: 100%;
}
/*=== 02 ===*/
#index_cont02 {
  padding: 80px 0;
}
#index_cont02 h3 {
  color: #108ccf;
  margin-bottom: 40px;
}
#index_cont02 .cont02_inner {
  display: flex;
  display: -webkit-flex;
}
.cont02_inner dl {
  width: calc(100% / 5);
  box-sizing: border-box;
  padding: 50px 10px 20px;
}
.cont02_inner dl:hover {
  opacity: 0.5;
}
.cont02_inner .cont02_dl01 {
  background: #4ec7b8;
}
.cont02_inner .cont02_dl02 {
  background: #e4be28;
}
.cont02_inner .cont02_dl03 {
  background: #d35748;
}
.cont02_inner .cont02_dl04 {
  background: #338cce;
}
.cont02_inner .cont02_dl05 {
  background: #de8314;
}
.cont02_inner dl dt {
  color: #ffffff;
  font-size: 17px;
  text-align: center;
  font-family: 'NotoSansCJKjp-Medium';
  margin-bottom: 20px;
}
.cont02_inner dl dd img {
  max-width: 100%;
}
.cont02_inner a {
  text-decoration: none;
}
/*=== 03 ===*/
#index_cont03 .cont03_title {
  background: url(../images/bg_cont01.jpg) repeat;
  margin-bottom: 90px;
  position: relative;
  z-index: 1;
}
#index_cont03 .cont03_title:before {
  position: absolute;
  z-index: 1;
  bottom: -22px;
  left: calc(50% - 12px);
  content: '';
  display: block;
  background: url(../images/bg_cont03.png) no-repeat;
  width: 27px;
  height: 22px;
}
#index_cont03 .cont03_title dl {
  height: 143px;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  font-family: 'NotoSansCJKjp-Bold';
  color: #ffffff;
}
#index_cont03 .cont03_title dl dt {
  font-size: 28px;
}
#index_cont03 .cont03_title dl dt span {
  font-size: 22px;
}
#index_cont03 .cont03_title dl dd {
  display: flex;
  display: -webkit-flex;
  align-items: center;
  font-size: 22px;
}
#index_cont03 .cont03_title dl dd img {
  display: inline-block;
  margin: 0 15px 0 15px;
}
#index_cont03 h3 {
  text-align: center;
  font-size: 40px;
  line-height: 1.3em;
  margin-bottom: 35px;
}
#index_cont03 h3.center {
  text-align: center;
}
#index_cont03 .cont03_inner01 h3 {
  color: #4ec7b8;
}
#index_cont03 .cont03_inner01 h3 span {
  color: #e57a2f;
  font-size: 40px;
}
#index_cont03 .cont03_inner02 h3 {
  color: #e6c027;
}
#index_cont03 .cont03_inner03 h3 {
  color: #3db0ed;
}
#index_cont03 .cont03_inner04 h3 {
  color: #e57a2f;
}
#index_cont03 .cont03_inner05 h3 {
  color: #d35748;
}
#index_cont03 .idx_btn01 a {
  width: 100%;
  margin: 0;
}
#index_cont03 .cont03_box {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
}
.cont03_box .cont03_img {
  margin-left: 100px;
}
#index_cont03 .cont03_line {
  padding-bottom: 80px;
  margin-bottom: 80px;
  border-bottom: #6eb4df 1px solid;
}
#index_cont03 .cont03_line:last-child {
  margin-bottom: 0;
  border: none;
}
#index_cont03 .c03_txt01 {
  line-height: 2.2em;
  margin-bottom: 38px;
}
#index_cont03 .c03_txt01 span {
  color: #da594b;
  font-weight: bold;
}
#index_cont03 .c03_txt02 {
  line-height: 2em;
  margin-bottom: 35px;
}
#index_cont03 .c03_txt02 li {
  line-height: 2em;
  background: url('../images/check.png') no-repeat 0 8px;
  background-size: 20px;
  padding-left: 22px;
}
#index_cont03 .cont03_frame01 {
  border: #da594b 2px dashed;
  padding: 40px 35px 30px;
  position: relative;
  z-index: 1;
  margin-bottom: 40px;
  min-width: 594px;
  box-sizing: border-box;
}
#index_cont03 .cont03_frame01 p {
  margin-bottom: 20px;
}
#index_cont03 .c03_title01 {
  position: absolute;
  top: -17px;
  left: -2px;
}
#index_cont03 .c03_title01 span {
  display: inline-block;
  padding: 5px 24px 0 38px;
  color: #ffffff;
  position: relative;
  z-index: 1;
  min-height: 30px;
  box-sizing: border-box;
  background: #34c6b7;
}
#index_cont03 .c03_title01 span:after,
#index_cont03 .c03_title01 span:before {
  background: #34c6b7;
  position: absolute;
  z-index: -1;
  right: -10px;
  content: '';
  display: block;
  width: 100%;
  height: 50%;
}
#index_cont03 .c03_title01 span:after {
  top: 0;
  transform: skew(-30deg, 0deg);
  -moz-transform: skew(-30deg, 0deg);
  -webkit-transform: skew(-30deg, 0deg);
  -o-transform: skew(-30deg, 0deg);
  -ms-transform: skew(-30deg, 0deg);
}
#index_cont03 .c03_title01 span:before {
  bottom: 0;
  transform: skew(30deg, 0deg);
  -moz-transform: skew(30deg, 0deg);
  -webkit-transform: skew(30deg, 0deg);
  -o-transform: skew(30deg, 0deg);
  -ms-transform: skew(30deg, 0deg);
}
#index_cont03 h4,
.recommend {
  font-size: 18px;
  font-weight: bold;
  color: #c71d26 !important;
  margin-bottom: 10px;
}
.recommend02 {
  color: #000;
}
#index_cont03 .txt_bold {
  font-weight: bold;
}
.txt_small,
.supplement {
  font-size: 12px;
  font-size: 75%;
}
#index_cont03 .txt_small {
  color: #808080;
}
#index_cont03 .cont03_frame01 p.mb0 {
  margin-bottom: 0;
}
/*=== 04 ===*/
#index_cont04 {
  position: relative;
  background: url(../images/bg_cont04.jpg) center center no-repeat;
  background-size: cover;
  background-attachment: fixed;
  padding: 80px 0;
  z-index: -1;
}
#index_cont04::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.5);
  z-index: -1;
}
#index_cont04 h3 {
  margin-bottom: 50px;
}
#index_cont04 .cont04_tit {
  text-align: center;
  font-size: 178%;
}
#index_cont04 .cont04_inner {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  margin-bottom: 35px;
  background: url(../images/cont04_inner_bg.png) top left no-repeat;
  padding-top: 28px;
}
.cont04_inner dl {
  width: calc((100% - 100px) / 6);
}
.cont04_inner dl dt {
  position: relative;
  z-index: 1;
  display: flex;
  display: -webkit-flex;
  align-items: center;
  flex-direction: column;
  text-align: center;
  height: 164px;
  width: 100%;
  color: #ffffff;
  font-family: 'NotoSansCJKjp-Bold';
  font-size: 18px;
  margin-bottom: 30px;
}
.cont04_inner dl dt p {
  display: table-cell;
  vertical-align: middle;
  font-size: 16px;
  float: left;
  margin: 0;
  overflow: hidden;
}
.cont04_inner dl dt p.text01 {
  position: absolute;
  top: 42px;
  left: 10px;
}
.cont04_inner dl dt p.text02 {
  position: absolute;
  top: 52px;
  left: 76px;
}
.cont04_inner dl:last-child dt {
  height: 150px;
  width: 150px;
  justify-content: center;
  -webkit-justify-content: center;
  margin-top: 12px;
}
.cont04_inner dl dt:after {
  position: absolute;
  z-index: -1;
  height: 100%;
  width: 100%;
  left: calc(50% - 82px);
  top: -3px;
  content: '';
  display: block;
  background: #108ccf;
  border-radius: 50%;
}
.cont04_inner dl dt:before {
  position: absolute;
  z-index: 1;
  content: '';
  display: block;
  right: -15px;
  top: calc(50% - 8px);
  width: 0px;
  height: 0px;
  border-bottom: 7px solid transparent;
  border-top: 8px solid transparent;
  border-left: 10px solid #68a744;
}
.cont04_inner dl:last-child dt:after {
  left: calc(50% - 75px);
}
.cont04_inner dl:last-child dt:before {
  display: none;
}
.cont04_inner dl dt span {
  font-family: 'Roboto', serif;
  font-size: 15px;
  background: url(../images/idx_bg_step.png) center 0 no-repeat;
  width: 85px;
  height: 35px;
  color: #1d2088;
  font-weight: bold;
  display: block;
  padding-top: 5px;
  box-sizing: border-box;
  margin-bottom: 13px;
}
.cont04_inner dl dt img {
  margin-top: 10px;
}
.cont04_inner dl dd {
  font-size: 14px;
}
/*=== content ===*/
#index #content {
  padding: 70px 0 78px;
}
#index #content h3 {
  color: #108ccf !important;
  margin-bottom: 30px;
}
#index #content h4 {
  color: #ffffff;
  font-family: 'NotoSansCJKjp-Medium';
  font-size: 31px;
  text-align: center;
  margin-bottom: 30px;
}
#index #content h4 span {
  position: relative;
  z-index: 1;
  padding: 0 20px;
  display: inline-block;
}
#index #content h4 span:after,
#index #content h4 span:before {
  position: absolute;
  z-index: 1;
  content: '';
  display: block;
  width: 2px;
  height: 35px;
  background: #ffffff;
  top: 0;
}
#index #content h4 span:after {
  left: 0;
  transform: rotate(-28deg);
}
#index #content h4 span:before {
  right: 0;
  transform: rotate(28deg);
}
#index #content h5 {
  font-family: 'NotoSansCJKjp-Medium';
  margin-bottom: 20px;
  color: #eac01f;
  font-size: 33px;
  text-align: center;
}
#index #content h5 span {
  display: inline-block;
  font-family: 'NotoSansCJKjp-Regular';
}
#index #content h5 .yellow {
  font-size: 21px;
  margin: 0 6px;
}
#index #content h5 .white {
  font-size: 22px;
  color: #ffffff;
}
#index #content h5 .white i {
  font-style: normal;
  font-size: 17px;
}
#index #content .center {
  font-size: 17px;
  margin-bottom: 30px;
}
#index #content .content_inner {
  display: flex;
  display: -webkit-flex;
}
#index #content .image_l {
  margin: 0;
}
#index #content .cont_r {
  background: url(../images/idx_bg_content.png) center center no-repeat #108ccf;
  background-size: contain;
  padding: 30px 40px 45px;
  color: #ffffff;
}
#index #content .idx_cont_txt01 {
  font-family: 'NotoSansCJKjp-Regular';
  line-height: 1.7em;
  letter-spacing: -0.5px;
}
/*=== notice ===*/
#notice {
  padding: 80px 0;
  background: #e8f3fa;
}
#notice .inner {
  width: 980px;
}
#notice .tit_notice {
  font-size: 24px;
  color: #171717;
  font-family: 'NotoSansCJKjp-Medium';
  background: url(../images/notice_icon01.png) left 0 no-repeat;
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
  margin-bottom: 0;
  padding-left: 40px;
  padding-bottom: 25px;
  border-bottom: #b0b0b0 1px solid;
}
#notice .tit_notice a {
  font-size: 14px;
  text-decoration: none;
  color: #171717;
  display: inline-block;
  background: url(../images/notice_icon02.png) left 0 no-repeat;
  background-size: 18px auto;
  padding-left: 30px;
  line-height: 20px;
}
#notice .tit_notice a:hover {
  text-decoration: underline;
}
.notice_box dl {
  display: flex;
  display: -webkit-flex;
  padding: 19px 20px;
  box-sizing: border-box;
  border-bottom: #b0b0b0 1px solid;
}
.notice_box dt {
  width: 130px;
  font-size: 14px;
  line-height: 2em;
}
.notice_box dd {
  width: calc(100% - 130px);
}
.notice_box dd a {
  text-decoration: none;
  font-size: 14px;
  color: #161616;
  line-height: 2em;
}
.notice_box dd a:hover {
  text-decoration: underline;
}
.recommend_b {
  color: #108ccf !important;
  margin-bottom: 30px;
  font-weight: bold;
}
.about_list {
  background: url(../images/bg-about.jpg) no-repeat center top;
  background-size: cover;
  padding: 77px 28px 55px 21px;
}
.about_list li {
  display: flex;
  align-items: center;
}
.about_list li:not(:first-child) {
  margin-top: 33px;
}
.about_list li:last-child {
  align-items: flex-start;
}
.about_list li .number {
  margin-right: 17px;
}
.about_list li .text {
  font-size: 30px;
  font-weight: bold;
  color: #1d2088;
  line-height: 1.6;
}
.about_list li .text span {
  display: block;
  color: #323131;
  font-size: 19px;
  font-weight: normal;
}
.about_list li .price {
  margin: -36px 0 0 57px;
}
.under table.price_table tr th {
  /* border-bottom: #ffffff 1px solid; */
}
.under table.price_table tr td {
  text-align: right;
}
.under table.price_table tr th:first-of-type {
  /* border-right: none; */
}
/*
.under table.price_table tr td:first-of-type {
	border-right: none;
}
*/
.under table.price_table {
  margin-bottom: 8px;
}
.about_note {
  text-align: right;
  margin-top: -50px;
}
.under .frame01.frame01_about_1 {
  padding: 16px 20px 19px 20px;
  margin-bottom: 28px;
}
.under .frame01.frame01_about_1 p:first-child {
  margin-bottom: 27px;
}
.font_b {
  font-weight: bold;
}
.font_b02 {
  font-weight: bold;
  font-size: 140%;
  color: #201e89;
}
.size11 {
  font-size: 11px;
}
.size12 {
  font-size: 14px;
  border-bottom: none !important;
}
.course dt span.size12 {
  font-size: 14px;
  display: contents;
  text-decoration: none;
}
.bold_none {
  font-weight: normal !important;
}
/*--* fix IE *--*/
@media screen\0 {
  #index_cont04 {
    background-attachment: inherit;
  }
  #footer02 ul li a {
    -ms-writing-mode: tb-rl;
    letter-spacing: 0;
  }
  #footer02 ul .f02_btn01 a i {
    -ms-writing-mode: lr-tb;
    word-break: break-all;
    width: 15px;
    text-align: center;
    line-height: 16px;
  }
  #footer02 ul .f02_btn01 a span {
    -ms-writing-mode: lr-tb;
    left: 6px;
  }
}
/*--* fix chrome *--*/
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  #footer02 ul li a {
    /*letter-spacing:-6px;*/
  }
  #footer02 ul .f02_btn01 a span {
    left: 15px;
  }
}
/*--* fix Egde *--*/
@supports (-ms-ime-align: auto) {
  #footer02 ul li a {
    letter-spacing: 0;
  }
  #footer02 ul .f02_btn01 a i {
    writing-mode: lr-tb;
    word-wrap: break-word;
    width: 15px;
    text-align: center;
    line-height: 16px;
  }
  #footer02 ul .f02_btn01 a span {
    left: 6px;
  }
}
/* --------------------------------------
学校推薦型選抜及び総合型選抜対策講座 追記 */
/*ボタン*/
#index .idx_btn_ao a {
  /* width: 595px; */
}
/*文字サイズ*/
h4.font-size-ajast {
  font-size: 26px;
}
.font-style-bold {
  font-weight: bold;
  font-weight: 700;
}
.table-inner-fontsize {
  font-size: 200%;
}
@media screen and (max-width: 640px) {
  #index .idx_btn_ao a,
  .idx_btn01.long_text a {
    width: 100% !important;
    height: auto !important;
    padding: 15px 10px !important;
    text-align: center;
    display: block !important;
  }
  #index .idx_btn_ao a span,
  .idx_btn01.long_text span {
    margin-top: 8px;
    text-align: right;
    display: block;
  }
  h4.font-size-ajast {
    font-size: 22px;
  }
  .table-inner-fontsize {
    font-size: 150%;
  }
}
/* --------------------------------------
大学受験Dialo onlineとは 追記 */
.about-left-fontsize {
  font-size: 18px;
  margin-bottom: 10px;
}
.header_bn {
  width: 90%;
  margin: 20px auto 0;
  border-bottom: #c34736 3px solid;
  background: #d15848;
  text-align: center;
  border-radius: 4px;
  font-family: NotoSansCJKjp-Regular;
}
.header_bn a {
  color: #fff;
  text-decoration: none;
  font-weight: bold;
  width: 100%;
  display: block;
  padding: 10px;
  font-size: 20px;
  box-sizing: border-box;
}
.header_bn:hover {
  background: #ef7565;
}
.header_bn .brk {
  display: none;
}
.box_fr {
  border: 1px solid #00b0f0;
  margin-bottom: 40px;
}
.box_fr .box_fr_inner {
  padding: 20px 40px 10px;
  box-sizing: border-box;
}
.box_fr .box_tit {
  background: #00b0f0;
  color: #fff;
  padding: 10px;
  font-weight: bold;
  font-size: 21px;
  text-align: center;
  margin: 0;
}
.red {
  color: #f00;
}
.box_fr .sm_tit {
  color: #00b0f0;
  font-weight: bold;
  text-align: center;
  padding: 10px 0;
  font-size: 18px;
}
.blue_txt {
  color: #00b0f0;
}
.pink_txt {
  /*color: #FF508A!important;*/
  color: #00b0f0 !important;
}
.box_fr .img_r {
  float: right;
  padding: 50px 0 10px 15px;
}
.box_fr .img_r img {
  padding: 2px;
  border: 1px solid #cfcfcf;
}
.under #content .box_fr .amata_btn {
  text-align: center;
  margin: 20px auto 40px;
}
.box_fr .amata_btn a {
  display: inline-block;
  padding: 10px 40px 10px 30px;
  border-radius: 4px;
  background: #00b0f0;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  color: #fff;
  position: relative;
}
.box_fr .amata_btn a:after {
  position: absolute;
  content: '';
  border: solid #fff;
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 3px;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  top: calc(50% - 4px);
  right: 10px;
}
.box_fr .amata_btn a:hover {
  background: #35bff1;
}
@media screen and (min-width: 641px) {
  .flex {
    display: flex;
    justify-content: space-between;
    /* margin-bottom: 10px; */
  }
  .flex_inner {
    width: 49%;
    display: flex;
    flex-wrap: wrap;
  }
  ul.main_menu01 li ul {
    display: none;
    position: absolute;
    z-index: 99;
    background: white;
  }
  ul.main_menu01 li:hover ul {
    display: block;
  }
  ul.main_menu01 ul a {
    color: #26227f !important;
    border: 1px solid #26227f;
    border-top: none;
  }
  ul.main_menu01 ul a:hover {
    opacity: 0.7;
  }
  .colum4 > * {
    width: 24%;
  }
}
.course {
  /*border: 1px solid #fc4a89; */
  /* border: 1px solid #151251; */
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 10px;
  font-family: 'NotoSansCJKjp-Regular';
}
.course dt {
  font-size: 220%;
  font-weight: 700;
  /*background: #fc4a89;*/
  background: #231d87;
  padding: 0px 5px 8px 5px;
  color: #fff;
}
.course dd {
  padding: 10px;
  line-height: 2em;
}
.course dt span:first-child {
  /* display: block;*/
  font-size: 70%;
  /*color: red;*/
  color: #108bcf;
  background: #fff;
  padding: 3px 7px;
  margin-right: 10px;
  font-weight: bold;
}
.course .txt_small01,
.txt_small01 {
  font-size: 75%;
}
.cont04_inner dl dd span.txt_small01 {
  color: #161616;
}
.course .txt_small02 {
  font-size: 80%;
}
.tit01 {
  font-size: 28px;
  font-weight: bold;
  border-bottom: 1px solid #333;
  color: #161616;
}
.main_course * {
  /*background: #d35748;*/
  /*border-color: #d35748;*/
}
.main_course {
  width: 65%;
}
.option {
  width: calc(35% - 10px);
}
/*.option>* {
    display: flex;
    align-items: center;
}*/
.option .course {
  /*border: 1px solid #00b0f0;*/
  /* border: 1px solid #151251; */
}
.option .course dt {
  /* background: #108bcf; */
  /* background: #231D87; */
}
.option .course dt span:first-child {
  white-space: nowrap;
  color: #00b0f0;
}
.specialized_course .course {
  border: 1px solid #e1e1e1;
}
.specialized_course .course dt {
  background: #e1e1e1;
  color: #000;
}
.specialized_course .course dt span:first-child {
  white-space: nowrap;
  color: #7f7f7f;
}
/*.specialized_course {
    background: #e9f3fa;
    border: none;
}*/
.under h2 .txt_small {
  font-size: 60%;
  line-height: initial;
  display: block;
}
.txt_underline {
  text-decoration: underline;
}
.result {
  text-align: center;
  font-size: 250%;
  color: #fff;
  margin: 85px auto 50px;
  letter-spacing: 5px;
  font-weight: 700;
  line-height: 1;
  border: 1px solid #000;
  padding: 25px 35px;
  display: table;
  background-color: #1d2088;
}
.arrow {
  position: relative;
}
.arrow:after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  border: 20px solid transparent;
  border-top-color: #000000;
  top: -40px;
  left: 0;
  right: 0;
  margin: auto;
}
.arrow2 {
  position: relative;
}
.arrow2::before,
.arrow2::after {
  content: '';
  position: absolute;
}
.arrow2::before {
  left: calc(50% - 18px);
  top: -35px;
  box-sizing: border-box;
  width: 18px;
  height: 18px;
  border: 18px solid transparent;
  border-left: 18px solid #338cce;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
.arrow2::after {
  left: calc(50% - 6px);
  top: -65px;
  width: 10px;
  height: 32px;
  border-left: 12px solid #338cce;
}
.txt_large {
  font-size: 130%;
  font-weight: 700;
}
.colum4 > * {
  background: #e9f3fa;
  padding: 20px 10px;
  box-sizing: border-box;
  margin-bottom: 15px;
}
.image_r_s {
  float: right;
  width: 30%;
  margin-left: 10px;
}
/* contact
------------------------------------------------------------------------*/
.contact_youtube .youtube {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
}
.contact_youtube .youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.contact_youtube p.title {
  color: #333;
  font-weight: bold;
  background: #e9f3fa;
  padding: 1rem;
}
.contact_youtube p.memo {
  font-size: 12px;
}
.font_red {
  color: red;
  border: 1px solid red;
  padding: 20px;
}
.font_red span {
  font-weight: 600;
}
.box_ai p.ai_tit {
  background: #108ccf;
  padding: 15px;
  color: #fff;
  font-weight: bold;
  text-align: center;
  font-size: 24px;
  margin-bottom: 0;
}
.box_ai {
  border: 1px solid #108ccf;
  margin-bottom: 30px;
}
.ai_blue {
  color: #108ccf;
  font-weight: bold;
  text-align: center;
  font-size: 16px;
}
.ai_bold {
  font-weight: bold;
  color: #000;
}
.ai_pink {
  color: #ff6699;
}
.under .btn_ai_blue a {
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  height: 50px;
  font-weight: bold;
  color: #ffffff;
  background: #52a3d8;
  box-sizing: border-box;
  transition: 0.5s all;
  padding: 5px 30px 5px 5px;
  text-decoration: none;
  border: #52a3d8 1px solid;
  border-radius: 5px;
  position: relative;
  z-index: 1;
  line-height: 1.4em;
  text-align: center;
  max-width: 350px;
  margin: 0 auto;
}
.btn_ai_blue a:after {
  position: absolute;
  top: calc(50% - 5px);
  right: 20px;
  content: '';
  border-left: 6px #fff solid;
  border-top: 6px transparent solid;
  border-bottom: 6px transparent solid;
  display: block;
  font-size: 16px;
  transition: 0.5s all;
}
.btn_ai_blue a:hover {
  background: #ffffff;
  color: #52a3d8;
}
.btn_ai_blue a:hover:after {
  border-left: 6px #52a3d8 solid;
}
.box_section {
  padding: 25px;
}
.fix_line_ul {
  margin-bottom: 30px;
}
.fix_line_ul li {
  position: relative;
  padding-left: 20px;
}
.fix_line_ul li:first-child:before {
  content: '①';
  position: absolute;
  left: 0;
  top: 0;
}
.fix_line_ul li:nth-child(2):before {
  content: '②';
  position: absolute;
  left: 0;
  top: 0;
}
.fix_line_ul li:nth-child(3):before {
  content: '③';
  position: absolute;
  left: 0;
  top: 0;
}
.fix_line_ul li:nth-child(4):before {
  content: '④';
  position: absolute;
  left: 0;
  top: 0;
}
.fix_line_ul li:nth-child(5):before {
  content: '⑤';
  position: absolute;
  left: 0;
  top: 0;
}
.list_01 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 350px;
  margin: 0 auto;
}
.list_01 li {
  border: 1px solid #fff;
  padding: 5px;
  margin-bottom: 5px;
  width: 20%;
}
.list_01 li:last-child {
  width: 100%;
}
.btn01 {
  margin: 0 auto;
}
.under .btn01 a {
  width: 600px;
  height: 60px;
  box-sizing: border-box;
  text-decoration: none;
  color: #ffffff;
  font-family: 'NotoSansCJKjp-Regular';
  font-size: 22px;
  background: #231d87;
  border-bottom: #151251 3px solid;
  border-radius: 5px;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  margin: 0 auto;
}
.under .btn01 a:hover {
  background: #4d4c9f;
}
.btn01 a span {
  color: #bcbcda;
  font-size: 15px;
  display: inline-block;
  padding: 0 20px 0 40px;
  transition: 0.5s all;
  position: relative;
  z-index: 1;
}
.btn01 a span:after {
  position: absolute;
  top: calc(50% - 5px);
  right: 0;
  height: 10px;
  width: 8px;
  content: '';
  display: block;
  background: url(../images/idx_arrow01.png) right center no-repeat;
  background-size: 8px auto;
  transition: 0.2s all;
}
.btn01 a:hover span:after {
  right: -10px;
}
.fz18 {
  font-size: 18px;
}
.fz22 {
  font-size: 22px;
}
@media screen and (max-width: 640px) {
  .box_ai p.ai_tit {
    font-size: 18px;
  }
  .list_01 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 auto;
    max-width: 350px;
  }
}
/*news*/
.custom-ao {
  color: #db6156 !important;
}
#r_en1594878065 th,
#r_en1594878069 th,
#r_en1594878071 th,
#r_en1594878072 th {
  background: #52a3d9 !important;
  border: #fff 1px solid !important;
  color: #fff;
}
#r_en1594878065 td,
#r_en1594878069 td,
#r_en1594878071 td,
#r_en1594878072 td {
  border: #52a3d9 1px solid !important;
}
#r_en1650337134 th,
#r_en1650339001 th,
#r_en1650339074 th,
#r_en1650339123 th {
  background: #92d050 !important;
  border: #fff 1px solid !important;
  color: #fff;
}
#r_en1650337134 td,
#r_en1650339001 td,
#r_en1650339074 td,
#r_en1650339123 td {
  border: #92d050 1px solid !important;
}
.emphasis {
  border: 7px solid #108bcf;
}
.emphasis2 {
  /* border: 5px solid #108bcf; */
  border: 5px solid #231d87;
  box-sizing: border-box;
}
.emphasis2 dt {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding-left: 0;
  padding-bottom: 4px;
  background-color: #108bcf;
}
.emphasis2 .course {
  border: none;
}
.emphasis3 {
  border: 5px solid #108bcf;
  box-sizing: border-box;
}
.emphasis3 dt {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding-left: 0;
  padding-bottom: 4px;
  background-color: #108bcf;
}
.emphasis4 {
  border: 5px solid #68a744;
  box-sizing: border-box;
}
.emphasis4 dt {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding-left: 0;
  padding-bottom: 4px;
  background-color: #68a744;
}
.tbl_row.tbl_row1 .emphasis3_color3 {
  background: #108bcf;
  color: #fff;
  padding: 10px 10px 10px;
  /* font-weight: bold; */
}
.section .graduates .emphasis3_color3 {
  font-weight: bold;
  font-size: 16px;
}
.tbl_row.tbl_row1 .color-txt {
  color: #fff;
}
.br_text {
  border: #108bcf 1px solid !important;
}
.blue_text {
  color: #108bcf !important;
}
.green_text {
  color: #68a744 !important;
}
.bold {
  font-weight: bold;
}
.box_slide a {
  transition: all 0.3s;
}
.box_slide a:hover {
  opacity: 0.9;
}
#index #content .idx_btn01.w640 a {
  width: 640px;
  margin: 0 auto;
}
.button.dialogue {
  width: 100%;
  margin: 0 auto 30px;
}
.button.about {
  width: 100%;
  margin: 0 auto 60px;
}
.button {
  width: 100%;
  margin: -30px auto 30px;
}
.button a {
  box-sizing: border-box;
  width: 100%;
  padding: 12px 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none !important;
  flex-direction: column;
  border: 2px solid #fdef1c;
  color: #fdef1c !important;
  background: #108bcf;
  transition: ease 0.3s all;
}
.button a span {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.6;
}
.button a:hover {
  opacity: 0.85;
}
.font_12 {
  font-size: 12px;
}
.graduates table {
  border: 5px solid #108bcf;
  margin-bottom: 20px;
}
.graduates table td {
  border: none !important;
  padding: 10px !important;
}
.graduates table th.emphasis3_color3 {
  border: none !important;
}
.graduates table td p {
  /* width: 110px; */
  width: 44%;
  color: #108bcf;
  padding: 2px;
  font-size: 14px;
  text-align: center;
  margin-bottom: 0;
  border: 1px solid #108bcf;
}
.graduates table td p:first-child {
  margin-right: 11px;
}
/*.graduates table td p:nth-child(3) {
    width: 100% !important;
}*/
.graduates table .flex {
  flex-wrap: wrap;
  justify-content: flex-start;
}
.graduates table td span {
  margin-bottom: 10px;
  display: block;
}
.graduates table td span.txt_small01 {
  display: initial;
  font-size: 75%;
}
.tit01.blue_text span.ttl_sm {
  font-size: 70%;
  color: #fff;
  background: #108bcf;
  margin-right: 10px;
  margin-top: 15px;
  width: 70px;
  line-height: 1.5;
  padding: 3px;
  display: block;
  text-align: center;
  margin-bottom: 10px;
}
.graduates02.graduates table {
  border: 5px solid #e1e1e1;
  margin-bottom: 20px;
}
.graduates02.graduates .emphasis3_color3 {
  background: #e1e1e1;
  color: #000;
  border: none;
}
.graduates02.graduates .emphasis3_color3 span {
  font-size: 18px;
}
span.ttl_sm01 {
  font-size: 70%;
  color: #000;
  background: #e1e1e1;
  margin-right: 10px;
  margin-left: 0px;
  width: 70px;
  line-height: 1.5;
  padding: 3px;
  display: block;
  text-align: center;
  margin-bottom: 10px;
}
.graduates02.graduates table td p {
  border: 1px solid #000;
  color: #000;
  width: calc(50% - 12px);
}
span.ttl_sm02 {
  font-size: 70%;
  color: #fff;
  background: #68a744;
  margin-right: 10px;
  margin-top: 15px;
  width: 70px;
  line-height: 1.5;
  padding: 3px;
  display: block;
  text-align: center;
  margin-bottom: 10px;
}
.graduates.graduates03 table {
  border: 5px solid #68a744;
}
.graduates.graduates03 .emphasis3_color3 {
  background: #68a744;
  color: #fff;
}
.graduates.graduates03 table td p {
  border: 1px solid #68a744;
  color: #68a744;
}
.graduates.graduates03 table td p .fz_sp {
  width: 100%;
}
.graduates02.graduates .emphasis3_color3 span.fz15 {
  font-size: 15px;
}
.txt_small_span {
  font-size: 75%;
  display: initial;
}
.txt_color_f {
  color: #fff !important;
}
.tbl_row.tbl_row1 .txt_emphasis3_color3_span {
  line-height: 1.45;
  padding: 14px 7px;
}
.txt01 {
  text-align: center;
  font-weight: bold;
  color: #303190;
  margin-bottom: 10px;
}
.under .btn_special_blue a {
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  height: 50px;
  font-weight: bold;
  color: #ffffff;
  background: #303190;
  box-sizing: border-box;
  transition: 0.5s all;
  padding: 5px 30px 5px 5px;
  text-decoration: none;
  border: #303190 1px solid;
  border-radius: 5px;
  position: relative;
  z-index: 1;
  line-height: 1.4em;
  text-align: center;
  max-width: 350px;
  margin: 0 auto;
}
.btn_special_blue a:after {
  position: absolute;
  top: calc(50% - 12px);
  right: 20px;
  content: '';
  background: url('../images/icon_03.png') right center no-repeat;
  width: 28px;
  height: 25px;
  display: block;
  font-size: 16px;
  transition: 0.5s all;
}
.box_bd {
  border: 1px solid #333;
  padding: 10px;
  box-sizing: border-box;
}
.blue_text01 {
  color: #1d2088;
}
.box_txt {
  font-weight: bold;
  font-size: 120%;
  color: #1d2088;
}
.box_txt a {
  color: #d35748;
}
.box_txt a:hover {
  text-decoration: none;
}
.under table.mailform {
  margin-bottom: 25px;
}
.fmail_must {
  color: #ee115a !important;
}
.box-campain {
  margin-bottom: 30px !important;
}
.box-campain a:hover {
  opacity: 0.8;
}
.center_all {
  text-align: center;
}
.center_all span {
  margin: 0 auto 10px !important;
}
@media screen and (min-width: 641px) {
  .fix_mr55 {
    margin-right: 55px !important;
  }
}
.pc_none {
  display: none;
}
.sp_none {
  display: block;
}
.pc30 {
  margin-bottom: 30px;
}
.txt_small01 {
  margin-left: 30px;
}
.ml0 {
  margin-left: 0 !important;
}
.ml10 {
  margin-left: 30px !important;
}
.sp_pad {
  margin-bottom: 30px;
}
@media screen and (max-width: 640px) {
  .pc_none {
    display: block !important;
  }
  .sp_none {
    display: none !important;
  }
  .pc30 {
    margin-bottom: 0;
  }
  .sp_pad {
    padding: 0 3%;
  }
}
.tooltip {
  font-size: 14px;
}

.under .box-campain-wrap a {
  text-decoration: none;
  font-size: 16px;
  font-weight: 700;
  height: 100px;
  color: #ffff00;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-align: center;
  background: #1690cf;
  border: 2px solid #ffff00;
  line-height: 1.8em;
}

.under .box-campain-wrap a span.unline {
  font-size: 20px;
  text-decoration: none !important;
}
.under .box-campain-wrap a span.c-withe {
  color: #fff;
}
.box-campain.box-campain-mb {
  margin-bottom: 0 !important;
}

.p-2025-info {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 90%;
  max-width: 680px;
  margin: 2em auto;
  padding: 2em 1em;
  border: solid 2px #1d2088;
}

.p-2025-info h4 {
  margin-bottom: 0.7em;
  text-align: left;
  line-height: 1.4;
}

.p-2025-info h4 a {
  color: #1d2088;
  font-size: 1.2rem;
  font-weight: bold;
  text-align: left;
  transition: opacity 0.2s ease;
}

.p-2025-info h4 a:hover {
  opacity: 0.8;
}

.p-2025-info p {
  margin: 0;
  text-align: left;
}

.footer_inner01 .f_logo {
  padding-top: 116px;
}

.footer_inner01 .f_logo p a {
  display: block;
}

.under .footer_inner01 li {
  line-height: 1.4em;
}

.u-other-brand .u-other-brand__h {
  color: #171717;
  font-size: 0.96rem;
  font-weight: bold;
  margin-bottom: 0.7rem;
  padding: 0;
}

.u-other-brand .u-other-brand__h::after {
  display: none;
}

.u-other-brand .u-other-brand__list {
  padding-left: 1rem;
  color: #171717;
}

.u-other-brand .u-other-brand__list li + li {
  margin-top: 0.26rem;
}

.u-other-brand .u-other-brand__list li {
  list-style: disc;
}

.u-other-brand .u-other-brand__list a {
  position: relative;
  top: -1px;
  color: #171717;
  font-size: 14px;
  text-decoration: none;
}

/* 緊急のお知らせ */
.c-headNews {
  width: 100%;
  background-color: #ff0000;
}
.c-headNews__inner {
  max-width: 1080px;
  margin: 0 auto;
}
.c-headNews__inner p {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  width: 100%;
  min-height: 36px;
  margin: 0 auto;
  padding: 0 0.5rem;
  box-sizing: border-box;
}
@media (max-width: 1020px) {
  .c-headNews__inner p {
    padding: 0.5rem;
  }
}
.c-headNews__inner p a {
  width: fit-content;
  margin: 0 auto;
  color: #fff;
}
