@charset "utf-8";

#contents {
    background-color: #FFF;
    margin-top: 4em;
    padding-bottom: 1em;
}
.header_ret a{
    color: #FFF;
}

h1 img{
    margin-top:-2.5em;
}


/** point **/

.point{
    background-image: url("../img/line01.png");
    background-repeat: repeat-x;
    background-position: bottom left;
    padding-bottom: 2em;
}
#point03{
    background: none;
}
.point h3{
    margin: 0.5em 0;
}
/*katuyou*/
.katuyou{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.katuyou > figure{
    width:20%;
}
.katuyou > figure img{
    max-height: 230px;
}
.katuyou > div{
    width:80%;
}

.fuki{
    text-align: left;
    position: relative;
    display: inline-block;
    padding: 7px 10px;
    min-width: 120px;
    max-width: 100%;
    color: #555;
    background: #FFF;
    border: solid 3px #555;
    box-sizing: border-box;
    border-radius: 0.5em;
}
.fuki:before {
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -12px;
  border: 12px solid transparent;
  z-index: 2;
}
.fuki:after {
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -14px;
  border: 14px solid transparent;
  z-index: 1;
}

.fuki_left{
    margin: 1.5em 0 1.5em 0;
}
.fuki_right{
    margin: 1.5em 0 1.5em 15px;
}

.fuki_right:before {
  left: -24px;
  border-right: 12px solid #FFF;
}

.fuki_right:after {
  left: -30px;
  border-right: 14px solid #555;
}


.fuki_left:before {
  right: -24px;
  border-left: 12px solid #FFF;
}

.fuki_left:after {
  right: -30px;
  border-left: 14px solid #555;
}






/**point01**/
#point01 .flex_wrap{
    flex-direction: column;
    padding: 1em 0;
}
#point01 .flex_wrap > div:first-child{
    text-align: left;
}
#point01 .flex_wrap > div:first-child figure{
    text-align: right;
}
#point01 .flex_wrap > div:first-child img{
    width:40%;
    margin-top: -1em;
}

/**point02**/
#point02{
}
#point02_01 p{
    text-align: left;
}
#point02_01 .flex_wrap:first-of-type p{
    width:100%;
}
#point02_01 .flex_wrap:first-of-type figure{
    width:100%;
}

#point02_01 .flex_wrap:last-of-type {
    flex-direction: row-reverse;
    margin: 1em 0;
}
#point02_01 .flex_wrap:last-of-type p{
    width:70%;
}
#point02_01 .flex_wrap:last-of-type figure{
    width:30%;
}
#point02_02 figure{
    margin-top: 1em;
}


/**point03**/
#point03_01{
    text-align: left;
}
#point03_01 #point03_chara01{
    float:right;
    width:30%;
}
#point03_01 figure{
    clear: both;
    text-align: center;
    padding-top: 1em;
}
#point03_01 figure img{
    width:50%;
}



/**person**/
#person{
    text-align: left;
}
#person h3{
    background-image: url("../img/t_person_title_bg.png") ;
    background-repeat: repeat-x;
    background-position: center;
    text-align: left;
}
#person h3 img{
    background-color: #FFF;
    width:40%;
    padding-right: 10px;
}

#person .wrapper{
}

#person_l{
    display: flex;
    justify-content: space-between;
    font-size: 80%;
}
#person_l figure{
    width:40%;
}
#person_l figcaption{
    line-height: 1.2em;
}
#person_l figcaption strong{
    font-size: 160%;
    line-height: 1.5em;
}

#person_l div{
    width:58%;
}

#person_r{
    margin-top: 1em;
    line-height: 1.8em;
}
#person_r p{
    margin-bottom: 1em;
}



/**editor**/
#editor{
    text-align: left;
}
#editor h3{
    background-image: url("../img/t_person_title_bg.png") ;
    background-repeat: repeat-x;
    background-position: center;
    text-align: left;
}
#editor h3 img{
    background-color: #FFF;
    width:40%;
    padding-right: 10px;
}
#editor p{
    margin-top: 1em;
    line-height: 1.8em;
}

#footer{
    padding-top: 1em;
}


/*------------------------------------------------------
	mediaQuery
*-------------------------------------------------------*/
@media screen and (min-width: 640px) {

    #point01 .flex_wrap{
        flex-direction: row;
        justify-content: space-between;
    }



    #point01 .flex_wrap > div{
        width:49%;
    }
    #point01 .flex_wrap > div:first-child{
        margin-top: 1em;
    }
    #point01 .flex_wrap > div:first-child img{
        width:100%;
        margin-top: 1em;
    }


    /*person*/
    #person .wrapper{
        display: flex;
        justify-content: space-between;
    }
    #person h3 img{
        width:23%;
    }
    #person_l{
        width: 20%;
    }
    #person_r{
        width: 75%;
        margin-top: 0;
    }
    #person_l{
        display: block;
    }
    #person_l figure{
        width:100%;
    }

    #person_l div{
        width:100%;
        margin-top: 1em;
    }



    /*editor*/
    #editor h3 img{
        width:23%;
    }



}
/*min-width: 640px end*/



@media screen and (min-width: 800px) {

   /**point03**/
    #point03_01{
        display: flex;
        flex-direction: row-reverse;
        align-items: flex-end;
        justify-content: space-between;
    }
    #point03_01 > div{
        width:48%;
    }
    #point03_01 > figure{
        width:50%;
    }    
    #point03_chara01{
        width:auto !important;
    }
    #point03_01 > figure{
        width:50%;
    }
    #point03_01 > figure img{
        width:100%;
    }
}
/*min-width: 640px end*/








@media screen and (min-width: 930px) {
    /*point02*/
    #point02 .wrapper{
        display: flex;
        align-items: center;
    } 
    #point02 .wrapper > div{
        width:50%;
    }

    #point02_01 .flex_wrap:first-of-type figure{
        width:100%;
    }

    #point02_01 .flex_wrap:first-of-type p{
        width:80%;
    }



    #point02_01 .flex_wrap:last-of-type figure{
        width:40%;
    }

    #point02_01 .flex_wrap:last-of-type p{
        width:60%;
    }  


 




}
/*min-width: 930px end*/
