@charset "UTF-8";
/* CSS Document */

/************************
 BASE
*************************/
html {
    font-size: 62.5%;
    overflow-x: hidden;
}

body {
    font-family: "Shippori Mincho", "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif;
    font-feature-settings: "palt"1;
    font-kerning: auto;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 2.0;
    color: #333;
    overflow-x: hidden;
    letter-spacing: .15rem;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
}

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

.marugo {
    font-family: 'M PLUS Rounded 1c', sans-serif;
}

body * {
    box-sizing: border-box;
}

a {
    transition: .5s;
    color: #333;
    cursor: pointer;
}

a:hover {
    opacity: 0.7;
}

ul,
li,
ol {
    list-style: none;
}

img {
    display: block;
    height: auto;
    max-width: 100%;
}

*:last-child {
    margin-bottom: 0 !important;
}

@media screen and (max-width: 550px) {
    .sp-none {
        display: none !important;
    }
}

/*
@media screen and (min-width: 551px) {
	.sp-only {
		display: none!important;
	}
}
*/
@media screen and (max-width: 768px) {
    .tab-only {
        display: none !important;
    }

    .sp-none {
        display: none !important;
    }

    body {
        font-kerning: auto;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.6;
    }
}

@media screen and (min-width: 769px) {
    a[href^="tel:"] {
        pointer-events: none;
    }

    .u-tab-only {
        display: none !important;
    }

    .sp-only {
        display: none !important;
    }
}

@media screen and (max-width: 1024px) {
    .pc-only {
        display: none !important;
    }
}

@media screen and (min-width: 1024px) {
    .pc-none {
        display: none !important;
    }
}

@media screen and (min-width: 768px) {
    .sp-only02 {
        display: none !important;
    }
}

@media screen and (max-width: 769px) {
    .pc-only02 {
        display: block !important;
    }
}

@media screen and (max-width: 767px) {
    .pc-only02 {
        display: none !important;
    }

    .sp-only02 {
        display: block !important;
    }
}

@media screen and (max-width: 768px) {
    .pc-only02 {
        display: none !important;
    }
}

@media screen and (min-width: 540px) {
    .sp-only03 {
        display: none !important;
    }
}

@media screen and (max-width: 539px) {
    .sp-only03 {
        display: block !important;
    }
}

@media screen and (min-width: 481px) {
    .sp-only06 {
        display: none !important;
    }
}

@media screen and (max-width: 480px) {
    .sp-only06 {
        display: block !important;
    }
}

@media screen and (min-width: 321px) {
    .sp-only05 {
        display: none !important;
    }
}

@media screen and (max-width: 320px) {
    .sp-only05 {
        display: block !important;
    }
}

/************************
 .sc-fade
*************************/

.sc-fade {
    opacity: 0;
    transform: translate(0, 50px);
    transition: all 0.8s;
}

.sc-fade.sc-fadein {
    opacity: 1;
    transform: translate(0, 0);
}



/************************
 material
*************************/
.button {
    border: none;
    /* box-shadow : 0 2px 3px rgba(0, 0, 0, 0.15); */
    /*filter: progid:DXImageTransform.Microsoft.dropshadow(OffX=0, OffY=2, Color='#EEEEEE');*/
    font-size: 0.9em;
    color: #333;
    height: auto;
    line-height: 1.0;
    padding: 10px;
}

.button-normal {
    background-color: #F49707;
    color: #FFF;
    border-radius: 30px;
}

.btn_corp .button-normal {
    background-color: #21ADE5;
    color: #FFF;
}

.btn_corp .button-normal img {
    width: 35px;
    height: 35px;
    display: inline-block;
    vertical-align: middle;
}

.button-primary {
    background-color: #0071bc;
    color: #FFF;
}

.button-caution {
    background-color: #e7bfbf;
    color: #FFF;
}

.button-caution:hover,
.button-primary:hover {
    color: rgba(255, 255, 255, 0.8);
}

span.ul {
    position: relative;
    display: inline-block;
}

span.ul:after {
    display: inline-block;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 0;
    background: #ffe200;
    height: 4px;
    width: 100%;
    content: "";
}


/************************
 layout
*************************/

.d-flex {
    display: flex;
}

.d-block {
    display: block;
}

.text-right {
    text-align: right;
}

.text-center {
    text-align: center;
}

/**header**/

header {
    position: fixed;
    background-color: rgba(255, 255, 255, 0.8);
    width: 100%;
    top: 0;
    z-index: 5;
    /* border-bottom:8px solid #FDD122; */
}

header .container {
    width: 100%;
    max-width: 100%;
    padding: 0 20px;
}

header .container .d-flex {
    width: 100%;
    height: 64px;
    flex-flow: row;
    justify-content: space-between;
    align-items: center;
}

header .container h1 {
    margin-bottom: 0;
}

header .container h1 img {
    width: 70%;
}

header .container h1 a {
    display: flex;
    align-items: center;
    font-size: 1.8rem;
    font-weight: normal;
    color: #444;
    text-decoration: none;
}

header .container h1 a span {
    display: inline-block;
    margin-left: 0.5em;
    font-size: 16px;
    /*
	display: none;
    */
}

header .container nav * {
    margin-bottom: 0;
}

header .container nav ul {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

header .container nav ul li {
    margin-right: 1rem;
}

header .container nav ul > li:last-child {
    margin-right: 60px;
}

header .container nav ul li a.button {
    font-size: 0.7em;
    padding: 8px;

}

header .container nav ul li a.button img {
    width: 25px;
    height: 25px;
    display: block;
    vertical-align: middle;
    margin: auto;
}

@media screen and (max-width: 767px) {
    header .container {
        /* padding: 0; */
    }

    header .container h1 img {
        width: 70%;
        max-width: 113px;
    }
}

@media screen and (max-width: 539px) {
    header .container h1 a {
        display: block;
    }
}

/**sp用**/
.sp-only-header nav {
    background-color: #00557a;
}

.sp-only-header nav ul {
    display: block;
}

.sp-only-header nav ul li a {
    display: block;
    color: #fff;
    padding: 16px;
    text-decoration: none;
    font-weight: 400;
}

.sp-only-header nav ul li {
    border-bottom: 1px dotted #FFF;
    margin-bottom: 0;
}

.sp-only-header {
    z-index: 11;
    position: relative;
}

.sp-only-header .drawer-hamburger {
    background: #00557a !important;
    color: #fff;
    padding: 0;
    height: 64px;
    font-size: 12px;
    width: 72px;
    text-align: center;
    line-height: 1.2;
    z-index: 11;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.drawer--right.drawer-open .drawer-hamburger {
    right: 25rem;
}

.sp-only-header .drawer-nav {
    position: fixed;
    top: 0;
    height: 100%;
    /*
	right: -20rem;
    overflow: hidden;
    */
    z-index: 111;
    width: 25rem;
    right: -25rem;
    overflow: hidden;
}

.sp-only-header .drawer-nav._scroll_on {
    overflow: scroll !important;
}

.drawer-menu {
    /*
    height: 850px !important;
    overflow: scroll !important;
    */
    height: 850px;
}

.drawer-menu._height_inherit {
    height: inherit !important;
}

.drawer-nav {
    /*
    height: 850px !important;
    */
    height: 100vw;
}

@media screen and (max-height: 450px) {
    .drawer-menu {
        height: 580px !important;
    }
}

.drawer-overlay {
    z-index: 10;
}

.sp-gnav {
    margin-top: 64px;
    background: #21ADE5 !important;
}

.sp-gnav ul {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 16px 0;
}

.sp-gnav li {
    margin-bottom: 0;
}

.sp-gnav li a {
    text-decoration: none;
    display: inline-block;
    margin: 0 8px;
    color: #fff;
}

.drawer-menu-top {
    display: block;
    color: #fff;
    padding: 16px;
    text-decoration: none;
    font-weight: 400;
}

nav ul li .drawer-menu-s {
    display: none;
    margin-left: 10px;
}

nav ul li .drawer-menu-s li:last-child {
    border-bottom: none;
}

@media screen and (max-height:450px) {

    .sp-only-header nav ul li a,
    .drawer-menu-top {
        padding: 4px 16px 8px 16px;
    }

    .sp-only-header nav ul li:first-child a {
        padding: 10px 16px 8px 16px;
    }
}

@media screen and (max-height:370px) {

    .sp-only-header nav ul li a,
    .drawer-menu-top {
        padding: 4px 16px 8px 16px;
    }

    .sp-only-header nav ul li:first-child a {
        padding: 10px 16px 8px 16px;
    }
}



@media screen and (min-width: 769px) {
    header .container .d-flex {
        height: 80px;
    }

    header .container h1 img {
        width: 170px;
    }

    header .container h1 a {
        font-size: 2.0rem;
    }

    header .container h1 a span {
        display: inline-block;
        margin-left: 0.7em;
        display: block;
        margin-top: 0;
        font-size: 22px;
    }

    header .container {
        padding: 0 40px;
    }

    header .container nav ul li a.button {
        font-size: 0.9em;
        padding: 15px;
        position: relative;
        /* height:56px;
		line-height: 36px; */
        min-width: 160px;
    }

    /*
	header .container nav ul li .button:before {
	content: "\f105";
	position:absolute;
	left:8px;
	font-family: 'FontAwesome';
}
*/
    header .container nav ul li a.button img {
        width: 35px;
        height: 35px;
    }

    header .container nav ul li a.button img {
        margin-bottom: 0;
        position: absolute;
        left: 8px;
    }

    header .container nav ul > li:last-child {
        margin-right: 0;
    }
}

@media screen and (min-width: 1025px) {
    header .container nav ul li a.button {
        min-width: 200px;
    }
}

/**footer**/

footer {
    /* text-align: center; */
    /* border-top:#FDD122 8px solid; */
}

footer .footer_top {
    background: #FFF;
    padding: 40px 0;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
}

footer .footer_top h1 {
    margin: 0 12px 3.5em;
    ;
    font-size: 1.2rem;
}

footer .footer_top img {
    margin: 12px auto;
    width: 190px;
}

footer .footer_top img:hover {
    opacity: 0.7;
    transition: .5s;
}

footer .footer_top p,
footer .footer_top a {
    font-size: 1.3rem;
    text-decoration: none;
    /* pointer-events: none; */
}

footer .footer_right {
    margin: 0 12px;
}

footer .footer_top p {
    text-align: left;
    margin-bottom: 0.5rem;
}

footer .footer_btm p {
    font-size: 1.1rem;
    padding: 1.6rem;
    color: #fff;
}

footer .footer_right a {

    text-align: left;
}

footer .footer_right a:hover {
    transition: .5s;
    color: #e7bfbf;
}

footer .footer_btm {
    background-color: #EE859A;
    text-align: center;
}

#page-top {
    bottom: 40px;
    right: 20px;
    font-size: 48px;
    line-height: 1;
    position: fixed;
    z-index: 9999;
}

#page-top a {
    color: #FDD122;
    z-index: 9999;
}

@media screen and (min-width: 769px) {
    footer .footer_top p {
        font-size: 1.4rem;
        padding-top: 2rem;
    }

    footer .footer_btm p {
        font-size: 1.2rem;
    }

    footer .footer_top {
        background: #FFF;
        padding: 40px 0;
        display: flex;
        flex-flow: row;
        justify-content: center;
        align-items: flex-start;
    }

    footer .footer_top img {
        margin: 0 auto 0;
        width: 250px;
    }
}


/** index #mainvisual **/

#mainvisual {
    /* width:100%; */
    padding: 0 40px;
    position: relative;
}

.pastel {
    position: absolute;
    z-index: -1;
}

.back_pastel01,
.back_pastel02 {
    top: -10px;
    left: calc(60% - 930px);
}

.back_pastel02 {
    top: 410px;
}

.back_pastel03 {
    top: 255px;
    right: calc(50% - 930px);
}

body:not(.no-top) #mainvisual .img-wrapper {
    padding-top: 74px;
    width: 100%;
    /* max-width:1664px; */
    margin: auto;
    position: relative;
    justify-content: center;
    display: flex;
}

#mainvisual .img-wrapper {
    height: 48vw;
    position: relative;
}

#mainvisual .img-wrapper2 {
    height: auto;
    position: relative;
}

#mainvisual .txt-wrapper {
    padding: 160px 0 40px 0;
    text-align: center;
    /* background: url("../img/bg_intro.jpg") right top no-repeat #FFF8E9; */
    /* background-size: cover; */
    /* background-position: 90% center; */
    /* position:relative; */
}

.txt-wrapper .container {
    width: 100%;
}

.txt-wrapper h2 {
    max-width: 640px;
    margin: 0 auto 40px;
    text-align: center;
}

.txt-wrapper h2 strong {
    font-family: 'Noto Sans', sans-serif;
    font-weight: 400;
    font-style: italic;
    -webkit-text-stroke: 0.5px #4689CA;
    text-shadow: #4689CA 1px 1px 0px, #4689CA -1px 1px 0px, #4689CA 1px -1px 0px, #4689CA -1px -1px 0px;
    display: inline-block;
    text-align: center;
    position: relative;
    z-index: 1;
}

.txt-wrapper h2 strong:before {
    border-bottom: 8px solid #FFFF03;
    position: absolute;
    bottom: 8px;
    width: 100%;
    content: "";
    z-index: -1;
}

.txt-wrapper h2 span {
    font-size: 3.2rem;
    text-align: center;
    color: #e7bfbf;
}

.txt-wrapper h2 span.text-color {}

#mainvisual .txt-wrapper p {
    padding: 24px;
    /* background-color: rgba(255,255,255,0.8); */
}

body:not(.no-top) #mainvisual .img-btn {
    position: absolute;
    left: 20px;
    bottom: -13%;
    z-index: 3;
    width: 100%;
    max-width: 200px;
    height: auto;
    /* height: 200px;
	color: #FFF;
	text-align: center;
	line-height: 36px;
	display: inline-block;
	text-decoration: none;
	background-image: url(../img/mainBtn_top.png);
	background-repeat: no-repeat;
	background-size: cover; */
}

body:not(.no-top) #mainvisual .img-btn:hover {
    transition: .5s;
    -ms-transform: translate(0, 7px);
    -webkit-transform: translate(0, 7px);
    transform: translate(0, 7px);
}

body:not(.no-top) #mainvisual .img-btn img {
    position: relative;
}

body:not(.no-top) #mainvisual .img-btn p {
    position: absolute;
    top: 48%;
    left: 50%;
    -ms-transform: translate(-50%, -48%);
    -webkit-transform: translate(-50%, -48%);
    transform: translate(-50%, -48%);
    margin: 0;
    padding: 0;
    width: 200px;
    font-size: 2.8rem;
    line-height: 1.5;
    text-align: center;
    color: #fff;
}

body:not(.no-top) #mainvisual .img-btn p:after {
    content: "\f107";
    color: #FFF;
    font-family: FontAwesome;
    position: absolute;
    top: 100%;
    left: 50%;
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    margin: 0;
    padding: 0;
    width: 200px;
}

@media screen and (max-width: 1055px) {
    body:not(.no-top) #mainvisual .img-btn {
        width: 20%;
    }

    body:not(.no-top) #mainvisual .img-btn p {
        width: 200px;
        font-size: 2.3rem;
    }
}

@media screen and (min-width: 769px) {
    body:not(.no-top) #mainvisual .img-wrapper {
        padding-top: 90px;
        width: 100%;
        margin: 0 auto;
    }

    body:not(.no-top) #mainvisual .img-title {
        position: absolute;
        top: 120px;
        left: 0;
        width: 28%;
        z-index: 3;
    }

    body:not(.no-top) #mainvisual .img-main {
        text-align: right;
    }

    body:not(.no-top) #mainvisual .img-main img {
        display: inline;
        border-radius: 30px;
        width: 88%;
    }

    body:not(.no-top) #mainvisual .img-wrapper img {
        margin: 0 auto;
    }

    .txt-wrapper h2 {
        max-width: 800px;
        font-size: 3.0rem;
        letter-spacing: 0.1em;
    }

    #mainvisual .txt-wrapper p {
        padding: 0;
        /* background-color: rgba(255,255,255,0); */
        color: #333;
    }
}

@media screen and (max-width: 768px) {
    #mainvisual .img-wrapper2 {
        height: auto;
        position: relative;
    }

    body:not(.no-top) #mainvisual .img-main img {
        border-radius: 30px;
    }

    .txt-wrapper h2 {
        margin: 0 auto 20px;
    }

    #mainvisual .txt-wrapper p {
        line-height: 1.8;
        padding: 24px 0;
    }

    body:not(.no-top) #mainvisual .img-btn {
        left: -5%;
        bottom: -4%;
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    #mainvisual {
        padding: 0 5%;
        position: relative;
    }

    .back_pastel01,
    .back_pastel02 {
        left: calc(50% - 730px);
    }

    .back_pastel03 {
        right: calc(50% - 730px);
    }

    .txt-wrapper .container {
        padding: 0;
    }
}

@media screen and (max-width: 540px) {
    body:not(.no-top) #mainvisual .img-btn {
        left: -3%;
        bottom: -5%;
        width: 150px;
        height: 150px;
    }

    body:not(.no-top) #mainvisual .img-btn p {
        position: absolute;
        top: 48%;
        left: 50%;
        width: 150px;
        font-size: 2.0rem;
        line-height: 1.4;
    }
}

/** detail #mainvisual **/

@media screen and (min-width: 769px) {
    body:not(.no-top) #mainvisual .img-wrapper {
        padding-top: 60px;
        width: 100%;
        margin: 0 auto;
    }

    body:not(.no-top) #mainvisual .img-detail-title {
        position: absolute;
        top: 120px;
        left: 0;
        width: 28%;
        z-index: 3;
    }

    body:not(.no-top) #mainvisual .img-detail {
        text-align: right;
    }

    body:not(.no-top) #mainvisual .img-detail img {
        display: inline;
        border-radius: 30px;
        width: 88%;
    }

    body:not(.no-top) #mainvisual .img-wrapper img {
        margin: 0 auto;
    }

    .txt-wrapper h2 {
        max-width: 800px;
        font-size: 3.0rem;
        letter-spacing: 0.1em;
    }

    #mainvisual .txt-wrapper p {
        padding: 0;
        /* background-color: rgba(255,255,255,0); */
        color: #333;
    }
}

@media screen and (max-width: 768px) {
    body:not(.no-top) #mainvisual .img-detail img {
        border-radius: 30px;
    }

    .txt-wrapper h2 {
        margin: 0 auto 20px;
    }

    #mainvisual .txt-wrapper p {
        line-height: 1.8;
        padding: 24px 0;
    }
}

/* .no-top #mainvisual {
	padding-bottom:0;
	position:relative;
	height:auto;
} */

.no-top #mainvisual .img-wrapper .container {
    position: relative;
    width: 100%;
}

.no-top #mainvisual .img-wrapper .d-flex {
    height: 100%;
    flex-flow: column;
    justify-content: space-between;
}

/* .no-top #mainvisual {
		padding:0;
		position:relative;
	} */
.no-top #mainvisual .img-wrapper {
    /* background-image: none ;
	padding:0; */
    padding-top: 74px;
    width: 100%;
    max-width: 1500px;

    margin: auto;
    position: relative;
}

.no-top #mainvisual .img-wrapper .container {
    padding: 0;
}

.no-top #mainvisual .img-wrapper .container {
    max-width: 1728px;
}

.no-top #mainvisual .img-wrapper .icon {
    width: 60%;
    margin: 20px auto 0;
}

.no-top #mainvisual .img-wrapper .d-flex {
    height: 100%;
    flex-flow: row;
    justify-content: flex-start;
}

.no-top #mainvisual .img-wrapper .d-flex .copy-box {
    display: block;
    width: 100%;
    padding-top: 40px;
    text-align: center;
}

.no-top #mainvisual .img-wrapper .d-flex .maiTit h1 {
    font-size: 4rem;
    margin-bottom: 0.25em;
    text-align: center;
}

.no-top #mainvisual .img-wrapper .d-flex .maiTit p {
    font-size: 2rem;
    font-weight: 600;
    text-align: center;
}

.no-top #mainvisual .img-wrapper .d-flex .maiTit p strong {
    font-size: 3.2rem;
    font-weight: bold;
    color: #CB0606;
}

.no-top #mainvisual .img-wrapper .d-flex .priceBox {
    background: #fff;
    border: 4px solid #cb0606;
    padding: 2px;
    margin: 24px 0;
    text-align: center;
    display: inline-block;
}

.no-top #mainvisual .img-wrapper .d-flex .priceBox p {
    margin: 0;
    font-size: 1.8rem;
    font-weight: 600;
}

.no-top #mainvisual .img-wrapper .d-flex .priceBox p span {
    color: #cb0606;
    font-size: 3.2rem;
}

.no-top #mainvisual .img-wrapper .d-flex .pointWrap {
    display: flex;
    justify-content: center;
    padding-bottom: 40px;
}

.no-top #mainvisual .img-wrapper .d-flex .pointWrap li {
    width: 100%;
    /*
		height:48px;
		border-radius: 48px;
		background-color: #FFFF03;
*/
    color: #1771C9;
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.4;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 600;
    margin: 0 1% 12px;
}

.no-top #mainvisual .img-wrapper {
    padding-top: 300px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    align-items: flex-end;
    border-radius: 50px;
}

.no-top #mainvisual .img-detail-title {
    left: 0;
    z-index: 3;
    bottom: 0;
}



@media screen and (max-width: 768px) {
    .no-top #mainvisual .img-detail-title {
        left: 0;
        z-index: 3;
        bottom: 0;
        max-width: 700px;
        margin: 80vw auto 0 auto;
    }

    .top_bg {
        background: url(../img/main_img_rec01-1_sp-01.jpg);
        background-size: cover;
        margin: 100px auto;
        background-position: center;
    }
}

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

    /* .no-top #mainvisual {
		padding:88px 0 0;
		position:relative;
	} */
    .no-top #mainvisual .img-wrapper {
        padding-top: 300px;
        width: 100%;
        margin: 0 auto;
        display: flex;
        align-items: flex-end;
    }

    .no-top #mainvisual .img-detail-title {
        left: 0;
        z-index: 3;
        width: 50%;
        bottom: 0;
        max-width: 600px;
    }

    .top_bg {
        background: url(../img/mainImg_rec01-1.jpg);
        background-size: cover;
        margin: 100px auto;
        background-position: center;
    }

    .no-top #mainvisual .img-wrapper img {
        margin: 0 auto;
    }

    .no-top #mainvisual .img-detail {
        text-align: right;
    }

    .no-top #mainvisual .img-detail img {
        display: inline;
        border-radius: 30px;
        width: 88%;
    }
}

@media screen and (max-width: 768px) {
    body:not(.no-top) #mainvisual .img-detail img {
        border-radius: 30px;
    }

    .no-top #mainvisual .img-wrapper {
        padding-top: 10px;
    }

    .no-top #mainvisual .img-detail img {
        border-radius: 30px;
    }

    .no-top #mainvisual .back_pastel03 {
        top: 855px;
        right: calc(50% - 730px);
    }
}



/** detail pankuzu **/
/* .no-top .pankuzu {
	position:relative;
	width:100%;
	z-index: 1;
	height:60px;
	line-height: 60px;
	background-color: #e7bfbf;
	display: flex;
	justify-content:flex-start;
} */
.no-top .pankuzu .inner {
    padding: 10px 0 0 20px;
}

@media screen and (max-width: 450px) {
    .no-top .pankuzu._no2 {
        font-size: 12px;
    }

    .no-top .pankuzu._no2 .inner {
        padding: 0 0 0 10px;
    }
}

@media screen and (max-width: 370px) {
    .no-top .pankuzu._no2 {
        font-size: 10px;
    }

    .no-top .pankuzu._no2 .inner {
        padding: 0 0 0 8px;
    }
}

.no-top .pankuzu * {
    color: #333;
}

.no-top .pankuzu ul {
    /* background-color: #FDD122; */
    position: relative;
}

.no-top .pankuzu ul:after {
    content: "";
    display: block;
    position: absolute;
    left: 100%;
    top: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 60px 60px 0 0;
    border-color: #FDD122 transparent transparent transparent;
}

.no-top .pankuzu li {
    display: inline-block;
    margin-right: 0.8rem;
}

.no-top .pankuzu li a {
    text-decoration: none;
    color: #aaa;
}

.no-top .pankuzu li:after {
    content: ">";
    padding-left: 0.8rem;
}

.no-top .pankuzu li:last-child:after {
    content: "";
}

@media screen and (min-width: 769px) {
    /* .no-top .pankuzu {
		position:relative;
		width:100%;
		z-index: 1;
		height:80px;
		line-height: 80px;
		background-color: #e7bfbf;
		display: flex;
		justify-content:flex-start;
	} */

    /* .no-top .pankuzu ul:after {
		content:"";
		display: block;
		position:absolute;
		left:100%;
		top:0;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 80px 80px 0 0;
		border-color: #FDD122 transparent transparent transparent;
	} */
}

/** #contents **/
#contents {
    margin-bottom: 10px;
}

#contents section {
    padding: 120px 0;
    position: relative;
}

.back_pastel04 {
    top: 75px;
    right: calc(50% - 730px);
}

.back_pastel05 {
    bottom: -40px;
    left: -180px;
}

#contents section h2 {
    position: relative;
    max-width: 1200px;
    width: 85%;
    font-size: 2.25em;
    text-align: center;
    font-weight: normal;
    line-height: 1;
    margin: 0 auto 36px;
}

/* #contents section h2:before {
    position: absolute;
    content: "";
    width: 100%;
    bottom: 24px;
    left: 0;
    right: 0;
    border-bottom: 4px solid #FDD122;
} */

#contents section h2 strong {
    position: relative;
    display: inline-block;
    padding: 0 10px;
}

#contents section h2 strong:before {
    position: absolute;
    content: "";
    width: 100%;
    bottom: -10px;
    left: 0;
    right: 0;
    border-bottom: 4px solid #21ADE5;
}

#contents section h2 span {
    font-size: 0.55em;
    color: #21ADE5;
    display: block;
    margin-top: 1em;
}

#contents section h2.sp-only {
    clear: both;
}

.no-top #contents section .container {
    max-width: 1584px;
}

#contents .bg_color {
    background: #fafafa;
}

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

    #contents section h2:before {
        bottom: 28px;
    }

    #contents section h2 strong:before {
        bottom: -11px;
    }
}

@media screen and (max-width: 768px) {
    #contents section {
        padding: 20px 0 25px;
        position: relative;
    }

    #contents section h2 strong:before {
        border-bottom: 3px solid #21ADE5;
    }

    .back_pastel04 {
        top: 750px;
        right: calc(50% - 0);
    }
}

/** info-wrapper **/
.info-wrapper {
    /* background:url("../img/bg_stripe.png") center repeat; */
    background: #21ADE5;
    padding: 40px 0;
}

.info-wrapper .d-flex {
    justify-content: space-between;
    flex-flow: column;
    align-items: center;
}

.info-wrapper .d-flex > div {
    margin: 0 auto 4.0rem;
    width: 100%;
    text-align: center;
}

.info-wrapper .d-flex .tel-box h2 {
    font-size: 1.8rem;
    margin-bottom: 0;
    color: #fff;
}

.info-wrapper .d-flex .tel-box p {
    margin-bottom: 0;
    line-height: 1.5;
    text-align: center;
}

.info-wrapper .d-flex .tel-box a[href^="tel:"] {
    font-size: 3.2rem;
    font-family: 'Noto Sans', sans-serif;
    color: #fff;
    text-decoration: none;
    font-weight: bold;
}

.info-wrapper .d-flex .tel-box a[href^="tel:"]:before {
    content: "\f095";
    font-family: FontAwesome;
    display: inline-block;
    margin-right: 16px;
}

.info-wrapper .d-flex .tel-box .time-box {
    width: 100%;
    text-align: center;
    font-size: 1.5rem;
    color: #fff;
}

.info-wrapper .d-flex .btn-box .button {
    width: 100%;
    font-size: 2.0rem;
    padding: 0 16px;
    margin-bottom: 2.4rem;
    background-color: #FFF;
    height: 72px;
    line-height: 72px;
    color: #21ADE5;
    position: relative;
    border-radius: 40px;
}

.info-wrapper .d-flex .btn-box .button.button-caution {
    width: 100%;
    font-size: 2.0rem;
    padding: 0 16px;
    margin-bottom: 2.4rem;
    background-color: #8EC31F;
    height: 72px;
    line-height: 72px;
    color: #FFF;
    position: relative;
    border-radius: 40px;
}

.info-wrapper .d-flex .btn-box .button.button-caution.button-entry {
    background-color: #8EC31F;
    color: #fff;
}

.info-wrapper .d-flex .btn-box .button:before {
    content: "\f105";
    color: #21ADE5;
    font-family: FontAwesome;
    position: absolute;
    left: 16px;
}

.info-wrapper .d-flex .btn-box .button.button-caution:before {
    content: "\f105";
    color: #FFF;
    font-family: FontAwesome;
    position: absolute;
    left: 16px;
}

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


    .info-wrapper .d-flex {
        flex-flow: row;
        justify-content: center;
    }

    .info-wrapper .d-flex > div {
        width: 46%;

    }

    .info-wrapper .d-flex .tel-box p {
        margin-bottom: 0;
        line-height: 1.5;
        text-align: center;
    }


    .info-wrapper .d-flex > div h2 {
        font-size: 3.4rem;
    }

    .info-wrapper .d-flex .tel-box a[href^="tel:"] {
        font-size: 3.6rem;
        text-decoration: none;
    }

}

@media screen and (min-width: 1025px) {
    .info-wrapper .d-flex .tel-box {
        margin: 0;
        width: 480px;
    }

    .info-wrapper .d-flex .tel-box a[href^="tel:"] {
        font-size: 5.6rem;
        text-decoration: none;
        letter-spacing: 1px;
    }

    .info-wrapper .d-flex .btn-box {
        width: calc(100% - 520px);
        margin: 0;
    }
}

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

    .info-wrapper .d-flex .btn-box {
        width: 480px;
    }
}

@media screen and (max-width: 1024px) {
    .info-wrapper .d-flex .tel-box a[href^="tel:"] {
        font-size: 3rem;
    }
}

@media screen and (max-width: 539px) {
    .info-wrapper .d-flex .tel-box a[href^="tel:"] {
        font-size: 3rem;
        line-height: 1.2;
    }.txt-wrapper h2 span {
    font-size: 2.2rem;
    text-align: center;
    color: #e7bfbf;
}
}


/** index .recruit_info-box **/

.recruit_info-box {
    margin-bottom: 60px;
    padding: 0;
}

.recruit_info-box.container {
    width: 88%;
}

.recruit_info-box .photo-box {
    width: 100%;
    display: flex;
    align-items: flex-start;
}

.recruit_info-box .txt-box {
    padding: 24px;
    width: 100%;
    background: #fafafa;
    border-radius: 0 0 30px 30px;
}

.recruit_info-box .txt-box h3 {
    font-size: 1.7rem;
    color: #e7bfbf;
    position: relative;
    margin: 16px 0;
    text-align: center;
}

.recruit_info-box .txt-box h3 strong {
    display: inline-block;
}

.recruit_info-box .txt-box h3 strong:before {
    position: absolute;
    content: "";
    width: 20px;
    height: 20px;
    display: inline-block;
    border: 10px solid transparent;
    box-sizing: border-box;
    border-top-color: #e7bfbf;
    top: 0;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.recruit_info-box .txt-box h3 span {
    color: #fff;
    display: block;
    vertical-align: middle;
    padding: 0 0.25em;
    background: #aaa;
    font-size: 1.6rem;
    height: 24px;
    line-height: 24px;
    text-align: center;
    margin: auto;
}

.recruit_info-box .txt-box h3 span.part {}

.recruit_info-box .txt-box h3 span.semi {
    color: #008CB5;
}

.recruit_info-box .txt-box h4 {
    font-size: 2.0rem;
    margin-bottom: 15px;
}

.recruit_info-box .txt-box p {
    margin-bottom: 15px;
}

.recruit_info-box .button-more {
    position: absolute;
    width: 100px;
    height: 100px;
    color: #FFF;
    text-align: center;
    line-height: 36px;
    display: inline-block;
    text-decoration: none;
    background-image: url(../img/mainBtn_top.png);
    background-repeat: no-repeat;
    background-size: cover;
    right: -5px;
    bottom: -55px;
}

.recruit_info-box .button-more:hover {
    transition: .5s;
    -ms-transform: translate(0, 7px);
    -webkit-transform: translate(0, 7px);
    transform: translate(0, 7px);
}

.recruit_info-box .txt-box .button-more:after {
    /*
	content:"";
	display: block;
	position:absolute;
	left:100%;
	top:0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 52px 52px 0;
	border-color: transparent transparent #209DF4 transparent;
*/
}

@media screen and (min-width: 769px) {
    .recruit_info-box {
        display: flex;
    }

    .recruit_info-box .photo-box {
        width: auto;
        display: flex;
        width: 40%;
        padding: 24px 0 24px 24px;
        border-radius: 30px 0 0 30px;
    }

    .recruit_info-box .photo-box img {
        width: auto;

    }

    .recruit_info-box .photo-box01 {
        background-image: url(../img/indexImg01.jpg);
        background-size: cover;
        background-position: center;
    }

    .recruit_info-box .photo-box02 {
        background-image: url(../img/indexImg03.jpg);
        background-size: cover;
        background-position: center;
    }

    .recruit_info-box .photo-box03 {
        background-image: url(../img/indexImg04.jpg);
        background-size: cover;
        background-position: center;
    }

    .recruit_info-box .photo-box04 {
        background-image: url(../img/indexImg06.jpg);
        background-size: cover;
        background-position: center;
    }

    .recruit_info-box .txt-box {
        padding: 24px;
        width: 60%;
        background: #fafafa;
        border-radius: 0 30px 30px 0;
        position: relative;
    }

    /* .recruit_info-box .button-more{
		position: absolute;
		width: 100px;
		height: 100px;
		color: #FFF;
		font-weight: bold;
		text-align: center;
		line-height: 36px;
		display: inline-block;
		text-decoration: none;
		background-image: url(../img/mainBtn_top.png);
		background-repeat: no-repeat;
		background-size: cover;
		right: 10px;
		bottom: -30px;
} */
    .text-right p {
        line-height: 1.5;
        position: absolute;
        top: 45%;
        left: 50%;
        -ms-transform: translate(-50%, -45%);
        -webkit-transform: translate(-50%, -45%);
        transform: translate(-50%, -45%);
    }

    .text-right p:after {
        content: "\f105";
        font-family: FontAwesome;
        position: absolute;
        left: 48%;
        top: 85%;
        font-size: 2rem;
    }

    .recruit_info-box .txt-box h3 {
        font-size: 2.4rem;
        color: #e7bfbf;
        position: relative;
        height: 48px;
        line-height: 48px;
        margin-bottom: 16px;
        text-align: left;
    }

    .recruit_info-box .txt-box h3 strong {
        display: inline-block;
        padding: 0 0.7em;
        position: relative;
    }

    .recruit_info-box .txt-box h3 strong:before {
        position: absolute;
        content: "";
        width: 20px;
        height: 20px;
        display: inline-block;
        border: 10px solid transparent;
        box-sizing: border-box;
        border-left-color: #e7bfbf;
        top: 25px;
        left: 10px;
    }

    .recruit_info-box .txt-box h3 span {
        color: #fff;
        display: inline-block;
        vertical-align: middle;
        padding: 0 0.5em;
        margin-left: 8px;
        background: #aaa;
        font-size: 1.6rem;
        height: 24px;
        line-height: 24px;
        position: absolute;
        right: 16px;
        top: 12px
    }

    /*
	.recruit_info-box .txt-box .button-more:after {
		border-style: solid;
		border-width: 0 40px 40px 0;
		border-color: transparent transparent #209DF4 transparent;
	}
*/
}

@media screen and (min-width: 1200px) {
    .recruit_info-box .photo-box {
        width: 472px;
        padding: 0;
    }

    .recruit_info-box .txt-box {
        width: calc(100% - 472px);
    }
}

@media screen and (min-width: 1366px) {
    .recruit_info-box .photo-box {
        width: 414px;
    }

    .recruit_info-box .txt-box {
        width: calc(100% - 414px);
    }
}

@media screen and (max-width: 768px) {
    .recruit_info-box .photo-box01 {
        padding-top: 60%;
        background-image: url(../img/indexImg01.jpg);
        background-size: cover;
        background-position: center;
        border-radius: 30px 30px 0 0;
    }

    .recruit_info-box .photo-box02 {
        padding-top: 60%;
        background-image: url(../img/indexImg03.jpg);
        background-size: cover;
        background-position: center;
        border-radius: 30px 30px 0 0;
    }

    .recruit_info-box .photo-box03 {
        padding-top: 60%;
        background-image: url(../img/indexImg04.jpg);
        background-size: cover;
        background-position: center;
        border-radius: 30px 30px 0 0;
    }

    .recruit_info-box .photo-box04 {
        padding-top: 60%;
        background-image: url(../img/indexImg06.jpg);
        background-size: cover;
        background-position: center;
        border-radius: 30px 30px 0 0;
    }


    .recruit_info-box .button-more {
        position: absolute;
        width: 100px;
        height: 100px;
        color: #FFF;
        font-weight: bold;
        text-align: center;
        line-height: 36px;
        display: inline-block;
        text-decoration: none;
        background-image: url(../img/mainBtn_top.png);
        background-repeat: no-repeat;
        background-size: cover;
        right: -5px;
        bottom: -45px;
    }

    .text-right p {
        line-height: 1.5;
        position: absolute;
        top: 45%;
        left: 50%;
        -ms-transform: translate(-50%, -45%);
        -webkit-transform: translate(-50%, -45%);
        transform: translate(-50%, -45%);
    }

    .text-right p:after {
        content: "\f105";
        font-family: FontAwesome;
        position: absolute;
        left: 48%;
        top: 85%;
        font-size: 2rem;
    }
}

@media screen and (max-width: 767px) {
    .recruit_info-box .txt-box h4 {
        line-height: 1.6;
    }
}

@media screen and (max-width: 360px) {
    .recruit_info-box .button-more {
        right: -5px;
        bottom: -60px;
    }
}

@media screen and (max-width: 320px) {
    .recruit_info-box .button-more {
        right: -5px;
        bottom: -45px;
    }
}


/** .no-top #introduction **/
.no-top #introduction {
    /* background: url("../img/bg_intro_rec.jpg") no-repeat; */
    background-size: 100%;
    position: relative;
    /* z-index: -2; */
}

.no-top #introduction .container {
    margin-bottom: 90px;
}

.no-top #introduction .container.bg_white {
    max-width: 1200px;
    margin: auto;
    padding: 16px;
    width: 90%;
    text-align: center;
}

.no-top #introduction h2 span {
    font-size: 3.2rem;
    text-align: center;
    color: #21ADE5;
    display: inline;
}

.no-top #introduction .container.bg_white .textbox h3 {
    background: #c9ad81;
    color: #fff;
    text-align: center;
    padding: 12px 20px;
    position: relative;
    border-radius: 20px;
    display: inline-block;
    font-size: 2.2rem;
}

.no-top #introduction .container.bg_white .textbox h3:after {
    border: solid transparent;
    content: '';
    height: 0;
    width: 0;
    pointer-events: none;
    position: absolute;
    border-color: rgba(255, 239, 2, 0);
    border-top-width: 15px;
    border-bottom-width: 10px;
    border-left-width: 10px;
    border-right-width: 10px;
    margin-left: -15px;
    border-top-color: #c9ad81;
    top: 100%;
    left: 50%;
}

.no-top #introduction .container.bg_white .textLead {
    font-size: 1.6em;
    text-align: center;
    letter-spacing: 0.2em;
    line-height: 1.8;
}

.no-top #introduction .container.bg_white .textLead strong {
    color: #c9ad81;
    font-size: 1.2em;
}

.no-top #introduction .container.bg_white .pointTable {
    display: flex;
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
}

.no-top #introduction .container .text-box {
    width: 90%;
    margin: auto;
}

.no-top #introduction .container .absolute_area {
    padding: 20px 0 42px;
}

.no-top #introduction .container .absolute_area .circle03,
.no-top #introduction .container .absolute_area .circle04 {
    display: none;
}

.no-top #introduction .container .text-box h2 {
    width: 100%;
    font-size: 2.1em;
    /*		-webkit-text-stroke: 0.5px #FFF;*/
    font-weight: 500;
    text-align: center;
}

.no-top #introduction .container .text-box h2:before {
    display: none;
}

.no-top #introduction .container.bg_white .d-block {
    display: block;
    text-align: center;
    padding: 0 24px;
}

.no-top #introduction .container.bg_white .d-inlineBlock {
    display: flex;
}

.no-top #introduction .container.bg_white .pointTable dt img {
    max-width: 200px;
    margin: 0 auto;
    padding: 10px;
}

.no-top #introduction .container.bg_white .pointTable dd {
    display: flex;
    flex-flow: column;
    font-size: 2.4em;
    line-height: 1.2;
    margin: 0;
}

.no-top #introduction .container.bg_white .pointTable dd span {
    font-size: 0.58em;
    color: #e7bfbf;
    display: block;
}

.no-top #introduction .container.bg_white .pointTable dd span strong {
    font-size: 1.2em;
}

.no-top #introduction .back_pastel04 {
    top: 300px;
    right: calc(50% - 730px);
}

.no-top #introduction .back_pastel05 {
    bottom: 0px;
    left: -180px;
}

@media screen and (min-width: 769px) {
    .no-top #introduction .container .text-box {
        /* width: calc(85% - 100px); */
        margin: 0 auto 120px;
        border: 1px solid #21ADE5;
        border-radius: 30px;
        background: rgba(255, 255, 255, 0.6);
        /* background-image: url(../img/text-box_back01.jpg);
		background-size: cover; */
        padding: 50px;
        text-align: center;
    }

    .no-top #introduction .container .text-box h2 {
        width: 100%;
        max-width: 800px;
        font-size: 3.0rem;
        letter-spacing: 0.1em;
    }

    .no-top #introduction .container .text-box h2:before {
        display: none;
    }

    .no-top #introduction .container .absolute_area {
        position: absolute;
        top: -80px;
        width: 100%;
        height: 400px;
        z-index: -1;
        justify-content: space-between;
        padding: 0;
    }

    .no-top #introduction .container .absolute_area .circle02 {
        width: 200px;
        position: absolute;
        left: 40px;
        top: 40px;
        display: block;
    }

    .no-top #introduction .container .absolute_area .circle03 {
        position: absolute;
        left: 320px;
        top: 320px;
    }

    .no-top #introduction .container .absolute_area .circle04 {
        position: absolute;
        right: 320px;
        top: 0;
        display: block;
    }

    .no-top #introduction .container .absolute_area .circle05 {
        width: 200px;
        position: absolute;
        right: 40px;
        top: 40px;
    }

    .no-top #introduction .container .absolute_area .circle06 {
        align-self: flex-end;
        padding-bottom: 24px;
    }

    .no-top #introduction .container.bg_white .pointTable {
        display: block;
        flex-flow: row;
        justify-content: flex-start;
        align-items: center;
        width: calc(100% / 3);
        background: #fafafa;
        margin: 0 2% 0 0;
        border-radius: 20px;
    }

    .no-top #introduction .container.bg_white .pointTable:last-child {
        margin-right: 0;
    }

    .no-top #introduction .container.bg_white .pointTable2 {
        display: block;
        flex-flow: row;
        justify-content: flex-start;
        align-items: center;
        width: 50%;
        background: #fafafa;
        margin: 0 auto;
        border-radius: 20px;
    }

    .no-top #introduction .container.bg_white .pointTable2:last-child {
        margin: 0 auto;
    }

    .no-top #introduction .container.bg_white .pointTable dt,
    .no-top #introduction .container.bg_white .pointTable dd {
        display: flex;
        justify-content: center;
        padding: 20px;
    }

    .no-top #introduction .container.bg_white .pointTable dd {
        font-size: 1.6em;
        padding: 20px;
    }

    .no-top #introduction .container.bg_white .pointTable dd span {
        font-size: 1.8rem;
        color: #e7bfbf;
        display: block;
        padding-bottom: 5px;
    }
}

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

    /* .no-top #introduction .container:nth-child(1) {
        margin-bottom: -100px;
    } */
    .no-top #introduction .container {
        margin-bottom: 40px;
    }

    .no-top #introduction .container .text-box {
        width: auto;
        margin: 0 auto 120px;
        border: 1px solid #e7bfbf;
        border-radius: 30px;
        background: rgba(255, 255, 255, 0.6);
        padding: 50px;
        text-align: center;
    }

    .no-top #introduction .container .text-box p {
        line-height: 1.9;
    }

    .no-top #introduction .container.bg_white .pointTable {
        display: block;
        flex-flow: row;
        justify-content: flex-start;
        align-items: center;
        width: calc(100% / 3);
        background: #fafafa;
        margin: 0 2% 0 0;
        border-radius: 20px;
    }

    .no-top #introduction .container.bg_white .pointTable2 {
        display: block;
        flex-flow: row;
        justify-content: flex-start;
        align-items: center;
        width: 70%;
        background: #fafafa;
        margin: 0 auto;
        border-radius: 20px;
    }

    .no-top #introduction .container.bg_white .d-block {
        display: block;
        text-align: center;
        padding: 0;
    }

    .no-top #introduction .container.bg_white .pointTable dd {
        font-size: 1.6em;
        padding: 20px;
    }

    .no-top #introduction .container.bg_white .pointTable dd span {
        font-size: 1.8rem;
        color: #e7bfbf;
        display: block;
        padding-bottom: 5px;
    }

    .no-top #introduction .container.bg_white .pointTable dt img {
        max-width: 200px;
        margin: 0 auto;
        width: 80%;
    }

    .no-top #introduction .back_pastel04 {
        top: 350px;
        right: calc(50% - 850px);
    }
}

@media screen and (max-width: 767px) {
    .no-top #introduction .container.bg_white .d-inlineBlock {
        display: block;
    }

    .no-top #introduction .container.bg_white .pointTable {
        display: block;
        flex-flow: row;
        justify-content: flex-start;
        align-items: center;
        width: 100%;
        background: #fafafa;
        margin: 0 0 20px 0;
        border-radius: 20px;
    }

    .no-top #introduction .container.bg_white .pointTable dt img {
        padding-top: 20px;
    }

    .no-top #introduction .container .text-box {
        padding: 30px 20px;
    }

    .no-top #introduction .container .text-box h2 {
        line-height: 1.6;
    }

    .no-top #introduction .back_pastel04 {
        top: 750px;
        right: calc(50% - 750px);
    }
}


/** detail #work **/

.no-top #work {
    padding: 80px 0 90px;
}

.no-top #contents #work .container {
    max-width: 1200px;
}

.no-top #work .work-wrapper .wrok-box {
    display: flex;
    margin-bottom: 80px;
    flex-flow: wrap;
    align-items: flex-end;
}

.no-top #work .work-wrapper > .wrok-box:nth-of-type(2n) {
    flex-flow: row-reverse wrap;
}

.no-top #work .work-wrapper .wrok-box .work-img {
    width: 100%;
}

.no-top #work .work-wrapper .wrok-box .work-img img {
    border-radius: 20px 0 0 20px;
}

.no-top #work .work-wrapper .wrok-box .work-img2 img {
    border-radius: 0 20px 20px 0;
}

.no-top #work .work-wrapper .wrok-box .work-txt {
    width: 100%;
    padding: 24px;
    background: #F2FFED;
    border-radius: 0 20px 20px 0;
}

.no-top #work .work-wrapper .wrok-box .work-txt2 {
    width: 100%;
    padding: 24px;
    background: #fafafa;
    border-radius: 20px 0 0 20px;
}

.no-top #work .work-wrapper .wrok-box .work-txt h3 {
    color: #8EC31F;
    margin: 0 0 24px;
}

.no-top #work .back_pastel04 {
    top: 970px;
    right: calc(50% - 730px);
}

.no-top #work .back_pastel05 {
    bottom: -450px;
    left: -180px;
}


@media screen and (min-width: 769px) {
    .no-top #work {
        padding: 120px 0 120px;
    }

    .no-top #work .work-wrapper .wrok-box .work-img,
    .no-top #work .work-wrapper .wrok-box .work-txt {
        width: 50%;
    }

    .no-top #work .work-wrapper .wrok-box .work-txt {
        padding: 38px;
    }

    .no-top #work .work-wrapper .wrok-box .work-txt p {
        margin-left: 0;
    }

    .no-top #work .work-wrapper > .wrok-box:nth-of-type(2n) .work-txt p {
        margin: 0 24px 0 0;
    }
}

@media screen and (max-width: 768px) {
    .no-top #introduction h2 span {
    width: 100%;
        font-size: 4vw;}
    .no-top #work .work-wrapper .wrok-box .work-img img {
        border-radius: 20px 20px 0 0;
    }

    .no-top #work .work-wrapper .wrok-box .work-txt {
        width: 100%;
        padding: 24px;
        background: #fafafa;
        border-radius: 0 0 20px 20px;
    }

    .back_pastel01 {
        top: -10px;
        left: calc(60% - 730px);
    }

    .back_pastel02 {
        top: 710px;
        left: calc(60% - 730px);
    }

    .back_pastel03 {
        top: 1355px;
        right: calc(50% - 730px);
    }

    .no-top #work .back_pastel04 {
        top: 2470px;
        right: calc(50% - 730px);
    }

    .no-top #work .back_pastel05 {
        bottom: -1550px;
        left: -180px;
    }
}

/** detail #career **/
.no-top #career img {
    margin: auto;
}


/** detail #interview **/

.no-top #interview {
    padding: 120px 0 0;

}

.no-top #interview .container.titBlock {
    width: 90%;
}

.no-top #interview .main-title {
    position: relative;
    text-align: center;
}

.no-top #interview .main-title .textLead {
    font-size: 1.6em;
    line-height: 1.6;
    text-align: left;
    padding-left: 5vw;
}

.no-top #interview .main-title .figure-box {
    width: 90%;
    margin: auto;
}

.no-top #interview .main-title .prof {
    background-color: #FDD122;
    color: #333;
    padding: 0 24px 24px;
    font-size: 3.2rem;
    margin: 0;
    display: block;
    line-height: 1.2;
    font-weight: 400;
    position: relative;
    margin: auto;
}

.no-top #interview .main-title .prof span {
    font-size: 1.6rem;
}

.no-top #interview .qa-wrapper {
    background: #FFF9E3;

}

.no-top #interview .qa-wrapper .container {
    padding: 80px 0;
    width: 90%;
}

.no-top #interview .qa-wrapper .qa-box {
    margin: 0 0 40px;
    width: 100%;
}

.no-top #interview .qa-wrapper .qa-box .title {
    color: #F8B62B;
    font-size: 2.25em;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    line-height: 1.2;
}

.no-top #interview .qa-wrapper .qa-box .inner {
    display: flex;
    justify-content: flex-start;
    flex-flow: column;
    margin-bottom: 40px;
    align-items: flex-start;
    margin-bottom: 40px;
    background-color: rgba(255, 255, 255, 0.8);
    padding: 24px;
    position: relative;
    width: 100% !important;
}

.no-top #interview .qa-wrapper .qa-box .inner:before {
    content: "";
    position: absolute;
    width: 18%;
    height: calc(100% - 10px);
    display: block;
    border: 7px solid #F8B62B;
    border-right: none;
    border-bottom: none;
    top: 0;
    left: 0;
}

.no-top #interview .qa-wrapper .qa-box .inner:after {
    content: "";
    position: absolute;
    width: 15%;
    height: calc(100% - 10px);
    display: block;
    border: 10px solid #F8B62B;
    border-left: none;
    border-top: none;
    bottom: 0;
    right: 0;
}

.no-top #interview .qa-wrapper .qa-box .inner dl {
    margin: 0;
}

.no-top #interview .qa-wrapper .qa-box .inner dt {
    color: #F8B62B;
    font-weight: bold;
    font-size: 1.25em;
    margin-bottom: 1em;
}

.no-top #interview .qa-wrapper .qa-box .inner dd {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    margin: 0;
    padding: 0;
}


.no-top #interview .qa-wrapper > .qa-box:nth-of-type(2n) {
    display: flex;
    justify-content: flex-start;
    flex-flow: column;
    margin-bottom: 40px;
    align-items: flex-end;
    margin-bottom: 40px;
}


.no-top #interview .qa-wrapper .qa-box .q-box .title {
    font-family: 'Noto Sans', sans-serif;
    font-size: 5.6rem;
    font-weight: 400;
    font-style: italic;
    color: #A3C4E4;
    line-height: 1.2;
}

.no-top #interview .back_pastel02 {
    top: 70px;
    left: calc(60% - 930px);
}

@media screen and (min-width: 769px) {
    .no-top #contents #interview .container {
        max-width: 1200px;
        margin-bottom: 40px;
    }

    .no-top #interview .container.titBlock .main-title {
        display: flex;
        position: relative;
        align-items: center;
        justify-content: space-between;
    }

    .no-top #interview .container.titBlock .main-title.reverse {
        flex-flow: wrap row-reverse;
        justify-content: flex-end;
    }

    .no-top #interview .main-title .textLead {
        text-align: left;
        margin-bottom: 2em;
        width: calc(100% - 280px);
        font-size: 2.0em;
        padding-left: 50px;
    }

    .no-top #interview .main-title .figure-box {
        width: 300px;
        margin: 0;
        z-index: 1;
        position: relative;
    }

    .no-top #interview .container.titBlock .main-title.reverse .figure-box {
        width: 400px;
    }

    .no-top #interview .main-title.reverse .textLead {
        position: absolute;
        left: 280px;
        top: calc(50% - 6em);
    }

    .no-top #interview .main-title .figure-box img {
        width: 100%;
        border-radius: 30px;
    }

    .no-top #interview .main-title .prof {
        background-color: #FDD122;
        color: #333;
        padding: 0 60px 16px 24px;
        font-size: 4.0rem;
        margin: 0;
        display: inline-block;
        line-height: 1.2;
        font-weight: 400;
        position: absolute;
        right: 264px;
        bottom: 0;
        right: auto;
    }

    .no-top #interview .main-title.reverse .prof {
        background-color: #c9ad81;
        color: #FFF;
        padding: 0 24px 16px 60px;
        font-size: 4.0rem;
        margin: 0;
        display: inline-block;
        line-height: 1.2;
        font-weight: 400;
        position: absolute;
        left: 300px;
        right: auto;
        bottom: 0;
    }

    .no-top #interview .main-title .prof:before {
        content: "";
        display: block;
        position: absolute;
        right: 100%;
        top: 0;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 0 112px 80px;
        border-color: transparent transparent #FDD122 transparent;
    }

    .no-top #interview .main-title.reverse .prof:before {
        content: "";
        display: block;
        position: absolute;
        left: 100%;
        right: auto;
        top: 0;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 80px 112px 0;
        border-color: transparent transparent #c9ad81 transparent;
    }

    .no-top #interview .main-title .prof span {
        font-size: 1.8rem;
    }

    .no-top #interview .qa-wrapper .container {
        display: flex;
        justify-content: space-between;
        flex-flow: wrap;
    }

    .no-top #interview .qa-wrapper .qa-box {
        margin: 0 0 64px 0;
    }

    .no-top #interview .qa-wrapper .qa-box.photoBox {
        position: relative;
    }

    .no-top #interview .qa-wrapper .qa-box.photoBox .inner {
        width: 60% !important;
    }

    .no-top #interview .qa-wrapper .qa-box.photoBox.reverse .inner {
        width: 60% !important;
        margin-left: 40%;
    }

    .no-top #interview .qa-wrapper .qa-box.photoBox.reverse .title {
        margin-left: 40%;
    }

    .no-top #interview .qa-wrapper .qa-box.photoBox img {
        position: absolute;
        z-index: 1;
        width: 42%;
        right: 0;
        top: 0;
    }

    .no-top #interview .qa-wrapper .qa-box.photoBox.reverse img {
        position: absolute;
        z-index: 1;
        width: 42%;
        left: 0;
        right: auto;
        top: -60px;
    }

    .no-top #interview .qa-wrapper .qa-box.harf {
        width: 48%;
    }


}

@media screen and (min-width: 1025px) {
    .no-top #interview .main-title .textLead {
        text-align: left;
        margin-bottom: 1em;
        width: calc(100% - 40%);
        font-size: 2.5rem;
        padding-left: 0px;
        line-height: 2.0;
    }

    .no-top #interview .main-title.reverse .textLead {
        position: absolute;
        left: 380px;
        top: calc(50% - 6em);
    }

    .no-top #interview .main-title .figure-box {
        width: 100%;
        margin: 0;
        z-index: 1;
        position: relative;
    }

    .no-top #interview .container.titBlock .main-title.reverse .figure-box {
        width: 560px;
    }

    .no-top #interview .main-title .prof {
        right: 364px;
    }

    .no-top #interview .main-title.reverse .prof {
        left: 400px;
        padding-left: 100px;
    }
}

@media screen and (max-width: 1024px) {
    .no-top #interview .main-title .textLead {
        width: calc(100% - 430px);
    }

    .no-top #interview .container.titBlock {
        width: 100%;
    }

    .no-top #interview .main-title .figure-box {
        width: auto;
        padding: 0 50px 0 0;
    }
}

@media screen and (max-width: 768px) {
    .no-top #interview {
        padding: 90px 0 0;
    }

    .no-top #interview .qa-wrapper .container {
        padding: 40px 0 90px;
    }

    .no-top #interview .main-title .textLead {
        width: 90%;
        margin: 0 auto 25px;
        padding-left: 0;
    }

    .no-top #interview .main-title .figure-box {
        width: auto;
        padding: 0;
    }
}

@media screen and (max-width: 539px) {
    .no-top #interview .main-title .textLead {
        width: 100%;
    }
}

/** detail #welfare **/

.no-top #welfare {
    padding: 25px 0 120px;
}

.no-top #contents #welfare .container {
    max-width: 1200px;
}

.no-top #welfare .container .d-flex {
    display: block;
}

.no-top #welfare .container .fBox {
    margin-bottom: 40px;
}

.no-top #welfare .container .fBox .photo-box img {
    max-width: 280px;
    margin: auto;
    width: 50%;
    height: auto;
}

.no-top #welfare .container .fBox .text-box {
    padding: 40px 15px 24px;
    background: #fafafa;
    text-align: center;
    margin-top: -24px;
    min-height: 170px;
}

.no-top #welfare .container .fBox .text-box h3 {
    text-align: center;
    color: #c9ad81;
    font-size: 2.0rem;
    margin-bottom: 0.5em;
}

.no-top #welfare .container .fBox .text-box h3 span {
    font-size: 1.7rem;
}

@media screen and (min-width: 769px) {
    .no-top #welfare {
        padding: 00px 0 120px;
    }

    .no-top #welfare .container .d-flex {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .no-top #welfare .container .d-flex.recruit04 {
        justify-content: center;
    }

    .no-top #welfare .container .fBox {
        width: calc(94% / 4);
        margin: 0 2% 25px 0;
    }

    .no-top #welfare .container .fBox2 {
        width: 50%;
        margin: 0 2% 25px 0;
    }

    .no-top #welfare .container .fBox:last-child {
        margin: 0;
    }

    .no-top #welfare .container .d-flex._col2 .fBox {
        width: 33%;
        margin: 2% 1%;
    }
}

@media screen and (max-width: 768px) {
    .no-top #welfare {
        padding: 25px 0 90px;
    }
}

/** detail #message **/

.no-top #message {
    position: relative;
}

.no-top #contents #message .container {
    max-width: 1200px;
}

.no-top #contents #message .row {
    /* background: #21ADE5; */
    background-image: url(../img/message_back01.jpg);
    background-size: cover;
    padding: 24px;
    border-radius: 20px;
}

.no-top #message .photoBox {
    margin-bottom: 20px;
}

.no-top #message .photoBox img {
    margin: auto;
    max-width: 100%;
}

.no-top #contents #message h3 {
    color: #333;
    font-size: 2.0rem;
    font-weight: bold;
}

.no-top #message p.name {
    text-align: right;
    font-size: 1.6rem;
}

.no-top #message ._list {
    display: inline-block;
}

.no-top #message .back_pastel01 {
    top: -110px;
    left: calc(60% - 930px);
}

.no-top #message .back_pastel02 {
    top: 300px;
    left: calc(60% - 1030px);
}

.no-top #message .back_pastel03 {
    top: 75px;
    right: calc(50% - 930px);
}

@media screen and (min-width: 769px) {
    .no-top #message .photoBox {
        margin-bottom: 0;
    }

    .no-top #contents #message h3 {
        color: #333;
        font-size: 2.4rem;
        margin-bottom: 15px;
        font-weight: bold;
    }

    .no-top #message p {
        margin-bottom: 10px;
    }

    .no-top #message p.name {
        text-align: right;
        font-size: 2.0rem;
    }
}

@media screen and (min-width: 768px) {
    .no-top #message ._list {
        line-height: 1.9;
    }
}

@media screen and (max-width: 768px) {
    .no-top #message {
        padding: 90px 0;
    }

    .no-top #message .back_pastel03 {
        top: 575px;
    }
}

/** detail #guideline **/

.no-top #guideline {
    padding: 120px 0;
}

.no-top #guideline .container table {
    width: 100%;
    max-width: 1024px;
    margin: auto;
}

.no-top #guideline .container table th span {
    display: block;
    background-color: #21ADE5;
    border-radius: 5px;
    margin-bottom: 8px;
    text-align: center;
    color: #fff;
}

.no-top #guideline .container table td p {
    font-size: 1.4rem;
}

@media screen and (max-width: 768px) {
    .no-top #guideline {
        padding: 90px 0;
    }

    .no-top #guideline .container table th {
        width: 120px;
    }
}

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

    .no-top #guideline .container table th,
    .no-top #guideline .container table td {
        display: block;
        width: 100%;
    }

    .no-top #guideline .container table th {
        border-bottom: none;
        padding-bottom: 0;
    }
}

@media screen and (min-width: 769px) {
    .no-top #guideline .container table th {
        width: 200px;
        vertical-align: top;
    }
}

/** detail #entry **/

.no-top #entry {
    padding: 120px 0;
}

.no-top #entry .container form {
    width: 100%;
    max-width: 800px;
    margin: auto;
}

.no-top #entry .container .CMS-FORM-GROUP {
    margin-bottom: 24px;
}

.no-top #entry .container .CMS-FORM-GROUP laber,
.no-top #entry .container .CMS-FORM-GROUP input {
    border-bottom: none;
    display: block;
    padding: 8px 0;
}

.no-top #entry .container .CMS-FORM-GROUP .CMS-FORM-INPUT-LABEL {
    margin-bottom: 16px;
}

.CMS-FORM-INPUT-LABEL:after,
.CMS-FORM-EMAIL-LABEL:after,
.CMS-FORM-SELECT-LABEL:after,
.CMS-FORM-NUMBER-LABEL:after {
    content: "必須";
    display: inline-block;
    font-size: 12px;
    color: #FFF;
    text-align: center;
    width: 56px;
    height: 28px;
    border-radius: 3px;
    background: #21ADE5;
    margin-left: 16px;
    line-height: 28px;
}

.no-top #entry .container .CMS-FORM-GROUP input {
    width: 100%;
    border: 1px solid #DDDDDD;
    outline: none;
    border-radius: 10px;
}

.no-top #entry .container .CMS-FORM-GROUP:last-child {
    margin-top: 40px;
    text-align: center;
}

.no-top #entry .container .CMS-FORM-GROUP input[type="submit"] {
    width: 80%;
    max-width: 720px;
    display: block;
    margin: auto;
    font-size: 2.0rem;
    padding: 1.6rem;
    background-color: #21ADE5;
    border-radius: 35px;
    border: none;
    color: #FFF;
}

@media screen and (max-width: 768px) {
    .no-top #entry {
        padding: 90px 0;
    }
}

/*****************
  privacy
************************/
.privacy .txt-wrapper {
    width: 88%;
    margin: 0 auto;
}

.privacy .txt-wrapper h3 {
    font-size: 2.3rem;
    color: #e7bfbf;
    margin-bottom: 10px;
}

.privacy .back_pastel01 {
    top: -10px;
    left: calc(60% - 730px);
}

.privacy .back_pastel02 {
    top: 500px;
    left: calc(60% - 930px);
}

.privacy .back_pastel03 {
    top: 955px;
    right: calc(50% - 930px);
}

.privacy .back_pastel04 {
    top: 1875px;
    right: calc(50% - 730px);
}

@media screen and (max-width: 768px) {
    #contents.privacy section {
        padding: 100px 0 50px !important;
    }

    #contents.privacy section p {
        line-height: 1.8;
    }
}

@media screen and (max-width: 480px) {
    .privacy section h2 strong {
        line-height: 1.2;
    }
}

/*****************
  thanks
************************/
.thanks {
    padding-top: 64px;
}

.thanks .text-lead {
    text-align: center;
    font-size: 2.0rem;
}

.thanks .button.button_back {
    max-width: 200px;
    width: 20%;
    font-size: 1.8rem;
    padding: 0 16px;
    margin: 0 12px;
    margin-bottom: 2.4rem;
    background-color: #c9ad81;
    height: 48px;
    line-height: 48px;
    color: #fff;
    position: relative;
    border-radius: 30px;
    font-weight: normal;
}

.thanks .button.button_back:before {
    content: "\f105";
    color: #fff;
    font-family: FontAwesome;
    position: absolute;
    left: 16px;
}

@media screen and (min-width: 769px) {
    .thanks {
        padding-top: 80px;
    }
}



/* adjust */
.topjob_stitle1 {
    max-width: 1200px;
    margin: 0 auto;
    margin-bottom: 10px;
    margin-top: 70px;
}

.topjob_stitle2 {
    border-left: 7px solid #e7bfbf;
    padding-left: 10px;
    text-align: left;
}

@media screen and (max-width: 768px) {
    .topjob_stitle1 {
        padding-left: 6vw;
        margin-top: 60px;
    }
}


.thanks .text-lead {
    margin-left: 15px;
    margin-right: 15px;
}

.thanks .button.button_back {
    width: 50%;
    font-size: 1.6rem;
}

@media screen and (min-width: 769px) {
    .thanks .button.button_back {
        width: 30%;
        font-size: 1.8rem;
    }
}

.thanks + .info-wrapper .tel-box a {
    font-size: 2.6rem !important;
}

@media screen and (min-width: 769px) {
    .thanks + .info-wrapper .tel-box a {
        font-size: 4.6rem !important;
    }
}


.slideshow {
    position: absolute;
    width: 80vw;
    /* height: 90vh; */
    height: 100%;
    overflow: hidden;
}

.slideshow-image {
    position: absolute;
    width: 100%;
    height: 100%;
    background: no-repeat 50% 50%;
    background-size: cover;
    -webkit-animation-name: kenburns;
    animation-name: kenburns;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;

    opacity: 1;
    transform: scale(1.2);
    object-fit: cover;
    margin-top: -30px;
    animation: slider-1 15s linear infinite;
}

.slideshow-image:nth-child(1) {

    z-index: 2;
    animation-delay: -2s;
}

.slideshow-image:nth-child(2) {

    z-index: 1;
    animation-delay: 3s;
}

.slideshow-image:nth-child(3) {

    z-index: 0;
    animation-delay: 8s;
}


@keyframes slider-1 {
    0% {
        opacity: 0;
        transform: scale(1.2);
    }

    4.16% {
        opacity: 1;
    }

    33.33% {
        opacity: 1;
    }

    41.66% {
        opacity: 0;
        transform: scale(1);
    }

    100% {
        opacity: 0;
    }
}



@-webkit-keyframes kenburns-1 {
    0% {
        opacity: 1;
        transform: scale(1.2);
    }

    1.5625% {
        opacity: 1;
    }

    23.4375% {
        opacity: 1;
    }

    26.5625% {
        opacity: 0;
        transform: scale(1);
    }

    100% {
        opacity: 0;
        transform: scale(1.2);
    }

    98.4375% {
        opacity: 0;
        transform: scale(1.2117647059);
    }

    100% {
        opacity: 1;
    }
}

@keyframes kenburns-1 {
    0% {
        opacity: 1;
        transform: scale(1.2);
    }

    1.5625% {
        opacity: 1;
    }

    23.4375% {
        opacity: 1;
    }

    26.5625% {
        opacity: 0;
        transform: scale(1);
    }

    100% {
        opacity: 0;
        transform: scale(1.2);
    }

    98.4375% {
        opacity: 0;
        transform: scale(1.2117647059);
    }

    100% {
        opacity: 1;
    }
}

@-webkit-keyframes kenburns-2 {
    23.4375% {
        opacity: 1;
        transform: scale(1.2);
    }

    26.5625% {
        opacity: 1;
    }

    48.4375% {
        opacity: 1;
    }

    51.5625% {
        opacity: 0;
        transform: scale(1);
    }

    100% {
        opacity: 0;
        transform: scale(1.2);
    }
}

@keyframes kenburns-2 {
    23.4375% {
        opacity: 1;
        transform: scale(1.2);
    }

    26.5625% {
        opacity: 1;
    }

    48.4375% {
        opacity: 1;
    }

    51.5625% {
        opacity: 0;
        transform: scale(1);
    }

    100% {
        opacity: 0;
        transform: scale(1.2);
    }
}

@-webkit-keyframes kenburns-3 {
    48.4375% {
        opacity: 1;
        transform: scale(1.2);
    }

    51.5625% {
        opacity: 1;
    }

    73.4375% {
        opacity: 1;
    }

    76.5625% {
        opacity: 0;
        transform: scale(1);
    }

    100% {
        opacity: 0;
        transform: scale(1.2);
    }
}

@keyframes kenburns-3 {
    48.4375% {
        opacity: 1;
        transform: scale(1.2);
    }

    51.5625% {
        opacity: 1;
    }

    73.4375% {
        opacity: 1;
    }

    76.5625% {
        opacity: 0;
        transform: scale(1);
    }

    100% {
        opacity: 0;
        transform: scale(1.2);
    }
}

@-webkit-keyframes kenburns-4 {
    73.4375% {
        opacity: 1;
        transform: scale(1.2);
    }

    76.5625% {
        opacity: 1;
    }

    98.4375% {
        opacity: 1;
    }

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

@keyframes kenburns-4 {
    73.4375% {
        opacity: 1;
        transform: scale(1.2);
    }

    76.5625% {
        opacity: 1;
    }

    98.4375% {
        opacity: 1;
    }

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


.eachTextAnime {
    position: absolute;
    top: 80%;
    left: 5%;
    color: #fff;
    font-size: 2em;
    -webkit-font-smoothing: auto;
    /* font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",sans-serif; */
    font-size: 2.5vw;
    letter-spacing: .2em;
    text-shadow: 2px 2px 10px #000;
    z-index: 4;
}

.kv_subtxt {
    position: absolute;
    top: 70%;
    left: 5%;
    color: #fff;
    font-size: 1em;
    z-index: 9999;
    -webkit-font-smoothing: auto;
    /* font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",sans-serif; */
    font-size: 1.5vw;
    margin-top: 80px;
    text-align: left;
    letter-spacing: .2em;
    text-shadow: 2px 2px 10px #000;
}

.eachTextAnime span {
    opacity: 0;
}

.eachTextAnime.appeartext span {

    animation: text_anime_on 1s ease-out forwards;
}


@keyframes text_anime_on {
    0% {
        opacity: 0;
    }

    50% {
        opacity: 0;
    }


    100% {
        opacity: 1;
    }
}

@media screen and (max-width:640px) {
    .wrap {
        width: 100%;
    }

    .text-move {
        font-size: 30px;
    }

    .slideshow {
        margin-top: 5px;
        width: 90vw;
border-radius: 50px;
    }

}
    .slideshow {
border-radius: 30px;
    }
.bw {
    font-weight: bold;
}

.top_logo_img {
    display: flex;
    max-width: 250px;
}

.top_logo_img img {
    height: 5vw;
    max-height: 60px;
    max-width: none;
}

@media screen and (max-width:1000px) {
    .top_logo_img {
        max-width: 100%;
    }

    .top_logo_img img {
        height: 8.5vw;
        max-height: 60px;
        max-width: none;
    }

    .eachTextAnime {
        position: absolute;
        top: 80%;
        width: 55%;
        left: -10px;

    }

}

@media screen and (max-width:640px) {
    .top_logo_img {
        max-width: 100%;
    }

    .top_logo_img img {
        height: 8.5vw;
        max-height: 60px;
        max-width: none;
    }

    .eachTextAnime {
        position: absolute;
        top: 100%;
        width: 55%;
        left: -10px;
        z-index: 4;
    }

}

.top_txt_bg {
    background: #fff;
    padding: 5px;
    margin-bottom: 5px;
    color: #e7bfbf;
    text-shadow: none;
}

.top_txt_font {
    font-size: 3.2rem;
}

.top_balloon {
    margin-top: 10px;
    display: flex;
}



@media screen and (min-width:769px) {
    .top_txt_font {
        font-size: 2.2rem;
    }

    .top_balloon li {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 110px;
        height: 110px;
        border-radius: 50%;
        -moz-border-radius: 50%;
        -webkit-border-radius: 50%;
        background: #fff;
        margin-right: 10px;
        background: #21ADE5;
        font-size: 1.5rem;
        font-weight: bold;
        color: #fff;
        line-height: 1.3;
        text-align: center;
    }

    #mainvisual {
        /* width: 100%; */
        padding: 100px 40px 0 40px;
        position: relative;
    }
}

@media screen and (min-width:1200px) {
    .top_txt_font {
        font-size: 3.2rem;
    }

    .top_balloon li {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 180px;
        height: 180px;
        border-radius: 50%;
        -moz-border-radius: 50%;
        -webkit-border-radius: 50%;
        background: #fff;
        margin-right: 10px;
        background: #21ADE5;
        font-size: 2.5rem;
        font-weight: bold;
        color: #fff;
        line-height: 1.3;
        text-align: center;
    }
}

@media screen and (max-width:769px) {
    .top_txt_bg {
        background: #fff;
        padding: 5px;
        margin-bottom: 5px;
        color: #e7bfbf;
        text-shadow: none;
    }

    .top_txt_font {
        font-size: 2rem;
    }

    .top_balloon {
        margin-top: 10px;
        display: flex;
    }

    .top_balloon li {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 25vw;
        height: 25vw;
        border-radius: 50%;
        -moz-border-radius: 50%;
        -webkit-border-radius: 50%;
        background: #fff;
        margin-right: 10px;
        background: #21ADE5;
        font-size: 1.5rem;
        font-weight: bold;
        color: #fff;
        text-align: center;
    }
}

@media screen and (max-width:400px) {
    .top_txt_bg {
        background: #fff;
        padding: 5px;
        margin-bottom: 5px;
        color: #e7bfbf;
        text-shadow: none;
    }

    .top_txt_font {
        font-size: 1.5rem;
    }

    .top_balloon {
        margin-top: 10px;
        display: flex;
    }

    .top_balloon li {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 25vw;
        height: 25vw;
        border-radius: 50%;
        -moz-border-radius: 50%;
        -webkit-border-radius: 50%;
        background: #fff;
        margin-right: 10px;
        background: #21ADE5;
        font-size: 1.2rem;
        font-weight: bold;
        color: #fff;
        text-align: center;
    }
}

.clearfix::after {
    content: "";
    clear: both;
    display: block;
}

.top_color {
    color: #8EC31F;
}


/* ------------------------------
sns
------------------------------ */
#social_share {
    width: 135px;
    height: 30px;
    margin: 0 auto 30px auto;
}

#social_share ul {
    display: flex;
}

#social_share li:not(:first-child) {
    margin-left: 5px;
}

#social_share li a {
    background-repeat: no-repeat;
    background-position: center center;
    cursor: pointer;
    display: block;
    height: 30px;
    overflow: hidden;
    text-indent: -999px;
    width: 30px;
}

#social_share .line a {
    background-image: url("../img/social_line.png");
    text-decoration: none;
    background-size: 30px;
}

#social_share .facebook a {
    background-image: url("../img/social_facebook.png");
    text-decoration: none;
    background-size: 30px;
}

#social_share .twitter a {
    background-image: url("../img/social_twitter.png");
    text-decoration: none;
    background-size: 30px;
}

#social_share .hatena a {
    background-image: url("../img/social_hatena.png");
    text-decoration: none;
    background-size: 30px;
}

/*topページSNS埋め込み*/

.top_sns_share {
    text-align: center;
    display: flex;
    max-width: 980px;
    margin: 100px auto;
}

.top_sns_share_list {
    width: 30%;
    height: 500px;
    margin: auto;
    vertical-align: top;
}

@media screen and (max-width: 767px) {
    .top_sns_share_list {
        width: 100%;
    }
}

.top_sns_share h2 {
    margin-bottom: 20px;
}

.top_sns_share_list-insta {
    width: 30%;
    margin: auto;
    vertical-align: top;
}


@media screen and (max-width: 767px) {
    .top_sns_share {
        display: block;
        margin: auto;
    }

    .twitter-timeline {
        margin: 0 auto;
    }

    .top_sns_share_list {
        margin-bottom: 40px;
    }

    .top_sns_share_list-insta {
        width: 100%;
        text-align: center;
    }

    .top_sns_share h2 {
        margin: auto;
        margin-bottom: 20px;
    }

    .top_sns_share_list-insta img {
        width: 60%;
        margin: auto;
    }
}

/*topページSNS埋め込み*/
