@charset "utf8";

/* 
base style 
*/
html {
    font-size: 62.5%;
}
body {
    font-family: 'Noto Sans JP', "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
    line-height: 1.5;
    color: #707070;
    background-color: #fff;
}
a{
    text-decoration: none;
    color: #707070;
}
a.border {
    border-bottom: solid 1px;
    padding: 1px 5px;
}
a :hover,a.border:hover {
    opacity: 0.5; /* 透明度 */
    transition: all .25s;
}

img {
    max-width: 100%;
}
li {
    list-style: none;
}
h1 {
    font-weight: bold;
    font-size: 2.8rem;
    color: #012169;
    letter-spacing: 3px;
    margin: 100px 50px 50px 50px;
}
h2 {
    margin: 40px 70px 0px 70px;
    font-size: 1.9rem;
    font-weight: normal;
    color: #012169;
}
.btn {
    text-align: center;
    width: 200px;
    border: #707070 1px solid;
    padding: 9px;
    transition: all 0.3s;
    font-size: 1.2rem;
}
.btn:hover {
    opacity: 0.5;
}
.line-feed {
    display: inline-block;
}
.line-feed a.border {
    display: block;
    margin: 5px 0;
}
.required::after {
    content: "必須";
    color: #ffffff;
    background: #fb5a5a;
    font-size: 0.8em;
    padding: 0.3em;
    border-radius: 0.2rem;
    margin-left: 0.3em;
    display: inline-block;
}
.error {
    margin-bottom: 12px;
}
.bold {
    font-weight: bold;
}
span {
    display: inline-block;
}
@media screen and (max-width: 768px){
    h1 {
        margin: 35px 8px 10px 8px;
        font-size: 2rem;
    }
    h2 {
        margin: 40px 8px 0px 8px;
        font-size: 1.7rem;
    }
}



/* 
header 
*/
.header {
    max-width: 100%;
    display: block;
    align-items: center;
    justify-content: space-between;
    margin: 0 auto;
    padding: 0 3%;
    height: auto;
    display: block;
}
.header-topbox {
    max-width: 100%;
    display: flex;/* 子要素が横並びになる */
    align-items: center;
    justify-content: space-between;
    margin: 0 auto;
}
.header-logo {
    width: 80px;
    font-weight: normal;
    margin: 23px 0 0 0;
    position: absolute;
}
.login-btn.btn {
    display: inline-block;
}
.header-nav {
    text-align: right;
    margin-bottom: 10px;
}
.header-navlist {
    display: flex;
    padding: 30px 0 20px 0;
    text-align: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    margin: 0;
}
.header-navlist.top {
    border-bottom: #ccc 1px solid;
    margin: 0;
}
.header-navitem {
    font-size: 1.3rem;
    padding: 8px 0 8px 38px;
}
/* .header-navitem a {} */
.header-navitem a:hover {
    opacity: 0.5; /* 透明度 */
    transition: all .25s;
}
li.header-navitem.button {
    margin: 0 0 0 30px;
    padding: 8px 27px;
    background-color: #012169;
    border-radius: 30px;
}
a.header-navitem.button {
    color: #fff;
    padding: 0px;
}
li.header-navitem.button:hover {
    opacity: 0.5; /* 透明度 */
    transition: all .25s;
}
.header-550 {
    display: none;
}
header.header.welthynote {
    display: flex;
    padding: 30px 3% 20px;
    text-align: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 1000px;
    max-width: 100%;
    margin: 0 auto;
}
.header-logo.welthynote {
    width: 150px;
}
@media screen and (max-width: 768px){
    .header {
        height: auto;
        display: block;
    }
    .header-logo {
        width: 60px;
        position: relative;
        margin: 20px 15px 0px;
    }
    .header-logo.welthynote {
        width: 120px;
    }
    .header-navlist {
        padding: 10px 0;
        flex-wrap: wrap;
    }
    .header-navitem {
        font-size: 1.1rem;
        padding: 5px 0 10px 20px;
        line-height: 20px;
        vertical-align: middle;
    }
}
@media screen and (max-width: 550px){
    .header {
        display: none;
    }
    .header-550 {
        display: block;
        background-color: #F5F5F5;
    }
    h1.header-logo {
        margin-top: 0;
        padding-top: 20px;
    }
    .header-navitem {
        padding: 0;
    }
    .header-navitem a {
        color: #012169;
    }
    a :hover {
        opacity: 1; /* 透明度 */
    }
    .header-navlist {
        flex-direction: column;
        text-align: left;
    }
    a.header-navitem.button.w {
        margin: 0 0 8px 40px;
        padding: 0px;
        background-color: #fff;
        color: #707070;
        border: #707070 1px solid;
        border-radius: 30px 0 0 30px;
        border-right: none;
    }
    .header-navitem-description {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 4px 20px;
        height: 34px;
        line-height: 12px;
    }
}



/* 
hero 
*/
.hero {
    position: relative;
}
.hero-img {
    width: 100%;
    max-width: 1920px;
    max-height: 100vh;
    object-fit: cover;
}
.hero-text {
    position: absolute;
    top: 30%;
    left: 10%;
    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
}
.hero-text li {
	opacity: 0;
    font-size: 1.3rem;
    margin: 10px 0;
    background-color: rgb(255 255 255 / 74%);
    width: fit-content;
    padding: 2px 10px;
}
/* animate: [ 1. 名前 ] [ 2. 時間 ] [ 3. イージング ] [ 4. 待ち ] [ 5. 繰り返し ] [ 6. 逆再生 ] [ 7. 終了後 ]; */
.hero-text li:first-child {
    animation: fade .8s ease-in-out .2s 1 normal forwards;
}
.hero-text li:nth-child( 2 ) {
    animation: fade .8s ease-in-out 1s 1 normal forwards;
}
.hero-text li:nth-child( 3 ) {
    animation: fade .8s ease-in-out 2s 1 normal forwards;
}
.hero-text li:nth-child( 4 ) {
    animation: fade .8s ease-in-out 3s 1 normal forwards;
}
.hero-text li:nth-child( 5 ) {
    animation: fade .8s ease-in-out 4s 1 normal forwards;
}
@keyframes fade {
    0% { opacity: 0; }
    100% { opacity: 1; }
}
/* .hero-img-768 {} */
@media screen and (max-width: 768px){
    .hero-img {
        height: 400px;
        object-fit: cover;
        overflow: hidden;
    }
}


/* 
section 
*/
.section {
    width: 1000px;
    max-width: 100%;
    margin: 0 auto 70px auto;
    font-size: 1.3rem;
    padding: 0 4%;
}
section.mb0 {
    margin-bottom: 0;
}
.section.subpage div.description {
    border-bottom: solid 1px #d5d5d5;
    padding: 32px 0px 32px;
    margin: 0 80px;
    line-height: 1.8;
}
@media screen and (max-width: 768px){
    .section {
        padding: 0 4%;
    }
    .section.subpage div.description {
        margin: 0 12px;
        padding: 28px 0px 28px;
    }
}


/* 
goals 
*/
.goals-description {
    max-width: 80%;
    margin: 0 auto;
    line-height: 35px;
    letter-spacing: 1px;
    font-size: 1.7rem;
    font-weight: bold;
    text-align: center;
}
.goals-highlight {
    line-height: 4rem;
    font-size: 1.8rem;
    margin-bottom: 14px;
}
.goals-description span {
    display: inline-block;
}
.goals-notes {
    margin-top: 30px;
    font-size: 1.1rem;
    line-height: 19px;
}
.goals-background {
    background-image: url(https://ioyou.co.jp/assets/image/top_bgtext.png);
    background-position: center;
    background-size: contain;
    padding: 50px 0;
    max-width: 100%;
}
.section.goals {
    padding: 0;
    margin-bottom: 40px;
}
.section-headline.goals {
    color: #e20808;
    font-size: 2.2rem;
    position: relative;

}
@media screen and (max-width: 768px){
    .goals-description {
        width: 100%;
        line-height: 35px;
        font-size: 1.4rem;
    }
    .goals-highlight {
        line-height: 3rem;
        font-size: 1.5rem;
        margin-bottom: 14px;
    }
    .goals-notes {
        font-size: 0.9rem;
        line-height: 16px;
    }
    .goals-background {
        padding: 40 0;
    }
    .section-headline.goals {
        font-size: 1.8rem;
    }
    .section.goals {
        margin-bottom: 30px;
    }
}


/* 
corporate_profile.php 
*/
.patents {
    font-size: 1.1rem;
    padding: 8px 20px 0px;
    display: flex;
}
.patents a {
    border-bottom: #707070 solid 1px;
}
.team_member{
    display: flex;
    align-items: center;
    border-bottom: none;
    margin-bottom: 40px;
}
.member_photo {
    margin-right: 20px;
}
.member_photo img{
    width: 100px;
    min-width: 80px;
    border-radius: 999px;
}
/* .member_text{} */
.member_name{
    font-size: 1.3rem;
    font-weight: bold;
    margin-bottom: 3px;
}
.degree{
    font-size: 1rem;
    display: inline-block;
    margin-left: 5px;
}
.member_description{
    font-size: 1.1rem;
}
@media screen and (max-width: 768px){
    .team_member{
        flex-direction: column;
    }
    .member_name{
        text-align: center;
        margin-bottom: 7px;
    }
    .patents {
        flex-direction: column;
    }
}



/* 
service.php 
*/
section.section.subpage.service {
    margin: 0px auto 0px auto;
}
.information_btn.include {
    margin: 12px 0;
}
section.service a :hover {
    opacity: 1;
}
section.section.subpage.service.bsds {
    margin-bottom: 50px;
}
@media screen and (max-width: 768px){

}

/* 
wellness_ai.php
*/
.section.subpage.wellness_ai {
    margin: 0 auto;
}
section.margin0.wellness_ai {
    margin-bottom: 70px;
}
.description.licensing .licensing_title {
    font-weight: bold;
    color: #012169;
    font-size: 1.3rem;
}
.description .licensing_title {
    font-weight: bold;
    color: #012169;
    font-size: 1.3rem;
}
.patent_applications.list {
    display: flex;
    justify-content: space-evenly;
    flex-wrap: nowrap;
    font-size: 1.2rem;
}
.patent_applications.list span {
    padding: 0 5px;
}
.consulting_arrow {
    min-width: 40px;
    line-height: 1.7rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #fff;
    background-color: #fff;
}
.consulting_arrow .arrow_text {
    height: 100%;
    background-color: #012169;
    width: 28px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}
.consulting_arrow .arrow_triangle {
    width: 0;
    height: 0;
    border-top: 12px solid #012169;
    border-left: 14px solid transparent;
    border-right: 14px solid transparent;
}
.consulting_box {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    margin-top: 8px;
}
.consulting_box.main {
    margin-top: 40px;
}
.consulting_box.consulting {
    margin-top: 0;
}
.consulting_box_text {
    padding: 5px 0 20px;
}
.consulting_flow {
    font-size: 1.2rem;
    padding: 13px 0;
    margin: 0 20px;
    display: flex;
    flex-direction: column;
}
.consulting_flow_title {
    font-weight: bold;
    color: #012169;
    font-size: 1.3rem;
    margin-bottom: 3px;
}
.consulting_flow strong {
    padding-top: 3px;
    display: block;
}
.consulting_flow .annotation {
    font-size: 1.1rem;
    margin-top: 5px;
}
@media screen and (max-width: 768px){
    .patent_applications.list {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }
    .consulting_flow{
        margin: 0 12px;
    }
    .consulting_arrow {
        min-width: 38px;
    }
    .consulting_box {
        margin-top: 3px;
    }
}

/* 
egogram_ei.php 
*/
.section.subpage.egogram_ei  div.description {
    border: none;
}
.egogram_ei .note {
    font-size: 1rem;
    letter-spacing: 0.1px;
    display: flex;
    flex-direction: column;
    padding: 20px 30px 20px 15px;
    margin: 0 80px;
    background-color: #F5F5F5;
    border-radius: 5px;
}
.egogram_ei .note li {
    margin-top: 8px;
}
.egogram_ei .note li:first-child {
    margin-top: 0px;
}
.egogram_ei .attention {
    display: flex;
    justify-content: center;
    align-items: flex-start;
}
.egogram_ei .icon {
    margin-right: 10px;
    max-width: 35px;
}
table.egogram_ei {
    font-size: 1rem;
    margin: 0 auto;
    width: 100%;
    border-collapse: collapse;
}
table.egogram_ei th {
    padding: 8px;
}
table.egogram_ei th.table_note {
    background: #012169;
    color: #FFF;
    padding: 4px 5px;
    border-radius: 4px;
}
table.egogram_ei th.border {
    padding: 0;
    border-bottom: 1px solid #ccc;;
}
table.egogram_ei td {
    padding: 8px;
}
.egogram_ei .references {
    background-color: #FFF;
    padding: 15px 25px;
}
.egogram_ei .references .title{
    margin-bottom: 15px;
    font-size: 1.5rem;
    padding: 4px 0 5px 10px;
    border-bottom: 1px solid #ccc;
}
.egogram_ei .graph_thumbnail_list{
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
    justify-content: space-around;
}
.graph_thumbnail {
    min-width: 120px;
    max-width: 135px;
    margin: 0px 2% 8px 2%;
}
/* モーダルウインドウ */
.modalArea {
    display: none;
    position: fixed;
    z-index: 10;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.modalBg {
    width: 100%;
    height: 100%;
    background-color: rgba(30, 30, 30, 0.9);
}
.modalWrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
    max-width: 1000px;
    padding: 20px;
    background-color: #fff;
    border-radius: 5px;
}
.modalContents {
    max-height: 70vh;
    overflow-y: auto;
    display: flex;
}
.closeModal {
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    cursor: pointer;
    font-size: 1.5rem;
}
.modalDetail {
    font-size: 1rem;
    color: #333;
    line-height: 1.6;
}
.modalDetail .section-title {
    font-weight: bold;
    margin-top: 1em;
    font-size: 1.1rem;
    color: #444;
}
.modalDetail p {
    margin: 0.3em 0;
}
h1#modalTitle {
    display: none;
    margin: 10px 0 25px;
    font-size: 1.7rem;
}
.modalImage {
    max-width: 300px;
    margin: 0 20px 0 0;
}
@media screen and (max-width: 768px){
    .modalBg {
        width: 100vw;
        height: 100vh;
        background-color: rgba(30, 30, 30, 0.9);
    }
    .egogram_ei .note {
        margin: 0px auto 0px auto;
        padding: 20px 20px;
    }
    .egogram_ei .references {
        padding: 15px 12px;
    }
    .egogram_ei .icon {
        display: none;
    }
    table.egogram_ei th {
        padding: 10px 8px;
        display: block;
        text-align: left;
    }
    table.egogram_ei td {
        padding: 5px 8px 10px;
        display: block;
    }
    table.egogram_ei th.table_note {
        padding: 4px 16px;
    }
    .graph_thumbnail {
        min-width: 100px;
    }
    .modalContents {
        flex-direction: column;
    }
    .modalImage {
        max-width: 200px;
        margin: 10px auto;
    }
    .modalWrapper {
        width: 90%;
        padding: 20px 15px 15px 15px;
    }
    .modalContents {
        max-height: 80vh;
    }
    .closeModal {
        top: 0.2rem;
    }
}

/* 
course_bsds.php 
*/
section.section.subpage.course_bsds {
    margin: 0px auto 0px auto;
}
section.margin0 {
    background-color: #F5F5F5;
    max-width: 100%;
    padding: 30px;
}
section.margin0 a :hover {
    opacity: 1;
}
.information_btn {
    border: solid 1px #707070;
    border-radius: 4px;
    background-color: #fff;
    padding: 10px 10px 10px 25px;
    max-width: 500px;
    margin: 0 auto;
}
.information_btn_description {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 1.3rem;
}

section.program.course_bsds {
    font-size: 1.2rem;
    width: 100%;
    max-width: 1100px;
}
table.program.course_bsds {
    margin: 50px 0;
    width: 100%;
    border-spacing: 0;
    border-collapse: inherit;
}
table.program.course_bsds td {
    padding: 12px 10px;
    min-width: 168px;
    border-top: solid 1px #d5d5d5;
}
table.program.course_bsds tr:first-child td {
    border: none;
}
@media screen and (max-width: 768px){
    .scroll_area {
        width:100%;
        max-width:600px;
        overflow-x:scroll;
    }
    table.program.course_bsds {
        width:100%;
    }
    .information_btn_description {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}
@media screen and (max-width: 550px){
    .information_btn {
        border-right: 0;
        border-radius: 999px 0 0 999px;
        padding: 6px 30px 6px 25px;
        margin: 0;
    }
    section.margin0 {
        padding: 20px 0 20px 25px;
    }
}



/* 
course_vee.php 
*/
section.section.subpage.course_vee ol {
    list-style: none;
    counter-reset: number;
}
section.section.subpage.course_vee li {
    position: relative;
    padding-left: 25px;
    padding-bottom: 15px;
}
section.section.subpage.course_vee li::before {
    counter-increment: number;
    content: counter(number);
    position: absolute;
    left: 0;
}

section.table.course_vee {
    margin-top: 80px;
}
table.table.course_vee {
    margin: 50px 0px 0px 0px;
    border-spacing: 0;
    border-collapse: inherit;
    font-size: 1.2rem;
}
table.table.course_vee td {
    padding: 12px 10px;
    border-top: solid 1px #d5d5d5;
}
table.table.course_vee tr:first-child td {
    border: none;
}

.section.subpage div.description.instructors {
    display: flex;
    align-items: center;
    border-bottom: none;
}
div.description.instructors div.picture img {
    width: 400px;
    min-width: 130px;
    border-radius: 999px;
}
div.description.instructors div.text {
    margin: 25px 0 25px 25px;
}
section.course_vee div.instructors_name {
    font-size: 1.5rem;;
}
section.course_vee div.instructors_description {
    font-size: 1.2rem;
    margin-top: 15px;
}
.section.subpage div.description.instructors.books {
    padding-top: 0px;
}
div.description.instructors div.picture.books img {
    border-radius: 0px;
    width: 120px;
    height: 170px;
    min-width: 120px;
}
div.description.instructors.books div.text {
    margin: 10px 0 10px 45px;
}
@media screen and (max-width: 768px){
    .scroll_area {
        width:100%;
        max-width:600px;
        overflow-x:scroll;
    }
    table.table.course_vee {
        width:100%;
    }
    .section.subpage div.description.instructors {
        flex-wrap: wrap;
        flex-direction: column;
        justify-content: center;

    }
    div.description.instructors div.text {
        margin: 25px 0;
    }
    div.description.instructors div.picture img {
        width: 130px;
        margin-top: 20px;
    }
    div.description.instructors.books div.text {
        margin: 10px 0 ;
    }
    section.table.course_vee {
        margin-top: 0px;
    }
    section.course_vee div.instructors_name {
        text-align: center;
    }
}


/* 
application_vee.php 
*/
section.terms_of_attendance {
    width: 800px;
    max-width: 100%;
    margin: 0 auto 70px auto;
    padding: 0 4%;
    font-size: 1.1rem;
}
section.terms_of_attendance div.scroll_area {
    width: 100%;
    height: 300px;
    overflow-y: scroll;
}
section.terms_of_attendance div.scroll_area ol {
    list-style: none;
    counter-reset: number;
}
section.terms_of_attendance div.scroll_area li {
    position: relative;
    padding-left: 25px;
    padding-bottom: 15px;
}
section.terms_of_attendance div.scroll_area li::before {
    counter-increment: number;
    content: counter(number);
    position: absolute;
    left: 0;
}
@media screen and (max-width: 768px){

}

/* 
application_bsds.php 
*/
section.section.subpage.application_bsds {
    margin-bottom: 20px;
}
@media screen and (max-width: 768px){

}


/* 
contact.php 
*/
section.section.subpage.contact {
    margin-bottom: 20px;
}
@media screen and (max-width: 768px){

}

/* 
privacypolicy.php 
*/
.section.subpage.privacypolicy li {
    font-size: 1.2rem;
    padding: 2px 8px;
}
@media screen and (max-width: 768px){

}


/* 
rd.php
*/
section.section.subpage.rd {
    margin: 0px auto 0px auto;
}
section.margin0.rd {
    margin-bottom: 50px;
}
@media screen and (max-width: 768px){
    
}

/* 
welthy_usage.php
*/
section.section.subpage.welthy_usage {
    margin: 0px auto 0px auto;
}
section.margin0.welthy_usage {
    margin-bottom: 80px;
}
@media screen and (max-width: 768px){
    
}



/* 
grid 
*/
.grid {
    margin: 0;
    padding: 0;
    display: flex;/* 横並び */
    flex-wrap: wrap;/* 折り返す */
    justify-content: space-between;
}
.grid-item {
    list-style: none;
}
.grid-col-2 > .grid-item {
    width: 50%;
}
.grid-col-3 > .grid-item {
    width: 33.3%;
}
.grid-col-4 > .grid-item {
    width: 25%;
}
/* 子要素にしてる ある要素の直下にいる要素を『子要素』と呼びます*/
@media screen and (max-width: 768px){
    .grid {
        display: block;
    }
    .grid-col-2 > .grid-item,
    .grid-col-3 > .grid-item,
    .grid-col-4 > .grid-item {
        width: fit-content;
        margin: 20px auto;
    }
}


/* 
information 
*/
.section.information {
    padding-bottom: 10px;
}
.index-information-box {
    display: inline-block;
    width: 100%;
    height: 30vw;
    min-height: 200px;
    max-height: 310px;
    overflow: auto;
    vertical-align: top;
    text-align: left;
}
.index-information-box a {
    border-bottom: solid 1px;
    padding: 1px 5px;
}
/* .index-information {} */
.index-information-li {
    font-size: 1.2rem;
    border-bottom: 1px solid #ccc;
    padding: 15px 10px;
}

/*tabの形状*/
.tab{
	display: flex;
	flex-wrap: wrap;
    font-size: 1.2rem;
}
.tab li a{
	display: block;
	background:#EEEEEE;
	margin:0 2px;
	padding:10px 20px;
}
/*liにactiveクラスがついた時の形状*/
.tab li.active a{
	background:#fff;
}
/*エリアの表示非表示と形状*/
.area {
	display: none;/*はじめは非表示*/
	opacity: 0;/*透過0*/
	background: #fff;
	padding:50px 20px;
}
/*areaにis-activeというクラスがついた時の形状*/
.area.is-active {
    display: block;/*表示*/
    animation-name: displayAnime;/*ふわっと表示させるためのアニメーション*/
    animation-duration: 2s;
    animation-fill-mode: forwards;
    padding: 30px 20px;
}
@keyframes displayAnime{
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@media screen and (max-width: 768px){
    .tab li a{
        padding: 10px;
    }
}


/*----------------------------
scroll_up ｜下から上へ出現
----------------------------*/
.scroll_up {
    transition: 0.8s ease-in-out;
    transform: translateY(30px);
    opacity: 0;
}
.scroll_up.on {
    transform: translateY(0);
    opacity: 1.0;
}
  


/* 
footer
*/
.footer {
    max-width: 100%;
    display: flex;
    flex-direction: column; /* 子要素が縦並びになる */
    align-items: center;
    justify-content: space-evenly;
    margin: 0 auto;
    padding: 15px 4%;
    /* height: 200px; */
    background-color: #EEEEEE;
}
.footer-logo {
    width: 100px;
    font-weight: normal;
    margin: 25px;
}
.copyright {
    font-size: 0.9rem;
    text-align: center;
}
.footer-menu {
    display: flex;
    padding: 10px 0;
    text-align: center;
}
ul.footer-menu.footer-icon {
    padding: 20px 0 0 0;
}
.footer-li {
    margin: auto 10px;
    font-size: 1.1rem;
    min-width: 20px;
}
.footer-li a:hover {
    opacity: 0.5; /* 透明度 */
    transition: all .25s;
}
li.footer-li.footer-icon{
    margin: auto 0 auto 10px;
}
@media screen and (max-width: 768px){
    /* .footer {
        display: block;
        flex-direction: column;  子要素が縦並びになる 
    } */
    .footer-menu {
        flex-wrap: wrap;
    }
    ul.footer-menu.footer-icon {
        padding: 20px 0 0 0;
    }
    .footer-li {
        margin: auto 10px;
        line-height: 2.5rem;
    }
    li.footer-li.footer-icon{
        margin: auto 0 auto 10px;
    }
    .footer-logo {
        margin: 20px auto;
    }
}
/* index.php　ここまで */



/* 
form 
*/
span.required {
    display: block;
}
form {
    padding: 10px 25px 33px 25px;
}
form > ul.text2 {
    list-style: none;
    border-bottom: 0.9px solid #dcdcdc;
    padding: 0 0px 33px 15px;
    margin: 0;
}
form > ul.text {
    list-style: none;
    padding: 0 0px 33px 0px;
    border-bottom: 0.9px solid #dcdcdc;
    margin: 0;
}
form > ul.text_notitle {
    list-style: none;
    padding: 33px 0px;
    border-bottom: 0.9px solid #dcdcdc;
    margin: 0;
}
input,textarea {
    margin: 6px 0px 10px;
}
form input.address {
    margin-bottom: 3px;
}
form .checkbox {
    margin-bottom: 0;
}
/* @media screen and (max-width: 768px){
} */


