/* 
Theme Name: muscle-photo_child
Version: 1.6
Template: muscle-photo
 */

@import url('https://fonts.googleapis.com/css2?family=Arvo:wght@400;700&family=Noto+Sans+JP&family=Roboto:ital,wght@1,300&display=swap');

:root {
    --base-dark: #1b1b1b;
    --base-light: #333;
    --accent-red: #f77060;
    --accent-gold: #a0995e;
    --accent-gray: #ccd6d5;
    --footer: 600px;
    --fsz-base: 16px;
}
*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

p {
    margin: 0 0 20px;
}

p:last-child {
    margin-bottom: 0;
}

.body {
    width: calc(100vw - 100%);
    min-height: 100vh;
    height: auto;
    padding-bottom: var(--footer);
    position: relative;
	font-size: var(--fsz-base);
}

a{
	text-decoration: none;
	color: inherit;
}

a:focus {
	outline: none;
}

h2 {
    font-size: calc(1.4 * var(--fsz-base));
}

p,
li {
   /* font-size: var(--fsz-base);*/
}

.sp-display {
    display: none;
}

.gold {
	color: var(--accent-gold);
}

.red {
    color: #da0037;
}

.white {
	color: white;
}

.common_h3 {
    font-size: 26px;
	margin-bottom: 40px;
}

.common_h4 {
    font-size: 20px;
	margin-bottom: 30px;
}


.arrow {
	position: relative;
	margin-bottom: 80px;
}

.arrow_price { /* 2023.9.29 */
	position: relative;
	margin-bottom: 50px;
}
/* 2024.7.30修正 */
.arrow:after {
	content: "";
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	height: 12px;
	background-image: url(/wp-content/uploads/2024/07/arrow_right.webp);
	background-repeat: no-repeat;
	background-size: auto 100%;
	background-position: center;
}
/* 2024.7.30修正 */
.arrow_price:after { 
	content: "";
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	height: 12px;
	background-image: url(/wp-content/uploads/2024/07/arrow_right.webp);
	background-repeat: no-repeat;
	background-size: auto 100%;
	background-position: center;
}

.h2_small {
	font-size: 16px;
}

.mincho {
	font-family: "游明朝体+36ポかな", serif;
}

.large {
	font-size: 26px;
}

.medium {
	font-size: 22px;
}

.small { /* 2023.7.6追加 */
	font-size: 18px;
}
/* 2024.7.30追加 */
.x-small {
	font-size: 16px;
}

.u {
	text-decoration: underline;
}

/* --------------------------------------- */
/* --------------------------------------- */
/* --------------------------------------- */

.site-header {
    background-color: var(--base-light);
    display: flex;
    height: 80px;
    padding: 0 4%;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    z-index: 100;
    width: 100%;
}

.header-logo {
    display: block;
    width: 200px;
    height: auto;
}

.header-logo img {
    height: 100%;
    width: auto;
}

.header-instagram { /* 2023.9.4修正 */
/* 	margin-right: 5px; */
   line-height: 1;
}

.header-instagram a:first-child {  /* 2023.10.23追加 */
	margin-left: 0;
}

.header-instagram a:last-child {  /* 2023.10.23追加 */
	margin-right: 0;
}
/* 2024.8.1修正 */
.main-navigation {
/*  width: 60%; */
/* 	width: 65%; */
	width: 70%;
	height: 80px;
	display: flex;
	justify-content: end;
	align-items: center;
}
/* 2024.8.1修正 */
.main-navigation li {
	margin-right: 10px;
	font-size: 1vw;
	width: auto;
	display: flex;
	justify-content: center;
	align-items: center;
}

.main-navigation ul ul {
	display: block;
}

.main-navigation li ul li {
	margin-right: 0;
}
/* 2024.8.1修正 */
#primary-menu li ul li a {
	color: #fff;
	background-color: rgba(50,50,50,80%);
/* 	padding: 10px 20px 10px 10px; */
	padding: 10px;
	width: 100%;
	white-space: nowrap;
}
/* 2024.8.1修正 */
/* #primary-menu li ul li a:before {
	content:"▶";
	margin-right: 5px;
	opacity: 0;
} */

#primary-menu li ul li a:hover {
	background-color: rgba(100,100,100,100%);
}

#primary-menu li ul li a:hover:before {
	opacity: 1;
}
/* 2024.6.12修正 */
.header_menu {
    width: 100%;
/* 	width: 80%; */
    height: 100%;
}

#primary-menu {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
}

#primary-menu a {
    color: #fff;
}
/* 2024.8.1追加 */
#primary-menu li:last-child {
	margin-right: 0;
}

/* 2024.8.1追加 */
.main-navigation ul ul {
	top: 81px;
}

#header-login {
    padding: 4px;
    border: 1px solid #fff;
    color: #fff;
    width: 150px;
    height: 40px;
    border-radius: 40px;
    display: flex;
    justify-content: space-around;
    align-items: center;
    font-size: 12px;
}

#header-contact {
    padding: 4px;
    border: 1px solid #fff;
    color: #fff;
    width: 150px;
    height: 40px;
/*     border-radius: 40px; */
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 12px;
}

.header_contact_btn a { /* 2023.9.4追加 */
    display: inline-block;
    margin: 0 15px;
}
/* 2025.5.10修正 */
.header_contact_btn {
	border: 1px solid #fff;
	color: #fff;
/* 	padding: 5px 14px; */
/* 	padding: 5px 20px; */
	padding: 10px 20px;
	font-weight: bold;
	margin-bottom: 1px;
	font-size: 13px;
	position: absolute;
	right: 10px;
	line-height: 1; /* 2024.7.4追加 */
}

/* 2024.7.16修正 */
/* .header_contact_btn:before {
	content: url(/wp-content/themes/muscle-photo-child/img/sp_icon_contact_line.png);
	margin-right:5px;
	vertical-align: middle;
} */

.pre-img {
    width: 24px;
    height: 32px;
}

.en {
	font-family: Rockwell,Courier Bold,Courier,Georgia,Times,Times New Roman,serif!important;
	font-family: 'Arvo', serif!important;
}

.b {
	font-weight: bold!important;
}

.header-login a img:last-child {
	width: 50px;
	height: auto;
}

/* 2024.6.12追加 */
.freetrial_btn {
	background-color:#e87060;
	border: 0;
    border-radius: 4px;
	padding: 5px 20px 7px;
    font-weight: bold;
}

/* --------------------------------------- */
/* --------------------------------------- */
/* --------------------------------------- */

.site-footer {
    width: 100%;
    height: auto;
    text-align: center;
    background-color: var(--base-dark);
    padding-bottom: 50px;
}

.footer-bg {
    background-color: var(--base-light);
    height: 20vh;
    align-items: end;
    display: flex;
    color: var(--base-dark);
    text-transform: uppercase;
    justify-content: center;
}

.footer-bg img {
	width: 70%;
	position: relative;
	z-index: 3;
}

.footer-content {
    color: #fff;
    margin: 5% auto 4%;
}

.footer-content-left {
    width: 24%;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

.footer-content-left .link-button {
    width: 100%;
    height: 40px; 
    line-height: 40px; 
    border-radius: 1px;
    font-weight: 400;
    font-size: 16px;
}

.footer-content-right {
    width: 70%;
}

.footer-inner-upper {
    display: flex;
    justify-content: space-between;
}

.footer-inner-item {
    text-align: left;
}

.footer-inner-item .footer-item-head {
    font-weight: normal;
    margin-bottom: 1em;

}

.footer-inner-item ul {
    margin-left: 1.2em;
}

.footer-inner-item ul li {
    margin-bottom: .5em;
}

.footer-under-wrapper {
    display: flex;
    width: 90%;
    justify-content: space-between;
    font-size: calc(.8 * var(--fsz-base));
}

.site-info {
    color: #fff;
}

.footer-content a {
    display: inline-block;
    margin: 0 15px;
}

.footer-content a.footer-contact-btn {
    border: 1px solid;
    padding: 5px 30px;
    font-weight: bold;
    margin-bottom: 25px;
    font-size: 18px;
}

.site-info {
    letter-spacing: 2px;
}

.site-info a:hover {
    letter-spacing: 2px;
}

.site-footer {
    font-size: 14px;
}

.site-footer {
    color: #A69658;
}

/* --------------------------------------- */
/* --------------------------------------- */
/* --------------------------------------- */

.site-main {
    width: 100%;
    min-height: 100vh;
    padding-top: 80px;
}

.top-main_visual {
    width: 100%;
    background-color: #000;
    position: relative;
}

.top-main-wrapper {
    color: #fff;
    text-align: center;
    height: calc(100% - 100px);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.top-main-upper,
.top-main-under {
    width: 100%;
    display: flex;
    flex-direction: column;
}

.top-main-upper {
    height: 50%;
    justify-content: space-around;
}

.top-main-under {
    height: 45%;
    justify-content: start;
}

.top-main-upper>*,
.top-main-under>* {
    margin: 0 auto;
}

.top-main-title {
    font-size: 3rem;
    font-weight: 400;
}

.top-main-subtitle {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 48%;
    margin: 0 auto;
    gap: 10px;
}
.top-main-subtitle p{
    font-size: 18px;
}
.top-main-subtitle-dash{
    width: 100px;
    border-bottom: solid 1px;
}

.top-main-text {
    font-size: 14px;
    line-height: 20px;
}

.top-main-logo {
    display: block;
    width: 30%;
    max-width: 400px;
    height: auto;
    margin: 0 auto 2%;
}
.top-mainvisual-button{
/*     bottom: 10vw; */
    bottom: 14vw; /* 2023.9.25 修正 */
    position: absolute;
    width: 100%;
}
.top-mainvisual-button .link-button{
    color: #fff;
    text-align: center;
}

.link-button {
    max-width: 300px;
    height: 60px;
    line-height: 60px;
    display: block;
    margin: 0 auto;
    border-radius: 3px;
    font-size: 20px;
    font-weight: bold;
    border: 1px solid var(--accent-red);
    background-color: var(--accent-red);
	color: #fff;
    text-transform: uppercase;
}

.link-button:hover {
    background-color: #fff;
	color: var(--accent-red);
}

.link-button.link-button-green:hover { /* 2023.5.11修正 */
	color: #fff;
}
.link-button.link-button-green { /* 2023.5.11修正 */
	border: 1px solid #4faaac;
	background-color: #4faaac;
}

.top-floating-banner {
	position: fixed;
	z-index: 9999;
	bottom: 5%;
	right: 5%;
	display: none;
	cursor: pointer;
}

.top-floating-banner img {
	width: 220px;
}

.top-floating-banner-close {
	position: absolute;
	right: 0;
	top: 0;
	height: 60px;
	width: 60px;
	z-index: 1;
}

.top-slider .slick-slide img {
	width: 100vw;
}

.top-slider-bar {
    height: 5px;
    width: 80px;
    border-radius: 2.5px;
    margin: 0 8px;
    background-color: #606060;
}

.top-slider-current {
    background-color: #fff;
}

.top-slider .slick-dots {
    position: absolute;
    bottom: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    width: 100%;
    background-color: rgba(0,0,0,70%);
    padding: 25px 0 40px;
    list-style: none;
}

.top-slider .slick-dots .pager-item {
    background-color: #ffffff;
    height: 4px;
    width: 50px;
    display: inline-block;
    margin: 0 7px;
    border-radius: 2px;
    opacity: 0.3;
}

.top-slider .slick-dots li {
    font-size: 0;
}

.top-slider .slick-dots .slick-active .pager-item {
    opacity: 1;
}

.top-mainvisual-txt {
	position: absolute;
/* 	bottom: calc(12vw + 55px);  */
/* 	bottom: calc(16vw + 55px); */
	bottom: calc(18vw + 55px); /* 2023.9.25 修正 */
	left: 0;
	right: 0;
	text-align: center;
}

.top-mainvisual-txt img {
	max-width: 45vw;
}

/* --------------------------------------- */
/* --------------------------------------- */
/* --------------------------------------- */

.top-about {
    width: 100%;
    /* 背景に灰色の帯 */
    background: content-box;
	 position: relative; /* 2023.3.15追加 */
}

.top-about:before{ /* 2023.3.15追加 */
    content: "";
    position: absolute;
    left: 0;
    bottom: 70px; /* 2024.6.12修正*/
/* 	 bottom: 148px; */
    background-color: #e9eaed;
    width: 100%;
	 height: 60%; /* 2024.6.12修正*/
/* 	 height: 50%; */
	 z-index: -1;
}

.arrow-link::after{
    content: '>';
    margin-left: 5px;
	font-weight: normal;
	font-family: cursive;
/* 	2024.7.16追加 */
	position: relative;
    top: -2px;
}
.top-about-upper,
.top-about-under {
    width: 78%;
    height: auto;
    display: flex;
    justify-content: space-between;
    margin: 85px auto;
}

.top-about-upper-item {
    display: inline-flex;
    flex-flow: column nowrap;
    width: 19vw;
    height: calc(19vw / 3 * 4);
    text-align: center;
    justify-content: center;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.top-about-upper-item h2 {
	color: #fff;
	font-weight: bold;
	background-color: transparent; /* 2023.7.13 修正 */
	margin: 0; /* 2023.7.13 修正 */
}

.top-about-upper-item p,
.top-about-under-content p {
    color: var(--accent-gold);
    text-transform: uppercase;
    font-weight: normal;
}

#top-detail {
    background-image: url(./img/detail_menu_bk.jpg);
}

#top-detail:hover {
    background-image: url(./img/detail_menu.jpg);
}

#top-at_first {
    background-image: url(./img/first_menu_bk.jpg);
    background-position: 10% bottom;
    background-size: 400%;
}

#top-at_first:hover {

    background-image: url(./img/first_menu.jpg);
    background-position: 10% bottom;
    background-size: 400%;
}

#top-photographic {
    background-image: url(./img/photo_menu_bk.jpg);
}

#top-photographic:hover {
    background-image: url(./img/photo_menu.jpg);
}

#top-training {
    background-image: url(./img/training_menu_bk.jpg);
}

#top-training:hover {
    background-image: url(./img/training_menu.jpg);
}

#top-studio { /* 2023.6.27 追加 */
    background-image: url(./img/studio_menu_bk.jpg);
}

#top-studio:hover { /* 2023.6.27 追加 */
    background-image: url(./img/studio_menu_0627.jpg);
}

#top-price { /* 2023.6.27 追加 */
    background-image: url(./img/price_menu_bk.jpg);
}

#top-price:hover { /* 2023.6.27 追加 */
    background-image: url(./img/price_menu_0627.jpg);
}

#top-trainer { /* 2023.6.27 追加 */
    background-image: url(./img/trainer_menu_bk.jpg);
}

#top-trainer:hover { /* 2023.6.27 追加 */
    background-image: url(./img/trainer_menu_0627.jpg);
}

#top-voice { /* 2023.9.4 修正 */
    background-image: url(./img/voice_menu_sp_0904.jpg);
}

#top-faq { /* 2023.9.4 修正 */
    background-image: url(./img/faq_menu_sp_0904.jpg);
}

#top-session { /* 2023.10.3 追加 */
    background-image: url(./img/session_menu_sp_1003.jpg);
}

#top-photo { /* 2023.10.3 追加 */
    background-image: url(./img/photographic_menu_sp_1003.jpg);
}

.top-about-upper-item:hover {
    background-color: rgba(255, 255, 255, .8);
    background-blend-mode: lighten;
}

.top-about-upper-item:hover h2,
.top-about-under-content h2 {
    color: #000;
    font-weight: bold;
}

/* --------------------------------------- */
/* --------------------------------------- */
/* --------------------------------------- */


.top-about-under { /* 2023.5.30追加 */
	flex-wrap: wrap;
	margin: 70px auto 80px;
}


.top-about-under-item {
	 width: 38vw;
/*     width: 25vw;  2023.5.30修正*/
    /* 	height: calc(25vw / 4 * 3); 2023.5.30修正 */
    height: calc(25vw / 6.5 * 2.9);
    text-align: center;
    justify-content: center;
    align-items: center;
    display: table;
/*     padding: 2%; */  /* 2023.3.15修正 */
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}
/* 
.top-about-under-border {
    border: 8px solid rgba(255, 255, 255, .8);
    padding: 4px;
    margin: auto;
    display: table-cell;
} */

.top-about-under-border {
    border: 8px solid rgba(213, 217, 224, .8); /* 2023.3.15修正 */
    padding: 4px;
    margin: auto;
    display: table-cell;
}

/* .top-about-under-content {
    background-color: rgba(255, 255, 255, .8);
    width: 100%;
    height: 100%;
    margin: 0;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
}
 */
.top-about-under-content {
    background-color: rgba(255, 255, 255, .5); /* 2023.3.15修正 */
    width: 100%;
    height: 100%;
    margin: 0;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
}

.top-about-under-content h2 {
    margin: 0;
}
/* 2023.4.15修正  5/1時点では使用しない*/
/* #top-studio {
    background-image: url(./img/studio_menu_0424.jpg);
}

#top-trainer {
    background-image: url(./img/trainer_menu.jpg);
    background-position: center bottom;
    background-size: 230%;
}

#top-price {
    background-image: url(./img/price_menu_0424.jpg);
}

.top-about-under-item:hover {
    background-color: rgba(160, 153, 94, .8);
    background-blend-mode: lighten;
} */

.top_comingsoon { /* 2023.3.15追加 */
	padding: 9%;
	width: 65% ;
	margin: 0 auto;
	border: 1px solid #a0995e;
}


/* --------------------------------------- */
/* --------------------------------------- */
/* --------------------------------------- */

.top-news {
    width: 100%;
    height: auto;
    margin: 10vh auto;
    display: flex;
    flex-direction: column;
}

.news-title {
/*     width: 4em; */
    text-align: center;
    margin: 0 auto 40px;
    color: var(--accent-gold);
    font-weight: 400;
    font-size: 30px;
	  background-color: transparent;
}
/* 2023.10.4修正 */
.news-grid {
    width: 78%;
    margin: 0 auto;
    display: inline-grid;
    grid-template-columns: repeat(4, 20%);
/*     grid-template-rows: repeat(2, 1fr); */
    column-gap: calc(20% / 3);
}

.news-grid-item {
    width: 100%;
    min-height: 200px;
    margin-bottom: 50px;
    overflow-wrap: break-word;
}

.news-gird-item-wrapper {
    width: 100%;
    height: 100%;
}

.news-grid-item img {
    width: 100%;
    height: calc(20vw / 16 * 9);
    object-fit: cover;
}

.news-item-date {
    color: var(--accent-gold);
    margin: 0;
}

.news-item-title {
    margin-top: 1em;
    font-size: 15px;
    margin: 1em 0 3px;
	/* 	2025.5.12追加 */
	text-align: justify;
}

.news-item-text {
    font-size: 12px;
    margin: 0;
}

.news-more {
    display: block;
    padding: 10px;
    width: 15%;
    text-transform: uppercase;
    color: var(--accent-gold);
    background-color: var(--base-dark);
    margin: 50px auto 0;
    text-align: center;
    min-width: 200px;
}

.news-more:visited {
	color: var(--accent-gold);
}

.news-more:hover{
	background-color: var(--accent-gold);
	color: var(--base-dark);
}
/* 2025.5.12追加 */
.news_important {
	color: #e87060;
}


/**
* 第二階層共通
 * ----------------------------------------------------------------------------
 */

main section p:last-child {
	margin-bottom:0;
}

main section {
	padding: 80px 50px;
	position: relative;
}
.section_inner {
	max-width: 1060px;
	margin: auto;
	position: relative;
	z-index: 2;
}

.header_full {
    padding: 80px 0 0 0;
}

.header_full img {
	width: 100%;
	display:block;
}

.center {
	text-align: center;
}

.right {
	text-align: right;
}

/* 2024.7.29 header_full h2→h1へ */
.header_full h1 {
	position: absolute;
	font-size: 22.4px;
	top: 50%;
	left: 18%;
	display: flex;
}

.header_full h1 > span:nth-child(1) {
	background-color: #fff;
	padding: 10px 30px;
}

.header_full h1 > span:nth-child(2) {
    color: var(--accent-gold);
    background-color: #353535;
    padding: 10px 30px;
}

.header_txt {
    padding: 120px 50px 50px;
    background-color: #eceef1;
}

.header_txt h2 {
    font-size: 16px;
}

.header_txt .section_inner {
    max-width: 900px;
}

/* 2024.7.29追加 */
.non_img_header {
	max-width: 1060px;
	margin: 0 auto;
}
/* 2024.7.29追加 */
div.breadcrumbs {
    padding: 10px 50px;
    color: #fff;
    background-color: #414141;
    font-size: 14px;
}

/**
* マッスルフォトとは
 * ----------------------------------------------------------------------------
 */

.whatMP_intro:before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	background-color: #eceef1;
	width: 100%;
/* 	height: 75.5%; */
	height: 100%; /* 2023.6.13 修正 */
}

.whatMP_intro_text {
	text-align: justify;
	margin: 0 auto;
/* 	padding: 60px 0 40px 0; */
	padding-bottom: 40px; /* 2023.6.13 修正 */
	line-height: 2;
/* 	max-width: 500px; */
	max-width: 650px; /* 2023.6.27 修正 */
}

.whatMP_intro_text h3 {
	font-family: '游明朝体+36ポかな',serif;
   font-size: 1.4em;
   font-weight: 400;
   color: #a69658;
	line-height: 1.6; /* 2023.8.25 追加 */
}

.whatMP_intro img{
	padding-top: 30px;
}

.whatMP_detail{
   background-color: #1b1b1b;
   background-image: url(/wp-content/uploads/2023/03/what-musclephoto_background.png);
/*     background-size: auto 95%;
   background-position: bottom right -5%; */
	background-size: auto 60%; /* 2023.8.25 修正 */
	background-position: top 50% right -10%; /* 2023.11.27 修正 */
   background-repeat: no-repeat;
}

.whatMP_detail_text{
	text-align: justify;
	margin: 0 auto;
	padding: 60px 0 40px 0;
	line-height: 2;
	max-width: 500px;
	color: #fff;
}

.whatMP_detail_text h3{
	font-family: '游明朝体+36ポかな',serif;
	font-size: 1.4em;
	font-weight: 400;
	color: #a69658;
	margin-bottom: 20px; /* 2024.6.12追加 */
}
	/* 2024.6.12修正 */
.whatMP_detail:after {
    content: "";
    position: absolute;
    left: 0;
	bottom: 0;
/* 	bottom: -158px; */
    height: 580px;
    width: calc( ( 100vw - 530px ) / 2);
    background-image: url(https://muscle-photo.com/wp-content/uploads/2023/03/whatmp_detail2.png);
    background-size: contain;
    z-index: 1;
    background-repeat: no-repeat;
    background-position: left bottom;
}

.whatMP_body_image { /* 2023.6.13追加 */
	max-width: 500px;
	margin: 0 auto;
}

.whatMP_body_image ul { /* 2023.6.13追加 */
	list-style: none;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.whatMP_body_image li { /* 2023.6.13追加 */
	margin-bottom: 10px;
	max-width: 48%;
}
/* 2024.6.12追加 */
.top_strongpoint_sp h3 {
	font-family: '游明朝体+36ポかな', serif;
    font-weight: 400;
    color: #a69658;
	margin-bottom: 10px;
}

/* 2024.6.12追加 */
.whatMP_detail:before {
    content: "";
    position: absolute;
    left: 0;
	top: 0;
    height: 650px;
    width: calc( ( 100vw - 530px ) / 2);
    background-image: url(http://www.muscle-photo-test.finepros.biz/wp-content/uploads/2024/06/whatmp_detail_image.png);
    background-size: contain;
    z-index: 1;
    background-repeat: no-repeat;
    background-position: left bottom;
}

/* 2025.3.19追加 */
.BandA_wrap {
	padding: 25px;
	margin: 0 auto;
	background-color: var(--base-dark);
/*     display: flex; */
/*     justify-content: center; */
}

/* 2025.11.10修正 */
.BandA_contents {
	display: flex;
    justify-content: space-between;
}

/* 2025.11.10修正 */
.BandA_contents img {
	vertical-align: bottom;
	max-width: 22%;
}
/* 2025.3.19追加 */
/* .BandA_contents img:first-child {
	margin-right: 20px;
} */


/**
* 初めての方へ
 * ----------------------------------------------------------------------------
 */
.first_campaign {
	background-image: url(/wp-content/uploads/2023/01/first_campaign_bg.jpg);
	background-size: cover;
	background-position: center;
	min-height: 55vw;
	padding-top: 8.6%;
/* 	padding-bottom: 50px; */
	padding-bottom: 35px; /* 2023.9.15修正 */
}

.first_campaign .section_inner {
	max-width: 60%;
}

.first_campaign .link-button {
	margin: 7vw auto 0 auto;
}

.first_campaign_part {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto 40px;
}

.first_campaign_part_img {
	width: 480px;
	max-width: 45%;
}

.first_campaign_part_txt {
	margin-left: 50px;
	margin-top: -40px;
	flex: 1;
}

.first_campaign_part_txt h4 > span {
	display: inline-block;
	font-size: 16px;
	padding: 3px 5px;
	background-color: var(--accent-gold);
	line-height: 1;
	margin-left: 5px;
}

.page-template-at-first-page .footer-bg {
	background-color: #fff;
}

@media(min-width: 581px) { /* 2023.6.13追加 */
	.smallsize-display{
		display: none !important;
	}
}

@media screen and  (max-width: 580px) { /* 2023.6.13追加 */
	.mediumsize-display{
		display: none !important;
	}
}

.tiktok_linkbanner{  /* 2023.6.13追加 */
	background-color: #ebedf0;
	padding: 0 50px 50px;
}


.tiktok_linkbanner .section_inner {  /* 2023.6.13追加 */
	max-width: 60%;
}


/**
* 料金について
 * ----------------------------------------------------------------------------
 */
.price_monthly {
    background-color: #353535;
}


.price_monthly .arrow {
	margin-bottom: 40px;
}

.price_monthly img { /* 2023.9.4追加 */
	width: 25px;
}

.price_detail_list {
    margin: 0;
    list-style: none;
}

.price_detail_list li {
    display: flex;
    border-bottom: 1px solid var(--accent-gold);
    margin-bottom: 25px;
}

.price_detail_list li > span {
    width: 50%;
    font-size: 20px;
    font-weight: bold;
}

.price_detail_list li > span:nth-child(1) {
    padding: 15px 80px;
    color: var(--accent-gold);
}

.price_detail_list li > span:nth-child(2) {
    padding: 15px 0px;
    text-align: center;
}

.price_detail_list li:last-child {
    margin-bottom: 15px;
}

.price_common{
    background-color: #353535;
}

.price_common .arrow {
	margin-bottom: 40px;
}

.page-template-price-page .footer-bg {
	background-color: #fff;
}


.price_common_txt {
	margin-top: 30px;
}

.price_monthly .price_common_txt {
	margin-top: 50px;
}
/* 2024.1.30 修正 */
.price_included_title {
	background-color: #a69658;
	padding: 10px;
	margin: 100px auto 30px auto;
	/* 	max-width: 780px; */
	max-width: 650px; 
}

.price_included_list {
    list-style: none;
    margin: 0;
    max-width: 610px;
    margin: auto;
    letter-spacing: -0.2px;
}

/* .price_included_list li:before { 2023.4.14 修正
    content: "-";
    margin-right: 5px;
} */

.price_included_list li {
    margin-bottom: 10px;
}

.price_detail_table {
    max-width: 650px;
    margin: auto;
    border-collapse: collapse;
    font-weight: bold;
    /*     margin-top: 50px; */
    margin-top: 30px; /* 2023.9.29 */
	 position: relative;
}

.price_detail_table th {
    width: 55%;
    text-align: left;
    border: 1px solid #a69658;
    background-color: #e2decd;
    padding: 15px 40px;
}

.price_detail_table td {
    border: 1px solid #a69658;
}
/* 2024.3.22修正 */
.price_detail_table td {
    padding: 15px 50px;
    text-align: right;
	line-height: 1.2;
}

.price_detail_table_ticket {
    max-width: 650px;
    margin: auto;
    border-collapse: collapse;
    font-weight: bold;
/*     margin-top: 50px; */
    margin-top: 30px; /* 2023.9.29 */
    position: relative;
}

.price_detail_table_ticket th {
    width: 65%;
    text-align: left;
    border: 1px solid #a69658;
    background-color: #e2decd;
    padding: 15px 40px;
}

.price_detail_table_ticket td {
    border: 1px solid #a69658;
}
/* 2024.3.22修正 */
.price_detail_table_ticket td {
    padding: 15px 50px;
    text-align: right;
	line-height: 1.2;
}

.price_campaign td {
    color: #3cb5ac;
    background-image: url(/wp-content/uploads/2023/03/campaign_price.png);
    background-repeat: no-repeat;
    background-size: auto 65%;
    background-position: center left 37%;
}

.price_otameshi:before {
	content: "";
	position: absolute;
	left: -10px;
	top: -10px;
	width: 70px;
	height: 70px;
	background-image: url(/wp-content/uploads/2023/03/price_otameshi.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left top;
}

.price_osusume:before {
	content: "";
	position: absolute;
	left: -10px;
	top: -10px;
	width: 70px;
	height: 70px;
	background-image: url(/wp-content/uploads/2023/03/price_osusume.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left top;
}

.price_note_list { /* 2023.9.29 修正 */
    margin: 30px auto 50px auto;
    max-width: 650px;
    list-style: none;
    font-size: 14px;
}

.price_note_list li {
    position: relative;
    padding-left: 20px;
}

.price_note_list li:before {
    content: "※";
    position: absolute;
    left: 0;
}

.price_coming_soon {
	margin: 80px 0 100px;
}

.price_logo {
	margin-bottom: 50px;
}

.text_indentation_price { /* 2023.4.14 追加 */
	display: block;
	text-indent: -1em;
	padding-left: 1em;
}

.strikethrough_green { /* 2023.9.4 追加 */
	text-decoration: line-through 3px solid #3cb5ac;
 }

/* 2023.9.29 追加 */
.end_of_campaign {
	max-width: 650px;
   margin: 10px auto 50px;
}
/* 2023.9.29 追加 */
.end_of_campaign p {
	color: #3cb5ac;
}
/* 2023.9.29 追加 */
.price_expiry　{
	font-size:18px;
}

/* 2024.1.31 追加 */
.price_information {
	margin-bottom: 35px;
}

.price_information p{
	font-size:14px;
	font-family: '游明朝体+36ポかな',serif;
   font-weight: 400;
/* 	color: #a69658; */
}

/* 2024.3.22 追加 */
.price_taxin {
	font-size:14px;
	font-weight: 100;
}
/* 2024.3.22 追加 */
.price_period {
	font-size: 14px;
}

/**
* 撮影について
 * ----------------------------------------------------------------------------
 */
.photo_outline .section_inner {
    max-width: 510px;
}

.photo_detail {
	background-image: url(/wp-content/uploads/2023/10/photo_image_1003.jpg); /* 2023.10.3 修正 */
	background-size: cover;
	min-height: 35vw;
	padding-top: 8vw;
	/* 	background-position: top center; */
	background-position: top left; /* 2023.10.3 修正 */
}

.photo_detail_list {
    list-style: none;
    margin: 0;
    max-width: 430px;
}

.photo_detail .section_inner {
    margin-left: 55%;
}

.photo_detail_list h3 {
    background-color: var(--accent-gold);
    display: inline-block;
    width: 100px;
    text-align: center;
    position: absolute;
    top: -20px;
    padding: 5px;
    left: 20px;
}

.photo_detail_list li {
    border: 1px solid var(--accent-gold);
    margin-bottom: 40px;
    padding: 50px;
    position: relative;
}

.photo_detail_list li p {
    line-height: 2;
}

.photo_detail2 {
    padding-top: 0;
	padding-bottom: 0;
}

.photo_detail2_cut { /* 2023.4.26 修正 */
	width:80%;
	margin: -60px auto 0 auto;
}

.photo_detail2_list {
    list-style: none;
    margin: 50px auto 0 auto;
    display: flex;
/*     justify-content: space-between; */
	 justify-content: space-around; /* 2023.7.26 修正 */
    max-width: 950px;
}

.photo_detail2_list li {
    width: 42%;
}

.photo_detail2_list li img {
    padding: 30px;
}

.photo_detail2_list li h3 { /* 2023.10.3 修正 */
/*     background-color: var(--accent-gold); */
    border-radius: 20px;
    padding: 5px;
/*     color: #fff; */
    color: var(--accent-gold);
    margin-bottom: 20px;
}

.photo_detail2_list li p { /* 2023.4.26 修正 */
	 text-align: left;
	 text-align: justify;
    line-height: 2;
}

.photo_detail2:after {
    content: "";
    position: absolute;
    bottom: 0;
    height: 350px;
    left: 0;
    right: 0;
    background-color: #eceef1;
}

.page-template-photo-page .footer-bg {
	background-color: #eceef1;
}

.small_text { /* 2023.4.14 追加 */
	display: block;
	padding-top: 10px;
	font-size: 13px;
	line-height: 1.6;
	text-indent: -1em;
 	padding-left: 1em;
}

/**
* トレーニングについて
 * ----------------------------------------------------------------------------
 */
.training_item {
    font-feature-settings: "palt";
    line-height: 1.6;
    max-width: 505px;
    padding: 20px 30px;
    border: 1px solid var(--accent-gold);
    margin: 0 auto 60px;
}

.training_flow_part {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto 80px;
	padding: 0 40px;
	border-bottom: 1px solid var(--accent-gold);
}

.training_flow_part_img {
	width: 305px;
	max-width: 40%;
}

.training_flow_part_img img {
	display: block;
}

.training_flow_part_txt {
    margin-left: 80px;
    flex: 1;
}

.training_flow_part_txt p {
	line-height: 1.8;
}

.training_flow .section_inner {
	max-width: 950px;
}

.training_flow_part_title {
    margin-bottom: 15px;
    font-size: 20px;
}

.training_flow_part_title .en {
    font-size: 16px;
    display: inline-block;
    margin-right: 15px;
}

.page-template-training-page .footer-bg {
	background-color: #fff;
}

.training_flow_part:last-child {
	margin-bottom: 0;
}

.text_indentation { /* 2023.4.14 追加 */
	display:block;
	text-indent: -1em;
 	padding-left: 1em;
}

.text_underline { /* 2023.6.21 追加 */
	text-decoration:underline;
}

/**
* トレーナー紹介
 * ----------------------------------------------------------------------------
 */

.trainer_link_list li img {
	box-shadow: 0 7px 13px #3c3c3c;
}

.trainer_link_list {
    margin: 0;
    list-style: none;
    display: flex;
}

.trainer_link_list li {
    margin-right: 10px;
}

.trainer_link_list li:last-child {
    margin-right: 0;
}

.trainer_link:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 360px;
    background-color: #353535;
	max-height: 100%;
}

.trainer_link {
    padding-top: 50px;
	padding-bottom: 40px;
}

.trainer_link_list li a:after {
    content: "";
    height: 10px;
    width: 10px;
    position: absolute;
    top: 100%;
    left: calc(50% - 5px);
    border-right: 1px solid;
    transform: rotate(45deg);
    border-bottom: 1px solid;
}

.trainer_link_list li a {
    display: block;
    position: relative;
}

.page-template-trainer-page .footer-bg {
	background-color: #fff;
}

.trainer_content_part {
	display: flex;
	justify-content: center;
	align-items: end;
	margin: 0 auto 60px;
}

.trainer_content_part:last-child {
	margin-bottom: 0;
}

.trainer_content_part_img {
/* 	max-width: 60%; */
	max-width: 50%; /* 2023.5.17修正 */
}

.trainer_content_part_txt {
	margin-left: 50px;
	flex: 1;
}

.trainer_content_part_txt .large {
	margin-bottom: 10px;
}

.trainer_content_part_txt .arrow-link {
	border-top: 1px solid;
	padding-top: 10px;
	margin-bottom: 5px;
}

.trainer_profile {
	font-size: 16px;
}

/**
* よくある質問
* ----------------------------------------------------------------------------
*/

.qa_content {
    background-color: #eceef1;
	padding-top: 30px;
	padding-bottom: 0;
}

.page-template-faq-page .footer-bg {
	background-color: #eceef1;
}

.qa_link {
    display: flex;
    margin: 0;
    list-style: none;
    text-align: center;
}

.qa_link li {
    width: 25%;
    padding: 5px;
    border-left: 1px solid var(--accent-gold);
}

.qa_link li:last-child {
    border-right: 1px solid var(--accent-gold);
}

.qa_content_part {
    margin-top: 60px;
}

.qa_content_part .common_h3 {
    margin-bottom: 30px;
}

.qa_content_list {
	margin: 0;
	list-style: none;
}

.qa_content_list li {
    margin-bottom: 30px;
}

.qa_content_list li:last-child {
	margin-bottom: 0;
}

.qa_content_list_q {
	background-color: #fff;
	padding: 20px 50px 20px 20px;
	border-radius: 40px;
	font-weight: bold;
	background-image: url(/wp-content/uploads/2023/01/plus.png);
	background-repeat: no-repeat;
	background-position: center right 20px;
	background-size: 30px;
	cursor: pointer;
	margin-bottom: 0;
	display: flex;
	align-items: center;
}

.qa_content_list_q:before {
	display: inline-block;
	content: "Q";
	font-family: 'Arvo', serif;
	background-color: var(--accent-gold);
	border-radius: 50%;
	line-height: 1;
	height: 40px;
	width: 40px;
	padding: 10px;
	font-size: 20px;
	text-align: center;
	margin-right: 10px;
	min-width: 40px;
}

.qa_content_list_q.open {
    background-image: url(/wp-content/uploads/2023/01/minus.png);
}

.qa_content_list_a {
	padding: 0 45px;
    margin-top: 20px;
	display: none;
	line-height: 2;
}

.qa_content_list_a a {
	color: var(--accent-gold);
}

/**
* 施設案内
* ----------------------------------------------------------------------------
*/
.studio_top {
/* 	padding-left: 0;
	padding-right: 0; */
/* 	padding: 50px; */
	padding: 80px 50px 50px; /* 2024.8.1修正 */
}

.studio_top .bx-wrapper {
    border: 0;
    box-shadow: none;
    margin-bottom: 20px;
}

.studio_top_txt {
	max-width: 650px;
	margin: 0 auto 60px;
}

.studio_bottom_map iframe {
	width: 100%;
}

.studio_bottom {
    background-color: var(--base-light);padding-bottom: 1px;
}

.studio_bottom_box {
    border: 1px solid var(--accent-gold);
    padding: 40px;
    position: relative;
    margin: 20px 0;
}
/* 2024.7.30修正 h3→h2に */
.studio_bottom_box h2 {
    position: absolute;
    top: -20px;
    left: 15px;
    padding: 5px;
    background-color: var(--accent-gold);
    width: 100px;
    text-align: center;
    font-size: 18.72px;
}

.studio_bottom_flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.studio_bottom_flex > div {
    width: 46%;
}

.studio_bottom_box p {
    line-height: 1.8;
}

.studio_bottom_map {
    margin: 20px 0 50px;
}
/* 2024.8.1修正 */
.studio_bottom_map_lp {
	margin-top: 10px;
	margin-bottom: 40px;
}

.lb-data .lb-close {
    display: none;
}

.lightbox .lb-image {
    border: 0;
    border-radius: 0;
}

.lb-data .lb-details {
	float: none;
	width: 100%;
	text-align: center;
	margin-top: 20px;
}

.lb-data .lb-caption {
	font-size: 16px;
}

.lb-outerContainer {
	border-radius: 0;
}

.lb-outerContainer:before {
	content: "";
	position: absolute;
	bottom: calc(100% + 20px);
	right: 0;
	height: 50px;
	width: 50px;
	background-image: url(/wp-content/uploads/2023/03/lightbox_close.png);
	background-size: contain;
	background-repeat: no-repeat;
	pointer-events: none;
}

.lb-nav a.lb-next {
    margin-right: -50px;
    background-image: url(/wp-content/uploads/2023/03/lightbox_right.png);
    background-position: right -30px center;
    opacity: 1;
}

.lb-nav a.lb-prev {
    margin-left: -50px;
    background-image: url(/wp-content/uploads/2023/03/lightbox_left.png);
    background-position: left -30px center;
    opacity: 1;
}

.studio_photolist { /* 2023.10.3追加 */
	margin: 0 auto;
	display:flex;
	flex-wrap: wrap;
}

.studio_photo_content { /* 2023.10.3追加 */
	display: block;
	width: 18%;
   margin: 0 2.5% 2.5% 0;
}

.studio_photo_content:nth-child(5n) { /* 2023.10.3追加 */
	margin-right: 0;
}

.studio_photo_content img{ /* 2023.10.3追加 */
	vertical-align:top;
}

/* 2024.8.1追加 */
.access_direction {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
}

.access_direction li {
	list-style: none;
	width: 31%;
	margin: 0 3.5% 30px 0;
}

.access_direction li:nth-child(3) {
	margin-right: 0;
}

.access_direction li:nth-child(n+4) {
	margin-bottom: 0px;
}

.access_direction_contents p {
	text-align: justify;
	text-justify: inter-ideograph;
	text-indent: -1em;
	padding-left: 1em;
}

/**
* 特定商取引法に基づく表記
* ----------------------------------------------------------------------------
*/
.tokusho {
    font-size: 18px;
}

.page-template-tokusho-page .footer-bg {
	background-color: #fff;
}

.tokusho_table {
    text-align: center;
    border-collapse: collapse;
}

.tokusho_table th {
    background-color: var(--accent-gold);
    color: #fff;
    padding: 20px 10px;
    border: 2px solid #fff;
}

.tokusho_table td {
    padding: 20px 10px;
    background-color: rgba(160,153,94,20%);
    border: 2px solid #fff;
}

.tokusho_child {
    display: inline-block;
    margin-left: 15px;
}

/**
* お客様の声
* ----------------------------------------------------------------------------
*/

.voice_top_txt { /* 2023.7.21 追加 */
	max-width: 650px;
	margin: 0 auto 60px;
	text-align: center;
}

.voice_part { /* 2023.7.21 追加 */
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto 80px;
	padding: 40px;
	border: solid 1px var(--accent-gold);
	background:linear-gradient(90deg, #ddd 0%, #ddd 20%, #fff 20%, #fff 100%);
}

.voice_part_img { /* 2023.7.21 追加 */
	width: 300px;
	max-width: 40%;
}

.voice_part_img img { /* 2023.7.21 追加 */
	display: block;
}

.voice_part_txt { /* 2023.7.21 追加 */
 margin-left: 50px;
 flex: 1;
}

.page-template-voice-page .footer-bg {
	background-color: #fff;
}
/* 2024.6.12 追加 */
.voice_google_review {
	margin-bottom: 60px;
}

/**
* お問合せ
* ----------------------------------------------------------------------------
*/
.contact_header {
    text-align: center;
}

.contact_header a {
    text-decoration: underline;
    color: var(--accent-gold);
}

.contact_main {
    background-color: #eceef1;
	padding-top: 40px;
    padding-bottom: 1px;
}

.contact_main ::placeholder {
    color: #aaaaaa;
}

.contact_main label > .contact_label {
    width: 220px;
    display: inline-block;
    flex: none;
    padding-top: 10px;
}

.contact_main label {
    display: flex;
}

.contact_main label > span {
    flex: 1;
}

.contact_main .section_inner {
    max-width: 800px;
}

.contact_main input[type="text"], .contact_main input[type="email"],textarea {
    padding: 10px;
    border: 0;
    border-radius: 0;
    width: 100%;
}

/* 2024.7.9追加 */
input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea, select {
	background-color: #fff;
}

.contact_main a {
    text-decoration: underline;
}

.contact_main [type="checkbox"] {
	margin-right: 5px;
}

.contact_main .wpcf7-spinner {
    display: block;
    margin: 10px auto;
}

.page-template-contact-page .footer-bg {
    background-color: #eceef1;
}

.contact_main input[type="submit"] {
    background-color: #f77060;
    font-weight: bold;
    color: #fff;
    padding: 15px;
    border: 0;
    width: 230px;
    font-size: 18px;
    border-radius: 5px;
}

.contact_main input[type="submit"]:disabled {
    background-color: #878787;
}

.grecaptcha-badge {
	visibility: hidden;
}

.reCAPTCHA_info {
	color: #878787;
	font-size: 14px;
}

.reCAPTCHA_info a {
	color: #a0995e;
}


/**
* 無料体験予約フォーム 2024.6.12追加
* ----------------------------------------------------------------------------
*/

.contact_main label > .contact_label_freetrial {
/*     width: 250px; */
	width: 280px;
    display: inline-block;
    flex: none;
    padding-top: 10px;
}

.required {
	padding: 0 6px;
}
/* 2024.7.9追加 */
.contact_label_freetrial::before {
	content: "必須";
	font-size: 14px;
	background-color: #e87060;
	color: #fff;
	padding: 4px 5px 5px 5px;
    margin-right: 10px;
}

.contact_main label > .freetrial_date_time {
/*     width: 250px; */
	width: 280px;
    display: inline-block;
    flex: none;
    padding-top: 10px;
}

.freetrial_date_time::before {
	content: "必須";
	font-size: 14px;
	background-color: #e87060;
	color: #fff;
	padding: 4px 5px 5px 5px;
    margin-right: 10px;
}

.contact_main label > .contact_label_text {
	width: 280px;
    display: inline-block;
    flex: none;
    padding-top: 0;
}

.contact_main input[type="date"] {
    padding: 10px;
    border: 0;
    border-radius: 0;
    width: 40%;
}

.contact_main select {
    padding: 10px;
    border: 0;
    border-radius: 0;
    width: 40%;
}

/* --------------------------------------- */
/* --------------------------------------- */
/* --------------------------------------- */

/* SNSリンク　　2023.4.5追加*/ 

.sns_link {
	padding-top: 50px;
}

.sns_link ul{
	list-style: none;
	margin: 0;
	display: flex;
	justify-content: center;
}

.sns_link li{
	flex-direction: row;
	margin-right: 25px;
}

.sns_link li:last-child{
	margin-right: 0;
}

.sns_link img {
	width: 45px;
}

.sns_link a:hover img {
	opacity: 0.6;
}

.sns_link p {
	font-size: 14px;
	color: #FFFFFF;
	margin: 0 0 10px; 
}



/* 2023.10.3 修正 */
/* #top-session {
    background-image: url(/wp-content/uploads/2023/05/session_menu_bk.jpg);
} */

#top-trainingmenu {
    background-image: url(/wp-content/uploads/2023/05/trainingmenu_menu_bk.jpg);
}

.footer-address {
	color: #fff;
	line-height: 2.2;
	margin-bottom: 40px;
}
/* 2024.7.30修正 */
.trainingmenu_top {
	background-image: url(/wp-content/uploads/2024/07/trainingmenu_top_bg.webp);
	background-size: cover;
	margin-top: 80px;
	padding-top: 100px;
	padding-bottom: 100px;
	line-height: 1.8;
}

.trainingmenu_top .section_inner {
	max-width: 540px;
}

.trainingmenu_list {
    list-style: none;
    margin-left: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.trainingmenu_list li {
    width: 46%;
    position: relative;
    margin-bottom: 80px;
}
/* 2024.7.30修正 h3→h2に */
.trainingmenu_list li h2 {
    background-image: url(/wp-content/uploads/2024/07/trainingmenu_list_title.webp);
    background-repeat: no-repeat;
    background-size: auto 100%;
    width: 200px;
    padding: 8px 0 14px 20px;
    line-height: 1;
    color: #fff;
    position: absolute;
    top: -25px;
    left: -15px;
    height: 40px;
    font-size: 18.72px;
}

.trainingmenu_list .longtitle {
	background-image: url(/wp-content/uploads/2024/07/trainingmenu_list_title_long.webp);
	background-repeat: no-repeat;
	background-size: auto 100%;
	width: 300px;
	padding: 8px 0 14px 20px;
	line-height: 1;
	color: #fff;
	position: absolute;
	top: -25px;
	left: -15px;
	height: 40px;
}
/* 2024.8.20追加 */
.trainingmenu_list .verylongtitle {
	background-image: url(/wp-content/uploads/2024/08/trainingmenu_list_title_verylong.webp);
	background-repeat: no-repeat;
	background-size: auto 100%;
	width: 350px;
	padding: 8px 0 14px 20px;
	line-height: 1;
	color: #fff;
	position: absolute;
	top: -25px;
	left: -15px;
	height: 40px;
}

.trainingmenu_main {
    padding-top: 120px;
}

/* 2024.8.20追加 */
.trainingmenu_list ul {
	margin-left: 5px;
}

.trainingmenu_list_contents {
	margin-top: 10px;
}

.trainingmenu_list_contents li {
	width: 100%;
	list-style: none;
	margin-bottom: 5px;
	text-indent: -0.7em;
	padding-left: 0.7em;
}

.trainingmenu_list_contents li:before {
	content: ""; 
	width: 4px;
	height: 4px;
	display:  inline-block;
	background-color: #404040;
	border-radius: 50%;
	position:  relative;
	top: -3px;
	margin-right: 5px;
}

/* 2024.7.29修正 */
/* footer h1 {
	font-size: 10px;
	font-weight: normal;
	color: #757575;
	margin: 0;
	padding: 5px;
} */
.footer_keyword {
	font-size: 10px;
	font-weight: normal;
	color: #757575;
	margin: 0;
	padding: 5px;
}


.top-instagram {
    width: 78%;
    margin: auto;
}

/* 2023.9.25 追加 */
.top-slider video {
    width: 100%;
	display: block;
}

/* 	2024.6.12追加 */
div.top_trainingarea {
	width: 78%;
	margin: 0 auto 10vh ;
	text-align: center;
}

.top_movie_pc {
	margin: 0 auto;
}

/* --------------------------------------- */

@media(max-width: 1300px) {
	.whatMP_detail:after {
		width: 400px;
		left: calc( ( 100vw - 1300px ) / 2 );
	}
}

@media(max-width: 1200px) {
	.whatMP_detail {
		background-size: 40%;
		background-position: top 20% right -10%;
	}
}

@media(min-width: 769px) {
	.pc-nondisplay {
		display: none!important;
	}
	/* 2023.5.15 追加 */
	.site-branding {
		display: none;
	}
}

@media(max-width: 768px) {

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

    .sp-display {
        display: block !important;
    }
	
	/* 2023.9.4修正 */
	.site-header { 
		justify-content: space-between;
		padding: 0 0 0 60px;
		height: 60px;
	}

	.site-header {
		justify-content: space-between;
		padding: 0 2% 0 60px;
		height: 60px;
	}

	.site-branding {
		position: absolute;
		z-index: 9999;
		top: 0;
		left: 0;
	}
	/* 2023.9.4修正 */
	.header-logo {
/* 		margin-left: 20px;
		max-width: 200px;
		width: 45%; */
		margin-left: 10px;
		max-width: 200px;
		width: 50%;
	}

	.header-logo img {
		max-width: 100%;
		min-width: auto;
	}

    #humberger:checked+.header_menu {
        display: block;
    }

	.site-main {
		padding-top: 60px;
	}
	
    .header-humberger {
        position: absolute;
        z-index: 9999;
        top: 0;
        left: 0;
        cursor: pointer;
        width: 60px;
        height: 60px;
        background-color: rgb(68,68,68);
    }

    .header-humberger span {
        display: inline-block;
        transition: all .4s;
        position: absolute;
        left: 17px;
        height: 3px;
        /*border-radius: 2px;*/
        background-color: #fff;
        width: 45%;
    }

    .header-humberger span:nth-of-type(1) {
        top: 21px;
    }

    .header-humberger span:nth-of-type(2) {
        top: 29px;

    }

    .header-humberger span:nth-of-type(3) {
        top: 37px;
    }

    .header-humberger.active{
        position: fixed;
    }
    
    .header-humberger.active span:nth-of-type(1) {
        top: 24px;
        left: 18px;
        transform: translateY(6px) rotate(-45deg);
        width: 45%;
    }

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

    .header-humberger.active span:nth-of-type(3) {
        top: 36px;
        left: 18px;
        transform: translateY(-6px) rotate(45deg);
        width: 45%;
    }

    .header-humberger.active span {
        background-color: #fff;
    }
    #header-login{
        min-width: 100px;
        width: 20vw;
        border-radius: 5px;
        font-size: 10px;
    }
    #sp-g-nav {
        position: fixed;
        z-index: 999;
        top: 0;
        left: -120%;
        width: 60%;
        height: 80vh;
        color: #fff;
        background: rgba(52, 52, 52, .8);
        transition: all 0.6s;
        padding-top: 80px;
        padding-left: 30px;
    }

    #sp-g-nav.panelactive {
        left: 0;
    }

    #sp-g-nav p {
        margin: 10px 0;
        font-size: 14px;
    }

    #sp-g-nav ul {
        margin: 0;
    }

    #sp-g-nav ul li {
        list-style: none;
        font-size: 14px;
        margin-top: 5px;
    }

    #sp-g-nav ul li::before {
        content: "-";
        margin-right: 5px;
    }

    #sp-g-nav .link-button {
        margin: 15px 0;
        width: 80%;
        text-align: center;
        font-size: 12px;
    }
	
	/* 	2023.4.17 追加 */
	#header-contact {
	 padding: 4px;
    border: 1px solid #fff;
    color: #fff;
    width: 130px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 12px;
	}
	
	/* 	2024.6.26 追加 */
	.icon_mail:before {
		content: url(/wp-content/themes/muscle-photo-child/img/sp_icon_mail.png);
		margin-right:5px;
		vertical-align: middle;
	}
	
	.icon_phone:before {
		content: url(/wp-content/themes/muscle-photo-child/img/sp_icon_phone.png);
		margin-right:5px;
		vertical-align: middle;
	}
	
    /* --------------------------------------- */
    /* --------------------------------------- */
    /* --------------------------------------- */

	.top-main_visual img {
		display: block;
	}

	.top-main_visual,.home .site-header {
		background-color: #1b1b1b;
	}
	.top-main-title{
		font-size: 18px;
    }
    .top-main-subtitle-dash{
        width: 25px;
    }
    .top-main-subtitle p{
        font-size: 10px;
    }

    .top-main-wrapper {
        padding-top: 30px;
    }

    .top-main-upper,
    .top-main-under {
        height: auto;
    }

    .top-main-subtitle svg {
        width: 10%;
    }

    .top-main-subtitle {
        justify-content: space-evenly;
        margin-top: 10px;
        margin-bottom: 10px;
    }

    .top-main-text {
        margin-top: 10px;
        margin-bottom: 15px;
    }
    .link-button {
		color: #fff!important;
		font-size: 10px;
		text-align: center;
		margin: 0 5px 0 0;
		height: 35px;
		line-height: 35px;
		width: auto;
		padding: 0 5px;
	}
	
	/* 2023.5.11 修正 */
	.link-button.link-button-green.first_campaign_part_last {
		margin: 0 auto;
	}
	
    /* --------------------------------------- */
    /* --------------------------------------- */
    /* --------------------------------------- */

    .top-about-upper {
        display: grid;
        margin-top: 0;
		margin-bottom: 20px;
		width: 100%;
		gap: 1px;
		grid-template-columns: repeat(2, 50%);
	}

	/* 2023.9.4 修正 */
	#top-detail {
		background-image: url(/wp-content/uploads/2023/09/detail_menu_sp_0904.jpg)!important;
	}
	
	/* 2023.4.17 修正 */
	#top-at-first {
		background-image: url(/wp-content/uploads/2023/04/atfirst_menu_sp.jpg)!important;
	}
	
	/* 2023.9.4 修正 */
	#top-studio {
		background-image: url(/wp-content/uploads/2023/09/studio_menu_sp_0904.jpg)!important;
	}
	
	/* 2023.9.4 修正 */
	#top-price {
		background-image: url(/wp-content/uploads/2023/09/price_menu_sp_0904.jpg)!important;
	}
	
	/* 2023.9.4 修正 */
	#top-trainer {
		background-image: url(/wp-content/uploads/2023/09/trainer_menu_sp_0904.jpg)!important;
	}
	
	#top-photographic {
		background-image: url(/wp-content/uploads/2023/02/photo_menu_sp.jpg)!important;
	}
	
	#top-facility {
		background-image: url(/wp-content/uploads/2023/02/facility_menu_sp.jpg)!important;
	}

	.top-about-upper-item {
/* 		height: calc(27vw / 3 * 4); */
/* 		height: calc(27vw / 3 * 3);  */
		height: calc(27vw / 3.5 * 2.5); /* 2023.7.21修正 */
	}
	
	.top-about-under {
/* 		width: 100%; *//* 2023.3.15修正 */
		background-color: transparent;
		padding: 0;
		display: block;
/* 		margin: 20px auto 40px; */
		margin: 40px auto 40px; /* 2023.3.15修正 */
	}

	.top-about-under a {
		display: block;
		margin-bottom: 20px;
	}

	.top-about-under a img {
		width: 100%;
	}

	.top-about-under-item {
      width: 100%; /* 2023.3.15修正 */
      height: auto;
		 margin-bottom: 20px; /* 2023.4.17 修正 */
    }
	
/*     .top-about-under-item {
        width: calc((100vw / 3) - 15px);
        height: calc((100vw / 3) - 15px);
    } */

	/* 2023.3.15追加 */
	.top-about-under-border { 
		width: 100%;
		height: 62px; /* 2023.4.17 修正 */
		display: block;
		padding: 5px;
	}
	
	.top-about-under-content {
	background-color: rgba(255, 255, 255, .5); 
	width: 100%;
	height: 100%;
	margin: 0;
	display: flex;
	justify-content: center;
	flex-direction: row;
	align-items: center;
	}

	.top-about-under-content h2 {
	margin: 0;
	/* 2023.4.17 修正 */
	font-size: 16px;
	}
	
	.top_comingsoon {
		padding: 3%;
    	width: auto;
		margin: 0;
		margin-left: 3%;
	}
	
    .top-about-upper-item {
        width: 100%;
    }
    .top-mainvisual-button{
        bottom: 50px;
    }
    .top-mainvisual-button .link-button{
        width: 40%;
        max-width: 200px;
    }

    .top-news {
        display: block;
        margin: 30px auto;
    }

    .news-title {
        font-size: 25px;
        margin-bottom: 30px;
    }

    .news-grid {
        display: block;
        width: 80%;
        height: auto;
    }

    .news-grid-item-wrapper {
        overflow: auto;
        margin-left: 10px;
    }

    .news-grid-item {
        display: flex;
        align-items: flex-start;
        height: auto;
        min-height: auto;
        margin-bottom: 20px;
    }

    .news-image-wrap {
        display: none;
    }

    .news-grid-item img {
        height: auto;
    }

    .news-item-title {
        margin: 5px 0;
    }

    .news-more {
        width: 30%;
        font-size: 15px;
	}

	.top-floating-banner {
		position: fixed;
		z-index: 9999;
		bottom: 5%;
		right: 5%;
		display: block!important;
		opacity: 1!important;
	}

	.top-floating-banner-close {
		position: absolute;
		right: 0;
		top: 0;
		height: 25px;
		width: 25px;
		z-index: 1;
	}

	.footer-bg {
        height: 10vh;
    }
    .footer-bg img{
        width: 80%;
    }
	
	.footer-content a {
/* 		margin: 0 5px; */
		margin: 0 13px; /* 	2023.10.23修正 */
		margin-bottom: 5px;
	}

    .footer-content {
        margin-top: 40px;
        width: 100%;
        height: auto;
    }

	/* 	2024.1.18追加 */
	.footer-content a.footer-contact-btn {
		margin-top: 15px;
	}	
	
    .footer-content-left {
        width: 45%;
        justify-content: unset;
    }

    .footer-content-left .link-button {
        margin-top: 20px;
        border-radius: 1px;
        height: 30px;
        line-height: 30px;
        font-size: 12px;
    }

    .footer-inner-upper {
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    .footer-inner-item {
        margin-left: 10px;
    }

    .footer-under {
        display: flex;
        width: 90%;
        margin: auto;
        margin-bottom: 10px;
        justify-content: space-evenly;
        font-size: calc(.8 * var(--fsz-base));
        color: #fff;
    }

    footer.site-footer {
        height: auto;
        padding-bottom: 10px;
    }

    footer .site-info {
		margin-bottom: 10px;
	}
	
	/* 2024.6.26 追加 */
	.footer_otoiawase {
		display: flex;
        flex-direction: column;
        width: 300px;
        margin: 0 auto;
	}
	/* 2024.6.26 追加 */
	.footer_otoiawase a:first-child {
		margin-bottom: 10px;
	}

	main .link-button {
		font-size: 18px;
	}

	main section {
		padding: 40px 40px;
	}

	/* 2023.9.15 修正 */
	.first_campaign_part {
		flex-direction: column-reverse;
		margin: 0 auto 30px;
	}
	/* 2023.9.15 追加 */
	.flow_title {
		display:flex;
		align-items: center;
	}
	/* 2023.9.15 追加 */
	.flow_title_h4 {
		margin-bottom: 10px;
		padding-right: 5px;
	}
	/* 2023.9.15 追加 */
	.last_part {
		margin-bottom: 0;
	}
	/* 2023.9.15 追加 */
	.first_flow {
		padding-bottom: 0;
	}
	
	.first_campaign_part_txt {
/* 		margin-left: 20px; */
		margin-left: 0px; /* 2023.6.13 修正 */
		margin-top:0;
		margin-bottom: 15px; /* 2023.9.15 修正 */
	}
	
	.first_campaign_part_txt p {
		font-size: 14px;
		text-align: justify;
		text-justify: inter-ideograph;
	}
	
	.first_campaign .section_inner {
/* 		max-width: 90%; */
		max-width: 100%;  /* 2023.6.13 修正 */
	}

	.first_campaign_part_img {
/* 		max-width: 40%; */
		max-width: 70%; /* 2023.4.17 修正 */
	}

	.common_h4 {
/* 		margin-bottom: 20px; */
		margin-bottom: 15px;/* 2023.4.17 修正 */
	}
	
	/* 2023.6.13追加 */
	.tiktok_linkbanner{
		padding: 0 40px 40px;
	}
	
	/* 2023.6.13追加 */
	.tiktok_linkbanner .section_inner{
		max-width: 100%;
	}
	
	.arrow {
		margin-bottom: 40px;
	}

	.header_full {
		padding: 60px 0 0 0;
	}
	
/* 2024.7.29 header_full h2→h1へ */
	.header_full h1 {
		display: block;
		width: 70%;
		left: 15%;
		top: auto;
		bottom: calc(14vw - 31px);
	}

	.header_full h1 > span {
		text-align: center;
		display: block;
	}

	.header_full h1 > span:nth-child(1) {
		font-size: 16px;
		padding: 5px;
	}

	.header_full h1 > span:nth-child(2) {
		padding: 5px;
		font-size: 12px;
	}

	.common_h3 {
		font-size: 20px;
		margin-bottom: 20px;
	}
	
	.arrow {
		margin-bottom: 30px;
	}

	.arrow:after {
		height: 7px;
	}
	
	.common_h4 {
		font-size: 18px;
	}


	.h2_small {
		font-size: 12px;
	}

	.whatMP_intro:before {
		height: 100%;
	}

	.whatMP_intro img {
		padding-top: 0;
		padding-bottom: 20px; /* 2023.4.14 追加 */
	}

	.whatMP_intro_text {
		padding: 0;
		line-height: 1.6; /* 2023.4.14 追加 */
	}
	
	/* 2023.8.25 追加 */
	.whatMP_intro_text h3 {
		line-height: 1.2;
		font-weight: bold;
	}
	
	/* 2023.8.25 追加 */
	.whatMP_intro_small {
		font-size: 16px;
	}
	
	.whatMP_detail {
		background-image: none;
	}
	
	.whatMP_detail:after {
		display: none;
	}
	
	.whatMP_detail_text {
		line-height: 1.6;
/* 		padding: 20px 0 0; */
		padding: 20px 0 30px 0; /* 2023.8.25 修正 */
	}
	
	/* 2023.8.25 追加 */
	.whatMP_detail_text h3 {
		font-size: 18px;
		font-weight: bold;
		margin-bottom: 15px;
	}

	.large {
		font-size: 20px;
	}
	
	.medium {
		font-size: 18px;
	}
	
	/* 2023.7.6追加 */
	.small {
		font-size: 14px;
	}

	
	/* 2024.7.30追加 */
	.x-small {
		font-size: 12px;
	}
	

	/* 2023.9.4追加 */
	.price_monthly p {
		font-size: 18px;
		margin-bottom: 15px;
		line-height: 1.4;
	}
	
	/* 2023.9.4追加 */
	.price_monthly img {
		width: 20px;
	}
	
	/* 2023.9.4修正 */
	.price_monthly .arrow {
/* 		margin-bottom: 30px; */
		margin-bottom: 25px;
	}

	.price_monthly:before {
		height: 100%;
	}
	
	.price_common:before {
		height: 100%;
	}

	.price_monthly_detail {
		margin-top: 30px;
	}

	.price_detail {
		padding-top: 30px;
	}

	/* 2023.9.4修正 */
	.price_monthly {
/* 		padding-bottom: 20px; */
		padding-bottom: 10px;
		padding-top: 20px;
	}

	.price_detail_list {
		border: 1px solid var(--accent-gold);
		padding: 20px;
		margin-bottom: 10px;
	}

	.price_detail_list li {
		margin-bottom: 15px;
	}

	.price_detail_list li > span:nth-child(1) {
		padding: 10px 15px;
	}

	.price_detail_list li > span {
		font-size: 18px;
	}

	.price_detail_list li > span:nth-child(2) {
		padding: 10px 0px;
	}

	.price_monthly .price_common_txt {
		margin-top: 30px;
		font-size: 14px;
	}

	.price_common_txt {
		text-align: left;
	}
	.price_detail .price_common_txt {
		font-size: 14px;
	}
	
	.price_detail_table {
/* 		margin-top: 30px; */
		margin-top: 15px; /* 2023.9.29 修正 */
		font-size: 14px; /* 2023.4.17 修正 */
	}
	/* 2024.3.22 修正 */
	.price_detail_table th {
		padding: 10px;
		line-height: 1.2;
	}

	.price_otameshi:before,.price_osusume:before {
		width: 40px;
		height: 40px;
		left: -5px;
		top: -5px;
	}

	.price_campaign td {
		background-size: 50%;
		background-position: center right 105px;
	}
	
	/* 2023.9.29 修正 */
	.end_of_campaign {
		font-size: 14.5px;
		letter-spacing: -0.5px;
		margin: 10px auto 30px;
	}
	/* 2024.3.22 修正 */
	.price_detail_table td {
		padding: 10px;
		line-height: 1;
	}
	/* 2023.9.29 追加 */
	.price_note_list {
		margin: 15px auto 30px auto;
	}
	
	.price_note_list li {
		padding-left: 15px;
		font-size: 12px;　/* 2023.4.17 修正 */
	}
	
	.price_included_title { /* 2024.1.31 修正 */
		margin: 60px auto 15px auto;
	}
	
	.price_included_list li { /* 2023.9.4 追加 */
    margin-bottom: 3px;
	}
	
	.strikethrough_green { /* 2023.9.4 追加 */
		text-decoration: line-through 2px solid #3cb5ac;
	}

	.price_detail_table_ticket { /* 2023.9.29 追加 */
		margin-top: 15px;
		font-size: 14px;
	}
	/* 2024.3.22 修正 */
	.price_detail_table_ticket th {
		padding: 10px;
		width: 55%;
		line-height: 1.2;
	}
	/* 2024.3.22 修正 */
	.price_detail_table_ticket td {
		padding: 10px;
		line-height: 1;
	}
	
	.arrow_price { /* 2023.9.29 追加 */
		margin-bottom: 30px;
	}
	
	.photo_detail {
/* 		background-image: url(/wp-content/uploads/2023/10/photo_image_sp_1003.jpg); */
		background-image: url(/wp-content/uploads/2024/09/photo_image_sp_0902.webp); /* 2024.9.2 修正 */
		background-size: 101%;
		background-repeat: no-repeat;
/* 		padding-top: 75vw; */
		padding-top: 108vw; /* 2024.9.2 修正 */
		background-color: #333333;
	}

	.price_logo {
		margin-bottom: 20px;
	}

	.price_coming_soon {
		margin: 40px auto 50px;
		max-width: 250px;
	}
	
	/* 2023.12.12 追加 */
	.price_title p {
		font-size: 12px;
		padding: 5px 0;
	}
	
	/* 2024.3.22 追加 */
	.price_taxin {
		font-size:7px;
	}
	
	/* 2024.3.22 追加 */
	.price_period {
		font-size: 10px;
	}

	.photo_detail .section_inner {
		margin-left: 0;
	}

	.photo_detail_list {
		margin: auto;
		text-align: center;
	}

	.photo_detail_list h3 {
		left: calc( 50% - 50px );
	}

	.photo_detail_list p{
		font-size: 14px; /* 2023.4.17 修正 */
		text-align: justify;
		text-justify: inter-ideograph;
		text-align: left;
	}
	
	.photo_detail_list li:last-child {
		margin-bottom: 0;
	}

	.photo_detail_list li {
		padding: 27px; /* 2023.4.17 修正 */
	}

	.photo_detail2:after {
		height: 100%;
	}

	.photo_detail2_list {
		margin-top: 0;
		display: block;
	}

	.photo_detail2_list li img {
		padding: 0;
	}

	.photo_detail2_list li {
		align-items: center;
		padding: 40px 0 0 0;
		width: 100%;
		display: flex;
		flex-direction: column; /* 2023.4.17 修正 */
	}

	.photo_detail2_list li > div:nth-child(1) {
/* 		margin-right: 10px; */
		margin: 0 0 10px 0; /* 2023.4.17 修正 */
		width: 100px;
	}

	.photo_detail2_list li > div:nth-child(2) {
		flex: 1;
	}

	.photo_detail2_list li p {
		text-align: left;
		text-align: justify; /* 2023.4.26 修正 */
		line-height: 1.6;
		font-size: 14px; /* 2023.4.17 修正 */
	}

	.photo_detail2_list li h3 {
		font-size: 16px;
	}
	
	.photo_detail2_cut { /* 2023.4.26 追加 */
		width:100%;
		margin-top: 0;
		padding-top: 20px;
	}

	.training_flow_part_txt {
		margin: 0 0 15px 0; /* 2023.10.3 修正 */
		font-size: 14px;
	}
	
	.training_flow_part_txt p {
		font-size: 14px;
		text-align: justify;
		text-justify: inter-ideograph;
	}

	.training_flow_part_img {
/* 		max-width: 30%; */
		max-width: 70%; /* 2023.4.17 修正 */
	}

	.training_flow_part_title {
/* 		margin-bottom: 5px; */
		margin: 10px 0 5px; /* 2023.4.17 修正 */
	}

	.training_flow_part {
		margin-bottom: 25px;  /* 2023.10.3 修正 */
		padding: 0 0 25px 0; /* 2023.10.3 修正 */
		flex-direction: column-reverse; /* 2023.10.3 修正 */
	}

	.training_flow_part_title {
		font-size: 18px;
	}

	.training_flow_part_title .en {
		margin-right: 5px;
	}

	.training_flow_part:last-child {
		border-bottom: 0;
	}

	.training_item {
		margin-bottom: 30px;
	}

	.trainer_content_part {
		display: block;
	}

	.trainer_content_part_img {
		max-width: 100%;
	}

	.trainer_content_part_txt {
		margin-left: 0;
	}

	.trainer_link {
		padding-top: 30px;
	}
	.qa_link {
		line-height: 1;
	}
	.qa_link a {
		font-size: 12px;
	}

	.qa_content_part {
		margin-top: 30px;
	}

	.qa_content_list {
		font-size: 14px;
	}
	
	.qa_content_list_q {
		padding: 10px 40px 10px 10px;
		background-size: 20px;
		background-position: center right 15px;
	}

	.qa_content_list_a {
		line-height: 1.6;
		margin-top: 15px;
		padding: 0 20px;
	}

	.top-about h2 {
		font-size: 16px;
		background-color: transparent; /* 2023.7.13 修正 */
		margin: 0; /* 2023.7.13 修正 */
	}
	.top-about-upper-item p, .top-about-under-content p {
		font-size: 10px;
		margin-left: 15px; /* 2023.4.17 修正 */
	}
	
	.pre-img {
    width: 20px;
		height: auto;
	}

	.top-floating-banner img {
/* 		width: 84px; */
		width: 100px;
	}

	#lightbox {
		padding: 0 5px;
	}

	.lb-nav a.lb-next {
		margin-right: -30px;
		background-position: right -20px center;
		background-size: 70px;
	}

	.lb-nav a.lb-prev {
		margin-left: -30px;
		background-position: left -20px center;
		background-size: 70px;
	}
	.lb-outerContainer, .lightbox .lb-image {
		max-width: 100%;	
	}
	.lightbox .lb-image {
		height: auto!important;
	}
	.lb-outerContainer {
		width: 80%!important;
		height: auto!important;
	}
	/* 	2024.8.1追加 */
	.studio_top {
		padding: 40px;
	}
	
	.studio_top_txt {
		padding: 0 40px;
		margin-bottom: 40px;
	}

	.studio_bottom_flex > div {
		width: 100%;
	}

	.studio_bottom_box {
/* 		padding: 40px 10px; */
		padding: 35px 10px 25px 10px; /* 	2023.4.17修正 */
		text-align: center;
	}

	.studio_bottom_box h3 {
		left: calc(50% - 50px);
	}
	
	.studio_bottom_box p { /* 	2023.4.17追加 */
		font-size: 14px;
	}

	.studio_access{ /* 	2023.4.17追加 */
		font-size: 14px;
		text-align: left;
	}
	
	.studio_fillinoneletter { /* 	2023.4.17追加 */
		padding-left: 1em;
	}
	
	.studio_photo_content { /* 2023.10.3追加 */
	display: block;
	width: 30%;
   margin: 0 5% 5% 0;
	}

	.studio_photo_content:nth-child(5n) { /* 2023.10.3追加 */
	margin-right: 5%;
	}
	
	.studio_photo_content:nth-child(3n) { /* 2023.10.3追加 */
	margin-right: 0;
	}
	
	/* 	2024.8.1追加 */
	.access_direction {
		padding: 0 10px;
	}
	
	.access_direction li {
		list-style: none;
		width: 47%;
		margin: 0 6% 30px 0;
	}
	
	.access_direction li:nth-child(3) {
		margin-right: 6%;
	}

	.access_direction li:nth-child(2n) {
		margin-right: 0;
	}
	
	.access_direction li:nth-child(4) {
		margin-bottom: 30px;
	}

	.access_direction li:nth-child(n+5) {
		margin-bottom: 0px;
	}
	
	.tokusho {
		font-size: 16px;
	}

	.header_txt {
		padding: 90px 10px 30px;
		text-align: center;
	}

	.contact_header {
		text-align: left;
	}

	.contact_main label {
		flex-wrap: wrap;
	}

	.contact_main label > .contact_label {
		width: 100%;
		margin-bottom: 5px;
	}

	.contact_main input[type="submit"] {
		font-size: 16px;
	}
	.contact_main ::placeholder {
		font-size: 14px;
	}
		
	/* 2023.5.15 追加 */
	.trainingmenu_top {
		margin-top: 0;
		background-image: none;
		background-color: #eceef1;
		padding-top: 40px;
		padding-bottom: 40px;
	}
	/* 	2024.8.20修正 */
	.trainingmenu_main {
		padding-top: 60px;
		padding-left: 40px;
		padding-right: 40px;
	}

	.trainingmenu_list li {
		width: 100%;
		margin-bottom: 50px;
	}
	/* 	2024.8.20追加 */
	.trainingmenu_list_contents li {
		margin-bottom: 5px;
	}


	.top-slider .slick-dots {
		padding: 10px 0;
	}

	.top-floating-banner {
		bottom: 0;
		width: 100%;
		left: 0;
		line-height:1;
		right: 0;
	}

	.top-floating-banner a {
		display: block;
		color: #fff;
		text-align: center;
		background-color: var(--accent-red);
		padding: 15px 0;
		font-weight: bold;
	}
	
	.voice_top_txt { /* 2023.7.21 追加 */
    margin-bottom: 40px;
	}
	
	.voice_part { /* 2023.7.21 追加 */
	 margin-bottom: 30px;
	 padding: 40px 20px 20px 20px;
	 flex-direction: column;
	 background:linear-gradient(180deg, #ddd 0%, #ddd 22%, #fff 22%, #fff 100%);
	}
	
	.voice_part_img { /* 2023.7.21 追加 */
   max-width: 85%;
	margin-bottom: 10px;
  	}	
	
	.voice_part_txt { /* 2023.7.21 追加 */
	 margin-top: 0;
	 margin-left: 0;
	 font-size: 14px;
	}

	.voice_part_txt p { /* 2023.7.21 追加 */
	 font-size: 14px;
	 text-align: justify;
	 text-justify: inter-ideograph;
	}
	/* 2024.6.12 追加 */
	.voice_google_review {
		margin-bottom: 30px;
	}

	/* 2024.7.29 修正 */
/* 	.top-slider:before {
		content: "";
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 105%;
		background-image: url(/wp-content/uploads/2024/06/top_slide_txt_sp_0604.png);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
	} */
	
/* 	2025.4.3修正 */
	.top_title {
		width: 100%;
		position: absolute;
/* 		top: 30%; */
		top: 38%;
		color: #fff;
		filter: drop-shadow(1px 1px 2px #000);
		text-align: center;
		z-index: 1;
	}
	
	.top_title_sub {
		font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
		font-size: 13px;
		letter-spacing: 0.5px;
		margin-bottom: 5px;
	}
	
	.top_title h1 {
		font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
		font-size: 24px;
		font-weight: 600;
		letter-spacing: -1px;
		margin: 0 auto 5px auto;
	}
	
	.top_title hr {
		width: 92%;
		margin: 0 auto 5px;
	}
	
	.top_title p:last-child {
		letter-spacing: 0.5px;
	}
	

	.top-slider video {
		width: 150%;
		margin-left: -25%;
	}

	.top-slider {
		overflow: hidden;
	}
	
	/* 	2024.7.9追加 */
	.contact_main label {
		flex-direction: column;
	}
	
	.contact_main label > .contact_label_freetrial {
		margin-bottom: 10px;
		width: 100%;
	}
	
	.contact_main label > .contact_label_text {
		margin-bottom: 10px;
		width: 100%;
	}
	
	.contact_main input[type="date"] {
		width: 100%;
	}

	.contact_main select {
		width: 100%;
	}
	
	.freetrial_date_time::after {
		content: "↓タップするとカレンダーが表示されます";
		font-size: 13px;
        color: #808080;
        display: flex;
        margin: 8px 0;
	}
	
	.reCAPTCHA_info {
		font-size: 12px;
	}
	
}


@media(max-width: 1000px) {
	/* 2025.11.10追加 */
	.BandA_contents {
		max-width: 453px;
		margin: 0 auto;
		display: flex;
		flex-direction: column;
	}
	/* 2025.3.19追加 */
/* 	.BandA_contents img:first-child {
		margin-right: 0;
		margin-bottom: 20px
	} */
	/* 2025.11.10修正 */
	.BandA_contents img {
		max-width: 453px;
		margin-bottom: 6%;
	}
	/* 2025.11.10追加 */
	.BandA_contents img:last-child {
		margin-bottom: 0;
	}
}

@media(max-width: 380px) {
	/* 2024.7.29 header_full h2→h1へ */
	.header_full h1 {
		left: 5%;
		width: 90%;
	}
	
	.studio_photo_content { /* 2023.10.3追加 */
		display: block;
		width: 47.5%;
	   margin: 0 5% 5% 0;
	}

	.studio_photo_content:nth-child(5n) { /* 2023.10.3追加 */
		margin-right: 5%;
	}
	
	.studio_photo_content:nth-child(3n) { /* 2023.10.3追加 */
		margin-right: 5%;
	}
	
	.studio_photo_content:nth-child(2n) { /* 2023.10.3追加 */
		margin-right: 0;
	}
}

@media screen and  (max-width: 580px) {
	
	.qa_link {
		flex-direction: column; /* 2023.4.17 追加 */
	}
	
	.qa_link li { /* 2023.4.17 追加 */
		width: 100%;
		padding: 7px;
		border-top: 1px solid var(--accent-gold);
		border-left: none;
	}
	
	.qa_link li:last-child { /* 2023.4.17 追加 */
		border-bottom: 1px solid var(--accent-gold);
		border-right: none;
	}
	
	.qa_link a {
		font-size: 12px;
		display: block; /* 2023.4.17 追加 */
	}
	
	.trainingmenu_list li h2 { /* 2024.7.30修正 */
		font-size: 16px;
	}
	
	.trainingmenu_list .longtitle { /* 2023.5.18追加 */
    background-image: url(/wp-content/uploads/2024/07/trainingmenu_list_title_medium.webp);
    background-repeat: no-repeat;
    background-size: auto 100%;
    width: 300px;
    padding: 8px 0 14px 20px;
	 line-height: 1;
    color: #fff;
    position: absolute;
    top: -25px;
    left: -15px;
    height: 40px;
	}
	/* 2024.8.20追加 */
	.trainingmenu_list .verylongtitle {
		background-image: url(/wp-content/uploads/2024/07/trainingmenu_list_title_long.webp);
		background-repeat: no-repeat;
		background-size: auto 100%;
		width: 300px;
		padding: 8px 0 14px 20px;
		line-height: 1;
		color: #fff;
		position: absolute;
		top: -25px;
		left: -15px;
		height: 40px;
		letter-spacing: -0.7px;
	}
	
	/* 	2024.8.1追加 */
	.access_direction {
		padding: 0 5px;
	}
	
	.access_direction {
		flex-direction: column;
		align-content: center;
		flex-wrap: wrap;
	}
	
	.access_direction li {
		list-style: none;
		width: 100%;
		margin: 0 0 30px 0;
	}
	
	.access_direction li:nth-child(3) {
		margin-right: 0;
	}

	.access_direction li:nth-child(2n) {
		margin-right: 0;
	}
	
	.access_direction li:nth-child(4) {
		margin-bottom: 30px;
	}

	.access_direction li:nth-child(n+5) {
		margin-bottom: 0px;
	}
	
	.access_direction_contents p {
		width: 100%;
	}
	
}

/* 2023/07/08 角田追加 */

/* --------------------------------------------------
 text / font
-------------------------------------------------- */
.lh00 { line-height: 0  ; } .lh12 { line-height: 1.2; } .lh14 { line-height: 1.4; } .lh15 { line-height: 1.5; } .lh16 { line-height: 1.6; } .lh18 { line-height: 1.8; }
.tac { text-align: center; } .tal { text-align: left  ; } .tar { text-align: right ; }
.vat { vertical-align: top   ; } .vam { vertical-align: middle; } .vab { vertical-align: bottom; }
.fwn { font-weight: normal; } .fwb { font-weight: bold  ; }
.fs10 { font-size: 10px !important; } .fs11 { font-size: 11px !important; } .fs12 { font-size: 12px !important; } .fs13 { font-size: 13px !important; } .fs14 { font-size: 14px !important; } .fs16 { font-size: 16px !important; } .fs18 { font-size: 18px !important; } .fs20 { font-size: 20px !important; } .fs21 { font-size: 21px !important; } .fs22 { font-size: 22px !important; } .fs24 { font-size: 24px !important; } .fs26 { font-size: 26px !important; } .fs28 { font-size: 28px !important; } .fs30 { font-size: 30px !important; } .fs32 { font-size: 32px !important; } .fs36 { font-size: 36px !important; } .fs40 { font-size: 40px !important; }
.base   { color: #0068B7; } .black  { color: #000000; } .white  { color: #FFFFFF; } .red    { color: #FF0000; } .grey   { color: #666666; } .pink   { color: #FFCCFF; } .green  { color: #149600; } .blue   { color: #0073E6; } .yellow { color: #FAFA00; } .orange { color: #FF7300; }

/* --------------------------------------------------
 margin
-------------------------------------------------- */
.m00 { margin: 0px !important; } .m05 { margin: 5px !important; } .m10 { margin: 10px !important; } .m15 { margin: 15px !important; } .m20 { margin: 20px !important; } .m25 { margin: 25px !important; } .m30 { margin: 30px !important; } .m35 { margin: 35px !important; } .m40 { margin: 40px !important; } .m45 { margin: 45px !important; } .mt00 { margin-top: 0px !important; } .mt05 { margin-top: 5px !important; } .mt10 { margin-top: 10px !important; } .mt15 { margin-top: 15px !important; } .mt20 { margin-top: 20px !important; } .mt25 { margin-top: 25px !important; } .mt30 { margin-top: 30px !important; } .mt33 { margin-top: 33px !important; } .mt35 { margin-top: 35px !important; } .mt40 { margin-top: 30px !important; } .mt45 { margin-top: 35px !important; } .mr00 { margin-right: 0px !important; } .mr05 { margin-right: 5px !important; } .mr10 { margin-right: 10px !important; } .mr15 { margin-right: 15px !important; } .mr20 { margin-right: 20px !important; } .mr25 { margin-right: 25px !important; } .mr30 { margin-right: 30px !important; } .mr35 { margin-right: 35px !important; } .mr40 { margin-right: 40px !important; } .mr45 { margin-right: 45px !important; } .mb00 { margin-bottom: 0px !important; } .mb05 { margin-bottom: 5px !important; } .mb10 { margin-bottom: 10px !important; } .mb15 { margin-bottom: 15px !important; } .mb20 { margin-bottom: 20px !important; } .mb25 { margin-bottom: 25px !important; } .mb30 { margin-bottom: 30px !important; } .mb35 { margin-bottom: 35px !important; } .mb40 { margin-bottom: 40px !important; } .mb45 { margin-bottom: 45px !important; } .mb50 { margin-bottom: 50px !important; } .mb80 { margin-bottom: 80px !important; } .mb100 { margin-bottom: 100px !important; } .ml00 { margin-left: 0px !important; } .ml05 { margin-left: 5px !important; } .ml10 { margin-left: 10px !important; } .ml15 { margin-left: 15px !important; } .ml20 { margin-left: 20px !important; } .ml25 { margin-left: 25px !important; } .ml30 { margin-left: 30px !important; } .ml35 { margin-left: 35px !important; } .ml40 { margin-left: 40px !important; } .ml45 { margin-left: 45px !important; }

/* --------------------------------------------------
	padding
-------------------------------------------------- */
.p00 { padding-top: 0px !important; } .p05 { padding-top: 5px !important; } .p10 { padding-top: 10px !important; } .p15 { padding-top: 15px !important; } .p20 { padding-top: 20px !important; } .p25 { padding-top: 25px !important; } .p30 { padding-top: 30px !important; } .p35 { padding-top: 35px !important; } .p40 { padding-top: 40px !important; } .p45 { padding-top: 45px !important; } .pt00 { padding-top: 0px !important; } .pt03 { padding-top: 3px !important; } .pt05 { padding-top: 5px !important; } .pt10 { padding-top: 10px !important; } .pt15 { padding-top: 15px !important; } .pt20 { padding-top: 20px !important; } .pt25 { padding-top: 25px !important; } .pt30 { padding-top: 30px !important; } .pt35 { padding-top: 35px !important; } .pt40 { padding-top: 40px !important; } .pt45 { padding-top: 45px !important; } .pr00 { padding-right: 0px !important; } .pr05 { padding-right: 5px !important; } .pr10 { padding-right: 10px !important; } .pr15 { padding-right: 15px !important; } .pr20 { padding-right: 20px !important; } .pr25 { padding-right: 25px !important; } .pr30 { padding-right: 30px !important; } .pr35 { padding-right: 35px !important; } .pr40 { padding-right: 40px !important; } .pr45 { padding-right: 45px !important; } .pb00 { padding-bottom: 0px !important; } .pb05 { padding-bottom: 5px !important; } .pb10 { padding-bottom: 10px !important; } .pb15 { padding-bottom: 15px !important; } .pb20 { padding-bottom: 20px !important; } .pb25 { padding-bottom: 25px !important; } .pb30 { padding-bottom: 30px !important; } .pb35 { padding-bottom: 35px !important; } .pb40 { padding-bottom: 40px !important; } .pb45 { padding-bottom: 45px !important; } .pl00 { padding-left: 0px !important; } .pl05 { padding-left: 5px !important; } .pl10 { padding-left: 10px !important; } .pl15 { padding-left: 15px !important; } .pl20 { padding-left: 20px !important; } .pl25 { padding-left: 25px !important; } .pl30 { padding-left: 30px !important; } .pl35 { padding-left: 35px !important; } .pl40 { padding-left: 40px !important; } .pl45 { padding-left: 45px !important; }

.ct_right {
    width: 800px;
    float: none;
    margin: auto;
}
.ct_right ul {
	padding:90px 0 0;
    width: 800px;
    float: none;
    margin: auto;
}
.ct_right .entry-content {
	margin: 0em 0 0;
}

ul li.pull-left {
    float: left;
    list-style: none;
	word-wrap: break-word;
}
ul li.pull-left a {
	text-decoration:underline;
}
#breadcrumbs {
	margin: 15px 0 25px;
}
.main-inner > .entry, .main-inner > .widget {
    margin: 0 0 20px;
    padding: 30px;
    border: 1px solid #ccc;
    background: #fff;
    box-shadow: 0 2px 0 rgba(000, 000, 000, .05);
    position: relative;
    zoom: 1;
    _-webkit-box-shadow: 0 2px 0 #f2f2f2;
    *-webkit-box-shadow: 0 2px 0 #f2f2f2;
    -webkit-box-shadow: 0 2px 0 #f2f2f2\9;
    behavior: url(https://www.finepros.jp/column/system/wp-content/themes/finepros/PIE.htc);
}
h1.entry-title{
	margin-top:0;
    font-size: 1.5em;
}

@media(max-width: 768px) {
	.ct_right {
		width:90%;
		margin:0 5%;
	}
	.ct_right ul {
		width:100%;
	}
	h1.ttlbk,
	h1.entry-title{
    font-size: 1.2em;
	}
	.main-inner > .entry, .main-inner > .widget {
 		padding: 15px;
	}
}

.entry-img {
    float: left;
    overflow: hidden;
    margin: 0 15px 15px 0;
    max-width: 30%;
}

/* --------------------------------------------------
	TCD
-------------------------------------------------- */
#toc_container {
	display:inherit;
	width:75%;
}
@media(max-width: 768px) {
	#toc_container {
		width:100%;
	}
}
/* --------------------------------------------------
	見出し
-------------------------------------------------- */
.ct_right h2 {
	background-color:#404040;
	color:#FFFFFF;
	padding:10px;
	margin:40px 0 15px;
}
.ct_right　h3 {
	border-bottom: 2px solid #404040;
	margin:30px 0 10px;
	padding:10px;
}
.ct_right　h4 {
	border-left: 10px solid #404040;
	margin:10px;
	padding:2px 5px;
}



/* --------------------------------------------------
	関連記事
-------------------------------------------------- */
.yarpp-related {
	overflow:hidden;
	background-color:#F0F0F0;
	padding:30px 10px 10px;
}

.yarpp-related h3 {
	text-align:center;
	border-bottom:5px solid #000000;
	width:300px;
	margin:0 auto !important;
	font-size:150%;
}
@media(max-width: 768px) {
	yarpp-related h3 {
		width:100%;
		font-size:120%;
	}
}
.yarpp-thumbnails-horizontal a.yarpp-thumbnail {
	width: 29.33333%;
	border:none;
	height:auto;
	margin: 2%;
	padding:0;
	float: left;
}
.yarpp-thumbnails-horizontal a.yarpp-thumbnail img {
   width: 100%;
	height:100%;
	margin: 0;
	border:1px solid #EEEEEE;
}
.yarpp-thumbnails-horizontal .yarpp-thumbnail-title {
   width: 100% !important;
	margin: 7px 0 !important;
}

@media(max-width: 768px) {
	#page {
		overflow: hidden;
	}
}

/* 2024.03 トップページ */
@media(max-width: 768px) {

	.top_lp_sp {
		font-size: 14px;
	}
/* 	2024.6.5修正 */
/* 	.top-slider:before {
		background-image: url(/wp-content/themes/muscle-photo-child/img/top_slide_txt_sp_0604.png);
	} */
/* 	2024.7.16修正 */
	.header_contact_btn a {
		margin: 0;
		position: relative;
        top: -1px;
	}
/* 	2024.7.16修正 */
	.header_contact_btn img {
		vertical-align: text-bottom;
	}
	
	.header_contact_btn {
		background-color: #e87060;
		border: 0;
		border-radius: 4px;
	}
	
	.top_mincho {
		font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
		font-size: 20px;
		font-weight: bold;
		color: var(--accent-gold);
	}

	.bg_black {
		background-color: #1b1b1b;
		color: #fff;
	}
	
	.bg_lightgray {
		background-color: #ebedf0;
	}
	
	.top_lp_sp section {
		padding: 25px;
	}
	
	.top_lp_sp .news-title {
		margin-bottom: 10px;
	}
/* 	2024.6.7修正 */
	section.top_trainingarea {
/* 		padding: 0; */
		padding: 25px;
		text-align: center;
	}

	.top_trainingarea img {
		width: 100%;
		display: block;
	}

/* 	.top_trainingarea p.top_mincho {
		position: absolute;
		width: 100%;
		bottom: 25px;
		color: #fff;
		text-shadow: 0px 0px 4px #000, 0px 0px 4px #000;
	} */

	.top_img_flex {
		display: flex;
		justify-content: center;
		margin-bottom: 30px;
	}

	.top_img_flex div:nth-child(2) {
		margin-left: 10px;
	}

	.top_lp_sp .ti-widget.ti-goog .ti-col-1 .ti-footer {
		padding: 0 20px;
	}

	.top_lp_sp .ti-widget.ti-goog .ti-col-1 .ti-reviews-container {
		margin-bottom: 0;
	}

	.top_lp_sp .ti-widget.ti-goog .ti-widget-container {
		margin-bottom: 5px;
	}

	.top_lp_btn {
		display: block;
		width: 170px;
		margin: auto;
		text-align: center;
		font-weight: bold;
		border: 1px solid;
		padding: 7px 3px;
		position: relative;
	}

	.top_lp_btn:after {
		content: "";
		border-bottom: 1px;
		border-right: 1px;
		border-top: 0;
		border-left: 0;
		border-style: solid;
		display: inline-block;
		height: 6px;
		width: 6px;
		transform: rotate(-45deg);
		margin-bottom: 2px;
		margin-left: 2px;
	}
	
	.bg_lightgray .top_lp_btn {
		background-color: #fff;
	}
	
	.bg_black .top_lp_btn {
		color: #fff;
	}

	.top_price_table {
		font-size: 18px;
		width: 310px;
		margin: 0 auto 20px;
	}

	.top_price_table span {
		font-size: 13px;
	}

	.top_price_table tr {
		display: flex;
		justify-content: space-between;
		margin-bottom: 10px;
	}

	.top_lp_sp .qa_content_list li:last-child {
		margin-bottom: 30px;
	}
/* 	2024.5.16追加 */
	.subtitle1 {
		position: absolute;
		width: 100%;
		top: 25px;
		left: 25px;
		color: #fff;
		text-shadow: 0px 0px 4px #000, 0px 0px 4px #000;
	}
	
	.subtitle2 {
		text-align: right;
		position: absolute;
		width: 100%;
		bottom: 25px;
		right: 25px;
		color: #fff;
		text-shadow: 0px 0px 4px #000, 0px 0px 4px #000;
	}
/* 	2024.9.18修正 */
	.sptop_textlink {
		border-bottom: solid;
		border-color: #a0995e;
		border-width: 1px;
		padding-bottom: 1px;
		letter-spacing: 1px;
		font-feature-settings: "palt";
		font-size: 19px;
	}

/* 2024.9.17追加 */
	.for_beginner {
		background-image: url(/wp-content/uploads/2024/09/pixta_99544214_XL.webp);
		background-repeat: no-repeat;
		background-position: right center;
		background-size: contain;
		width: 100%;
		height: auto;
	}
	
	.for_beginner_contents {
		min-height: 150px;
		display: flex;
		flex-direction: column;
        justify-content: space-between;
	}
	
	.for_beginner_contents h2 {
		letter-spacing: -0.5px;
	}
/* 2024.9.18追加 */	
	.for_beginner_contents p {
		font-size: 15px;
	}

	/* 	2025.3.19追加 */
	.BandA {
		max-width: 453px;
		margin: 0 auto;
	}
	/* 	2025.3.19追加 */	
	.BandA img {
		vertical-align: bottom;
	}
	/* 	2025.11.10修正 */
	.BandA img {
		margin-bottom: 6%;
	}
	/* 	2025.11.10追加 */
	.BandA img:last-child {
		margin-bottom: 0;
	}
	
	
/* 	2024.7.30追加 */
	.onayami_title {
		font-weight: 600;
	}
/* 	2024.7.30追加 */
	.onayami_title_sub {
		font-size: 14px;
		font-weight: bold;
	}
	/* 	2025.3.19修正 */
	.onayami {
/* 		max-width: 290px; */
		max-width: 320px;
		margin: 25px auto 0;
	}
	
	ul.onayami {
		position: relative;
		list-style:none;
	}
	
	ul.onayami li:before {
		content: url(./img/checkmark.png);
		margin-right: 5px;
	}
	/* 	2025.3.19修正 */
	.onayami li {
		font-weight: bold;
		font-size: 16px;
/*		text-indent: -2.2em; */
/*      padding-left: 2.2em; */
		text-indent: -1.9em;
        padding-left: 1.9em;
/* 		margin-bottom: 15px; */
/* 		margin-bottom: 25px; */
		margin-bottom: 20px; /* 2025.3.19修正 */
		text-shadow:
            2px 2px 2px #fff, -2px -2px 2px #fff,
           -2px 2px 2px #fff,  2px -2px 2px #fff,
            2px 0px 2px #fff, -2px -0px 2px #fff,
            0px 2px 2px #fff,  0px -2px 2px #fff;
	}

	.onayami li span {
		vertical-align: 5px;
	}

	.onayami li:last-child {
		margin-bottom: 0;
	}
/* 	2024.7.30追加 */
	.onayami_kaiketsu {
		margin-bottom: 20px;
	}
	
	.bg_gold {
		background-color: #a0995e;
	}
/* 	2025.3.19修正 */
	.bg_sec1 {
	    background-image: url(/wp-content/themes/muscle-photo-child/img/bg_onayami.png);
/*     	background-position: top 83% right 0; */
		background-position: top 86% right 0;
    	background-repeat: no-repeat;
	}
	
	.bg_sec1 {
		position: relative;
	}
	
	.bg_sec1::before{/* beforeでもafterでも*/
		content: "";
		position: absolute;
		height: 40px;
		width: 100%;
		clip-path: polygon(0 0,50% 100%,100% 0);/* ココ */
		background-color: #ebedf0;
		left: 0;
		bottom: -40px; /* bottomにピッタリくっつけたいので三角の高さ分下にずらす */
		z-index: 3;
	}
/* 	2025.7.15修正 */
	.bg_sec2 {
		padding: 25px 25px 5px;
/* 		padding: 65px 25px 5px; */
		position: relative;
	}
	
	.bg_sec2::before{/* beforeでもafterでも*/
		content: "";
		position: absolute;
		height: 40px;
		width: 100%;
		clip-path: polygon(0 0,50% 100%,100% 0);/* ココ */
		background-color: #a0995e;
		left: 0;
		bottom: -39.8px; /* bottomにピッタリくっつけたいので三角の高さ分下にずらす */
		z-index: 2;
	}
	
	.reserve_btn {
		background-color: #e87060;
        border: 0;
        border-radius: 4px;
		color: #fff;
		max-width: 217px;
		margin: 0 auto 30px;
		line-height: 1; /* 	2024.7.4追加 */
	}
	
	/* 	2025.5.10修正 */
	.reserve_btn a {
		display: block;
/* 		padding: 7px 20px; */
		padding: 10px 20px;
		font-weight: bold;
		text-align: center;
	}
	/* 	2024.7.4追加 */
	/* 	2025.5.10 一旦非表示 */
/* 	.reserve_btn a:before {
		content: url(/wp-content/themes/muscle-photo-child/img/sp_icon_contact_line.png);
		margin-right:5px;
		vertical-align: middle;
		display: inline-block;
        height: 20px;
	} */
	
	/* 	2024.9.18追加 */
	.reserve_btn_fitpay {
		background-color: #4faaac;
        border: 0;
        border-radius: 4px;
		color: #fff;
		max-width: 217px;
		margin: 0 auto 30px;
		line-height: 1;
	}
	
	.reserve_btn_fitpay a {
		display: block;
		padding: 9px 20px;
		font-weight: bold;
		text-align: center;
	}
	
	.imagevisual_sp img {
		width: 100%;
	}
	
	/* 	2024.5.27追加 */
	
	.trainer_message {
		background:linear-gradient(170deg, transparent 0%, transparent 70%, #a0995e 70%, #a0995e 100%); 
/* 		background:linear-gradient(170deg, #1b1b1b 0%, #1b1b1b 70%, #a0995e 70%, #a0995e 100%);  */
	}
	
	.trainer_message img {
		display: block;
		width: 100%;
		margin: 0 auto;
	}
	
	.trainer_message a {
		margin-top: 30px;
		background-color: #fff;
	}
/* 	2024.7.30追加 */
	.trainer_message h2 {
		padding-top: 10px;
		margin-bottom: 20px;
	}
	
	/* 	2024.8.1追加 */
	.link_to_trainerpage {
		width: 100%;
		text-align: center;
		color: #fff;
		margin-top: 10px;
	}
	/* 	2024.8.1追加 */
	.voice_part_sp_top {
		margin-top: 30px;
	}
	
	.media_sp {
		background-color: #ebedf0;
		padding: 30px 0 10px;
	}
	
	/* 	2024.6.3追加 */
	.sp_logo {
		margin: 5px 0 0 10px;
        max-width: 100px;
        width: 20%;
	}
	
	.sp_logo img {
		height: 50px;
		width: auto;
	}	

	.top_strongpoint_sp {
		background-color: #e0e2e5;
		text-align: center;
	}
	
	.top_lp_sp .top_strongpoint_sp .news-title {
		margin-bottom: 1px;
	}
	
	.strongpoint_table_sp {
		margin-bottom: 30px;
	}
	
	.top_strongpoint_sp img {
		display: block;
		filter: drop-shadow(2px 2px 3px #808080);
	}
	
	/* 	2024.6.7追加 */
	.top_movie_sp {
		margin: 0 auto;
	}
	
	/* 	2024.6.12追加 */
	.whatMP_intro > .section_inner > .top_strongpoint_sp {
		background-color: #eceef1;
	}
	
	/* 	2024.7.30追加 */
	.qa_content_list h3 {
		font-size: 14px;
	}
	/* 	2024.7.30追加 */
	.news_title_sp {
		margin-bottom: 20px !important;
	}
	/* 	2024.7.30追加 */
	.news_title_sub {
		font-size: 14px;
		font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
		color: #404040;
	}
	/* 	2024.7.30追加 */
	.news-title {
		line-height: 1;
	}
	/* 	2024.7.30追加 */
	.first_campaign_part_sp {
		width: 100%;
	}
	/* 	2024.7.30追加 */
	.studio_bottom_box h2 {
    position: absolute;
    top: -20px;
    left: 15px;
    padding: 5px;
    background-color: var(--accent-gold);
    width: 100px;
    text-align: center;
	}
	
	.studio_bottom_box h2 {
		left: calc(50% - 50px);
		font-size: 16.38px;
	}

	/* 2024.7.29追加 */
	div.breadcrumbs {
		padding: 8px 40px;
		font-size: 12px;
	}
}