@charset "UTF-8";

#header .g-header {
display: flex;
justify-content: space-between;
align-items: start;
padding: 40px 15px 40px;
}
@media (max-width:767px) {
#header .g-header {
display: block;
width: 100%;
padding: 20px 0 20px;
}
}

.g-header .logo p {
font-size: 26px;
margin-bottom: 0;
font-weight: bold;
}
@media (max-width:936px) {
.g-header .logo p {
font-size: 22px;
}
}
@media (max-width:767px) {
.g-header .logo p {
font-size: 18px;
margin: 0 15px;
}
}


/*#header .logo a {
display: block;
}

@media (max-width:767px) {
#header .logo a {
display: inline-block;
}
#header .logo {
display: flex;
align-items: flex-end;
justify-content: flex-start;
}
#header .logo img {
width: auto;
height: 35px;
padding-left: 15px;
}
#header .logo p.sp {
font-size: 16px;
display: inline-block;
margin-bottom: -5px;
margin-left: 15px;
font-weight: bold;

}
}*/

/*
#header .top-contact {
display: block;
}
@media (max-width:767px) {
#header .top-contact {
display: none;
}
}
*/

/*.top-contact__inner > img {
margin-bottom: 10px;
}*/

/*#header .top-contact p {
font-size: 14px;
margin-bottom: 3px;
}*/

nav.gnav {
/*background-color: rgba(51,51,51,0.7);*/
/*margin-bottom: 30px;*/
}
@media (max-width:767px) {
nav.gnav {
display: none;
}
}

@media (max-width:767px) {
.header nav.gnav.is_opened {
display: block !important;
position: absolute;
top: 70px;
width: 100%;
box-shadow: 0 4px 8px 0 rgb(0 0 0 / 33%);
background: #333;
left: 0;
}
}

nav ul.gnav_list {
display: flex;
align-items: center;
justify-content: space-around;
margin-bottom: 0;
}
@media (max-width:767px) {
nav ul.gnav_list {
display: block;
text-align: center;
z-index: 10;
position: relative;
padding-left: 0;
}
}

nav ul.gnav_list li a {
color: #000;
font-size: 1.125rem;
text-decoration: none;
display: block;
padding: 0px 40px;
border-right: 1px solid #000;
}
@media (max-width:936px) {
nav ul.gnav_list li a {
font-size: 14px;
padding: 10px 20px;
}
}
@media (max-width:767px) {
nav ul.gnav_list li a {
padding: 20px 10px;
color: #fff;
border: none;
}
}

nav ul.gnav_list li:nth-child(3n) a {
border-right: none;
padding-right: 0;
}
@media (max-width:767px) {
nav ul.gnav_list li:nth-child(3n) a {
padding: 20px 10px;
}
}

.gnav_trigger {
position: relative;
}
/*@media (min-width: 768px){
.gnav_trigger {
display: none;
}
}*/

.gnav_trigger {display: none;}
@media (max-width:767px) {
.gnav_trigger {
display: block;
z-index: 10;
background: #fff;
border: 1px solid #eee;
cursor: pointer;
height: 50px;
position: absolute;
top: 10px;
right: 15px;
width: 50px
}
}

.gnav_trigger-container {
display: none;
}
@media (max-width:767px) {
.gnav_trigger-container {
display: block;
position: absolute;
left: 12px;
top: 17px;
height: 15px;
width: 25px
}
}

.gnav_trigger-container span { display: inline-block;position: absolute;left: 0;width: 100%;height: 3px;background-color: #131313}
.gnav_trigger-container span:nth-of-type(1) {top: 0}
.gnav_trigger-container span:nth-of-type(2) {top: 6px}
.gnav_trigger-container span:nth-of-type(3) {bottom: 0}
.is_opened .gnav_trigger-container span:nth-of-type(1) {transform: rotate(45deg); top: 6px;}
.is_opened .gnav_trigger-container span:nth-of-type(2) {transform: rotate(-45deg);}
.is_opened .gnav_trigger-container span:nth-of-type(3) {display: none;}

nav ul.gnav_list li.gnav_fanc {
display: none;
}
@media (max-width:767px) {
nav ul.gnav_list li.gnav_fanc {
display: block;
color: #fff;
font-weight: bold;
padding: 10px 0 20px;
}
nav ul.gnav_list li.gnav_fanc a {
padding: 5px 10px;
}
}

.body{
font-family: "Noto Sans CJK JP";
}


nav.gnav{
z-index: 100;
position: relative;
}


.section-mv {
position: relative;
}
@media (max-width: 767px) {
.section-mv{
margin-top: 5px;
/*background-image: url(/img/img_mv_sp_bg.jpg);
position: relative;*/
width: 100%;
/*height: 600px;*/
/*background-size: cover;
background-position: center center;
z-index: 1;*/
}
}

.section-mv h1{
font-weight: 400;
color: #FFFFFF;
font-size: 28px;
line-height: 1.5;
position: absolute;
top: 50%;
left: 0%;
transform: translate(10%, -50%);
margin: 0;
min-width: 8vw;
}
@media (max-width:1365px) {
.section-mv h1{
font-size: 24px;
}
}
@media (max-width: 979px){
.section-mv h1{
font-size: 18px;
}
}
@media (max-width: 767px){
.section-mv h1{
font-size: 5vw;
text-shadow: #000 5px 0 10px;
}
}

.section-mv_img {
margin: 0 auto;
text-align: center;
}

/*.section-mv img {
width: 100%
}*/

.top-btn-bg {
width: 100%;
text-align: right;
max-width: 850px;
margin: 0 auto;
}

@media (max-width: 767px) {
.top-btn-bg {
width: 100%;
text-align: center;
max-width: 850px;
margin: 0 auto;
}
}

.top-btn {
display: inline-block;
text-decoration: none;
color: #365e9f;
border: 2px solid #365e9f;
border-radius: 0;
font-size: 14px;
padding: 4px 10px;
}

@media (max-width: 767px) {
.top-btn {
display: inline-block;
position: relative;
text-decoration: none;
color: #365e9f;
background: none;
border: 1px solid #365e9f;
border-radius: 0;
font-size: 12px;
padding: 7px;
}
}


.section-mvv h2,.section-concept h2,.section-service h2,.servicesection-company-information h2,.servicesection-company-businessplan h2 {
font-weight: bold;
/*color: #221815;*/
/*border-bottom: solid 3px #365e9f;*/
/*position: relative;*/
font-size: 30px;
margin-top: 100px;
margin-bottom: 60px;
padding-bottom: 20px;
text-align: center;
}

/*.section-mvv h2::after,.section-concept h2::after,.section-service h2::after,.servicesection-company-information h2::after,.servicesection-company-businessplan h2::after {
position: absolute;
content: " ";
display: block;
border-bottom: solid 3px #dad7d6;
width: 10%;
padding-bottom: 20px;
}*/


@media (max-width: 767px){
.section-mvv h2,.section-concept h2,.section-service h2,.servicesection-company-information h2,.servicesection-company-businessplan h2 {
font-weight: bold;
/*color: #221815;
border-bottom: solid 3px #365e9f;
position: relative;*/
font-size: 22px;
margin-top: 40px;
margin-bottom: 10px;
padding-bottom: 20px;
}
}


.section-concept-text {
font-size: 21px;
text-align: center;
padding: 10px 160px 20px;
}

@media (max-width: 767px){
.section-concept-text {
font-size: 16px;
text-align: left;
padding: 10px 0px 10px;
}
}


.section-service_img {
text-align: center;
}

.company-information {
/* padding: 0px 100px;*/
padding-bottom: 120px;
max-width: 1040px;
margin: 0 auto;
}

@media (max-width: 767px) {
.company-information {
/* padding: 0px 100px;*/
padding-bottom: 60px;
max-width: 690px;
margin: 0 auto;
}
}



.company-information__text {
display: flex;
align-items: center;
border-bottom: solid 1px #dad7d6;
}

@media (max-width: 767px) {
.company-information__text {
display:block;
border-bottom: solid 1px #dad7d6;
}
}


.company-information {
/* padding: 0px 100px;*/
padding-bottom: 120px;
max-width: 1040px;
margin: 0 auto;
}

@media (max-width: 767px) {
.company-information {
/* padding: 0px 100px;*/
padding-bottom: 60px;
max-width: 690px;
margin: 0 auto;
}
}


.date {
font-size: 18px;
padding: 30px 0px;
width: 6rem;
}

@media (max-width: 767px) {
.date {
font-size: 18px;
padding: 20px 0px 0px 0px;
}
}


.detail {
font-size: 18px;
font-weight: 400;
padding: 30px 0px;
padding-left: 90px;
margin-bottom: 0px
}

@media (max-width: 767px) {
.detail {
font-size: 16px;
font-weight: 400;
padding: 20px 0px 20px 0px;
margin-bottom: 0px
}
}



.footer {
/*background-color: #2f2725;*/
padding-top: 60px;
padding-bottom: 60px;
}

@media (max-width: 767px){
.footer {
/*background-color: #2f2725;*/
padding-top: 40px;
padding-bottom: 40px;
}
}


ul.footer__nav li {
list-style-type: none;
display: inline-block;
position: relative;
padding: 0px 0px;
color: #ffffff;
}

@media (max-width: 767px){
ul.footer__nav li {
list-style-type: none;
display: block;
position: relative;
padding: 0px 0px;
color: #ffffff;
}
}


ul.footer__nav li::after {
position: absolute;
right: 0;
content: "|" ;
color: #ffffff;
}

@media (max-width: 767px){
ul.footer__nav li::after {
content: none;
}
}


ul.footer__nav li:last-child::after {
content: none;
}


ul.footer__nav{
padding-left:0;
font-size: 13px;
}


ul.footer__nav li a {
color: #ffffff;
padding: 0px 30px;
text-align: center;
}


.footer_copy {
/*justify-content: space-between;
align-items: center;*/
text-align: center;
font-size: 14px
}

@media (max-width: 767px){
.footer_copy {
/*justify-content: space-between;*/
/*align-items: center;*/
padding-top: 12px;
/*text-align: center;*/
}
}


.footer_inner {
/*display: flex;
justify-content:space-between;
align-items: center;*/
}

@media (max-width: 767px){
.footer_inner {
/*display: block;
align-items: center;
flex-wrap: wrap;
justify-content: center;
text-align: center;*/
}
}


/* 共有*/

.text-b_line {
font-weight: bold;
color: #221815;
border-bottom: solid 3px #365e9f;
position: relative;
font-size: 28px;
margin-top: 50px;
margin-bottom: 30px;
padding-bottom: 20px;
}

.text-b_line::after {
position: absolute;
content: " ";
display: block;
border-bottom: solid 3px #dad7d6;
width: 10%;
padding-bottom: 20px;
}

@media (max-width: 767px) {
.text-b_line {
font-weight: bold;
color: #221815;
border-bottom: solid 3px #365e9f;
position: relative;
font-size: 24px;
margin-top: 50px;
margin-bottom: 50px;
padding-bottom: 20px;
}
}

@media (max-width: 767px) {
.text-b_line::after {
position: absolute;
content: " ";
display: block;
border-bottom: solid 3px #dad7d6;
width: 20%;
padding-bottom: 20px;
}
}

.text-img h1 {
font-weight: 400;
color: #FFFFFF;
font-size: 40px;
padding: 160px 0px 20px 0px;
}

@media (max-width: 767px) {
.text-img h1 {
font-weight: 400;
color: #FFFFFF;
font-size: 34px;
padding: 85px 0px 20px 0px;
}
}

/***追従するトップへ戻るボタン***/
#top_btn {
    position: fixed;
    right: 15px;
    bottom: 20px;
    height: 50px;
    text-decoration: none;
    font-weight: bold;
    transform: rotate(90deg);
    font-size: 100%;
    line-height: 1.5rem;
    color: #000000;
    padding: 0 0 0 35px;
    border-top: solid 1px;
}
#top_btn::before {
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    left: 0px;
    width: 15px;
    border-top: solid 1px;
    transform: rotate(35deg);
    transform-origin: left top;
}
/***トップへ戻るボタンここまで***/


/***追従するトップへ戻るボタン-sp***/
@media (max-width: 767px) {
#top_btn {
position: fixed;
    right: 5px;
    bottom: 20px;
    height: 50px;
    text-decoration: none;
    font-weight: bold;
    transform: rotate(90deg);
    font-size: 100%;
    line-height: 1.5rem;
    color: #000000;
    padding: 0 0 0 35px;
    border-top: solid 1px;
}
}


@media (max-width: 767px) {
  #top_btn::before {
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    left: 0px;
    width: 15px;
    border-top: solid 1px;
    transform: rotate(35deg);
    transform-origin: left top;
}
}



.news-main {
padding-bottom: 120px;
max-width: 1040px;
margin: 0 auto;
}

@media (max-width: 767px) {
.news-main {
/* padding: 0px 100px;*/
padding-bottom: 60px;
max-width: 690px;
margin: 0 auto;
}
}

.news-main__text {
display: flex;
align-items: center;
border-bottom: solid 1px #dad7d6;
}

@media (max-width: 767px) {
.news-main__text {
display:block;
border-bottom: solid 1px #dad7d6;

}
}

.news-date {
font-size: 16px;;
font-weight: 400;
padding: 20px 0px;
color: #8b8b8b;
white-space: nowrap;
}

@media (max-width: 767px) {
.news-date {
font-size: 16px;;
font-weight: 400;
padding: 20px 0px 0px 0px;
}
}


.news-detail {
font-size: 16px;
font-weight: 400;
padding: 30px 0px 30px 90px;
margin-bottom: 0px;
}

@media (max-width: 767px) {
.news-detail {
font-size: 16px;
font-weight: 400;
padding: 10px 0px 20px 0px;
margin-bottom: 0px
}
}


/*事業計画*/
.company-businessplan {
text-align: center;
}

.company-businessplan ul {
padding-left: 0;
}

.company-businessplan ul li {
padding-bottom: 20px;
}

.company-businessplan ul li a{
margin-left: 10px;
}


.company-businessplan ul li::before {
content: "";
display: inline-block;
/*padding-left: 40px;
padding-bottom: 20px;
position:  relative;
top: -10px;*/
width: 41px;
height: 51px;
background-image:  url("/img/icon_pdf.png");
background-size:  cover;
background-repeat:  no-repeat;
vertical-align: middle;
}


/*事業計画追記　2024.12.12*/

.company-businessplan2 {
max-width: 1040px;
margin: 0 auto;
font-weight: normal;
}

.company-businessplan2 h3 {
text-align:center;
font-size: 22px;
line-height: 1.5;
margin-bottom: 30px;
}
@media (max-width: 767px) {
.company-businessplan2 h3 {
font-size: 18px;
margin-bottom: 20px;
}
}

.businessplan_title {
font-size:20px;
margin-top: 2rem;
font-weight:bold;
}
@media (max-width: 767px) {
.businessplan_title {
font-size:18px;
}
}

.businessplan_list {
margin-left:2rem;
}
@media (max-width: 767px) {
.businessplan_list {
margin-left:1rem;
}
}



/* ==========================================================

    汎用class

========================================================== */
/* font-weight
===========================================================*/
.fw_bold { font-weight: bold !important;}
.fw_normal { font-weight: normal !important;}
.text-indent {
text-indent: -1rem;
padding-left: 1rem;
}


