@charset "utf-8";
/* CSS Document */

.pt{}
.pc{}
.ps{}
.tb{display: none;}
.ts{display: none;}
.sp{display: none;}

#wrapper {
width:100%;
overflow: hidden;
}

header h1 {
padding: 5px 20px;
color: #FFFFFF;
background: #333333;
font-size: 85%;
}

header h1 a {
color: #FFFFFF;
text-decoration: none;
}

header .main {
position: relative;
}

header .main img:first-child {
width: 100%;
height: 600px;
object-fit: cover;
}

header .main img:last-child {
width: 24%;
height: auto;
position: absolute;
top: 3%;
right: 20px;
}

#block1 {
padding: 10% 0;
background-image: url("../images/catch_bk_left.png"), url("../images/catch_bk_right.png"), url("../images/catch_bk_left_bg.png"), url("../images/catch_bk_right_bg.png"), url("../images/catch_bk.jpg");
background-repeat: no-repeat;
background-position: left 10% bottom 10%, right 10% top, left -5% top, right -5% bottom, center top;
background-size: 16%, 11%, 34%, 34%, cover;
}

#block1 h2 {
margin-bottom: 4%;
padding: 0;
text-align: center;
font-family: "Source Han Serif JP", "Noto Serif CJK JP", "游明朝体", "Yu Mincho", YuMincho, serif;
font-weight: 500;
/*font-size: 260%;*/
font-size: clamp(1.75rem, 1.341rem + 2.05vw, 2.875rem);
line-height: 140%;
color: #006697;
}

#block1 h2 span {
color: #C09201;
}

#block1 p {
text-align: center;
font-size: 110%;
line-height: 200%;
}

#block2 {
padding: 80px 0;
background-image: url("../images/ranking_bg2.png"), url("../images/ranking_bk.jpg");
background-repeat: no-repeat;
background-position: center top;
background-size: auto 342px, cover;
}

#block2 h2 {
margin-bottom: 40px;
padding: 0 10% 0;
text-align: center;
}

#block2 .lead {
margin-bottom: 60px;
padding: 0 10%;
font-size: 120%;
line-height: 200%;
color: #FFFFFF;
text-align: center;
font-weight: bold;
}

#block2 ul {
width: 90%;
max-width: 1010px;
margin: 0 auto;
display: flex;
justify-content: space-between;
}

#block2 li {
padding: 0 40px 0 0;
width: 32.77227%;
position: relative;
}

#block2 li:last-child {
padding: 0;
}

#block2 li:first-child:before {
content: "";
position: absolute;
top: -20px;
left: -20px;
background: url(../images/ranking_icon1.png);
width: 86px;
height: 112px;
}

#block2 li:nth-child(2):before {
content: "";
position: absolute;
top: -20px;
left: -20px;
background: url(../images/ranking_icon2.png);
width: 66px;
height: 85px;
}

#block2 li:last-child:before {
content: "";
position: absolute;
top: -20px;
left: -20px;
background: url(../images/ranking_icon3.png);
width: 66px;
height: 85px;
}

#block2 li img {
margin-bottom: 10px;
}

#block2 li p {
line-height: 160%;
font-weight: bold;
color: #FFFFFF;
text-align: center;
}

#block2 li .kome {
margin: 5px 0;
color: #CCCCCC;
}

#block2 li .hayawari {
width: 8em;
padding: 2px 5px 0;
margin: 0 auto 5px;
color: red;
font-size: 90%;
font-weight: bold;
background: yellow;
}

#block2 li .price {
margin-bottom: 20px;
}

#block2 li .price span {
font-size: 130%;
}

#block2 li .btn4 img {
width: auto;
height: auto;
}

#block3 {
padding: 80px 0;
background-image: url("../images/treason_bk.jpg");
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
}

#block3 h2 {
margin-bottom: 55px;
padding: 0 10% 0;
text-align: center;
}

#block3 ul {
width: 90%;
/*max-width: 1045px;*/
max-width: 1056px;
margin: 0 auto;
display: flex;
justify-content: space-between;
}

#block3 li {
/*width: 30.14354%;*/
width: 30.87121%;
}

#block3 li img {
width: 100%;
height: auto;
margin-bottom: 30px;
}

#block3 li .inbox {
width: 100%;
max-width: 315px;
}

#block3 li p {
line-height: 200%;
font-size: 90%;
}

#block3 li span {
background: linear-gradient(transparent 50%, #FFFF73 50%);
}

#block4 {
padding: 80px 0;
background-image: url("../images/top04_bk.png");
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
}

#block4 .inbox {
width: 90%;
max-width: 1000px;
margin: 0 auto;
}

#block4 h2 {
margin-bottom: 60px;
padding: 0 5% 0;
text-align: center;
}

#block4 ul {
display: flex;
justify-content: center;
}

#block4 li {
width: 29%;
padding: 0 2%;
text-align: center;
}

#block4 li img {
margin-bottom: 20px;
}

#block4 li p {
text-align: left;
line-height: 200%;
font-size: 90%;
}

.kome {
line-height: 160%!important;
font-size: 75%!important;
}

#block4 .comment_box {
margin-top: 40px;
padding: 40px;
line-height: 200%;
font-size: 90%;
background: #FFFFFF;
border-radius: 5px;
position: relative;
}

#block4 .comment_box h3 {
margin-bottom: 25px;
}

#block4 .comment_box p {
padding-right: 320px;
}

#block4 .comment_box .about_4 {
position: absolute;
bottom: 30px;
right: 40px;
}

#block5 {
padding-bottom: 120px;
background-image: url("../images/gift_bk.jpg");
background-repeat: repeat;
background-position: center 260px;
background-size: auto;
}

#block5 h2 {
margin-bottom: 60px;
padding: 0 10%;
background-image: url("../images/gift_t_bk.jpg");
background-repeat: no-repeat;
background-position: center top;
background-size: auto 260px;
min-height: 260px;
display: flex;
align-items: center;
justify-content: center;
font-family: "Source Han Serif JP", "Noto Serif CJK JP", "游明朝体", "Yu Mincho", YuMincho, serif;
font-weight: 500;
font-size: 280%;
line-height: 140%;
color: #FFFFFF;
}

#block5 h3.set1 {
width: 90%;
max-width: 1000px;
margin: 0 auto 40px;
}

#block5 h3.set2 {
width: 90%;
max-width: 1000px;
margin: 80px auto 40px;
}

#block5 h3 img {
width: auto;
height: 260px;
object-fit: cover;
}

#block5 .lead {
margin-bottom: 60px;
font-size: 110%;
line-height: 200%;
color: #FFFFFF;
text-align: center;
font-weight: bold;
}

#block5 section {
width: 90%;
max-width: 1000px;
margin: 0 auto 40px;
padding: 35px;
background: #FFFFFF;
border-radius: 5px;
box-sizing: border-box;
}

#block5 section .inbox {
margin-bottom: 30px;
display: flex;
justify-content: space-between;
}

#block5 section .left_box {
width: 48.5%;
}

#block5 section .right_box {
width: 48.5%;
}

#block5 section .right_box h3 {
margin-top: 15px;
margin-bottom: 5px;
font-size: 145%;
line-height: 140%;
}

#block5 section .right_box h3 img {
width: auto;
height: auto;
margin-right: 5px;
}

#block5 section .right_box .number {
padding: 2px 10px 0;
margin-bottom: 20px;
color: #FFFFFF;
font-size: 90%;
font-weight: bold;
background: #006699;
display: inline-block;
}

#block5 section .right_box .text {
margin-bottom: 20px;
}

#block5 section .right_box .detail {
padding: 10px 20px;
margin-bottom: 20px;
font-size: 85%;
line-height: 160%;
background: #EEEEEE;
text-indent: -4.6em;
padding-left: 5.6em;
}

#block5 section .price_box {
margin-top: 20px;
display: flex;
justify-content: flex-end;
align-items: center;
}

#block5 section .price_box .hayawari {
padding: 5px 7px;
margin-right: 10px;
color: red;
font-size: 90%;
font-weight: bold;
background: yellow;
text-align: center;
line-height: 140%;
}

#block5 section .price_box .price {
color: #EB702C;
font-size: 240%;
font-weight: bold;
text-align: center;
}

#block5 section .price_box .price span {
font-size: 55%;
}

#block5 section .price_box .price span span {
font-size: 55%;
color: #333333;
font-weight: normal;
}

#block5 section .price_box .price.price_icon1:before {
content: '';/*何も入れない*/
display: inline-block;
width: 60px;/*画像の幅*/
height: 60px;/*画像の高さ*/
background-image: url(../images/price_icon1.png);
background-size: contain;
vertical-align: middle;
margin-right: 10px;
}

#block5 section .price_box .price.price_icon2:before {
content: '';/*何も入れない*/
display: inline-block;
width: 60px;/*画像の幅*/
height: 60px;/*画像の高さ*/
background-image: url(../images/price_icon2.png);
background-size: contain;
vertical-align: middle;
margin-right: 10px;
}

#block5 section .btn {
display: flex;
justify-content: center;
align-items: center;
}

#block5 section .btn img {
margin: 0 15px;
}

#block5 .btn3 {
margin-top: 30px;
text-align: center;
}

#block5 .comment_box {
width: 90%;
max-width: 1000px;
margin: 0 auto 40px;
padding: 25px;
background: #369494;
border-radius: 5px;
box-sizing: border-box;
}

#block5 .comment_box h3 {
color: #FFFFFF;
font-size: 160%;
margin-bottom: 15px;
/*padding-left: 30px;
background: url("../images/voice_icon.png") no-repeat center left;
min-height: 35px;*/
font-family: "Source Han Serif JP", "Noto Serif CJK JP", "游明朝体", "Yu Mincho", YuMincho, serif;
font-weight: 500;
}

#block5 .comment_box .inbox {
margin-bottom: 15px;
display: flex;
justify-content: flex-start;
align-items: center;
}

#block5 .comment_box .inbox.left img {
margin: 0 20px 0 0;
}

#block5 .comment_box .inbox.right img {
margin: 0 0 0 20px ;
}

#block5 .comment_box .inbox p {
  position: relative;
  display: inline-block;
  padding: 15px;
  background: #FFFFFF;
  border-radius: 5px;
}

#block5 .comment_box .inbox.left p:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -30px;
  margin-top: -15px;
  border: 15px solid transparent;
  border-right: 15px solid #FFFFFF;
}

#block5 .comment_box .inbox.right p:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -15px;
  border: 15px solid transparent;
  border-left: 15px solid #FFFFFF;
}

#block5 .comment_box .inbox p span {
color: #EB702C;
}

#block5 ul.inbox2 {
display: flex;
flex-wrap: wrap;
}

#block5 ul.inbox2 li {
width: 50%;
box-sizing: border-box;
padding-top: 20px;
padding-bottom: 20px;
border-bottom: solid 1px #333333;
}

#block5 ul.inbox2 li:nth-child(odd) {
padding-right: 20px;
border-right: solid 1px #333333;
}

#block5 ul.inbox2 li:nth-child(even) {
padding-left: 20px;
}

#block5 ul.inbox2 li:nth-child(1) {
padding-top:0;
}

#block5 ul.inbox2 li:nth-child(2) {
padding-top:29px;
}

#block5 ul.inbox2 li:nth-child(3),
#block5 ul.inbox2 li:nth-child(4) {
border-bottom:none;
padding-bottom: 0;
}

#block5 ul.inbox2 li h3 {
    margin-bottom: 5px;
    font-size: 120%;
    line-height: 140%;
	display: inline-block;
}

#block5 ul.inbox2 li .number {
    padding: 2px 10px 0;
    margin-bottom: 10px;
    color: #FFFFFF;
    font-size: 80%;
    font-weight: bold;
    background: #006699;
    display: inline-block;
}

#block5 ul.inbox2 li .detail {
    padding: 10px 20px;
    margin-bottom: 10px;
    font-size: 85%;
    line-height: 160%;
    background: #EEEEEE;
    text-indent: -4.6em;
    padding-left: 5.6em;
}

#block5 ul.inbox2 li .inbox3 {
display: flex;
justify-content: space-between;
}

#block5 ul.inbox2 li h3 img {
width: auto;
height: auto;
margin-right: 5px;
}

#block5 ul.inbox2 li .inbox3 .price_box {
    margin-top: 0;
}

#block5 ul.inbox2 li .inbox3 .price_box .price {
    font-size: 200%;
}

#block5 ul.inbox2 li .inbox3 .price_box .price.price_icon1:before {
    width: 50px;
    height: 50px;
}

#block5 ul.inbox2 li .inbox3 .price_box .price.price_icon2:before {
    width: 50px;
    height: 50px;
}

#block5 ul.inbox2 li .inbox3 .btn {
width: 46%;
}

#block5 ul.inbox2 li .inbox3 .btn img {
margin: 0;
}

#block6 {
margin-bottom: 100px;
padding-bottom: 80px;
background-image: url("../images/home_bk.jpg");
background-repeat: repeat;
background-position: center 260px;
background-size: auto;
}

#block6 h2 {
margin-bottom: 60px;
padding: 0 10%;
background-image: url("../images/home_t_bk.jpg");
background-repeat: no-repeat;
background-position: center top;
background-size: auto 260px;
min-height: 260px;
display: flex;
align-items: center;
justify-content: center;
font-family: "Source Han Serif JP", "Noto Serif CJK JP", "游明朝体", "Yu Mincho", YuMincho, serif;
font-weight: 500;
font-size: 260%;
line-height: 140%;
color: #FFFFFF;
}

#block6 .lead {
margin-bottom: 60px;
font-size: 120%;
line-height: 200%;
color: #006699;
text-align: center;
font-weight: bold;
}

#block6 ul {
width: 90%;
max-width: 1045px;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

#block6 li {
width: 23.92344%;
background: #FFFFFF;
display: flex;
flex-flow: column;
}

#block6 li .photo {
margin-bottom: 15px;
}

#block6 li .photo img {
width: 100%;
height: auto;
}

#block6 li h3 {
padding: 0 15px;
color: #006699;
text-align: center;
line-height: 140%;
font-size: 100%;
}

#block6 li .number {
padding: 0 15px;
color: #333333;
text-align: center;
font-size: 75%;
}

#block6 li .price {
padding: 0 15px;
text-align: center;
line-height: 200%;
font-size: 65%;
}

#block6 li .price span {
color: #EB702C;
font-weight: bold;
font-size: 160%;
}

#block6 li .price span span {
color: #EB702C;
font-size: 90%;
}

#block6 li .text {
margin: 10px 15px 15px;
padding-top: 10px;
border-top: solid 1px #CCCCCC;
font-size: 85%;
line-height: 160%;
}

#block6 li .btn4 {
margin-top: auto;
padding: 0 15px 15px;
text-align: center;
}

#block6 .btn3 {
margin-top: 40px;
text-align: center;
}

#block7 {
width: 90%;
max-width: 1000px;
margin: 0 auto 120px;
}

#block7 h2 {
margin-bottom: 55px;
padding: 0 7%;
text-align: center;
}

#block7 dl {
padding: 30px 0;
border-top: solid 2px #0F9093;
display: flex;
justify-content: space-between;
}

#block7 dt {
width: 52%;
}

#block7 dt h3 {
margin-top: 20px;
margin-bottom: 45px;
padding-left: 80px;
font-size: 140%;
position: relative;
}

#block7 dt h3.step_no1:before {
content: "";
position: absolute;
top: 50%;
transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
left: 0;
background: url(../images/step_no1.png);
width: 65px;
height: 77px;
}

#block7 dt h3.step_no2:before {
content: "";
position: absolute;
top: 50%;
transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
left: 0;
background: url(../images/step_no2.png);
width: 65px;
height: 77px;
}

#block7 dt h3.step_no3:before {
content: "";
position: absolute;
top: 50%;
transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
left: 0;
background: url(../images/step_no3.png);
width: 65px;
height: 77px;
}

#block7 dt h3.step_no4:before {
content: "";
position: absolute;
top: 50%;
transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
left: 0;
background: url(../images/step_no4.png);
width: 65px;
height: 77px;
}

#block7 dt p {
line-height: 200%;
}

#block7 dt span {
line-height: 180%;
font-size: 85%;
}

#block7 dd {
width: 42%;
}

#block7 .kome {
margin-top: 10px;
}

#block7 .comment_box {
margin-top: 10px;
padding: 15px;
background: #FFFFCC;
color: #EC702C;
font-weight: bold;
}

#block8 {
padding: 100px 0;
background-image: url("../images/budget_bk.jpg");
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
}

#block8 h2 {
margin-bottom: 45px;
text-align: center;
font-family: "Source Han Serif JP", "Noto Serif CJK JP", "游明朝体", "Yu Mincho", YuMincho, serif;
font-weight: 500;
font-size: 260%;
line-height: 140%;
color: #FFFFFF;
}

#block8 ul {
width: 90%;
max-width: 1010px;
margin: 0 auto;
display: flex;
justify-content: space-around;
}

#block8 li {
width: 32.77227%;
}

#block9 {
margin-bottom: 120px;
padding: 100px 0;
background-image: url("../images/faq_bk.jpg");
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
}

#block9 h2 {
margin-bottom: 40px;
text-align: center;
font-family: "Source Han Serif JP", "Noto Serif CJK JP", "游明朝体", "Yu Mincho", YuMincho, serif;
font-weight: 500;
font-size: 260%;
line-height: 140%;
color: #0F9093;
}

.accordion {
width: 90%;
max-width: 1000px;
margin: 0 auto;
}
.accordion .toggle {
display: none;
}
.accordion .option {
position: relative;
margin-bottom: 15px;
}
.accordion .title,
.accordion .content {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
transition: all 0.3s;
}
.accordion .title {
margin-bottom: 15px;
padding: 15px 55px 10px 75px;
background: url("../images/faq_icon.png") no-repeat #FFFFFF;
display: block;
font-size: 120%;
font-weight: bold;
line-height: 140%;
min-height: 60px;
box-sizing: border-box;
}
/*.accordion .title span{
    color: #EF722E;
	margin-right: 15px;
	font-size: 130%;
}*/
.accordion .title::after,
.accordion .title::before {
content: "";
position: absolute;
right: 1.25em;
top: 1em;
width: 2px;
height: 0.75em;
background-color: #333333;
transition: all 0.3s;
}
.accordion .title::after {
transform: rotate(90deg);
}
.accordion .content {
max-height: 0;
overflow: hidden;
}
.accordion .toggle:checked + .title + .content {
max-height: 500px;
transition: all 1.5s;
}
.accordion .toggle:checked + .title::before {
transform: rotate(90deg) !important;
}

#block9 .kome {
width: 90%;
max-width: 1000px;
margin: 0 auto;
font-size: 100%!important;
text-align: right;
}

#block10 {
width: 90%;
max-width: 1000px;
margin: 0 auto 100px;
padding: 45px 45px 45px 180px;
border: solid 2px #0F9093;
/*border-radius: 5px;*/
box-sizing: border-box;
position: relative;
}

#block10 h2 {
position: absolute;
top: -35px;
left: 30px;
/*left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);*/
}

#block11 {
width: 90%;
max-width: 1000px;
margin: 0 auto 120px;
}

#block11 h2 {
margin-bottom: 50px;
text-align: center;
font-family: "Source Han Serif JP", "Noto Serif CJK JP", "游明朝体", "Yu Mincho", YuMincho, serif;
font-weight: 500;
font-size: 260%;
line-height: 140%;
color: #0F9093;
}

#block11 .inbox {
display: flex;
justify-content: space-between;
}

#block11 ul {
width: 47%;
}

#block11 li {
margin-bottom: 25px;
}

#block11 h3 {
margin-bottom: 20px;
padding: 10px;
background: #F5F5F5;
font-size: 100%;
border-left: solid 3px #0F9093;
}

#block11 p {
margin-bottom: 15px;
font-size: 85%;
line-height: 160%;
}

#block11 li img {
margin-bottom: 10px;
}

#block11 .comment_box {
padding: 15px;
background: #FFFFCC;
color: #EB702C;
font-weight: bold;
}

.red {
color: #EB702C;
font-weight: bold;
}

#block12 {
width: 90%;
max-width: 880px;
margin: 0 auto 60px;
text-align: center;
}

#block12 h2 {
margin-bottom: 60px;
font-family: "Source Han Serif JP", "Noto Serif CJK JP", "游明朝体", "Yu Mincho", YuMincho, serif;
font-weight: 500;
font-size: 260%;
line-height: 140%;
color: #0F9093;
}

#block12 h3 {
margin-bottom: 35px;
font-size: 150%;
}

#block12 dl {
display: flex;
}

#block12 dl:first-of-type {
margin-top: 40px;
}

#block12 dt {
width: 240px;
padding: 25px 0;
font-size: 130%;
font-weight: bold;
border-bottom: solid 2px #0F9093;
}

#block12 dd {
padding: 25px 0;
font-size: 100%;
font-weight: bold;
border-bottom: solid 2px #DDDDDD;
flex-grow: 1;
}

#block12 dd img {
margin-right: 15px;
}

#block12 dl:first-of-type dt {
border-top: solid 2px #0F9093;
}

#block12 dl:first-of-type dd {
border-top: solid 2px #DDDDDD;
}

footer {
background: #000000;
}

footer .inbox1 {
display: flex;
justify-content:flex-start;
align-items: center;
}

footer .left_box {
width: 50%;
}

footer .left_box img {
width: 100%;
height: 400px;
object-fit: cover;
}

footer .right_box {
width: 50%;
padding: 0 30px;
color: #FFFFFF;
font-size: 85%;
text-align: center;
line-height: 160%;
}

footer .right_box h2 {
margin-bottom: 30px;
}

footer .right_box h2 img {
width: auto;
height: auto;
max-width: 80%;
}

footer .inbox2 {
padding: 10px 20px;
display: flex;
justify-content: space-between;
background: #FFFFFF;
font-size: 90%;
}

footer .inbox2 p:last-child {
margin-top: 5px;
font-size: 80%;
line-height: 140%;
}
