@charset"utf-8";

@media screen and (max-width: 768px) {

	/*common--------------------------------*/

	.sp {
		display: block;
		width: 100%;
		height: auto;
		padding: 0;
		margin: 0;
	}

	.pc,
    .tab {
		display: none;
	}

	.plain_txt {
		font-size: 4.1vw;
		line-height: 1.5em;
	}
	
	.hover:hover {
		opacity: 1;
	}

	section {
		padding: 10.26vw 0;
	}

    .sec_ttl {
        padding: 0 0 9.66vw 2.42vw;
    }

    .sec_ttl strong {
        font-size: 3.38vw;
        padding-top: .6em;
    }

    .sec_ttl span {
        font-size: 11.59vw;
    }

    .sec_subttl {
        font-size: 4.83vw;
        padding-bottom: 4.83vw;
    }

    .btn_container {
        padding-top: 7.25vw;
    }

    .btn_container a {
        width: 80vw;
        height: 12.08vw;
        font-size: 4.83vw;
    }


    /*----------------------------------------*/

    /*loading*/

    /*----------------------------------------*/

    .loading_logo {
        width: 40vw;
    }



    /*--------------------------------------*/

    /*header*/

    /*--------------------------------------*/

    header .float_nav_wrap {
        height: 9.66vw;
        padding: 0 2.42vw;
        z-index: 9999;
    }

    header .float_nav_list_item +  .float_nav_list_item {
        padding-left: 1em;
    }

    header .float_nav_list_item a {
        font-size: 3.38vw;
    }

    header .header_bottom_wrap {
        width: 100%;
        padding: 2.42vw 2.42vw;
    }

    header .logo_container {
        position: relative;
        z-index: 99999;
    }

    header .logo_obj {
        width: 20.29vw;
    }

    header .logo_container .txt_container {
        padding-left: 1.21vw;
    }

    header .logo_container strong {
        display: block;
        font-size: 3.86vw;
    }

    header .logo_container span {
        font-size: 2.66vw;
    }

    header .logo_container.active strong {
        color: #333;
    }

    header .logo_container.active span {
        color: #333;
    }

    header .nav_list_container {
        display: block;
    }

    header .nav_list_item {
        display: block;
    }

    header .nav_list_item +  .nav_list_item {
        padding-left: 0;
    }

    header .nav_list_item a {
        font-size: 4.35vw;
        font-weight: 500;
    }

    header.fixed .float_nav_wrap {
        height: 8.45vw;
        padding: 0 1.21vw;
    }

    header.fixed .header_bottom_wrap {
        padding: 2.42vw;
    }

    header.fixed .float_nav_list_item +  .float_nav_list_item {
        padding-left: .8em;
    }

    header.fixed .float_nav_list_item a {
        font-size: 3.14vw;
    }

    header.fixed .logo_obj {
        width: 18.6vw;
    }

    header.fixed .logo_container .txt_container {
        padding-left: 1.21vw;
    }

    header.fixed .logo_container strong {
        font-size: 3.38vw;
    }

    header.fixed .logo_container span {
        font-size: 2.42vw;
    }

    header.fixed .nav_list_item +  .nav_list_item {
        padding-left: 0;
    }

    header.fixed .nav_list_item a {
        font-size: 4.35vw;
        font-weight: 500;
    }


	/*menu_trigger--------------------------------*/

	.menu_trigger {
		position: absolute;
		top: 10vw;
		right: 2.33vw;
		width: 11.2vw;
		height: 11.2vw;
		display: block;
		z-index: 99999;
		cursor: pointer;
		transition: .2s ease-out;
	}

	header.fixed .menu_trigger {
		top: 9vw;
    }

	.menu_trigger,
	.menu_trigger span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}

	.menu_trigger span {
		position: absolute;
		left: 1.33vw;
		width: 9.07vw;
		height: 0.8vw;
		background-color: #f7a81b;
        border-radius: .4vw;
		z-index: 4;
	}

	.menu_trigger span:nth-of-type(1) {
		top: 2.13vw;
	}

	.menu_trigger span:nth-of-type(2) {
		top: 5.1vw;
	}

	.menu_trigger span:nth-of-type(3) {
		bottom: 2.13vw;
	}

	.menu_trigger.active span:nth-of-type(1) {
		-webkit-transform: translateY(2.67vw) rotate(-45deg);
		transform: translateY(2.67vw) rotate(-45deg);
	}


	.menu_trigger.active span:nth-of-type(2) {
		left: 50%;
		opacity: 0;
		-webkit-animation: active-menu-bar02 .8s forwards;
		animation: active-menu-bar02 .8s forwards;
	}

	.menu_trigger.active span:nth-of-type(3) {
		-webkit-transform: translateY(-3.57vw) rotate(45deg);
		transform: translateY(-3.57vw) rotate(45deg);
	}

	header .menu_target {
		width: 100%;
        background-color: #fff;
        padding-top: 12vw;
		position: absolute;
		top: 8vw;
		left: 0;
		display: none;
        float: none;
        z-index: 9999;
        box-shadow: 0 1.21vw 1.21vw rgba(0,0,0,.2);
	}

    header nav {
        padding-top: 2.56vw;
    }

    header .nav_list_item {
        display: block;
        padding-left: 0;
        margin: 0 auto;
        width: 90vw;
        height: 15.38vw;
        border-bottom: 2px dotted #17478f;
    } 

    header .nav_list_item:last-child {
        border-bottom: none;
    }

    header .nav_list_item a {
        display: block;
        width: 100%;
        height: 100%;
        color: #333;
        font-size: 4.35vw;
        text-align: center;
        line-height: 15.38vw;
    }

    header .nav_list_item:last-child a {
        display: block;
        width: 90vw;
        height: 10.26vw;
        font-size: 4.1vw;
        line-height: 10.26vw;
        margin: 5.13vw auto 0;
    }

    /*--------------------------------------*/

    /*footer*/

    /*--------------------------------------*/

    /*join_wrap--------------------------------*/

    .join_wrap .recruit_container {
        padding: 5vw 3vw 5vw 4vw;
        display: block;
    }

    .join_wrap .recruit_container .txt_container {
        width: 100%;
    }

    .join_wrap .recruit_container .btn_container {
        width: 100%;
        padding-right: 1vw;
        box-sizing: border-box;
    }

    .join_wrap .recruit_container .btn_container a {
        width: 80vw;
        height: 24.15vw;
    }

    .join_wrap .recruit_container .recruit_ttl {
        font-size: 6.04vw;
        padding-bottom: 4.83vw;
    }

    /*bnr_wrap--------------------------------*/

    .bnr_wrap .rotary_bnr_wrap {
        width: 90vw;
        margin: 0 auto;
        display: block;
    }

    .bnr_wrap .rotary_bnr_wrap .polio_bnr_container {
        width: 100%;
        padding: 0 0 5.12vw;
    }

    .bnr_wrap .rotary_bnr_wrap .bnr_list_container {
        width: 100%;
    } 

    .bnr_wrap .rotary_bnr_wrap .bnr_list_item {
        width: 50%;
        padding: 0 2.56vw 5.12vw 0;
    }

    .bnr_wrap .rotary_bnr_wrap .bnr_list_item:nth-child(even) {
        padding: 0 0 5.12vw 2.56vw;
    }


    /*footer--------------------------------*/

    footer {
		padding: 14.49vw 0 9.66vw;
    }

    .footer_container {
        display: block;
        padding-bottom: 14.49vw;
    }

    .footer_container .left_container,
    .footer_container .right_container {
        width: 100%;
    }

    .footer_container .left_container {
        padding-bottom: 14.49vw;
    }

    .footer_container .vision_logo_container {
        width: 80vw;
        margin: 0 auto 7.25vw;
    }

    .footer_container .logo_obj {
        width: 24.15vw;
    }

    .footer_container .logo_container .txt_container {
        padding-left: 2.42vw;
    }

    .footer_container .logo_container strong {
        font-size: 3.86vw;
    }

    .footer_container .logo_container span {
        font-size: 2.66vw;
    }

    .footer_container .nav_container {
        width: 80vw;
        margin: 0 auto 4.83vw;
    }

    .footer_container .nav_item {
        min-width: 9.5em;
        padding-bottom: 1em;
    }

    .footer_container .nav_item a {
        font-size: 3.38vw;
    }

    .footer_container .btn_container {
        padding-top: 0;
    }

    .footer_container .btn_container a {
        height: 24.15vw;
    }

    .copy_wrap small {
        font-size: 3.38vw;
    }


    /*--------------------------------------*/

    /*top*/

    /*--------------------------------------*/

    /*mv_container--------------------------------*/

    .top .mv_wrap {
        height: 100vh;
    }

    .top .mv_container {
        height: 100vh;
        overflow: visible;
    }

    .top .mv_container .latest_news_container {
        width: 90vw;
        max-width: 90vw;
	    background-color: rgba(255,255,255,.7);
        bottom: 12vh;
        left: 5vw;
    }

    .top .mv_container .latest_news_container a {
        padding: 3.62vw;
    }

    .top .mv_container .latest_news_container .latest_news_ttl {
        font-size: 3.86vw;
    }

    .top .mv_container .latest_news_container .latest_news_tag_container {
        width: 19.32vw;
        height: 4.83vw;
        font-size: 3.38vw;
    }

    .top .mv_container .latest_news_container .latest_news_date_container {
        font-size: 3.38vw;
    }

    .top .mv_container .scroll {
        font-size: 2.66vw;
        padding-bottom: 14.49vw;
        bottom: 32vh;
    }

    .top .mv_container .scroll span {
        height: 14.49vw;
        top: 6.04vw;
    }

    .top .mv_container .scroll span::after {
        height: 14.49vw;
        animation-delay: 16s;
    }


    /*sec01--------------------------------*/

    .top .sec01 {
        margin-top: 4.83vw;
    }

    .top .greet_inner {
        display: block;
    }

    .top .greet_inner .txt_container {
        width: 100%;
        padding: 7.25vw 0 0;
    }

    .top .greet_inner .img_container {
        width: 90%;
        margin: 0 auto;
        transform: translateY(0);
    }

    .top .president_name span {
        font-size: 3.38vw;
        padding-bottom: 1.21vw;
    }

    .top .president_name strong {
        font-size: 5.8vw;
    }

    /*sec02--------------------------------*/

    .top .report_wrap {
        display: block;
    }

    .top .report_wrap .report_list_container:first-of-type {
        width: 100%;
    }

    .top .report_wrap .report_list_container:last-of-type {
        width: 100%;
    }

    .top .report_wrap .report_list_container .report_list_item {
        padding-bottom: 2.42vw;
    }

    .top .report_wrap .report_list_container:first-of-type .report_list_item {
        width: 100%;
    }

    .top .report_wrap .report_list_container:first-of-type .report_list_item .img_container {
        aspect-ratio: 3.2 / 2;
    }

    .top .report_wrap .report_list_container a:hover .report_list_obj {
        transform: scale(1.1);
        transition-duration: 0.3s;
    }

    .top .report_wrap .report_list_container .txt_container {
        padding: 2.42vw 0 4.83vw 1.21vw;
    }

    .top .report_wrap .report_list_container:first-of-type .report_lit_ttl {
        font-size: 4.35vw;
    }

    .top .report_wrap .report_list_container:last-of-type .report_lit_ttl {
        font-size: 3.38vw;
    }

    .top .report_wrap .report_list_container:first-of-type .report_tag_container {
        width: 21.74vw;
        height: 6.04vw;
        font-size: 3.38vw;
    }

    .top .report_wrap .report_list_container:last-of-type .report_tag_container {
        width: 16.91vw;
        height: 4.83vw;
        font-size: 2.9vw;
    }

    .top .report_wrap .report_list_container:first-of-type .report_date_container {
        font-size: 3.38vw;
    }

    .top .report_wrap .report_list_container:last-of-type .report_date_container {
        font-size: 2.9vw;
    }

    .top .report_wrap .btn_container {
        position: static;
        transform: translateY(0);
    }



    /*sec03--------------------------------*/

    .top .aboutus_container {
        padding: 5vw 3vw 5vw 5vw;
    }

    .top .aboutus_container .aboutus_list_container {
        padding: 3.62vw 2vw 0 0;
        display: block;
    }

    .top .aboutus_container .aboutus_list_item a {
        width: 80vw;
        height: 12.08vw;
        font-size: 4.35vw;
    }

    .top .aboutus_container .aboutus_list_item + .aboutus_list_item {
        padding-top: 7.25vw;
    }

    .top .aboutus_container .aboutus_list_item a::after {
        right: 4.83vw;
    }



    /*sec04--------------------------------*/

    .top .rotary_lead_wrap {
        margin: 0 auto 9.66vw;
        display: block;
    }

    .top .rotary_lead_wrap .rotary_lead_container {
        width: 100%;
    }

    .top .rotary_lead_wrap .btn_container {
        padding-top: 9.66vw;
    }

    .top .rotary_wrap .img_container {
        width: 100%;
        min-width: 100%;
        max-width: 100%;
        transform: translateX(-4vw);
    }



    /*--------------------------------------*/

    /*lower*/

    /*--------------------------------------*/

    /*mv_container---------------------------*/

    .lower .mv_container {
        height: 57.97vw;
    }

    .lower .mv_container .page_ttl {
        width: 100%;
        font-size: 5.8vw;
        top: 65%;
    }



    /*--------------------------------------*/

    /*aboutus*/

    /*--------------------------------------*/

    .about_list_wrap {
        display: block;
    }

    .about_list_container {
        padding: 4.83vw;
        margin-bottom: 4.83vw;
    }

    .about_list_wrap .about_list_container {
        width: 100%;
    }

    .about_list_container dt,
    .about_list_container dd {
        font-size: 3.38vw;
        line-height: 1.46em;
    }

    .boardmember_wrap {
        display: block;
    }

    .boardmember_wrap .boardmember_container {
        width: 100%;
    }

    .boardmember_wrap .about_list_container {
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .boardmember_wrap .about_list_container dt,
    .boardmember_wrap .about_list_container dd {
        text-align: center;
        padding: 0;
    }

    .boardmember_wrap .about_list_container dd {
        font-size: 4.35vw;
    }

    .member_wrap .about_list_container {
        display: block;
    }

    .member_wrap .about_list_container dt {
        width: 100%;
        padding-bottom: .5em;
        font-size: 4.35vw;
    }

    .member_wrap .about_list_container dd {
        width: 100%;
    }

    .accessmap_wrap {
        width: 90vw;
        display: block;
    }

    .accessmap_wrap .accessmap_container {
        width: 100%;
    }

    .accessmap_wrap .accessmap_container + .accessmap_container {
        padding-top: 9.66vw;
    }

    .accessmap_wrap .add_list_container {
        padding: 4.83vw 0 0;
    }

    .accessmap_wrap .add_list_container dt,
    .accessmap_wrap .add_list_container dd {
        font-size: 3.38vw;
    }



    /*--------------------------------------*/

    /*rotary*/

    /*--------------------------------------*/

    .rotary_lead {
        font-size: 5.31vw;
        line-height: 1.5em;
        text-align: left;
        padding-bottom: 4.83vw;
    }

    .structure_list_container {
        display: block;
    }

    .structure_list_container .structure_list_item {
        width: 100%;
    }
    .structure_list_container .structure_list_item + .structure_list_item {
        margin-top: 7.25vw;
    }

    .structure_list_container .structure_list_item .txt_container {
        padding: 3.62vw 2.42vw 4.83vw 3.62vw;
    }

    .structure_list_container .structure_list_item .structure_list_ttl {
        font-size: 5.31vw;
        padding-bottom: 2.42vw;
    }

    .structure_list_container .structure_list_item .structure_list_txt {
        font-size: 3.86vw;
    }

    .rotary_wrap .plain_txt + .rotary_lead,
    .rotary_wrap .plain_txt + .img_container {
        padding-top: 4.83vw;
    }

    .rotary_wrap .player {
        margin: 4.83vw auto 0;
    }



    /*----------------------------------------*/

    /*info*/

    /*----------------------------------------*/


    .info .report_list_container {
        display: block;
    }

    .info .report_list_container .report_list_item {
        width: 100%;
        padding-bottom: 2.42vw;
	    margin: 0;
    }

    .info .report_list_container .txt_container {
        padding: 2.42vw 0 4.83vw 1.21vw;
    }

    .info .report_list_container .report_lit_ttl {
        font-size: 3.86vw;
    }

    .info .report_list_container .report_lit_ttl .fa-camera {
        font-size: 4.83vw;
    }

    .info .report_list_container .report_tag_container {
        width: 16.91vw;
        height: 4.83vw;
        font-size: 2.9vw;
    }

    .info .report_list_container .report_date_container {
        font-size: 2.9vw;
    }



    /*----------------------------------------*/

    /*post_container*/

    /*----------------------------------------*/

    .info .post_ttl_container {
        padding-bottom: 12.08vw;
    }

    .info .post_ttl {
        font-size: 5.8vw;
    }

    .info .post_tag_container {
        width: 19.32vw;
        height: 4.83vw;
        font-size: 3.38vw;
    }

    .info .post_tag_wrap .post_date_container {
        font-size: 3.86vw;
    }

    .info .post_container img {
        margin-bottom: 4.83vw;
    }

    .info .post_container h1 {
        font-weight: 11.59vw;
    }

    .info .post_container h2 {
        font-weight: 13.53vw;
    }

    .info .post_container h3 {
        font-weight: 7.73vw;
    }

    .info .post_container h4 {
        font-weight: 5.8vw;
    }

    .info .post_container h5 {
		font-size: 4.83vw;
    }

    .info .post_container h6 {
		font-size: 4.35vw;
    }
	
	.info .post_container p {
		font-size: 4.35vw;
	}

	.info .post_container .img_container {
		width: 100%;
	}
	.info .post_container ul > li {
		font-size: 4.35vw;
	}
	.info .post_container ol > li {
		font-size: 4.35vw;
	}
	.info .post_container blockquote {
		font-size: 4.35vw;
		padding: 0 10px;
	}
	.info .post_container blockquote:before {
        font-weight: 13.53vw;
		padding-top: 0;
	}
	.info .post_container blockquote:after {
		content: '”';
        font-weight: 13.53vw;
	}



	/*----------------------------------------*/

	/*inquiry*/

	/*----------------------------------------*/

    .inquiry_list_container {
        display: block;
        padding: 4.83vw;
    }

    .inquiry_list_container + .inquiry_list_container {
        margin-top: 4.83vw;
    }

    .inquiry_list_container dt,
    .inquiry_list_container dd {
        font-size: 3.86vw;
        line-height: 1.46em;
    }

    .inquiry_list_container dt {
        width: 100%;
        padding-bottom: 2.42vw;
    }

    .inquiry_list_container dd {
        width: 100%;
    }

	input[type="text"],
    input[type="password"] {
		width: 100%;
		height: 10.26vw;
        font-size: 3.86vw;
        border-radius: 6px;
	}

	input:focus,
	textarea:focus {
		outline: 1.03vw solid #f7a81b;
	}

	textarea {
        font-size: 3.86vw;
        border-radius: 6px;
	}

	.req {
		font-size: 3.08vw;
	}

    .submit_container {
        padding-top: 7.25vw;
    }

	input[type="submit"] {
        width: 80vw;
        height: 12.08vw;
        font-size: 4.83vw;
	}

	input[type="submit"]:focus {
		outline: none;
	}

	.btn_container.back {
		padding-top: 20.51vw;
	}

	.inquiry.confirm .plain_txt,
	.inquiry.finish .plain_txt {
		font-size: 4.1vw;
	}

	.inquiry .center {
		text-align: left;
	}

	.inquiry .center.mail {
		text-align: center;
	}

	.inquiry_txt {
		font-size: 4.1vw;
		line-height: 1.6em;
		padding-bottom: 1.6em;
		text-align: left;
	}



    /*----------------------------------------*/
    
    /*member_page*/
    
    /*----------------------------------------*/
    
    #wpmem_login fieldset {
        padding: 3vw;
    }

	
/*-------------------------------------*/
}