@charset "utf-8";
@import url(//fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url("import.css");
/* 共通
-------------------------------------------------------------*/
.sp {
	display: none;
}

.switch {
	visibility: hidden;
}
html, body {
	width: 100%;
}
body {
	font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Verdana, "ＭＳ ゴシック", Osaka-mono, sans-serif;
	-webkit-text-size-adjust: 100%;
	color: #000;
	font-size: 15 px;
	text-align: center;
	min-width: 1020px;
}
#outer {
	width: 100%;
	overflow: hidden;
}
.wrapper {
	width: 900px;
	margin: 0px auto;
	text-align: left;
}

ul.indent li{
	text-indent: -1em;
	padding-left: 1em;
}

.content--introduction section a {
	outline: none;
	color: #E0007F;
	text-decoration: none;
}
.content--introduction section a:hover {
	text-decoration: underline;
}
.content--introduction{
	max-width:100% !important;
	position:relative;
	top:-15px;
	line-height:1.5;
}
.content img{
	width:auto !important;
}

/* ヘッダー
-------------------------------------------------------------*/



/* main
-------------------------------------------------------------*/

.mainimg img{
	max-width: 100%;
}
.mainimg .bg {
  background: url(../images/camp202406_kuwana_bg.jpg) no-repeat center top;
  background-repeat: no-repeat;
  background-position: right top;
  background-size: cover;
  padding: 4% 0 4%; }
  @media (max-width: 767px) {
    #page_index .mainimg.kuwana .bg {
      background: url(../images/camp202406_kuwana_bg_sp.jpg) no-repeat 24% top;
      background-repeat: no-repeat;
      background-size: 100% auto;
      margin-bottom: 0%;
      padding: 4% 0 0 0; } }

.mainimg .camp{
	background: #fff;
	padding: 20px;
	border-radius: 10px;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.10);
}
.mainimg .camp .notes {
	text-align: left;
  font-size: 10px;

  border-top: 1px solid #eee;
    margin-top: 2%;
    padding-top: 2%;  
  /*
  color: #fff;
  background: rgba(230, 66, 142, 0.5); }
  @media (max-width: 767px) {
    .mainimg .camp .notes {
      background: rgba(230, 66, 142, 0.5);
      padding: 0 4% 15px; } }
  @media print, screen and (min-width: 768px) {
    .mainimg .camp .notes {
      padding: 0 30px 15px;
      font-size: 13px; } }
  @media print, screen and (min-width: 1040px) {
    .mainimg .camp .notes {
      font-size: 13px; } 
      */
}
.mainimg .camp.pink{
	background: #ec6d67;
}
.mainimg .camp.pink .notes{
	color: #fff;
}
@media (max-width: 767px) {
  .mainimg .rizaplogo {
    width: 30%; } }

@media (max-width: 767px) {
  .mainimg .camp {

    width: 100%;
    margin-top: 56%;
    background: #000;
    margin: 1% 8% 0% 8%; } }
@media print, screen and (min-width: 768px) {
  .mainimg .camp {
    margin: 0% 55% 0% 2%; } }
@media print, screen and (min-width: 1040px) {
  .mainimg .camp {
    margin: 0% 51% 0% 5%; } }
@media screen and (min-width: 1600px) {
  .mainimg .camp {
    margin: 0% 55% 0% 5%;
        max-width: 800px; } }



@media (max-width: 767px) {
  .mainimg .camp.pink {

    width: 100%;
    margin-top: 56%;
    background: #000;
    margin: 1% 8% 0% 8%; } }
@media print, screen and (min-width: 768px) {
  .mainimg .camp.pink {
    margin: 0% 56% 0% 2%; } }
@media print, screen and (min-width: 1040px) {
  .mainimg .camp.pink {
    margin: 0% 55% 0% 5%; } }
@media screen and (min-width: 1600px) {
  .mainimg .camp.pink {
    margin: 0% 55% 0% 5%;
        max-width: 800px; } }

section.main .bg {
	margin-top:-50px;
	padding-top:125px;
	background: url(../images/main_bg_pc.jpg) top center no-repeat;
	min-height:580px;
}

section.main .bg2 {
	margin-top:-10px;
	padding-top:125px;
	padding-bottom:100px;
	background: url(../images/main_bg2_pc.jpg) top center no-repeat;
	background-size: cover;

}
@media screen and (min-width:1300px) { 
	section.main .bg2 {
	}
}

section.main .bg2 .wrapper{
	position:relative;
}
section.main .bg2 p{
	width: 60%;
}
section.main .bg2 img{
	
	width: 100% !important;
	height: auto;
}
@media screen and (min-width:1200px) { 
	section.main .bg2 img{
		position:relative;
		top:0;

	}
}
/* campaign
-------------------------------------------------------------*/
section.campaign {
}
section.campaign h2 {
	padding-top: 30px;
	padding-bottom: 5px;
	font-weight:bold;
		font-size: 39px;
		color:#008742;
}

section.campaign h2 img{
	padding-right:10px;
	position:relative;
	top:-7px;
	width:320px;
}
section.campaign .title {
	padding: 30px 0;
	margin-top: -20px;
	background: #fff;
}
section.campaign .top {
	background: #eb6b9d;
	padding-bottom:5px;
}
section.campaign .bg {
	padding-top: 10px;
	background: url(../images/bg_border.jpg) repeat;
}
section.campaign .photo {
	padding: 40px 0 50px;
}
section.campaign .btn {
	padding-bottom: 60px;
}
section.btn_only{
	margin-bottom:50px;
	margin-top:20px;
}
section.btn_only.mt{
	margin-top:50px;
}
section.linkbtn_col2{
}
section.linkbtn_col2 ul{
	padding:4% 10% 10%;
}
section.linkbtn_col2 ul li{
	width:47%;
	float:left;
}
section.linkbtn_col2 ul li:first-child{
	margin-right:6%;
	
}
section.linkbtn_col2 ul li a{
	    background: #e96e9d;
    box-shadow: 0 4px 0px #c2467a;
    -moz-box-shadow: 0 4px 0px #c2467a;
    -webkit-box-shadow: 0 4px 0px #c2467a;
    font-size: 34px;
    font-weight: 900 !important;
    margin-bottom: 10px;
    padding: 10px 35px 5px;
	

    outline: none;
    border: 0;
	display:block;
    color: #fff;
	text-align:center;
    -webkit-transition: all 0.1s linear;
    -moz-transition: all 0.1s linear;
    transition: all 0.1s linear;
	border-radius:12px;
}
section.linkbtn_col2 ul li a:hover{
	text-decoration:none;
	-webkit-transform: translateY(4px);
	transform: translateY(4px);
	box-shadow: 0 0px 0px #d8a400;
	-moz-box-shadow: 0 0px 0px #d8a400;
	-webkit-box-shadow: 0 0px 0px #d8a400;	
}

/* lesson
-------------------------------------------------------------*/
section.lesson {
	padding-bottom: 50px;
	margin-top:20px;
	background: #f5ede5 url(../images/bg_flower_pc.png) top center no-repeat;
}
section.lesson .arrow {
	margin-bottom: 10px;
}
section.lesson h3{
	text-align:center;
}
section.lesson .btn{
	margin-top:10px;
}
section.lesson .camp{
	width: 800px;
	margin: 20px auto 0;
}
section.lesson .camp img{
	width: 100% !important;
	height: auto;
}
/* osusume
-------------------------------------------------------------*/
.bg_pink{
	background: #fad8e1 url(../images/bg_flower_pc.png) top center no-repeat;
}
.bg_cream{
	background: #f5ede5 url(../images/bg_flower_pc.png) top center no-repeat;
}
section.osusume{
	padding-bottom:20px;
}
section.osusume h3{
	padding-top:50px;
}
section.osusume p.point{
	margin-bottom:10px;
}
section.osusume p.text{
	padding:0 20px;
	font-size:17px;
	
}
section.osusume p.woman{
	margin-left:-10px;
}

/* point
-------------------------------------------------------------*/
section.point {
	padding-bottom: 80px;
}
section.point.mt{
	padding-top:50px;
}
section.point .arrow{
		padding-bottom: 50px;
}
section.point .left {
	width: 440px;
	float: left;
	line-height: 1.8;
}
section.point .right {
	width: 425px;
	float: right;
	padding-top:170px;
}
section.point .left h3 {
	margin-bottom: 20px;

}
section.point .left .text {
	padding-left: 20px;
	margin-bottom: 25px;
	font-size: 17px;

}
section.point .left h4 {
	margin-bottom: 10px;
		margin-left: 15px;
		border-bottom:1px solid #dc6794;
}
section.point .btn {
	margin-top: 40px;
}
/* kouka
-------------------------------------------------------------*/
span.small{
	display:inline-block;
	margin-top:1em;
	font-size:12px;
}
span.small2{
	vertical-align:super;
	font-size:12px;
	padding:0 2px;
}
section.kouka {
	padding-bottom: 10px;
	background: #f5ede5 url(../images/bg_flower_pc.png) top center no-repeat;
}
section.kouka .arrow {
	margin-bottom: 30px;
}
section.kouka .wrapper {
	margin-bottom: 30px;
}
section.kouka p.text{
	padding:0 20px;
}
section.kouka hr{
	margin:30px 20px 40px;
	height:1px;
	border:none;
	background:#231815;
}

section.kouka .left {
	width: 440px;
	float: left;

	padding: 30px 0 0 20px;
	line-height: 1.8;
}
section.kouka .right {
	width: 425px;
	float: right;
}
section.kouka .right .tokutyou{
	margin-left:-170px;
}
section.kouka h3 {
	margin-bottom: 10px;
	text-align:center;
}
section.kouka .left .text {
	padding-left: 20px;
	margin-bottom: 25px;
	font-size: 17px;
	font-weight: bold;
}
section.kouka .left h4 {
	margin-bottom: 10px;
}
section.kouka .btn {
	margin-top: 40px;
}
/* flow
-------------------------------------------------------------*/
section.flow {
	background: url(../images/bg_border.jpg) repeat;
	padding: 0px 0 60px;
}
section.flow .arrow {
	padding-bottom: 40px;
}
section.flow h3 {
	text-align: center;
	padding-bottom: 30px;
}
section.flow .col4 {
	overflow: hidden;
	margin-right: -15px;
}
section.flow .col4 li {
	margin-right: 17px;
	float: left;
	width:214px;
	background:#fff;
	min-height:260px;
}
section.flow .col4 li p{
	margin:0 15px 10px;
	padding-top:10px;
	min-height:168px;
		border-top:2px dotted #999;
}
section.flow .col4 li:last-child {
	margin-right: 0px;	
}
section.flow .inner {
	background: #fff;
	width: 840px;
	margin: 30px auto;
	padding: 40px 30px;
}
section.flow .inner h4 {
	text-align: center;
	margin-bottom: 10px;
}
section.flow .inner h5 {
	text-align: center;
	margin-bottom: 50px;
}
section.flow .inner table {
	width: 100%;
	font-size: 20px;
	margin-bottom:15px;
}
section.flow .inner table th {
	border: #666 1px solid;
	text-align: center;
	width: 400px;
	font-size: 28px;
	vertical-align: middle;

}
section.flow .inner table th.top{
	background:#e0e0e0;
	text-align:center;
	color:#333;
	padding:10px 0 6px;
	font-size:22px;
	font-weight:bold;
	
}



section.flow .inner table tr:nth-child(even) {
	background: #fff3cb;
}
section.flow .inner table tr:nth-child(odd) {
	background: #fff;
}


section.flow .inner table th.yoyaku{
	width:160px;
}
section.flow .inner table th.red {
	background: #eb6b9d;
}
section.flow .inner table th.green {
	background: #7bc5a7;
}
/*
section.flow .inner table td.pink {
	background: #fad9da;
}
section.flow .inner table td.beige {
	background: #fdecdc;
}
*/
section.flow .inner table td {
	border: #666 1px solid;
	text-align: center;
	padding: 10px 15px;
}
section.flow .btn{
	margin-top:40px;
	text-align:center;
}

section.flow .btn01 {
	text-align: center;
}
section.flow .btn a {
	background: #e52d8a;
	box-shadow: 0 7px 0px #c01d6f;
	-moz-box-shadow: 0 7px 0px #c01d6f;
	-webkit-box-shadow: 0 7px 0px #c01d6f;
	font-size: 22px;
	font-weight: 900;
	margin: 20px auto 10px;
	padding: 30px 50px 20px;
	line-height: 1.2;
	outline: none;
	border: 0;
	color: #fff;
	-webkit-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	transition: all 0.1s linear;
	position: relative;
	text-align: center;
	display: inline-block;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
section.flow .btn a:hover {
	-moz-transform: translateY(7px);
	-webkit-transform: translateY(7px);
	-o-transform: translateY(7px);
	-ms-transform: translateY(7px);
	box-shadow: 0 0px 0px #c01d6f;
	-moz-box-shadow: 0 0px 0px #c01d6f;
	-webkit-box-shadow: 0 0px 0px #c01d6f;
	text-decoration: none;
}
/* btn01 */
section.flow .btn01 a {
	background: #e52d8a;
	box-shadow: 0 7px 0px #c01d6f;
	-moz-box-shadow: 0 7px 0px #c01d6f;
	-webkit-box-shadow: 0 7px 0px #c01d6f;
	margin: 30px auto 10px;
	color: #fff;
}
section.flow .btn01 a:hover {
	box-shadow: 0 0px 0px #c01d6f;
	-moz-box-shadow: 0 0px 0px #c01d6f;
	-webkit-box-shadow: 0 0px 0px #c01d6f;
}
section.flow .btn01 a:before {
	content: url(../images/btn01_icon.png);
	display: inline-block;
	position: relative;
	padding-right: 15px;
	vertical-align: middle;
}
section.flow .btn01 a:after {
	content: url(../images/btn_arrow.png);
	position: absolute;
	right: 20px;
	top: 30px;
	vertical-align: middle;
}

/* プログラム
-------------------------------------------------------------*/
section.program {
	background: url(../images/program_bg.jpg) top center no-repeat;
	padding-bottom:60px;
}
section.program.hearty {
	background: url(../images/program_bg_hearty.jpg) top center no-repeat;
	background-size:cover;
}
section.program h2 {
	padding: 20px 0 20px;
}
section.program .inner {
	padding: 0 25px 5px;
	color: #fff;
	background: rgba(235,107,157,0.8);
}
section.program .inner hr {
	border: none;
	height: 1px;
	background: #fff;
	margin: 20px 0 40px;
}
section.program .inner .arrow img {
	width: 46px;
	height: auto;
	margin-bottom: 20px;
}
section.program h3 {
	margin-bottom: 25px;
	text-align: center;
}
section.program h3 img {
	width: 100%;
	height: auto;
}
section.program ul.col2 {
	overflow: hidden;
	margin-right: -20px;
	margin-bottom: 10px;
}
section.program ul.col2 li {
	width: 415px;
	float: left;
	margin-right: 20px;
	margin-bottom:20px;
}
section.program ul.col2 li img, section.program .photo img {
	width: 100%;
	height: auto;
}
section.program ul.col2 li p{
	padding-top:3px;
	font-size:11px;
}
section.program h4 {
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	margin: 0 100px 3px;
}
section.program .text p {
	margin: 0 100px 25px;
	line-height: 1.8;
	font-size: 19px;
	color: #fff;
}
section.program .text.left h4 {
	margin: 0 40px 3px;
}
section.program .text.left p {
	margin: 0 40px 25px;
}
section.program .btn {
	text-align: center;
	margin-top: 50px;
	padding-bottom: 60px;
}
/* address
-------------------------------------------------------------*/
section.address .wrapper {
	width: 920px;
}
section.address table {
	width: 920px;
	margin: 30px 0 30px;
}
section.address .logo{
	font-size:26px;
	font-weight:bold;
	padding-top:40px;
}
section.address .logo img{
	padding-right:5px;
}
section.address table .time td {
	padding: 20px 0;
}
section.address table .time td.col2 {
	padding: 20px 0 0;
}
section.address table .holiday td {
	padding: 20px 0;
}
section.address table .h {
	padding-right: 15px;
}
section.address table .col2 {
	padding-top: 15px;
}
section.address table .add {
	width: 500px;
	border-bottom: 1px dashed #666;
}
section.address table .add h3 {
	color: #008842;
	font-weight: bold;
	font-size: 20px;
	margin-bottom: 10px;
	line-height:1.2;
}
section.address table .add h3.hearty{
	color:#e52d8a;
	position:relative;
	top:40px;
	padding:0px 0 60px;
}
section.address table .text_add {
	display: block;
	padding-bottom: 10px;
}
section.address table .text_time {
	display: inline-block;
	padding-bottom: 20px;
	border-bottom: 1px dashed #666;
}
section.address table p {
	font-size: 20px;
}
section.address table .logo img {
	width: 280px;
	height: auto;
}
section.address table .logo.hearty img {
	width:auto;
}
section.address table .photo {
	border-bottom: 1px solid #fff;
	padding-left: 20px;
}
section.address table .photo img {
	width: 380px;
	height: auto;
}
section.address .tel {
	margin-bottom: 60px;
}
section.address .tel h3 {
	margin-bottom: 10px;
}
section.address #map {
	width: 100%;
	height: 450px;
	margin: 0px auto 60px;
	color: #000;
}
section.address #map iframe{
	width: 100%;
	height: 450px;
}
/* form
-------------------------------------------------------------*/
section.form {
	border-top: 23px solid #e6e6e6;
	padding-bottom: 50px;
}
table#mfp_confirm_table tr th, table#mfp_confirm_table tr td {
	font-size: 16px !important;
}
table#mfp_confirm_table tr th {
	padding-top:18px !important;
}
section.form h2 {
	text-align: center;
	padding: 30px 0 50px;
}
section.form h3 {
	text-align: center;
}
section.form .text {
	padding: 40px 0 0px;
	text-align: center;
	font-size: 18px;
}
section.form em {
	color: #b91732;
	padding-left: 1em;
}
section.form input[type=text], section.form textarea{
	padding: 5px 8px !important;
	border: 1px solid #000;
}
select {
	padding: 5px 5px !important;
	border: 1px solid #000;
}
section.form section p {
	margin-bottom: 20px;
}
section.form .tyui{
	padding: 10px 20px;
	background: #fff3cb;
}

section.form table {
	border: none;
	margin: 30px auto 30px !important;
	font-size: 16px;
	width: 820px !important;
}
section.form table tr {
	padding: 20px 0 20px !important;
}
section.form table th {
	padding: 25px 10px 15px !important;
	border: none !important;
	width: 220px !important;
	text-align: left !important;
	vertical-align: top !important;
	font-weight: bold;
	font-size: 17px;
}
section.form table td {
	padding: 20px 10px 15px !important;
	border: none !important;
	text-align: left !important;
}
section.form table td p {
	margin-bottom: 10px;
}
section.form button {
	border: none;
	width: 260px;
	margin: 0 10px;
	padding: 18px 3px 15px;
	cursor: pointer;
	font-size: 18px;
	font-weight: bold;
	color: #000;
	background: #fff;
	border: 2px solid #000;
}
section.form button:hover {
	border: 2px solid #b01932;
}
section.form .submit_btn {
	text-align: center;
	margin: 20px 0 10px;
}
section.form .privacy{
	font-size:12px;
	margin-bottom:40px;
	
}
/* フッター
-------------------------------------------------------------*/

footer {
}
footer p.copy {
	padding: 20px 0 50px;
	font-size: 12px;
	text-align: center;
}

#a-footer .btn_sche a {
	position: fixed;
	bottom: 110px;
	right: 20px;
	z-index: 9999;
	text-align: center;
	text-decoration: none;
	display: block;
	width: 90px;

}
#a-footer .btn_taiken a {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 9999;
	line-height:1.4;
	text-align: center;
	text-decoration: none;
	color: #fff;
	display: block;
	width:120px;
	font-size:13px;
}
#a-footer .btn_taiken a img{
	width:100%;
}
/* privacy_area
-------------------------------------------------------------*/

.privacy_area{
	box-sizing:border-box;
	border:1px solid #c8c9c9;
	padding:30px 30px 20px;
	margin:30px auto 30px;
}
.privacy_area p.h {
	font-size:18px;
	text-align:center;
	margin-bottom:20px;
}
.privacy_area p.h a{

}
.privacy_area p.t {
font-size:14px;


}
.privacy_area p.t2 {
text-align:center;
font-size:18px;
margin-top:25px;
padding-bottom:25px;
margin-bottom:20px;
border-bottom:1px solid #c8c9c9;
}
.privacy_area p.t2 a{
	text-decoration:underline;
}
.privacy_area .check{
	text-align:center;
	font-size:17px;
}
form#mailformpro label.mfp_checked,
form#mailformpro label.mfp_not_checked{
	    padding: 0px !important;
    border: none !important;
    background:none !important;
	box-shadow:none !important;
}


/* thanks
-------------------------------------------------------------*/
section.thanks {
	padding: 50px 0 30px;
}
section.thanks .thanks_text {
	text-align: center;
	margin-bottom: 40px;
	line-height: 1.8;
	font-weight:bold;
}
section.thanks .thanks_text a {
	color: #b01932;
}
section.thanks .info_text {
	font-size: 13px;
}
section.thanks .info_text h4 {
	margin-top: 20px;
	font-weight: bold;
	font-size: 16px;
	margin-bottom: 5px;
}
section.thanks .info_text h5 {
	margin-top: 30px;
	margin-bottom: 5px;
	font-weight: bold;
}




/*--------------------------------------------------------------------------------*/
/*館内安全宣言追加*/
/*--------------------------------------------------------------------------------*/



.anshin_acc .accordion {
max-width: 60vw;
margin: 40px auto 40px;
}
.anshin_acc .toggle {
display: none;
}
.anshin_acc .option {
position: relative;
margin-bottom: 1em;
}
.anshin_acc .title,
.anshin_acc .content {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
transition: all 0.3s;
}
.anshin_acc .title {

padding: 10px 10px;
display: block;
text-align: center;
color: #333;
cursor: pointer;
font-weight: bold;
border-radius: 5px;
line-height: 1.4;
color: #e3666a;
border: 1px solid #e3666a;
font-weight: bold;
font-size: 16px;
}
.anshin_acc .title span{
        font-size: 13px;
font-weight: 900;

}
.anshin_acc .title::after,
.anshin_acc .title::before {
content: "";
position: absolute;
right: 1.25em;
top:43%;
width: 2px;
height: 0.75em;
background-color: #e3666a;
transition: all 0.3s;
}
.anshin_acc .title::after {
transform: rotate(90deg);
}
.anshin_acc .content {
max-height: 0;
overflow: hidden;
}
.anshin_acc .content .inner {
padding:20px 0;
line-height: 1.5;
font-size: 14px;

}
.anshin_acc .content .inner ul li{
    padding-left: 1.2em;
    margin-bottom: 5px;
    text-align: left;
    position: relative;

}
.anshin_acc .content .inner ul li:before{
    content: '・';
    position: absolute;
    left:0;
}
.anshin_acc .toggle:checked + .title + .content {
max-height: 500px;
transition: all 1.5s;
}
.anshin_acc .toggle:checked + .title::before {
transform: rotate(90deg) !important;
}

section.anshin {
    padding: 0 0 2%;




}


/*--------------------------------------------------------------------------------*/
/*館内安全宣言追加 end */
/*--------------------------------------------------------------------------------*/


section.esthetic{
	margin-top:50px;
	
}
section.esthetic img{
	max-width: 100%;
}




.program_contact_btn {
  text-align: center;
  margin-top: 60px;
  margin-bottom: 60px; }
  @media (max-width: 767px) {
    .program_contact_btn {
      margin: 8% 4%; } }

.program_contact_btn a {
  text-align: center;
  display: block;
  position: relative;
  width: 100%;
  max-width: 770px;
  padding: 25px 0;
  font-size: 26px;
  margin-left: auto;
  color: #000 !important;
  margin-right: auto;
  font-weight: 900;
  line-height: 44px; }
  @media (max-width: 767px) {
    .program_contact_btn a {
      padding: 20px 0;
      font-size: 20px; } }

.program_contact_btn a:after {
  content: "";
  width: 15px;
  height: 15px;
  border-right: 2px solid #000;
  border-top: 2px solid #000;
  display: inline-block;
  transform: rotate(45deg);
  position: absolute;
  right: 18px;
  top: 50%;
  margin-top: -6px; }

.yellow_btn {
  background-color: #ffe700;
  box-shadow: 0 4px 0px #d8a400;
  -moz-box-shadow: 0 4px 0px #d8a400;
  -webkit-box-shadow: 0 4px 0px #d8a400; }

.yellow_btn:hover {
	text-decoration: none !important;
  background-color: #fff500 !important;
  -webkit-transform: translateY(2px);
  transform: translateY(2px);
  box-shadow: 0 2px 0px #d8a400;
  -moz-box-shadow: 0 2px 0px #d8a400;
  -webkit-box-shadow: 0 2px 0px #d8a400; }




/*--------------------------------------------------------------------------------*/
/*price */
/*--------------------------------------------------------------------------------*/


section.price {
  background: url(../images/price_bg.png) no-repeat center center;
  background-size: cover;
  
}

section.price .wrapper {
  max-width: 800px; }

section.price .inner {
  background: #fff;
  padding: 8% 6% 8%;
}  
@media screen and (min-width: 768px) {
section.price .inner {
  padding: 60px 60px;
}  
  }





section.price .inner h3 {
  text-align: center;
  background: #e62d8b;
  font-size: 28px;
  font-size: 2.8rem;
  padding: 10px 20px;
  line-height: 1.4;
  color: #fff;
  letter-spacing: 3px;

  position: relative;
  font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Yu Gothic", メイリオ, Meiryo, Verdana, "ＭＳ ゴシック", Osaka-mono, sans-serif;
  font-weight: 700;
  z-index: 1;
  margin-bottom: 2.5%;
  letter-spacing: 0px; }
  @media screen and (min-width: 768px) {
    section.price .inner h3 {
      font-size: 20px;
      font-size: 2.0rem; } }
  @media screen and (min-width: 1040px) {
    section.price .inner h3 {
      font-size: 20px;
      font-size: 2.0rem; } }

section.price .inner h3 .small {
  font-size: 14px;
  font-size: 1.4rem;

  font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Yu Gothic", メイリオ, Meiryo, Verdana, "ＭＳ ゴシック", Osaka-mono, sans-serif;
  letter-spacing: 1px;
  margin-left: 20px;
  position: relative;
  top: -2px; }
  @media screen and (min-width: 768px) {
    section.price .inner h3 .small {
      font-size: 15px;
      font-size: 1.5rem; } }
  @media screen and (min-width: 1040px) {
    section.price .inner h3 .small {
      font-size: 16px;
      font-size: 1.6rem; } }

section.price .inner ul {
  padding: 2% 0 0; }
  @media (max-width: 767px) {
    section.price .inner ul {
      padding: 2% 0% 0; } }
  @media screen and (max-width: 560px) {
    section.price .inner ul {
      padding: 2% 0% 0; } }

section.price .inner ul li {
  border-bottom: 1px solid #666;
  padding:30px 0; }
  @media (max-width: 767px) {
    section.price .inner ul li {
      padding: 4% 0; } }

section.price .inner dl {
  display: flex;
  flex-wrap: wrap; }

section.price .inner dl dt {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
  width: 60%;
  line-height: 1;
  padding-top: 6px; }
  @media screen and (min-width: 768px) {
    section.price .inner dl dt {
      font-size: 15px;
      font-size: 1.5rem; } }
  @media screen and (min-width: 1040px) {
    section.price .inner dl dt {
      font-size: 16px;
      font-size: 1.6rem; } }


section.price .inner dl dt br {
  display: none; }
  @media screen and (max-width: 560px) {
    section.price .inner dl dt br {
      display: block; } }

section.price .inner dl dd {
  font-size: 20px;
  font-size: 2rem;
  width: 40%;
  font-weight: 500;
  line-height: 1;
  text-align: right; }
  @media screen and (min-width: 768px) {
    section.price .inner dl dd {
      font-size: 22px;
      font-size: 2.2rem; } }
  @media screen and (min-width: 1040px) {
    section.price .inner dl dd {
      font-size: 24px;
      font-size: 2.4rem; } }
  @media all and (-ms-high-contrast: none) {
    section.price .inner dl dd {
      padding-top: 7px; } }

section.price .inner dl dd .en {
  font-size: 11px;
  font-size: 1.1rem;
  padding-left: 4px; }
  @media screen and (min-width: 768px) {
    section.price .inner dl dd .en {
      font-size: 11px;
      font-size: 1.1rem; } }
  @media screen and (min-width: 1040px) {
    section.price .inner dl dd .en {
      font-size: 11px;
      font-size: 1.1rem; } }

section.price .inner dl dd .tax {
  font-size: 13px;
  font-size: 1.3rem; }
  @media screen and (min-width: 768px) {
    section.price .inner dl dd .tax {
      font-size: 14px;
      font-size: 1.4rem; } }
  @media screen and (min-width: 1040px) {
    section.price .inner dl dd .tax {
      font-size: 16px;
      font-size: 1.6rem; } }

section.price .inner p {
  line-height: 1.6;
  padding-top: 15px; }
  @media screen and (max-width: 560px) {
    section.price .inner p {
      font-size: 13px;
      font-size: 1.3rem; } }

section.price .inner .box {

  margin: 6% auto 0;
  background: #EDDDDD;
  padding: 30px 35px; }
  @media (max-width: 767px) {
    section.price .inner .box {
      padding: 4%; } }
  @media all and (-ms-high-contrast: none) {
    section.price .inner .box {
      padding: 42px 35px 20px; } }

section.price .inner .box h4 {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1; }
  @media screen and (min-width: 768px) {
    section.price .inner .box h4 {
      font-size: 14px;
      font-size: 1.4rem; } }
  @media screen and (min-width: 1040px) {
    section.price .inner .box h4 {
      font-size: 15px;
      font-size: 1.5rem; } }

section.price .inner .box p {


   }

section.price .inner .caution {

  margin: 4% auto 0;
  background: #f2f2f2;
  padding: 20px;
  font-size: 10px;
  font-size: 1rem; }
  @media screen and (min-width: 768px) {
    section.price .inner .caution {
      font-size: 9px;
      font-size:0.9rem; } }
  @media (max-width: 767px) {
    section.price .inner .caution {
      width: 92%;
      margin: 4% auto 0; } }

section.price .inner .caution li {
  line-height: 1.7;
  text-indent: -1em;
  padding-left: 1em; }

.price_link {
  text-align: center; }

.price_link a {
  text-align: center;
  padding: 2.5% 4%;
  border: 3px solid #e3666a;
  color: #e3666a;
  font-weight: bold;
  line-height: 1;
  display: block;
  margin-top: 2%;
  margin-bottom: 2%; }
  @media (max-width: 767px) {
    .price_link a {
      margin-left: 6%;
      margin-right: 6%; } }
  @media print, screen and (min-width: 768px) {
    .price_link a {
      display: inline-block; } }