/*
Theme Name: amos
*/

    /*共通css*/

    h3:not(#menu h3, #search_list h3),
    p,
    .date {
        color: #333389;
    }

    h3 {
        font-size: 18px;
        letter-spacing: 2px;
    }

    p {
        font-size: 14px;
        font-family: 'Noto Sans JP', sans-serif;
        letter-spacing: 1px;
    }

    li {
        font-size: 14px;
        font-family: 'Noto Sans JP', sans-serif;
        letter-spacing: 1px;
    }

    .content h3 {
        padding-bottom: 10px;
    }

    .news_content h3 {
        font-weight: bold;
    }

    .more {
        font-family: 'Noto Sans JP', sans-serif;
    }

    .news_content span {
        font-family: 'Noto Sans JP', sans-serif;
        color: #333389;
    }

    .event_list span {
        font-family: 'Noto Sans JP', sans-serif;
    }

    .event_list a {
        font-family: 'Noto Sans JP', sans-serif;
    }

    .hana {
        width: 15px;
        margin-right: 3px;
    }

    .faq_list h3 img {
        margin-right: 10px;
    }

    #menu li a {
        font-family: 'Noto Sans JP', sans-serif;
    }

    .menu_click {
        letter-spacing: 1.5px;
    }

    .contents h2 {
        font-weight: bold;
        letter-spacing: 2px;
    }

    #column h3,
    #download h3 {
        font-family: 'Noto Sans JP', sans-serif;
    }

    .date {
        font-family: 'Noto Sans JP', sans-serif;
    }

    #single_content h2 {
        font-size: 27px;
        color: #333389;
        margin-bottom: 30px;
    }

    .container {
        display: flex;
        flex-direction: column;
        min-height: 100vh;
    }

    main {
        margin-bottom: 50px;
    }


    @media screen and (min-width:980px) {

        .sp {
            display: none;
        }

        article {
            padding: 50px 0;
        }

        header {
            width: 100%;
			background-color:#333389;
            box-shadow: 0px 10px 10px -5px rgba(0, 0, 0, 0.1);
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            align-items: center;
            padding: 20px 0;
        }

        header img {
            width: 200px;
            padding: 0 10px;
        }

        /*shop*/
        .shop {
            width: 300px;
        }

        /*shop*/

        /*faq*/
        #faq {
            padding-top: 100px;
            width: 90%;
            margin: 0 auto;
        }

        #faq details {
            position: relative;
            width: 100%;
        }

        #faq summary {
            position: absolute;
            right: 0;
            bottom: 0;
        }

        #faq details p {
            width: 95%;
            margin: 0 auto;
            padding: 20px 0 10px;
        }

        #faq summary::marker {
            font-size: 20px;
            color: #333389;
        }

        .faq_list {
            border-top: 1px solid #333389;
            border-bottom: 1px solid #333389;
            margin-bottom: 10px;
        }

        .faq_list h3 {
            padding: 10px 0;
        }

        /*faq*/

        /*search*/
        #search {
            width: 90%;
            margin: 100px auto 50px;
            display: flex;
            justify-content: space-between;
            border-bottom: 1px solid #333389;
        }

        #search ul {
            width: 80%;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
        }

        #search a {
            text-decoration: none;
            margin-bottom: 10px;
            border: 1px solid #333389;
            border-radius: 20px;
            padding-right: 3px;
            padding-bottom: 2px;
        }

        .search_tag {
            padding: 5px 10px;
            background-color: #333389;
            border-radius: 20px;
            color: white;
        }

        .search_contents {
            width: 90%;
            margin: 0 auto;
        }

        .search_contents a {
            font-family: 'Noto Sans JP', sans-serif;
            text-decoration: none;
            color: white;
            margin: 0 0 0 auto;
        }

        .search_contents h2,
        #faq h2 {
            color: #333389;
            font-size: 24px;
            padding-bottom: 10px;
        }

        #search_list {
            padding: 30px 0;
            color: #333389;
        }

        #search_list span {
            font-family: 'Noto Sans JP', sans-serif;
            border: 1px solid #333389;
            padding: 2px 10px;
            font-size: 14px;
            border-radius: 20px;
        }

        #search_list h2 a {
            color: #333389;
        }

        .remarks,
        .remarks a {
            color: #333389;
        }

        .remarks,
        .remarks a,
        #search_list h2 a {
            pointer-events: none;
        }

        #search_list .remarks,
        #faq .remarks {
            padding-bottom: 30px;
        }


        #search_list h3 {
            padding-left: 20px;
            font-size: 16px;
        }

        .search_list {
            width: 100%;
            padding: 10px 10px;
            display: flex;
            align-items: center;
            background-color: #333389;
        }

        .search_list:nth-child(even) {
            background-color: white;
            color: #333389;
        }

        .search_list:nth-child(even) a {
            color: #333389;
        }

        /*searchend*/



        /*news*/
        #news #list {
            padding: 0;
            grid-template-columns: 1fr 1fr 1fr;
        }

        /*newsend*/
        /*login*/
        .swpm-login-widget-form {
            padding-top: 50px;
            width: 250px;
            margin: 0 auto;
            padding-bottom: 100px;
        }

        /*loginend*/
        /*column_layout*/
        #column_layout {
            display: flex;
            align-items: flex-start;
        }

        /*column_layoutend*/

        /*menu*/

        #menu {
            width: 200px;
            height: auto;
            background-color: #333389;
            padding: 20px 25px 50px;
            color: white;
        }

        #menu h3 {
            margin-bottom: 25px;
            padding: 50px 0 10px;
            border-bottom: 1px solid white;
        }

        #menu a {
            text-decoration: none;
            color: white;
        }

        #menu li {
            padding-bottom: 10px;
        }

        #menu ul li:last-child {
            padding-bottom: 30px;
        }

        #menu details {
            position: relative;
            width: 200px;
            border-bottom: 1px solid white;
        }

        #menu summary {
            position: absolute;
            right: 0;
            bottom: 0;
        }

        #menu #sns {
            display: none;
        }

        .on::before {
            content: "more";
        }

        .close::before {
            content: "close";
        }


        /*menuend*/

        /*single_content*/
        #single_content {
            width: 70%;
            padding-top: 50px;
            margin: 0 auto;
        }

        /*single_content*/

        /*news_content*/

        .news_content {
            width: 95%;
            text-align: left;
        }

        .news_content img {
            width: 100%;
            height: auto;
        }

        .more {
            color: #e9878c;
            text-decoration: none;
        }

        /*news_contentend*/

        /*column*/
        #column {
            width: 80%;
            margin: 0 auto;
        }

        /*column*/

        /*banner*/
        .banner {
            width: 90%;
            height: auto;
            margin: 50px auto 0;
        }

        .banner img {
            width: 100%;
            height: auto;
        }

        /*banner*/

        /*download*/
        #download {
            width: 80%;
            margin: 0 auto;
        }

        /*downloadend*/

        /*contents*/
        .contents {
            width: 90%;
            margin: 0 auto;
        }

        .contents h2 {
            color: #333389;
            font-size: 24px;
            padding-bottom: 10px;
        }

        #list {
            width: 100%;
            padding: 50px 0;
            display: grid;
            text-align: center;
            grid-template-columns: 1fr 1fr 1fr 1fr;
        }

        .content {
            position: relative;
            width: 90%;
            height: auto;
            padding: 2.5%;
            margin-bottom: 20px;
            box-shadow: 0 3px 6px rgb(0 0 0 / 16%), 0 3px 6px rgb(0 0 0 / 23%);
            border-radius: 5px;
        }

        .content .more {
            display: block;
            margin-top: 20px;
        }

        .content img {
            width: 90%;
            height: auto;
            margin: 0 auto;
        }

        .content a:not(.more) {
            position: absolute;
            top: 0;
            display: block;
            width: 100%;
            height: 100%;
            font-size: 0;
        }

        .date {
            display: block;
            width: 100px;
            padding: 2.5px 10px;
            margin: 20px auto;
            border: 1px #333389 solid;
            border-radius: 15px;
        }

        /*contentsend*/

        /*event*/
        .event {
            width: 90%;
            margin: 0 auto;
        }

        .event h2 {
            color: #333389;
            font-size: 24px;
            padding: 50px 0 10px;
        }

        .event .remarks {
            padding-bottom: 50px;
        }

        .event h2,
        .event .remarks {
            text-align: center;
        }


        #event_content {
            width: 100%;
            margin: 0 auto;
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap;
        }

        .event_list {
            width: 47.5%;
            height: auto;
            margin-bottom: 5%;
            border-top: 1px solid #333389;
            border-left: 1px solid #333389;
            border-right: 1px solid #333389;
        }

        .event_list div {
            width: 90%;
            padding: 5%;
        }

        .event_list span {
            display: block;
        }

        .event_list h3 {
            font-weight: bold;
        }

        .event_list h3,
        .event_list span {
            padding-bottom: 5px;
        }

        .event_list a {
            display: block;
            width: 100%;
            padding: 10px 0;
            background-color: #333389;
            text-align: center;
            color: white;
            text-decoration: none;
        }

        .venue p {
            font-size: 16px;
            font-weight: bold;
        }

        #event_flex_content {
            width: 100%;
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap;
        }

        #event_flex_content img {
            width: 47.5%;
            height: auto;
            padding-bottom: 5%;
        }

        .event_img {
            width: 100%;
            height: auto;
        }

        /*eventend*/

        /*footer*/
        footer {
            margin-top: auto;
            width: 100%;
            background-color: #333389;
        }

        #sns {
            padding-top: 150px;
            display: flex;
            width: 200px;
            margin: 0 auto;
            justify-content: space-around;
        }

        #copyright {
            text-align: center;
            color: white;
            padding: 20px 0;
        }

        /*footerend*/
    }





    @media screen and (max-width:980px) {

        .pc {
            display: none;
        }

        article {
            padding: 50px 0;
        }

        header {
            width: 100%;
			background-color:#333389;
            box-shadow: 0px 10px 10px -5px rgba(0, 0, 0, 0.1);
            padding: 15px 0;
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
        }

        header img:not(.sp_shop, #sns img, .hana) {
            width: 150px;
            padding: 0 10px;
        }

        header #sns {
            padding-top: 30px;
        }

        /*ハンバーガーメニュー*/

        header label {
            width: 30px;
            height: 70px;
            position: absolute;
            top: 20px;
            right: 20px;
            z-index: 1000;
        }

        header .hamburger {
            position: absolute;
            top: 0;
            right: 0;
            width: 80px;
            height: 80px;
            background-color: #333389;
            z-index: 100;
        }

        header .menu {
            height: 2px;
            background-color: white;
            position: absolute;
            right: 20px;
            transition: .3s;
            z-index: 100;
        }

        header .span1 {
            width: 30px;
            top: 30px;
        }

        header .span2 {
            width: 30px;
            top: 40px;
        }

        header .span3 {
            width: 30px;
            top: 50px;
        }

        #check:checked~.hamburger .span2 {
            display: none;
        }

        #check:checked~.hamburger .span1 {
            width: 27px;
            transform: rotate(45deg);
            top: 40px;
            right: 12px;
        }

        #check:checked~.hamburger .span3 {
            width: 27px;
            transform: rotate(-45deg);
            top: 40px;
            right: 12px;
        }

        #check:checked~#hamburger {
            display: inline-block;
            right: 0;
        }

        #check {
            display: none;
        }

        header #hamburger {
            display: none;
            width: 300px;
            height: auto;
            background-color: #333389;
            margin: 0;
            padding: 5px 0 0 20px;
            list-style: none;
            position: absolute;
            top: 0;
            z-index: 10;
            animation: SlideIn 1s;
        }

        /*ハンバーガーメニューアニメーションの設定*/
        @keyframes SlideIn {
            0% {
                opacity: 0;
                transform: translateX(20vw);
            }

            100% {
                opacity: 1;
                transform: translateX(0);
            }
        }

        header #hamburger li {
            margin-top: 20px;
            font-size: 12px;
            line-height: 18px;
        }

        header #hamburger a {
            font-size: 14px;
            margin-top: 10px;
            color: white;
            text-decoration: none;
        }

        /*faq*/
        #faq {
            padding-top: 100px;
            width: 90%;
            margin: 0 auto;
        }

        #faq details {
            position: relative;
            width: 100%;
        }

        #faq summary {
            position: absolute;
            right: 0;
            bottom: 0;
        }

        #faq details p {
            width: 95%;
            margin: 0 auto;
            padding: 20px 0 10px;
        }

        #faq summary::marker {
            font-size: 20px;
            color: #333389;
        }

        .faq_list {
            border-top: 1px solid #333389;
            border-bottom: 1px solid #333389;
            margin-bottom: 10px;
        }

        .faq_list h3 {
            padding: 10px 0;
        }

        /*faq*/

        /*search*/
        #search {
            padding: 20px 0;
            padding-top: 50px;
            width: 95%;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            border-bottom: 1px solid #333389;
        }

        #search h2 {
            width: 100%;

            padding-bottom: 30px;
        }


        #search ul {
            width: 100%;
            display: flex;
            flex-wrap: wrap;
        }

        #search a {
            text-decoration: none;
            border: 1px solid #333389;
            border-radius: 20px;
            padding-right: 3px;
            padding-bottom: 2px;
            margin-bottom: 10px;
            margin-right: 3px;
        }

        .search_tag {
            padding: 5px 10px;
            background: #333389;
            border-radius: 20px;
            color: white;
        }

        .search_contents {
            width: 90%;
            margin: 0 auto;
            text-align: center;
        }

        .search_contents a {
            font-family: 'Noto Sans JP', sans-serif;
            display: block;
            text-decoration: none;
            color: white;
            text-align: right;
        }

        .search_contents h2,
        #faq h2 {
            color: #333389;
            font-size: 24px;
            padding-bottom: 10px;
        }

        #search_list {
            padding: 30px 0;
            color: #333389;
        }

        #search_list span {
            font-family: 'Noto Sans JP', sans-serif;
            border: 1px solid #333389;
            padding: 2px 10px;
            font-size: 14px;
            border-radius: 20px;
        }

        #search_list h2 a {
            color: #333389;
            display: block;
            text-align: center;
        }

        .remarks,
        .remarks a {
            color: #333389;
        }

        .remarks a {
            display: block;
        }

        .tag_name {
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
        }

        .remarks,
        .remarks a,
        #search_list h2 a {
            pointer-events: none;
        }

        #search_list .remarks,
        #faq .remarks {
            padding-bottom: 30px;
        }


        #search_list h3 {
            text-align: left;
            padding: 20px 0;
            font-size: 16px;
        }

        .search_list {
            width: 95%;
            padding: 2.5%;
            background-color: #333389;
        }

        .search_list:nth-child(even) {
            background-color: white;
            color: #333389;
        }

        .search_list:nth-child(even) a {
            color: #333389;
        }

        /*searchend*/



        /*news*/
        #news {
            text-align: center;
        }

        /*newsend*/
        /*login*/
        .swpm-login-widget-form {
            padding-top: 50px;
            width: 250px;
            margin: 0 auto;
        }

        /*loginend*/

        /*menu*/

        #menu {
            width: 230px;
            height: auto;
            background-color: #333389;
            padding: 20px 25px 50px;
            color: white;
        }

        #menu h3 {
            margin-bottom: 25px;
            padding: 50px 0 10px;
            border-bottom: 1px solid white;
        }

        #menu a {
            text-decoration: none;
            color: white;
        }

        #menu li {
            padding-bottom: 10px;
        }

        #menu ul li:last-child {
            padding-bottom: 30px;
        }

        #menu details {
            position: relative;
            width: 230px;
            border-bottom: 1px solid white;
        }

        #menu summary {
            position: absolute;
            right: 0;
            bottom: 0;
        }

        .on::before {
            content: "more";
        }

        .close::before {
            content: "close";
        }

        .shop {
            display: none;
        }

        .sp_shop {
            width: 230px;
            height: auto;
            margin: 40px 0;
        }

        /*menuend*/

        /*single_content*/
        #single_content {
            width: 70%;
            padding-top: 50px;
            margin: 0 auto;
        }

        /*single_content*/

        /*news_content*/

        .news_content {
            width: 100%;
            padding-bottom: 20px;
            text-align: left;
        }

        .news_content img {
            width: 100%;
            height: auto;
        }



        .more {
            color: #e9878c;
            text-decoration: none;
        }

        /*news_contentend*/

        /*column*/
        #column {
            width: 95%;
            margin: 0 auto;
        }

        /*column*/

        /*banner*/
        .banner {
            width: 95%;
            height: auto;
            margin: 50px auto 0;
        }

        .banner img {
            width: 100%;
            height: auto;
        }

        /*banner*/

        /*download*/
        #download {
            width: 100%;
        }

        /*downloadend*/

        /*contents*/
        .contents {
            width: 95%;
            margin: 0 auto;
            text-align: center;
        }

        .contents h2 {
            color: #333389;
            font-size: 24px;
            padding-bottom: 10px;
        }

        #news #list {
            width: 100%;
            padding: 20px 0;
        }

        #list:not(#news #list) {
            width: 100%;
            padding: 20px 0;
            display: grid;
            grid-template-columns: 1fr 1fr;
        }

        .content {
            position: relative;
            width: 90%;
            height: auto;
            padding: 2.5%;
            margin: 2.5%;
            box-shadow: 0 3px 6px rgb(0 0 0 / 16%), 0 3px 6px rgb(0 0 0 / 23%);
            border-radius: 5px;
        }

        .content .more {
            display: block;
            margin-top: 20px;
        }

        .content img {
            width: 100%;
            height: auto;
        }

        .content a:not(.more) {
            position: absolute;
            top: 0;
            display: block;
            width: 100%;
            height: 100%;
            font-size: 0;
        }

        .date {
            display: block;
            width: 100px;
            padding: 2.5px 10px;
            margin: 20px auto;
            border: 1px #333389 solid;
            border-radius: 15px;
        }

        /*contentsend*/

        /*event*/
        .event {
            width: 90%;
            margin: 0 auto;
        }

        .event h2 {
            color: #333389;
            font-size: 24px;
            padding: 50px 0 10px;
        }

        .event .remarks {
            padding-bottom: 50px;
        }

        .event h2,
        .event .remarks {
            text-align: center;
        }


        #event_content {
            width: 100%;
            margin: 0 auto;
        }

        .event_list {
            width: 100%;
            height: auto;
            margin-bottom: 5%;
            border-top: 1px solid #333389;
            border-left: 1px solid #333389;
            border-right: 1px solid #333389;
        }

        .event_list div {
            width: 90%;
            padding: 5%;
        }

        .event_list span {
            display: block;
        }

        .event_list h3 {
            font-weight: bold;
        }

        .event_list h3,
        .event_list span {
            padding-bottom: 5px;
        }

        .event_list a {
            display: block;
            width: 100%;
            padding: 10px 0;
            background-color: #333389;
            text-align: center;
            color: white;
            text-decoration: none;
        }

        .venue p {
            font-size: 16px;
            font-weight: bold;
        }

        #event_flex_content {
            width: 100%;
        }

        #event_flex_content img {
            width: 100%;
            height: auto;
            padding-bottom: 5%;
        }

        .event_img {
            width: 100%;
            height: auto;
        }

        /*eventend*/

        /*footer*/
        footer {
            margin-top: auto;
            width: 100%;
            background-color: #333389;
        }

        #sns {
            padding-top: 150px;
            display: flex;
            width: 200px;
            margin: 0 auto;
            justify-content: space-around;
        }

        #copyright {
            text-align: center;
            color: white;
            padding: 20px 0;
        }

        /*footerend*/
    }