/* ========================================================================== Foundation ========================================================================== */
/* Reset  ----------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; font-weight: normal; vertical-align: baseline; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

audio, canvas, video { display: inline-block; max-width: 100%; }

html { overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; scroll-behavior: smooth;}

ul, ol { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }

a:focus { outline: none; }

ins { text-decoration: none; }

mark { font-style: italic; font-weight: bold; }

del { text-decoration: line-through; }

abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }

table { border-collapse: collapse; border-spacing: 0; width: 100%; }

hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }

button, input, select, textarea { outline: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; font-size: 16px; }

input, textarea { background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0)); -webkit-appearance: none; border-radius: 0; /* Removing the inner shadow, rounded corners on iOS inputs */ }

input[type="checkbox"] { -webkit-appearance: checkbox; }

input[type="radio"] { -webkit-appearance: radio; }

button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }

img { -ms-interpolation-mode: bicubic; }

/* clearfix */
.clearfix:after { content: "."; display: block; clear: both; height: 0; font-size: 0.1em; line-height: 0; visibility: hidden; overflow: hidden; }

.clearfix { display: inline-block; }

/* exlude MacIE5 \*/
* html .clearfix { height: 1%; }

.clearfix { display: block; }

/* end MacIE5 */
/* Base ----------------------------------------------------------------- */
body {
    color: #333;
    line-height: 2;
    -webkit-font-smoothing: antialiased;
    font-size: calc(16 / 1920 * 100vw);
font-family: "Hiragino Kaku Gothic Pro", "Hiragino Kaku Gothic ProN", "SF Pro JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, "Noto Sans CJK JP", "Roboto", Meiryo, "Segoe UI", Verdana, sans-serif;
    letter-spacing: 0.02em;
  position: relative;
  z-index: 1;
}


a {
    text-decoration: none;
    transition: all 0.3s ease 0s;
}

b, strong { font-weight: 700; }

big { font-size: larger; }

small { font-size: 80%; }

sub { vertical-align: sub; font-size: smaller; }

sup { vertical-align: super; font-size: smaller; }

i, cite, em, var, address, dfn { font-style: italic; }

tt, code, kbd, samp { font-family: monospace; }

u, ins { text-decoration: underline; }

img {
    vertical-align: bottom;
    width: 100%;
    height: auto;
}

input { border: 0; margin: 0; padding: 0; }

select { background: none transparent; border: 0; border-radius: 0; margin: 0; padding: 0; -moz-appearance: none; -webkit-appearance: none; appearance: none; }

/* for IE */
select::-ms-expand { display: none; }

a, a:before, a:after, input { -moz-transition-property: background-color, color; -moz-transition-duration: 0.2s; -moz-transition-timing-function: ease; -o-transition-property: background-color, color; -o-transition-duration: 0.2s; -o-transition-timing-function: ease; -webkit-transition-property: background-color, color; -webkit-transition-duration: 0.2s; -webkit-transition-timing-function: ease; transition-property: background-color, color; transition-duration: 0.2s; transition-timing-function: ease; }

/* infinite scroll */
#infscr-loading { color: #525252; font-size: 14px; text-align: center; width: 100%; }
#infscr-loading img { margin-right: 8px; vertical-align: middle; }
#infscr-loading div { display: inline; }


/**************************
フォント調整
**********************************************************************************/

@media (min-width: 1401px) and (max-width: 1599px){
	body {
		font-size: calc(16 / 1599 * 100vw);}
	}
	
	@media (min-width: 1200px) and (max-width: 1400px){
	body {
		font-size: calc(16 / 1400 * 100vw);}
	}
	
	@media (min-width: 1001px) and (max-width: 1199px){
	body {
		font-size: calc(16 / 1199 * 100vw);}
	}
	
	@media (min-width: 768px) and (max-width: 1000px){
	body {
		font-size: calc(15 / 1000 * 100vw);}
	}
	@media only screen and (max-width: 767px) {
		body {
			font-size: 3.6vw;}
}




/*  header */
#js-header {
    height: 120px;
    line-height: 120px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 999;
    width: 100%;
}
.l-header__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
    width: 100%;
    height: 100%;
}
.header_img {
    line-height: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -ms-grid-row-align: center;
    align-items: center;
    overflow: hidden;
    word-wrap: break-word;
    width: 27%;
    position: relative;
    margin: 0 5px;
}




/*========= header 上部固定させるためのCSS ===============*/
#js-header.fixed {
    position: fixed;
    z-index: 999;
    top: 0;
    left: 0;
    animation: DownAnime 0.5s forwards;
    box-shadow: 0 0 15px #ebebeb;
}

@keyframes DownAnime{
  from {
  	opacity: 0;
	transform: translateY(-100px);
  }
  to {
  	opacity: 1;
	transform: translateY(0);
  }
}


#js-header.fixed .p-global-nav li a {
    color: #000;
    text-shadow: unset;
}


#js-header.fixed .contact_btn a
{background: rgb(235,228,205);
background: -moz-linear-gradient(90deg, rgba(235,228,205,1) 0%, rgba(56,176,185,1) 100%);
background: -webkit-linear-gradient(90deg, rgba(235,228,205,1) 0%, rgba(56,176,185,1) 100%);
background: linear-gradient(90deg, rgba(235,228,205,1) 0%, rgba(56,176,185,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ebe4cd",endColorstr="#38b0b9",GradientType=1);}


#js-header.fixed .contact_btn a:hover {
background: rgb(229,214,166);
background: -moz-linear-gradient(90deg, rgba(229,214,166,1) 0%, rgba(204,138,132,1) 100%);
background: -webkit-linear-gradient(90deg, rgba(229,214,166,1) 0%, rgba(204,138,132,1) 100%);
background: linear-gradient(90deg, rgba(229,214,166,1) 0%, rgba(204,138,132,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#e5d6a6",endColorstr="#cc8a84",GradientType=1);
	color:#fff;
}





/**********************/


/* header_logo */
.header_logo {
    display: block;
    max-width: 400px;
    padding: 0 0 0 30px;
    width: 40%;
    position: relative;
}

.header_logo a {
    position: relative;
    display: block;
}
.header_logo img {
    vertical-align: middle;
    width: 100%;
    height: auto;
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.5)) drop-shadow(0 0 20px rgba(0, 0, 0, 0.4)) drop-shadow(0 0 30px rgba(0, 0, 0, 0.3));
}

.logo_whi {
    display: block;
}
.logo_bli {
    display: none;
}


/* END */


 /*** global nav*/

nav {
    width: auto;
    float: right;
	margin: 55px 105px 0 auto;
    line-height: 60px;
    height: 60px;
}

.p-global-nav {
	font-size: 95%;
	float: right;
}




.p-global-nav li {
    float: left;
    text-align: center;
	position:relative;
font-family: "Noto Sans JP", sans-serif;
}
.p-global-nav li.menu-item-has-children:hover > .sub-menu { top: 100%; }

.p-global-nav li sub-menu { top: 75%; left: 0; }
.p-global-nav a {
    padding-left: 20px;
    padding-right: 20px;
    display: block;
    letter-spacing: 1px;
    position: relative;
    transition: all 0.3s ease 0s;
    font-weight: 500;
    color: #fff;
    text-shadow: 0px 0px 12px #000000;
}
span.gr_spa {
    font-size: 85%;
    color: #c3c3c3;
    font-weight: 500;
}

.up_grmenu li a {
    display: block;
    letter-spacing: 1px;
    position: relative;
    transition: all 0.3s ease 0s;
    font-weight: 500;
    color: #433131;
    padding-left: 20px;
    padding-right: 20px;
}
.up_grmenu li a:hover {
    color: #917e7e;
}
.up_grmenu li {
    float: left;
    line-height: 3;
    font-size: 95%;
}
.up_grmenu ul {
    width: 100%;
    display: table;
    position: relative;
}
.up_grmenu {
    line-height: unset;
    position: absolute;
    margin: 10px 105px 0 auto;
    right: 0;
    background: #fff;
    border-radius: 100px;
    padding: 0 15px;
}




/* p-global-nav hover 設定-調整*/
@media only screen and (min-width: 768px) {
    .p-global-nav li a:after {
        position: absolute;
        content: '';
        bottom: 0px;
        left: 0;
        width: 0;
        height: 2px;
		background: #fff;
        transition: all 0.3s ease 0s;
        right: 0;
        margin: 0 auto;        
		box-shadow: 0 0 10px #000;
    }
    .p-global-nav li a:hover:after {
        width: 15%;
    }
.p-global-nav li a:hover {
    cursor: pointer;
}
}

/*submenu 着地点調整*/
.p-global-nav .menu-item-has-children {
    position: relative;
    padding-bottom: 15px;
}

/***/


/* footer */
.l-footer {
    padding: 80px 0 60px;
    position: relative;
    background: #234066;
    background: -webkit-linear-gradient(135deg, rgba(35, 64, 102, 1) 0%, rgba(0, 6, 14, 1) 100%);
    background: -moz-linear-gradient(135deg,rgba(35, 64, 102, 1) 0%, rgba(0, 6, 14, 1) 100%);
    background: linear-gradient(135deg, rgba(35, 64, 102, 1) 0%, rgba(0, 6, 14, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#234066", endColorstr="#00060E", GradientType=0 );
}
.f_logo {
    width: 80%;
    margin: 0 0 30px;
    max-width: 400px;
}
.sp_kai {
    display: none;
}

.f_ul {
    width: 100%;
    position: relative;
    display: table;
}
.ftxt {
    font-size: 95%;
    text-align: center;
    margin-top: 30px;
}
.f_li_right {
    width: 67%;
    float: left;
    position: relative;
}
.f_li_left {
    width: 30%;
    float: left;
    margin-right: 3%;
}
.l-footer nav {
    margin: 0;
    float: unset;
    line-height: 2;
    height: auto;
}
.footer-menu {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 0;
}
.footer-menu li a:hover{opacity:0.8;
text-decoration:underline}

.footer-menu li a {
    position: relative;
    display: block;
    padding: 2px 0px 2px 20px;
    color: #fff;
    transition: all 0.3s ease 0s;
}
.footer-menu li {
    margin: 0 5% 20px 0;
    position: relative;
    font-size: 95%;
}
.footer-menu li a:before {
    content: '▶';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    text-align: center;
    font-weight: 700;
    pointer-events: none;
    font-size: 65%;
    color: #fff;
}
.footer-menu li a {
    position: relative;
    display: block;
    padding-left: 20px;
}

.f_add {
    font-size: 100%;
    text-align: center;
}

.f_tel {
    max-width: 300px;
    margin: 18px auto;
}
.f_txt {
    line-height: 1.8;
    margin-bottom: 10px;
    color: #fff;
}
.f_txt span {
    border: solid 1px #fff;
    font-size: 90%;
    padding: 0px 5px;
    margin-right: 10px;
    border-radius: 3px;
}
.f_inner {
    width: 90%;
    max-width: 1500px;
    margin: 0 auto;
    position: relative;
}
.fcoinnner {
    padding: 8px 0;
background: #00152f;
}
.copy_txt {
    text-align: center;
	font-size: 13px;
    letter-spacing: 0.1em;
	color:#fff;
}
.froting_footer ul li a {
    display: block;
    position: relative;
}
.froting_footer ul li {
    position: relative;
}
.froting_footer ul {
    position: relative;
    margin: 0px auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2px;
}

.froting_footer {
    display: none;
    position: fixed;
    bottom: 0;
    z-index: 1;
}
/**個別*/
#menu-item-2849 a:before{display:none}

#menu-item-2849 .sub-menu a:before{display:block}

#menu-item-2849 a {
    padding: 0;
}
#menu-item-2849 .sub-menu a {
    padding-left: 20px;
}
#menu-item-2849 .sub-menu li {
    width: 33.33%;
    float: left;
    margin: 0 0 20px;
}
#menu-item-2849 .sub-menu {
    width: 100%;
    margin: 15px 0 0;
    display: table;
    border-top: solid 1px #fff;
    padding-top: 20px;
}

#menu-item-2849 a:hover{text-decoration:unset;
opacity:1}

#menu-item-2849 .sub-menu a:hover{    opacity: 0.8;
    text-decoration: underline;}


/* sp_menu */
#g-nav {
    position: fixed;
    z-index: 999;
    top: 0;
    right: -100%;
    width: 90%;
    height: 100vh;
    background: #EFEBDC;
    transition: all 0.6s;
    margin: 0;
}
#g-nav.panelactive{
    right: 0;
}
#g-nav.panelactive #g-nav-list{
    position: fixed;
    z-index: 999; 
    width: 90%;
    height: 100vh;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}
.g-navul {
    position: relative;
    z-index: 999;
    width: 100%;
    display: table;
}
.g-navul li {
    list-style: none;
    margin-bottom: 22px;
    position: relative;
    line-height: 2;
    width: 31.333%;
    float: left;
    margin-right: 2%;
}
.g-nav-inner {
    position: relative;
    z-index: 999;
    width: 86%;
    margin: 7% auto 20px;
    display: table;
}
.gnv_s_txt {
    font-size: 105%;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 15px;
    color: #5D3030;
}
.gnv_logo {
    width: 100%;
    margin-bottom: 12%;
}
.gnv_img {
    width: 80%;
    margin: 0 0 23px;
}
.gnv_img a {
    position: relative;
    display: block;
}
.g-nav-left {
    width: 25%;
    float: left;
    margin-right: 5%;
    position: relative;
}
.g-nav-right {
    width: 70%;
    float: left;
    position: relative;
}
.g-navul li a {
    color: #5D3030;
    text-decoration: none;
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 110%;
    transition: all 0.3s ease 0s;
    position: relative;
    line-height: 1.6;
}

.g_wh_box {
    background: #fff;
    border-radius: 20px;
    margin-bottom: 30px;
    padding: 20px 5% 10px;
}
.gin_txt {
    color: #5D3030;
    line-height: 1.6;
    font-size: 110%;
    letter-spacing: 0.1em;
    margin-bottom: 15px;
}
span.gv_spa {
    font-family: "Oswald", sans-serif;
    color: #FA6894;
	font-size: 75%;
}
span.gv_msa {
    font-weight: 700;
}
.g_wh_ul li a {
    color: #5D3030;
    text-decoration: none;
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 100%;
    transition: all 0.3s ease 0s;
    position: relative;
    line-height: 2;
}

.g_wh_ul li span {
    font-weight: 700;
    position: relative;
    padding-left: 22px;
}
.g_wh_ul li {
float: left;
    width: 50%;
    position: relative;
    line-height: normal;
    margin-bottom: 10px;
}
.gw_wide {
    width: 90% !important;
}
.g_wh_ul {
    width: 100%;
    position: relative;
    display: table;
}
.g_wh_ul li span:before {
    content: '▶';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    text-align: center;
    font-weight: 700;
    pointer-events: none;
    font-size: 65%;
    color: #5D3030;
}

.g_wh_ul02 li span:before {
    content: '▶';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    text-align: center;
    font-weight: 700;
    pointer-events: none;
    font-size: 65%;
    color: #5D3030;
}

.g_wh_ul02 li span {
    font-weight: 700;
    position: relative;
    padding-left: 22px;
}
.g_wh_ul02 li a {
    color: #5D3030;
    text-decoration: none;
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 100%;
    transition: all 0.3s ease 0s;
    position: relative;
    line-height: 2;
}
.g_wh_ul02 li {
    float: left;
    width: auto;
    position: relative;
    line-height: normal;
    margin: 0 33px 10px 0;
}
.g_wh_ul02 {
    width: 100%;
    display: table;
    position: relative;
}

.g-navul li a:hover:after, .g_wh_ul li a:hover:after, .g_wh_ul02 li a:hover:after{
    width: 100%;
}

.g-navul li a:after, .g_wh_ul li a:after, .g_wh_ul02 li a:after {
    position: absolute;
    content: '';
    bottom: 0px;
    left: 0;
    width: 0;
    height: 1px;
    background: #5D3030;
    transition: all 0.3s ease 0s;
}

.openbtn {
    position: fixed;
    z-index: 9999;
    top: 15px;
    right: 15px;
    cursor: pointer;
    width: 80px;
    height: 80px;
border-radius: 5px;
    transition: all 0.2s ease;
}


.openbtn.scrolled  {
  opacity: 1;
    position: fixed;
    z-index: 9999;
    top: 15px;
    right: 15px;
    cursor: pointer;
    width: 80px;
    height: 80px;
    background: #2E261C;
border-radius: 5px;
    transition: all 1s ease;
}

.openbtn_line {
    width: 40%;
    float: right;
    position: relative;
}
.openbtn_txt {
    width: 60%;
    float: left;
    position: relative;
}
.openbtn span {
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 0;
    height: 1px;
    border-radius: 2px;
    background-color: #fff;
    width: 40px;
    right: 0;
    left: 20px;
}

span.gm_spa {
    background: unset;
    color: #fff;
    text-align: center;
    font-size: 13px;
    letter-spacing: 0.2em;
    top: 59px;
    line-height: 1;
    left: 0;
    right: 0;
    margin: 0 auto;
    font-family: "Oswald", sans-serif;
    text-shadow: 0px 0px 12px #000000;
}

.openbtn.active {
    position: fixed;
    opacity: 1;
    background: #2E261C;
}

.openbtn span:nth-of-type(1) {
	top:18px;	
    box-shadow: 0px 0px 10px #000;
}

.openbtn span:nth-of-type(2) {
    top: 32px;
    width: 34px;
    box-shadow: 0px 0px 10px #000;
}

.openbtn span:nth-of-type(3) {
    top: 46px;
    width: 30px;
    box-shadow: 0px 0px 10px #000;
}

.openbtn.active span:nth-of-type(1) {
    transform: translateY(15px) rotate(-35deg);
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3) {
    transform: translateY(-15px) rotate(35deg);
    top: 50px;
    width: 40px;
}
.openbtn.active span.gm_spa {
    transform: unset;
}




.g_txt {
    font-size: 95%;
    color: #Fff;
    line-height: 1.6;
    margin-bottom: 20px;
}
span.sggt:hover {
    opacity: 0.7;
}
span.sggt {
    color: #fff;
    border: solid 1px #fff;
    padding: 2px 12px 7px;
    font-size: 90%;
    transition: all 0.3s ease 0s;
}
.g_txt a {
    position: relative;
}
span.short {
    font-size: 95%;
    margin-right: 10px;
}
.g_txt01 span {
    font-family: "Jost", sans-serif;
}

.g_txt01 {
    width: 80%;
    margin: 0 auto 7px;
    line-height: normal;
    color: #fff;
}
.icoul02 li img {
    width: 24px;
    height: auto;
    vertical-align: middle;
}
.icoul02 li {
    width: 16%;
    margin: 0 2%;
    float: left;
    line-height: normal;
    text-align: center;
}
.icoul02 {
    width: 80%;
    display: table;
    position: relative;
    margin: 0 auto;
    padding: 20px 0;
    border-top: solid 1px #fff;
    border-bottom: solid 1px #fff;
}


.gnav_logo {
    margin: 0 auto 18px;
}
.gnav_tel a {
    display: block;
    position: relative;
}

.gnav_tel img {
	width: 50%;
}
.gnav_tel {
    width: 80%;
    margin: 13px auto 20px;
    line-height: normal;
}


#overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    background: rgba(0,0,0,0.5);

    opacity: 0;
    visibility: hidden;
    transition: 0.3s;

    z-index: 999;
}

#overlay.active {
    opacity: 1;
    visibility: visible;
}

/********* fadeUp *************************************/
.delay-time{
	opacity: 0;
}
.delay-time02{
animation-delay: 0.2s;
}

.delay-time04{
animation-delay: 0.4s;
}

.fadeUp{
animation-name:fadeUpAnime;
animation-duration:2s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(50px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}


/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.fadeUpTrigger{
    opacity: 0;
}




.t_ttl01, .t_ttl02, .t_ttl03, .t_ttl04, .t_ttl06{font-family: "Noto Sans JP", sans-serif;}


/*****メインビジュアル******/
#mv_sec {
    width: 100%;
    position: relative;
    height: calc(100vh - 120px);
    padding-top: 120px;
}

.movie-wrap:before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    background: url(/wp-content/uploads/img_mesh.png);
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0.9;
    z-index: 9;
}

.movie-wrap {
    width: 94%;
    height: 100%;
    margin: 0 auto;
    overflow: hidden;
    border-radius: 25px;
    position: relative;
}
#movie {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 25px;
}


.video-bg {
  position: fixed; 
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  overflow: hidden;
}

.video-bg video {
  width: 100%;
  height: 100%;
  object-fit: cover; 
}
.mv_catch {
    position: absolute;
    overflow: hidden;
    z-index: 9;
    width: 90%;
    height: calc(100vh - 120px);
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 auto;
}
.mv_catch p {
    position: absolute;
    width: 50%;
    opacity: 0;
	animation: catchLoop 33.2s infinite;
    text-align: center;
    margin: 0 auto;
    left: 0;
    right: 0;
}

/* 表示タイミング */
.mv_catch p:nth-child(1){animation-delay:0s;}
.mv_catch p:nth-child(2){animation-delay:8.3s;}
.mv_catch p:nth-child(3){animation-delay:16.6s;}
.mv_catch p:nth-child(4){animation-delay:24.9s;}

@keyframes catchLoop{
  0%{opacity:0;}
  4%{opacity:1;}
  20%{opacity:1;}
  24%{opacity:0;}
  100%{opacity:0;}
}


.mv_catch_contents {
    position: absolute;
    top: 21%;
    left: 0;
    transform: translate(0%, -50%);
    color: #fff;
    z-index: 2;
    width: 100%;
    text-align: center;
    margin: 0 auto;
}
.mac01 {
	font-size: 240%;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.1em;
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.5)) drop-shadow(0 0 20px rgba(0, 0, 0, 0.4)) drop-shadow(0 0 30px rgba(0, 0, 0, 0.3));
}

.mac02 {
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.5)) drop-shadow(0 0 20px rgba(0, 0, 0, 0.4)) drop-shadow(0 0 30px rgba(0, 0, 0, 0.3));
}
.mac02 img {
    max-width: 500px;
    width: 60%;
}

/*****/
.ytube {
    position: relative;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    border-radius: 14px;
}
.ytube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}
.y_inner {
    width: 50%;
    margin: 0 0 0 auto;
}
.y_inner_in {
    margin: 0 auto 0 0;
    max-width: 700px;
    position: relative;
}
.inner {
    width: 90%;
    margin: 0 auto;
    position: relative;
}
#sec_01 {
    position: relative;
    margin: 70px auto 50px;
}

.yt_txt {
    padding: 8px 35px;
    font-weight: 600;
    font-size: 120%;
    color: #fff;
    position: relative;
    display: inline-block;
background: #d52a58;
    border-radius: 14px 14px 0 0;
}
#sec_01 .ytube {
    border-radius: 0 14px 14px 14px;
}

/***sec_02***/
.t_ul01 {
    width: 100%;
    position: relative;
    display: table;
}
.t_li01_right {
    width: 50%;
    float: left;
    position: relative;
}

.t_li01_left {
    width: 45%;
    float: left;
    position: relative;
    margin: -23% 5% 0 0;
    text-align: center;
}
.mamalogo_01 {
    width: 80%;
    margin: 0 auto;
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.1)) drop-shadow(0 0 20px rgba(0, 0, 0, 0.1)) drop-shadow(0 0 30px rgba(0, 0, 0, 0.1));
	    max-width: 600px;
}
.t_ttl01 {
    margin: 30px auto 0;
    font-size: 250%;
    font-weight: 700;
    color: #fff;
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.2)) drop-shadow(0 0 20px rgba(0, 0, 0, 0.2)) drop-shadow(0 0 30px rgba(0, 0, 0, 0.2));
}

/**sec_03***/
#sec_03 {
    position: relative;
    margin-top: 100px;
}
.sec02_inner {
    width: 96%;
    margin: 0 auto;
    background: #234066;
    background: -webkit-linear-gradient(135deg, rgba(35, 64, 102, 1) 0%, rgba(0, 6, 14, 1) 100%);
    background: -moz-linear-gradient(135deg,rgba(35, 64, 102, 1) 0%, rgba(0, 6, 14, 1) 100%);
    background: linear-gradient(135deg, rgba(35, 64, 102, 1) 0%, rgba(0, 6, 14, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#234066", endColorstr="#00060E", GradientType=0 );
    border-radius: 25px 25px 0 0;
    position: relative;
    padding: 70px 0;
}

.in_inner {
    width: 90%;
    margin: 0 auto;
    max-width: 1600px;
    position: relative;
}
.con_flex01 {
    display: table;
    position: relative;
    width: 100%;
    margin: 0 auto 60px;
}
.cf_right {
    width: 40%;
    float: left;
    position: relative;
}

.cf_left {
    width: 55%;
    float: left;
    position: relative;
    margin-right: 5%;
}
.t_ttl02 {
    font-size: 230%;
    color: #fff;
    font-weight: 700;
	margin-bottom: 40px;
}

/**画像スクロール*/
.scroll-wrapper {
  display: flex;
  width: max-content;
}
.scroll-row {
  overflow: hidden;
  width: 100%;
}

.scroll-inner {
  display: flex;
  flex-wrap: nowrap;
}

.scroll-inner img {
  width: auto;
  height: 220px;
  flex-shrink: 0;
	padding:3px
}
/**end*/

.wh_txt02 span:before {
    position: absolute;
    content: "";
    width: 16px;
    border-top: solid 1px #fff;
    top: 50%;
}
.t_ttl02_sub span {
    font-weight: 600;
    font-size: 75%;
}
.t_ttl02_sub:before {
    position: absolute;
    content: "";
    width: 30px;
    border-top: solid 1px #fff;
    top: 50%;
    left: 0;
}
.t_ttl02_sub {
    font-size: 140%;
    color: #fff;
    margin-bottom: 20px;
    font-weight: 700;
    position: relative;
    padding-left: 40px;
}
.wh_txt02 {
    color: #fff;
    margin-bottom: 20px;
    font-size: 110%;
    position: relative;
}
.wh_txt02 span {
    position: relative;
    margin-right: 25px;
}
.wh_txt01 {
    color: #fff;
    margin-bottom: 20px;
}
.btn_cf span {
    position: relative;
    font-weight: 600;
    color: #fff;
}
.btn_cf a {
    position: relative;
    display: block;
    padding: 15px 3%;
    font-size: 140%;
    transition: all 0.3s ease 0s;
}
.btn_cf a:before {
    background: url(/wp-content/uploads/arooe.svg) center no-repeat;
    position: absolute;
    content: "";
    width: 5%;
    height: 100%;
    right: 3%;
    top: 0;
    transition: all 0.3s ease 0s;
    background-size: contain;
}

.btn_cf a:hover:before {
    transform: translateX(25%);
}

.btn_cf a:hover {
    opacity: 0.7;
}

.btn_cf {
    position: relative;
    border-bottom: solid 1px #fff;
    margin-bottom: 40px;
}

/******sec_04***/
span.semi_spa:hover {
    color: #fff;
}

span.semi_spa {
    color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    background: #000000;
    padding: 0 10px;
    font-weight: 600;
    font-size: 90%;
}
#sec_04 {
    background: #fff;
    border-radius: 25px;
    padding: 100px 0;
}
.con_flex02 {
    width: 100%;
    position: relative;
    display: flex;
    gap: 4%;
}
.cf_left40 {
    width: 37%;
    float: left;
    position: relative;
}
.cf_right60 {
    width: 61%;
    float: left;
    position: relative;
    margin-left: 2%;
}
.cf_in_flex {
    width: 100%;
    display: table;
    position: relative;
}
.cf_in_flex_con {
    width: 48%;
    margin: 0 4% 0 0;
    float: left;
}
.cf_in_flex_conright {
    width: 48%;
    margin: 0;
    float: left;
}


.media_cont:before {
    position: absolute;
    content: "";
    width: 90%;
    right: 0;
    bottom: 0px;
    background: #F6F6F6;
    height: 70%;
}
.media_cont {
    position: relative;
    margin: 140px auto 100px;
}
.media_image:hover {
    opacity: 0.7;
}
.media_image {
    width: 100%;
    aspect-ratio: 3 / 1.5;
    overflow: hidden;
    transition: all 0.5s ease 0s;
    display: block;
    position: relative;
}
.vo_sub span {
    font-size: 90%;
    background: #000;
    color: #fff;
    padding: 2px 6px;
    border-radius: 4px;
    margin-right: 10px;
}
.vo_txt {
    font-size: 90%;
    line-height: 1.7;
}
.vo_sub {
    text-align: center;
    font-weight: 600;
    margin-bottom: 10px;
}
.vo_ttl {
    font-size: 105%;
    text-align: center;
    line-height: 1.6;
    font-weight: 700;
    margin: 15px auto 5px;
    color: #236271;
}
.media_image img {
width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.sub_ttl:before {
    position: absolute;
    content: "";
    border-top: solid 1px #a7b2cb;
    width: 30px;
    top: 50%;
    left: 0;
}

.sub_ttl {
    font-size: 140%;
color: #9cabcd;
    padding-left: 50px;
    position: relative;
    margin-bottom: 15px;
    line-height: 1;
    font-family: "Oswald", sans-serif;
}
.t_ttl03 {
    font-size: 230%;
    font-weight: 700;
    margin-bottom: 20px;
}
.txt01 {
    margin-bottom: 20px;
}
.txt011 {
    margin-bottom: 20px;
    font-size: 105%;
    font-weight: 600;
    line-height: 2.2;
    color: #6f4a4a;
}

.btn_01 a {
    position: relative;
    padding: 16px 0;
    text-align: center;
    background: #5A076F;
    font-size: 100%;
    font-weight: 600;
    color: #fff;
    display: block;
    border-radius: 100px;
    transition: all 0.3s ease 0s;
}

.btn_01 {
    margin: 50px 0 0 0;
    width: 90%;
    max-width: 340px;
}

.btn_01 a:hover {
    opacity: 0.7;
}
.t_ttl04 {
    font-size: 160%;
    font-weight: 700;
    margin-bottom: 40px;
    line-height: 1.6;
    border-bottom: solid 1px #939393;
    padding: 0 0 20px 10px;
}

.cf_left70 {
    width: 50%;
    float: left;
    position: relative;
}
.cf_right30 {
    width: 50%;
    float: left;
    position: relative;
}
.cont_list li {
    position: relative;
    box-sizing: border-box;
}

.cont_list {
    position: relative;
    margin: 0px auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}
.cont_list li span {
    font-size: 105%;
    line-height: 2;
    color: #fff;
}

.cont_list li a:before {
    background: url(/wp-content/uploads/arooe.svg) center no-repeat;
    position: absolute;
    content: "";
    width: 7%;
    height: 100%;
    right: 15px;
    top: 0;
    background-size: contain;
    transition: all 0.3s ease 0s;
}

.cont_list li a {
    background: #111C65;
    display: flex;
    align-items: center;
    height: 90px;
    padding-left: 22px;
    position: relative;
    border-radius: 10px;
    transition: all 0.3s ease 0s;
}

.cont_list li a:hover {
    background: #000a4b;
}

.cont_list li a:hover:before {
    transform: translateX(25%);
}
.swiper {
    padding: 0 5% !important;
}
.swiper-button-next, .swiper-button-prev {
    color: #5b5b5b !important;
}

.swiper-button-inner {
    position: relative;
    width: 123px;
margin: 15px 0 15px auto;
    height: 40px;
}
.swiper-button-prev:after {
    background: url(/wp-content/uploads/arrow_l.svg) center no-repeat;
content: "" !important;
    position: absolute;
    background-size: contain;
    width: 100%;
    height: 100%;
}
.swiper-button-next:after {
    background: url(/wp-content/uploads/arrow_r.svg) center no-repeat;
content: "" !important;
    position: absolute;
    background-size: contain;
    width: 100%;
    height: 100%;
}

.swiper-button-next, .swiper-button-prev {
	width: calc(var(--swiper-navigation-size) / 35 * 27) !important;}

/**sec_05**/
#sec_05 {
    position: relative;
    padding: 100px 0 70px;
}

.cf_right80 {
    width: 70%;
    float: left;
    position: relative;
    margin-left: 5%;
}

.cf_left20 {
    width: 25%;
    float: left;
    position: relative;
}
.wh_block {
    position: relative;
    display: block;
    background: #fff;
    margin-bottom: 35px;
    padding: 30px 5%;
    border-radius: 15px;
    transition: all 0.5s ease 0s;
    box-shadow: 0px 80px 80px -80px rgb(0 0 0 / 20%);
}
.bl_ttl {
    font-size: 140%;
    font-weight: 600;
    color: #333;
    margin-bottom: 10px;
    transition: all 0.5s ease 0s;
}
.bl_txt {
    color: #333;
    font-size: 95%;
    transition: all 0.5s ease 0s;
}
.wh_bl_flex {
    width: 100%;
    position: relative;
    display: table;
}
.wh_bl_right {
    width: 35%;
    float: left;
    position: relative;
    margin-left: 5%;
}
.wh_bl_left {
	width: 60%;
    float: left;
    position: relative;
}
.wh_block:hover p {
    color: #fff !important;
}
.wh_block:hover {
    background: #708cb1;
    box-shadow: unset;
}

.t_space{height:100px}
.cf_left50{
    width: 48%;
    float: left;
    position: relative;
}
.txt014 {
    font-size: 90%;
}

.txt013 {
    font-weight: 700;
}
.cf_right50 {
    width: 48%;
    float: left;
    margin-right: 4%;
    position: relative;
}
.box_01 {
    background: #fff;
    padding: 10px 20px;
    margin-bottom: 20px;
border-radius: 10px;
}
.txt012 {
    font-size: 130%;
    font-weight: 600;
    margin-bottom: 10px;
}

/*****sec_06*****/
#sec_06 {
    background: #fff;
    padding: 100px 0;
    border-radius: 25px 25px 0 0;
}
#sec_06 .inner {
    max-width: 1400px;
}

.flex_block {
    display: flex;
    position: relative;
}
.flex_con {
    flex: 1;
    position: relative;
padding: 0 40px;
}

.com_link,
.rec_link{
	position: relative;
	display: block;
	overflow: hidden;
    border-radius: 16px;
}

.com_link_image img{
	width: 100%;
	display: block;
	transition: 0.5s;
}


.com_link:hover .com_link_image img,
.rec_link:hover .com_link_image img{
	transform: scale(1.07);
}

.com_linknner{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	text-align: center;
	color: #fff;
	z-index: 2;
}

.com_ttl {
    font-size: 180%;
    font-weight: bold;
    letter-spacing: 0.1em;
    margin-bottom: 5px;
}

.comtxt {
    font-size: 90%;
    font-weight: 600;
}



/*****sec_07*****/

.blog_thumb {
    width: 100%;
	aspect-ratio: 3 / 1.7;
    overflow: hidden;
    margin-bottom: 5px;
}
.blog_thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;  
    object-position: center;
}
#sec_07 {
    position: relative;
    background: #F6F6F6;
    padding: 100px 0 70px;
}
.blog_ttl {
    font-size: 120%;
    margin-bottom: 10px;
    font-weight: 600;
    color: #333;
}
.blog_txtblock a:hover {
    opacity: 0.7;
}

.blog_txtblock a {
    position: relative;
    display: block;
    padding: 0 2% 20px;
    transition: all 0.3s ease 0s;
}
.blog_txtblock {
    border-bottom: solid 1px #8b8b8b;
    margin-bottom: 50px;
}
.blog_cate {
    margin-bottom: 5px !important;
}
.blog_cate span {
    display: inline-block;
    position: relative;
    background: #000;
    color: #fff;
    padding: 6px 11px 6px;
    line-height: 1;
    font-size: 80%;
    border-radius: 100px;
}
.blog_date {
    font-size: 85%;
    display: inline-block;
    color: #333;
    line-height: 1;
	margin-bottom:0 !important
}
.news_txt p {
    color: #333;
}

.t_ttl05 {
    font-size: 120%;
    font-weight: 700;
    margin: 0 0 40px;
    color: #506c8f;
}

.ul_t_01 {
    position: relative;
    margin: 0px auto;
    display: grid;
	grid-template-columns: repeat(5, 1fr);
    gap: 30px;
}

.ul_t_01 li {
    position: relative;
    box-sizing: border-box;
}
.wh_link_box {
    background: #fff;
    padding: 30px;
    margin: 80px auto 0;
}
.ul_t_01 li a {
    display: block;
    position: relative;
}
.link_ul li:last-child {
    margin: 0;
}
.t_ttl06 {
    font-size: 180%;
    font-weight: 700;
    line-height: 1.6;
}
.link_ul li {
    width: 30%;
    margin: 0 5% 0 0;
    float: left;
}
.link_ul li a:hover {
    opacity: 0.7;
}

.link_ul li a {
    position: relative;
    display: block;
    transition: all 0.3s ease 0s;
}

.link_ul {
    width: 100%;
    display: table;
    position: relative;
    max-width: 1500px;
    margin: 0 auto;
}

.sp_gv{display:none}

.pfimg a:hover {
    opacity: 0.8;
}

.pfimg a {
    display: block;
    position: relative;
    transition: all 0.3s ease 0s;
}
.pfimg {
    flex: 1;
    padding: 0 5px;
}
.pc_floating {
    position: fixed;
    bottom: 0;
    right: 15px;
    z-index: 9;
    max-width: 450px;
    width: 50%;
    display: flex;
}



/*==== top respon ===*/

@media only screen and (max-width: 1600px) {
	.p-global-nav li a {
    padding-left: 10px;
    padding-right: 10px;
}
}
@media only screen and (max-width: 1500px) {
	.header_logo {width: 22%;
    padding: 0 0 0 2%;
}
.g-nav-inner {
    width: 92%;
}
.g-navul li a {
    font-size: 100%;
}
}

@media only screen and (max-width: 1400px) {
	.p-global-nav {
		font-size: 90%;}
.t_ttl01 {
    font-size: 220%;
}
.t_ttl03 {
	font-size: 190%;}
}

@media only screen and (max-width: 1200px) {
.p-global-nav {display: none;}.btn_cf a {font-size: 120%;}.movie-wrap {width: 96%;}.header_logo {width: 35%;}.mv_catch p {width: 100%;}.t_ttl01 {text-align: left;font-size: 170%;}.mamalogo_01 {margin: 0;}.g-navul li {width: 48%;}.cont_list {grid-template-columns: repeat(2, 1fr);}.ul_t_01 {grid-template-columns: repeat(5, 1fr);gap: 22px;}
.yt_txt {font-size: 110%;}
.up_grmenu {
    display: none;
}
.mv_catch_contents {
    top: 15%;
}
.mv_catch {
    height: calc(90vh - 120px);
}
#mv_sec {
    height: calc(90vh - 120px);
}
.pc_floating {
    max-width: 380px;
    right: 0;
}
}

@media only screen and (max-width: 1000px) {
.y_inner {margin: 0 auto;}#mv_sec {height: calc(90vh - 120px);}.t_li01_left {margin: 0 5% 0 0;width: 35%;}.mv_catch {height: calc(90vh - 120px);}.t_ttl01 {font-size: 160%;}.yt_txt {width: 60%;margin: 20px auto 0;text-align: center;}.t_li01_right {width: 60%;}.mamalogo_01 {width: 100%;}.header_logo{width: 45%;}.ul_t_01 {grid-template-columns: repeat(3, 1fr);gap: 22px;}
.yt_txt {
    display: block;
    width: 90%;
    padding: 8px 5%;
    line-height: 1.6;
}
.y_inner {
    width: 100%;
}
.y_inner_in {
    margin: 0 auto;
}
#sec_01 .ytube {
    border-radius: 0 0px 14px 14px;
}
}

@media only screen and (max-width: 767px) {
.openbtn {width: 70px;height: 70px;top: 5px;right: 5px;}.openbtn span:nth-of-type(3) {top: 42px;}.openbtn span:nth-of-type(1) {top: 14px;}.openbtn span:nth-of-type(2) {top: 28px;width: 35px;}.openbtn span {width: 40px;right: 0;left: 15px;}.openbtn.scrolled {width: 70px;height: 70px;top: 5px;right: 5px;}#g-nav {width: 100%;}#g-nav.panelactive #g-nav-list {width: 100%;}span.gm_spa {font-size: 10px;top: 52px;left: 0;}.openbtn.active span:nth-of-type(3) {top: 45px;width: 40px;}#js-header {height: 80px;line-height: 80px;}.mv_catch {height: 90vh;}.movie-wrap {border-radius: 0;width: 100%;}.mv_catch_contents {top: 26%;}#movie {border-radius: 0;}.header_logo {width: 70%;}nav {margin: 0;line-height: 70px;height: 70px;}#mv_sec {height: 90vh;padding-top: 0;}.t_li01_left {margin: 0 auto;width: 100%;float: unset;}.txt011 {font-size: 100%;line-height: 2;}.t_li01_right {width: 100%;float: unset;margin: 25px auto 0;}.t_ttl01 {font-size: 128%;text-align: center;margin: 16px auto 0;}.t_ttl02 {font-size: 180%;}.btn_cf {margin-bottom: 30px;}.btn_cf a:before {width: 7%;}.cf_left40 {width: 100%;float: unset;margin-bottom: 30px;}.cf_left40 {width: 100%;float: unset;}.cf_right60 {width: 100%;float: unset;margin: 0;}.link_ul li {width: 100%;margin: 0 auto 28px;float: unset;}.btn_cf a {font-size: 110%;padding: 10px 3%;}.cf_right {width: 100%;margin-top: 30px;}.t_ttl02_sub {padding:0;font-size: 125%;margin-bottom: 11px;}.cf_left {width: 100%;float: unset;margin-right: 0;}.sec02_inner {padding: 50px 0;width: 100%;}.mamalogo_01 {width: 60%;margin: 0 auto;}#sec_03 {margin-top: 60px;}#sec_04 {padding: 60px 0;border-radius: 0;}.t_ttl03 {font-size: 170%;}.btn_01 a {font-size: 90%;}cf_in_flex_conright {width: 100%;margin: 0 auto;float: unset;}.media_cont {margin: 80px auto;}.cont_list {gap: 15px;}.cont_list li span {font-size: 12px;line-height:1.5}.cont_list li a br {display: none;}.cont_list li a:before {width: 10%;right: 7px;top: 23px;}.cont_list li a {height: 75px;padding: 0 6px;position: relative;border-radius: 5px;}.t_ttl04 {font-size: 120%;padding: 0 0 10px 5px;}.cf_right30 {width: 100%;float: unset;position: relative;margin-left: 0;}#menu-item-2849 .sub-menu li {width: 50%;margin: 0 0 15px;}#menu-item-2849 .sub-menu a {padding-left: 11px;}.copy_txt {font-size: 8px;}.footer-menu li a {padding-left: 11px;}.footer-menu li a:before {font-size: 48%;width: auto;}.footer-menu li {margin: 0 5% 15px 0;position: relative;font-size: 90%;}.f_li_right {width: 100%;float: unset;position: relative;}.f_logo {margin: 0 auto 20px;}.l-footer {padding: 50px 0 60px;}.blog_txtblock {margin-bottom: 30px;}.f_li_left {width: 100%;float: unset;margin: 0 auto 30px;text-align: center;}.ul_t_01 {grid-template-columns: repeat(2, 1fr);gap: 17px;}.t_ttl05 {font-size: 90%;margin: 0 0 10px;}.wh_link_box {padding: 20px;margin: 30px auto 0;}.news_txt {font-size: 90%;}.blog_ttl {font-size: 100%;line-height: 1.6;}#sec_07 {padding: 70px 0;}.t_ttl06 {font-size: 150%;font-weight: 700;line-height: 2;margin-bottom: 26px;}.com_link, .rec_link {border-radius: 9px;}#sec_06 {padding: 50px 0 20px;border-radius: 15px 15px 0 0;}.com_ttl {font-size: 150%;font-weight: bold;letter-spacing: 0.1em;margin-bottom: 0;}.flex_block {display: block;position: relative;width: 90%;margin: 0 auto;}.flex_con {padding: 0;margin-bottom: 35px;}.box_01 {padding: 10px;margin-bottom: 15px;border-radius: 5px;}.flex_block {display: block;}.btn_01 a br {display: none;}.cf_left50 {width: 100%;float: unset;}.cf_right50 {width: 100%;float: unset;margin: 0 auto 20px;}.t_space {height: 50px;}.wh_block {padding: 20px 4%;border-radius: 10px;}.wh_bl_right {width: 86%;float: unset;margin: 13px auto 0;}#sec_05 {padding: 70px 0;}.bl_ttl {font-size: 100%;line-height: 1.5;}.wh_bl_left {width: 100%;float: unset;}.cf_left20 {width: 100%;float: unset;}.cf_right80 {width: 100%;float: unset;margin: 0 auto;}.cf_left70 {width: 100%;float: unset;margin-bottom: 25px;}.cf_in_flex_conright {width: 100%;float: unset;}.cf_in_flex_con {width: 100%;margin: 0 auto 20px;float: unset;}.btn_01 {margin: 30px auto;width: 90%;max-width: 250px;}.sub_ttl {margin-bottom: 5px;font-size: 110%;padding-left: 43px;}.g-nav-left {width: 100%;float: unset;margin: 0 auto 20px;}.g-nav-inner {margin: 20px auto 20px;}.gnv_logo {width: 70%;margin: 0;}.gnv_img {width: 80%;margin: 0 auto 20px;}.gnv_s_txt {text-align: center;font-size: 90%;}.sp_gv{display:block}.pc_gv{display:none}.g-nav-right {width: 100%;float: unset;}.g_wh_box {margin-bottom: 25px;padding: 10px 4% 3px;border-radius: 10px;}.g_wh_ul li, .g_wh_ul02 li {margin-bottom: 4px;}.gin_txt {font-size: 100%;margin-bottom: 10px;}.g-navul li {margin-bottom: 10px;margin-right: 3%;width: 47%;}.g-navul li a:after, .g_wh_ul li a:after, .g_wh_ul02 li a:after{display:none}
.con_flex02 {
    display: block;
    gap: unset;
}
	.t_ttl02_sub:before{display:none}
.pc_floating {
    display: none;
}
.froting_footer {
	display: block;}
.scroll-inner img {
  width: auto;
  height: 120px;
  flex-shrink: 0;
	padding:3px
}
.fcoinnner {
    padding: 8px 0 60px;
}
.yt_txt {
padding: 8px 5% 5px;
        font-size: 100%;
        line-height: 1.4;
}
.swiper-button-inner {
    margin: 0px 0 15px auto;
    width: 90px;
}
.swiper-button-next, .swiper-button-prev {
	width: calc(var(--swiper-navigation-size) / 44 * 27) !important;}
}


@media only screen and (max-width: 500px) {
.g-nav-inner {
    margin: 0px auto 20px;
	}
	    #mv_sec {
			height: 68vh;}
    .mv_catch {
        height: 68vh;
	        width: 100%;
    }
.mv_catch_contents {
        top: 35%;
    }
}

/*********下層**********/

.k_ttl01, .k_ttl02, .w_txt, .k_ttl05 {font-family: "Noto Sans JP", sans-serif;}

.k_inner {
    position: relative;
    margin: 0 auto;
    width: 90%;
    max-width: 1400px;
}
.entry_inner {
    margin: 80px 0 150px;
    position: relative;
}
#contents_header {
    background-image: unset;
    background: #E6CCCF;
    background: -webkit-linear-gradient(135deg, rgba(230, 204, 207, 1) 0%, rgba(245, 156, 222, 1) 20%, rgba(236, 200, 203, 1) 44%, rgba(188, 232, 231, 1) 74%, rgba(165, 242, 250, 1) 100%);
    background: -moz-linear-gradient(135deg,rgba(230, 204, 207, 1) 0%, rgba(245, 156, 222, 1) 20%, rgba(236, 200, 203, 1) 44%, rgba(188, 232, 231, 1) 74%, rgba(165, 242, 250, 1) 100%);
    background: linear-gradient(135deg, rgba(230, 204, 207, 1) 0%, rgba(245, 156, 222, 1) 20%, rgba(236, 200, 203, 1) 44%, rgba(188, 232, 231, 1) 74%, rgba(165, 242, 250, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#E6CCCF", endColorstr="#A5F2FA", GradientType=0 );
    position: relative;
    height: 450px;
}
#contents_header:before {
    position: absolute;
    content: "";
    background: url(/wp-content/uploads/mamalogo.svg) center no-repeat;
    width: 50%;
    height: 70%;
    right: 0;
    top: 28%;
    opacity: 0.2;
    z-index: 0;
    background-size: contain;
}


.p-page-header__inner {
    position: absolute;
    bottom: 70px;
    left: 9%;
}
.page_head_tittle {
    font-size: 220%;
    font-weight: 600;
    color: #fff;
    margin-bottom: 10px;
    letter-spacing: 0.1em;
    text-shadow: 0 0 15px #414141;
}
.p_en_txt {
    font-size: 100%;
    font-weight: 600;
    color: #fff;
    text-shadow: 0 0 15px #414141;
}
.breadcrumbs-container {
    width: 90%;
    margin: 0 auto;
    position: relative;
    padding: 10px 0;
}
.breadcrumbs {
    text-align: right;
    font-size: 85%;
}
.breadcrumbs a{color:#333}
.k_flex01 {
    width: 100%;
    display: flex;
    position: relative;
}

.kf_20 {
    width: 25%;
    position: relative;
}

.kf_80 {
    width: 75%;
    position: relative;
}
.k_ttl01 {
    font-size: 250%;
    font-weight: 700;
    letter-spacing: 0.05em;
    margin-bottom: 30px;
	color:#000;
}
table.tabl_01 th {
    width: 25%;
    text-align: left;
    font-size: 110%;
    font-weight: 600;
    vertical-align: middle;
    border-bottom: solid 1px #454545;
    padding: 45px 0px 20px 2%;
}
table.tabl_01 td {
    font-size: 110%;
    font-weight: 600;
    vertical-align: middle;
    line-height: 1.8;
    padding: 40px 0 20px;
    border-bottom: solid 1px #454545;
}

.k_sub_txt:before {
    position: absolute;
    content: "";
    width: 8px;
    height: 8px;
    background: #000;
    left: 0;
    top: 4px;
}
.k_sub_txt {
    position: relative;
	padding-left: 14px;
    line-height: 1;
    font-size: 100%;
    font-family: "Oswald", sans-serif;
}
.k_ttl02 {
    font-size: 200%;
    font-weight: 700;
    letter-spacing: 0.05em;
    border-top: solid 1px #333;
    margin: 15px 0 60px;
    padding-top: 25px;
    line-height: 1.6;
    color: #000;
}
.k_ul01 {
    width: 100%;
    display: table;
    position: relative;
    margin: 0 auto 70px;
}
.k_ul03 {
    width: 100%;
    display: table;
    position: relative;
    margin: 0 auto;
}
.li_txt {
    width: 55%;
    float: left;
    position: relative;
}
.li_left {
    width: 40%;
    margin-right: 5%;
    float: left;
    position: relative;
}
.li_right {
    width: 40%;
    margin-left: 5%;
    float: right;
    position: relative;
}
.li_txt_w {
	width: 50%;
	float: left;
	position: relative;
}
.li_left_w {
    width: 45%;
    margin-right: 5%;
    float: left;
    position: relative;
}
.li_right_w {
    width: 45%;
    margin-left: 5%;
    float: right;
    position: relative;
}
.li_left_s {
    width: 35%;
    float: left;
    position: relative;
    margin: 0 5% 0 0;
}
.li_txt_s{
	width: 60%;
	float: left;
	position: relative;
}
.box_03 {
    position: relative;
    background: #f9f9f9;
    padding: 40px 5%;
    margin-bottom: 70px;
}

.li_left_s img, .li_left img, .li_right img, .li_right30 img{
    border-radius: 15px;
}


.k_ttl03 span:before {
    position: absolute;
    content: "";
    width: 50px;
    border-top: solid 1px #333;
    left: 0;
    top: 50%;
}

.k_ttl03 span {
    position: relative;
    font-weight: 600;
    display: block;
    padding-left: 70px;
    color: #000;
}
.k_ttl03 {
    position: relative;
    font-size: 180%;
    margin-bottom: 25px;
    line-height: 1.7;
}
.space {
    height: 130px;
}
.list_ul01 li {
    position: relative;
    width: auto;
    float: left;
    margin: 0 4% 15px 0;
    font-size: 110%;
}

.list_ul01 {
    width: 100%;
    display: table;
    position: relative;
    margin: 40px auto;
}
span.ch_spa:after {
    border-left: 2px solid #000000;
    border-bottom: 2px solid #000;
    width: 17px;
    height: 8px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    top: 1px;
    left: 0;
    content: '';
}

span.ch_spa:before {
    position: absolute;
    content: "";
    width: 12px;
    height: 12px;
    border: solid 2px #000;
    left: 0;
    top: 4px;
}
span.ch_spa {
    position: relative;
    font-weight: 600;
    padding-left: 26px;
    color: #000;
}
span.spa01 {
    font-weight: 600;
    color: #113f87;
}
.gr_inner ul {
    margin: 0 auto !important;
}
.gr_inner {
    background: #F6F6F6;
    padding: 70px 0 70px;
    margin: 150px 0 -150px;
}
.gr_inner02 {
    background: #F6F6F6;
    padding: 70px 0 70px;
    margin: 100px auto;
    background: #234066;
    background: -webkit-linear-gradient(135deg, rgba(35, 64, 102, 1) 0%, rgba(0, 6, 14, 1) 100%);
    background: -moz-linear-gradient(135deg,rgba(35, 64, 102, 1) 0%, rgba(0, 6, 14, 1) 100%);
    background: linear-gradient(135deg, rgba(35, 64, 102, 1) 0%, rgba(0, 6, 14, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#234066", endColorstr="#00060E", GradientType=0 );
}

.k_img_flex01 {
    display: flex;
    position: relative;
    margin-bottom: 40px;
}
.fl_img {
    flex: 1;
    position: relative;
}
.k_flex_con_end {
    flex: 1;
    padding: 0 0 0 30px;
}

.k_flex_con {
    flex: 1;
    position: relative;
    padding: 0 30px 0 0;
}
.k_img_flex02 {
    display: flex;
    position: relative;
    margin: 0 auto 70px;
}
.voice_img {
    height: 500px;
    overflow: hidden;
    margin-bottom: 15px;
    border-radius: 15px;
}
.voice_img a{
    display:block;
    height:100%;
}
.voice_img .image{
    width:100%;
    height:100%;
    transition:0.4s;
}

.voice_img a:hover .image{
    transform:scale(1.05);
}
.txt02 {
    line-height: 1.5;
    font-size: 95%;
    margin-top: 20px;
}

.pa_cen {
    padding: 0 10px;
}

span.ji_spa {
    position: absolute;
    background: #000;
    color: #fff;
    padding: 3px 12px 0px;
    font-size: 90%;
    font-weight: 500;
}
.cl_name_block {
    width: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 30px;
}
.cl_left span {
    font-weight: 600;
}

.cl_left {
    float: left;
    position: relative;
    display: flex;
    align-items: center;
    background: #002f87;
    color: #fff;
    padding: 0 10px;
    margin-right: 20px;
}
.cl_txt {
    font-weight: 600;
    line-height: 1.5;
    font-size: 120%;
    color: #000;
    padding: 8px 0;
}

table.table_02 {
    margin-bottom: 30px;
}

table.table_02 td {
    padding: 3px 0;
    font-size: 95%;
    line-height: 1.5;
}
table.table_02 th {
    width: 13%;
    text-align: left;
    font-size: 95%;
    padding: 3px 0;
    font-weight: 600;
}
.txt03 {
    background: #11287f;
    display: inline-block;
    padding: 0px 10px;
    margin-bottom: 4px;
    color: #fff;
}
table.table_02 td a:hover {
    opacity: 0.7;
    text-decoration: underline;
}

table.table_02 td a {
    color: #2740a3;
}

.btn_02 {
    margin: 50px auto 0;
    width: 90%;
    max-width: 360px;
}
.btn_02 a {
    position: relative;
    padding: 20px 0;
    text-align: center;
    background: #5A076F;
    font-size: 105%;
    font-weight: 600;
    color: #fff;
    display: block;
    transition: all 0.3s ease 0s;
    border-radius: 100px;
}
.btn_02 a:hover {
    opacity: 0.7;
}
.k_ul02 {
    position: relative;
    margin: 50px auto;
    display: flex;
    justify-content: center;
    gap: 100px;
    list-style: none;
}
.k_ul02 li {
    width: 100%;
    position: relative;
    transition: all 0.3s ease 0s;
}

.btn_03 {
    position: relative;
}
.btn_03 a {
    position: relative;
    border-radius: 15px;
    height: 200px;
    display: flex;
    align-items: center;
}
span.btn_spa_out {
    padding: 0 0 0 7%;
    position: relative;
}
.bt02 a {
    background: url(/wp-content/uploads/k_img24.jpg) center no-repeat;
}
.bt01 a {
    background: url(/wp-content/uploads/k_img23.jpg) center no-repeat;
}
.bt01 a:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background: rgb(231 130 40 / 85%);
    border-radius: 15px;
}
.bt02 a:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background: rgb(255 96 124 / 85%);
    border-radius: 15px;
}

.bt01 a:hover:before {
    background: rgb(255 120 0 / 90%);
}

.bt02 a:hover:before {
    background: rgb(227 77 103 / 90%);
}
span.btn_spa_txt {
    display: block;
    font-size: 120%;
    font-weight: 600;
    color: #fff;
    letter-spacing: 0.1em;
}
span.btn_spa_ttl {
    display: block;
    font-size: 200%;
    font-weight: 600;
    color: #fff;
    letter-spacing: 0.1em;
}

.w_txt span {
    font-size: 80%;
    font-weight: 700;
}

.w_txt {
    text-align: center;
    font-size: 220%;
    font-weight: 700;
    margin-bottom: 40px;
    line-height: 1.5;
    color: #fff;
}



/** Contactform - お問い合わせフォーム */
.wpcf7 {
    padding: 0;
    width: 100%;
    box-sizing: border-box;
}

.wpcf7 p { margin-bottom: 1em; font-size: 100%; }
.wpcf7 input, .wpcf7 textarea { border: 1px solid #ccc; box-sizing: border-box; line-height: 1.2; padding: 8px; width: 100%; }.wpcf7 input, .wpcf7 textarea {
    border: 1px solid #ccc;
    box-sizing: border-box;
    line-height: 1.2;
    padding: 20px;
    width: 100%;
    border-radius: 10px;
}
.wpcf7 select, .wpcf7 input[type=checkbox], .wpcf7 input[type=radio] { border: 1px solid #ccc; max-width: 97%; padding: 8px; width: auto; }
.wpcf7 select, .wpcf7 .wpcf7-list-item-label { font-size: 100%; line-height: 1.2; }
.wpcf7-list-item {
    display: inline-block;
    margin: 0 1em 0 0;
}
.wpcf7 textarea { height: 200px; }
.wpcf7 input:focus, .wpcf7 textarea:focus { border: 1px solid #bbb; box-shadow: inner 0 0 5px rgba(0, 0, 0, 0.5); outline: none; }
.wpcf7 .wpcf7-submit, .wpcf7 .wpcf7-previous{
    box-sizing: border-box;
    position: relative;
    display: block;
    width: 300px;
    margin: 30px auto 0;
    background: #5A076F;
    cursor: pointer;
    border: none !important;
    color: #fff;
    text-align: center;
    text-decoration: none;
    font-size: 105%;
    outline: none;
    -webkit-transition: all .3s;
    transition: all .3s;
    border-radius: 100px;
    padding: 25px 0;
    font-weight: 600;
    letter-spacing: 0.05em;
}

.wpcf7 .wpcf7-submit:before, .wpcf7 .wpcf7-submit:after { box-sizing: border-box; }
.wpcf7 .wpcf7-submit:hover, .wpcf7 .wpcf7-previous:hover {
    background-color: #875095;
}
.wpcf7 .wpcf7-submit .wpcf7-not-valid { background: pink; }
.wpcf7 .wpcf7-submit .wpcf7-response-output { margin: 10px 0 0; padding: 8px 35px 8px 14px; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; }
.wpcf7 .wpcf7-submit .wpcf7-validation-errors { color: #B94A48; background-color: #F2DEDE; border: 1px solid #EED3D7; }
.wpcf7 .wpcf7-submit .wpcf7-mail-sent-ok { color: #3A87AD; background-color: #D9EDF7; border: 1px solid #BCE8F1; }
.wpcf7 .wpcf7-previous + br { display: none; }
.wpcf7 form .wpcf7-response-output{ margin: 2em 0.5em 2em; padding:0; border: none; text-align:center; }
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output{ color:#dc3232; font-size: 1em; }

table.rec_table02 td {
    vertical-align: middle;
    width: auto;
    display: block;
    padding-bottom: 25px;
}
table.rec_table02 th {
    font-weight: 600;
    padding: 16px 0;
    font-size: 105%;
    width: auto;
    vertical-align: middle;
    text-align: left;
    line-height: 1.6;
    display: block;
}
span.required {
    background: #f15757;
    padding: 2px 11px;
    color: #fff;
    margin-left: 8px;
    font-size: 80%;
    border-radius: 100px;
    vertical-align: middle;
}
span.spa_b {
    font-size: 90%;
}
.txt24 a:hover {
    opacity: 0.7;
    text-decoration: unset;
}
.txt24 a {
    color: #f51e1e;
    text-decoration: underline;
}
.rec_box {
    margin-left: 10%;
}
.k_ttl06 {
    font-size: 190%;
    color: #000;
    font-weight: 700;
    line-height: 1.8;
    margin: 10px 0 40px;
}

/****投稿ページ********/
.bgtxt_flex {
    display: flex;
    position: relative;
    margin-bottom: 5px;
}
.bgtxt_flex .blog_date {
    line-height: 31px;
    height: 31px;
    vertical-align: middle;
    margin-right: 15px;
}
.p-article02__content {
    display: table;
    position: relative;
    width: 100%;
    margin-bottom: 60px;
    padding: 0 10px 30px;
    border-bottom: solid 1px #909090;
}
.p-article02__content_right {
    width: 60%;
    float: left;
    position: relative;
}
.p-article02__content_left {
    width: 36%;
    float: left;
    position: relative;
    margin-right: 4%;
}
.news_txt02 p {
    line-height: 1.5;
    font-size: 95%;
}
.blog_ttl02 {
    font-size: 120%;
    margin-bottom: 20px;
    font-weight: 600;
    color: #333;
    line-height: 1.6;
}
.image {
    height: 100%;
    display: block;
    overflow: hidden;
    position: relative;
    width: 100%;
}
.news_detail {
    margin: 100px auto;
    position: relative;
}
.news_detail img {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
}
.post-title {
    font-size: 180%;
    line-height: 1.8;
    font-weight: 700;
    border-bottom: solid 1px #7f7f7f;
    padding: 0 10px 25px;
    margin: 30px auto 40px;
    color: #000;
}
.news_detail p {
    margin-bottom: 20px;
}
.kn_inner {
    width: 90%;
    max-width: 1000px;
    margin: 0 auto;
    position: relative;
}
.p-news-block {
    margin: 100px auto;
    position: relative;
}
.p-article02__content a:hover {
    opacity: 0.7;
}

.p-article02__content a {
    color: #333;
    transition: all 0.3s ease 0s;
    position: relative;
    display: block;
}
.k_ttl04 {
    font-size: 150%;
    font-weight: 700;
    margin: 0px 0 30px;
    color: #000;
    padding-left: 18px;
    border-left: solid 5px #3862a1;
    line-height: 1.5;
}
.li_txt70 {
    width: 70%;
    float: left;
    position: relative;
}
.li_left30 {
    width: 26%;
    float: right;
    margin: 0 0 0 4%;
    position: relative;
}
.li_right30 {
    width: 26%;
    float: left;
    margin: 0 4% 0 0;
    position: relative;
}
.box_02 {
    background: #f7f7f7;
    padding: 30px 5% 10px;
    border-radius: 15px;
    margin-bottom: 50px;
}

.m_ttl span {
    font-size: 70%;
    background: #000;
    padding: 3px 7px;
    color: #fff;
    margin-right: 10px;
}
.ms_ttl:before {
    position: absolute;
    content: "";
    background: #0739af;
    border-radius: 100px;
    height: 10px;
    width: 10px;
    left: 0;
    top: 11px;
}
.ms_ttl {
    font-weight: 700;
    color: #000;
    font-size: 105%;
    position: relative;
    padding-left: 18px;
}
.m_ttl {
    font-size: 150%;
    font-weight: 600;
    color: #000;
    margin-bottom: 30px;
}
.space_s {
    height: 40px;
}
span.line_spa {
    font-weight: 700;
    color: #e92f7b;
    font-size: 105%;
}
.ser_ttl span {
    font-size: 60%;
    font-weight: 600;
}
.ser_ttl {
    font-size: 190%;
    font-weight: 700;
    color: #3862a1;
    position: relative;
    margin-bottom: 50px;
}
.k_ttl05 {
    font-size: 220%;
    color: #000;
    font-weight: 700;
    line-height: 1.8;
    margin-bottom: 60px;
}
.sub_txt {
    font-size: 110%;
    font-weight: 700;
    color: #687abf;
    margin-bottom: 14px;
}
.space_line {
    border-top: solid 1px #adadad;
    margin: 70px 0;
}
.vflex_box {
    background: #f3f8ff;
    padding: 20px;
}
.vf_txt {
    font-size: 90%;
    line-height: 1.8;
    margin: 10px 0 0;
}
.vf_ttl {
    font-size: 95%;
    line-height: 1.5;
    text-align: center;
    min-height: 76px;
}
.k_ttl04 span {
    font-family: "Oswald", sans-serif;
    color: #ab9626;
    margin-right: 16px;
}
.name_txt span {
    font-size: 70%;
    letter-spacing: 0.07em;
    font-family: "Oswald", sans-serif;
    font-weight: 500;
    margin-left: 26px;
    color: #83c14c;
}
.name_s {
    margin-bottom: 15px;
}
.name_txt {
    font-weight: 700;
    color: #000;
    font-size: 180%;
    letter-spacing: 0.1em;
    margin-bottom: 35px;
}
.reki_txt {
    position: relative;
    display: inline-block;
    background: #a1a1a1;
    color: #fff;
    padding: 5px 10px 3px;
    line-height: 1;
    border-radius: 4px;
}
table.profile th {
    font-size: 95%;
    width: 12%;
    text-align: left;
    padding: 2px 0;
}

table.profile td {
    font-size: 95%;
    padding: 2px 0;
}
.ul_list03 li:before {
    position: absolute;
    content: "";
    width: 5px;
    height: 5px;
    background: #333;
    border-radius: 10px;
    top: 10px;
    left: 0;
}

.ul_list03 li {
    position: relative;
    font-size: 95%;
    line-height: 1.6;
    margin-bottom: 10px;
    width: 47%;
    float: left;
    padding-left: 13px;
}
.ul_list03 {
    width: 100%;
    display: table;
    position: relative;
}
.f_txt01 {
    margin-bottom: 10px;
    font-size: 95%;
    line-height: 1.7;
}
.box_04 {
    margin-bottom: 70px;
    position: relative;
}
.box_04 ul {
    position: relative;
    margin: 0px auto;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
}
.box_04 ul li {
    position: relative;
}
.box_04 ul li a {
    display: block;
    text-align: center;
    font-size: 100%;
    font-weight: 700;
    color: #fff;
    position: relative;
    background: #c3c6dd;
    height: 90px;
    border-radius: 10px;
transition: all 0.3s ease 0s;
}
span.cspa_sh {
    font-size: 75%;
    letter-spacing: 0;
}
span.cspa {
    font-weight: 700;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: #fff;
    z-index: 2;
    width: 98%;
    line-height: 1.5;
    letter-spacing: 0.1em;
}
.box_04 ul li a:hover {
    background: #111c65;
}
.curent a {
    background: #111c65 !important;
}
.ff_inner {
    width: 90%;
    max-width: 1000px;
    margin: 0 auto;
    text-align: center;
}
.sr_ttl {
    font-size: 110%;
    font-weight: 600;
    margin: 40px auto 10px;
}
.sr_txt a:hover {
    opacity: 0.8;
    text-decoration: underline;
}
.sr_txt a {
    position: relative;
    display: block;
}
.sr_txt {
    font-size: 105%;
    margin-bottom: 30px;
}

/*下層reson**/
@media only screen and (max-width: 1200px) {
	#contents_header {
    height: 350px;
}
.box_04 ul {
    gap: 20px;
}
}

@media only screen and (max-width: 767px) {
#contents_header {height: 300px;}.kai_sp{display:none}.p-page-header__inner {width: 90%;margin: 0 auto;bottom: 50px;left: 0;right: 0;}.breadcrumbs {font-size: 75%;}.p_en_txt {font-size: 90%;font-weight: 500;}.ser_ttl {font-size: 160%;margin-bottom: 25px;}.m_ttl {margin-bottom: 25px;font-size: 130%;}.li_txt70 {width: 100%;float: unset;}.space_line {margin: 50px 0;}.k_ttl05 {font-size: 180%;margin-bottom: 40px;}.sub_txt {font-size: 100%;}table.table_02 th {width: 21%;}.voice_img {height: 250px;}.pa_cen {padding: 6px 0;}.k_img_flex01 {display: block;}.cl_left, .cl_right {float: unset;}.cl_txt {font-size: 105%;}.wpcf7 .wpcf7-submit, .wpcf7 .wpcf7-previous {width: 250px;font-size: 100%;padding: 22px 0;}.wpcf7 input, .wpcf7 textarea {padding: 15px;border-radius: 6px;}table.rec_table02 th {padding: 0;}table.rec_table02 td {padding: 13px 0 30px;}table.rec_table02 th, table.rec_table02 td {width: auto;display: block;}.rec_box {margin-left: 0;}.btn_02 a {font-size: 100%;padding: 14px 0;}.btn_02 {max-width: 250px;}span.btn_spa_ttl {font-size: 150%;}span.btn_spa_txt {font-size: 96%;}.btn_03 a {height: 140px;margin-bottom: 31px;}.k_flex_con_end {padding: 0;}.k_ul02 {display: block;gap: 0;}.k_flex_con {margin-bottom: 20px;padding: 0;}.k_img_flex02 {display: block;}.k_ttl04 {font-size: 140%;padding-left: 10px;border-left: solid 4px #3862a1;margin: 0px 0 20px;}.li_right30 {width: 90%;float: unset;margin: 0 auto 20px;}.space {height: 70px;}.li_txt_w {width: 100%;float: unset;}.li_left_w {width: 100%;float: unset;margin: 0 auto 20px;}.gr_inner {margin: 70px 0 -150px;}span.ch_spa:after {width: 12px;height: 5px;top: 3px;}span.ch_spa {padding-left: 20px;}span.ch_spa:before {width: 8px;height: 8px;}.list_ul01 li {font-size: 105%;}.k_ttl03 {font-size: 160%;line-height: 1.6;}.k_ttl03 span {padding-left: 35px;}.k_ttl03 span:before {width: 20px;}.li_txt {width: 100%;margin: 0;float: unset;}.li_right {width: 100%;margin: 0 auto 20px;float: unset;}.k_ttl02 {font-size: 190%;margin: 12px 0 50px;padding-top: 14px;}table.tabl_01 td {line-height: 1.5;font-size: 95%;padding: 30px 2% 10px 10px;color: #000;font-weight: 400;}table.tabl_01 th {line-height: 1.5;padding: 30px 0px 10px 2%;font-size: 95%;color: #000;}.k_flex01 {display: block;}.kf_80 {width: 100%;}.k_ttl01 {font-size: 180%;}.kf_20 {width: 100%;float: unset;}.page_head_tittle {line-height: 1.6;font-size: 160%;}.sp_kai {display: block;}
.li_left_s {
    width: 100%;
    float: unset;
    margin: 0 auto 20px;
	}
.ul_list03 li {
    width: auto;
    float: unset;
}
.box_04 ul {
    gap: 20px;
    grid-template-columns: repeat(2, 1fr);
}
table.profile th {
    width: 20%;
}
.name_txt span {
    margin-left: 20px;
}
.name_txt {
    font-size: 170%;
    margin-bottom: 20px;
    text-align: center;
}
.f_txt01 {
    margin-bottom: 5px;
    font-size: 90%;
}
.box_04 ul li a {
    font-size: 16px;
}
.name_s {
    text-align: center;
    font-size: 90%;
    line-height: 1.8;
    margin-bottom: 10px;
}
.p-article02__content {
    padding: 0 0 20px;
    margin-bottom: 40px;
}
.blog_ttl02 {
	font-size: 110%;}
.li_txt_s {
    width: 100%;
    float: unset;
}
.box_04 {
	margin: -50px 0 35px;}
.p-news-block {
    margin: 60px auto;
}
.p-article02__content_left {
    width: 90%;
    float: unset;
    margin: 0 auto 20px;
}
.p-article02__content_right {
    width: 100%;
    float: unset;
}
}

@media only screen and (max-width: 500px) {
	.box_04 ul li a {
    height: 65px;
    border-radius: 6px;
}
span.cspa {
    width: 90%;
}
    .box_04 ul {
		gap: 14px;}
.box_04 ul li a {
    font-size: 90%;
}
}


/*LP共通CSS**/
.lp-footer {
    background: #e71eb1;
    padding: 50px 0;
}
.lp_f_txt {
    text-align: center;
    color: #fff;
    font-size: 100%;
    line-height: 1.8;
}
.lp_f_logo {
    width: 80%;
    max-width: 400px;
    text-align: center;
    margin: 0 auto 30px;
}
