@charset "utf-8";
/* ===========================================================
 *
 * 高崎青年経営者協議会 スタイルシート
 * Last UpDate : 2025/02/03
 *
=========================================================== */

/* ----------------------------------------------------------
	style.css
---------------------------------------------------------- */
/* noto-sans-jp-regular - japanese */
@font-face {
  font-display: swap;
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  src: url('noto-sans-jp-v52-japanese-regular.woff2') format('woff2');
}
/* noto-sans-jp-500 - japanese */
@font-face {
  font-display: swap;
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 500;
  src: url('noto-sans-jp-v52-japanese-500.woff2') format('woff2');
}
/* noto-sans-jp-600 - japanese */
@font-face {
  font-display: swap;
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 600;
  src: url('noto-sans-jp-v52-japanese-600.woff2') format('woff2');
}
/* noto-sans-jp-700 - japanese */
@font-face {
  font-display: swap;
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  src: url('noto-sans-jp-v52-japanese-700.woff2') format('woff2');
}
/* noto-serif-jp-regular - japanese */
@font-face {
  font-display: swap;
  font-family: 'Noto Serif JP';
  font-style: normal;
  font-weight: 400;
  src: url('noto-serif-jp-v28-japanese-regular.woff2') format('woff2');
}
/* cabin-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Cabin';
  font-style: normal;
  font-weight: 400;
  src: url('cabin-v27-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* ----------------------------------------------------------
 common
---------------------------------------------------------- */

html{ font-size: 62.5%; scroll-behavior: smooth; scroll-padding-top: 80px; }
body {
	color: #333;
	background-color: #fff;
	font-family: "azo-sans-web", "Helvetica Neue", "Helvetica", 'Noto Sans JP', "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 1px;
	font-feature-settings: "palt";
	font-size: 16px;
	font-size: 1.6rem;
	margin: 0;
	padding-top: 140px;
	
}

/*
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, .h2Wrap{ line-height: 1.7 !important; }

}
*/


.mb0{ margin-bottom: 0 !important; }

/* a.anker{ display: block; padding-top: 100px; margin-top: -100px; } */

:root{
	--main-color: #09f;
	--second-color: #545454;
	--member-color: #fba430;
	--contact-color: #077dcc;
	--btn-color: #29b287;
}

strong{ font-weight: bold !important; }

/* ハイフン無しで入力削除 */
#autozip {
   display: none !important;
}

/* ----------------------------------------------------------
 link
---------------------------------------------------------- */
a:link		{ color: #333; text-decoration: none; }
a:visited	{ color: #333; text-decoration: none; }
a:hover		{ color: var(--main-color); text-decoration: none; }
a:active	{ color: var(--main-color); text-decoration: none; }

a { -ms-filter: "alpha( opacity=60 )"; -webkit-transition: 0.5s ease-in-out; -moz-transition: 0.5s ease-in-out; -o-transition: 0.5s ease-in-out; transition: 0.5s ease-in-out; }

/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
header{ position: fixed; top: 0; width: 100%; height: 140px; z-index: 100; box-shadow: 0px 8px 16px -6px rgba(0,0,0,0.1); }

.header_sec01{ display: flex; justify-content: space-between; background-color: var(--main-color); height: 80px; padding: 0 5%; }

.header_logo{ flex-basis: 25%; height: 80px; text-align: right; }


.header_logo_sec{ }
.header_logo_sec img{ }
.header_logo_sec a{ display: block; line-height: 65px; }
.header_logo_sec a:hover{ opacity: 0.6; }

.header_info{ flex-basis: 400px; max-width: 28%; width: 400px; display: flex; justify-content: space-between; flex-wrap: wrap; padding-top: 20px; }
.header_add{ flex-basis: 100%; color: #fff; font-size: 1.1rem; line-height: 1; text-align: center; }
.header_telfax{ flex-basis: 100%; display: flex; justify-content: space-between; font-family: 'Cabin'; }
.header_telfax01{ flex-basis: 50%; font-size: 2.2rem; color: #fff; letter-spacing: 2px; }
.header_telfax01:last-child{ text-align: right; }
.header_telfax01 span{ font-size: 1.3rem; }


.header_sec02{ background-color: #545454; display: flex; justify-content: center; }

.gnavi{  }
.gnavi_list{ display: flex; justify-content: center; align-items: center; }

.gnavi_list li > a{ display: block; font-size: 1.5rem; color: #fff; font-weight: 600; letter-spacing: 3px; padding: 0 15px; white-space: nowrap; line-height: 60px; }
.gnavi_list li > a:hover{ background-color: #222; }

.gnavi_list li{ position: relative; }
.gnavi_list li .sub-menu{ display: none; position: absolute; top: 60px; left: -50px; transition: all .3s; }
.gnavi_list li:hover .sub-menu{ display: block; }
.gnavi_list li .sub-menu > li{ background-color: #545454; height: 50px; transition: all .3s; position: relative; }
.gnavi_list li .sub-menu > li a{ display: block; height: 50px; line-height: 50px; }
.gnavi_list li .sub-menu > li a:hover{ background-color: #222; }


.header_member{ }
.header_member a{ display: block; padding: 0 15px; background-color: var(--member-color); color: #333; font-size: 1.5rem; font-weight: 600; line-height: 60px; }
.header_member a i{ font-size: 2rem; margin-right: 10px; }
.header_member a:hover{ color: var(--member-color); background-color: #333; }





/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */

footer{ background-color: #222; padding: 60px 0 20px 0; }
.footer_logo{ width: 300px; margin: 0 auto 20px auto; }
.footer_logo a:hover{ opacity: .6; }
.footer_add{ font-size: 1.2rem; color: #a7a7a7; letter-spacing: 2px; text-align: center; }


.footer_telfax{ margin: 0 auto; display: flex; justify-content: center; align-content: center; font-family: 'Cabin'; }
.footer_telfax01{ font-size: 2.2rem; color: #a7a7a7; letter-spacing: 2px; margin: 0 1%; }
.footer_telfax01 span{ font-size: 1.3rem; }

.footer_btn{ width: 50%; margin: 0 auto; display: flex; justify-content: space-between; }

.footer_memberonly_btn{ flex-basis: 47%; margin: 20px auto 30px auto; }
.footer_memberonly_btn a{ display: block; color: #222; font-size: 2rem; text-align: center; font-weight: 700; padding: 20px; border-radius: 5px; background-color: var(--member-color); border: 1px solid var(--member-color); }
.footer_memberonly_btn a i{ margin-right: 10px; }
.footer_memberonly_btn a:hover{ background-color: #222; color: var(--member-color); }

.footer_contact_btn{ flex-basis: 47%; margin: 20px auto 30px auto; }
.footer_contact_btn a{ display: block; color: #fff; font-size: 2rem; text-align: center; font-weight: 700; padding: 20px; border-radius: 5px; background-color: var(--main-color); border: 1px solid var(--main-color); }
.footer_contact_btn a i{ margin-right: 10px; }
.footer_contact_btn a:hover{ background-color: #222; color: #fff; }

.footer_copyright{ font-size: 1.2rem; color: #ccc; text-align: center; letter-spacing: 2px; }


.footer_nav{ margin-bottom: 20px; }
.footer_nav_list{ display: flex; justify-content: center; }
.footer_nav_item{}
.footer_nav_item a{ font-size: 1.4rem; color: #fff; }
.footer_nav_item a:hover{ opacity: .6; }



/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */

.h1_wrap{ padding: 40px 0; background-color: #f5f5f5; }
.h1_wrap_sec{ text-align: center; }
.h1_01{ font-size: 1.3rem; font-family: 'Cabin'; letter-spacing: 2px; font-weight: 700; }
.h1_wrap_sec h1{ font-size: 4rem; letter-spacing: 3px; }


h2{ font-size: 3.5rem; color: #333; font-weight: 400; text-align: center; letter-spacing: 4px; padding-bottom: 20px; border-bottom: 2px solid var(--main-color); margin-bottom: 30px; line-height: 1.2; }
h2 span{ display: block; font-size: 2rem; font-weight: 400; }

h3{ font-size: 2.2rem; color: #666; font-weight: 700; letter-spacing: 2px; background-color: #eee; padding: 15px; text-align: center; border-radius: 10px; margin-bottom: 20px; }


/* ぱんくず */
 
.breadcrumbs_sec{ flex-basis: 100%; text-align: center; } 
.breadcrumbs_sec > span{ display: inline-block; position: relative; color: #333; font-size: 1.2rem; }
.breadcrumbs_sec > span span{ margin-left: 15px; }
.breadcrumbs_sec > span a span{ margin-left: 0; }
.breadcrumbs_sec > span:first-child span{ margin-left: 0; }
.breadcrumbs_sec > span br{ display: none; }
.breadcrumbs_sec > span:before{ content: "/"; display: block; position: absolute; top: 0; left: 5px; color: #333; font-size: 12px; }
.breadcrumbs_sec span:first-child:before{ content: ""; margin-left: 0; }
.breadcrumbs_sec > span a{ color: #333; font-size: 1.2rem; margin: 0 0 0 20px; }
.breadcrumbs_sec > span:first-child a{ margin: 0 0 0 0; }
.breadcrumbs_sec span a:hover{ opacity: 0.6; }

/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */

.main{  }
.contents{ width: 1300px; margin: 0 auto; }

.top_img_wrap{ background-color: #f5f5f5; padding: 50px 0; margin-bottom: 20px; }
.top_img{ width: 1300px; margin: 0 auto; }


.splide__slide img {
height: auto;
width: 100%;
}

.top_img_catch01{ font-size: 5rem; text-align: center; letter-spacing: 5px; margin-top: 30px; }
.top_img_catch01 span{ font-weight: 700; }
.top_img_catch02{ font-size: 2rem; text-align: center; letter-spacing: 3px; }


.top_contents{ width: 90%; max-width: 1300px; margin: 0 auto; }
.top_contents_list{ display: flex; justify-content: space-between; }
.top_contents_item{ }
.top_contents_item_btn{ flex-basis: 60%; }
.top_contents_btn_list{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.top_contents_btn_item{ flex-basis: 49%; margin-bottom: 20px; position: relative; overflow: hidden; }
.top_contents_item_news{ flex-basis: 36%; }
.top_contents_tit{ display: flex; justify-content: space-between; align-items: center; background-color: #545454; }
.top_contents_tit01{ position: relative; color: #fff; font-size: 2.6rem; font-weight: 700; padding: 0 10px 0 40px; letter-spacing: 3px; height: 60px; line-height: 60px; }
.top_contents_tit01:before{ position: absolute; content: ""; top: 23px; left: 15px; transform: rotate(45deg); width: 10px; height: 10px; border-top: 3px solid #fff; border-right: 3px solid #fff; }
.top_contents_btn01{}
.top_contents_btn01 a{ display: block; color: #fff; font-size: 1.8rem; font-weight: 700; background-color: var(--main-color); height: 60px; line-height: 60px; padding: 0 20px; text-align: center; }
.top_contents_btn01 a:hover{ background-color: #333; }
.top_contents_txt{ border: 1px solid #ccc; padding: 15px 30px 30px 30px; height: 390px; overflow: hidden; }

.top_contents_tit02{ font-size: 2rem; font-weight: 700; margin-bottom: 10px; }
.top_contents_img01{ float: right; }
.top_contents_btn02{ width: 150px; margin-top: 10px; }
.top_contents_btn02 a{ display: block; color: #fff; font-size: 1.6rem; text-align: center; padding: 5px 20px; border-radius: 40px; background-color: var(--main-color); border: 1px solid var(--main-color); }
.top_contents_btn02 a:hover{ background-color: #fff; color: var(--main-color); }

.top_contents_btn_item:after{ position: absolute; content: ""; display: block; width: 100%; height: 100%; top: 0; transition: all .3s ease-out; }
.top_contents_btn_item a{ display: block; position: relative; z-index: 1; height: 100%; color: #fff; padding: 40px; }

.top_contents_btn_item_ico01{ }
.top_contents_btn_item_ico01 i{ font-size: 5rem; line-height: 1; }
.top_contents_btn_item_tit01{ color: #fff; }
.top_contents_btn_item_tit01 span{ color: #fff; font-size: 2rem; font-family: 'Cabin'; }
.top_contents_btn_item_tit01 p{ color: #fff; font-size: 3.5rem; font-weight: 700; }


.top_contents_btn_item_guide:after{ background: url("/info/wp-content/uploads/btn_guide01.jpg"); background-size: cover; }
.top_contents_btn_item_report:after{ background: url("/info/wp-content/uploads/btn_report01.jpg"); background-size: cover; }
.top_contents_btn_item_list:after{ background: url("/info/wp-content/uploads/btn_list01.jpg"); background-size: cover; }
.top_contents_btn_item_memberonly:after{ background: url("/info/wp-content/uploads/btn_membersonly01.jpg"); background-size: cover; }


.top_contents_btn_item_guide:hover:after,
.top_contents_btn_item_report:hover:after,
.top_contents_btn_item_list:hover:after,
.top_contents_btn_item_memberonly:hover:after{ opacity: 1; transform: scale(1.1); }

.top_contents_btn_item_guide:before,
.top_contents_btn_item_report:before,
.top_contents_btn_item_list:before,
.top_contents_btn_item_memberonly:before{ z-index: 1; content: ""; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; ; }

.top_contents_btn_item:before{ transition: all .3s ease-out; }

.top_contents_btn_item:before{ background: rgba(0,132,204,.8); mix-blend-mode: multiply; }
.top_contents_btn_item_memberonly:before{ background: rgba(251,164,47,.8); mix-blend-mode: multiply; }


.top_sns{ margin: 20px 0 40px 0; }
.top_sns_list{ display: flex; justify-content: center; }
.top_sns_item{ width: 400px; margin: 0 10px; }
.top_sns_item a{ display: block; text-align: center; font-size: 2rem; padding: 20px; color: #fff; font-family: 'Cabin','Noto Sans JP'; letter-spacing: 2px; }
.top_sns_item a i{ margin-right: 10px; font-size: 3rem; vertical-align: middle; }
.top_sns_item_instagram a{ background: linear-gradient(45deg, rgba(254,212,117,1) 0%,rgba(229,61,93,1) 50%,rgba(194,49,134,1) 70%,rgba(156,56,187,1) 100%); border: 1px solid #e20037; }
.top_sns_item_facebook a{ background-color: #0866ff; border: 1px solid #0866ff; }
.top_sns_item_instagram a:hover{ opacity: .6; }
.top_sns_item_facebook a:hover{ opacity: .6; }


.top_information{ background-color: #f5f5f5; padding: 60px 0; }
.top_information_list{ width: 90%; max-width: 1300px; margin: 0 auto; display: flex; justify-content: space-between; }
.top_information_item{ flex-basis: 49%; }

.top_information_item_list{ margin-top: 20px; }
.top_information_item_item{ display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #ccc; padding: 0 0 15px 0; margin-bottom: 15px; }
.top_information_item_item_date01{ flex-basis: 15%; font-size: 1.4rem; }
.top_information_item_item_tit01{ flex-basis: 80%; font-size: 1.8rem; font-weight: 700; }


.top_information_tit{ display: flex; justify-content: space-between; align-items: center; background-color: #545454; }
.top_information_tit01{ position: relative; color: #fff; font-size: 2.6rem; font-weight: 700; padding: 0 10px 0 40px; letter-spacing: 3px; height: 60px; line-height: 60px; }
.top_information_tit01:before{ position: absolute; content: ""; top: 23px; left: 15px; transform: rotate(45deg); width: 10px; height: 10px; border-top: 3px solid #fff; border-right: 3px solid #fff; }
.top_information_btn01{}
.top_information_btn01 a{ display: block; color: #fff; font-size: 1.8rem; font-weight: 700; background-color: var(--main-color); height: 60px; line-height: 60px; padding: 0 20px; text-align: center; }
.top_information_btn01 a:hover{ background-color: #333; }


/* ページ内アンカー */
.anker_nav{  }
.anker_nav > nav{ display: block; }
.anker_nav > nav ul{ width: 30%; margin: 0 auto 60px auto; display: flex; justify-content: center;  flex-wrap: wrap; background-color: var(--main-color); padding: 15px; border-radius: 0 0 10px 10px; }
.anker_nav > nav li{ position: relative; margin: 0 0 0 30px; color: #fff; }
.anker_nav > nav li a{ font-size: 1.5rem; color: #fff; }
.anker_nav > nav li:before{ content: "/"; display: block; position: absolute; top: 3px; left: -15px; font-size: 1.5rem; }
.anker_nav > nav li:first-child:before{ content: ""; margin-left: 0; }



.page_sec{ width: 1200px; max-width: 90%; margin: 0 auto; }
.page_sec p{ font-size: 1.8rem; letter-spacing: 2px; line-height: 1.8; margin-bottom: 30px; }


.about .page_sec p,
.guide .page_sec p,
.privacy_sec p{ width: 90%; margin: 0 auto 30px auto; }

.about_list{}
.about_item{ padding: 15px; border-bottom: 1px solid #ccc; display: flex; justify-content: flex-start; }
.about_item01_tit01{ flex-basis: 12%; position: relative; padding-left: 30px; }
.about_item01_tit01:before{ position: absolute; content: ""; left: 0; top: 5px; width: 15px; height: 15px; border-radius: 100%; background-color: var(--main-color); }
.about_item01_dot01{ flex-basis: 6%; }
.about_item01_txt01{}


.about_history_list{}
.about_history_item{ padding: 15px; border-bottom: 1px solid #ccc; display: flex; justify-content: flex-start; }
.about_history_year{ flex-basis: 20%; }
.about_history_list01{ flex-basis: 50%; margin-left: 30px; }
.about_history_item01{ list-style-type: disc; }
.about_history_txt01{ flex-basis: 30%; }
.about_history_item_tit{ background-color: var(--main-color); border-bottom: 0; color: #fff; font-weight: 600; }
.about_history_item_tit .about_history_year{}
.about_history_item_tit .about_history_list01{ margin-left: 0; }
.about_history_item_tit .about_history_item01{ list-style-type: none; }
.about_history_item_tit .about_history_item01_tit{}
.about_history_item_tit .about_history_txt01_tit{}


.greeting .page_sec{ width: 90%; max-width: 1100px; }
.greeting .page_sec p{ font-size: 1.6rem; letter-spacing: 2px; line-height: 2.2; margin-bottom: 30px; }

.greeting_img01{}
.greeting_img01 figure{ margin: 0 0 30px 60px !important; }
.greeting_img01 figcaption{ text-align: center; font-size: 3rem; font-weight: 700; }
.greeting_img01 figcaption span{ text-align: center; font-size: 1.7rem; font-weight: 400; }
.wp-block-image :where(figcaption){ margin-top: 0 !important; margin-bottom: 0 !important; }

.greeting_name01{ text-align: right !important; font-size: 1.9rem !important; line-height: 1.4 !important; }


.list01{}
.list01 > li{ position: relative; font-size: 1.8rem; padding-left: 30px; margin-bottom: 10px; }
.list01 > li:before{ position: absolute; content: ""; left: 0; top: 5px; width: 15px; height: 15px; border-radius: 100%; background-color: var(--main-color); }


.flow_list{ display: flex; justify-content: center; }
.flow_item{ flex-basis: 20%; text-align: center; }
.flow_sec{}
.flow_sec01{ width: 200px; height: 200px; background-color: var(--main-color); border-radius: 100%; margin: 0 auto 10px auto; padding-top: 30px; }
.flow_sec01 i{ color: #fff; font-size: 9rem; }
.flow_sec01 p{ font-size: 3rem; color: #fff; font-weight: 700; text-align: center; }
.flow_sec01_txt01{ width: 90%; margin: 0 auto; font-size: 1.8rem; line-height: 1.8; letter-spacing: 2px; text-align: left; }
.flow_arrow{ flex-basis: 2%; text-align: center; color: var(--main-color); font-size: 3rem; padding-top: 40px; }


.voice_sec{}
.voice_list{ display: flex; justify-content: space-between; }
.voice_item{ flex-basis: 48%; }
.voice_item_sec_img{ display: flex; align-items: center; margin-bottom: 30px; }
.voice_img01{ flex-basis: 20%; border: 1px solid #ccc; margin-right: 30px; }
.voice_img01 img{ border: 5px solid #f0f0f0; }
.voice_item_sec_tit{}
.voice_item_sec_tit01{ font-size: 1.5rem; letter-spacing: 2px; margin-bottom: 5px; }
.voice_item_sec_tit02{ font-size: 2.2rem; letter-spacing: 2px; margin-bottom: 5px; }
.voice_item_sec_tit03{ font-size: 1.5rem; letter-spacing: 2px; }
.voice_item_sec_txt{ font-size: 1.7rem; letter-spacing: 2px; line-height: 1.8; }



.terms h2{ font-size: 3rem; text-align: left; padding: 0; border-bottom: 0; margin-bottom: 10px; }
.terms h3{ font-size: 2.5rem; color: #333; text-align: left; padding: 0; background: none; font-weight: normal; margin-bottom: 10px; }

.terms .list01{ margin-bottom: 20px; }


.column01{ padding-bottom: 20px; border-bottom: 1px solid #ccc; }

.terms .list01 ol{ margin: 10px 0 0 120px; }
.terms .list01 ol li{ list-style-type: decimal; font-size: 1.6rem; padding-left: 0;  margin-bottom: 10px; }
.terms .list01 ol li:before{ display: none; }
.terms .list01 ol li ol{ margin-left: 30px; }
.terms .list01 ol li ol li{ list-style-type: none; counter-increment: cnt; margin-bottom: 5px; }
.terms .list01 ol li ol li:before{ content: "[" counter(cnt) "]"; display:inline-block; }


.database_sec{ width: 1100px; margin: 60px 0 120px 0; }
.seizou_sec{}
.database_list{ display: flex; justify-content: flex-start; flex-wrap: wrap; }
.database_item{ flex-basis: 19%; margin: 0 1% 30px 0; }
.database_item a:hover{ opacity: .6; }
.database_item_tit{ background-color: #2d2d2d; color: #fff; font-size: 3.5rem; font-weight: 700; letter-spacing: 2px; display: flex; align-content: center; align-items: center; justify-content: center; }
.seizou_sec .database_item_tit{ flex-basis: 39%;  }
.database_img01{ margin-bottom: 10px; }
.database_img01 img{ width: 100%; height: auto; }
.database_tit01{ font-size: 2rem; text-align: center; font-weight: 700; }
.kenchiku_sec .database_item_tit{ flex-basis: 59%; }


.database_cat_sec{ width: 90%; max-width: 1070px; margin: 60px auto 40px auto; }

.database_cat_tit01{ background-color: var(--main-color); display: flex; align-items: center; padding: 10px; margin-bottom: 40px; }
.database_cat_ico01{ margin-right: 20px; }
.database_cat_ico01 img{ width: 100px; height: 100px; }
.database_cat_txt01{ font-size: 3.5rem; font-weight: 700; color: #fff; letter-spacing: 2px; }
.database_cat_txt01 span{ display: block; font-size: 1.5rem; font-family: 'Cabin'; font-weight: 700; letter-spacing: 3px; }

.memberlist_sec{ width: 90%; max-width: 1070px; margin: 0 auto; }
.memberlist_list{}
.memberlist_item{ margin-bottom: 60px; }
.memberlist_item_tit{ display: flex; justify-content: space-between; border-left: 5px solid var(--main-color); background-color: #222; height: 60px; }
.memberlist_item_tit01{ color: #fff; font-size: 2.3rem; font-weight: 700; letter-spacing: 2px; line-height: 60px; }
.memberlist_item_tit01 i{ font-size: 1.6rem; margin: 0 10px 0 15px; }
.memberlist_item_btn01{ flex-basis: 20%; }
.memberlist_item_btn01 a{ display: flex; justify-content: center; align-content: center; align-items: center; color: #fff; background-color: var(--btn-color); font-size: 1.8rem; text-align: center; height: 60px; }
.memberlist_item_btn01 a i{ margin-left: 10px; }
.memberlist_item_btn01 a:hover{ background-color: #17624a; }
.memberlist_item_txt{ display: flex; border-bottom: 1px solid #ccc; padding: 15px; }
.memberlist_item_txt01{ flex-basis: 20%; font-size: 1.8rem; font-weight: 700; text-align: center; }
.memberlist_item_txt02{ flex-basis: 80%; font-size: 1.8rem; }
.memberlist_item_pr{ margin-top: 20px; background-color: #f5f5f5; padding: 20px; }
.memberlist_item_pr_tit01{ font-family: 'Cabin'; font-weight: 700; letter-spacing: 3px; color: var(--main-color); margin-bottom: 5px; }
.memberlist_item_pr_tit01 img{ vertical-align: middle; margin-right: 10px; }
.memberlist_item_pr_txt01{ font-size: 1.8rem; letter-spacing: 2px; line-height: 1.8; }

.memberlist_footer{ width: 90%; max-width: 1070px; margin: 80px auto 0 auto; }
.memberlist_footer .database_item_tit{ background-color: #2d2d2d; color: #fff; font-size: 2.2rem; font-weight: 700; letter-spacing: 2px; display: flex; align-content: center; align-items: center; justify-content: center; }
.memberlist_footer .seizou_sec .database_item_tit{ flex-basis: 35%; }
.memberlist_footer .database_item{ flex-basis: 11%; margin: 0 1% 30px 0; }
.memberlist_footer .database_tit01{ font-size: 1.4rem; }
.memberlist_footer .kenchiku_sec .database_item_tit{ flex-basis: 13%; }
.memberlist_footer .kenchiku_sec .database_item_tit{ font-size: 2rem; }


.report_news{ width: 100%; max-width: 1000px; margin: 60px auto 120px auto; }
.report_news .report_sec01{ flex-basis: 100%; }

.report_sec{ width: 90%; max-width: 1300px; margin: 60px auto 120px auto; display: flex; justify-content: space-between; }
.report_sec01{ flex-basis: 70%; }



.report_list{ }
.report_item{ margin-bottom: 60px;  }
.report_tit{ flex-basis: 100%; font-size: 2.5rem; letter-spacing: 2px; }

.report_tit{ border-left: 5px solid var(--main-color); background-color: #222; padding: 10px; text-align: left; line-height: 1.3; }
.report_tit{ color: #fff; font-size: 2.3rem; font-weight: 700; letter-spacing: 2px;  }
.report_tit i{ font-size: 1.6rem; margin: 0 10px 0 15px; }

.report_date{  }
.report_cat{  }

.report_item_sec{ border: 1px solid #ccc; padding: 20px 30px 30px 30px; }

.category-schedule .report_item_sec{ border: 1px solid #ccc; padding: 0; }
.category-schedule .report_tit span,
.category-results .report_tit span{ font-size: 1.4rem; margin-right: 20px; vertical-align: middle;}
.category-schedule .report_item,
.category-results .report_item{ margin-bottom: 30px;  }


.report_txt{ font-size: 1.6rem; letter-spacing: 2px; line-height: 1.8; }
.report_txt p{ margin-bottom: 20px; }
.report_txt h2{ font-size: 2.2rem; font-weight: 700; text-align: left; padding-bottom: 10px; margin-bottom: 10px; margin-top: 20px; }
.report_txt a{ color: var(--main-color); text-decoration: underline; }
.report_txt a:hover{ color: var(--main-color); text-decoration: none; }


.report_item_footer{ background-color: #ccc; display: flex; align-items: center; justify-content: flex-end; padding: 10px; }
.report_date{ font-size: 1.4rem; margin-right: 20px; }
.report_cat{ }
.report_cat ul{ }
.report_cat ul li{ display: inline-block; background-color: var(--main-color); color: #fff; font-size: 1.4rem; padding: 5px 20px; border-radius: 40px; margin-right: 5px; }

.news_single_sec .news_item{ border-bottom: 0; }
.news_single_sec .news_tit{ font-weight: 500; padding: 10px 0; border-bottom: 1px solid var(--main-color); margin-bottom: 20px; }

.sidebar{ flex-basis: 25%; }

.sidebar_sec{ background-color: #fff; border-radius: 10px; margin-bottom: 40px; }
.sidebar_sec h3,
.h3sidebar{ font-size: 2rem; color: #666; font-weight: 700; letter-spacing: 2px; background-color: #ddd; padding: 10px; text-align: center; border-radius: 0; margin-bottom: 20px; }



.sidebar_sec ul > li{ padding: 0 0 10px 0; font-size: 1.6rem; letter-spacing: 1px; border-bottom: 1px solid #ccc; margin-bottom: 10px; }
.sidebar_sec ul > li > ul{ margin: 10px 0 0 30px; }
.sidebar_sec ul > li > ul > li{ position: relative; padding: 0px 0px 0px 1em; font-size: 1.4rem; letter-spacing: 1px; margin-bottom: 10px; border-bottom: 0; }
.sidebar_sec ul > li > ul > li:before{ position: absolute; top: 50%; left: 0px; transform: translateY(-50%); width: 0px; height: 0px; border: 0.3em solid transparent; border-left: 0.4em solid #aaa; content: ""; }


.wp-pagenavi{ width: 90%; margin: 40px auto 80px auto; display: flex; justify-content: center; font-family: 'Cabin'; }
.wp-pagenavi a{ display: block; font-size: 1.8rem; text-align: center; color: var(--main-color); background-color: #fff; border-color: var(--main-color) !important; width: 30px; height: 30px; line-height: 29px; padding: 0 !important; }
.wp-pagenavi a:hover{ background-color: var(--main-color); color: #fff; }
.wp-pagenavi span.current{ display: block; width: 32px; height: 32px; line-height: 25px; text-align: center; background-color: var(--main-color); color: #fff; border: 1px solid var(--main-color) !important; margin: 2px; }
.wp-pagenavi .extend{
display: block; font-size: 1.8rem; text-align: center; color: var(--main-color); background-color: #fff; border-color: var(--main-color) !important; width: 32px; height: 32px; line-height: 30px; padding: 0 !important;
}


/* single.php pagination */
.pagination{ margin: 60px auto 0 auto; }
.pagination ul{ width: 100%; margin: 0 auto 100px auto; display: flex; justify-content: space-between; }
.pagination ul li{ flex-basis: 20%; }
.pagination ul li a{ display: block; border: 1px solid var(--main-color); color: var(--main-color); font-size: 15px; font-weight: 500; padding: 10px 10px 5px 10px; text-align: center; background-color: #fff; transition:all .3s ease; border-radius: 40px; }
.pagination ul li a:hover{ background: var(--main-color); color: #fff; opacity: 1; }
.pagination ul li.next{ text-align: left; }
.pagination ul li.next i{ margin-right: 20px; }
.pagination ul li:nth-child(2) {  }
.pagination ul li:nth-child(2) a{ display: block; }
.pagination ul li.next a,
.pagination ul li.prev a{ display: block; background: var(--main-color); color: #fff; }
.pagination ul li.next a:hover,
.pagination ul li.prev a:hover{ background: #fff; color: var(--main-color); }
.pagination ul li.prev i{ margin-left: 20px; }
.pagination ul li.next span,
.pagination ul li.prev span{ display: block; border: 1px solid #dacaca; color: #fff; background: #dacaca; font-size: 15px; font-weight: 500; padding: 10px 10px 5px 10px; text-align: center; border-radius: 40px; }



/* フォーム */
.contact .page_sec{ }

.contact_sec{ width: 100%; max-width: 980px; margin: 0 auto 100px auto; }

.contact_item{display: flex; align-items: center; width: 100%; padding: 20px 20px; border-bottom: 1px solid #ccc;}
.contact_tit{ flex-basis: 35%; font-weight: 700; position: relative; padding-left: 80px; margin-right: 20px; }
.contact_tit p{ line-height: 1; }
.contact_tit span{ position: absolute; display: block; color: #fff; padding: 5px 10px 5px 10px; left: 0px; top: 3px; font-size: 1.6rem; border-radius: 40px; line-height: 1; }
.contact_tit span.must{ background-color: #ec0000; border: 1px solid #ec0000; }
.contact_tit span.optional{ background-color: #999; border: 1px solid #999; }
.contact_txt,
.contact_adress,
.contact_txtarea{ flex-basis: 65%;}
.contact_txt input{ width: 100%; font-size: 2rem; background: #fff; padding: 10px 10px; border: 1px solid #ccc; }
.contact_txt input[type="checkbox"]{ float: none; width: 15px; height: 15px; }
.contact_txt input[type="radio"]{ width: 15px; height: 15px; }
.contact_txtarea textarea{ width: 100%; font-size: 2rem; padding: 8px; border: 1px solid #ccc; background-color: #fff; }
.contact_adress_sub p{padding: 15px 0;}
.contact_adress input{ width: 100%; background: #fff; border: 1px solid #ccc; height: 35px; margin-left: 15px; font-size: 2rem; }
.contact_submit{border-bottom: none;}
.contact_submit_btn{text-align: center; }
.contact_submit_btn input{ font-weight: 300; background-color: #e47e19; color: #fff; font-size: 1.8rem; 
    letter-spacing: 1px; padding: 15px 30px; cursor: pointer;   -webkit-appearance: none; border-radius: 0;}

input[type="checkbox"]{float: left;}
.contact_check{display: flex;}
.contact_submit .contact_tit{width: 30%;}
.wpcf7-spinner{display: block; margin: 0 auto !important; }

.contact_submit_btn{ text-align: center; margin-top: 60px; margin-bottom: 60px;  }
.contact_submit_btn input{ background-color: var(--main-color); color: #fff; font-size: 2.2rem; letter-spacing: 1px; padding: 15px 25px; cursor: pointer; transition: 0.5s ease-in-out; border: 0; 
	font-family: "azo-sans-web", "Helvetica Neue", "Helvetica", "source-han-sans-japanese", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: 500;
}
input.wpcf7-submit:hover{ background-color: #2b6da4; }


.contact_sec ol{ margin-left: 25px; }
.contact_sec ol li{ list-style-type: decimal; font-size: 1.6rem; line-height: 1.8; margin-bottom: 5px; }
.contact_sec p{ font-size: 1.8rem; letter-spacing: 1px; line-height: 2; margin-bottom: 0px; }

::placeholder{ color: #999; }

.contact_item .wpcf7-list-item{ display: block; margin: 0 0 0 0; }

.wpcf7-not-valid-tip{ font-weight: 700 !important; }


.sitemap_sec{ width: 980px; margin: 0 auto 100px auto; }

.sitemap_sec li{ font-size: 1.7rem; letter-spacing: 2px; margin-bottom: 20px; }





/* ブロックエディタ用 */
/*
p + p {
  margin-top: 1.5em;
}
*/
em {
  font-style: italic;
}
blockquote {
  margin: 1.5em 0;
  border-left: 5px solid #ddd;
  padding: 1em 0 1em 10px;
  color: #777;
}
blockquote p + p {
  margin-top: 0.5em;
}
.aligncenter {
  display: block;
  margin-right: auto;
  margin-left: auto;
}
.alignright {
  float: right;
  margin-bottom: 20px;
  margin-left: 20px;
}
.alignleft {
  float: left;
  margin-right: 20px;
  margin-bottom: 20px;
}
/*
.wp-caption,
[class*='wp-image'] {
  display: block;
  max-width: 100% !important;
  margin-top: 1.5em;
  text-align: center;
}
*/
.wp-caption-text {
  margin-top: 0;
}

.wp-block-image{ margin: 0 !important; }




.sitemap_sec{ width: 50%; margin: 100px auto; }
.sitemap_sec ul{ }
.sitemap_sec ul li{ }
.sitemap_sec ul li a{ font-size: 2.5rem; }

.sitemap_sec .sub-menu{ margin-top: 10px; }
.sitemap_sec .sub-menu li{ position: relative; padding-left: 20px; margin-bottom: 10px; }
.sitemap_sec .sub-menu li:before{ content: ""; display: block; position: absolute; top: 50%; left: 0; width: 10px; height: 2px; background-color: var(--main-color); }
.sitemap_sec .sub-menu li a{ font-size: 2rem; }

.sitemap_sec_btn{ margin-top: 10px; }
.sitemap_sec_btn a{ display: inline-block; padding: 0 30px; background-color: var(--member-color); color: #333; font-size: 2rem; font-weight: 600; line-height: 60px; border-radius: 5px; }
.sitemap_sec_btn a i{ font-size: 2rem; margin-right: 10px; }
.sitemap_sec_btn a:hover{ color: var(--member-color); background-color: #333; }


/* ----------------------------------------------------------
 SP CSS
---------------------------------------------------------- */
@media screen and (max-width: 680px){
img,video {
  max-width: 100%;
  height: auto;
}

/* フォントサイズ10px=62.5% */
html{ font-size: 60%; }

/* 基本のフォントサイズ */
body{ font-size: 1.8rem; height: auto !important; height: 100%; padding-top: 0; }

/* 非表示用 */
.noneSP		{ display: none !important; }


/* ----------------------------------------------------------
 header
---------------------------------------------------------- */

	
header{ position: fixed; top: 0; width: 100%; height: 60px; z-index: 100; box-shadow: 0px 8px 16px -6px rgba(0,0,0,0.1); }

.header_sec01{ display: flex; justify-content: space-between; background-color: var(--main-color); height: 60px; padding: 0; }

.header_logo{ flex-basis: 60%; height: auto; text-align: left; }
.header_logo img{ width: 100%; height: auto; }


.header_logo_sec{ }
.header_logo_sec img{ width: 220px; height: 28px; }
.header_logo_sec a{ display: block; line-height: normal; padding: 18px 0 0 10px; }
.header_logo_sec a:hover{ opacity: 0.6; }

.header_info{ display: none; }


.header_sec02{ background-color: #545454; display: flex; justify-content: center; }

.gnavi{  }
.gnavi_list{ display: flex; justify-content: center; align-items: center; }

.gnavi_list li > a{ display: block; font-size: 1.5rem; color: #fff; font-weight: 600; letter-spacing: 3px; padding: 0 15px; white-space: nowrap; line-height: 60px; }
.gnavi_list li > a:hover{ background-color: #222; }


.header_member{ }
.header_member a{ display: block; padding: 0 15px; background-color: var(--member-color); color: #333; font-size: 1.5rem; font-weight: 600; line-height: 60px; }
.header_member a i{ font-size: 2rem; margin-right: 10px; }
.header_member a:hover{ color: var(--member-color); background-color: #333; }


/* ACCORDION */
.accordion_icon{display: flex; gap: 10%; justify-content: center; margin: 60px auto 20px;font-size: 2.5rem;}
nav .accordion_icon a{border-bottom: none;}
nav .accordion_tell a i{color: #4DABE9;  border-radius: 100%; background-color: #fff; border: 2px solid #4DABE9; padding: 12px; }
nav .accordion_contact a i{color: #1D497B;  border-radius: 100%; background-color: #fff; border: 2px solid #1D497B; padding: 12px;}
nav .btn_trial_wrapper a{color: #fff; text-align: center;  border-bottom: solid 5px #AE6333;}
nav .btn_trial_item01 .free_trial{font-size: 2.3rem;}

/* ACCORDION toggle */
.accordion_logo{ width: 80%; margin: 0 auto 30px; text-align: center; }
.toggle p{
position: absolute;
color: #2B4F91;
left: 50%;
bottom: 27px;
transform: translate(-50%, 0);
}

.toggle{
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
display: block;
position: fixed;
top: 0;
right: 0;
z-index: 1000;
margin: 0;
padding: 0;
width: 60px;
height: 60px;
border: none;
transition: background-color 0.2s ease;
cursor: pointer;
background-color: #545454;
}

.toggle::before,
.toggle::after{ content: ""; background-color: #000; transition: background-color 0.3s ease; }
.toggle > span,
.toggle:before,
.toggle:after{
display: block;
background-color: #fff;
position: absolute;
top: 50%;
left: 48%;
width: 35px;
height: 2px;
margin: -2px 0 0 -15px;}
.toggle:before{transform: translateY(-9px);}
.toggle:after{transform: translateY(9px);}


.toggle{ position: fixed; }

.menu_list{
display: none; 
position: fixed;
width: 100%;
height: 100vh;
margin: 0;
list-style: none;
top: 0;
left: 0;
padding: 60px 25px;
background-color: #fff;
}
.toggle[aria-expanded=true] > span{ opacity: 0; }
.toggle[aria-expanded=true]::before, .toggle[aria-expanded=true]::after{}
.toggle[aria-expanded=true]::before{ animation: 0.3s ease closeBar1 forwards; }
.toggle[aria-expanded=true]::after{ animation: 0.3s ease closeBar2 forwards; }
.toggle.-close::before{ animation: 0.3s ease closeBar1Rev forwards; }
.toggle.-close::after{ animation: 0.3s ease closeBar2Rev forwards; }

@keyframes closeBar1{
	0%{ transform: translateY(-10px); }
	50%{ transform: translateY(0) rotate(0); }
	100%{ transform: translateY(0) rotate(45deg); }
}

@keyframes closeBar2{
	0%{ transform: translateY(10px); }
	50%{ transform: translateY(0) rotate(0); }
	100%{ transform: translateY(0) rotate(-45deg); }
}
@keyframes closeBar1Rev{
	0%{ transform: translateY(0) rotate(45deg); }
	50%{ transform: translateY(0) rotate(0); }
	100%{ transform: translateY(-10px); }
}
@keyframes closeBar2Rev {
	0%{	transform: translateY(0) rotate(-45deg); }
	50%{ transform: translateY(0) rotate(0); }
	100%{ transform: translateY(10px); }
}

.nav {
position: fixed;
top: 0;
right: 0;
z-index: 100;
width: 100%;
height: 100%;
padding: 60px 30px;
border: 1px solid #f5f5f5;
justify-content: center;
align-content: center;
align-items: center;
overflow: scroll;
background: rgba(255,255,255,1);
color: #333;
transition: opacity 0.3s ease, visibility 0.3s ease;
/* スクロールバー非表示 */
/*IE(Internet Explorer)・Microsoft Edgeへの対応*/
-ms-overflow-style: none;
/*Firefoxへの対応*/
scrollbar-width: none;
}

/*Google Chrome、Safariへの対応*/
.nav::-webkit-scrollbar{
display: none;

}

.nav[aria-hidden=true] {
visibility: hidden;
opacity: 0;
pointer-events: none;

}
.nav[aria-hidden=false] {
visibility: visible;
opacity: 1;
pointer-events: auto;
overflow: scroll;
}

.accordion_menu li{ font-size: 1.8rem; font-weight: 700; line-height: 1.5; border-bottom: 1px solid #ccc; }
.accordion_menu li a{ display: block; color: #333; padding: 15px 0; transition: .5s; line-height: 1; }
	
.accordion_menu li .sub-menu{ margin: 0 0 0 30px; border-bottom: 0; }
.accordion_menu li .sub-menu li{ border-bottom: 0; }
.accordion_menu li .sub-menu li a{ position: relative; font-size: 1.4rem; padding-left: 20px; }
.accordion_menu li .sub-menu li a:before{ position: absolute; content: ""; top: 17px; left: 0; transform: rotate(45deg); width: 5px; height: 5px; border-top: 2px solid #ccc; border-right: 2px solid #ccc; }


.sp_member{ margin-top: 10px; }
.sp_member a{ display: block; padding: 0 15px; background-color: var(--member-color); color: #333; font-size: 1.8rem; font-weight: 600; line-height: 60px; border-radius: 5px; }
.sp_member a i{ font-size: 2rem; margin-right: 10px; }
.sp_member a:hover{ color: var(--member-color); background-color: #333; }

/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */

/* ページ下部 固定メニュー */
.btm_menu { position: fixed; bottom: -50px; width: 100%; border-top: 1px solid #fff; z-index: 99; }
.btm_menu li { float: left; width: 50%; }
.btm_menu li a{ border-right: 1px solid #fff; }
.btm_menu li:last-child a{ border-right: 0px solid #fff; }
.btm_menu li a { display: block; height: 30px; text-align: center; font-size: 1.6rem; font-weight: 700; padding: 15px 5px 5px; background-color: #545454; color: #fff; }
.btm_menu li a i{ font-size: 1.8rem; margin-right: 10px; vertical-align: middle; }
.btm_menu li a:hover { background-color: #333; color: #fff; }
.btm_menu ul:after { content: ''; clear: both; display: block; }



footer{ background-color: #222; padding: 60px 0 20px 0; }
.footer_logo{ width: 300px; margin: 0 auto 20px auto; }
.footer_logo a:hover{ opacity: .6; }
.footer_add{ font-size: 1.2rem; color: #a7a7a7; letter-spacing: 2px; text-align: center; padding: 0 10px; }


.footer_telfax{ margin: 0 auto; display: flex; justify-content: center; align-content: center; font-family: 'Cabin'; flex-wrap: wrap; }
.footer_telfax01{ flex-basis: 100%; font-size: 2.2rem; color: #a7a7a7; letter-spacing: 2px; margin: 0 1%; text-align: center; }
.footer_telfax01 span{ font-size: 1.3rem; }

.footer_btn{ width: 90%; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; }

.footer_memberonly_btn{ flex-basis: 100%; width: 100%; margin: 20px auto 10px auto; }
.footer_memberonly_btn a{ font-size: 1.8rem; }


.footer_contact_btn{ flex-basis: 100%; width: 100%; margin: 0px auto 20px auto; }
.footer_contact_btn a{ font-size: 1.8rem; }

.footer_copyright{ font-size: 1.2rem; }



/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */

.h1_wrap{ padding: 80px 5px 20px 5px; }
.h1_wrap_sec{ text-align: center; }
.h1_01{ font-size: 1.1rem; font-family: 'Cabin'; letter-spacing: 2px; font-weight: 700; }
.h1_wrap_sec h1{ font-size: 2.9rem; letter-spacing: 2px; }


h2{ font-size: 3rem; letter-spacing: 4px; padding-bottom: 20px; margin-bottom: 30px; line-height: 1.2; }
h2 span{ display: block; font-size: 1.6rem; }

h3{ font-size: 1.9rem; letter-spacing: 1px; padding: 15px 10px; margin-bottom: 20px; line-height: 1.3; }


/* ぱんくず */
 
.breadcrumbs_sec{ display: none; text-align: center; padding: 0 10px; } 
.breadcrumbs_sec > span{ display: inline-block; position: relative; color: #333; font-size: 1.2rem; }
.breadcrumbs_sec > span span{ margin-left: 15px; }
.breadcrumbs_sec > span a span{ margin-left: 0; }
.breadcrumbs_sec > span:first-child span{ margin-left: 0; }
.breadcrumbs_sec > span br{ display: none; }
.breadcrumbs_sec > span:before{ content: "/"; display: block; position: absolute; top: 0; left: 5px; color: #333; font-size: 12px; }
.breadcrumbs_sec span:first-child:before{ content: ""; margin-left: 0; }
.breadcrumbs_sec > span a{ color: #333; font-size: 1.2rem; margin: 0 0 0 20px; }
.breadcrumbs_sec > span:first-child a{ margin: 0 0 0 0; }
.breadcrumbs_sec span a:hover{ opacity: 0.6; }

/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */

.main{  }
.contents{ width: 100%; margin: 0 auto; }

.top_img_wrap{ background-color: #f5f5f5; padding: 70px 0 20px 0; margin-bottom: 20px; }
.top_img{ width: 100%; margin: 0 auto; }


.splide__slide img {
height: auto;
width: 100%;
}

.top_img_catch01{ font-size: 3rem; text-align: center; letter-spacing: 3px; margin-top: 20px; line-height: 1.2; }
.top_img_catch01 span{ font-weight: 700; }
.top_img_catch02{ font-size: 1.6rem; text-align: center; letter-spacing: 2px; padding: 0 10px; }


.top_contents{ width: 90%; max-width: 1300px; margin: 0 auto; }
.top_contents_list{ flex-wrap: wrap; }
.top_contents_item{ flex-basis: 100%; }
.top_contents_item_btn{ flex-basis: 100%; }
.top_contents_btn_list{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.top_contents_btn_item{ flex-basis: 100%; margin-bottom: 20px; position: relative; overflow: hidden; }
.top_contents_item_news{ flex-basis: 100%; }
.top_contents_tit{ display: flex; justify-content: space-between; align-items: center; background-color: #545454; }
.top_contents_tit01{ position: relative; color: #fff; font-size: 2.2rem; font-weight: 700; padding: 0 10px 0 40px; letter-spacing: 3px; height: 60px; line-height: 60px; }
.top_contents_tit01:before{ position: absolute; content: ""; top: 23px; left: 15px; transform: rotate(45deg); width: 10px; height: 10px; border-top: 2px solid #fff; border-right: 2px solid #fff; }
.top_contents_btn01{}
.top_contents_btn01 a{ display: block; color: #fff; font-size: 1.6rem; font-weight: 700; background-color: var(--main-color); height: 60px; line-height: 60px; padding: 0 20px; text-align: center; }
.top_contents_btn01 a:hover{ background-color: #333; }
.top_contents_txt{ border: 1px solid #ccc; padding: 15px 20px 20px 20px; height: auto; overflow: hidden; }


.top_sns{ margin: 20px 0 0px 0; }
.top_sns_list{ flex-wrap: wrap; }
.top_sns_item{ width: 90%; margin: 0 0 20px 0; }
.top_sns_item a{ display: block; text-align: center; font-size: 2rem; padding: 20px; color: #fff; font-family: 'Cabin','Noto Sans JP'; letter-spacing: 2px; }
.top_sns_item a i{ margin-right: 10px; font-size: 3rem; vertical-align: middle; }
.top_sns_item_instagram a{ background: linear-gradient(45deg, rgba(254,212,117,1) 0%,rgba(229,61,93,1) 50%,rgba(194,49,134,1) 70%,rgba(156,56,187,1) 100%); border: 1px solid #e20037; }
.top_sns_item_facebook a{ background-color: #0866ff; border: 1px solid #0866ff; }


.top_contents_tit02{ font-size: 2rem; font-weight: 700; margin-bottom: 10px; }
.top_contents_img01{ float: right; margin: 0 0 10px 10px; }
.top_contents_btn02{ width: auto; margin-top: 10px; }

.top_contents_btn02 a{ display: inline-block; color: #fff; font-size: 1.4rem; text-align: center; padding: 5px 20px; border-radius: 40px; background-color: var(--main-color); border: 1px solid var(--main-color); }
.top_contents_btn02 a:hover{ background-color: #fff; color: var(--main-color); }

.top_contents_btn_item:after{ position: absolute; content: ""; display: block; width: 100%; height: 100%; top: 0; transition: all .3s ease-out; }
.top_contents_btn_item a{ display: block; position: relative; z-index: 1; height: 100%; color: #fff; padding: 20px; }

.top_contents_btn_item_ico01{ }
.top_contents_btn_item_ico01 i{ font-size: 5rem; line-height: 1; }
.top_contents_btn_item_tit01{ color: #fff; }
.top_contents_btn_item_tit01 span{ color: #fff; font-size: 2rem; font-family: 'Cabin'; }
.top_contents_btn_item_tit01 p{ color: #fff; font-size: 3rem; font-weight: 700; }


.top_contents_btn_item_guide:after{ background: url("/info/wp-content/uploads/btn_guide01.jpg"); background-size: cover; }
.top_contents_btn_item_report:after{ background: url("/info/wp-content/uploads/btn_report01.jpg"); background-size: cover; }
.top_contents_btn_item_list:after{ background: url("/info/wp-content/uploads/btn_list01.jpg"); background-size: cover; }
.top_contents_btn_item_memberonly:after{ background: url("/info/wp-content/uploads/btn_membersonly01.jpg"); background-size: cover; }


.top_contents_btn_item_guide:hover:after,
.top_contents_btn_item_report:hover:after,
.top_contents_btn_item_list:hover:after,
.top_contents_btn_item_memberonly:hover:after{ opacity: 1; transform: scale(1.1); }

.top_contents_btn_item_guide:before,
.top_contents_btn_item_report:before,
.top_contents_btn_item_list:before,
.top_contents_btn_item_memberonly:before{ z-index: 1; content: ""; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; ; }

.top_contents_btn_item:before{ transition: all .3s ease-out; }

.top_contents_btn_item:before{ background: rgba(0,132,204,.8); mix-blend-mode: multiply; }
.top_contents_btn_item_memberonly:before{ background: rgba(251,164,47,.8); mix-blend-mode: multiply; }



.top_information{ background-color: #f5f5f5; padding: 60px 0; }
.top_information_list{ width: 90%; max-width: 1300px; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.top_information_item{ flex-basis: 100%; }

.top_information_item_list{ margin-top: 20px; }
.top_information_item_item{ display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #ccc; padding: 0 0 15px 0; margin-bottom: 15px; flex-wrap: wrap; }
.top_information_item_item_date01{ flex-basis: 100%; font-size: 1.4rem; }
.top_information_item_item_tit01{ flex-basis: 100%; font-size: 1.8rem; font-weight: 700; }


.top_information_tit{ display: flex; justify-content: space-between; align-items: center; background-color: #545454; }
.top_information_tit01{ position: relative; color: #fff; font-size: 2.2rem; font-weight: 700; padding: 0 10px 0 40px; letter-spacing: 3px; height: 50px; line-height: 50px; }
.top_information_tit01:before{ position: absolute; content: ""; top: 20px; left: 15px; transform: rotate(45deg); width: 8px; height: 8px; border-top: 2px solid #fff; border-right: 2px solid #fff; }
.top_information_btn01{}
.top_information_btn01 a{ display: block; color: #fff; font-size: 1.8rem; font-weight: 700; background-color: var(--main-color); height: 60px; line-height: 60px; padding: 0 20px; text-align: center; }
.top_information_btn01 a:hover{ background-color: #333; }


/* ページ内アンカー */
.anker_nav{  }
.anker_nav > nav{ display: block; }
.anker_nav > nav ul{ width: 100%; margin: 0 auto 30px auto; display: flex; justify-content: center;  flex-wrap: wrap; background-color: var(--main-color); padding: 10px; border-radius: 0; }
.anker_nav > nav li{ position: relative; margin: 0 0 0 30px; color: #fff; }
.anker_nav > nav li:first-child{ margin: 0; }
.anker_nav > nav li a{ font-size: 1.4rem; color: #fff; }
.anker_nav > nav li:before{ content: "/"; display: block; position: absolute; top: 3px; left: -15px; font-size: 1.4rem; }
.anker_nav > nav li:first-child:before{ content: ""; margin-left: 0; }



.page_sec{ width: 1200px; max-width: 90%; margin: 0 auto; }
.page_sec p{ font-size: 1.8rem; letter-spacing: 2px; line-height: 1.8; margin-bottom: 30px; }


.about .page_sec p,
.guide .page_sec p,
.privacy_sec p{ width: 90%; margin: 0 auto 30px auto; }

.about_list{}
.about_item{ padding: 15px; border-bottom: 1px solid #ccc; display: flex; justify-content: flex-start; flex-wrap: wrap; }
.about_item01_tit01{ flex-basis: 50%; position: relative; padding-left: 30px; font-weight: 600; }
.about_item01_tit01:before{ position: absolute; content: ""; left: 0; top: 5px; width: 15px; height: 15px; border-radius: 100%; background-color: var(--main-color); }
.about_item01_dot01{ flex-basis: 6%; }
.about_item01_txt01{ flex-basis: 100%; }


.about_history_list{}
.about_history_item{ padding: 15px; border-bottom: 1px solid #ccc; display: flex; justify-content: flex-start; flex-wrap: wrap; }
.about_history_year{ flex-basis: 100%; font-weight: 600; }
.about_history_list01{ flex-basis: 100%; list-style-position: inside; margin-left: 0; }
.about_history_item01{ list-style-type: disc; }
.about_history_txt01{ flex-basis: 100%; }
.about_history_item_tit{ display: none; }


.greeting .page_sec{ width: 90%; max-width: 1100px; }
.greeting .page_sec p{ font-size: 1.6rem; letter-spacing: 2px; line-height: 2.2; margin-bottom: 30px; }

.greeting_img01{}
.greeting_img01 figure{ margin: 0 0 10px 30px !important; text-align: center; width: 50%; }
.greeting_img01 figure img{ width: 100%; height: auto; }
.greeting_img01 figcaption{ text-align: center; font-size: 2rem; font-weight: 700; }
.greeting_img01 figcaption span{ text-align: center; font-size: 1.3rem; font-weight: 400; }
.wp-block-image :where(figcaption){ margin-top: 0 !important; margin-bottom: 0 !important; }

.greeting_name01{ text-align: right !important; font-size: 1.9rem !important; line-height: 1.4 !important; }


.list01{}
.list01 > li{ position: relative; font-size: 1.8rem; padding-left: 30px; margin-bottom: 10px; }
.list01 > li:before{ position: absolute; content: ""; left: 0; top: 5px; width: 15px; height: 15px; border-radius: 100%; background-color: var(--main-color); }


.flow_list{ display: flex; justify-content: center; flex-wrap: wrap; }
.flow_item{ flex-basis: 100%; text-align: center; }
.flow_sec{}
.flow_sec01{ width: 200px; height: 200px; background-color: var(--main-color); border-radius: 100%; margin: 0 auto 10px auto; padding-top: 30px; }
.flow_sec01 i{ color: #fff; font-size: 9rem; }
.flow_sec01 p{ font-size: 3rem; color: #fff; font-weight: 700; text-align: center; }
.flow_sec01_txt01{ width: 90%; margin: 0 auto; font-size: 1.8rem; line-height: 1.8; letter-spacing: 2px; text-align: left; }
.flow_arrow{ flex-basis: 2%; text-align: center; color: var(--main-color); font-size: 5rem; padding-top: 0; transform: rotate(90deg); }



.voice_sec{}
.voice_list{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.voice_item{ flex-basis: 100%; margin-bottom: 30px; padding-bottom: 20px; border-bottom: 1px solid #ccc; }
.voice_item_sec_img{ display: flex; align-items: center; margin-bottom: 20px; }
.voice_img01{ flex-basis: 30%; border: 1px solid #ccc; margin-right: 30px; }
.voice_img01 img{ border: 5px solid #f0f0f0; }
.voice_item_sec_tit{}
.voice_item_sec_tit01{ font-size: 1.5rem; letter-spacing: 2px; margin-bottom: 5px; }
.voice_item_sec_tit02{ font-size: 2.2rem; letter-spacing: 2px; margin-bottom: 5px; }
.voice_item_sec_tit03{ font-size: 1.5rem; letter-spacing: 2px; }
.voice_item_sec_txt{ font-size: 1.7rem; letter-spacing: 2px; line-height: 1.8; }



.terms h2{ font-size: 2.5rem; text-align: left; padding: 0; border-bottom: 0; margin-bottom: 10px; }
.terms h3{ font-size: 2.2rem; color: #333; text-align: left; padding: 0; background: none; font-weight: normal; margin-bottom: 10px; }

.terms .list01{ margin-bottom: 20px; }


.column01{ padding-bottom: 20px; border-bottom: 1px solid #ccc; }

.terms .list01 ol{ margin: 10px 0 0 30px; }
.terms .list01 ol li{ list-style-type: decimal; font-size: 1.6rem; padding-left: 0;  margin-bottom: 10px; }
.terms .list01 ol li:before{ display: none; }
.terms .list01 ol li ol{ margin-left: 30px; }
.terms .list01 ol li ol li{ list-style-type: none; counter-increment: cnt; margin-bottom: 5px; }
.terms .list01 ol li ol li:before{ content: "[" counter(cnt) "]"; display:inline-block; }


.database_sec{ width: 100%;  max-width: 1100px; margin: 60px 0 120px 0; }
.seizou_sec{}
.database_list{ display: flex; justify-content: flex-start; flex-wrap: wrap; }
.database_item{ flex-basis: 31%; margin: 0 1% 30px 1%; }
.database_item a:hover{ opacity: .6; }
.database_item_tit{ font-size: 2.5rem; letter-spacing: 2px; display: flex; align-content: center; align-items: center; justify-content: center; padding: 10px; }
.seizou_sec .database_item_tit{ flex-basis: 100%;  }
.database_img01{ margin-bottom: 10px; }
.database_img01 img{ width: 100%; height: auto; }
.database_tit01{ font-size: 1.5rem; }
.kenchiku_sec .database_item_tit{ flex-basis: 100%; }


.database_cat_sec{ width: 100%; max-width: 1070px; margin: 60px auto 40px auto; }

.database_cat_tit01{ background-color: var(--main-color); display: flex; align-items: center; padding: 10px; margin-bottom: 40px; }
.database_cat_ico01{ margin-right: 20px; }
.database_cat_ico01 img{ width: 50px; height: 50px; }
.database_cat_txt01{ font-size: 2.5rem; }
.database_cat_txt01 span{ font-size: 1.2rem; }

.memberlist_sec{ width: 100%; max-width: 1070px; margin: 0 auto; }
.memberlist_list{}
.memberlist_item{ margin-bottom: 60px; }
.memberlist_item_tit{ height: initial; flex-wrap: wrap; }
.memberlist_item_tit01{ font-size: 2rem; line-height: initial; padding: 10px; }
.memberlist_item_tit01 i{ font-size: 1.6rem; margin: 0 10px 0 15px; }
.memberlist_item_btn01{ flex-basis: 100%; }
.memberlist_item_btn01 a{ display: flex; justify-content: center; align-content: center; align-items: center; color: #fff; background-color: var(--btn-color); font-size: 1.6rem; text-align: center; height: 40px; }
.memberlist_item_btn01 a i{ margin-left: 10px; }
.memberlist_item_btn01 a:hover{ background-color: #17624a; }
.memberlist_item_txt{ display: flex; border-bottom: 1px solid #ccc; padding: 15px 0; }
.memberlist_item_txt01{ flex-basis: 25%; font-size: 1.6rem; font-weight: 700; text-align: center; }
.memberlist_item_txt02{ flex-basis: 75%; font-size: 1.6rem; }
.memberlist_item_pr{ margin-top: 20px; background-color: #f5f5f5; padding: 20px; }
.memberlist_item_pr_tit01{ font-family: 'Cabin'; font-weight: 700; letter-spacing: 3px; color: var(--main-color); margin-bottom: 5px; }
.memberlist_item_pr_tit01 img{ vertical-align: middle; margin-right: 10px; }
.memberlist_item_pr_txt01{ font-size: 1.6rem; letter-spacing: 2px; line-height: 1.8; }

.memberlist_footer{ width: 90%; max-width: 1070px; margin: 80px auto 0 auto; }
.memberlist_footer .database_item_tit{ background-color: #2d2d2d; color: #fff; font-size: 1.8rem; font-weight: 700; letter-spacing: 2px; display: flex; align-content: center; align-items: center; justify-content: center; }
.memberlist_footer .seizou_sec .database_item_tit{ flex-basis: 100%; }
.memberlist_footer .database_item{ flex-basis: 18%; margin: 0 1% 30px 1%; }
.memberlist_footer .database_tit01{ font-size: 1.2rem; }
.memberlist_footer .kenchiku_sec .database_item_tit{ flex-basis: 100% !important; }
.memberlist_footer .kenchiku_sec .database_item_tit{ font-size: 2rem; }
.memberlist_footer .kenchiku_sec .database_item{ flex-basis: 23%; margin: 0 1% 30px 1%; }


.report_sec{ width: 90%; max-width: 1300px; margin: 60px auto 120px auto; display: flex; justify-content: space-between; flex-wrap: wrap; }

.report_sec01{ flex-basis: 100%; }
.report_list{}
.report_item{ margin-bottom: 60px;  }
.report_tit{ flex-basis: 100%; font-size: 2.5rem; letter-spacing: 2px; }

.report_tit{ border-left: 5px solid var(--main-color); background-color: #222; padding: 10px; text-align: left; line-height: 1.3; }
.report_tit{ color: #fff; font-size: 1.8rem; font-weight: 700; letter-spacing: 2px;  }
.report_tit i{ font-size: 1.4rem; margin: 0 10px 0 15px; }

.report_date{  }
.report_cat{  }

.report_item_sec{ border: 1px solid #ccc; padding: 20px 30px 30px 30px; }

.category-schedule .report_item_sec{ border: 1px solid #ccc; padding: 0; }
.category-schedule .report_tit span,
.category-results .report_tit span{ font-size: 1.4rem; margin-right: 20px; vertical-align: middle;}
.category-schedule .report_item,
.category-results .report_item{ margin-bottom: 30px;  }


.report_txt{ font-size: 1.6rem; letter-spacing: 2px; line-height: 1.8; }
.report_txt p{ margin-bottom: 20px; }
.report_txt h2{ font-size: 2.2rem; font-weight: 700; text-align: left; padding-bottom: 10px; margin-bottom: 10px; margin-top: 20px; }
.report_txt a{ color: var(--main-color); text-decoration: underline; }
.report_txt a:hover{ color: var(--main-color); text-decoration: none; }


.report_item_footer{ background-color: #ccc; display: flex; align-items: center; justify-content: flex-end; padding: 10px; }
.report_date{ font-size: 1.4rem; margin-right: 20px; }
.report_cat{ }
.report_cat ul{ }
.report_cat ul li{ display: inline-block; background-color: var(--main-color); color: #fff; font-size: 1.2rem; padding: 3px 10px; border-radius: 40px; margin-right: 5px; }

.news_single_sec .news_item{ border-bottom: 0; }
.news_single_sec .news_tit{ font-weight: 500; padding: 10px 0; border-bottom: 1px solid var(--main-color); margin-bottom: 20px; }

.sidebar{ flex-basis: 100%; }

.sidebar_sec{ background-color: #fff; border-radius: 10px; margin-bottom: 40px; }
.sidebar_sec h3,
.h3sidebar{ font-size: 2rem; color: #666; font-weight: 700; letter-spacing: 2px; background-color: #ddd; padding: 10px; text-align: center; border-radius: 0; margin-bottom: 20px; }



.sidebar_sec ul > li{ padding: 0 0 10px 0; font-size: 1.6rem; letter-spacing: 1px; border-bottom: 1px solid #ccc; margin-bottom: 10px; }
.sidebar_sec ul > li > ul{ margin: 10px 0 0 30px; }
.sidebar_sec ul > li > ul > li{ position: relative; padding: 0px 0px 0px 1em; font-size: 1.4rem; letter-spacing: 1px; margin-bottom: 10px; border-bottom: 0; }
.sidebar_sec ul > li > ul > li:before{ position: absolute; top: 50%; left: 0px; transform: translateY(-50%); width: 0px; height: 0px; border: 0.3em solid transparent; border-left: 0.4em solid #aaa; content: ""; }

.sidebar_year{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.sidebar_year > li{ flex-basis: 49%; margin-bottom: 10px; padding-bottom: 0 !important; border-bottom: 0 !important; }
.sidebar_year > li a{ display: block; text-align: center; padding: 15px 10px; background-color: #f5f5f5; border-radius: 10px; }

.wp-pagenavi{ width: 90%; margin: 40px auto 80px auto; display: flex; justify-content: center; font-family: 'Cabin'; }
.wp-pagenavi a{ display: block; font-size: 1.8rem; text-align: center; color: var(--main-color); background-color: #fff; border-color: var(--main-color) !important; width: 30px; height: 30px; line-height: 29px; padding: 0 !important; }
.wp-pagenavi a:hover{ background-color: var(--main-color); color: #fff; }
.wp-pagenavi span.current{ display: block; width: 32px; height: 32px; line-height: 25px; text-align: center; background-color: var(--main-color); color: #fff; border: 1px solid var(--main-color) !important; margin: 2px; }
.wp-pagenavi .extend{
display: block; font-size: 1.8rem; text-align: center; color: var(--main-color); background-color: #fff; border-color: var(--main-color) !important; width: 32px; height: 32px; line-height: 30px; padding: 0 !important;
}


/* single.php pagination */
.pagination{ margin: 60px auto 0 auto; }
.pagination ul{ width: 100%; margin: 0 auto 100px auto; display: flex; justify-content: space-between; }
.pagination ul li{ flex-basis: 20%; }
.pagination ul li a{ display: block; border: 1px solid var(--main-color); color: var(--main-color); font-size: 15px; font-weight: 500; padding: 10px 10px 5px 10px; text-align: center; background-color: #fff; transition:all .3s ease; border-radius: 40px; }
.pagination ul li a:hover{ background: var(--main-color); color: #fff; opacity: 1; }
.pagination ul li.next{ text-align: left; }
.pagination ul li.next i{ margin-right: 20px; }
.pagination ul li:nth-child(2) {  }
.pagination ul li:nth-child(2) a{ display: block; }
.pagination ul li.next a,
.pagination ul li.prev a{ display: block; background: var(--main-color); color: #fff; }
.pagination ul li.next a:hover,
.pagination ul li.prev a:hover{ background: #fff; color: var(--main-color); }
.pagination ul li.prev i{ margin-left: 20px; }
.pagination ul li.next span,
.pagination ul li.prev span{ display: block; border: 1px solid #dacaca; color: #fff; background: #dacaca; font-size: 15px; font-weight: 500; padding: 10px 10px 5px 10px; text-align: center; border-radius: 40px; }



/* フォーム */
.contact .page_sec{ }

.contact_sec{ width: 100%; max-width: 980px; margin: 0 auto; }

.contact_item{ width: 100%; padding: 20px 0; flex-wrap: wrap; }
.contact_tit{ flex-basis: 100%; font-weight: 700; position: relative; padding-left: 80px; margin-right: 0; margin-bottom: 10px; }
.contact_tit p{ line-height: 1; }
.contact_tit span{ position: absolute; display: block; background-color: #bd2e2e; color: #fff; border: 1px solid #bd2e2e; padding: 5px 10px 5px 10px; left: 0px; top: 3px; font-size: 1.6rem; border-radius: 40px; line-height: 1; }
.contact_txt,
.contact_adress,
.contact_txtarea{ flex-basis: 100%; }
.mail_confirm{ font-size: 1.4rem; }
.contact_txt input{ width: 92%; font-size: 2rem; background: #fff; padding: 10px 10px; border: 1px solid #ccc; }
.contact_txt input[type="checkbox"]{ float: none; width: 15px; height: 15px; }
.contact_txt input[type="radio"]{ width: 15px; height: 15px; }
.contact_txtarea textarea{ width: 92%; font-size: 2rem; padding: 10px; border: 1px solid #ccc; background-color: #fff; }
.contact_adress_sub{}
.contact_adress_sub p{ padding: 0 0 10px 0; }
.contact_adress input{ width: 92%; font-size: 2rem; background: #fff; padding: 10px 10px; border: 1px solid #ccc; margin-left: 0; height: auto; }
.contact_submit{border-bottom: none;}
.contact_submit_btn{text-align: center; }
.contact_submit_btn input{ font-weight: 300; background-color: #e47e19; color: #fff; font-size: 1.8rem; 
    letter-spacing: 1px; padding: 15px 30px; cursor: pointer;   -webkit-appearance: none; border-radius: 0;}

input[type="checkbox"]{float: left;}
.contact_check{display: flex;}
.contact_submit .contact_tit{width: 30%;}
.wpcf7-spinner{display: block;}

.contact_submit_btn{ text-align: center; margin-top: 30px; margin-bottom: 30px;  }
.contact_submit_btn input{ background-color: var(--main-color); color: #fff; font-size: 2.2rem; letter-spacing: 1px; padding: 15px 25px; cursor: pointer; transition: 0.5s ease-in-out; border: 0; 
	font-family: "azo-sans-web", "Helvetica Neue", "Helvetica", "source-han-sans-japanese", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: 500;
}
input.wpcf7-submit:hover{ background-color: #2b6da4; }


.contact_sec ol{ margin-left: 25px; }
.contact_sec ol li{ list-style-type: decimal; font-size: 1.6rem; line-height: 1.8; margin-bottom: 5px; }
.contact_sec p{ font-size: 1.8rem; letter-spacing: 1px; line-height: 2; margin-bottom: 0px; }

::placeholder{ color: #999; }

.contact_item .wpcf7-list-item{ display: block; margin: 0 0 0 0; }

.wpcf7-not-valid-tip{ font-weight: 700 !important; }


.sitemap_sec{ width: 980px; margin: 0 auto 100px auto; }

.sitemap_sec li{ font-size: 1.7rem; letter-spacing: 2px; margin-bottom: 20px; }





/* ブロックエディタ用 */
/*
p + p {
  margin-top: 1.5em;
}
*/
em {
  font-style: italic;
}
blockquote {
  margin: 1.5em 0;
  border-left: 5px solid #ddd;
  padding: 1em 0 1em 10px;
  color: #777;
}
blockquote p + p {
  margin-top: 0.5em;
}
.aligncenter {
  display: block;
  margin-right: auto;
  margin-left: auto;
}
.alignright {
  float: right;
  margin-bottom: 20px;
  margin-left: 20px;
}
.alignleft {
  float: left;
  margin-right: 20px;
  margin-bottom: 20px;
}
/*
.wp-caption,
[class*='wp-image'] {
  display: block;
  max-width: 100% !important;
  margin-top: 1.5em;
  text-align: center;
}
*/
.wp-caption-text {
  margin-top: 0;
}

.wp-block-image{ margin: 0 !important; }


}
/* ----------------------------------------------------------
 SP CSS END
---------------------------------------------------------- */

/* ----------------------------------------------------------
 TAB CSS
---------------------------------------------------------- */
@media screen and (min-width: 681px) and (max-width: 1280px){

img,video {
  max-width: 100%;
  height: auto;
}

/* フォントサイズ10px=62.5% */
html{ font-size: 50%; }

/* 基本のフォントサイズ */
body{ font-size: 1.8rem; padding-top: 0; }

/* 非表示用 */
.noneTAB		{ display: none !important; }

/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
header{ position: fixed; top: 0; width: 100%; height: 60px; z-index: 100; box-shadow: 0px 8px 16px -6px rgba(0,0,0,0.1); }

.header_sec01{ display: flex; justify-content: space-between; background-color: var(--main-color); height: 60px; padding: 0; }

.header_logo{ flex-basis: 60%; height: auto; text-align: left; }
.header_logo img{ width: 100%; height: auto; }


.header_logo_sec{ }
.header_logo_sec img{ width: 220px; height: 28px; }
.header_logo_sec a{ display: block; line-height: normal; padding: 18px 0 0 10px; }
.header_logo_sec a:hover{ opacity: 0.6; }

.header_info{ display: none; }


.header_sec02{ background-color: #545454; display: flex; justify-content: center; }

.gnavi{  }
.gnavi_list{ display: flex; justify-content: center; align-items: center; }

.gnavi_list li > a{ display: block; font-size: 1.5rem; color: #fff; font-weight: 600; letter-spacing: 3px; padding: 0 15px; white-space: nowrap; line-height: 60px; }
.gnavi_list li > a:hover{ background-color: #222; }


.header_member{ }
.header_member a{ display: block; padding: 0 15px; background-color: var(--member-color); color: #333; font-size: 1.5rem; font-weight: 600; line-height: 60px; }
.header_member a i{ font-size: 2rem; margin-right: 10px; }
.header_member a:hover{ color: var(--member-color); background-color: #333; }


/* ACCORDION */
.accordion_icon{display: flex; gap: 10%; justify-content: center; margin: 60px auto 20px;font-size: 2.5rem;}
nav .accordion_icon a{border-bottom: none;}
nav .accordion_tell a i{color: #4DABE9;  border-radius: 100%; background-color: #fff; border: 2px solid #4DABE9; padding: 12px; }
nav .accordion_contact a i{color: #1D497B;  border-radius: 100%; background-color: #fff; border: 2px solid #1D497B; padding: 12px;}
nav .btn_trial_wrapper a{color: #fff; text-align: center;  border-bottom: solid 5px #AE6333;}
nav .btn_trial_item01 .free_trial{font-size: 2.3rem;}

/* ACCORDION toggle */
.accordion_logo{ width: 80%; margin: 0 auto 30px; text-align: center; }
.toggle p{
position: absolute;
color: #2B4F91;
left: 50%;
bottom: 27px;
transform: translate(-50%, 0);
}

.toggle{
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
display: block;
position: fixed;
top: 0;
right: 0;
z-index: 1000;
margin: 0;
padding: 0;
width: 60px;
height: 60px;
border: none;
transition: background-color 0.2s ease;
cursor: pointer;
background-color: #545454;
}

.toggle::before,
.toggle::after{ content: ""; background-color: #000; transition: background-color 0.3s ease; }
.toggle > span,
.toggle:before,
.toggle:after{
display: block;
background-color: #fff;
position: absolute;
top: 50%;
left: 48%;
width: 35px;
height: 2px;
margin: -2px 0 0 -15px;}
.toggle:before{transform: translateY(-9px);}
.toggle:after{transform: translateY(9px);}


.toggle{ position: fixed; }

.menu_list{
display: none; 
position: fixed;
width: 100%;
height: 100vh;
margin: 0;
list-style: none;
top: 0;
left: 0;
padding: 60px 25px;
background-color: #fff;
}
.toggle[aria-expanded=true] > span{ opacity: 0; }
.toggle[aria-expanded=true]::before, .toggle[aria-expanded=true]::after{}
.toggle[aria-expanded=true]::before{ animation: 0.3s ease closeBar1 forwards; }
.toggle[aria-expanded=true]::after{ animation: 0.3s ease closeBar2 forwards; }
.toggle.-close::before{ animation: 0.3s ease closeBar1Rev forwards; }
.toggle.-close::after{ animation: 0.3s ease closeBar2Rev forwards; }

@keyframes closeBar1{
	0%{ transform: translateY(-10px); }
	50%{ transform: translateY(0) rotate(0); }
	100%{ transform: translateY(0) rotate(45deg); }
}

@keyframes closeBar2{
	0%{ transform: translateY(10px); }
	50%{ transform: translateY(0) rotate(0); }
	100%{ transform: translateY(0) rotate(-45deg); }
}
@keyframes closeBar1Rev{
	0%{ transform: translateY(0) rotate(45deg); }
	50%{ transform: translateY(0) rotate(0); }
	100%{ transform: translateY(-10px); }
}
@keyframes closeBar2Rev {
	0%{	transform: translateY(0) rotate(-45deg); }
	50%{ transform: translateY(0) rotate(0); }
	100%{ transform: translateY(10px); }
}

.nav {
position: fixed;
top: 0;
right: 0;
z-index: 100;
width: 100%;
height: 100%;
padding: 60px 30px;
border: 1px solid #f5f5f5;
justify-content: center;
align-content: center;
align-items: center;
overflow: scroll;
background: rgba(255,255,255,1);
color: #333;
transition: opacity 0.3s ease, visibility 0.3s ease;
/* スクロールバー非表示 */
/*IE(Internet Explorer)・Microsoft Edgeへの対応*/
-ms-overflow-style: none;
/*Firefoxへの対応*/
scrollbar-width: none;
}

/*Google Chrome、Safariへの対応*/
.nav::-webkit-scrollbar{
display: none;

}

.nav[aria-hidden=true] {
visibility: hidden;
opacity: 0;
pointer-events: none;

}
.nav[aria-hidden=false] {
visibility: visible;
opacity: 1;
pointer-events: auto;
overflow: scroll;
}

.accordion_menu li{ font-size: 1.8rem; font-weight: 700; line-height: 1.5; }
.accordion_menu li a{ display: block; color: #333; border-bottom: 1px solid #ccc; padding: 15px 0; transition: .5s; line-height: 1; }

.sp_member{ width: 50%; margin-top: 10px; }
.sp_member a{ display: block; padding: 0 15px; background-color: var(--member-color); color: #333; font-size: 1.8rem; font-weight: 600; line-height: 60px; border-radius: 5px; }
.sp_member a i{ font-size: 2rem; margin-right: 10px; }
.sp_member a:hover{ color: var(--member-color); background-color: #333; }




/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
/* ページ下部 固定メニュー */
.btm_menu{ display: none; }

footer{ background-color: #222; padding: 60px 0 20px 0; }
.footer_logo{ width: 300px; margin: 0 auto 20px auto; }
.footer_logo a:hover{ opacity: .6; }
.footer_add{ font-size: 1.2rem; color: #a7a7a7; letter-spacing: 2px; text-align: center; padding: 0 10px; }


.footer_telfax{ margin: 0 auto; display: flex; justify-content: center; align-content: center; font-family: 'Cabin'; flex-wrap: wrap; }
.footer_telfax01{ flex-basis: 100%; font-size: 2.2rem; color: #a7a7a7; letter-spacing: 2px; margin: 0 1%; text-align: center; }
.footer_telfax01 span{ font-size: 1.3rem; }

.footer_btn{ width: 90%; margin: 0 auto; display: flex; justify-content: space-between; }

.footer_memberonly_btn{ margin: 20px auto 30px auto; }
.footer_memberonly_btn a{ font-size: 1.8rem; padding: 20px 15px; }


.footer_contact_btn{ margin: 20px auto 30px auto; }
.footer_contact_btn a{ font-size: 1.8rem; padding: 20px 15px; }




.footer_copyright{ font-size: 1.2rem; color: #ccc; text-align: center; letter-spacing: 2px; padding-bottom: 10px; }


	
/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */

.h1_wrap{ padding: 80px 0 30px 0; background-color: #f5f5f5; }
.h1_wrap_sec{ text-align: center; }
.h1_01{ font-size: 1.3rem; font-family: 'Cabin'; letter-spacing: 2px; font-weight: 700; }
.h1_wrap_sec h1{ font-size: 4rem; letter-spacing: 3px; }


h2{ font-size: 3.5rem; color: #333; font-weight: 400; text-align: center; letter-spacing: 4px; padding-bottom: 20px; border-bottom: 2px solid var(--main-color); margin-bottom: 30px; line-height: 1.2; }
h2 span{ display: block; font-size: 2rem; font-weight: 400; }

h3{ font-size: 2.2rem; color: #666; font-weight: 700; letter-spacing: 2px; background-color: #eee; padding: 15px; text-align: center; border-radius: 10px; margin-bottom: 20px; }


/* ぱんくず */

.breadcrumbs_sec{ text-align: center; } 
.breadcrumbs_sec > span{ display: inline-block; position: relative; color: #333; font-size: 1.2rem; }
.breadcrumbs_sec > span span{ margin-left: 15px; }
.breadcrumbs_sec > span a span{ margin-left: 0; }
.breadcrumbs_sec > span:first-child span{ margin-left: 0; }
.breadcrumbs_sec > span br{ display: none; }
.breadcrumbs_sec > span:before{ content: "/"; display: block; position: absolute; top: 0; left: 5px; color: #333; font-size: 12px; }
.breadcrumbs_sec span:first-child:before{ content: ""; margin-left: 0; }
.breadcrumbs_sec > span a{ color: #333; font-size: 1.2rem; margin: 0 0 0 20px; }
.breadcrumbs_sec > span:first-child a{ margin: 0 0 0 0; }
.breadcrumbs_sec span a:hover{ opacity: 0.6; }


/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */

.main{  }
.contents{ width: 100%; margin: 0 auto; }

.top_img_wrap{ background-color: #f5f5f5; padding: 70px 0 20px 0; margin-bottom: 20px; }
.top_img{ width: 100%; margin: 0 auto; }


.splide__slide img {
height: auto;
width: 100%;
}

.top_img_catch01{ font-size: 4rem; text-align: center; letter-spacing: 5px; margin-top: 20px; }
.top_img_catch01 span{ font-weight: 700; }
.top_img_catch02{ font-size: 1.8rem; text-align: center; letter-spacing: 3px; }


.top_contents{ width: 90%; max-width: 1300px; margin: 0 auto; }
.top_contents_list{ display: flex; justify-content: space-between; }
.top_contents_item{ }
.top_contents_item_btn{ flex-basis: 60%; }
.top_contents_btn_list{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.top_contents_btn_item{ flex-basis: 49%; margin-bottom: 20px; position: relative; overflow: hidden; }
.top_contents_item_news{ flex-basis: 36%; }
.top_contents_tit{ flex-wrap: wrap; }
.top_contents_tit01{ font-size: 2.2rem; padding: 10px 10px 10px 40px; letter-spacing: 3px; height: auto; line-height: initial; }
.top_contents_tit01:before{ top: 18px; left: 15px; width: 8px; height: 8px; border-top: 2px solid #fff; border-right: 2px solid #fff; }
.top_contents_btn01{ display: none; flex-basis: 100%; }
.top_contents_btn01 a{ display: block; color: #fff; font-size: 1.8rem; font-weight: 700; background-color: var(--main-color); height: 60px; line-height: 60px; padding: 0 20px; text-align: center; }
.top_contents_btn01 a:hover{ background-color: #333; }
.top_contents_txt{ padding: 10px 20px 20px 20px; height: auto; overflow: hidden; }

.top_contents_tit02{ font-size: 2rem; font-weight: 700; margin-bottom: 10px; }
.top_contents_img01{ float: right; width: 100px; margin: 0 0 10px 10px; }
.top_contents_img01 img{ width: 100%; height: auto; }
.top_contents_btn02{ width: 150px; margin-top: 30px; }
.top_contents_btn02 a{ display: block; color: #fff; font-size: 1.6rem; text-align: center; padding: 5px 15px; border-radius: 40px; background-color: var(--main-color); border: 1px solid var(--main-color); }
.top_contents_btn02 a:hover{ background-color: #fff; color: var(--main-color); }

.top_contents_btn_item:after{ position: absolute; content: ""; display: block; width: 100%; height: 100%; top: 0; transition: all .3s ease-out; }
.top_contents_btn_item a{ padding: 20px 10px; }

.top_contents_btn_item_ico01{ }
.top_contents_btn_item_ico01 i{ font-size: 4.5rem; }
.top_contents_btn_item_tit01{ color: #fff; }
.top_contents_btn_item_tit01 span{ font-size: 1.4rem; }
.top_contents_btn_item_tit01 p{ font-size: 2.7rem; }




.top_information{ background-color: #f5f5f5; padding: 60px 0; }
.top_information_list{ width: 90%; max-width: 1300px; margin: 0 auto; display: flex; justify-content: space-between; }
.top_information_item{ flex-basis: 49%; }

.top_information_item_list{ margin-top: 20px; }
.top_information_item_item{ flex-wrap: wrap; border-bottom: 1px solid #ccc; padding: 0 0 15px 0; margin-bottom: 15px; }
.top_information_item_item_date01{ flex-basis: 100%; font-size: 1.4rem; margin-bottom: 5px; }
.top_information_item_item_tit01{ flex-basis: 100%; font-size: 1.8rem; font-weight: 700; }


.top_information_tit{ display: flex; justify-content: space-between; align-items: center; background-color: #545454; }
.top_information_tit01{ position: relative; color: #fff; font-size: 2.2rem; font-weight: 700; padding: 10px 10px 10px 40px; letter-spacing: 3px; height: auto; line-height: initial; }
.top_information_tit01:before{ top: 19px; left: 15px; width: 8px; height: 8px; border-top: 2px solid #fff; border-right: 2px solid #fff; }
.top_information_btn01{}
.top_information_btn01 a{ display: block; color: #fff; font-size: 1.8rem; font-weight: 700; background-color: var(--main-color); height: 60px; line-height: 60px; padding: 0 20px; text-align: center; }
.top_information_btn01 a:hover{ background-color: #333; }


/* ページ内アンカー */
.anker_nav{  }
.anker_nav > nav{ display: block; }
.anker_nav > nav ul{ width: 50%; margin: 0 auto 60px auto; display: flex; justify-content: center;  flex-wrap: wrap; background-color: var(--main-color); padding: 15px; border-radius: 0 0 10px 10px; }
.anker_nav > nav li{ position: relative; margin: 0 0 0 30px; color: #fff; }
.anker_nav > nav li a{ font-size: 1.5rem; color: #fff; }
.anker_nav > nav li:before{ content: "/"; display: block; position: absolute; top: 3px; left: -15px; font-size: 1.5rem; }
.anker_nav > nav li:first-child:before{ content: ""; margin-left: 0; }



.page_sec{ width: 1200px; max-width: 90%; margin: 0 auto; }
.page_sec p{ font-size: 1.8rem; letter-spacing: 2px; line-height: 1.8; margin-bottom: 30px; }


.about .page_sec p,
.guide .page_sec p,
.privacy_sec p{ width: 90%; margin: 0 auto 30px auto; }

.about_list{}
.about_item{ padding: 15px; border-bottom: 1px solid #ccc; display: flex; justify-content: flex-start; }
.about_item01_tit01{ flex-basis: 20%; position: relative; padding-left: 30px; }
.about_item01_tit01:before{ position: absolute; content: ""; left: 0; top: 5px; width: 15px; height: 15px; border-radius: 100%; background-color: var(--main-color); }
.about_item01_dot01{ flex-basis: 9%; }
.about_item01_txt01{ flex-basis: 80%; }


.about_history_list{}
.about_history_item{ padding: 15px; border-bottom: 1px solid #ccc; display: flex; justify-content: flex-start; }
.about_history_year{ flex-basis: 20%; }
.about_history_list01{ flex-basis: 50%; }
.about_history_item01{ list-style-type: disc; }


.greeting .page_sec{ width: 90%; max-width: 1100px; }
.greeting .page_sec p{ font-size: 1.6rem; letter-spacing: 2px; line-height: 2.2; margin-bottom: 30px; }



.greeting_img01{}
.greeting_img01 figure{ margin: 0 0 20px 40px !important; text-align: center; width: 30%; }
.greeting_img01 figure img{ width: 100%; height: auto; }
.greeting_img01 figcaption{ text-align: center; font-size: 3rem; font-weight: 700; }
.greeting_img01 figcaption span{ text-align: center; font-size: 1.7rem; font-weight: 400; }
.wp-block-image :where(figcaption){ margin-top: 0 !important; margin-bottom: 0 !important; }

.greeting_name01{ text-align: right !important; font-size: 1.9rem !important; line-height: 1.4 !important; }




.list01{}
.list01 > li{ position: relative; font-size: 1.8rem; padding-left: 30px; margin-bottom: 10px; }
.list01 > li:before{ position: absolute; content: ""; left: 0; top: 5px; width: 15px; height: 15px; border-radius: 100%; background-color: var(--main-color); }


.flow_list{ display: flex; justify-content: center; }
.flow_item{ flex-basis: 20%; text-align: center; }
.flow_sec{}
.flow_sec01{ width: 140px; height: 140px; background-color: var(--main-color); border-radius: 100%; margin: 0 auto 10px auto; padding-top: 30px; }
.flow_sec01 i{ color: #fff; font-size: 7.5rem; }
.flow_sec01 p{ font-size: 2.3rem; color: #fff; font-weight: 700; text-align: center; }
.flow_sec01_txt01{ width: 90%; margin: 0 auto; font-size: 1.8rem; line-height: 1.8; letter-spacing: 2px; text-align: left; }
.flow_arrow{ flex-basis: 2%; text-align: center; color: var(--main-color); font-size: 3rem; padding-top: 60px; margin: 0 1%; }


.voice_sec{}
.voice_list{ display: flex; justify-content: space-between; }
.voice_item{ flex-basis: 48%; }
.voice_item_sec_img{ display: flex; align-items: center; margin-bottom: 30px; }
.voice_img01{ flex-basis: 30%; border: 1px solid #ccc; margin-right: 30px; }
.voice_img01 img{ border: 5px solid #f0f0f0; }
.voice_item_sec_tit{}
.voice_item_sec_tit01{ font-size: 1.5rem; letter-spacing: 2px; margin-bottom: 5px; }
.voice_item_sec_tit02{ font-size: 2.2rem; letter-spacing: 2px; margin-bottom: 5px; }
.voice_item_sec_tit03{ font-size: 1.5rem; letter-spacing: 2px; }
.voice_item_sec_txt{ font-size: 1.7rem; letter-spacing: 2px; line-height: 1.8; }



.terms h2{ font-size: 3rem; text-align: left; padding: 0; border-bottom: 0; margin-bottom: 10px; }
.terms h3{ font-size: 2.5rem; color: #333; text-align: left; padding: 0; background: none; font-weight: normal; margin-bottom: 10px; }

.terms .list01{ margin-bottom: 20px; }


.column01{ padding-bottom: 20px; border-bottom: 1px solid #ccc; }

.terms .list01 ol{ margin: 10px 0 0 100px; }
.terms .list01 ol li{ list-style-type: decimal; font-size: 1.6rem; padding-left: 0;  margin-bottom: 10px; }
.terms .list01 ol li:before{ display: none; }
.terms .list01 ol li ol{ margin-left: 30px; }
.terms .list01 ol li ol li{ list-style-type: none; counter-increment: cnt; margin-bottom: 5px; }
.terms .list01 ol li ol li:before{ content: "[" counter(cnt) "]"; display:inline-block; }


.database_sec{ width: 100%; margin: 60px 0 120px 0; }
.seizou_sec{}
.database_list{ display: flex; justify-content: flex-start; flex-wrap: wrap; }
.database_item{ flex-basis: 19%; margin: 0 1% 30px 0; }
.database_item a:hover{ opacity: .6; }
.database_item_tit{ background-color: #2d2d2d; color: #fff; font-size: 3.5rem; font-weight: 700; letter-spacing: 2px; display: flex; align-content: center; align-items: center; justify-content: center; }
.seizou_sec .database_item_tit{ flex-basis: 38%;  }
.database_img01{ margin-bottom: 10px; }
.database_img01 img{ width: 100%; height: auto; }
.database_tit01{ font-size: 2rem; text-align: center; font-weight: 700; }
.kenchiku_sec .database_item_tit{ flex-basis: 58%; }


.database_cat_sec{ width: 100%; margin: 60px auto 40px auto; }

.database_cat_tit01{ background-color: var(--main-color); display: flex; align-items: center; padding: 10px; margin-bottom: 40px; }
.database_cat_ico01{ margin-right: 20px; }
.database_cat_ico01 img{ width: 100px; height: 100px; }
.database_cat_txt01{ font-size: 3.5rem; font-weight: 700; color: #fff; letter-spacing: 2px; }
.database_cat_txt01 span{ display: block; font-size: 1.5rem; font-family: 'Cabin'; font-weight: 700; letter-spacing: 3px; }

.memberlist_sec{ width: 100%; margin: 0 auto; }
.memberlist_list{}
.memberlist_item{ margin-bottom: 60px; }
.memberlist_item_tit{ display: flex; justify-content: space-between; border-left: 5px solid var(--main-color); background-color: #222; height: 60px; }
.memberlist_item_tit01{ color: #fff; font-size: 2.3rem; font-weight: 700; letter-spacing: 2px; line-height: 60px; }
.memberlist_item_tit01 i{ font-size: 1.6rem; margin: 0 10px 0 15px; }
.memberlist_item_btn01{ flex-basis: 22%; }
.memberlist_item_btn01 a{ display: flex; justify-content: center; align-content: center; align-items: center; color: #fff; background-color: var(--btn-color); font-size: 1.8rem; text-align: center; height: 60px; }
.memberlist_item_btn01 a i{ margin-left: 10px; }
.memberlist_item_btn01 a:hover{ background-color: #17624a; }
.memberlist_item_txt{ display: flex; border-bottom: 1px solid #ccc; padding: 15px; }
.memberlist_item_txt01{ flex-basis: 20%; font-size: 1.8rem; font-weight: 700; text-align: center; }
.memberlist_item_txt02{ flex-basis: 80%; font-size: 1.8rem; }
.memberlist_item_pr{ margin-top: 20px; background-color: #f5f5f5; padding: 20px; }
.memberlist_item_pr_tit01{ font-family: 'Cabin'; font-weight: 700; letter-spacing: 3px; color: var(--main-color); margin-bottom: 5px; }
.memberlist_item_pr_tit01 img{ vertical-align: middle; margin-right: 10px; }
.memberlist_item_pr_txt01{ font-size: 1.8rem; letter-spacing: 2px; line-height: 1.8; }

.memberlist_footer{ width: 100%; max-width: 1070px; margin: 80px auto 0 auto; }
.memberlist_footer .database_item_tit{ background-color: #2d2d2d; color: #fff; font-size: 2.2rem; font-weight: 700; letter-spacing: 2px; display: flex; align-content: center; align-items: center; justify-content: center; }
.memberlist_footer .seizou_sec .database_item_tit{ flex-basis: 35%; }
.memberlist_footer .database_item{ flex-basis: 11%; margin: 0 1% 30px 0; }
.memberlist_footer .database_tit01{ font-size: 1.5rem; }
.memberlist_footer .kenchiku_sec .database_item_tit{ flex-basis: 13%; }
.memberlist_footer .kenchiku_sec .database_item_tit{ font-size: 2rem; }


.report_news{ width: 90%; max-width: 1000px; margin: 60px auto 120px auto; }
.report_news .report_sec01{ flex-basis: 100%; }

.report_sec{ width: 90%; max-width: 1300px; margin: 60px auto 120px auto; display: flex; justify-content: space-between; }
.report_sec01{ flex-basis: 70%; }



.report_list{ }
.report_item{ margin-bottom: 60px;  }
.report_tit{ flex-basis: 100%; font-size: 2.5rem; letter-spacing: 2px; }

.report_tit{ border-left: 5px solid var(--main-color); background-color: #222; padding: 10px; text-align: left; line-height: 1.3; }
.report_tit{ color: #fff; font-size: 2.3rem; font-weight: 700; letter-spacing: 2px;  }
.report_tit i{ font-size: 1.6rem; margin: 0 10px 0 15px; }

.report_date{  }
.report_cat{  }

.report_item_sec{ border: 1px solid #ccc; padding: 20px 30px 30px 30px; }

.category-schedule .report_item_sec{ border: 1px solid #ccc; padding: 0; }
.category-schedule .report_tit span,
.category-results .report_tit span{ font-size: 1.4rem; margin-right: 20px; vertical-align: middle;}
.category-schedule .report_item,
.category-results .report_item{ margin-bottom: 30px;  }


.report_txt{ font-size: 1.6rem; letter-spacing: 2px; line-height: 1.8; }
.report_txt p{ margin-bottom: 20px; }
.report_txt h2{ font-size: 2.2rem; font-weight: 700; text-align: left; padding-bottom: 10px; margin-bottom: 10px; margin-top: 20px; }
.report_txt a{ color: var(--main-color); text-decoration: underline; }
.report_txt a:hover{ color: var(--main-color); text-decoration: none; }


.report_item_footer{ background-color: #ccc; display: flex; align-items: center; justify-content: flex-end; padding: 10px; }
.report_date{ font-size: 1.4rem; margin-right: 20px; }
.report_cat{ }
.report_cat ul{ }
.report_cat ul li{ display: inline-block; background-color: var(--main-color); color: #fff; font-size: 1.4rem; padding: 5px 20px; border-radius: 40px; margin-right: 5px; margin-bottom: 5px; }

.news_single_sec .news_item{ border-bottom: 0; }
.news_single_sec .news_tit{ font-weight: 500; padding: 10px 0; border-bottom: 1px solid var(--main-color); margin-bottom: 20px; }

.sidebar{ flex-basis: 25%; }

.sidebar_sec{ background-color: #fff; border-radius: 10px; margin-bottom: 40px; }
.sidebar_sec h3,
.h3sidebar{ font-size: 2rem; color: #666; font-weight: 700; letter-spacing: 2px; background-color: #ddd; padding: 10px; text-align: center; border-radius: 0; margin-bottom: 20px; }



.sidebar_sec ul > li{ padding: 0 0 10px 0; font-size: 1.6rem; letter-spacing: 1px; border-bottom: 1px solid #ccc; margin-bottom: 10px; }
.sidebar_sec ul > li > ul{ margin: 10px 0 0 30px; }
.sidebar_sec ul > li > ul > li{ position: relative; padding: 0px 0px 0px 1em; font-size: 1.4rem; letter-spacing: 1px; margin-bottom: 10px; border-bottom: 0; }
.sidebar_sec ul > li > ul > li:before{ position: absolute; top: 50%; left: 0px; transform: translateY(-50%); width: 0px; height: 0px; border: 0.3em solid transparent; border-left: 0.4em solid #aaa; content: ""; }


.wp-pagenavi{ width: 90%; margin: 40px auto 80px auto; display: flex; justify-content: center; font-family: 'Cabin'; }
.wp-pagenavi a{ display: block; font-size: 1.8rem; text-align: center; color: var(--main-color); background-color: #fff; border-color: var(--main-color) !important; width: 30px; height: 30px; line-height: 29px; padding: 0 !important; }
.wp-pagenavi a:hover{ background-color: var(--main-color); color: #fff; }
.wp-pagenavi span.current{ display: block; width: 32px; height: 32px; line-height: 25px; text-align: center; background-color: var(--main-color); color: #fff; border: 1px solid var(--main-color) !important; margin: 2px; }
.wp-pagenavi .extend{
display: block; font-size: 1.8rem; text-align: center; color: var(--main-color); background-color: #fff; border-color: var(--main-color) !important; width: 32px; height: 32px; line-height: 30px; padding: 0 !important;
}


/* single.php pagination */
.pagination{ margin: 60px auto 0 auto; }
.pagination ul{ width: 100%; margin: 0 auto 100px auto; display: flex; justify-content: space-between; }
.pagination ul li{ flex-basis: 20%; }
.pagination ul li a{ display: block; border: 1px solid var(--main-color); color: var(--main-color); font-size: 15px; font-weight: 500; padding: 10px 10px 5px 10px; text-align: center; background-color: #fff; transition:all .3s ease; border-radius: 40px; }
.pagination ul li a:hover{ background: var(--main-color); color: #fff; opacity: 1; }
.pagination ul li.next{ text-align: left; }
.pagination ul li.next i{ margin-right: 20px; }
.pagination ul li:nth-child(2) {  }
.pagination ul li:nth-child(2) a{ display: block; }
.pagination ul li.next a,
.pagination ul li.prev a{ display: block; background: var(--main-color); color: #fff; }
.pagination ul li.next a:hover,
.pagination ul li.prev a:hover{ background: #fff; color: var(--main-color); }
.pagination ul li.prev i{ margin-left: 20px; }
.pagination ul li.next span,
.pagination ul li.prev span{ display: block; border: 1px solid #dacaca; color: #fff; background: #dacaca; font-size: 15px; font-weight: 500; padding: 10px 10px 5px 10px; text-align: center; border-radius: 40px; }



/* フォーム */
.contact .page_sec{ }

.contact_sec{ width: 100%; max-width: 980px; margin: 0 auto 100px auto; }

.contact_item{display: flex; align-items: center; width: 100%; padding: 20px 20px; border-bottom: 1px solid #ccc;}
.contact_tit{ flex-basis: 35%; font-weight: 700; position: relative; padding-left: 80px; margin-right: 20px; }
.contact_tit p{ line-height: 1; }
.contact_tit span{ position: absolute; display: block; color: #fff; padding: 5px 10px 5px 10px; left: 0px; top: 3px; font-size: 1.6rem; border-radius: 40px; line-height: 1; }
.contact_tit span.must{ background-color: #ec0000; border: 1px solid #ec0000; }
.contact_tit span.optional{ background-color: #999; border: 1px solid #999; }
.contact_txt,
.contact_adress,
.contact_txtarea{ flex-basis: 65%;}
.contact_txt input{ width: 100%; font-size: 2rem; background: #fff; padding: 10px 10px; border: 1px solid #ccc; }
.contact_txt input[type="checkbox"]{ float: none; width: 15px; height: 15px; }
.contact_txt input[type="radio"]{ width: 15px; height: 15px; }
.contact_txtarea textarea{ width: 100%; font-size: 2rem; padding: 8px; border: 1px solid #ccc; background-color: #fff; }
.contact_adress_sub p{padding: 15px 0;}
.contact_adress input{ width: 100%; background: #fff; border: 1px solid #ccc; height: 35px; margin-left: 15px; font-size: 2rem; }
.contact_submit{border-bottom: none;}
.contact_submit_btn{text-align: center; }
.contact_submit_btn input{ font-weight: 300; background-color: #e47e19; color: #fff; font-size: 1.8rem; 
    letter-spacing: 1px; padding: 15px 30px; cursor: pointer;   -webkit-appearance: none; border-radius: 0;}

input[type="checkbox"]{float: left;}
.contact_check{display: flex;}
.contact_submit .contact_tit{width: 30%;}
.wpcf7-spinner{display: block;}

.contact_submit_btn{ text-align: center; margin-top: 60px; margin-bottom: 60px;  }
.contact_submit_btn input{ background-color: var(--main-color); color: #fff; font-size: 2.2rem; letter-spacing: 1px; padding: 15px 25px; cursor: pointer; transition: 0.5s ease-in-out; border: 0; 
	font-family: "azo-sans-web", "Helvetica Neue", "Helvetica", "source-han-sans-japanese", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: 500;
}
input.wpcf7-submit:hover{ background-color: #2b6da4; }


.contact_sec ol{ margin-left: 25px; }
.contact_sec ol li{ list-style-type: decimal; font-size: 1.6rem; line-height: 1.8; margin-bottom: 5px; }
.contact_sec p{ font-size: 1.8rem; letter-spacing: 1px; line-height: 2; margin-bottom: 0px; }

::placeholder{ color: #999; }

.contact_item .wpcf7-list-item{ display: block; margin: 0 0 0 0; }

.wpcf7-not-valid-tip{ font-weight: 700 !important; }


.sitemap_sec{ width: 980px; margin: 0 auto 100px auto; }

.sitemap_sec li{ font-size: 1.7rem; letter-spacing: 2px; margin-bottom: 20px; }





/* ブロックエディタ用 */
/*
p + p {
  margin-top: 1.5em;
}
*/
em {
  font-style: italic;
}
blockquote {
  margin: 1.5em 0;
  border-left: 5px solid #ddd;
  padding: 1em 0 1em 10px;
  color: #777;
}
blockquote p + p {
  margin-top: 0.5em;
}
.aligncenter {
  display: block;
  margin-right: auto;
  margin-left: auto;
}
.alignright {
  float: right;
  margin-bottom: 20px;
  margin-left: 20px;
}
.alignleft {
  float: left;
  margin-right: 20px;
  margin-bottom: 20px;
}
/*
.wp-caption,
[class*='wp-image'] {
  display: block;
  max-width: 100% !important;
  margin-top: 1.5em;
  text-align: center;
}
*/
.wp-caption-text {
  margin-top: 0;
}

.wp-block-image{ margin: 0 !important; }





}
/* ----------------------------------------------------------
TAB CSS END
---------------------------------------------------------- */

/* ----------------------------------------------------------
PC CSS
---------------------------------------------------------- */
@media print, screen and (min-width: 1281px) and (max-width: 1600px){

/* フォントサイズ10px */
html{ font-size: 62.5%; }

/* 基本のフォントサイズ */
body{ font-size: 16px; font-size: 1.8rem; }

/* 非表示用 */
.nonePC		{ display: none !important; }

/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
header{ position: fixed; top: 0; width: 100%; height: 140px; z-index: 100; box-shadow: 0px 8px 16px -6px rgba(0,0,0,0.1); }

.header_sec01{ display: flex; justify-content: space-between; background-color: var(--main-color); height: 80px; padding: 0 3%; }

.header_logo{ flex-basis: 25%; text-align: right; }


.header_logo_sec{ }
.header_logo_sec img{ width: 350px; height: 45px; }
.header_logo_sec a{ display: block; line-height: 65px; }
.header_logo_sec a:hover{ opacity: 0.6; }

.header_info{ flex-basis: 35%; max-width: 430px; display: flex; justify-content: space-between; flex-wrap: wrap; padding-top: 20px; }
.header_telfax01{ flex-basis: 50%; font-size: 2.2rem; color: #fff; letter-spacing: 2px; }
.header_telfax01:first-child{ text-align: right; margin-right: 10px; }
.header_telfax01:last-child{ text-align: left; margin-left: 10px; }




/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
/* ページ下部 固定メニュー */
.btm_menu{ display: none; }

.footer_btn{ width: 60%; margin: 0 auto; display: flex; justify-content: space-between; }



/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */



/* ぱんくず */
.breadcrumbs_sec{ text-align: center; } 
.breadcrumbs_sec > span{ display: inline-block; position: relative; color: #333; font-size: 1.2rem; }
.breadcrumbs_sec > span span{ margin-left: 15px; }
.breadcrumbs_sec > span a span{ margin-left: 0; }
.breadcrumbs_sec > span:first-child span{ margin-left: 0; }
.breadcrumbs_sec > span br{ display: none; }
.breadcrumbs_sec > span:before{ content: "/"; display: block; position: absolute; top: 0; left: 5px; color: #333; font-size: 12px; }
.breadcrumbs_sec span:first-child:before{ content: ""; margin-left: 0; }
.breadcrumbs_sec > span a{ color: #333; font-size: 1.2rem; margin: 0 0 0 20px; }
.breadcrumbs_sec > span:first-child a{ margin: 0 0 0 0; }
.breadcrumbs_sec span a:hover{ opacity: 0.6; }

/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */

.main{  }
.contents{ width: 1200px; margin: 0 auto; }

.top_img_wrap{ background-color: #f5f5f5; padding: 50px 0; margin-bottom: 20px; }
.top_img{ width: 1200px; margin: 0 auto; }

.splide__slide img{ width: 1200px; height: 424px; }

/* ページ内アンカー */
.anker_nav > nav ul{ width: 35%; }




}
/* ----------------------------------------------------------
 PC CSS END
---------------------------------------------------------- */
/* ----------------------------------------------------------
 PC WIDE CSS
---------------------------------------------------------- */
@media screen and (min-width: 1601px){
/* フォントサイズ10px */
html{ font-size: 62.5%; height: 100%; }

/* 基本のフォントサイズ */
body{ font-size: 16px; font-size: 1.8rem; height: 100%; }

/* 非表示用 */
.nonePCWIDE		{ display: none !important; }

/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
#toggle{ display: none; }

	
/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
/* ページ下部 固定メニュー */
.btm_menu{ display: none; }



/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */



/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.splide__slide img{ width: 1300px; height: 460px; }

}
/* ----------------------------------------------------------
 PCWIDE CSS END
---------------------------------------------------------- */