﻿





/*-------------------------------------------------------*/

html {
 scroll-behavior: smooth;
}

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }


body {
 background:url("images/patter.png");
            
            background-attachment: fixed;
            overflow-x: hidden;
            min-height: 100vh;
        }


ol {
  list-style: none;
}
p {
	color: #3e1243;
}
a {
  text-decoration: none;
  color: inherit;
}

img {
  max-width: 100%;
  height: 200pix;
}
.container {
  display: flex;
  justify-content: center;
  max-width: 1600px;
  margin: 0px auto;
  padding: 0px 10px
}

.container_ev {
  display: flex;
  justify-content: center;
  max-width: 1280px;
  margin: 0px auto;
  padding: 0px 10px
}
.container_story {
  display: flex;
  justify-content: center;
  margin: 0px auto;
  padding: 0px;
  background: url("images/story_bg.jpg") no-repeat 0 / cover;
}
.container3 {
  display: flex;
  justify-content: center;
  max-width: 100%;
  margin: 0px auto;
  padding: 0px 10px
}


a {
color: #0066c0;
text-decoration: none;
}

a:hover {
color: #FF6F61;
}

.title_border{
    text-align:left;
    border-bottom: #f05c5c solid 8px ;
    margin: 5px auto ; padding-top: 10px;
    width:100%;
    font-family: Georgia, Cambria, Meiryo , sans-serif ,"Open Sans";
    font-weight:bold;
}

.title{
    text-align:left;
    width:100%;
    font-family: Georgia, Cambria, Meiryo , sans-serif ,"Open Sans";
    font-weight:bold;
}
.oomidasi{
        margin: 0px auto;
	color:white;
	background-color:#e51575;
	font-weight:bold;
        text-align:center;
        font-size:x-large;
        width:80%;
	padding:0.1em;
font-family: Georgia, Cambria, Meiryo , sans-serif ,"Open Sans";
    border-radius: 35px;
}

.oomidasi2{
        margin: 0px auto;
	color:#e51575;
	font-weight:bold;
        text-align:center;
        font-size:xxx-large;
        width:90%;
	padding:0.1em;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
    border-radius: 35px;
}



.staff_field {
   display: flex;
   justify-content: space-around;
}

p.box {
   border-bottom: 4px dotted  #FFF;
  padding-bottom: 2px;
  margin-bottom: 10px;
}



.box0{
    text-align:center;
    width:100%;

}
.box00{
    justify-content: center;
    width:100%;

}
.box1 {
 height: auto;
 width: 1680pix;
background: url(images/sona.png)

}

.box2 {
    text-align:left;
 height: auto;
 width: 95%;
 background-color: #c0ab48;
 color: #FFF;
 margin:5px; 
 padding:1em 10px;
 display: block;
background-image:url(images/gaku.png)

}

.box3 {
    text-align:left;
 height: auto;
 width: 95%;
 background-color: #27b6e6;
 color: #FFF;
  margin:5px; 
 padding:1em 10px;
 display: block;
background-image:url(images/yuri.png)

}


.box4 {
    text-align:left;
 height: auto;
 width: 95%;
 background-color: #eb6977;
 color: #FFF;
 margin:5px; 
 padding:1em 10px;
 display: block;
background-image:url(images/fr.png)

}


.box5 {
    text-align:left;
 height: auto;
 width: 95%;
 background-color: #5ba45d;
 color: #FFF;
 margin:5px; 
 padding:1em 10px;
 display: block;
background-image:url(images/mareni.png)

}

.box6 {
    text-align:left;
 height: auto;
 width: 95%;
 background-color: #909190;
 color: #FFF;
 margin:5px; 
 padding:1em 10px;
 display: block;
background-image:url(images/music.png)

}

.box7 {
 text-align:center;
 margin: 0px; 
 padding:1em
 display: block;
 border-radius: 0px;
}

.box8 {
 text-align:center;

 margin:5px; 
 display: block;
}


.box9 {
 text-align:center;
 height: 350pix;
 width: 50%;
 margin:5px; 
 padding:1em 12px;
 display: block;
 border-radius: 12px;
}

.box10 {
 text-align:center;
 height: auto;
 color: #e51575;
 margin:5px; 
 padding:1em 10px;
 display: flex;
justify-content: center;
}

.box11 {
    text-align:left;
 
 width: 80%;
margin:10px; padding:12px;
 display: block;
 border-radius: 10px;
}

.box12 {
    text-align:center;
 height: 200pix;
 width: 50%;
margin:5px; padding:5px;
 display: block;
}

.box13 {
    text-align:left;
    border:double 4px #00b7ee;
 height: 280pix;
 width: 85%;
 background-color: #fff;
 color: #FFF;
 margin:5px; 
 padding:1em 10px;
 display: block;
 border-radius: 12px;
}

.box14 {
 text-align:center;
 margin: 0px 1.5em 0px 0px; 
 padding:1em
 display: block;
 border-radius: 0px;
}

.box15 {
 text-align:center;
 height: auto;
 color: #e51575;
 margin:5px; 
 padding:1em 10px;
 display: flex;
justify-content: center;
}




.text04 {
     font-size: 0.8em;
    
}
.blog1 {
    display: inline-block;
    border:double 2px #CAA846;
    border-radius:15px;
    max-width:400px;
    height:350px;
    margin:10px 10px;
    padding:0.5em;
    vertical-align: top;
    line-height: 150%;
    background-color: #000000;
    
}

.blog2 {
    display: inline-block;
    border:double 2px #e51575;
    border-radius:15px;
    max-width: 640px;
    width: 90%;
    height:flex;
    margin:10px 10px;
    padding:8px 10px;
    vertical-align: top;
    line-height: 150%;
    background-color: #ffff;
    
}
ul {
    margin-top: 0em;
    margin-right: 0em;
    margin-bottom: 0.5em;
    margin-left: 0em;
    padding-top: 0em;
    padding-right: 1em;
    padding-bottom: 0em;
    padding-left: 1em;
}

#about-blog {
    text-align:center;
}

div p {
    text-align:left;
}
.dot2 {
   border-bottom: 4px dotted  #e51575;
  padding-bottom: 2px;
  margin-bottom: 2px;
}
.shop_midasi{
        margin: 0px auto;
	color:#239dda;
	font-weight:bold;
        text-align:center;
        font-size:x-large;
        width:90%;
  font-family: "M PLUS 1 Code", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  
}
.shop_midasi2{
text-align:left;
	color:#e51575;
	font-weight:bold;
  font-family: "M PLUS 1 Code", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;

}
.shop_midasi3{
        font-size: 15pt;
	color:#239dda;
	font-weight:bold;
  font-family: "M PLUS 1 Code", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;

}




.production-link {
    text-align: center;
}
   .link-button {
    color: #fff;
    background-color: #7991b1;
    padding: 0 1em;
    border-radius: 1em;
    font-size: 1.5em;
}

.link-button:after {
    content: "\203A";
    margin-left: .5em;
    display: inline-block;
    vertical-align: top;
}


 #subImg{
display: flex;
 justify-content: space-between;
 }
 #subImg li{
list-style: none;
 width: 50%;
 
}

/* 追加
–––––––––––––––––––––––––––––––––––––––––––––––––– */

        .container_chr{
            display: flex;
            height: 900px;
            width: 90%;
            max-width: 1600px;
            margin: 0 auto;
        }

        .element-a {
            width: 50%;
            overflow: hidden;
            position: relative;
            padding: 5px;
        }

        .element-a img {
            width: 100%;
            height: auto;
            max-height: 100%;
            object-fit: contain;
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            left: -100%;
            transition: left 0.5s ease-in-out;
        }

        .element-a img.active {
            left: 0;
            transition: left 0.8s ease-in-out; /* スライドイン0.8秒 */
        }

        .right-container {
            width: 50%;
            display: flex;
            flex-direction: column;
        }

        .element-b {
            height: 70%;
            padding: 25px 5px 25px 5px;
            display: flex;
            flex-direction: column; /* 上下に分割するため */
        }

        .element-b-upper {
            height: 20%; /* 上部を50% */
            display: flex;
            align-items: center;
            justify-content: center;
            text-align: center; /* 中央揃え */
        }

        .element-b-lower {
            height: 80%; 
            display: flex;
            align-items: center;
            justify-content: flex-start;
            text-align: left; /* 左揃え */
            padding-left: 20px; /* 左に少し余白を追加 */
        }

        .element-b p {
            font-size: 1.2rem;
        }
        .element-b-lower p {
            font-size: 1rem;
            line-height: 2;
            overflow-wrap: break-word;
            word-break: break-all;
            max-height: 100%;
            margin: 0;
        }

        .element-c {
            height: 30%;
            display: flex;
            justify-content: space-around;
            align-items: center;
            padding: 25px 5px 25px 5px;
        }

        .thumbnail {
            width: 18%;
            cursor: pointer;
        }

        .thumbnail img {
            width: 100%;
            height: auto;
            object-fit: cover;
        }

        @media (max-width: 600px) {
            .container_chr {
                flex-direction: column;
                height: auto;
                width: 90%;
                max-width: 1400px;
                margin: 0 auto;
            }

            .element-a {
                width: 100%;
                height: 50vh;
                order: 1;
                padding: 5px;
            }

            .right-container {
                width: 100%;
                display: contents;
            }

            .element-b {
                order: 3;
                height: auto;
                min-height: 20vh;
                padding: 25px 5px 25px 5px;
            }

            .element-b-upper {
                height: auto; /* レスポンシブ時は高さ自動 */
                min-height: 10vh;
            }

            .element-b-lower {
                height: auto; /* レスポンシブ時は高さ自動 */
                min-height: 10vh;
            }

            .element-c {
                order: 2;
                height: auto;
                min-height: 20vh;
                padding: 25px 5px 25px 5px;
            }
        }



/* 上に戻るボタン
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: -50px;
  background: #000000;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -5px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}



/*フッター
-----------------------------------------*/

.footer {
    padding: 30px 0;
    background-color: #dcdcdc;
    text-align: center; 
}

.container2 {
  display: flex;
  justify-content: center;
}

#column {
  max-width: 900px;
  padding: 5px 5px 5px 5px;
}

#column2 {
  max-width: 600px;
  padding: 1px 5px 15px 20px;
  align: center;

}

#column3 {
  max-width: 1600px;
  padding: 5px 5px 5px 5px;
  align: center;

}
#column4 {
  max-width: 1280px;
  padding: 5px 5px 10px 5px;
  align: center;

}




/* MQ
–––––––––––––––––––––––––––––––––––––––––––––––––– */
@media screen and (max-width: 900px) {
  .posts {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media screen and (max-width: 650px) {
  html {
    font-size: 14px;
  }
.box9 {
 text-align:left;
 height: 300pix;
 width: 80%;
 margin:5px; padding:8px;
 display: block;
 border-radius: 10px;
}
.box10 {
    text-align:center;
 height: auto;
 width: 95%;
 margin:5px; padding:5px;
 display: block;
}
.box11 {
 text-align:left;
 height: 200pix;
 width: 80%;
 margin:5px; padding:8px;
 display: block;
 border-radius: 10px;
}

.box12 {
    text-align:left;
 height: 200pix;
 width: 80%;
margin:5px; padding:8px;
 display: block;
 border-radius: 10px;
}
.box13 {
     text-align:left;
 height: auto;
 width: 90%;
 margin:5px; padding:5px;
 display: flex;
 border:double 5px gray;
justify-content: center;
}
.txtsize20{   font-size: 16pt;   }
  .posts {
    grid-template-columns: repeat(2, 1fr);
  }

.oomidasi2{
        margin: 0px auto;
	color:#e51575;
        text-align:center;
        font-size:xx-large;
        width:90%;
	padding:0.1em;
	font-family: "M PLUS 1 Code", serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
    border-radius: 35px;
}

.shop_midasi3{
        font-size: 13pt;
	color:#239dda;
	font-weight:bold;
  font-family: "M PLUS 1 Code", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;

}



.blog2 {
    display: inline-block;
    border:double 2px #e51575;
    border-radius:15px;
    max-width:350px;
    height:700px;
    margin:40px 10px;
    padding:8px 10px;
    vertical-align: top;
    line-height: 150%;
    background-color: #ffff;
    
}
}
