@charset "utf-8";

/* =Reset default browser CSS.
Based on work by Eric Meyer:http://meyerweb.com/eric/tools/css/reset//
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td{border:0;font-family:inherit;font-size:100%;font-style:inherit;font-weight:inherit;margin:0;outline:0;padding:0;vertical-align:baseline;}
:focus{outline:0;}

ol, ul{list-style:none;}
table{border-collapse:separate;border-spacing:0;}
caption, th, td{font-weight:normal;text-align:left;}
blockquote:before, blockquote:after,q:before, q:after{content:"";}
blockquote, q{quotes:"" "";}
a img{border:0;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section{display:block;}
/* -------------------------------------------------------------- */

*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
body{
color:#000;
font-size:16px;
/*font-family:verdana,"ヒラギノ丸ゴ ProN W4","Hiragino Maru Gothic ProN","メイリオ","Meiryo","ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;*/
line-height:1.7;
}
*{
/*font-family: "SeuratProN-M";*/
font-family: 'Noto Sans JP', sans-serif;
}

/* リンク設定
------------------------------------------------------------*/
a{color:#0090D5;text-decoration:none;}
a:hover{color:#0090D5;}
a:active, a:focus {outline:0;}
a.hoverLight:hover{
  opacity: .8;
}

/* 全体
------------------------------------------------------------*/
.inner{
margin:0 auto;
max-width:960px;
}
.row{
padding-left: 15px;
padding-right: 15px;
margin: 0;
}
.row img{
width: 100%;
}
h2{
text-align: center;
font-size: 1.6em;
letter-spacing: 0.5em;
font-weight: 900;
line-height: 1.2em;
margin-bottom: 20px;
}
h2 p{
font-size: 0.5em;
letter-spacing: 0.3em;
font-weight: 500;
color: #B7B0AC;
font-family: 'M PLUS Rounded 1c', sans-serif;
}

/**************************
/* ヘッダー
**************************/
#header{
width:960px;
margin:0 auto;
text-align: center;
position: relative;
}
#header .logo{
width: 300px;
position: absolute;
top:28px;
}
#header .logo img{
width: 100%;
}
#header h1{
padding:5px 0 10px;
font-size:1.1em;
font-weight:700;
letter-spacing: 0.1em;
}
#header .sukitoma{
margin: 20px 0;
width: 100px;
}
#mainNav{
font-family: "M PLUS Rounded 1c";
}
#header .h_banner{
width: 150px;
position: absolute;
top:25px;
right: 0;
border: 1px solid #969696;
}
#header .h_banner img{
width: 100%;
}

/**************************
/* メニュー
**************************/
@media only screen and (min-width:960px){
nav div.panel{
display:block !important;
float:left;
}
a#menu{display:none;}
.sub-menu li{
padding-left:10px;
padding-top:5px;
padding-bottom:5px;
font-size:small;
}
#mainNav{
clear:both;
z-index:200;
position:relative;
width:960px;
border-top:1px #A0A0A0 solid;
/*border-left:1px #A0A0A0 solid;*/
margin-left: auto;
margin-right: auto;
}
#mainNav li{
float:left;
position:relative;
}
#mainNav li a{
color:#555;
display: block;
text-align: center;
_float:left;
font-size:15px;
width:160px;
height:80px;
padding:15px 0;
border-top:2px solid #ebebeb;
border-bottom:2px solid #ebebeb;
}
#mainNav li a span,#mainNav li a strong{display:block;}
#mainNav li a span{
color:#bababa;
font-size:11px;
}
#mainNav ul ul{width:160px;background:#fff;}
#mainNav li ul{display:none;}
#mainNav li:hover ul{
display:block;
position:absolute;
top:64px;
z-index:500;
}
#mainNav li li{
margin:0;
float:none;
width:160px;
border:0;
}
#mainNav li li:last-child{border:0;}
#mainNav li li a{
width:auto;
height:auto;
padding:0px;
font-size:95%;
text-align:left;
border:0;
}
#mainNav li.current-menu-item a{
border-color:#555;
}
#mainNav li.current-menu-item a,#mainNav li a:hover,#mainNav li.current-menu-item li a:hover{
color:#999;
}
#header,#wrapper,.innner{
max-width:960px;
padding:0;
margin:0 auto;
align-content:center;
}
}


/**************************
/* フッター
**************************/
footer{
background-color:#0071B7;
margin-top:40px;
padding: 10px 0;
color: #fff;
clear: both;
}
footer .row{
margin: 0!important;
}
footer .f-logo{
text-align: left;
}
footer .f-logo img{
max-width: 100px;
display: inline-block;
vertical-align: middle;
}
footer h2{
display: inline-block;
vertical-align: middle;
text-align: left;
font-size: 1em;
letter-spacing: 0;
margin: 0;
font-weight: 300;
}
footer .f-logo span{
display:block;
margin-top:2px;
vertical-align: middle;
}
footer .f-logo strong{
color:#F28E1E;
font-weight: lighter;
}
footer .f-info{
text-align: right;
font-size: 0.8em;
}


/**************************
/* トップページ
**************************/
.slider {
    clear: both;
    overflow: hidden;
    height: 39vw;
}
#carouselExampleControls{
  height: 39vw;
}

.slider .carousel-caption{
top:40%;
}
.carousel-item{
  height: 39vw;
}
.carousel-item img {
    position: absolute;
    margin: auto;
}
.carousel-item:nth-of-type(1) img {
    top: 0;
}
.carousel-item:nth-of-type(2) img {
    bottom: 0;
}
.carousel-item:nth-of-type(3) img {
    top: 0;
    bottom: 0;
}
.carousel-caption{
    height: 13vw;
    top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}
.slider .carousel-caption{
  top: 0!important;
}
.slider h5{
font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
font-size: 2.5em;
letter-spacing: 0.3em;
font-weight: 600;
text-shadow: 3px 3px 2px rgba(0,0,0,0.5);
line-height: 1.5em;
}

#i-houshin{
  margin: 50px 0;
}
@media screen and (max-width: 768px){
#i-houshin{
  margin: 30px 0;
}
}

#i-blog{
}
#i-blog .i-blog-box{
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-bottom: 3rem;
  width: 100vw;
  background-color: #EAF6FD;
  padding: 40px 0 10px;
}
#i-blog .i-blog-box:nth-of-type(3){
  margin-bottom: 1.5rem;
}
#i-blog .slider-outer-wrapper {
  width: 100%;
  overflow: hidden;
  padding: 20px 0;
}
#i-blog .swiper {
  max-width: 960px; 
  width: 100%;
  overflow: visible; 
  margin: 0 auto;
  padding: 0 60px;
}
#i-blog .kiji {
  width: 100%;
  background: #fff;
  text-align: center;
  padding: 20px 0;
  margin-bottom: 15px;
}
#i-blog .kiji div{
  font-size: 0.9em;
  font-weight: 700;
  padding-bottom: 20px;
  letter-spacing: 0.2em;
}
#i-blog .kiji .wp-post-image,
#i-blog .kiji img {
  width: 100%; 
  height: 220px;
  object-fit: cover;
}
#i-blog .kiji p{
padding: 20px 20px 0;
text-align: left;
font-size: 0.9em;
}
#i-blog .swiper a{
color: #000;
text-decoration: none;
}
#i-blog .swiper a:hover{
text-decoration: underline;
}
#i-blog .swiper-button-next,
#i-blog .swiper-button-prev {
  color: #b7b0ac;
  --swiper-navigation-size: 40px;
}
#i-blog .swiper-slide {
  height: auto;
}
#i-blog .kiji-ichiran{
max-width: 130px;
margin: 0 auto;
}
#i-blog .kiji-ichiran a{
display: block;
text-align: center;
padding: 10px 10px;
background: #000;
color: #fff;
font-size: 0.8em;
}

@media screen and (max-width: 768px){
#i-blog .i-blog-box{
  margin-bottom: 2rem;
  padding: 30px 0 0;
}
#i-blog .slider-outer-wrapper {
  padding: 0 0 10px;
}
#i-blog .swiper {
  padding: 0 40px;
}
#i-blog .kiji {
  padding: 10px 0;
}
#i-blog .kiji div{
  padding-bottom: 10px;
}
#i-blog .kiji .wp-post-image,
#i-blog .kiji img {
  height: 160px;
}
}

.eyecatch {
width:100%;
height:180px;
background-position: top center;
background-size: cover;
}
.eyecatch2 {
width:100%;
height:180px;
background-position: center center;
background-size: cover;
}

#i-sns{
margin: 50px auto;
background-color: #EAEBEB;
padding: 50px 0 50px;
}
#i-sns h2{
vertical-align: baseline;
color: #fff;
letter-spacing: 0.1rem;
padding: 5px;
font-weight: 600;
}
#i-sns h2 img{
vertical-align: baseline;
width: 25px;
display: inline-block;
margin-right: 10px;
}
#i-sns .ind-sns h2{
background: #477ABE;
}
.fb_iframe_widget,
.fb_iframe_widget span,
.fb_iframe_widget iframe[style]{
width: 100% !important;
}
#i-sns .fb .fb-page{
width: 100%;
height: 400px;
margin-bottom: 10px;
}
#i-sns .insta h2{
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%);
}
.insta_list{
display: flex;
flex-wrap: wrap;
gap: 20px;
margin: 20px 0;
}
.insta_list li{
position: relative;
width: calc((100% - 40px)/3);
}
@media screen and (max-width: 750px){
.insta_list li{
width: calc((100% - 20px)/2);
}
}
.insta_list li::before{
content: "";
display: block;
padding-top: 100%;
}
.insta_list a{
position: absolute;
top: 0;
width: 100%;
height: 100%;
}
.insta_list img{
width: 100%;
height: 100%;
object-fit: cover;
}
.insta_btn{
background-color: #000;
padding: .5em 1em;
width: fit-content;
margin: 0 auto;
cursor: pointer;
transition: .3s
}
.insta_btn a{
color: #fff;
text-decoration: none;
}
.insta_btn:hover{
background-color: #999;
}

#main_banner{
margin: 40px 0 0;
}
#main_banner .m_b_box01{
background-image:url("img/main_banner01.webp");
}
#main_banner .m_b_box02{
background-image:url("img/main_banner02.webp");
}
#main_banner .m_b_box03{
background-image:url("img/main_banner03.webp");
}
#main_banner .m_b_box04{
background-image:url("img/main_banner04.webp");
}
#main_banner .m_b_box05{
background-image:url("img/main_banner05.webp");
}
#main_banner .m_b_box06{
background-image:url("img/main_banner06.webp");
}
#main_banner .m_b_box a{
text-decoration: none;
display: block;
height: 200px;
background-size: cover;
background-position: center center;
position: relative;
}
#main_banner .m_b_box a:hover{
opacity: 0.9;
}
#main_banner h2{
text-align: center;
width: 100%;
margin: 0 auto;
font-size: 1.8em;
color: #fff;
font-weight: 500;
line-height: 1.1em;
letter-spacing: 0.4em;
position: absolute;
top: 50%;
left: 50%;
-webkit-transform : translate(-50%,-50%);
transform : translate(-50%,-50%);
}
#main_banner h2 p{
font-size: 0.4em;
color: #FFF100;
letter-spacing: 0.1em;
font-weight: 400;
}
#main_banner .m_b_box07 h2{
font-size: 1.8em;
letter-spacing: 0.2em;
}
#main_banner .row:nth-of-type(2){
margin-top: 30px;
}
#i-company{
margin-top: 100px;
}
#i-company h4{
text-align: center;
}
#i-company img{
width: 100%;
margin-top: 15px;
}
.banner-text{
text-align: center;
letter-spacing: 0.1rem;
margin-top: 5px;
}

.sns{
width: 100%;
padding-top: 70px;
text-align: center;
}
.sns img{
width: 80px!important;
}
#f-menu{
margin-top:30px;
}
.footer_menu_div h4{
border-left: solid 10px #0071B7;
padding:5px;
margin-bottom:8px;
font-size:0.9em;
}
.footer_menu_div h5{
border-top:1px solid #CCC;
padding-left:10px;
padding-top:8px;
padding-bottom: 8px;
font-size:0.7em;
}
.otoiawase_font{
text-align: center;
}
.otoiawase_font p{
margin-top: 15px;
font-size: 20px;
}
.otoiawase_font .shigai{
letter-spacing: 0.2em;
}
.otoiawase_font .tel{
font-size: 1.2em;
letter-spacing: 0.2em;
font-weight: 800;
}
.recruit_link{
color:white;
width:80%;
text-align:center;
background-color:#0071B7;
padding:20px;
margin:30px auto;
}
.footer_access iframe{
width:100%;
max-height:300px;
}
.footer_contact2 {
margin-top: 40px;
}
.footer_contact2 img{
width:100%;
}

/**************************
/* 青年会議所とはページ R-tomakomai
**************************/
#r_toma .col-md-12{
margin-bottom: 30px;
}


/**************************
/* 関係者ページ
**************************/
#r-aisatsu{
margin-top: 130px;
clear: both;
}
#r-aisatsu img,#r-obaisatsu img{
width: 23%;
float: right;
padding: 0 0 20px 20px;
}
#r-aisatsu .inner,#r-obaisatsu .inner{
padding: 0 15px;
}
#r-obaisatsu{
margin-top: 60px;
clear: both;
}
#r-haskap{
margin-top: 80px;
clear: both;
}
#r-haskap h3{
  line-height: 1.4;
  padding:1em 60px 1em 1em;
  display: inline-block;
  width: 100%;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  font-size: 1.1em;
  letter-spacing: 0.1em;
  color: #fff;
 background: #0090D5 url("img/h3_icon2.png") no-repeat right center;
}
#r-haskap a{
opacity: 0.9;
}
#r-houshin{
margin-top: 120px;
}
#r-houshin h3{
  position: relative;
  line-height: 1.4;
  padding:1em 40px 1em 1em;
  display: inline-block;
  top:0;
  width: 100%;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  font-size: 1.1em;
  letter-spacing: 0.1em;
  color: #000;
 background: #F9F9F8 url("img/h3_icon.png") no-repeat right center;
}
#r-houshin h3:before, #r-houshin h3:after { 
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
#r-houshin h3:before {
  border-left: solid 1px black;
  border-top: solid 1px black;
  border-bottom: solid 1px black;
  left: 0;
}
#r-houshin h3:after {
  content: '';
  border-top: solid 1px black;
  border-right: solid 1px black;
  border-bottom: solid 1px black;
  right: 0;
}
#r-houshin .js-modal-open{
display: block;
padding: 15px 0;
}
#r-houshin .geneki-only{
display: block;
padding: 15px 0;
}
/* モーダルCSS */
/* モーダル全体(背景＋本体) */
.modal{
  display: none;
  position: fixed;
  top: 0;
  height: 100vh;
  width: 100%;
}
/* モーダル背景 */
.modal-bg{
  position: absolute;
  height: 100vh;
  width: 100%;
  background: rgba(0, 0, 0, 0.8);
}
/* モーダル本体 */
.modal-content{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  overflow: scroll; /* はみ出た部分はスクロールさせる */
  height: 80%;/* これが無いと「overflow:scroll」が利かない */
  width: 80%;/* これが無いと「overflow:scroll」が利かない */
  background: white;
  padding: 40px;
}
/* モーダルウィンドウ表示中に記事本体を固定 */
body.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
}
.modal-content{
font-size: 0.9em;
}
.modal-content h4{
font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
font-size: 1.4em;
text-align: center;
font-weight: 700;
}
.modal-content .name{
text-align: right;
margin: 10px 0;
}
.modal-content h5{
font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
font-size: 1.2em;
margin-top: 15px;
text-align: center;
}
.modal-content h6{
margin: 15px 0 5px;
}
.modal-content a{
display: block;
text-align: right;
margin-top: 15px;
}
#r-houshin .geneki-only h3{
 background: #888 url("img/h3_icon.png") no-repeat right center;
 color: #fff;
}
#r-kaiin{
margin-top: 120px;
}
#r-kaiin .inner{
padding: 0 30px;
}
#r-kaiin .row{
padding: 0 ;
}
#r-kaiin .row > div{
margin-top: 15px;
}
#r-kaiin .box{
background: #fff;
border: 1px solid #ccc;
}
#r-kaiin .box img{
width: 100%;
}
#r-kaiin h3{
background: #0071B7;
padding: 5px 10px 8px;
color: #fff;
font-weight: 600;
}
#r-kaiin h3 span{
font-size: 13px;
display: block;
margin-top: 3px;
font-weight: 400;
}
#r-kaiin ul{
display: table;
}
#r-kaiin ul li{
display: table-cell;
vertical-align: top;
}
#r-kaiin ul li:first-of-type{
width: 25%;
}
#r-kaiin ul li:last-of-type{
width: 75%;
}
#r-kaiin ul li p{
padding: 3px 10px 10px 10px;
}
#r-kaiin	table{
width: calc(100% - 30px);
margin: 30px auto 0;
}
#r-kaiin	th{
padding:5px;
color:white;
background-color:#0071B7;
border-bottom:1px solid white;
text-align: center;
white-space: nowrap;
font-weight: 300;
}
#r-kaiin	td{
padding:5px;
padding-left:10px;
background-color: #F5F5F5;
font-weight: 300;
}

#r-kaiin_v2{
margin-top: 120px;
}
#r-kaiin_v2 .inner{
padding: 0 30px;
}
#r-kaiin_v2 .tab-container {
position: relative;
display: flex;
flex-wrap: wrap;
/* justify-content: center; */
}
#r-kaiin_v2 .tab-menu-item {
position: relative;
padding: 0.8rem 1.6rem;
width: 100%;
cursor: pointer;
user-select: none;
text-align: center;
transition: all 0.2s ease-in-out;
background: #F5F5F5;
border-top: 1px solid #B5B5B5;
white-space: nowrap;
}
#r-kaiin_v2 .tab-menu-item:last-of-type {
border-bottom: 1px solid #B5B5B5;
}
#r-kaiin_v2 .tab-content {
display: none;
opacity: 0;
padding: 1rem 0.6rem;
transition: all 0.2s ease-in;
}
#r-kaiin_v2 input {
position: absolute;
left: -999em;
}
#r-kaiin_v2 input:checked + .tab-menu-item {
font-weight: bold;
background: #0071B7;
color: #fff;
}
#r-kaiin_v2 input:checked + .tab-menu-item + .tab-content {
display: block;
opacity: 1;
}
#r-kaiin_v2 .row{
padding: 0 ;
}
#r-kaiin_v2 .row > div{
margin: 10px 0;
}
#r-kaiin_v2 .box{
}
#r-kaiin_v2 .box img{
width: 100%;
}
#r-kaiin_v2 h3{
background: #0071B7;
padding: 5px 10px 8px;
color: #fff;
font-weight: 600;
}
#r-kaiin_v2 h3 span{
font-size: 13px;
display: block;
margin-top: 3px;
font-weight: 400;
}
#r-kaiin_v2 ul{
display: table;
width: 100%;
}
#r-kaiin_v2 ul li{
display: table-cell;
vertical-align: top;
}
#r-kaiin_v2 ul li:first-of-type{
width: 25%;
}
#r-kaiin_v2 ul li:last-of-type{
width: 75%;
}
#r-kaiin_v2 ul li p{
padding: 3px 10px 10px 10px;
}

@media (min-width: 768px) {
#r-kaiin_v2 .tab-container {
border: 0.5px solid #B5B5B5;
}
#r-kaiin_v2 .tab-content {
order: 9999;
width: 100%;
border: 0.5px solid #B5B5B5;
}
#r-kaiin_v2 .tab-menu-item {
flex: 1;
width: auto;
padding: 0.8rem 1.3rem;
border: 0.5px solid #B5B5B5;
font-size: 1rem;
line-height: 130%;
}
#r-kaiin_v2 .tab-menu-item:last-of-type {
border-bottom: 0.5px solid #B5B5B5;
}
#r-kaiin_v2 input:checked + .tab-menu-item {
margin-bottom: -1px;
background: #0071B7;
border-bottom: 0;
}
#r-kaiin_v2 input:checked + .tab-menu-item::before {
content: "";
position: absolute;
top: -1px;
left: -1px;
right: -1px;
}
}
@media (max-width: 767px) {
#r-kaiin_v2{
margin-top: 30px;
}
#r-kaiin_v2 .tab-menu-item::after {
content: "\e5cf";
font-family: 'Material Symbols Outlined';
color: #666;
}
#r-kaiin_v2 input:checked + .tab-menu-item::after {
content: "\e5ce";
font-family: 'Material Symbols Outlined';
color: #eee;
}
}







/**************************
/* 概況ページ
**************************/
#g-iinkai{
margin-top: 130px;
}
#g-iinkai h3{
  position: relative;
  line-height: 1.4;
  padding:1em;
  display: inline-block;
  top:0;
  width: 100%;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  font-size: 1.1em;
  letter-spacing: 0.1em;
  color: #000;
 background: #fff;
 text-align: center;
}
#g-iinkai h3:before, #g-iinkai h3:after { 
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
#g-iinkai h3:before {
  border-left: solid 1px black;
  border-top: solid 1px black;
  border-bottom: solid 1px black;
  left: 0;
}
#g-iinkai h3:after {
  content: '';
  border-top: solid 1px black;
  border-right: solid 1px black;
  border-bottom: solid 1px black;
  right: 0;
}
/* アコーディオンメニュー全体のサイズ・位置 */
.ac {
  width: 100%;
  margin: 0 auto;
}
.ac .col-md-6{
border-bottom: 1px solid #CCC;
padding-bottom: 15px;
margin-top: 15px;
}
/* クリック領域 */
.ac-parent {
	position: relative;  /* 追加 */
	border-bottom: 1px solid #fff;
	color: #fff;
	text-align: center;
	line-height: 50px;
	cursor: pointer;
}
/* クリックしたら表示される領域 */
.ac-child {
  display: none;
  padding: 2em 1em 1em;
  text-align: center;
}
/* 擬似要素で下三角形を作成 */
.ac-parent:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 45%;
	right: 30px;
	width: 10px;
	height: 10px;
	border-right: 3px solid #000;
	border-bottom: 3px solid #000;
	transform: translateY(-50%) rotate(45deg);
	transition: .3s;
}
/* オープン時にopenクラスを付与 */
.ac-parent.open:after {
	transform: rotate(225deg);
}
.ac-child table{
  margin: 0 auto;
}
.ac-child th{
  padding-right: 15px;
}
#g-soshiki{
margin-top: 80px;
}
#g-soshiki .col-md-10{
margin: 0 auto;
border: 1px solid #888;
}
#g-soshiki .kiji-ichiran{
max-width: 130px;
margin: 30px auto 0;
}
#g-soshiki .kiji-ichiran a{
display: block;
text-align: center;
padding: 10px 10px;
background: #000;
color: #fff;
font-size: 0.8em;
}
#g-soshiki a:hover{
opacity: 0.8;
}
/*理事長基本方針*/
#g-iinkai h6 {
margin: 20px 0 10px;
font-weight: 600;
}

/**************************
/* FAQページ
**************************/
#f-faq{
margin-top: 130px;
clear: both;
}
#f-faq h3{
  position: relative;
  line-height: 1.4;
  padding:1em 1em 1em 60px;
  display: inline-block;
  width: 100%;
  font-size: 1em;
  font-weight: 500;
  color: #000;
 background: #EAF6FD url("img/h3_icon4.png") no-repeat left center;
}
#f-faq h3:before, #f-faq h3:after { 
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
#f-faq h3:before {
  border-left: solid 1px #0090D5;
  border-top: solid 1px #0090D5;
  border-bottom: solid 1px #0090D5;
  left: 0;
}
#f-faq h3:after {
  content: '';
  border-top: solid 1px #0090D5;
  border-right: solid 1px #0090D5;
  border-bottom: solid 1px #0090D5;
  right: 0;
}
#f-faq .balloon {
  margin: 1.5em 0;
  overflow: hidden;
}
#f-faq .balloon .faceicon {
  float: left;
  margin-right: -90px;
  width: 80px;
}
#f-faq .balloon .faceicon img{
  width: 100%;
  height: auto;
  border: solid 3px #d7ebfe;
  border-radius: 50%;
}
#f-faq .answer {
  width: 100%;
  margin: 1.5em 0;
  overflow: hidden;
}
#f-faq .answer .faceicon {
  float: right;
  margin-left: -90px;
  width: 80px;
}
#f-faq .answer .faceicon img{
  width: 100%;
  height: auto;
  border: solid 3px #FFD18C;
  border-radius: 50%;
}
#f-faq .says {
  display: inline-block;
  position: relative; 
  margin: 5px 0 0 105px;
  padding: 17px 17px;
  border-radius: 12px;
  background: #d7ebfe;
}
#f-faq .says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px; 
  left: -24px;
  border: 12px solid transparent;
  border-right: 12px solid #d7ebfe;
}
#f-faq .says-a {
  display: inline-block;
  position: relative; 
  margin: 5px 105px 0 0;
  padding: 17px 17px;
  border-radius: 12px;
  background: #FFD18C;
}
#f-faq .says-a:after {
content: "";
  position: absolute;
  top: 18px; 
  right: -24px;
  border: 12px solid transparent;
  border-left: 12px solid #FFD18C;
}
#f-faq .says-a img {
display: block;
margin: 10px auto;
width: 100%;
max-width: 300px;
}
#f-faq .row {
padding: 0;
}




/**************************
/* 新入会員募集ページ
**************************/
#b-bosyu{
margin-top: 130px;
clear: both;
}
#b-bosyu img{
width: 35%;
float: right;
padding: 0 0 20px 20px;
}
#b-bosyu .inner{
padding: 0 15px;
}
#b-bosyu h3{
text-align: center;
font-size: 1.3em;
letter-spacing: 0.5em;
font-weight: 900;
line-height: 1.2em;
margin-bottom: 20px;
border-top: 1px solid #000;
border-bottom: 1px solid #000;
padding: 1em;
}
#b-bosyu h3 p{
font-size: 0.5em;
letter-spacing: 0.3em;
font-weight: 500;
color: #B7B0AC;
font-family: 'M PLUS Rounded 1c', sans-serif;
}
#b-bosyu .bosyu-text{
clear: both;
}
#b-bosyu .bosyu-text ol{
list-style-type: decimal;
padding-left: 40px;
margin: 10px 0;
}
#b-bosyu .bosyu-text:nth-of-type(2){
margin-top: 40px;
}

/**************************
/* アクセスページ
**************************/
#m-access{
margin-top: 130px;
clear: both;
}
#m-access iframe{
margin-top: 20px;
min-height: 400px;
}
#m-info,#m-contact{
margin-top: 60px;
}
#m-info table,#m-contact table{
width: 80%;
margin: 0 auto;
}
#m-info th,#m-contact th{
padding:5px;
width:150px;
color:white;
background-color:#0071B7;
border-bottom:1px solid white;
vertical-align: middle;
text-align: center;
}
#m-info td,#m-contact td{
padding:5px;
padding-left:10px;
background-color: #F5F5F5;
border-bottom:1px solid white;
}
#m-contact td input, td textarea{
width: 100%;
}
#m-contact .contact_button{
margin: 20px 0 0;
text-align: center;
}
#m-contact .contact_button input{
}
#m-contact .privacy{
text-align: center;
font-size: 0.9em;
padding-top: 30px;
}


/* 追従ボタン */
#b-fixed {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px; 
}
#b-fixed .fixed-btn {
  display: block;
  transition: all 0.3s ease;
  line-height: 0;
}
#b-fixed .follow {
  width: 65px;
  margin-right: -5px;
  margin-bottom: -5px;
}
#b-fixed .sns {
  width: 56px;
  height: auto;
  padding: 0;
  margin: 0;
}
#b-fixed .join {
  width: 253px;
  height: auto;
}
#b-fixed .fixed-btn:hover {
  opacity: 0.7;
  transform: translateY(3px);
}
@media (max-width: 768px) {
#b-fixed {
  right: 10px;
  bottom: 10px;
  gap: 5px; 
}
#b-fixed .follow {
  width: 49px;
  margin-bottom: 0;
}
#b-fixed .sns {
  width: 42px;
}
#b-fixed .join {
  width: 160px;
}
}








/**************************
/* プライバシーポリシー
**************************/
#p-privacy {
margin-top: 130px;
}
#p-privacy .inner{
width: 80%;
margin: 0 auto;
}
#p-privacy p{
margin-bottom: 30px;
}
#p-privacy ol{
list-style: decimal;
}



.banner2{
margin-top: 2rem;
}

@media screen and (max-width: 750px){
.banner2{
margin-top: 0;
}
}

#r-kaiin span{
font-size: 0.8rem;
}


