@charset "utf-8";
#wrapper {
	width: auto;
	height: auto;
    
}

#contents {
    display: block;
	width: auto;
    height: auto;
    padding-bottom: 170px;
}

p.fadeIn  {
	position: relative;
    top: -18vw;
    animation-name: fadeInAnime;/*1で解説*/
    animation-fill-mode:backwards;/*2で解説*/
    animation-duration:3s;/*3で解説*/
    animation-iteration-count:1;/*4で解説*/
    animation-timing-function:ease;/*5で解説*/
    animation-delay: 0.5s;/*6で解説*/
    animation-direction:normal;/*7で解説*/
    font-family: "Noto Sans JP";
    font-size: 40px;
	font-weight: bold;
    width: 320px;
    height: 116px;
    text-align: center;
    margin: 0 auto;
    line-height: 120px;
	background: #000000;
	color: #ffffff;
}

a{
	text-decoration: none;
}


/*1で解説*/
@keyframes fadeInAnime{
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

/*-----------------------Topページ　キャッチコピーエリア-------------------*/

#catch_copy_area {
    margin-top: 80px;
    width: auto;
    height: 100%;
}


#catch_img-sp {
    display: none;
}

#catch_img-pc {
    float: left;
    display: inline-block;
    width: 31vw;
    max-height: auto;
    margin-bottom: 10px;
}

#catch_copy {
     display: inline-block;
    width: 57vw;
    height: auto;
    margin-left: 50px;
}

h1#h1-catch_copy,h2#p-catch_copy{
    font-size: 50px;
    font-weight: bold;
    line-height: 70px
}

p#concept {
    font-size: 25px;
    line-height: 35px;
    margin-top: 50px;
    height: 100%;
}

/*----------------------------Topページ　会社情報---------------------------*/
#company_ident {
    display: block;
    margin-top: 110px;
    width: 100%;
    height: auto;
    color:#ffffff;
    background-color: #3A3A3A;
}

#company_title {
    width:  500px;
    height: auto;
    margin-left: 200px;
    margin-top: 70px;
}

h3.company {
    font-family: "Noto Sans JP";
    font-size: 100px; 
}

span.company {
    display: block;
    font-family: "Yu Gothic";
    font-size: 50px;
    font-weight: bold;
    margin-top: -50px;
}

#company_detail {
    width: 656px;
    height: auto;
    float: right;
    margin-top: 50px;
    margin-right: 200px;
    margin-bottom: 100px;
}

.flex-row {
  display: flex;
  gap: 4px;
  font-size: 30px;
  
}

.flex-row+.flex-row {
  margin-top: 4px;
}

.flex-item {
  padding: 4px;
}

.flex-item:nth-child(1) {
  width: 150px;
  margin-right: 70px;
}

.flex-item:nth-child(2) {
  flex: 2;
}

.flex-item:nth-child(3) {
  flex: 1;
}

iframe {
    margin-bottom: -11px;
}

/*------------------Topページ　特定商法取引法-------------------*/
#specific_transaction {
    display: block;
    width: 1000px;
    height: auto;
    margin: 100px auto;
    font-family: "Yu Gothic";
    
}

h4.specific_text {
    display: block;
    font-size: 50px;
    font-weight: bold;
    text-align: center;
    margin-bottom: -50px
}

h5.specific_text {
    font-size: 50px;
    font-weight: bold;
    text-align: center;
    margin-top: 50px;
    
}

p.specific_text {
    font-size: 30px;
    line-height: 50px;
    max-width: 1000px;
    margin: 0 auto;
}

/*------------------Topページ　information-------------------*/
#information-area {
    width: auto;
    height: 335px;;
    border-top: 5px solid #000000;
}

#information {
    display: block;
    width: 1000px;
    height: 100%;
    line-height: auto;
    margin: 100px auto 70px;
}

#calendar img {
    display: inline-block;
    width: 415px;
    height: 330px;
    float: left;
    margin-right: 90px;
}

#contact {
    display: inline-block;
    width: 485px;
}

p#company_name {
    font-size: 50px;
    font-weight: bold;
    line-height: 50px;
}

a.telephon {
    display: none;
}

p#telephone_nomber {
    font-family: "Noto Sans JP";
    font-size: 62px;
    line-height: 60px;
    margin-top: 25px;
}

#sns-top {
    margin-top: 25px;
}
p#official_line { 
    display: block;
    color: #00B900;
    font-size: 25px;
    font-weight: bold;
    text-align: center;
    width: auto;
    margin-top: 30px;
    border: 5px solid #00B900;
    border-radius: 50px;
    padding: 22px 50px;
}

p#official_line img {
    margin-top: -5px;
}

/*-----------------------------------------------------------------------------------------------
プライバシーポリー
-----------------------------------------------------------------------------------------------*/

#sub_title {
    display: block;
    width:  auto;
    height: 280px;
    border-bottom: 5px solid #000000;
    margin-bottom: 100px;
}

p.s-title {
    font-family: "Noto Sans JP";
    font-size: 100px;
    margin-left: 175px;
}

span.s-title {
    display: block;
    font-family: "Yu Gothic";
    font-size: 50px;
    font-weight: bold;
    margin-top: -60px;
}

#detail-area{
    width: 1000px;
    margin: 0 auto 70px;
}

h2.detail {
    font-size: 50px;
    font-weight: bold;
    margin-top: 50px;
    margin-bottom: 28px;
}

p.detail {
    font-size: 30px;
}

/*画面幅PC-1000px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:1000px){
    
/*-----------------------Topページ　キャッチコピーエリア-------------------*/
    
p.fadeIn {
   font-size: 30px;
	width: 244px;
    height: 88px;
    line-height: 90px;
	margin-top:  6%;
}
    
#catch_copy {
     display: block;
    width: 780px;
    height: auto;
    margin: -100px auto 0;
}
    
    #catch_img-pc {
        display: none;
    }
    
    #catch_img-sp {
        display: block;
        width: 100%;
        margin-top: 20px;
    }

/*----------------------------Topページ　会社情報---------------------------*/
    
    #company_ident {
        margin-top: -70px;
    }

    #company_title {
        width: 760px;
        margin-left: 20px;
    }
    
    #company_detail {
        width: 760px;
        margin: 0 auto 30px;
    }
    
/*------------------Topページ　特定商法取引法-------------------*/
#specific_transaction {
    width: 780px;
}
    
/*------------------Topページ　information-------------------*/
#information-area {
    width: auto;
    height: auto;
}
    
#information {
    width: 780px;
    display:grid;
  gid-template-rows:50% 50%;
    margin: 20px auto -40px;
}
    
#calendar  {
    margin: 20px auto 0;
    padding-left: 85px;
}
    
#contact {
        grid-row:1/2;
        margin: 0 auto;
    }
    
    p#company_name, p#telephone_nomber, #sns-top, p#official_line {
        text-align: center;
    }

/*-----------------------------------------------------------------------------------------------
プライバシーポリー
-----------------------------------------------------------------------------------------------*/
    
#sub_title {
    height: 238px;
}

p.s-title {
   width: 780px;
    margin-left: 20px;
    font-size: 92px;
}


#detail-area{
    display: block;
    width: auto;
    margin: 0 auto 70px;
}

h2.detail {
    font-size: 50px;
    margin-top: 50px;
    margin-bottom: 28px;
    padding-left: 20px;
}

p.detail {
    font-size: 30px;
    padding-left: 20px;
    padding-right: 20px;
}
    
    }

/*画面幅タブレットの設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:800px){
    
p.fadeIn {
   font-size: 25px;
	width: 218px;
    height: 68px;
	margin-top: 10vw;
    line-height: 70px
}
    
/*-----------------------Topページ　キャッチコピーエリア-------------------*/
    
 #catch_copy {
        width: auto;
     margin-top: -60px;
     margin-left: 20px;
     margin-right: 20px;
    }
    
h1#h1-catch_copy {
    margin-top: -70px;   
    }
    
h1#h1-catch_copy,h2#p-catch_copy{
    font-size: 42px;
    line-height: 60px;
}
    
    p#concept {
    font-size: 21px;
    line-height: 30px;
    margin-top: 20px;
}
    
/*----------------------------Topページ　会社情報---------------------------*/
    
    #company_title {
        width: auto;
    }  
    
h3.company {
    width: auto;
    font-size: 80px; 
}

span.company {
    font-size: 40px;
}
    
#company_detail {
        float: left;
        width: 450px;
    margin-left: 20px
    }
    
.flex-row {
  display: flex;
  gap: 4px;
  font-size: 27px;
  margin-top: 20px;
}

.flex-row+.flex-row {
  margin-top: 4px;
}

.flex-item {
  padding: 4px;
}

.flex-item:nth-child(1) {
  width: 135px;
  margin-right: 20px;
}

.flex-item:nth-child(2) {
  flex: 2;
}

.flex-item:nth-child(3) {
  flex: 1;
}
    
/*------------------Topページ　特定商法取引法-------------------*/
#specific_transaction {
    width: auto;
    margin:20px;
}
    
h4.specific_text {
    width: auto;
    font-size: 45px;
}

h5.specific_text {
     width: auto;
    font-size: 45px;
    margin-top: 20px;
}

p.specific_text {
     width: auto;
    font-size: 23px;
}
    
/*------------------Topページ　information-------------------*/
    
#information {
    width: auto;
    margin-bottom: -150px
}
    
p#company_name {
    width: 100%;
    font-size: 45px;
}
    
p#telephone_nomber {
    font-size: 57px;
    line-height: 60px;
}

p#official_line { 
    font-size: 22px;
    width: auto;
    margin-left: 20px;
    margin-right: 20px;
    padding-top:10px;
    padding-bottom: 10px;
}

p#official_line img {
    margin-top: -6px;
}
    
#calendar {
    width: 400px;
    padding-left: 0;
    }
    
/*-----------------------------------------------------------------------------------------------
プライバシーポリー
-----------------------------------------------------------------------------------------------*/
    
#sub_title {
    height: 28vw;
    margin-bottom: 50px;
}

p.s-title {
   width: 95%;
    font-size: 10vw;
    
    }
    
span.s-title {
    font-size: 6vw;
    margin-top: -7%;
}


#detail-area{
    display: block;
    width: auto;
    margin: 0 auto 70px;
}

h2.detail {
    font-size: 5vw;
    margin-top: 30px;
    margin-bottom: 15px;
    padding-left: 20px;
}

p.detail {
    font-size: 22px;
}
    }

/*画面幅スマホの設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:480px){
    
p.fadeIn {
   font-size: 20px;
	width: 168px;
    height: 60px;
	margin-top: 21%;
    line-height: 60px
}
	
/*-----------------------Topページ　キャッチコピーエリア-------------------*/
h1#h1-catch_copy{
    margin-top: -100px  
    }
    
h1#h1-catch_copy,h2#p-catch_copy{
    font-size: 25px;
    line-height: 40px;
}
    
p#concept {
    font-size: 16px;
    line-height: 25px;
    margin-top: 20px;
}
    
/*----------------------------Topページ　会社情報---------------------------*/

h3.company {
    font-size: 40px;
}

span.company {
    font-size: 20px;
    line-height: 100px
}
    
    #company_detail {
        width: auto;
    }
    
.flex-row {
  display: flex;
  gap: 4px;
  font-size: 16px;
  margin-top: 20px;
  margin-right: 60px;
}
    
.flex-item:nth-child(1) {
  width: 80px;
  margin-right: 20px;
}
    
/*------------------Topページ　特定商法取引法-------------------*/
    
h4.specific_text {
    font-size: 25px;
    margin-bottom: -10px;
}

h5.specific_text {
    font-size: 25px;
    margin-top: 5px;
    margin-bottom: 5px;
}

p.specific_text {
    font-size: 16px;
    line-height: 25px;
    margin-bottom: 5px;
    margin-top: 5px;
}
    
/*------------------Topページ　information-------------------*/

 #information-area {
        width: auto;
    }
    
#information {
    margin: 10px auto -150px;
}
    
p#company_name {
    width: auto;
    font-size: 30px;
    margin-bottom: -10px;
}
    
p#telephone_nomber {
   display: none;
}
    
a.telephon {
    display: block;
    font-size: 40px;
    margin-bottom: -20px;
    text-align: center;
    font-family: "Noto Sans JP";
    color: #000000;
    }

p#official_line { 
    font-size: 17px;
    width: 270px;
    padding-left: 20px;
    padding-right: 20px;
    margin: 30px auto 20px;;
}

p#official_line img {
    width: 30px;
    margin-top: -5px;
}
    
#contact {
        width: auto;
    }
    
#calendar {
    width: 90%;
    height: auto;
    margin: 0 auto;
    }
    
/*-----------------------------------------------------------------------------------------------
プライバシーポリー
-----------------------------------------------------------------------------------------------*/
    
#sub_title {
    height: 28vw;
    margin-bottom: 50px;
}

p.s-title {
   width: 95%;
    font-size: 10vw;
    margin: 0 auto;
    }
    
span.s-title {
    font-size: 6vw;
    margin-top: -7%;
}


#detail-area{
    display: block;
    width: auto;
    margin: 0 auto 20px;
}

h2.detail {
    font-size: 6.5vw;
    margin-top: 30px;
    margin-right: 20px;
    line-height: 7.5vw;
    text-indent: -.8em;
    margin-left: 1em;
}

p.detail {
    font-size: 16px;
}
    
}