@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/
body{
    font-family: "游ゴシック体", sans-serif;
    overflow-x: hidden;
}

h2.h2_main{
    font-family: 'Montserrat', sans-serif;
    margin-bottom: 0;
    font-size: 40px;
    color: #0B41A0;
    position: relative;
    margin-top: 100px;
}
h2.h2_sub{
    margin-top: 0;
    font-size: 14px;
    color: #72C1D0;
}
h2.h2_main:before{
    position: absolute;
    content: "";
    display: block;
    background: #0B41A0;
    height: 2px;
    width: 1000px;
    left: -1020px;
    top: 50%;
    transform: translateY(-50%);
}

.page_top h2.h2_main,
.page_top h2.h2_sub{
    filter: drop-shadow(0 0 5px #0B41A0) drop-shadow(0 0 10px #72C1D0);
}

@media screen and (max-width: 599px){
    h2.h2_main{
        font-size: 30px;
    }
}

h2.h2_centerline .u-fz-l{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
h2.h2_centerline .u-fz-l::before,
h2.h2_centerline .u-fz-l::after{
    content: "";
    flex-grow: 1;
    height: 2px;
    background-color: #5b5658;
}

h2.h2_centerline .u-fz-l::before{
    margin-right: 20px;
}
h2.h2_centerline .u-fz-l::after{
    margin-left: 20px;
}



h3{
    font-size: 25px;
    color: #0B41A0;
    font-weight: bold;
    padding: 15px 0;
}

h3.h3_line{
    border-bottom: #0B41A0 1px solid;
    border-top: #0B41A0 1px solid;
}
h4{
    color: #0B41A0;
    font-size: 20px;
}
p{
    line-height: 1.8em;
}
a:hover{
    color: #72C1D0;
    transition: all 0.2s;
}

.wp-block-spacer{
    margin-bottom: 0;
}


ul{
    list-style: none !important;
    padding-left: 0 !important;
}
ul.ul_dot li{
    position: relative;
    padding: 5px 0 5px 20px;
    margin-bottom: 10px;
}
ul.ul_dot li:before{
    position: absolute;
    content: "●";
    color: #0B41A0;
    left: 0;
}

ul.caution{
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
}
ul.caution li{
    position: relative;
    padding-left: 20px;
}
ul.caution li:not(:last-child){
    margin-bottom: 5px;
}
ul.caution li:before{
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
    color: #EE5700;
    font-weight: bold;
}


.single .post_content p:not(:last-of-type){
    margin-bottom: 0;
}

.single .post_content ul li{
    position: relative;
    padding: 0 0 0 20px;
    margin-bottom: 10px;
}
.single .post_content ul li:before{
    position: absolute;
    content: "●";
    color: #0B41A0;
    left: 0;
}


.is-style-btn_line.green_ a:hover{
    color: #0B41A0 !important;
}

.flexes{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.flex_100{
    width: 97%;
}
.flex_50{
    width: 48%;
}
.flex_30{
    width: 31%;
}
.flex_25{
    width: 23%;
}
.flex_15{
    width: 13%;
}
.flex_50,.flex_30,.flex_25,.flex_15{
    margin: 0 1%;
}
@media screen and (max-width: 959px){
    .flex_100,.flex_50,.flex_30{
        width: 100%;
    }
    .flex_25,.flex_15{
        width: 50%;
    }
}
@media screen and (max-width: 599px){
    .flex_25,.flex_15{
        width: 100%;
    }
}

.display_none{
    display: none;
}


.space_50{
    height: 50px;
}
.space_100{
    height: 100px;
}
.space_150{
    height: 150px;
}
.space_200{
    height: 200px;
}


.no_wrap{
    display: block !important;
}

.margin_0{
    margin: 0 !important;
}


.button_close a{
    background-color: #bbb;
    pointer-events: none;
}


/*矢印付きリンク*/
.yajirushi_link_white,
.yajirushi_link_blue{
    position: relative;
    font-weight: bold;
}
.yajirushi_link_white a,
.yajirushi_link_blue a{
    padding: 20px 20px 20px 70px;
    transition: all 0.2s;
}
.yajirushi_link_white a:before,
.yajirushi_link_blue a:before{
    content: "";
    position: absolute;
    width: 50px;
    height: 50px;
    background-repeat: no-repeat !important;
    background-size: 100% 100%;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    z-index: -1;
}
.yajirushi_link_white a:before{
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/news_list_button.svg");
}
.yajirushi_link_blue a:before{
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/news_list_button_blue-04.svg");
}

.yajirushi_link_white a:hover,
.yajirushi_link_blue a:hover{
    color: #72C1D0 !important;
}
.yajirushi_link_white a:hover:before,
.yajirushi_link_blue a:hover:before{
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/news_list_button_lightblue.svg");
}




/*headerヘッダー*/
.l-header{
    position: relative;
    background: none;
}
.l-header:before,
.l-fixHeader:before{
    content: "";
    position: absolute;
    top: 0;
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/header_back.svg");
    background-size: 100% 120px;
    background-repeat: no-repeat;
    width: 100vw;
    height: 120px;
    z-index: -1;
}
.l-header:before{
    opacity: 0.2;
}
.l-fixHeader::before{
    top: -10px;
    filter: drop-shadow(0 0 5px rgba(37, 57, 80, 0.1)) drop-shadow(0 0 10px rgba(37, 57, 80, 0.1));
}

.l-header__inner{
    max-width: 1200px !important;
}
.c-headLogo__img{
    max-width: 350px;
}

.l-fixHeader__inner{
    position: relative;
    top: 10px;
    height: 60px;
}
@media screen and (max-width: 959px){
    .l-header:before{
        background-size: 100% 90px;
        height: 100px;
        filter: drop-shadow(0 0 5px rgba(37, 57, 80, 0.1)) drop-shadow(0 0 10px rgba(37, 57, 80, 0.1));
    }
}

html[data-scrolled="true"] .l-header::before{
    opacity: 1;
    transition: all 0.2s;
}

.page:not(.home) .l-header__inner li,
.archive .l-header__inner li{
    color: #FFF;
}
.page:not(.home) .l-header .c-headLogo__link img,
.archive .l-header .c-headLogo__link img{
    display: none;
}
.page:not(.home) .l-header .c-headLogo__link,
.archive .l-header .c-headLogo__link{
    position: relative;
}
.page:not(.home) .l-header .c-headLogo__link:before,
.archive .l-header .c-headLogo__link:before{
    content: "";
    background: url("https://iacow-education.jp/wp-content/uploads/2024/05/logo_color_003.png");
    background-repeat: no-repeat;
    background-size: 100%;
    width: 350px;
    height: 70px;
    display: block;
    object-fit: contain;
}
@media screen and (max-width: 959px){
    html[data-scrolled="true"] .page:not(.home) .l-header .c-headLogo__link:before{
        background: url("https://iacow-education.jp/wp-content/uploads/2024/05/logo_color_002.png");
        background-repeat: no-repeat;
        background-size: 100%;
        width: 200px;
        height: 70px;
        display: block;
        object-fit: contain;
    }
}
@media screen and (max-width: 600px){
    .page:not(.home) .l-header .c-headLogo__link:before,
    .archive .l-header .c-headLogo__link:before{
        width: 200px;
    }
}
.l-header .c-gnav > .menu-item > a:after{
    bottom: 30px;
}
.l-fixHeader .c-gnav > .menu-item > a:after{
    bottom: 15px;
}

.c-gnav > .menu-item > a:after{
    left: 50%;
    transform: translateX(-50%);
}
.c-gnav > .menu-item > a:hover:after{
    width: 75%;
}

.l-header .c-gnav > .menu-item > a[aria-current="page"]:after{
    background-color: #fff;
    width: 75%;

}
.l-fixHeader .c-gnav > .menu-item > a[aria-current="page"]:after{
    background-color: #72C1D0;
    width: 75%;
}




/*日英語スイッチ*/

/* スイッチの枠のデザイン   */
.switch-label {
  width: 90px;
  height: 40px;
  border-radius: 40px;
  position: relative;
  display: inline-block;
  background: #0B41A0;
  cursor: pointer;
}

/* スイッチのボールのデザイン */
.switch-label::before {
  content: '';

  /* ボールを作る */
  display: inline-block;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 4px rgba(0,0,0,.3);

  position: absolute;
  top: 50%;
  left: 3px;
  transform: translateY(-50%);
  
  /* ボールの速度調整（追加部分） */
  transition: .5s;
}
    
/* チェックボックスがチェックされたらスイッチの背景色が変わる（追加部分）*/
  .switch-input:checked + .switch-label {
    background: #72C1D0;
  }
    
/* チェックボックスがチェックされたらボールが右に移動しボールの色も変わる（追加部分）*/
.switch-input:checked + .switch-label::before {
  background: #fff;
  left: 95%;
  transform: translate(-100%,-50%);
}
.switch-input {
  display: none;
}





/*ハンバーガーメニュー*/
.p-spMenu__inner{
    overflow: hidden;
    padding-top: 20px;
}
.p-spMenu__body{
    padding: 0;
    position: relative;
}
.p-spMenu__bottom{
    width: 100%;
}
.p-spMenu__bottom > .c-widget{
    position: absolute;
    width: 100%;
}

.l-header__menuBtn.sp_ i{
    display: none;
}
.l-header__menuBtn.sp_{
    position: relative;
}
.l-header__menuBtn.sp_ button{
    position: relative;
}
.l-header__menuBtn.sp_ button:before{
    content: "";
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/sp_menu_butto.svg");
    background-repeat: no-repeat;
    background-size: 100%;
    width: 50px;
    height: 50px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}


.p-spMenu .p-spMenu__closeBtn button .icon-close-thin::before{
    display: none;
}
.p-spMenu .p-spMenu__closeBtn button{
    position: relative;
}
.p-spMenu .p-spMenu__closeBtn button:before{
    content: "";
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/sp_menu_button_close.svg");
    background-repeat: no-repeat;
    background-size: 100%;
    width: 50px;
    height: 50px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}


.p-spMenu .c-spnav li a{
    border: none;
    font-weight: bold;
    padding: 15px 10px;
    color: #0B41A0;
}
.c-gnav .sub-menu a::before, .c-listMenu a::before,
.c-widget__title.-spmenu{
    display: none;
}
.p-spMenu__bottom{
    margin-top: 0;
    position: relative;
    width: 100%;
    bottom: 0;
    height: 100%;
}

.p-spMenu__bottom:before{
    content: "";
    position: absolute;
    width: 100%;
    height: 500px;
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/sp_menu_bottom.svg");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    left: 50%;
    transform: translateX(-50%);
}
.p-spMenu__bottom:after{
    content: "";
    position: absolute;
    width: 100%;
    height: 80%;
    background: #0B41A0;
    top: 40px;
    z-index: 0;
}

.p-spMenu__bottom .c-widget{
    padding-top: 30px;
    z-index: 10;
}
.button_white{
    z-index: 10;
}
.button_white a{
    max-width: 250px;
    width: 100%;
    padding: 10px;
    border: 2px #fff solid;
    color: #fff;
    border-radius: 50px;
    display: block;
    text-align: center;
    margin: 10px auto 30px;
    position: relative;
    font-weight: bold;
}
.button_white a:hover{
    background: #fff;
    color: #0B41A0;
    transition: all 0.2s;
}

.flex_15.sp_bottom a{
    max-width: 40px;
    width: 100%;
    display: block;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    padding: 5px;
}

.p-spMenu .p-spMenu__nav{
    padding: 20px;
}

.p-spMenu .p-spMenu__nav a:hover{
    background: initial;
    color: #72C1D0;
}


.p-spMenu .p-spMenu__nav .sub-menu li a{
    padding: 10px;
    padding-left: 30px;
    font-weight: normal;
}
.p-spMenu .p-spMenu__nav .sub-menu li a:before{
    content: "- ";
    color: #0B41A0;
    display: inline;
}
.p-spMenu .p-spMenu__nav .sub-menu li a:hover{
    padding-left: 40px;
}

@media screen and (min-width: 960px){
    .p-spMenu .p-spMenu__nav .sub-menu li{
        position: relative;
    }
    .sub-menu{
        background: ##F0FAFC;
        position: absolute;
        right: 0;
        left: initial !important;
        transform: initial !important;
    }
    .l-header__gnav .sub-menu li:not(:last-child):before{
        content: "";
        height: 2px;
        width: 80%;
        position: absolute;
    }
    .l-header__gnav .sub-menu li a{
        color: #253950;
    }
    .sub-menu li a:hover{
        background:#0B41A0 !important;
        color: #fff;
    }
}





/*トップイメージ*/
.p-mainVisual__textLayer{
    filter: drop-shadow(0 0 5px #0B41A0) drop-shadow(0 0 10px #72C1D0);
    font-weight: bold;
}
.p-mainVisual__slideTitle{
    font-size: 55px;
}
.p-mainVisual__slideTitle img{
    max-width: 500px;
    width: 80%;
}

.p-mainVisual__slideText{
    font-size: 30px;
}
.p-mainVisual__slideText .p-mainVisual__slideText_small{
    font-size: 20px;
}


@media screen and (max-width: 599px){
    .p-mainVisual__slideTitle{
        font-size: 25px;
    }
    .p-mainVisual__slideText{
        font-size: 20px;
    }
}



.en_top_white{
    position: absolute;
    top: -120px;
}

.top_student_network p{
    padding: 0;
}




/*お知らせ*/

.p-postList__link{
    color: #0B41A0;
}
.home_newslist .p-postList__link{
    color: #fff;
}

.p-postList__link .p-postList__title,
.p-postList__link .p-postList__meta,
.p-postList__link .p-postList__times{
    display: inline;
}

.p-postList__link .p-postList__cat::before,
.p-postList__link .c-postTimes__posted::before{
    display: none;
}

.p-postList__link .u-thin{
    opacity: 1;
}

.p-postList__body{
    display: flex;
    flex-wrap: wrap;
}
.p-postList__meta{
    display: flex !important;
    flex-wrap: wrap;
    align-items: start;
    padding: 5px 0;
    width: 180px;
}

.postlists_category{
    display: inline;
}

.p-postList__title{
    width: calc(100% - 180px);
}
.p-postList__cat{
    padding: 3px 10px;
    width: 80px;
    background: #0B41A0;
    color: #fff;
    border-radius: 10px;
    font-weight: bold;
    display: block;
    text-align: center;
    margin-bottom: 5px;
}
@media screen and (max-width: 599px){
    .postlists_category{
        display: flex;
        flex-wrap: wrap;
    }
    .p-postList__meta,
    .p-postList__title{
        width: 100%;
    }
    .p-postList__cat{
        margin-bottom: 0;
    }
}
.p-postList__cat[data-cat-id="member"]{
    background: #ee7800;
}



.home_newslist .p-postList__cat{
    background: #fff;
    color: #0B41A0;
}

.wp-block-categories-list{
    display: flex;
    flex-wrap: wrap;
    justify-content: right;
}
.wp-block-categories-list .cat-item{
    margin-left: 10px;
}
.wp-block-categories-list .cat-item a{
    display: inline;
    padding: 5px 10px;
    background: #0B41A0;
    color: #fff;
    border-radius: 15px;
    font-weight: bold;
    font-size: 12px;
}

.home_newscategories.wp-block-categories-list .cat-item a{
    background: #fff;
    color: #0B41A0;
    border: 1px #0B41A0 solid;
}

.wp-block-categories-list .cat-item a::before{
    display: none;
}
.wp-block-categories-list .cat-item a:hover{
    color: #72C1D0;
}


.post_content{
    position: relative;
}

.top_introduction{
    position: relative;
    top: -80px;
    font-weight: bold;
}
.top_introduction p{
    padding-block: 5px;
}

.top_introduction_inner{
    max-width: 800px;
    padding: 40px;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}

.top_introduction_inner_midashi{
    font-size: 35px;
    color: #104193;
}

@media (max-width: 959px){
    .top_introduction_inner p{
        text-align: center !important;

    }
    .top_introduction_x img{
        width: 100%;
        max-width: 250px;
        height: 120px;
    }
}

.news_fullwide{
    position: relative;
}

.synergistic_effect{
    width: 120px;
    height: 50px;
}
.synergistic_effect .top_introduction_x img{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 300px;
    height: 300px;
    z-index: -30;
}



/*産学連携洋上風力人材育成コンソーシアムとは*/


.project_column_image{
    position: relative;
}

.project_column_image .wp-block-image{
    width: 75%;
}
.project_column_image_A,
.project_column_image_B{
    position: relative;
    width: 100%;
    height: 0;
    overflow: hidden;
}
.project_column_image_A{
    padding-bottom: 42.1%;
}
.project_column_image_B{
    padding-bottom: 80%;
}
.project_column_image_A img,
.project_column_image_B img{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
}
.project_columns .project_column:nth-child(odd) .project_column_image_A{
    left: 0;
    top: 0;
}
.project_columns .project_column:nth-child(odd) .project_column_image_B{
    left: 20%;
    top: -40px;
}


@media screen and (max-width: 959px){
    .project_columns .project_column:nth-child(odd) .project_column_image_B{
        left: 25%;
    }
}

/*
.project_columns .project_column:nth-child(even) .project_column_image_A{
    left: 20%;
    top: 0;
}
.project_columns .project_column:nth-child(even) .project_column_image_B{
    left: 0;
    top: -40px;
}
*/

.project_wave {
    position: absolute;
    bottom: 10px;
    max-width: 350px;
    width: 100%;
}
.project_columns .project_column:nth-child(odd) .project_wave{
    left: 0;
}
.project_columns .project_column:nth-child(even) .project_wave{
    right: 0;
}



/*Projects事業紹介*/

.introduction_wave .swell-block-fullWide__inner{
    position: relative;
}
.introduction_wave .introduction_wave_yajirushi{
    max-width: 150px;
    width: 100%;
    position:  absolute;
    bottom: 0;
}

@media screen and (max-width: 959px){
    .introduction_wave .introduction_wave_yajirushi{
        bottom: -50px;
        left: 50%;
        transform: translatex(-50%);
    }
}_


.introduction_list{
    overflow-x: scroll;
}

.introduction_list .wp-block-group .wp-block-group__inner-container{
    display: flex;
    flex-wrap: no-wrap;
    justify-content: left;
    width: auto;
    overflow-x: scroll;
}

.introduction_list .wp-block-cover{
    width: 350px;
    height: 350px;
    flex-shrink: 0;
    margin: 0 15px;
    position: relative;
}
.introduction_list .wp-block-cover .swell-block-button{
    position: absolute;
    bottom: 60px;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
}



/*参加補助事業者*/

.company_logo{
    position: relative;
    width: 100vw;
    padding: 100px;
    left: -100px;
    border-radius: 50px 0 0 50px;
}
@media screen and (max-width: 959px){
    .company_logo{
        left: -18px;
        padding: 20px;
    }
}

.company_logo .wp-block-group__inner-container{
    position: relative;
    max-width: 1000px;
    width: 100%;
    margin: 0 !important;
}
.company_logo img{
    border-radius: 10px;
}
.company_logo h3{
    width: 100%;
    position: relative;
    left: 0;
}
.company_logo h4{
    color:#0B41A0;
    position: relative;
    z-index: 1;
}
.company_logo h4 strong{
    background: #fff;
    padding-right: 10px;
}

.company_logo h4:after{
    content: "";
    background:#0B41A0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    height: 2px;
    width: 100%;
    z-index: -1;
}
.company_logo h5{
    font-size: 20px;
}

.company_logo ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    list-style: none;
}
.company_logo ul li{
    width: 50%;
    position: relative;
}

.company_logo .swell-block-columns ul li{
    width: 100%;
}

.company_logo ul li:before{
    content: "●";
    color: #0B41A0;
    padding-right: 5px;
}

@media screen and (max-width: 959px){
    .company_logo ul li{
        width: 100%;
    }
}

.consortium_member{
    margin-left: 5%;
}






/*footerフッター*/

.w-beforeFooter{
    background: #253950;
    color: #fff;
}
.w-beforeFooter .l-container{
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    margin-bottom: 30px;
    max-width: 900px;
    margin-bottom: 55px;
}
@media screen and (max-width: 959px){
    .w-beforeFooter .c-widget:first-child{
        position: relative;
    }
    .w-beforeFooter .c-widget:first-child:before{
        content: "";
        position: absolute;
        max-width: 400px;
        width: 100%;
        height: 1px;
        left: 50%;
        bottom: 20px;
        transform: translateX(-50%);
        background: #fff;
    }

}

.widget_media_image{
    max-width: 350px;
    width: 100%;
    position: relative;
    height: 150px;
}
.widget_media_image img{
    margin: auto;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 90%;
}
.w-beforeFooter .c-widget{
    padding: 10px;
}
.w-beforeFooter .c-widget h4{
    margin-bottom: 5px !important;
}
.w-beforeFooter .c-widget h4 span{
    display: inline-block;
}
.w-beforeFooter .c-widget p{
    font-size: 12px;
}
@media screen and (min-width: 960px){
    .w-beforeFooter .c-widget:last-child .textwidget{
        border-left: 1px #fff solid;
        padding-left: 20px;
    }
    .w-beforeFooter .c-widget p{
        padding: 0 !important;
    }
}
@media screen and (max-width: 959px){
    .widget_media_image img{
        max-width: 400px !important;
        width: 90%;
    }
    .c-widget + .c-widget{
        margin-top: 0;
    }
}
.l-footer{
    position: absolute;
    bottom: 0;
    width: 100%
}
#body_wrap{
    min-height: 100vh;
    position: relative;
    padding-bottom: 400px;
}
.w-beforeFooter{
    position: absolute;
    bottom: 160px;
    width: 100%
}
@media screen and (max-width: 959px){
    #body_wrap{
        padding-bottom: 600px;
    }
    .w-beforeFooter{
        bottom: 200px;
    }
    .w-beforeFooter .l-container > *{
        width: 100%;
        max-width: initial;
        text-align: center;
    }
}
@media screen and (max-width: 599px){
    #body_wrap{
        padding-bottom: 600px;
    }
    .w-beforeFooter{
        bottom: 250px;
    }
}

.l-footer:before{
    content: "";
    position: absolute;
    background-image: url("https://iacow-education.jp/wp-content/uploads/2024/01/footer_wave.png");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: 100vw;
    height: 80px;
    object-fit: fill;
    top: -60px;
}
@media screen and (max-width: 959px){
    .l-footer:before{
        height: 30px;
        top: -30px;
    }
}

.l-footer .l-footer__inner{
    max-width: 1200px;
    margin: auto;
}


.l-footer .footer_list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    color: #969696;
    font-size: 12px;
}
.l-footer .footer_list li{
    display: block;
    width: 25%;
}
@media screen and (max-width: 599px){
    .l-footer .footer_list li{
        width: 50%;
    }
}
.l-footer li:before{
    display: none;
}
.l-footer .footer_list li a{
    display: block;
    width: 100%;
    height: 100%;
    padding: 15px 40px;
    text-align: center;
}

.w-beforeFooter .c-widget h4{
    color: #FFF;
}
.w-beforeFooter .c-widget p{
    padding-bottom: 50px;
}

@media screen and (min-width: 960px){
    .w-footer__box:first-child{
        max-width: calc(100% - 200px);
    }
    .w-footer__box:last-child{
        max-width: 200px;
    }
}
.l-footer .button_white a{
    padding: 3px 5px;
    font-size: 14px;
    border: 1px #fff solid;
    margin: 5px auto;
}
.l-footer .c-iconList__item{
    padding: 5px !important;
}
.l-footer .c-widget + .c-widget{
    margin: 5px 0;
}



/*会員ページ関連*/

.post_content td, .post_content th{
    border: none;
}
.post_content tr{
    display: block;
    margin-bottom: 20px;
}

.swpm-registration-widget-form input[type="text"],
.swpm-registration-widget-form input[type="password"] {
  width: 100%;
  position: relative;
}

input[name="last_name"],
input[name="first_name"]{
    width: 150px !important;
    margin-right: 10px;
}

.swpm-validate-form table td:first-child{
    min-width: 200px;
}
table input{
    border-radius: 5px;
}

input[type="submit"]{
    width: 400px;
    background: #333;
    color: #fff;
    font-weight: bold;
    border: 1px #333 solid;
    border-radius: 50px;
    transition: all 0.2s;
}
input[type="submit"]:hover{
    color: #fff;
    background: #72C1D0;
    border: 1px #72C1D0 solid;
}


.swpm-join-us-link a.swpm-login-form-register-link{
    width: 100%;
    height: 50px;
    background: #fff;
    color: #333;
    font-weight: bold;
    border: 1px #333 solid;
    border-radius: 25px;
    transition: all 0.2s;
    display: block;
    line-height: 50px;
    text-align: center;
}
.swpm-join-us-link a.swpm-login-form-register-link:hover{
    color: #fff;
    background: #72C1D0;
    border: 1px #72C1D0 solid;
}




@media screen and (max-width: 599px){
    .swpm-validate-form table td{
        display: block;
        width: 100%;
    }
    .formError{
        left: initial !important;
        right: 10px !important;
    }
}

.swpm-registration-membership-level-row{
    display: none !important;
}



.swpm-login-form-inner{
    max-width: 500px;
    width: 100%;
    margin: 0 auto;
}
.swpm-login-form-inner input[name="swpm_user_name"],
.swpm-login-form-inner input[name="swpm_password"]{
    width: 100%;
    border-radius: 5px;
}

.swpm-login-form-inner input[type="submit"]{
    width: 100%;
}
.swpm-login-submit{
    margin: 50px 0 20px;
}
.swpm-post-not-logged-in-msg{
    padding-top: 100px;
}
.swpm-forgot-pass-link{
    font-weight: bold;
    text-align: center;
}
.swpm-login-action-msg div{
    color: #ee7800;
    margin-bottom: 10px;
}


/*ページトップ*/
.p-fixBtnWrap{
    right: -20px;
    bottom: 0;
}
.c-fixBtn{
    width: 160px;
    height: 160px;
    border: none;
    box-shadow: none;
    opacity: 1;
    background: none;
}
#pagetop{
    border-radius: 0;
}
.c-fixBtn i{
    display: none;
}

@media screen and (max-width: 599px){
    .p-fixBtnWrap{
        right: -10px;
    }
    .c-fixBtn{
        width: 120px;
        height: 120px;
    }
}

.hov-bg-main:hover{
    background-color: initial !important;
}




/*固定ページ_トップ*/

.news_pickup{
    
}

.news_pickup .c-postThumb{
    overflow: visible;
}

.news_pickup .c-postThumb__figure{
    position: relative;
}

.news_pickup .p-postList__cat{
    position: absolute;
    display: block;
    width: 140px;
    height: 30px;
    right: -15px;
    top: -10px;
    border-radius: 20px;
    border: 2px #fff solid;
    line-height: 1.3em;
}

.news_pickup .p-postList__title{
    width: 100%;
}

.news_pickup [data-cat-id="pick_up"]{
    display: none;
}

.p-breadcrumb{
    display: none;
}
.page:not(.home) .l-content{
    padding-top: 0;
    position: relative;
    top: -105px;
}

.page_top{
    position: relative;
}
.page_top:after{
    content: "";
    position: absolute;
    bottom: 0;
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/header_wave.svg");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: 100vw !important;
    height: 50px;
}
.page_top h2{
    color: #fff !important;
}
.page_top h2:before{
    display: none;
}

.page .l-topTitleArea{
    display: none;
}
.project_area h3{
    position: relative;
    padding-left: 35px;
}
.project_area h3:before{
    content: "";
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/map_pin.svg");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    width: 35px;
    height: 35px;
    display: inline-block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.project_area p{
    padding: 10px 0;
    margin: 0;
}

.project_area td{
    padding: 2px 0 !important;
}

.project_area table,
.project_area td,
.project_area table td:last-child{
    border: none !important;
}

.project_area .wp-block-table .has-fixed-layout td{
    word-break: normal;
}



.ideal_candidate_profile{
    border: #0B41A0 2px solid;
    padding: 30px;
    background: #fff;
    position: absolute;
    top: -220px;
    z-index: 10;
    width: 100%;
    left: 50%;
    transform: translateX(-50%);
}
.page-id-235 .swell-block-fullWide__SVG{
    z-index: -1;
}
.ideal_candidate_profile:before {
  content: "";
  position: absolute;
  bottom: -27px;
  left: 50%;
  margin-left: -17px;
  border: 14px solid transparent;
  border-top: 14px solid #FFF;
  z-index: 2;
}
.ideal_candidate_profile:after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 50%;
  margin-left: -17px;
  border: 14px solid transparent;
  border-top: 14px solid #0B41A0;
  z-index: 1;
}

.ideal_candidate_profile h4{
    text-align: center;
}
.ideal_candidate_profile p{
    padding: 15px;
    text-align: center;
    background: #72C1D0;
    border-radius: 10px;
    color: #fff;
    font-size: 18px;
}

@media screen and (min-width: 960px){
.ideal_candidate_profile_space{
        height: 150px;
    }
}
@media screen and (max-width: 959px){
    .ideal_candidate_profile_space{
        height: 220px;
    }
}
@media screen and (max-width: 599px){
    .ideal_candidate_profile_space{
        height: 300px;
    }
}


.innovation_structure .swell-block-column{
    padding: 20px;
    border: 2px solid #ccc;
    border-radius: 10px;
}

table{
    border-top: 1px solid #ccc !important;
}

@media screen and (max-width: 599px){
    .single table td{
        display: block;
    }
}

table th{
    width: 100% !important;

}
table td{
    padding: 15px 20px !important;
    border-left: 1px solid #ccc !important;
    border-bottom: 1px solid #ccc !important;
}
table td:first-child{
    min-width: 200px;
}

table td:last-child{
    width: 100%;
    border-right: 1px solid #ccc !important;
}
.post_content tr{
    margin-bottom: 0;
}

@media screen and (min-width: 960px){
    .academia_industry_collaboration .c-scrollHint{
        display: none;
    }
}

.is-style-simple table td{
    border-left: none !important;
    border-right: none !important;
    border-bottom: 1px solid #ccc !important;
    border-top: none;
}
.is-style-simple table td:last-child{
    width: 100%;
    border-right: none !important;
}
.is-style-simple table td:first-child{
    font-weight: bold;
    color: #0B41A0;
}
@media screen and (max-width: 599px){
    .is-style-simple table td:first-child{
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }
}


.section_004_table td:first-child{
    background: #F0FAFC;
}
.section_004_table td{
    border-right: 1px solid #0B41A0 !important;
}
.section_004_table td .inner_list li{
    margin: 0;
}
.section_004_table td .inner_list li:before{
    content:"- ";
}
@media screen and (max-width: 959px){
    .section_004_table td{
        display: block;
        width: 100%;
    }
}

.swell-block-fullWide__SVG.-bg.-bottom,
.swell-block-fullWide__SVG.-bg.-top{
    z-index: -1;
}

/*Project - section_no*/

.h2_section{
    position: relative;
    margin-bottom: 50px !important;
}
.h2_section:after{
    content: "";
    position: absolute;
    left: -85px;
    top: -110px;
    width: 250px;
    height: 150px;
    background-repeat: no-repeat;
    background-size: 100%;
    z-index: -1;
}
.h2_section001:after{
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/no_1.svg");
}
.h2_section002:after{
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/no_2.svg");
}
.h2_section003:after{
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/no_3.svg");
}
.h2_section004:after{
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/no_4.svg");
}
.h2_section005:after{
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/no_5.svg");
}
.h2_section006:after{
    background: url("https://iacow-education.jp/wp-content/uploads/2024/04/no_6.svg");
}
.h2_section007:after{
    background: url("http://iacow-education.jp/check_202504/wp-content/uploads/2025/08/no_7.svg");
}
.h2_section008:after{
    background: url("http://iacow-education.jp/check_202504/wp-content/uploads/2025/09/no_8.svg");
}


@media screen and (max-width: 959px){
    .h2_section:after{
        width: 180px;
        height: 120px;
        left: -10px;
        top: -85px;
    }
}


.project_contents_button .c-bannerLink::before,
.project_contents_button .c-bannerLink__text{
    width: 75%;
    left: initial;
    right: 0;
}
.project_contents_button .c-bannerLink::before{
    background-color: #72c1d0;
    border-radius: 0 15px 15px 0;
}

.project_contents_button .swell-block-bannerLink .c-bannerLink__img{
    width: 25%;
    object-fit: contain;
}
.project_contents_button .c-bannerLink__text{
    padding: 20px;
}

.project_contents_button .c-bannerLink__title{
    font-size: 20px;
}

.project_contents_button .c-bannerLink__description{
    font-size: 15px;
}

.project_contents_button .c-bannerLink:hover{
    background-color: #ee7800 !important;
}

.project_contents_button a.c-bannerLink:hover .c-bannerLink__figure {
  opacity: 1;
}
.project_contents_button a.c-bannerLink:hover .c-bannerLink__img {
  -webkit-transform:scale(1);
  transform:scale(1);
}


@media (max-width: 599px){
    .project_contents_button .c-bannerLink::before,
    .project_contents_button .c-bannerLink__text{
        width: 80%;
    }
    .project_contents_button .swell-block-bannerLink .c-bannerLink__img{
        width: 22%;
    }
    .project_contents_button .c-bannerLink__title{
        font-size: 10px;
    }
    .project_contents_button .c-bannerLink__title{
        font-size: 18px;
    }

    .project_contents_button .c-bannerLink__description{
        font-size: 12px;
    }
}

.section_001_table tr{
    display: inherit;
    width: 100%;
}
.section_001_table td{
    display: table-cell;
}
.section_001_table th{
    padding: 20px;
}

.section_001_table td:nth-child(2),
.section_001_table th:nth-child(2){
    width: 65% !important;
}
.section_001_table td:last-child,
.section_001_table th:last-child{
    width: 30% !important;
}
.section_001_table td:first-child,
.section_001_table th:first-child{
    width: 5% !important;
}



/*お問い合わせContact*/
.map{
    width: 100%;
    height: 300px;
}
.map iframe{
    width: 100%;
    height: 100%;
}



/*投稿ページ*/
.c-categoryList:before{
    display: none;
}
.c-categoryList__link{
    border-radius: 10px;
    padding: 5px 10px;
}
.c-postTimes__posted:before{
    display: none;
}
.p-articleMetas{
    margin-bottom: 10px;
}

.c-postTitle{
    padding-bottom: 50px;
    border-bottom: 1px solid #0B41A0;
}

.p-pnLinks{
    border-top: 1px solid #0B41A0;
    border-bottom: 1px solid #0B41A0;
    margin-top: 180px;
}
.p-pnLinks__item{
    width: 40%;
}
.p-pnLinks__item .p-pnLinks__link{
    position: relative;
}
.p-pnLinks__item.-prev .p-pnLinks__link{
    padding: 15px 0 15px 40px;
}
.p-pnLinks__item.-next .p-pnLinks__link{
    padding: 15px 40px 15px 0;
}

.p-pnLinks__item:before{
    display: none;
}

.p-pnLinks__item.-prev a:before,
.p-pnLinks__item.-next a:before{
    position: absolute;
    content: "";
    background-repeat: no-repeat;
    background-size: 80% 80%;
    border: 1px solid #0B41A0;
    transform: initial;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    top: 50%;
    transform: translateY(-50%);
    padding: 5px;
}

.p-pnLinks__item.-prev a:before{
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/prev.svg");
    left: 0;
}

.p-pnLinks__item.-next a:before{
    background: url("https://iacow-education.jp/wp-content/uploads/2024/01/next.svg");
    right: 0;
}
.prev_next_back{
    width: 20%;
    min-height: 50px;
}
.prev_next_back a{
    position: relative;
    width: 100%;
    text-align: center;
    color: #253950;
    display: block;
    width: 100%;
    height: 100%;
}
.prev_next_back a span{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.prev_next_back a:hover{
    color: #72C1D0;
}
.p-blogCard{
    margin: 0;
    max-width: initial;
    width: 100%;
}

.p-blogCard .p-blogCard__title:after{
    content: "\f35d";
    padding-left: 10px;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
}

.p-blogCard[data-onclick="clickLink"]:hover .p-blogCard__title{
    color: #72C1D0;
}




/*bogo言語切り替え*/
.widget_bogo_language_switcher .w-header__title{
    display: none;
}
.bogo-language-switcher{
    border: 2px #0B41A0 solid;
    border-radius: 20px;
    background: #fff;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100px;
    height: 30px;
}

.bogo-language-name{
    display: block;
    position: relative;
}
.bogo-language-switcher li{
    height: 100%;
    width: 50%;
    padding: 2px !important;
}
.bogo-language-switcher li span.bogo-language-name,
.bogo-language-switcher li span.bogo-language-name a{
    color: #969696;
    font-weight: bold;
    font-size: 14px;
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    line-height: 22px;
}

@media screen and (max-width: 599px){
    .bogo-language-switcher{
        width: 70px;
        height: 25px;
        margin-right: 10px;
    }
    .bogo-language-switcher li{
        padding: 1px !important;
    }
    .bogo-language-switcher li span.bogo-language-name,
    .bogo-language-switcher li span.bogo-language-name a{
        font-size: 12px;
        line-height: 14px;
        padding: 1px !important;
    }
}


.bogo-language-switcher li span.bogo-language-name a{
    color: #0B41A0;
}

.bogo-language-switcher li span.bogo-language-name a.current{
    background: #0B41A0;
    color: #fff;
    border-radius: 20px;
}

.bogoflags{
    display: none;
}
@media screen and (min-width: 960px){
    .sp_bogo{
        display: none;
    }
}


/*News - アーカイブページ*/

.archive .l-content{
    top: -95px;
    padding-top: 0;
}

.category_title small{
    font-size: 16px;
}



/*会員限定ページ_未ログイン - Not login*/

@media screen and (min-width: 600px){
    .swpm-post-not-logged-in-msg{
        text-align: center;
    }
}

.not_logged_in_msg{
    padding-top: 50px;
    text-align: center;
}
.not_logged_in_msg a{
    max-width: 500px;
    width: 100%;
    margin: 20px auto;
    padding: 10px;
    color: #253950;
    background: #fff;
    border: 2px #253950 solid;
    border-radius: 50px;
    font-weight: bold;
    display: block;
}
@media screen and (max-width: 599px){
    .not_logged_in_msg a{
        width: 100%;
        
    }
}

.not_logged_in_msg a.swpm-login-link{
    color: #fff;
    background: #253950;
}
.not_logged_in_msg a:hover{
    color: #fff;
    background: #72C1D0;
    border: 2px #72C1D0 solid;
}




/*新規会員登録*/

.swpm-registration-submit-section{
    margin-top: 50px;
}

.swpm-profile-update-success{
    color: #72C1D0;
}


.single-post .page_top{
    display: none;
}


.language_button{
    margin: 20px 0;
    text-align: center;
}
.language_button a{
    padding: 10px;
    color: #fff;
    background: #253950;
    border: 2px #253950 solid;
    border-radius: 50px;
    font-weight: bold;
}
.language_button a:hover{
    background: #72C1D0;
    border: 2px #72C1D0 solid;
}
.member_contents{
    margin: 20px 0;
}
.member_contents a{
    margin: 0 1% 2% 1%;
    text-align: center;
    padding: 20px;
    color: #253950;
    background: #fff;
    font-weight: bold;
    position: relative;
    font-family: 'Montserrat', sans-serif;
    font-size: 25px;
    border: 2px #ddd solid;
    text-align: center;
    border-radius: 10px;
    display: block;
}
.member_contents a:after{
    content: "▶︎";
    color: #ddd;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: inline;
    right: 20px;
}
.member_contents a:hover:after{
    color: #fff;
}
@media screen and (max-width: 959px){
    .member_contents a{
        margin: 1%;
        width: 100%;
    }
}



.member_contents a:hover{
    color: #fff;
    background: #72C1D0;
}

.swpm-logged-logout-link{
    text-align: center;
}

.swpm-logged-logout-link a.swpm-login-link{
    padding: 10px;
    color: #253950;
    background: #fff;
    border: 2px #253950 solid;
    border-radius: 50px;
    font-weight: bold;
    display: block;
    max-width: 500px;
    width: 100%;
    margin: auto;
}
.swpm-logged-logout-link a.swpm-login-link:after{
    content: "　≫"
}
.swpm-logged-logout-link a.swpm-login-link:hover{
    color: #fff;
    background: #72C1D0;
    border: 2px #72C1D0 solid;
}

.swpm-form-builder fieldset{
    border:  none;
    background-color: #fff;
}

.swpm-form-builder .swpm-section li.swpm-item{
    display: flex;
    flex-wrap: wrap;
    justify-content: right;
}
.swpm-form-builder .swpm-section li.swpm-item > *{
    margin: 10px 1%;
}

.swpm-form-builder .swpm-section li.swpm-item > .swpm-form-builder-error{
    margin: 0 1% 10px;
}

.swpm-form-builder .swpm-section li.swpm-item input{
    padding: 5px 10px;
}

.swpm-form-builder .swpm-section li.swpm-item > label{
    width: 38%;
}
.swpm-form-builder .swpm-section li.swpm-item > *:not(label),
.swpm-form-builder .swpm-section li.swpm-item > .swpm-form-builder-error{
    width: 58%;
}

.swpm-form-builder .swpm-section li.swpm-item-password > div{
    width: 28%;
}
@media screen and (max-width: 959px){
    .swpm-form-builder .swpm-section li.swpm-item > *{
        width: 100% !important;
        margin: 10px;
    }
}


.swpm-legend,#item-swpm-12,#item-swpm-18,#item-swpm-20{
    display: none;
}



/*カスタム投稿 - アーカイブ*/

.custom_archive_lists{
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
}
.custom_archive_list{
    width: 31%;
    margin: 1%;
}
@media screen and (max-width: 959px){
    .custom_archive_list{
        width: 48%;
    }
}
@media screen and (max-width: 599px){
    .custom_archive_list{
        width: 100%;
        margin: 20px 0;
    }
}
.custom_archive_list a{
    position: relative;
    border-radius: 10px;
    background: #fff;
    display: block;
}
.custom_archive_list a h4{
    position: relative;
}

.custom_archive_list a h4:before{
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 100%;
  top: 0;
  left: 0;
  background: #D0F2F7;
  transition: 0.2s;
  mix-blend-mode: multiply;
}
.custom_archive_list a:hover h4:before{
  width: 100%;
}

.custom_archive_list .content_img img{
    border-radius: 10px;
}
.custom_archive_list .content_days{
    color: #aaa;
    font-size: 14px;
}

.custom_archive_text{
    position: relative;
}

.custom_archive_category{
    display: block;
    margin-bottom: 10px;
}


.custom_archive_category .p-postList__cat{
    font-size: 10px;
    width: 100px;
    margin: 0;
}


/*Movie*/
.wp-block-embed__wrapper{
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    height: 0;
}
.wp-block-embed-vimeo iframe{
    position: absolute;
    width: 100%;
    height: 100%;
}



.p-postList__meta:has(.p-postList__times){
    width: 100%;
    display: block;
    color: #aaa;
}

.p-postList__thumb,
.c-postThumb__figure img{
    border-radius: 10px;
}

.single .swell-block-fullWide.page_top{
    display: none;
}

.swpm-span p{
    padding: 0;
}

.about_student_network{
    border-radius: 10px;
}

h3.h3_sideline{
    padding-top: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
h3.h3_sideline::after{
    content: "";
    flex-grow: 1;
    height: 2px;
    background-color: #0B41A0;
    padding-left: 15px;
    margin-left: 15px;
}

.joinus_button{
    max-width: 500px;
    width: 100%;
}
.joinus_button a{
    width: 100%;
}


.dummy_img{
    position: relative;
}



.dummy_img::before,
.dummy_img::after{
    position: absolute;
    display: block;
}

.dummy_img::before{
    content: "";
    background: #000;
    width: 100%;
    height: 100%;
    opacity: 0.5;
}
.dummy_img::after{
    content: "差し替え予定";
    font-weight: bold;
    font-size: 30px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    visibility: visible;
    line-height: 30px;
}