@charset "utf-8";
* {
	margin: 0;
	padding: 0;
	color: #000;
	font-size: 1rem;
	letter-spacing: 0.05rem;
	box-sizing: border-box;
}
body {
	font-family: 'Noto Sans JP', sans-serif;
	text-align: center;
	background-color: #FFF;
	width: 100%;
	margin: 0 auto;
	position: relative;
}
a:link, a:visited {
	text-decoration: none;
	display: inline-block;
}
ul {
	list-style: none;
}
img {
	width: 100%;
	height: auto;
}
#spOnly, .bl_br_1024 {
	display: none;
}
/* ヘッダー */
#header {
	display: flex;
    justify-content: space-between;
    width: 90vw;
    padding: 1rem 2rem;
    margin: 0 auto;
	border-radius: 3rem;
	position: fixed;
	top: 1.25rem;
	left: 50%;
    transform: translateX(-50%);
	background-color: #FFF;
	z-index: 100;
    box-shadow: 1px 1px 5px #DDD;
}
#header .logo {
	width: 25%;
	display: flex;
}
#header ul {
	display: flex;
    margin: auto 0;
}
#header ul li {
	padding: 0 0 0 1.25rem;
}
#header ul li:first-child {
	padding: 0;
}
#header ul li a {
	font-weight: 600;
}
#header ul li a:hover {
	color: #1B4288;
}
.sp_hd_logo {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 80;
	width: 100%;
	height: 12dvh;
	backdrop-filter: blur(12px);
}
.sp_hd_logo a {
	max-width: 300px;
	margin: 20px 0 0 20px;
    display: flex;
}
/* ハンバーガーメニュー */
.menu-wrapper {
  position: relative;
}
.menu-icon {
  width: 3.75rem;
  height: 3.75rem;
  position: fixed;
  top: 0.625rem;
  right: 0.625rem;
  cursor: pointer;
  z-index: 100;
  display: inline-block;
	background: #FFF;
	padding: 0.8rem 1rem;
    /*padding: 0.8rem 1rem 0.8rem 1.1rem;*/
    border-radius: 3rem;
    border: solid 2px #1B4288;
}
.menu-icon span {
  display: block;
  height: 2px;
  margin: 10px 0;
  background: #1B4288;
  border-radius: 2px;
  transition: 0.4s;
}
#menu-toggle:checked + .menu-icon span:nth-child(1) {
  transform: translateY(5px) rotate(45deg);
}
#menu-toggle:checked + .menu-icon span:nth-child(2) {
	transform: translateY(-7px) rotate(-45deg);
}
/*#menu-toggle:checked + .menu-icon span:nth-child(1) {
  transform: translateY(10px) rotate(45deg);
}
#menu-toggle:checked + .menu-icon span:nth-child(2) {
  opacity: 0;
}
#menu-toggle:checked + .menu-icon span:nth-child(3) {
  transform: translateY(-10px) rotate(-45deg);
}*/
.overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.5);
  opacity: 0;
  pointer-events: none;
  transition: 0.4s;
  z-index: 90;
}
#menu-toggle:checked ~ .overlay {
  opacity: 1;
  pointer-events: auto;
}
.menu {
  position: fixed;
  top: 0;
  left: -500px;
  width: 500px;
  height: 100%;
  background: #fff;
  box-shadow: 2px 0 8px rgba(0,0,0,0.2);
  transition: left 0.4s ease;
  z-index: 95;
}
#menu-toggle:checked ~ .menu {
  left: 0;
}
.menu ul {
  padding: 60px 20px;
}
.menu li {
  margin: 1.875rem auto;
    text-align: left;
    width: 80%;
}
.menu a {
	text-decoration: none;
	color: #1B4288;
	font-size: 1.25rem;
	font-weight: 600;
	transition: color 0.3s;
}
.menu a:hover {
	color: #007bff;
}
/* ここまでハンバーガーメニュー */
/* 追従バナー */
.floating-bnr {
	position: fixed;
    top: 50%;
	right: 0;
    transform: translateY(-50%);
	/*transform: translateY(0);*/
	z-index: 80;
    display: flex;
    flex-flow: column;
}
.floating-bnr a {
	background: #1B4288;
	writing-mode: vertical-rl;
    text-orientation: mixed;
	display: block;
    margin: 0.5rem 0 0;
	padding: 0.2rem;
	min-height: 9.375rem;
}
.floating-bnr a:first-child {
	margin: 0;
}
.floating-bnr a:hover {
	background: #FFF;
	border: solid 1px #1B4288;
}
.floating-bnr .inner {
	border: solid 0.5px #FFF;
	color: #FFF;
	font-size: 0.9375rem;
	padding: 0.9375rem;
	display: flex;
	width: 100%;
    justify-content: center;
}
.floating-bnr .inner:hover {
	border: solid 0.5px #1B4288;
	color: #1B4288;
}
.icon01 {
	padding: 0.3125rem 0 0;
	display: flex;
    align-items: center;
}
.icon01 svg {
	fill: #FFF;
	width: 100%;
	max-width: 20px;
}
.floating-bnr .inner:hover svg {
	fill: #1B4288;
}
.floating-bnr a img {
	width: 1.25rem;
	margin: 0.2rem 0 0;
}
.floating-bnr a .margin {
	margin: 0.5rem 0 0;
}
/* ここまで追従バナー */
/* ここまでヘッダー */
/* TOPページ */
.hs-wrap {
	width: 100%;
    height: auto;
    margin: 0 auto 12.5rem;
	position: relative;
}
.hs-wrap .symbol {
	position: absolute;
	top: 60%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 25%;
}
.sec01_top {
	margin: 0 auto 12.5rem;
    width: 95vw;
    max-width: 62.5rem;
}
.sec01_top p {
	font-size: 1.25rem;
	font-weight: 600;
	color: #3F3F41;
	letter-spacing: 0.2rem;
	line-height: 2.2rem;
}
.sec02_top {
	width: 95vw;
    margin: 0 auto 7.5rem;
}
.title_top {
	display: flex;
    align-items: center;
}
.title_top h2 {
	text-align: left;
	font-size: 2.25rem;
    color: #1B4288;
    letter-spacing: 0.2rem;
}
.title_top .dotted {
	font-size: 2.25rem;
    color: #1B4288;
    margin: 0 -0.2rem 0 -0.5rem;
}
.title_top .dec {
	text-align: left;
    color: #1B4288;
	padding: 0 0 0 1.25rem;
}
.title_top p {
	padding: 0 0 0 1.25rem;
}
.link-arrow01, .link-arrow02 {
	color: #1B4288;
    background: #FFF;
	padding: 0.9375rem;
    border: solid 1px #1B4288;
    text-align: left;
    display: flex !important;
    align-items: center;
    width: fit-content;
}
.link-arrow01 {
    margin: 0 0 0 3.75rem;
}
.link-arrow01:hover {
	background: #1B4288;
	color: #FFF;
}
.link-arrow01 svg, .link-arrow02 svg {
	fill: #1B4288;
    width: 100%;
    max-width: 14px;
	margin: 0 0 0 10px;
}
.link-arrow01:hover svg, .link-arrow02:hover svg {
	fill: #FFF;
}
.link-arrow02 {
    margin: 0 auto;
}
.link-arrow02:hover {
	background: #1B4288;
	color: #FFF;
}
.sec02_top .flex {
	display: flex;
}
.sec02_top ul {
	margin: 3.75rem auto 0;
    display: flex;
    flex-wrap: wrap;
    /*justify-content: center;*/
}
.sec02_top ul li {
	width: 21%;
	margin: 0 1.25rem 2.5rem;
}
.sec02_top ul li .flex {
	display: flex;
	justify-content: space-between;
	margin: 0.625rem 0;
}
.category-kaihou {
	background: #1B4288;
	letter-spacing: 0.5rem;
	padding: 0.2rem 0 0.2rem 0.5rem;
}
.category-news {
	background: #777;
	padding: 0.2rem 0;
}
.category-kaihou, .category-news {
	display: block;
	width: 5rem;
	color: #FFF;
    text-align: center;
    font-size: 0.875rem;
	border-radius: 0.2rem;
}
.post_date time {
	color: #8C8C8C;
    font-size: 0.875rem;
}
.sec02_top ul li h2 {
	font-weight: 500;
	text-align: left;
}
.sec03_top {
	margin: 0 auto 7.5rem;
	padding: 3.75rem 0;
	background: #F1F5F7;
}
.sec03_top_inner {
	width: 95vw;
	margin: 0 auto;
}
.sec03_top_inner .title_top div {
	display: flex;
	align-items: center;
}
.sec03_top ul {
	display: flex;
    justify-content: space-between;
	margin: 2.5rem auto 0;
	width: 90%;
}
.sec03_top ul a {
    width: 23.5%;
}
.sec03_top ul li {
	position: relative;
	z-index: 1;
    height: 18.75rem;
	border-radius: 0.5rem;
	box-shadow: 1px 1px 5px #AAA;
}
.sec03_top ul .first {
	background-image: url(/wp-content/themes/OriginalTMP/images/sec03_top_test01.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.sec03_top ul .second {
	background-image: url(/wp-content/themes/OriginalTMP/images/sec03_top_test02.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.sec03_top ul .third {
	background-image: url(/wp-content/themes/OriginalTMP/images/sec03_top03.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.sec03_top ul .forth {
	background-image: url(/wp-content/themes/OriginalTMP/images/sec03_top04.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.sec03_top ul a li div {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 3;
	background: linear-gradient(rgba(0,0,0,0),rgba(0,0,0,0.8));
	    width: 100%;
    height: 22%;
	border-radius: 0 0 0.5rem 0.5rem;
}
.sec03_top ul a li div h3 {
	color: #FFF;
	font-size: 1.25rem;
	font-weight: 600;
	    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    text-align: left;
    padding: 0 0 0 10px;
}
.sec04_top {
    width: 95vw;
    margin: 0 auto 7.5rem;
	display: flex;
	justify-content: center;
}
.sec04_top .flexbox {
	width: 50%;
    margin: 0 3.75rem;
}
.sec04_top .flexbox h3 {
	color: #3F3F41;
	font-size: 1.5rem;
	font-weight: 600;
	text-align: left;
	margin: 0 0 1rem;
}
.sec04_top .flexbox img {
	margin: 10px auto 0;
}
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(2rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.sec01_top, .sec02_top, .sec03_top, .sec04_top {
	animation: fadeIn linear;
	animation-timeline: view();
	animation-range: entry 0% cover 20%;
}
#header .logo, #header ul li a, .floating-bnr a, .floating-bnr a div, .floating-bnr .inner, #footer .ft_inner .logo, #footer .ft_inner .ft_menu li a, #footer .ft_inner .sns-icon a, #footer .ft_inner .bnr-box a, .link-arrow01, .link-arrow01 svg, .link-arrow02, .link-arrow02 svg, .triangle01, .sec02_top ul li a, .sec03_top ul a, #footer .ft_inner .link-pp, .breadcrumbs-list li a, .list_post li a, .sec_article .post-link li a, .pagenation .page-numbers li a, .nav-links .page-numbers, .prof01_text a, .sec02_overview table .link-tel, .link-underline, .wpcf7-form-control.wpcf7-submit.has-spinner, .table_privacy .link_contact {
	cursor: pointer;
    transition: all .3s;
    position: relative;
}
#header .logo:hover, #footer .ft_inner .logo:hover, #footer .ft_inner .sns-icon a:hover, #footer .ft_inner .bnr-box a:hover, .sec02_top ul li a:hover, .sec03_top ul a:hover, .breadcrumbs-list li a:hover, .list_post li a:hover, .sec_article .post-link li a:hover, .prof01_text a:hover, .sec02_overview table .link-tel:hover, .link-underline:hover, .table_privacy .link_contact:hover {
	opacity: 0.5;
}
#footer .ft_inner .link-pp:hover {
	color: #1B4288;
}
/* ここまでTOPページ */
/* フッター */
#footer {
	background: #F2F1F1;
	padding: 3.75rem 0 0.625rem;
}
#footer .ft_inner {
	width: 88vw;
	max-width: 62.5rem;
	margin: 0 auto;
	display: flex;
    justify-content: space-between;
}
#footer .ft_inner .ft_inner01 {
	width: 35%;
	display: block;
}
#footer .ft_inner .ft_inner02 {
	width: 65%;
	display: block;
}
#footer .ft_inner .logo {
	margin: 0 auto 0 0;
    display: block;
	width: 18.75rem;
}
#footer .ft_inner .info {
	text-align: left;
	color: #3F3F41;
}
#footer .ft_inner .info span {
	font-size: 1.125rem;
}
#footer .ft_inner .info p {
	font-size: 0.9375rem;
}
#footer .ft_inner .sns-icon {
	margin: 1.25rem 0 0;
	text-align: left;
}
#footer .ft_inner .sns-icon a {
	width: 1.875rem;
}
#footer .ft_inner .sns-icon a:first-child {
	margin: 0 1rem 0 0;
}
#footer .ft_inner .link-pp {
	color: #3F3F41;
	text-align: left;
	font-weight: 600;
    display: block;
    margin: 1.25rem 0 0;
}
#footer .ft_inner .ft_menu {
	display: flex;
    justify-content: end;
	margin: 0 0 2.5rem;
}
#footer .ft_inner .ft_menu li a {
	color: #1B4288;
	font-weight: 600;
}
#footer .ft_inner .ft_menu li a:hover {
	color: #000;
}
#footer .ft_inner .ft_menu li {
	padding: 0 1.25rem 0 0;
}
#footer .ft_inner .ft_menu li:last-child {
	padding: 0;
}
#footer .ft_inner .btn-box {
	display: flex;
    justify-content: end;
}
#footer .ft_inner .btn01, .sec01_member_inner .document_box a {
	background: #1B4288;
    color: #FFF;
    font-weight: 600;
    padding: 1rem 0;
    width: 12.5rem;
    border-radius: 2rem;
	cursor: pointer;
    transition: all .3s;
    position: relative;
}
#footer .ft_inner .btn01:hover {
	background: #FFF;
	color: #1B4288;
	border: solid 1px #1B4288;
}
.sec01_member_inner .document_box a:hover {
	background: #FFF;
	color: #1B4288;
	border: solid 1px #1B4288;
}
#footer .ft_inner .btn01:last-child {
	margin: 0 0 0 1.875rem;
}
#footer .ft_inner .bnr-box {
	display: flex;
    flex-wrap: wrap;
    justify-content: end;
	margin: 3.75rem 0 0;
}
#footer .ft_inner .bnr-box a {
	width: 18%;
	height: auto;
	margin: 0.625rem;
}
.copyright {
	font-size: 0.75rem;
	color: #8C8C8C;
	margin: 2.5rem 0 0;
}
/* ここまでフッター */
/* パンくずリスト */
.breadcrumbs-list {
	margin-bottom: 10px;
	width: 95vw;
}
.breadcrumbs-list ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: end;
	align-items: center;
}
.breadcrumbs-list li {
	line-height: 2;
	font-size: 12px;
}
.breadcrumbs-list li:not(:first-child) {
	padding-left: 5px;
}
.breadcrumbs-list li .arrow {
	margin-right: 5px;
}
.breadcrumbs-list li a {
	color: #333;
	font-size: 12px;
}
/* ここまでパンくずリスト */
/* 投稿ページ */
.sec_archive-post {
	width: 95vw;
	max-width: 62.5rem;
	margin: 7.5rem auto;
}
.list_post li {
	border-bottom: solid 1px #AAA;
    padding: 0 0 1.25rem;
    margin: 0 auto 2.5rem;
}
.list_post li a {
	display: flex;
}
.list_post li a .post_thumbnail {
	width: 100%;
    max-width: 18.75rem;
}
.list_post li a .content {
	display: flex;
    flex-flow: column;
    justify-content: center;
    padding: 0 0 0 1.25rem;
}
.list_post li a .content .post_title {
	text-align: left;
}
.content .category-kaihou, .content .category-news, .content .post_date, .content .post_title {
	margin: 0 0 0.3125rem;
}
.content p, .content .post_date {
	text-align: left;
}
.pagenation .page-numbers, .nav-links {
	display: flex;
    justify-content: center;
}
.pagenation .page-numbers li, .nav-links .page-numbers {
	margin: 0 3px;
}
.pagenation .page-numbers li .page-numbers.current, .nav-links .page-numbers.current {
	background: #1B4288;
    color: #FFF;
    padding: 4px 7px;
}
.pagenation .page-numbers li a, .nav-links .page-numbers {
	background: #FFF;
	color: #AAA;
	border: solid 1px #AAA;
	padding: 3px 6px;
}
.pagenation .page-numbers li a:hover, .nav-links .page-numbers:hover {
	background: #1B4288;
	color: #FFF;
	border: solid 1px #1B4288;
}
.sec_article {
	width: 95vw;
	max-width: 62.5rem;
	margin: 7.5rem auto;
}
.sec_article .article-title {
	text-align: left;
    font-size: 1.875rem;
    border-bottom: solid 1px #DDD;
    padding: 0 0 1rem;
	margin: 0 auto 1.5rem;
}
.sec_article .post_thumbnail {
	width: 90%;
	max-width: 50rem;
    margin: 0 auto 1.25rem;
}
.sec_article .meta {
	display: flex;
    width: 95%;
    margin: 0 auto 2.5rem;
}
.sec_article .meta .date {
	margin: 0 0 0 1rem;
}
.sec_article .content {
	width: 95%;
    max-width: 50rem;
    margin: 0 auto 3.75rem;
	text-align: left;
}
.sec_article .post-link {
	display: flex;
    justify-content: center;
    width: 95%;
    margin: 0 auto;
}
.sec_article .post-link li:first-child {
	margin: 0 2rem 0 0;
}
.sec_article .post-link li:last-child {
	margin: 0 0 0 2rem;
}
.sec_article .post-link li a {
	border-bottom: solid 1px #AAA;
}
/* ここまで投稿ページ */
/* 固定ページ */
.page_thum {
	position: relative;
    overflow: hidden;
    width: 100%;
    height: 60dvh;
}
.page_thum img {
	position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 85dvh;
    object-fit: cover;
}
.page-wrap {
	width: 100%;
	height: auto;
	padding: 7.5rem 0;
}
.title01, .sec01_about h1, .sec03_about h2, .sec01_annual h1, .sec01_invite h1, .sec01_contact h1, .sec01_privacy h1, .sec01_member h1 {
	font-size: 2.25rem;
    color: #1B4288;
    letter-spacing: 0.2rem;
}
.title02 {
	font-size: 1.25rem;
    color: #1B4288;
    letter-spacing: 0.2rem;
	margin: 0 auto 0.625rem;
}
.sec01_mem, .sec03_mem {
	width: 95vw;
    margin: 0 auto;
}
.flex01_mem {
	width: 100%;
    padding: 5rem 0 2.5rem;
    display: flex;
	justify-content: center;
}
.sec03_mem {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.chairman {
	width: 100%;
    background: #EDF3FF;
    padding: 2.5rem 0 0.625rem;
	margin: 0 auto 3.75rem;
}
.chairman .prof01 {
	width: fit-content;
	margin: 0 auto;
}
.prof01 {
	width: 50%;
}
.prof01_inner {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding: 0 0 1.875rem;
}
.prof_photo {
	display: flex;
	width: 100%;
	max-width: 10rem;
}
.prof01_text {
	margin: auto 0;
	padding: 0 0 0 1.25rem;
}
.prof01_text .business {
	text-align: left;
	line-height: 1.2;
}
.prof01_text .name {
	text-align: left;
	font-size: 1.25rem;
	font-weight: 500;
}
.prof01_text .name span {
	font-size: 0.875rem;
	font-weight: 400;
	padding: 0 0 0 0.625rem;
}
.prof01_text a {
    text-align: left;
    display: block;
    padding: 1.25rem 0 0;
    font-size: 0.9375rem;
    text-decoration: underline;
}
.sec01_about {
	margin: 7.5rem auto;
	width: 95vw;
}
.sec01_about h1 {
	margin: 0 0 2.5rem;
}
.concept_about {
	font-size: 1.125rem;
	font-weight: 600;
	letter-spacing: 0.2rem;
	line-height: 2rem;
	margin: 0 auto 2.5rem;
}
.sec01_about .flex {
	display: flex;
    justify-content: center;
}
.sec01_about .flex .textbox {
	width: 42%;
	margin: auto 1rem auto 0;
}
.sec01_about .flex .textbox p {
	text-align: left;
	line-height: 2rem;
}
.sec01_about .flex .bg {
	width: 21.875rem;
}
.sec02_about {
	background: #EDF3FF;
	margin: 0 auto 5rem;
}
.sec02_about .inner {
	width: 95vw;
	margin: 0 auto;
	padding: 5rem 0;
}
.sec02_about .inner h2, .sec02_member h2 {
	font-size: 1.875rem;
	font-weight: 600;
	color: #1B4288;
	letter-spacing: 0.2rem;
	margin: 0 0 2.5rem;
}
.sec02_about .inner .des {
	text-align: left;
	width: 50rem;
	max-width: 100%;
	margin: 0 auto 1.875rem;
	line-height: 1.7rem;
}
.sec02_about .inner ul {
	display: flex;
    flex-wrap: wrap;
    justify-content: center;
	width: 60%;
    margin: 0 auto 5rem;
}
.sec02_about .inner ul li {
	background: #FFF;
    border: solid 1px #A0C9EB;
    font-size: 1.125rem;
    font-weight: 600;
    padding: 0.625rem 0;
    width: 12.5rem;
	margin: 0 0.3125rem 0.3125rem;
	border-radius: 0.2rem;
}
.sec02_about .inner .flex {
	display: flex;
    justify-content: space-between;
}
.sec02_about .inner .flex .box {
	background: #FFF;
    padding: 1.25rem;
	margin: 0 0.625rem;
	border-radius: 0.5rem;
    box-shadow: 1px 1px 5px #AAA;
}
.sec02_about .inner .flex .box:first-child {
	margin: 0 0.625rem 0 0;
}
.sec02_about .inner .flex .box:last-child {
	margin: 0 0 0 0.625rem;
}
.sec02_about .inner .flex .box .img-box {
	width: 100%;
    height: 10rem;
	display: flex;
    justify-content: center;
    align-items: center;
}
.sec02_about .inner .flex .box .img-box .first {
	width: 8.4375rem;
}
.sec02_about .inner .flex .box .img-box .second {
	width: 9.0625rem;
}
.sec02_about .inner .flex .box .img-box .third {
	width: 8.75rem;
}
.sec02_about .inner .flex .box .img-box .forth {
	width: 8rem;
}
.sec02_about .inner .flex .textbox {
	max-width: 16.75rem;
}
.sec02_about .inner .flex .textbox h3 {
	font-size: 1.25rem;
	line-height: 1.5rem;
	height: 3rem;
    margin: 0 auto 1rem;
    display: flex;
    justify-content: center;
    align-items: center;
}
.sec02_about .left {
	text-align: left;
}
.sec02_about .inner .feature {
	display: flex;
    justify-content: center;
    margin: 5rem auto 0;
}
.sec02_about .inner .feature .box {
	width: 100%;
    max-width: 20.625rem;
	margin: 0 1.875rem;
}
.sec02_about .inner .feature .box h4 {
	font-size: 1.375rem;
    font-weight: 600;
    color: #FFF;
    background: #1B4288;
    padding: 0.9375rem 0;
    margin: 0 auto 1.25rem;
    border-radius: 0.4rem;
}
.sec02_about .inner .feature .box p {
	text-align: left;
	line-height: 1.7rem;
}
.sec03_about {
	margin: 0 auto 6.875rem;
	width: 95vw;
}
.sec03_about h2 {
	margin: 0 auto 2.5rem;
}
.sec03_about .concept {
	background: #F1F1F1;
	width: 100%;
	max-width: 55rem;
	padding: 2.5rem;
	margin: 0 auto 1.875rem;
	text-align: left;
	border-radius: 0.4rem;
}
.sec03_about .concept h3 {
	font-size: 1.5rem;
	margin: 0 0 0.9375rem;
}
.sec03_about .concept h3, .sec03_about .concept ul li {
	font-weight: 600;
}
.sec03_about .concept p {
	margin: 0 0 0.625rem;
}
.sec03_about .concept ul {
	list-style: decimal;
    margin: 0 0 0 1.25rem;
}
.sec03_about .flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.sec03_about .flex .box {
	background: #FFF;
	padding: 1.875rem;
	margin: 0.625rem;
	width: 100%;
    max-width: 34.375rem;
	box-shadow: 1px 1px 5px #AAA;
	border-radius: 0.4rem;
	text-align: left;
}
.sec03_about .flex .box div {
	font-size: 0.875rem;
	color: #A0C9EB;
}
.sec03_about .flex .box h4 {
	font-size: 1.125rem;
	font-weight: 600;
	color: #1B4288;
	margin: 0 0 0.9375rem;
}
.sec01_overview {
	width: 95vw;
	margin: 7.5rem auto;
}
.sec01_overview .inner {
	width: 100%;
	max-width: 62.5rem;
	padding: 3.75rem 1.25rem;
	margin: 7.5rem auto;
	box-shadow: 1px 1px 5px #AAA;
    border-radius: 0.4rem;
}
.sec01_overview .inner h1 {
	font-size: 2.25rem;
	font-weight: 600;
	color: #1B4288;
	margin: 0 auto 2.5rem;
}
.sec01_overview .inner img {
	width: 15.625rem;
	border-radius: 0.4rem;
	margin: 0 auto 1.25rem;
}
.sec01_overview .inner .position {
	margin: 0 auto 1.25rem;
	width: 100%;
	position: relative;
}
.sec01_overview .inner .position .name {
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 2.5rem;
}
.sec01_overview .inner p {
	font-size: 1.125rem;
	line-height: 1.5rem;
}
.sec01_overview .inner p span {
	padding: 0 5px;
}
.sec01_overview .inner .sent01, .sec01_overview .inner .sent02 {
	text-indent: 1rem;
	text-align: left;
	font-size: 1rem;
    line-height: 1.7rem;
	width: 100%;
    max-width: 50rem;
}
.sec01_overview .inner .sent01 {
	margin: 0 auto 0.9375rem;
}
.sec01_overview .inner .sent02 {
	margin: 0 auto;
}
.sec01_overview .inner .target {
	width: 90%;
	margin: 1.875rem auto 0;
}
.sec01_overview .inner .target b {
	font-size: 1.25rem;
	font-weight: 600;
	margin: 0 auto 1.25rem;
}
.sec01_overview .inner .target ul {
	font-size: 1.125rem;
    text-align: left;
    list-style: decimal;
    display: inline-block;
    margin: 0.9375rem auto 0;
}
.sec02_overview {
	margin: 7.5rem auto 5rem;
}
.sec02_overview h2, .sec03_overview h2 {
	font-size: 1.875rem;
	font-weight: 600;
	color: #1B4288;
	margin: 0 auto 2.5rem;
}
.sec02_overview table {
	margin: 0 auto;
    width: 100%;
    max-width: 50rem;
}
.sec02_overview table tr {
	text-align: left;
}
.sec02_overview table tr:nth-child(odd) {
	background: #EDF3FF;
}
.sec02_overview table tr:nth-child(evev) {
	background: #FFF;
}
.sec02_overview table tr th, .sec02_overview table tr td {
	padding: 1.25rem 3.2rem 1.25rem 2.5rem;
}
.bl_br_430, .bl_br_375 {
	display: none;
}
.sec02_overview table tr th {
	font-weight: 600;
}
.sec02_overview table tr td span {
	padding: 0.2rem;
}
.sec03_overview {
	margin: 0 auto 7.5rem;
}
.sec03_overview iframe {
	width: 90%;
	max-width: 50rem;
}
.sec01_annual {
	width: 95vw;
    margin: 0 auto;
}
.sec01_annual .flex {
	display: flex;
    flex-wrap: wrap;
    justify-content: center;
	margin: 2.5rem auto 0;
}
.sec01_annual .flex .box {
	width: 100%;
    max-width: 25rem;
    margin: 0 1.25rem 2.5rem;
	border: solid 3px #1B4288;
    border-radius: 0.4rem;
}
.sec01_annual .flex .box h2 {
	font-size: 1.5rem;
	font-weight: 600;
	color: #FFF;
	background: #1B4288;
	padding: 1.25rem 0;
}
.sec01_annual .flex .box .inner {
	padding: 1.875rem 1.25rem;
}
.sec01_annual .flex .box .inner h3 {
	font-size: 1.125rem;
	margin: 1.25rem auto 0.3125rem;
}
.sec01_annual .flex .box .inner h3:first-child {
	margin: 0 auto 0.3125rem;
}
.sec01_annual .flex .box .inner .sent {
	display: flex;
	margin: 0 0 0.3125rem;
}
.sec01_annual .flex .box .inner .sent .date, .sec01_annual .flex .box .inner .sent .annual {
	line-height: 1.3rem;
}
.sec01_annual .flex .box .inner .sent .date {
	min-width: 5rem;
	text-align: right;
}
.sec01_annual .flex .box .inner .sent .annual {
	padding: 0 0 0 1rem;
	text-align: left;
}
.sec01_invite {
	width: 95vw;
	margin: 7.5rem auto;
}
.sec01_invite h1 {
	margin: 0 auto 2.5rem;
}
.sec01_invite p {
	text-align: left;
	margin: 0 auto 1.25rem;
	width: 100%;
    max-width: 50rem;
}
.sec01_invite .link-arrow02 {
	margin: 2.5rem auto 0;
}
.sec01_privacy {
	width: 95vw;
	max-width: 62.5rem;
	margin: 7.5rem auto;
}
.sec01_privacy h1 {
	margin: 0 auto 2.5rem;
}
.sec01_privacy .des01, .sec01_privacy .des02 {
	text-align: left;
	text-indent: 1rem;
	line-height: 1.7rem;
}
.sec01_privacy h2 {
	text-align: left;
    font-size: 1.5rem;
    margin: 2.5rem 0 0.625rem;
}
.sec01_privacy .list01, .sec01_privacy .list02, .sec01_privacy .list03 {
	text-align: left;
}
.sec01_privacy .list01 {
    margin: 0 0 0 2rem;
    list-style: disc;
}
.sec01_privacy .list02 {
    margin: 0 0 0 2rem;
    list-style: decimal;
}
.sec01_privacy .list03 {
    margin: 1.25rem 0 1.25rem 2rem;
    list-style: decimal;
}
.sec01_privacy .list03 li {
	margin: 0 0 0.3125rem;
}
.sec01_privacy .list04 {
    margin: 1.25rem 0 0 2rem;
    list-style: decimal;
}
.table_privacy {
	text-align: left;
    border-spacing: 0 0.5rem;
	margin: 1.25rem 0 0 1.25rem;
	width: 100%;
}
.table_privacy tr td {
	padding: 0 0 0 1.25rem;
}
.table_privacy .link_contact {
	color: #1B4288;
	font-weight: 600;
	border-bottom: solid 1px #1B4288;
}
.sec_404 {
	width: 95vw;
	margin: 7.5rem auto;
}
.sec_404 h1 {
	font-size: 5rem;
}
.sec_404 p {
	font-size: 2.5rem;
	margin: 0 auto 2.5rem;
}
.link_home {
	color: #1B4288;
    background: #FFF;
    border: solid 1px #1B4288;
    padding: 0.9375rem 0;
    width: 12.5rem;
}
.tmp_thum {
	
}
/* ここまで固定ページ */
/* お問い合わせページ */
.sec01_contact {
	width: 95vw;
	max-width: 50rem;
	margin: 7.5rem auto;
}
.sec01_contact h1 {
	margin: 0 auto 2.5rem;
}
.sec01_contact .des {
	text-align: left;
	margin: 0 auto 1.25rem;
}
.CF7_table {
	width: 100%;
	margin: 5rem auto 0;
    text-align: left;
	border-spacing: 0 1.25rem;
}
.CF7_table tr {
	display: flex;
	margin: 0 0 1.875rem;
}
.CF7_table tr th {
	display: flex;
    justify-content: flex-start;
    width: 100%;
    min-width: 25rem;
    align-items: flex-start;
}
.CF7_table tr th p {
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.3rem;
	display: flex;
    justify-content: space-between;
	align-items: center;
    width: 65%;
}
.CF7_table tr td {
	width: 100%;
}
.wpcf7 input[name="your-name"] { /* 名前入力欄 */
 width: 100%;
}
.wpcf7 input[name="your-email"] { /* メール入力欄 */
 width: 100%;
}
.wpcf7 input[name="your-subject"] { /* タイトル入力欄 */
 width: 100%;
}
.wpcf7 textarea[name="your-message"] { /* 本文入力欄 */
 width: 100%;
}
.CF7_req {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.2rem;
	background: #A0C9EB;
	padding: 0.3125rem 0.625rem 0.3125rem 0.7rem;
    border-radius: 0.2rem;
	white-space: nowrap;
    height: fit-content;
}
.CF7_table .flex_radio {
	display: flex;
	flex-flow: column;
	width: 100%;
}
.wpcf7-list-item {
	display: block !important;
	margin: 0 !important;
}
.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required, .wpcf7-form-control.wpcf7-text, .wpcf7-form-control.wpcf7-textarea.wpcf7-validates-as-required {
	padding: 1rem 0 1rem 1rem;
	max-width: 28.125rem;
    width: 100%;
}
.link-underline {
	border-bottom: solid 1px #000;
}
.wpcf7-form-control.wpcf7-submit.has-spinner {
	color: #1B4288;
    background: #FFF;
    border: solid 1px #1B4288;
    padding: 0.9375rem 0;
    width: 12.5rem;
}
.wpcf7-form-control.wpcf7-submit.has-spinner:hover {
	color: #FFF;
    background: #1B4288;
    border: solid 1px #FFF;
}
.wpcf7-spinner {
	display: none !important;
}
form.post-password-form {
	margin: 15rem auto 10rem;
}
.sec01_member {
	width: 95vw;
    margin: 0 auto 5rem;
}
.sec02_member {
	width: 95vw;
    margin: 0 auto;
}
.sec01_member_inner {
	display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 100%;
	margin: 2.5rem auto 0;
}
.sec01_member_inner .document_box {
	width: 50%;
	margin: 0 0 3.75rem;
}
.sec01_member_inner .document_box p {
	font-size: 1.125rem;
    font-weight: 600;
	margin: 0 auto 0.625rem;
}
.sec02_member ul {
	width: 100%;
	max-width: 80%;
    margin: 0 auto;
}
.sec02_member ul li {
	border-bottom: solid 1px #DDD;
    padding: 0 0 0.625rem;
	margin: 0 auto 1.875rem;
    text-align: left;
}
.sec02_member ul li a .post_title {
	font-size: 1.25rem;
	margin: 0 0 0.3125rem;
}
/* ここまでお問い合わせページ */
@media (max-width: 1536px) {
}
@media (max-width: 1440px) {
}
@media (max-width: 1280px) {
	.sec02_top ul {
		width: 90%;
	}
	.sec03_top ul li {
		height: 16.75rem;
	}
	.sec02_about .inner .flex {
		flex-wrap: wrap;
		justify-content: center;
		width: 100%;
		margin: 0 auto;
	}
	.sec02_about .inner .flex .box, .sec02_about .inner .flex .box:first-child, .sec02_about .inner .flex .box:last-child {
		margin: 0 1rem 2rem;
	}
	.sec02_about .inner .flex .box {
		width: 100%;
		max-width: 25rem;
	}
	.sec02_about .inner .flex .textbox {
		margin: 0 auto;
	}
	.sec02_about .inner .feature .box {
		margin: 0 1.25rem;
		max-width: 18.625rem;
	}
	.sec03_about .flex {
		width: 90%;
		margin: 0 auto;
	}
	.sec03_about .flex .box {
		max-width: 28.125rem;
	}
}
@media (max-width: 1130px) {
	.non_br_1130 {
		display: none;
	}
	#footer .ft_inner .ft_menu {
		flex-wrap: wrap;
		justify-content: flex-start;
		width: 70%;
		margin: 0 0 2.5rem auto;
	}
	#footer .ft_inner .ft_menu li {
		text-align: left;
		padding: 0 1.25rem 0.625rem 0;
		width: fit-content;
	}
	.sec02_about .inner ul {
		width: 78%;
	}
	.sec02_about .inner .feature {
		flex-flow: column;
	}
	.sec02_about .inner .feature .box {
		max-width: 28.125rem;
		margin: 0 auto 2.5rem;
	}
	.sec02_about .inner .feature .box:last-child {
		margin: 0 auto;
	}
	.sec02_about .inner .flex .textbox h3 {
		height: auto;
	}
	.sec01_privacy .des01, .sec01_privacy .des02, .sec01_privacy .list01, .sec01_privacy .list02, .sec01_privacy .list03, .sec01_privacy .list04 {
		padding: 0 2.5rem 0 0;
	}
}
@media (max-width: 1024px) {
	#pcOnly, #header, .non_br_1024 {
		display: none;
	}
	.bl_br_1024 {
		display: block;
	}
	#spOnly {
		display: block;
	}
	.div#n2-ss-2 .n2-ss-slider-1 {
		/*min-height: 600px;*/
	}
	.sec01_top {
		width: 80vw;
	}
	.sec03_top ul li {
		height: 14.75rem;
	}
	.sec03_top ul a li div {
		font-size: 1.125rem;
	}
	.sec03_about .flex .box {
		max-width: 43.75rem;
		margin: 0 auto 1.25rem;
	}
	.sec03_about .flex .box:last-child {
		margin: 0 auto;
	}
	.sec03_about .concept {
		width: 90%;
	}
	.sec01_overview .inner .sent01, .sec01_overview .inner .sent02 {
		width: 90%;
	}
	.prof01_text {
		padding: 0 2.4rem 0 1.25rem;
	}
	.prof01_text .name {
		line-height: 1;
		padding: 0.4rem 0 0;
	}
	.prof01_text .name span {
		padding: 0;
	}
}
@media (max-width: 834px) {
	.non_br_834 {
		display: none;
	}
	.menu {
		width: 390px;
		left: -390px;
	}
	.menu li {
		width: 90%;
	}
	.hs-wrap .symbol {
		width: 45%;
	}
	#footer .ft_inner {
		width: 95vw;
		max-width: 50rem;
		flex-flow: column-reverse;
	}
	#footer .ft_inner .ft_menu {
		width: 90%;
	}
	#footer .ft_inner .ft_menu li a {
		font-size: 1.25rem;
	}
	.title01, .sec01_about h1, .sec03_about h2, .sec01_annual h1, .sec01_invite h1, .sec01_contact h1, .sec01_privacy h1, .sec01_overview .inner h1, .sec01_member h1 {
		font-size: 1.625rem;
	}
	.sec02_about .inner h2, .sec02_overview h2, .sec03_overview h2, .sec02_member h2 {
		font-size: 1.5rem;
	}
	.sec02_top ul {
        width: 100%;
		justify-content: center;
    }
	.sec02_top ul li {
		width: 40%;
	}
	.sec03_top_inner .title_top {
		flex-wrap: wrap;
	}
	.sec03_top_inner .title_top div {
		width: 100%;
	}
	.sec03_top_inner .title_top div p {
		padding: 0 0 0 0.125rem;
		text-align: left;
	}
	.sec03_top ul {
		width: 95%;
		flex-wrap: wrap;
	}
	.sec03_top ul a {
		width: 48%;
		margin: 0 0 1.25rem;
	}
	.sec03_top ul li {
		height: 18rem;
	}
	.sec03_top ul a li div {
		font-size: 1.25rem;
	}
	.sec04_top {
		flex-wrap: wrap;
	}
	.sec04_top .flexbox {
		width: 100%;
	}
	.sec04_top .flexbox:first-child {
		margin: 0 3.75rem 3.75rem;
	}
	.sec04_top .flexbox .fb_wrap {
		display: flex;
		flex-wrap: wrap;
	}
	.sec04_top .flexbox .fb_wrap iframe {
		width: 100%;
		max-width: 50%;
		height: auto;
		margin: 10px;
	}
	#footer .ft_inner, #footer .ft_inner .btn-box, #footer .ft_inner .bnr-box {
		justify-content: center;
	}
	#footer .ft_inner .ft_inner01, #footer .ft_inner .ft_inner02 {
		width: 80%;
		margin: 0 auto;
	}
	#footer .ft_inner .ft_menu {
		flex-flow: column;
	}
	#footer .ft_inner .ft_menu li {
		padding: 0 0 1.25rem;
	}
	#footer .ft_inner .bnr-box {
		margin: 3.75rem 0;
	}
	#footer .ft_inner .bnr-box a {
		width: 20%;
	}
	.sec01_about .flex {
		flex-flow: column-reverse;
	}
	.sec01_about .flex .textbox {
		width: 100%;
	}
	.sec01_about .flex .bg {
		width: 50%;
		margin: 0 auto 2.5rem;
	}
	.sec02_about .inner ul {
		width: 100%;
	}
	.sec02_about .inner .flex {
		width: 100%;
	}
	.sec03_about .concept {
		max-width: 43.75rem;
		width: 90%;
	}
	.sec01_annual .flex .box {
		margin: 0 auto 2.5rem;
	}
	.flex01_mem {
		flex-flow: column;
	}
	.sec03_mem {
		justify-content: center;
		flex-flow: column;
	}
	.chairman {
		width: 100vw;
		position: relative;
		left: 50%;
		transform: translateX(-50%);
	}
	.chairman .prof01 {
		width: 95%;
	}
	.prof01 {
		width: 100%;
		max-width: 34.375rem;
		margin: 0 auto;
	}
	.sec01_invite p, .sec01_contact .des {
		padding: 0 3rem 0 0;
	}
	.CF7_table {
		width: 58%;
	}
	.CF7_table tr {
		flex-flow: column;
	}
	.CF7_table tr th {
		margin: 0 0 0.625rem;
	}
	.CF7_table tr th p {
		width: 55%;
	}
	.CF7_table .flex_radio {
		padding: 0 0 0 0.9375rem;
	}
}
@media (max-width: 768px) {
	.CF7_table tr th p {
		width: 65%;
	}
}
@media (max-width: 744px) {
	.sec02_about .inner ul li {
		font-size: 1rem;
	}
	.sec02_about .inner .flex {
		flex-flow: column;
	}
	.sec02_about .inner .flex .box, .sec02_about .inner .flex .box:first-child, .sec02_about .inner .flex .box:last-child {
		margin: 0 auto 2rem;
	}
}
@media (max-width: 601px) {
	.sec01_member_inner {
		flex-flow: column;
	}
	.sec01_member_inner .document_box {
		margin: 0 auto 3.75rem;
	}
	.sec01_member_inner .document_box:last-child {
		margin: 0 auto;
	}
	.sec02_member ul {
		max-width: 100%;
	}
	.sec01_member_inner .document_box {
		width: 100%;
	}
}
@media (max-width: 430px) {
	.sp_hd_logo a {
		max-width: 210px;
	}
	.menu {
		width: 300px;
		left: -300px;
	}
	.menu li {
		width: 100%;
	}
	.menu a {
		font-size: 1.125rem;
	}
	.floating-bnr {
		top: unset;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
		flex-flow: unset;
		width: 100%;
	}
	.floating-bnr a {
		writing-mode: unset;
		text-orientation: unset;
		margin: 0;
		width: 50%;
		min-height: 100%;
	}
	.floating-bnr .inner {
		display: flex;
		justify-content: center;
		align-items: center;
		height: -webkit-fill-available;
	}
	/*Safariのみ*/
	_::-webkit-full-page-media, _:future, :root .floating-bnr .inner {
		height: -webkit-min-content;
	}
	.floating-bnr a img {
		vertical-align: sub;
		width: 1.5rem;
	}
	.floating-bnr a .margin {
		width: 1.125rem;
		margin: 0 0 0 0.3125rem;
	}
	.floating-bnr a img {
		margin: 0 0 0 0.5rem;
	}
	.icon01 {
		padding: 0 0 0 0.3125rem;
	}
	.icon01 #_2 {
		max-width: 14px;
	}
	.sec01_top p {
		font-size: 1.125rem;
	}
	.hs-wrap, .sec01_top {
		margin: 0 auto 7.5rem;
	}
	.hs-wrap .symbol {
		width: 80%;
	}
	.title_top h2, .sec02_top .flex .title_top .dotted {
		font-size: 1.625rem;
	}
	.sec02_top {
		margin: 0 auto 5rem;
	}
	.sec02_top .flex {
		flex-wrap: wrap;
	}
	.sec02_top .flex .link-arrow01 {
		margin: 0.625rem 0 0 0.3125rem;
	}
	.sec02_top .flex .title_top {
		width: 100%;
	}
	.sec02_top ul {
		margin: 2.5rem auto 0;
	}
	.sec02_top ul li {
		width: 100%;
		margin: 0 0 2.5rem;
	}
	.sec02_top ul li:last-child {
		margin: 0;
	}
	.sec03_top,.sec04_top  {
		margin: 0 auto 5rem;
	}
	.sec03_top_inner .title_top p {
		text-align: left;
		padding: 0 0 0 0.125rem;
	}
	.sec03_top ul a {
		width: 100%;
	}
	.sec03_top ul a li div {
		font-size: 1.5rem;
	}
	.sec04_top .flexbox {
		margin: 0 auto;
	}
	.sec04_top .flexbox:first-child {
		margin: 0 auto 3.75rem;
	}
	#footer {
		margin: 0 auto 3.75rem;
	}
	#footer .ft_inner .ft_inner01 {
		width: 95%;
	}
	#footer .ft_inner .ft_inner02 {
		width: 100%;
	}
	#footer .ft_inner .ft_menu {
		margin: 0 auto 2.5rem;
	}
	#footer .ft_inner .btn-box {
		flex-flow: column;
		align-items: center;
	}
	#footer .ft_inner .btn01:last-child {
		margin: 1.875rem 0 0;
	}
	#footer .ft_inner .bnr-box a {
		width: 28%;
	}
	.sec01_about .flex .bg {
		width: 80%;
	}
	.concept_about {
		text-align: left;
	}
	.sec02_about .inner ul li {
		width: 100%;
		max-width: 25rem;
	}
	.sec02_about .inner .flex .box {
		width: 100%;
		max-width: 25rem;
	}
	.sec02_about .inner .feature .box {
		max-width: 100%;
	}
	.sec03_about .flex {
		width: 100%;
	}
	.sec03_about .flex .box {
		max-width: 25rem;
		margin: 0 auto 1.25rem;
	}
	.sec03_about .concept h3 {
		font-size: 1.25rem;
	}
	.sec03_about .concept {
		padding: 1.5rem;
	}
	.sec01_overview .inner .position .business {
		font-size: 1rem;
	position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
}
.sec01_overview .inner .position .name {
	line-height: 1rem;
	padding: 55px 0 0;
}
	.sec01_overview .inner .sent01, .sec01_overview .inner .sent02 {
		width: 100%;
	}
	.sec02_overview table tr th, .sec02_overview table tr td {
		padding: 1rem;
		font-size: 0.9375rem;
	}
	.sec02_overview table tr th {
		width: 27%;
		white-space: nowrap;
	}
	.bl_br_430 {
		display: block;
	}
	.sec02_overview table tr td span, .sec01_invite p, .sec01_privacy .des01, .sec01_privacy .des02, .sec01_privacy .list01, .sec01_privacy .list02, .sec01_privacy .list03, .sec01_privacy .list04, .table_privacy tr td, .sec01_contact .des {
		padding: 0;
	}
	.sec01_privacy h2 {
		font-size: 1.25rem;
	}
	.sec01_privacy .list03 {
		margin: 1.25rem 0 1.25rem 1rem;
	}
	.sec01_privacy .list04 {
		margin: 1.25rem 0 0 1rem;
	}
	.table_privacy {
		margin: 1.25rem 0 0;
	}
	.table_privacy tr th, .table_privacy tr td {
		display: block;
	}
	.CF7_table {
		width: 100%;
	}
	.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required, .wpcf7-form-control.wpcf7-text, .wpcf7-form-control.wpcf7-textarea.wpcf7-validates-as-required {
		max-width: 100%;
	}
	.CF7_table tr th {
		min-width: unset;
	}
	.CF7_table tr th p {
		font-size: 1rem;
	}
	.sec01_about, .sec01_overview, .sec01_invite {
		margin: 5rem auto;
	}
	.sec01_overview .inner {
		margin: 5rem auto 0;
	}
	.sec02_overview {
		margin: 5rem auto 3.75rem;
	}
	.sec03_overview {
		margin: 0 auto 5rem;
	}
	.sec02_about .inner {
		padding: 3.75rem 0;
	}
	.sec03_about .concept ul {
		margin: 0 0 0 1.5rem;
	}
	.page-wrap {
		padding: 5rem 0;
	}
	.flex01_mem {
		padding: 2.5rem 0 1.875rem;
	}
	.prof01_text .name {
		padding: 0.9375rem 0 0;
	}
	.prof01_text .name {
		font-size: 1.125rem;
	}
	.sec_article {
		margin: 5rem auto;
	}
	.sec_article .article-title {
		font-size: 1.5rem;
	}
	.list_post li a {
		flex-flow: column;
	}
	.list_post li a .post_thumbnail {
		max-width: 90%;
		margin: 0 auto;
	}
	.page_thum {
		height: 50dvh;
	}
	.page_thum img {
		height: 60dvh;
	}
}
@media (max-width: 428px) {
}
@media (max-width: 414px) {
	#footer .ft_inner .bnr-box a {
		width: 44%;
	}
}
@media (max-width: 393px) {
}
@media (max-width: 390px) {
}
@media (max-width: 375px) {
	.bl_br_375 {
	display: block;
}
}
@media (max-width: 360px) {
	#footer .ft_inner .bnr-box a {
		width: 40%;
	}
	#footer .ft_inner .logo {
		width: 100%;
	}
	.floating-bnr .inner {
		font-size: 0.875rem;
	}
	.CF7_table tr th p {
		width: 75%;
	}
}
@media (max-width: 320px) {
}