@charset "UTF-8";
/* Simple fluid media
   Note: Fluid media requires that you remove the media's height and width attributes from the HTML
   http://www.alistapart.com/articles/fluid-images/ 
*/
@font-face {
  font-family: 'latemin';
  src: url('/font/GenEiLateMin.woff') format('woff');
}

/*----- 共通 -----*/

html {scroll-behavior: smooth; scroll-padding-top: 158px;/*ヘッダー固定でのアンカーリンクずれ対策*/}
img{max-width:100%;}
p,dd{line-height: 2rem;}
.latemin{font-family: latemin}
a {text-decoration: none; color: #000;}

button{
	border:none;
	padding:0.5rem 0 0;
}
button, [type="button"], [type="reset"], [type="submit"] {
    -webkit-appearance: button;
    background: #ef18b2;
    border: none;
	color: #FFF;
}

ul.list_01 {
	padding: 0 0 0 0;
}
ul.sub {
	padding: 0 0 0 0;
}
ul.sub li {
	list-style: none;
	padding: 0 0 0 1.3rem;
	text-indent: -1.3rem;
}

section.contents_box {
	margin-bottom: 5em;
}

section.contents_box .practice_lead h3 {
	font-weight: 600;
	border-bottom:2px dotted #397C99;
	padding-bottom: 0.5rem;
	margin-bottom: 1rem;
}

.contents_colum {
	margin-bottom: 5em;
	border: 2px solid #2E3192;
	padding: 2rem;
	background-color: #EEE;
}
.contents_colum_cate05 {
	border: 2px solid #0071BC;
}
.contents_colum_02 {
	margin-bottom: 2em;
}
.contents_colum > h4{
	font-weight: 600;
/*	border-bottom:2px solid #FFF;
	padding-bottom: 0.5rem;*/
}
.contents_colum > h4:before{
	content:"▶ ";
	color:#2E3192;
}
.contents_colum > h4:after{
	content:" ◀";
	color:#2E3192;
}
body{
	display:grid;
	min-height: 100vh;
	font-family: Futura, 'Century Gothic', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji", 'メイリオ', 'Meiryo', sans-serif;
}

#top{
	position: fixed;
	background-color: #FFF;
	z-index: 1000;
}
#top_area{
	padding-top:85px;
}
@media screen and (min-width:769px) {
#top{
	position: fixed;
	background-color: #FFF;
	z-index: 1000;
}
#top_area{
	padding-top:157px;
}

}
h3 {
	font-family: latemin;
	letter-spacing: 0.1rem;
}
h4 {
}
.-btn{
}

.container_outer {
    width: 100%;
	height:55vw;
	background-color: #3593fb;
}

/*pc_sp switch*/
.sp_visible {
    display: block;
}
.pc_visible {
    display: none;
}
@media screen and (min-width:769px) {
.sp_visible {
	display: none;
}
.pc_visible {
    display: block;
}
}

/*----- ヘッダ -----*/
.header{
	margin: 1.2rem 0 0 0;
	color: #22479A;
}
.header a{
	color: #22479A;
	text-decoration: none;
}
.header li{
	list-style: none;
}
.header_logo {
	margin: 0 0 1rem 0;
	padding-left: calc(var(--bs-gutter-x)* -0.5);
}
.header_logo img {
    width: 95%;
}
.header_utility1 {
	margin: 0 0 1rem 0;
	padding-right: calc(var(--bs-gutter-x)* -0.5);
}
.header_utility2 {
	margin: 0 0 1rem 0;
	padding-right: calc(var(--bs-gutter-x)* -0.5);
}
.header_utility3 {
	padding-right: calc(var(--bs-gutter-x)* -0.5);
}
@media screen and (min-width:769px) {
.header_logo {
	padding-left: calc(var(--bs-gutter-x)* 0.5);
}
.header_logo img {
    width: 85%;
}
.header_utility1 {
	padding-right: calc(var(--bs-gutter-x)* 0.5);
}
.header_utility2 {
	padding-right: calc(var(--bs-gutter-x)* 0.5);
}
.header_utility3 {
	padding-right: calc(var(--bs-gutter-x)* 0.5);
	padding-left: 0;
}
}
ul.sub_nav {
	display: flex;
	justify-content: flex-end;
	margin: 0 0 0.6rem 0;
	font-size: 0.7rem;/*PC 幅縮めた時*/
	padding: 0 0 0 0;
}
ul.sub_nav li {
	margin: 0 0 0 1rem;/*PC 幅縮めた時*/
}
ul.sub_nav li:first-child {
	margin: 0 0 0 0;
}
ul.sub_nav li::before {
  content: "■";
  color: #6192D8;
  margin: 0 0.2rem 0 0;
  font-size: 1.4rem;
  vertical-align: sub;
}
.english a::before {
  content: '';
  display: inline-block;
  width: 27px;
  height: 27px;
  background-image: url(../images/icon_english.svg);
  background-size: contain;
  margin: 2px 8px 0 0;
  vertical-align: bottom;
}
@media screen and (min-width:992px) {/*PC Gnav最大幅*/
ul.sub_nav {
	font-size: 0.8rem;
}
ul.sub_nav li {
	margin: 0 0 0 1.4rem;
}
}

/*----- 検索窓 -----*/
/*フォーム全体*/
#form_search{
  display: flex;
  justify-content: center; 	
  border: solid 1px #999;
  max-width: 270px;
  margin-left: auto;
  margin-right: auto;
  border-radius: 4px;
  font-size: 0.8rem;
}
/*入力フォーム*/
#sbox3{ 
  width:240px ;
  padding: 0 15px;
  border-radius: initial;
  background:transparent;
  border:none;
  outline:0;
}
/*検索ボタン*/
#sbtn4{
  width: 50px;
  background:transparent;
  border-radius: initial;
  border:none;
  color:#999;
  font-size:18px;
  cursor: pointer;
  padding: 0 0 0 0;
}
#sbtn4:hover{
  background: #7fbfff;
  color:#fff;
}

/*gnav*/
.gnav_outer {
	background-color: #009e96;
	padding: 2px 0 2px 0;
}
ul.gnav {
	display: flex;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
}
ul.gnav li {
	text-align: center;
	white-space: nowrap;
	flex: 1;
	border-left: 1px solid #fff;
}
ul.gnav li:last-child {
	border-right: 1px solid #fff;
}
ul.gnav li a {
	padding: 14px 1% 0 1%;
	color: #fff;
	line-height: 1;
}
ul.gnav li a::after {
    content: "▼";
    display: block;
    transform: scale(1, 0.6);
}

/*hamburger menu for sp ここから*/
.hamburger_menu {
	text-align: right;
	padding-right: calc(var(--bs-gutter-x)* -0.5);
}
/* ===============================================
ハンバーガーボタンのスタイリング
=============================================== */
input#check[type="checkbox"] {
  opacity: 0;
  visibility: hidden;
  position: absolute;
}
.hamburger {
  display: block;
  width: 40px;
  height: 40px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  background-color: #009D95;
  z-index: 100;
  top: 1px;
  margin: 0 0 0 auto;
}
.hamburger span,
.hamburger span::before,
.hamburger span::after {
  position: absolute;
  display: block;
  content: "";
  width: 100%;
  height: 2px;
  background-color: #fff;
  transition: all 0.5s;
  width: 30px;
}
.hamburger span::before {
  top: -10px;
}
.hamburger span::after {
  bottom: -10px;
}
input[type="checkbox"]:checked + .hamburger span {
  background-color: transparent;
}
input[type="checkbox"]:checked + .hamburger span::before {
  top: 0;
  transform: rotate(45deg);
}
input[type="checkbox"]:checked + .hamburger span::after {
  bottom: 0;
  transform: rotate(-45deg);
}
/* ===============================================
メニューのスタイリング
=============================================== */
.nav_spmenu_bg {
  position: fixed;
  display: none;
  top: 0;
  left: 0;
}
.nav_spmenu {
  position: fixed;
  width: 90%;
  height: 100vh;
  top: 0;
  right: -120%;
  background-color: #009D95;
  color: #fff;
  padding: 60px 0 80px 0;
  transition: all 0.5s;
  overflow: auto;
  z-index: 20;
}
input[type="checkbox"]:checked ~ .nav_spmenu {
  right: 0;
}
input[type="checkbox"]:checked ~ .nav_spmenu_bg {
  background-color: rgba(51, 51, 51, 0.5);
  width: 100%;
  height: 100%;
  z-index: 19;
}
.nav_spmenu_utility {
  padding: 0 20px 1rem 24px;
  text-align: left;
}
.nav_spmenu_utility .searchBox {
  margin: 1rem 0 1rem 0;
}
.nav_spmenu_utility #form_search {
  justify-content: start;
  border: solid 1px #fff;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
}
.nav_spmenu_utility #sbox3 {
  width: 100%;
}
.nav_spmenu_utility #sbox3::placeholder {
  color: #A3EFE8;/* #C9F4F1 */
}
.nav_spmenu_utility #sbtn4 {
  color: #fff;
}
.nav_spmenu_utility .english {
  margin: 0 0 2rem 0;
}
.nav_spmenu_utility .english a {
  color: #fff;
}
.nav_spmenu_utility .english a::before {
  background-image: url(../images/icon_english_white.svg);
}
.nav_spmenu_list {
  padding: 0 20px 1rem 24px;
  text-align: left;
}
.nav_spmenu_list p {
  margin: 0 0 0 0;
}
.nav_spmenu_list li {
  font-size: 18px;
  padding: 12px 0;
  line-height: 1.2rem;
}
.nav_spmenu_list a {
  color: #FFF;
  text-decoration: none;
  display: block;
}
.nav_spmenu_list li.nav_spmenu_home {
  border-bottom: #fff 1px dashed;
  font-size: 15px;
  font-weight: 900;
}
.nav_spmenu_list li.nav_spmenu_home a {
  display: inline-block;
}
.nav_spmenu_list li.nav_spmenu_home:before {
  content: "▶ ";
}
.nav_spmenu_list li.nav_spmenu_item {
  padding: 30px 0 12px 0;
}
.nav_spmenu_item a {
  font-size: 20px;
  text-transform: uppercase;
}
.nav_spmenu_item h2.nav_spmenu_item_ttl01 {
  position: relative;
  padding: 0.5rem 0.6rem 0.7rem 0.6rem;
  background: #2E3192;
}
.nav_spmenu_item h2.nav_spmenu_item_ttl01 a {
  display: inline-block;
}
.nav_spmenu_item h2.nav_spmenu_item_ttl01:before {
  content: "▶ ";
  font-size: 1.2rem;
}
.nav_spmenu_item h2.nav_spmenu_item_ttl01:after {
  position: absolute;
  content: '';
  top: 100%;
  left: 30px;
  border: 15px solid transparent;
  border-top: 15px solid #2E3192;
  width: 0;
  height: 0;
}
.nav_spmenu_item h2.nav_spmenu_item_ttl02 {
  background: #C01443;
}
.nav_spmenu_item h2.nav_spmenu_item_ttl02:after {
  border-top: 15px solid #C01443;
}
.nav_spmenu_item h2.nav_spmenu_item_ttl03 {
  background: #736357;
}
.nav_spmenu_item h2.nav_spmenu_item_ttl03:after {
  border-top: 15px solid #736357;
}
.nav_spmenu_item h2.nav_spmenu_item_ttl04 {
  background: #21B74F;
}
.nav_spmenu_item h2.nav_spmenu_item_ttl04:after {
  border-top: 15px solid #21B74F;
}
.nav_spmenu_item h2.nav_spmenu_item_ttl05 {
  background: #0071BC;
}
.nav_spmenu_item h2.nav_spmenu_item_ttl05:after {
  border-top: 15px solid #0071BC;
}
.nav_spmenu_item h2.nav_spmenu_item_ttl06 {
  background: #662D91;
}
.nav_spmenu_item h2.nav_spmenu_item_ttl06:after {
  border-top: 15px solid #662D91;
}
.nav_spmenu_list li.submenu {
  font-size: 14px;
  padding: 10px 0 10px 0;
  margin: 0 0 0 1rem;
}
.nav_spmenu_list li.subsmenu2 {
  margin: 0 0 0 0;
}
.nav_spmenu_list li.submenu a:before {
  content: "▶ ";
}
.nav_spmenu_list li.submenu_last {
   border-bottom: #fff 1px dashed;
   padding: 10px 0 20px 0;
}
.nav_spmenu_list2 {
  border-top: #B9E9F9 3px solid;
  padding: 1.5rem 20px 1rem 24px;
}
.nav_spmenu_list2 li.submenu a:before {
  content: "■";
  margin: 0 0.2rem 0 0;
}
/*hamburger menu for sp ここまで*/

/*----- gnav for PC ここから -----*/
@media screen and (min-width:769px) {
.menu_button {
  display: none; /* ハンバーガーメニューのボタンを非表示 */
}
.global_menu { /* メニュー全体のスタイル */
  position: relative;
  padding: 0;
  color: #fff; /* 文字色 */
  visibility: visible;
  overflow-y: visible;
}
.global_menu a { /* 各項目のスタイル */
  display: block;
}
.menu, .child_menu > li {
  display: inline-block;
} 
.menu:not(:last-child) {
  margin-bottom: 0;
} 
.menu > a { /* 親項目のスタイル */
  font-weight: normal;
  padding: 10px 20px;
}
.menu:hover > a {
  background: #ffb6c1;
}
ul.child_menu li {
	border-left: none;
	flex: none;
	width: auto;
	text-align: left;
	font-size:0.9em;
}
@media print, screen and (min-width: 1400px) {
ul.child_menu li {
	width: 25%;
}
}
ul.child_menu li span {
	font-size: 0.7rem;
}
ul.child_menu li:last-child {
	border-right: none;
}
ul.gnav li ul.child_menu li a {
	padding: 0.5rem 0 0.5rem 0;
    margin: 0 2rem 0 0;
	line-height: 1.8;
}
ul.gnav li ul.child_menu li a::after {
    content:  none;
}
.menu:hover > a {
  background: #474747;
}
.child_menu > li > a {
    padding: 10px 30px;
}
.child_menu > li > a:hover { /* 子項目のスタイル（ホバー時） */
  background: unset;
  color: #fff;
}
.child_menu { /* 下層メニューのスタイル */
  width: 100%;
  position: absolute;
  top: 100%; /* 親項目の直下に配置 */
  left: 0;
  padding: 1.5rem  2% 1.5rem  2%;
  color: #fff;
  background: #474747;
  visibility: hidden; /* 下層メニューを非表示 */
  border: #009D95 1px solid;
  display: flex;
  flex-wrap: wrap;
  opacity: 0; /* 不透明度を最小に */
  transition: 0.3s opacity; /* アニメーション設定 */
  font-size: 0.95rem;
}
.child_menu li a::before {
  content: "▶";
  margin: 0 0.3rem 0 0;
}
.menu:hover .child_menu { /* 下層メニューのスタイル（親項目ホバー時） */
  visibility: visible; /* 下層メニューを表示 */
  opacity: 0.9; /* 不透明度を最大に */
}
.child_menu a:hover {
  color: #fff;
}
}

/*pcをスクロールした時のスタイル*/
header {
  transition: 0.5s;/* アニメーションの変化時間 */
}
header.scroll-nav .header_logo img {
  width: 80%;
  transition: 0.5s;
}
@media screen and (min-width:769px) {
header.scroll-nav .header_logo img {
  width: 50%;
}
}
header.scroll-nav .header_utility1 {
  display: none;
  transition: 0.5s;
}
header.scroll-nav .header_utility2 {
  display: none;
  transition: 0.5s;
}
header.scroll-nav ul.sub_nav {
  font-size: 0.7rem;
  transition: 0.5s;
}
header.scroll-nav ul.sub_nav li::before {
  font-size: 1.3rem;
  transition: 0.5s;
}
header.scroll-nav .gnav li.menu {
  font-size: 0.9rem;
  transition: 0.5s;
}
header.scroll-nav ul.gnav li a {
  padding: 10px 1% 0 1%;
  transition: 0.5s;
}
/*----- gnav for PC ここまで -----*/

/*----- footer -----*/
.footer_outer {
	background-color: #DDD;
}
.footer_cont {
	margin: 5rem 0 5rem 0;
}
.footer_cont a, .footer_cont a:visited{
	text-decoration: none;
}
.footer_cont a:hover {
	color:#848484;
	text-decoration: underline;
}
.footer_left_area {
	margin: 0 0 5rem 0;
}
.footer_cont h2 {
	color: #fff;
	background-color: #009e96;
	font-size: 90%;
	padding: 0.3rem 1% 0.3rem 1%;
	text-align: center;
	margin: 0 0 1rem 0;
}
.footer_cont h2 a {
	color: #fff;
}
.footer_cont h2 a:hover {
	text-decoration: none;
	color:#fff;
	opacity: 0.8;
}
.footer_cont .utility_box {
	margin: 0 0 1rem 0;
}
.footer_cont h2.utility {
	color: #6192D8;
	background-color: transparent;
	font-size: 90%;
	padding: 0.3rem 1% 0.3rem 1%;
	text-align: center;
	border-bottom: 1px solid #6192D8;
	margin: 0 0 1rem 0;
}
.footer_cont h2.utility a {
	color: #6192D8;
}
.footer_cont h3 {
	color:#003366;
	font-size: 75%;
	line-height: 1.1rem;
	margin: 0 0 1rem 0;
	height: auto;
}
ul.footer_link {
	list-style: none;
	font-size: 70%;
	padding: 0 0 0 0;
	margin: 0 0 3rem 0;
}
ul.footer_link_service {
	margin: 0 0 5rem 0;
}
ul.footer_link li {
	margin: 0 0 0.3rem 0;
	text-indent: -0.9rem;
    padding: 0 0 0 0.9rem;
}
ul.footer_link li::before {
  /*content: "＞";*/
  content: "▶ ";
  margin: 0 0.2rem 0 0;
  color: #71B5AC; 
}
ul.footer_link_service li::before {
  content: "■";
}
.footer_logo {
	margin: 0 0 1.6rem 0;
}
.footer_logo img {
	width: 80%;
}
.social_icon {
	margin: 0 0 2rem 0;
}
.social_icon img {
	margin: 0 0.3rem 0 0;
}
.f_add p {
	line-height: 1.5rem;
	font-size: 90%;
}
.copyright {
	font-size: 85%;
}
@media print, screen and (min-width: 769px) {
.footer_cont .utility_box {
	margin: 0 0 1rem 3rem;
}
.footer_cont h3 {
	margin: 0 0 1.5rem 0;
	height: 30px;
}
ul.footer_link {
	list-style: none;
}
ul.footer_link_service {
	margin: 0 0 5rem 3rem;
}
}
.pagetop {
}
.pagetop a {
}
.tel {
	font-size: 190%;
	margin: 1rem 0 0.3rem 0;
	letter-spacing: 0.06rem;
}
.tel span {
	font-size: 70%;
	margin: 0 0.6rem 0 0;
}
.tel a, .tel a:hover {
	text-decoration: none;
}
@media print, screen and (min-width: 769px) {
a[href^="tel:"] {
	pointer-events: none;
}
}

/*----- breadcrumb -----*/
.breadcrumb {
	padding: 0.5rem 0 0.5rem 1rem;
	background-color: #EBEAE6;
	margin: 0 0 4.5rem 0;
	font-size: 0.8rem;
}
.breadcrumb_item + .breadcrumb_item::before {
	padding: 0 0.9rem 0 0.9rem;
	content: ">";
}
@media print, screen and (min-width: 769px) {
.breadcrumb {
	padding: 0.8rem 0 0.8rem 1rem;
	font-size: 1rem;
}
}

/*----- color -----*/
.cate01_bg {
	background-color: #2E3192;
}
.cate02_bg {
	background-color: #C01443;
}
.cate03_bg {
	background-color: #736357;
}
.cate04_bg {
	background-color: #21B74F;
}
.cate05_bg {
	background-color: #0071BC;
}
.cate06_bg {
	background-color: #662D91;
}

/*----- contents_block1 Left -----*/
.contents_block1 {
	padding-right: 0;
	padding-left: 0;
}
.contents_block1 ul, .contents_block1 ol {
	line-height: 2rem;
}
@media print, screen and (min-width: 769px) {
.contents_block1 {
	padding-right: calc(var(--bs-gutter-x)* 0.5);
}
}

/*----- contents_block2 Right -----*/
.contents_block2 {
	padding-right: 0;
	padding-left: 0;
	width: 100%;
}
@media print, screen and (min-width: 769px) {
.contents_block2 {
	padding-left: calc(var(--bs-gutter-x)* 0.5);
	width: 20%;
}
}

/*----- side area -----*/
.cate_nav_outer {
	background-color: #DADADA;
	margin: 0 auto 3rem auto;
	width: 94%;
}
h3.cate_ttl {
    text-align: center;
	color: #fff;
	margin: 0.5rem -0.4rem 0 -0.4rem;
	font-size: 1.1rem;
	padding: 0.4rem 0 0.4rem 0;
}
h3.cate_ttl a {
	color: #fff;
}
@media print, screen and (min-width: 769px) {
.cate_nav_outer {
	margin: 0.3rem auto 3rem auto;
	width: 90%;
}
h3.cate_ttl {
	margin: 0.5rem -0.4rem 0 -1.2rem;
}
}
.cate_nav {
    margin: 1rem 0 1.2rem 0;
	padding: 0 0 0 0;
	font-size: 80%;
}
.cate_nav li {
    margin: 0 0 0.7rem 0;
	list-style-type: none;
    position: relative; /*基準位置*/
    padding: 0 0 0 0.9rem;
}
.cate_nav li:before {
    /*border-radius: 50%;
    width: 7px;
    height: 7px;*/
    display: block;
    position: absolute;
    left: 0;
    /*top: 0.4rem;*/
    content: "▶";
    color: #009A92;
}
.bnr_block img, .bnr_block iframe {
	margin: 0 0 1rem 0;
}

/*----- ページTOPへ戻るボタン -----*/
.top-button {
  width: 60px;
  height: 60px;
  background-color: #A5A4A4;
  opacity: 0.7;
}
.yajirushi::before,
.yajirushi::after {
  content: '';
  width: 25px;
  height: 6px;
  background-color: snow;
  position: absolute;
  border-radius: 3px;
}
.yajirushi::before {
  transform: translate(25px, 25px) rotate(45deg);
}
.yajirushi::after {
  transform: translate(10px, 25px) rotate(-45deg);
}
html {
  scroll-behavior: smooth;
}
body {
  height: auto;
}
@keyframes progress {
  0% {
    bottom: -120px;
  }
  40% {
    bottom: -120px;
  }
  45% {
    bottom: 0px;
  }
  50% {
    bottom: 20px;
  }
  100% {
    bottom: 20px;
  }
}
.move-page-top {
  position: fixed;
  right: 20px;
  bottom: -120px;
  animation: progress linear;
  animation-timeline: scroll();
  transition: bottom 1s ease;
  z-index: 2;
}



/*------- top_page ------*/
.slider {
	padding-right: calc(var(--bs-gutter-x)* 0.5);
    padding-left: calc(var(--bs-gutter-x)* 0.5);
    margin: 0 0 4.5rem 0;
}

.bgCarousel {
  height: 300px;
  width: 100%;
}

.bgCarousel__item {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 100%;
}

.bgCarousel__item:nth-child(1) {
  background-image: url(../images/mv_cate04_01.png);
}

.bgCarousel__item:nth-child(2) {
  background-image: url(../images/mv_cate04_02.png);
}

.bgCarousel__item:nth-child(3) {
  background-image: url(../images/mv_cate04_03.png);
}
.bgCarousel__item:nth-child(4) {
  background-image: url(../images/mv_cate04_04.png);
}
.bgCarousel__item:nth-child(5) {
  background-image: url(../images/mv_cate04_05.png);
}
.bgCarousel__item:nth-child(6) {
  background-image: url(../images/mv_cate04_06.png);
}
.bgCarousel__item:nth-child(7) {
  background-image: url(../images/mv_cate04_07.png);
}
.bgCarousel__item:nth-child(8) {
  background-image: url(../images/mv_cate04_08.png);
}
.bgCarousel__item:nth-child(9) {
  background-image: url(../images/mv_cate04_09.png);
}
.slider img {
	width: 100%;
}
.carousel-control-prev,
.carousel-control-next{
background:none !important;
}
.carousel-control-prev-icon {
  background-image: url("../images/slider_prev.svg");
  width: 5rem;
  height: 5rem;
}

.carousel-control-next-icon {
  background-image: url("../images/slider_next.svg");
  width: 5rem;
  height: 5rem;
}

.info_list {
	margin: 0 0 1rem 0;
}
.info_list dl {
	border-bottom: 1px solid #009D95;
	padding: 1rem 0 1rem 0;
	margin: 0 0 0 0;
}
.info_list dl.start {
	border-top: 1px solid #009D95;
}
.info_list dl dt {
	margin: 0 0 0.4rem 0;
}
.info_list dl dt span {
	margin: 0 0 0.4rem 1rem;
}
.info_list dl dd {
	line-height: 1.8rem;
	margin: 0 0 0 0;
}
.info_more {
	text-align: right;
}

/*----- contents main_visual -----*/
.mv_box {
	background: url("../images/mv_cate01.png") no-repeat center top;
	background-size: cover;
	width: 100%;
	padding-top: 26.66666%;/*画像の高さ分の余白 (画像の高さ/画像の横幅)×100*/
	position: relative;
}
.mv_box_s {
	background: url("../images/mv_cate01_s.png") no-repeat center top;
	background-size: cover;
	padding-top: 10.41666%;/*画像の高さ分の余白 (画像の高さ/画像の横幅)×100*/
}
.mv_box_c {
	background: url("../images/mv_cate01_c.png") no-repeat center top;
	background-size: cover;
	padding-top: 10.41666%;/*画像の高さ分の余白 (画像の高さ/画像の横幅)×100*/
}
.mv_box_p {
	background: url("../images/mv_cate01_p.png") no-repeat center top;
	background-size: cover;
	padding-top: 10.41666%;/*画像の高さ分の余白 (画像の高さ/画像の横幅)×100*/
}
.mv_box_m {
	background: url("../images/mv_cate01_m.png") no-repeat center top;
	background-size: cover;
	padding-top: 10.41666%;/*画像の高さ分の余白 (画像の高さ/画像の横幅)×100*/
}
.mv_box_team {
	background: url("../images/mv_cate01_team.png") no-repeat center top;
	background-size: cover;
	padding-top: 10.41666%;/*画像の高さ分の余白 (画像の高さ/画像の横幅)×100*/
}
.mv_box_iop {
	background: url("../images/mv_cate01_iop.png") no-repeat center top;
	background-size: cover;
	padding-top: 10.41666%;/*画像の高さ分の余白 (画像の高さ/画像の横幅)×100*/
}
.mv_box_data {
	background: url("../images/mv_cate01_data.png") no-repeat center top;
	background-size: cover;
	padding-top: 10.41666%;/*画像の高さ分の余白 (画像の高さ/画像の横幅)×100*/
}
.mv_box_x {
	background: url("../images/mv_cate01_x.png") no-repeat center top;
	background-size: cover;
	padding-top: 10.41666%;/*画像の高さ分の余白 (画像の高さ/画像の横幅)×100*/
}
.mv_box_s_03 {
	background: url("../images/mv_cate03_s.png") no-repeat center top;
	background-size: cover;
	padding-top: 10.41666%;/*画像の高さ分の余白 (画像の高さ/画像の横幅)×100*/
}
.mv_box_s_04 {
	background: url("../images/mv_cate04_s.png") no-repeat center top;
	background-size: cover;
	padding-top: 10.41666%;/*画像の高さ分の余白 (画像の高さ/画像の横幅)×100*/
}
.mv_box_s_05 {
	background: url("../images/mv_cate05_s.png") no-repeat center top;
	background-size: cover;
	padding-top: 10.41666%;/*画像の高さ分の余白 (画像の高さ/画像の横幅)×100*/
}
.mv_box_s_06 {
	background: url("../images/mv_cate06_s.png") no-repeat center top;
	background-size: cover;
	padding-top: 10.41666%;/*画像の高さ分の余白 (画像の高さ/画像の横幅)×100*/
}

.mv_text {
	position: absolute;
	width: 94%;
	top: 18%;
    left: 3%;
}
.mv_text_up {
	top: 0;
}
.mv_text_ttl {
	color: #fff;
	font-size: clamp(1.5rem, 3vw, 3rem);
	letter-spacing: 0.3rem;
	line-height: 1.2;
	text-shadow: 2px 2px 1px #000;
	font-weight: 900;
	margin: 0 0 0 0;
}
.mv_text_ttl_s {
	font-size: clamp(1.3rem, 3vw, 3rem);
}
.mv_text_ttl span {
	font-size: clamp(0.8rem, 1.8vw, 1.8rem);
}
.mv_text_ttl_cate {
	font-size: clamp(1rem, 2.3vw, 1.5rem);
}
.mv_text_ttl_cate span {
	font-size: clamp(0.6rem, 1.5vw, 1rem);
}
.mv_text_english {
	color: #A1C8F7;
	font-size: clamp(0.8rem, 1.2vw, 1.2rem);
	letter-spacing: 0.2rem;
	line-height: 1;
	text-shadow: 1px 1px 0 #000;
}
.mv_text_english_cate {
	font-size: clamp(0.7rem, 1.2vw, 0.8rem);
}
.mv_box_02 {
	background: url("../images/mv_cate02.png") no-repeat center top;
	background-size: cover;
}
.mv_box_s_02 {
	background: url("../images/mv_cate02_s.png") no-repeat center top;
	background-size: cover;
}
.mv_box_03 {
	background: url("../images/mv_cate03.png") no-repeat center top;
	background-size: cover;
}
.mv_box_04 {
	background: url("../images/mv_cate04_01.png") no-repeat center top;
	background-size: cover;
}
.mv_box_05 {
	background: url("../images/mv_cate05.png") no-repeat center top;
	background-size: cover;
}
.mv_box_06 {
	background: url("../images/mv_cate06.png") no-repeat center top;
	background-size: cover;
}
.mv_box_s_07 {
	background: url("../images/mv_cate07_s.png") no-repeat center top;
	background-size: cover;
}
.mv_box_s_08 {
	background: url("../images/mv_cate08_s.png") no-repeat center top;
	background-size: cover;
}
@media print, screen and (min-width: 769px) {
.mv_text {
	top: 20%;
}
.mv_text_up {
	top: 20%;
}
.mv_text_ttl {
	margin: 0 0 0.5rem 0;
}
}


/*----- contents -----*/
.top_ttl {
	padding-right: calc(var(--bs-gutter-x)* 0.5);
    padding-left: calc(var(--bs-gutter-x)* 0.5);
}
.top_img {
	padding-right: calc(var(--bs-gutter-x)* 0.5);
    padding-left: calc(var(--bs-gutter-x)* 0.5);
}
.top_img img {
	width: 100%;
}
@media print, screen and (min-width: 769px) {
.top_ttl {
	padding-right: 0;
    padding-left: calc(var(--bs-gutter-x)* 0.5);
}
.top_img {
	padding-right: calc(var(--bs-gutter-x)* 0.5);
    padding-left: 0;
}
}
.ttl_cate img {
	padding: 2rem 0 0 0;
	width: 60%;
    margin: 0 auto 0 auto;
}
@media print, screen and (min-width: 769px) {
.ttl_cate img {
	width: 80%;
}
}
.main_area {
    margin: 0 0 0 0;
	padding: 0 0 2rem 0;
	width: 100%;
}
.square {
    font-size: 150%;
	margin: 0 0 2rem 0;
}
.square_02 {
    font-size: 200%;
}
.square::before {
    content: "■";
	margin: 0 0.6rem 0 0;
    font-size: 120%;
}
.icon_cate00::before {
    color: #E50012;
}
.icon_cate01::before {
    color: #C01443;
}
.icon_cate02::before {
    color: #736357;
}
.icon_cate03::before {
    color: #2E3192;
}
.icon_cate03_01::before {
    color: #397C99;
}
.icon_cate03_02::before {
    color: #6F8750;
}
.icon_cate04::before {
    color: #21B74F;
}
.icon_cate05::before {
    color: #0071BC;
}
.icon_cate06::before {
    color: #662D91;
}
.icon_cate07::before {
    color: #F08300;
}
.icon_cate08::before {
    color: #00B4ED;
}
.cont_img {
	margin: 0 0 1rem 0;
}
.sub_cate_box {
	padding-right: calc(var(--bs-gutter-x)* 0.5);
    padding-left: calc(var(--bs-gutter-x)* 0.5);
}
.sub_cate_box_02 {
    padding: 0 calc(var(--bs-gutter-x)* 0.5) 2rem calc(var(--bs-gutter-x)* 0.5);
}
.sub_cate_box_ttl {
    background-color: #003E81;
	color: #fff;
	text-align: center;
    margin: 0 0 0 0;
    padding: 1rem 0 1rem 0;
	font-size: 1.4rem;
}
.sub_cate_box_ttl_02 {
    background-color: #004714;
}
.sub_cate_ttl {
    background-color: #003E81;
	color: #fff;
	text-align: center;
    margin: 0 0 3rem calc(var(--bs-gutter-x)* 0.5);;
    padding: 0.5rem 0 0.5rem 0;
	font-size: 1.2rem;
	border-radius: 5px;
	width: 95%;
}
.sub_cate_ttl_02 {
    background-color: #004714;
}
@media print, screen and (min-width: 769px) {
.sub_cate_box_ttl {
	font-size: 1.6rem;
}
.sub_cate_ttl {
	font-size: 1.2rem;
	width: 97.5%;
}
}
@media print, screen and (min-width: 1200px) {
.sub_cate_ttl {
	font-size: 1.4rem;
}
}
.sub_cate_box_inner {
	background-color: #D3D3D4;
	border: 1px #9FA0A0 solid;
	padding: 3rem 0 2rem 0;
}
.sub_cate_box_inner2 {
	background-color: none;
	border: none;
	padding: 3rem 0 2rem 0;
}
.sub_cate_button {
	background-color: #ED6D46;
	text-align: center;
	color: #fff;
	width: 46%;
	margin: 0 1.5rem 1.5rem 0;
	padding: 1rem 0.5rem 1rem 0.5rem;
	position: relative;
	box-shadow: 8px 8px 0px 0.5px #F29A76;
}
.sub_cate_button:nth-child(2) {
	margin: 0 0 1.5rem 0;
}
.sub_cate_button:nth-child(3) {
	margin: 0 1.5rem 1.5rem 0;
}
.sub_cate_button:nth-child(4) {
	margin: 0 0 1.5rem 0;
}
.sub_cate_button:nth-child(6) {
	margin: 0 0 1.5rem 0;
}
.sub_cate_button:nth-child(8) {
	margin: 0 0 1.5rem 0;
}
.sub_cate_button:nth-child(9) {
	margin: 0 1.5rem 1.5rem 0;
}
.sub_cate_button a {
	color: #fff;
}
.sub_cate_button_02 {
	margin: 0 0.5rem 1.5rem 0.5rem;
	width: 60%;
}
.sub_cate_button_02:nth-child(2) {
	margin: 0 0.5rem 1.5rem 0.5rem;
}
.sub_cate_button_02:nth-child(3) {
	margin: 0 0.5rem 1.5rem 0.5rem;
}
.sub_cate_button_02:nth-child(4) {
	margin: 0 0.5rem 1.5rem 0.5rem;
}
.sub_cate_button_03::before {
  position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 15px transparent;
  border-right: solid 20px #265363;
}
.sub_cate_button_04::before {
  border-right: solid 20px #16521D;
}
.sub_cate_button_05 {
	margin: 0 1.5rem 1.5rem 0;
}
.sub_cate_button_05:nth-child(2) {
	margin: 0 0 1.5rem 0;
}
.sub_cate00_bg {
	background-color: #0095D2;
	box-shadow: 8px 8px 0px 0.5px #4FB3DC;
}
.sub_cate01_bg {
	background-color: #ED6D46;
	box-shadow: 8px 8px 0px 0.5px #F29A76;
}
.sub_cate02_bg {
	background-color: #1E5C39;
	box-shadow: 8px 8px 0px 0.5px #527F5F;
}
.sub_cate03_bg {
	background-color: #B7AA00;
	box-shadow: 8px 8px 0px 0.5px #E9D900;
}
.sub_cate04_bg {
	background-color: #5C3A93;
	box-shadow: 8px 8px 0px 0.5px #B59EB6;
}
.sub_cate05_bg {
	background-color: #00569A;
	box-shadow: 8px 8px 0px 0.5px #0086D1;
}
.sub_cate06_bg {
	background-color: #AD0035;
	box-shadow: 8px 8px 0px 0.5px #EA609E;
}
.sub_cate07_bg {
	background-color: #00A73C;
	box-shadow: 8px 8px 0px 0.5px #7FBE26;
}
.sub_cate08_bg {
	background-color: #3E8FC6;
	box-shadow: 8px 8px 0px 0.5px #97DAF7;
}
.sub_cate09_bg {
	background-color: #397C99;
	box-shadow: none;
}
.sub_cate10_bg {
	background-color: #6F8750;
	box-shadow: none;
}
.sub_cate11_bg {
	background-color: #F08300;
	box-shadow: 8px 8px 0px 0.5px #F9AF2B;
}
.sub_cate12_bg {
	background-color: #00B4ED;
	box-shadow: 8px 8px 0px 0.5px #7ECEF4;
}
.sub_cate13_bg {
	background-color: #F8B62D;
	box-shadow: 8px 8px 0px 0.5px #FCD7A1;
}
.sub_cate14_bg {
	background-color: #9A8EC3;
	box-shadow: 8px 8px 0px 0.5px #C6BDEF;
}
.sub_cate15_bg {
	background-color: #74CC27;
	box-shadow: 8px 8px 0px 0.5px #AFEF78;
}
.sub_cate_button_inner {
	border-top: solid 1px #fff;
	height: 100%;
}
.sub_cate_button_inner::after {
    content: url('../images/sub_cate_icon.png');
	position: absolute;
    right: 0.5rem;
	margin: -0.6rem 0 0 0;
}
.sub_cate_button_inner2 {
	border-top: none;
	height: 100%;
	text-align: center;
}
.sub_cate_button_inner2 .sub_cate_capt{
	font-size: 1.2rem;
	font-weight: 600;
}
@media print, screen and (min-width: 769px) {
.sub_cate_button {
	width: 30%;
}
.sub_cate_button:nth-child(2) {
	margin: 0 1.5rem 1.5rem 0;
}
.sub_cate_button:nth-child(3) {
	margin: 0 0 1.5rem 0;
}
.sub_cate_button:nth-child(4) {
	margin: 0 1.5rem 1.5rem 0;
}
.sub_cate_button:nth-child(6) {
	margin: 0 0 1.5rem 0;
}
.sub_cate_button:nth-child(8) {
	margin: 0 1.5rem 1.5rem 0;
}
.sub_cate_button:nth-child(9) {
	margin: 0 0 1.5rem 0;
}
.sub_cate_button_02 {
	width: 40%;
}
.sub_cate_button_02:nth-child(2) {
	margin: 0 0.5rem 1.5rem 0.5rem;
}
.sub_cate_button_02:nth-child(3) {
	margin: 0 0.5rem 1.5rem 0.5rem;
}
.sub_cate_button_02:nth-child(4) {
	margin: 0 0.5rem 1.5rem 0.5rem;
}
.sub_cate_button_05:nth-child(2) {
	margin: 0 1.5rem 1.5rem 0;
}
}
@media print, screen and (min-width: 1400px) {
.sub_cate_button {
	width: 23%;
}
.sub_cate_button:nth-child(2) {
	margin: 0 1.5rem 1.5rem 0;
}
.sub_cate_button:nth-child(3) {
	margin: 0 1.5rem 1.5rem 0;
}
.sub_cate_button:nth-child(4) {
	margin: 0 0 1.5rem 0;
}
.sub_cate_button:nth-child(6) {
	margin: 0 1.5rem 1.5rem 0;
}
.sub_cate_button:nth-child(8) {
	margin: 0 0 1.5rem 0;
}
.sub_cate_button:nth-child(9) {
	margin: 0 1.5rem 1.5rem 0;
}
.sub_cate_button_02 {
	width: 23%;
}
.sub_cate_button_02:nth-child(2) {
	margin: 0 0.5rem 1.5rem 0.5rem;
}
.sub_cate_button_02:nth-child(3) {
	margin: 0 0.5rem 1.5rem 0.5rem;
}
.sub_cate_button_02:nth-child(4) {
	margin: 0 0.5rem 1.5rem 0.5rem;
}
}
.sub_cate_name {
	margin: 0 0 0 0;
	height: 80px;
	line-height: 1.4;
	display: grid;
	place-items: center center;
	text-shadow: 2px 2px 0px rgba(0, 0, 0, 0.5);
	font-weight: 900;
    letter-spacing: 0.15rem;
    font-size: 110%;
}
.sub_cate_line {
	width: 71%;
	border-top: solid 1px #fff;
}
.sub_cate_line_02 {
	width: 77%;
}
@media print, screen and (min-width: 769px) {
.sub_cate_name {
    font-size: 90%;
}
.sub_cate_line {
	width: 77%;
}
}
@media print, screen and (min-width: 1200px) {
.sub_cate_name {
    font-size: 110%;
}
}
.link_button {
	background-color: #725A71;
	border-radius: 5px;
	color: #fff;
	text-align: center;
	padding: 1.2rem 0 1.2rem 0;
	letter-spacing: 0;
    font-size: 1.4rem;
}
.link_button_bg08 {
	background-color: #00B4ED;
}
.link_button img {
	margin: -5px 0 0 0;
}
.link_button_interview {
	padding: 1.2rem 0 0.8rem 0;
}
.link_button_interview::before {
    content: '';
    display: inline-block;
    width: 35px;
    height: 50px;
    background: url(../images/icon_mike.svg) no-repeat;
    background-size: contain;
    margin: -5px 10px 0 0;
    vertical-align: middle;
}
@media print, screen and (min-width: 769px) {
.link_button {
	letter-spacing: 0.5rem;
	font-size: 1.5rem;
}
.link_button_interview::before {
    margin: -5px 40px 0 0;
}
}
.image_map area:hover {
	border:1px solid #424FEA;
}


/*------- seminar ------*/
.list_box {
	border-bottom: 2px solid #736357;
    margin-left: calc(var(--bs-gutter-x)* 0.5);
	margin-bottom: 1rem;
	padding-right: 0;
	padding-left: 0;
	padding-bottom: 2rem;
	width: 95%;
}
.list_box_img {
	padding-right: 0;
	padding-left: 0;
	margin: 0 0 1rem 0;
}
.list_box_text {
	padding-right: 0;
    padding-left: 0;
}
.list_box h3 {
	border-bottom: 1px solid #736357;
	padding: 0 0 0.3rem 0;
	margin: 0 0 1rem 0;
	font-size: 1.6rem;
}
.list_box_detail {
	line-height: 1.7;
	margin: 0 0 1.2rem 0;
}
.list_box_more {
	background-color: #736357;
	border-radius: 5px;
	color: #fff;
	text-align: center;
	width: 100%;
}
.list_box_more a {
	color: #fff;
}
@media print, screen and (min-width: 769px) {
.list_box_more {
	width: 80%;
}
}
@media print, screen and (min-width: 960px) {
.list_box_more {
	width: 50%;
}
}
@media print, screen and (min-width: 769px) {
.list_box {
	border-bottom: 1px solid #736357;
	width: 97.5%;
}
.list_box_img {
	padding-right: calc(var(--bs-gutter-x)* 0.5);
	margin: 0 0 0 0;
}
.list_box_text {
    padding-left: calc(var(--bs-gutter-x)* 0.5);
}
}


/*------- 下層ページ ------*/
.cont_listbox {
	margin-bottom: 1rem;
}
.cont_listbox_img {
	margin: 0 0 0.5rem 0;
}
.cont_listbox_txt {
	
}
.cont_listbox_txt_ttl {
	font-weight: 900;
	margin: 0 0 0.5rem 0;
}


/*------- research ------*/
.dl_box {
	padding: 0 0 0.5rem 0;
	border-bottom: 1px dashed #009e96;
	margin: 0 0 0.5rem calc(var(--bs-gutter-x)* 0.5);
	width: 95%;
}
.dt_year {
	padding-left: 0;
	width: 100%;
}
.dt_year_02 {
	width: 100%;
}
.dd_cont {
	padding-left: 0;
	padding-right: 0;
	width: 100%;
}
.dd_cont_02 {
	width: 100%;
}
.dd_cont ul {
	margin: 0 0 0 0;
}
@media print, screen and (min-width: 769px) {
.dl_box {
	width: 97.5%;
}
.dt_year {
	width: 14%;
}
.dt_year_02 {
	width: 35%;
}
.dd_cont {
	width: 86%;
}
.dd_cont_02 {
	width: 65%;
}
}
@media print, screen and (min-width: 1200px) {
.dt_year {
	width: 8.33333333%;
}
.dt_year_02 {
	width: 30%;
}
.dd_cont {
	width: 91.66666667%;
}
.dd_cont_02 {
	width: 70%;
}
}

/*------- items --------*/
.sub_cate_item dd{text-indent: 2rem;}
.sub_cate_item a{color:#fff;display: block;}

.border-l_gray {
    border:1px solid #b7babb;
}

.item-a h5{width:100%; padding:0.5rem; background-color:#F46816;color:#FFF; font-weight: 600;border-radius:5px; margin-bottom:1rem;}
.item-a dt{padding:0.2rem 1rem; ; background-color:#FFF;color:#000; font-weight: 600;}
.item-a .dt1{padding:0.2rem 1rem;margin-right:1rem; border-radius:5px; border:2px solid #F46816;background-color:#F46816;color:#FFF; width:20%;}

.item-b h5{width:100%; padding:0.5rem; background-color:#465CB2; color:#FFF; font-weight: 600;border-radius:5px; margin-bottom:1rem;}
.item-b dt{padding:0.2rem 1rem; ; background-color:#FFF;color:#000; font-weight: 600;}
.item-b .dt1{padding:0.2rem 1rem;margin-right:1rem; border-radius:5px; border:2px solid #465CB2;background-color:#465CB2;color:#FFF; width:20%;}

.item-c h5{width:100%; padding:0.5rem; background-color:#5FC3D3; color:#FFF; font-weight: 600;border-radius:5px; margin-bottom:1rem;}
.item-c dt{padding:0.2rem 1rem; ; background-color:#FFF;color:#000; font-weight: 600;}
.item-c .dt1{padding:0.2rem 1rem;margin-right:1rem; border-radius:5px; border:2px solid #5FC3D3;background-color:#5FC3D3;color:#FFF; width:20%;}
.item-c .dt4{padding:0.2rem 1rem;margin-right:1rem; border-radius:5px; border:2px solid #5FC3D3;background-color:#FFF;color:#000; width:20%;}

.item-d h5{width:100%; padding:0.5rem; background-color:#D8C751; color:#FFF; font-weight: 600;border-radius:5px; margin-bottom:1rem;}
.item-d dt{padding:0.2rem 1rem; ; background-color:#FFF;color:#000; font-weight: 600;}
.item-d .dt1{padding:0.2rem 1rem;margin-right:1rem; border-radius:5px; border:2px solid #D8C751;background-color:#D8C751;color:#FFF; width:20%;}

.item-e h5{width:100%; padding:0.5rem; background-color:#30AD55; color:#FFF; font-weight: 600;border-radius:5px; margin-bottom:1rem;}
.item-e dt{padding:0.2rem 1rem; ; background-color:#FFF;color:#000; font-weight: 600;}
.item-e .dt1{padding:0.2rem 1rem;margin-right:1rem; border-radius:5px; border:2px solid #30AD55;background-color:#30AD55;color:#FFF; width:20%;}
.item-e .dt3{padding:0.2rem 1rem;margin-right:1rem; border-radius:5px; border:2px solid #30AD55;background-color:#FFF;color:#000; width:20%;}

.item-f h5{width:100%; padding:0.5rem; background-color:#A1CD61; color:#FFF; font-weight: 600;border-radius:5px; margin-bottom:1rem;}
.item-f dt{padding:0.2rem 1rem; ; background-color:#FFF;color:#000; font-weight: 600;}
.item-f .dt1{padding:0.2rem 1rem;margin-right:1rem; border-radius:5px; border:2px solid #A1CD61;;background-color:#A1CD61;;color:#FFF; width:20%;}

.item-g h5{width:100%; padding:0.5rem; background-color:#C777CA; color:#FFF; font-weight: 600;border-radius:5px; margin-bottom:1rem;}
.item-g dt{padding:0.2rem 1rem; ; background-color:#FFF;color:#000; font-weight: 600;}
.item-g .dt1{padding:0.2rem 1rem;margin-right:1rem; border-radius:5px; border:2px solid #C777CA;;background-color:#C777CA;;color:#FFF; width:20%;}

.sub_cate_item dd{text-indent: 2rem;}

section.contents_box_02 {
    margin-bottom: 6em;
}
.cont_img_02 {
    margin: 2rem 0 1rem 0;
}
.cont_img_02 img {
    margin: 0 0 0.7rem 0;
}

dl.item-a {
	margin: 0 0 1rem calc(var(--bs-gutter-x) * 0.5);
	padding: 2rem 0 2rem 0;
	border-top: #b679f7 solid 1px;
	border-bottom: #b679f7 solid 1px;
	width: 94%;
}
dl.item-b {
	margin: 0 0 1rem calc(var(--bs-gutter-x) * 0.5);
	padding: 2rem 0 2rem 0;
	border-top: #b679f7 solid 1px;
	border-bottom: #b679f7 solid 1px;
	width: 94%;
}
dl.item-c {
	margin: 0 0 1rem calc(var(--bs-gutter-x) * 0.5);
	padding: 2rem 0 2rem 0;
	border-top: #b679f7 solid 1px;
	border-bottom: #b679f7 solid 1px;
	width: 94%;
}
dl.item-d {
	margin: 0 0 1rem calc(var(--bs-gutter-x) * 0.5);
	padding: 2rem 0 2rem 0;
	border-top: #b679f7 solid 1px;
	border-bottom: #b679f7 solid 1px;
	width: 94%;
}
dl.item-e {
	margin: 0 0 1rem calc(var(--bs-gutter-x) * 0.5);
	padding: 2rem 0 2rem 0;
	border-top: #b679f7 solid 1px;
	border-bottom: #b679f7 solid 1px;
	width: 94%;
}
dl.item-f {
	margin: 0 0 1rem calc(var(--bs-gutter-x) * 0.5);
	padding: 2rem 0 2rem 0;
	border-top: #b679f7 solid 1px;
	border-bottom: #b679f7 solid 1px;
	width: 94%;
}
dl.item-g {
	margin: 0 0 1rem calc(var(--bs-gutter-x) * 0.5);
	padding: 2rem 0 2rem 0;
	border-top: #b679f7 solid 1px;
	border-bottom: #b679f7 solid 1px;
	width: 94%;
}
dl.item-a dt {
    padding: 0.2rem 0;
}
dl.item-b dt {
    padding: 0.2rem 0;
}
dl.item-c dt {
    padding: 0.2rem 0;
}
dl.item-d dt {
    padding: 0.2rem 0;
}
dl.item-e dt {
    padding: 0.2rem 0;
}
dl.item-f dt {
    padding: 0.2rem 0;
}
dl.item-g dt {
    padding: 0.2rem 0;
}
dl.item-a dd {
    line-height: 1.2;
	margin: 0.7rem 0 0 0;
}
dl.item-b dd {
    line-height: 1.2;
	margin: 0.7rem 0 0 0;
}
dl.item-c dd {
    line-height: 1.2;
	margin: 0.7rem 0 0 0;
}
dl.item-d dd {
    line-height: 1.2;
	margin: 0.7rem 0 0 0;
}
dl.item-e dd {
    line-height: 1.2;
	margin: 0.7rem 0 0 0;
}
dl.item-f dd {
    line-height: 1.2;
	margin: 0.7rem 0 0 0;
}
dl.item-g dd {
    line-height: 1.2;
	margin: 0.7rem 0 0 0;
}
.item_ttl_01 {
   margin: 2rem 0 0 0;
}
.item_ttl_02 {
   margin: 2rem 0 1rem 0;
}


@media print, screen and (min-width: 769px) {
dl.item-a {
	width: 95.4%;
}
dl.item-b {
	width: 95.4%;
}
dl.item-c {
	width: 95.4%;
}
dl.item-d {
	width: 95.4%;
}
dl.item-e {
	width: 95.4%;
}
dl.item-f {
	width: 95.4%;
}
dl.item-g {
	width: 95.4%;
}
}

@media print, screen and (min-width: 1200px) {
dl.item-a {
	width: 97.4%;
}
dl.item-b {
	width: 97.4%;
}
dl.item-c {
	width: 97.4%;
}
dl.item-d {
	width: 97.4%;
}
dl.item-e {
	width: 97.4%;
}
dl.item-f {
	width: 97.4%;
}
dl.item-g {
	width: 97.4%;
}
}


/*------- about_us ------*/
.accordion-003, .accordion-004 {
    margin-bottom: 7px;
    border-bottom: 2px solid #d0d0d0;
}
.accordion-003 summary, .accordion-004 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em 2em 1em 0;
    color: #333333;
    font-weight: 600;
    cursor: pointer;
}
.accordion-004 summary {
    cursor: auto;
}
.accordion-004 summary a {
    display: block;
	color: #fff;
}
.accordion-003 summary::-webkit-details-marker, .accordion-004 summary::-webkit-details-marker {
    display: none;
}
.accordion-003 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 10px;
    height: 10px;
    margin-left: 10px;
    border-bottom: 3px solid #333333b3;
    border-right: 3px solid #333333b3;
    content: '';
    transition: transform .3s;
}
.accordion-004 summary::after {
    content: none;
}
.accordion-003[open] summary::after {
    transform: rotate(225deg);
}
.accordion-003 p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 0.5em 2.5em 1.5em 1em;
    color: #333333;
    transition: transform .5s, opacity .5s;
}
.accordion-003[open] p {
    transform: none;
    opacity: 1;
}
.about_us_ttl {
	background-color: #F08300;
	border-radius: 5px;
	padding: 3px 0 3px 0;
    width: 60%;
    text-align: center;
	color: #fff;
	letter-spacing: 0.1rem;
    font-weight: normal;
}
.purpose_ttl {
    text-align: center;
	margin: 0 0 1rem 0;
}
.purpose_data {
    text-align: right;
}
@media print, screen and (min-width: 769px) {
.about_us_ttl {
    width: 40%;
}
}
@media print, screen and (min-width: 1200px) {
.about_us_ttl {
    width: 28%;
}
}

/*-- google carender */
.googlecarender{
border: 0; max-width: 640px; width:100%; height: 600px;
}
@media print, screen and (min-width: 769px) {
.googlecarender{
border: 0; max-width: 350px;width:140%; height: 600px; transform: scale(0.7); transform-origin: top left;
}

}

/*-- project --*/
.project-table_outer {
overflow: hidden;
}
.project-table {
width:100%;
overflow-x: auto;
}
.project-table table{
border-right: none;
width:150%;
table-layout: fixed;
/*word-break: break-all;*/
}
.project-table tr{
background-color:#C5CFD5;
border-bottom: 1px solid #FFF;
}
.project-table tr:nth-child(2n){
background-color:#DBE4EA;
border-bottom: 1px solid #FFF;
}
.project-table th{
background-color: royalblue;
color: #FFF;
vertical-align: top;
border-right:1px solid #FFF;
padding:0.5rem;
}
.project-table td{
vertical-align: top;
border-right:1px solid #FFF;
padding: 0.5rem;
}
ul.newsletter li, ul.newsletter_02 li{
margin: 0 0 1.5rem 0;
}
@media print, screen and (min-width: 769px) {
.project-table_outer {
overflow: auto;
}
.project-table {
overflow: auto;
}
.project-table table{
width:100%;
table-layout: auto;
/*word-break: normal;*/
}
}


/*------- hygienist ------*/
.caption {
font-size: 80%;
}


/*------- practice ------*/
.youtube_ttl {
  line-height: 1.5rem;
  margin: 0 0 0.5rem 0;
}
.youtube_wrapper {
  width: 100%;
  aspect-ratio: 16 / 9;
  margin: 0 0 2rem 0;
}
.youtube_wrapper iframe {
  width: 100%;
  height: 100%;
}


/*------- aaa ------*/







