.elementor-2063 .elementor-element.elementor-element-d9bd449{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:space-between;--overlay-opacity:0.3;}.elementor-2063 .elementor-element.elementor-element-d9bd449:not(.elementor-motion-effects-element-type-background), .elementor-2063 .elementor-element.elementor-element-d9bd449 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://happyroad.okinawa/wp/wp-content/uploads/2025/11/happy-road-pic.webp");background-position:bottom center;background-repeat:no-repeat;background-size:cover;}.elementor-2063 .elementor-element.elementor-element-d9bd449::before, .elementor-2063 .elementor-element.elementor-element-d9bd449 > .elementor-background-video-container::before, .elementor-2063 .elementor-element.elementor-element-d9bd449 > .e-con-inner > .elementor-background-video-container::before, .elementor-2063 .elementor-element.elementor-element-d9bd449 > .elementor-background-slideshow::before, .elementor-2063 .elementor-element.elementor-element-d9bd449 > .e-con-inner > .elementor-background-slideshow::before, .elementor-2063 .elementor-element.elementor-element-d9bd449 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-2063 .elementor-element.elementor-element-9b94fbc{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2063 .elementor-element.elementor-element-b1fe16d{--display:flex;}.elementor-2063 .elementor-element.elementor-element-722a555 img{width:120px;}.elementor-2063 .elementor-element.elementor-element-cbf5d2c{--display:flex;}.elementor-2063 .elementor-element.elementor-element-ec3afd7 .elementor-icon-wrapper{text-align:center;}.elementor-2063 .elementor-element.elementor-element-ec3afd7.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-2063 .elementor-element.elementor-element-ec3afd7.elementor-view-framed .elementor-icon, .elementor-2063 .elementor-element.elementor-element-ec3afd7.elementor-view-default .elementor-icon{color:#FFFFFF;border-color:#FFFFFF;}.elementor-2063 .elementor-element.elementor-element-ec3afd7.elementor-view-framed .elementor-icon, .elementor-2063 .elementor-element.elementor-element-ec3afd7.elementor-view-default .elementor-icon svg{fill:#FFFFFF;}.elementor-2063 .elementor-element.elementor-element-8c2af58{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2063 .elementor-element.elementor-element-0b72035{--display:flex;}.elementor-2063 .elementor-element.elementor-element-a4d824a{color:#CE470E;}.elementor-2063 .elementor-element.elementor-element-704ca6a{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2063 .elementor-element.elementor-element-6d87e68{--display:flex;}.elementor-2063 .elementor-element.elementor-element-a026372{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2063 .elementor-element.elementor-element-a026372:not(.elementor-motion-effects-element-type-background), .elementor-2063 .elementor-element.elementor-element-a026372 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFCBB5;}.elementor-2063 .elementor-element.elementor-element-b0e2c0e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2063 .elementor-element.elementor-element-b9c999f{--display:flex;}.elementor-2063 .elementor-element.elementor-element-e39450d{--display:flex;}.elementor-2063 .elementor-element.elementor-element-784f53b{--display:flex;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2063 .elementor-element.elementor-element-1ff0102{--display:flex;}.elementor-2063 .elementor-element.elementor-element-65a9696{--display:flex;}.elementor-2063 .elementor-element.elementor-element-7426bb6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2063 .elementor-element.elementor-element-68c3200{--display:flex;}.elementor-2063 .elementor-element.elementor-element-5879b09{--display:flex;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2063 .elementor-element.elementor-element-802f42c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2063 .elementor-element.elementor-element-dc728bc{--display:flex;}.elementor-2063 .elementor-element.elementor-element-a1b51b2{--display:flex;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2063 .elementor-element.elementor-element-7cfb2e4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2063 .elementor-element.elementor-element-2b5aeae{--display:flex;}.elementor-2063 .elementor-element.elementor-element-13bbebf{--display:flex;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2063 .elementor-element.elementor-element-06a7030{--display:flex;}.elementor-2063 .elementor-element.elementor-element-a377f3d{--display:flex;}.elementor-2063 .elementor-element.elementor-element-1a64fbd{--display:flex;}.elementor-2063 .elementor-element.elementor-element-909c376{--display:flex;}.elementor-2063 .elementor-element.elementor-element-3397223{--display:flex;}.elementor-2063 .elementor-element.elementor-element-3e4d0ee{--display:flex;}.elementor-2063 .elementor-element.elementor-element-af3c935{--display:flex;}.elementor-2063 .elementor-element.elementor-element-b021162{--n-accordion-title-font-size:1rem;--n-accordion-title-icon-order:initial;--n-accordion-item-title-space-between:20px;--n-accordion-item-title-distance-from-content:10px;--n-accordion-icon-size:15px;}.elementor-2063 .elementor-element.elementor-element-b021162 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-2063 .elementor-element.elementor-element-b021162 > .elementor-widget-container > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title{border-style:none;}:where( .elementor-2063 .elementor-element.elementor-element-b021162 > .elementor-widget-container > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text{font-family:"Noto Sans JP", Sans-serif;}:where( .elementor-2063 .elementor-element.elementor-element-b021162 > .elementor-widget-container > .e-n-accordion > .e-n-accordion-item ) > .e-con{border-style:none;}.elementor-2063 .elementor-element.elementor-element-5b2c82e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:wrap;}.elementor-2063 .elementor-element.elementor-element-8aa2b72{--display:flex;}.elementor-2063 .elementor-element.elementor-element-57cca07{--display:flex;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2063 .elementor-element.elementor-element-87802b7{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2063 .elementor-element.elementor-element-ca15b20 iframe{height:400px;}.elementor-2063 .elementor-element.elementor-element-9123ae8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2063 .elementor-element.elementor-element-9123ae8:not(.elementor-motion-effects-element-type-background), .elementor-2063 .elementor-element.elementor-element-9123ae8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F4F5F7;}.elementor-2063 .elementor-element.elementor-element-82a00cd > .elementor-widget-container{margin:20px 0px 0px 0px;}.elementor-2063 .elementor-element.elementor-element-82a00cd img{width:400px;}.elementor-2063 .elementor-element.elementor-element-1bd9234{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:10px;--padding-left:0px;--padding-right:0px;}.elementor-2063 .elementor-element.elementor-element-1bd9234:not(.elementor-motion-effects-element-type-background), .elementor-2063 .elementor-element.elementor-element-1bd9234 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#5E1C00;}.elementor-2063 .elementor-element.elementor-element-f1c9aad{--display:flex;}@media(min-width:768px){.elementor-2063 .elementor-element.elementor-element-b1fe16d{--width:20%;}.elementor-2063 .elementor-element.elementor-element-cbf5d2c{--width:80%;}.elementor-2063 .elementor-element.elementor-element-0b72035{--width:100%;}.elementor-2063 .elementor-element.elementor-element-8aa2b72{--width:100%;}.elementor-2063 .elementor-element.elementor-element-57cca07{--width:100%;}.elementor-2063 .elementor-element.elementor-element-87802b7{--width:100%;}.elementor-2063 .elementor-element.elementor-element-f1c9aad{--width:100%;}}@media(min-width:1025px){.elementor-2063 .elementor-element.elementor-element-d9bd449:not(.elementor-motion-effects-element-type-background), .elementor-2063 .elementor-element.elementor-element-d9bd449 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:fixed;}}@media(max-width:767px){.elementor-2063 .elementor-element.elementor-element-d9bd449{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2063 .elementor-element.elementor-element-9b94fbc{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2063 .elementor-element.elementor-element-b1fe16d{--width:50%;}.elementor-2063 .elementor-element.elementor-element-722a555 img{width:60px;}.elementor-2063 .elementor-element.elementor-element-cbf5d2c{--width:50%;}.elementor-2063 .elementor-element.elementor-element-ec3afd7 .elementor-icon{font-size:30px;}.elementor-2063 .elementor-element.elementor-element-ec3afd7 .elementor-icon svg{height:30px;}.elementor-2063 .elementor-element.elementor-element-ca15b20 iframe{height:300px;}.elementor-2063 .elementor-element.elementor-element-1bd9234{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for text-editor, class: .elementor-element-b49ae4f */.top_head_menu{
    padding: 20px 0;
}
.top_head_menu ul{
    display: flex;
    justify-content:  end;
    list-style: none;
    margin-left: -40px;
    column-gap: 30px;
    color: #fff;
}
.top_head_menu ul li{
    padding: 5px 0px;
    
  font-size:1vw;
    
}
.top_head_menu ul li.yoyaku_btn{
    border: 1px solid #fff;
    border-radius: 20px;
    padding: 5px 30px;
    background-color: #d65050;
    transition: .3s;
}
.top_head_menu ul li a{
    color: #fff;
}

.top_head_menu ul li.yoyaku_btn:hover{
    border: 1px solid #fff;
    border-radius: 20px;
    padding: 5px 30px;
    background-color: #d6505090;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-a4d824a */.top_hero{
    display:  flex;
    flex-direction: column;
    width: 100%;
    align-items: center;
    vertical-align: center;
}
.top_hero_rr,.top_hero_ll{
    width: 100%;
    margin: 0 auto;
    text-align: center;
    color: #CE470E;
}

.top_hero_rr p,.top_hero_ll p{
    margin: 0;
    text-shadow: .5px .5px 1px #fff;
}
.top_hero_ll h1{
    font-size: 5em;
    font-weight: 600;
    margin: 0 0 50px;
    text-shadow: 2px 2px 1px #fff;
}
.top_hero_rr img{
    width: 350px;
    margin:0 0 50px; ;
}
.top_hero_rr p:nth-child(2)
{
    font-size: 1.5em;
    font-weight: 600;
}
.top_hero_rr p span
{
    color: orange;
}
@media only screen and (max-width: 768px) {
    

.top_hero{
    display:  flex;
    flex-direction: column;
    width: 100%;
    align-items: center;
    vertical-align: center;
}
.top_hero_rr,.top_hero_ll{
    width: 100%;
    margin: 0 auto;
    text-align: center;
    color: #CE470E;
}

.top_hero_rr p,.top_hero_ll p{
    margin: 0;
    text-shadow: .5px .5px 1px #fff;
}
.top_hero_ll h1{
    font-size: 3em;
    font-weight: 600;
    margin: 0 0 30px;
    text-shadow: 2px 2px 1px #fff;
}
.top_hero_rr img{
    width: 200px;
    margin:0 0 30px; ;
}
.top_hero_rr p:nth-child(2)
{
    font-size: 1.25em;
    font-weight: 600;
}
.top_hero_rr p span
{
    color: orange;
}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-bee93c1 */.top_cau{
    width: 70%;
    background-color:#ffffff;
    text-align: center;
    margin-left:15% ;
    padding: 20px 10px;
    border: 3px solid #CE470E ;
    border-radius: 10px;
}
.top_cau h2{
    font-size: 1.5em;
    font-weight: 600;
    margin: 10px 0 30px;
}
.top_cau h2 span{
    
    padding-bottom: 2px;
    border-bottom: 3px solid #CE470E ;
}
.top_cau ul{
    
    text-align: center;
	display: block;
    display: flex;
    flex-direction: column;
    font-size: 1.2em;
    row-gap: 5px;
	
}
.top_cau li{
    text-align: left;
	display: inline-block;
}
.top_cau li span{
    color:#CE470E ;
    font-weight: 600;
}
.top_cau li:before{
    content: "※";
    color:#CE470E ;
    font-weight: 600;
    padding:0 2px 0 0;
}
@media only screen and (max-width: 768px) {
    .top_cau{
    width: 100%;
    background-color:#ffffff;
    text-align: center;
    margin-left:0% ;
    padding: 10px 10px;
    border: 3px solid #CE470E ;
    border-radius: 10px;
}
.top_cau h2{
    font-size: 1.2em;
    font-weight: 600;
    margin: 10px 0 30px;
}
.top_cau h2 span{
    
    padding-bottom: 2px;
    border-bottom: 3px solid #CE470E ;
}
.top_cau ul{
    
    text-align: center;
	display: block;
    display: flex;
    flex-direction: column;
    font-size: 1em;
    row-gap: 5px;
    margin: 0 0 0 -40px;
	
}
.top_cau li{
    text-align: left;
	display: inline-block;  text-indent: -1em;
  padding-left: 1em;
}
.top_cau li span{
    color:#CE470E ;
    font-weight: 600;
}
.top_cau li:before{
    content: "※";
    color:#CE470E ;
    font-weight: 600;
    padding:0 2px 0 0;
}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-1a00357 */.top_news{
    text-align: center;
    padding: 30px 0 ;
}
.top_news h2{
    font-weight: 600;
    margin: 0 0 5px;
    letter-spacing: 5px;
    font-size: 2.5em;
}
.top_news h2 span{
    background-color:#CE470E ;
    padding: 0 40px ;
    color: #fff;
}
.top_news p{
    margin: 0;
    font-size: 1.2em;
    font-weight: 600; ;
}
.top_news_content {
    display: flex;
    column-gap: 20px;
    align-items: center;
    padding: 0 10% 20px;
}
.top_news_content p:nth-child(1)
{
    font-size: .9em;
    
}
.top_news_content p:nth-child(2)
{
    font-size: 1.2em;
    font-weight: 500;
    
}
.top_news_content p span{
    border-bottom:1px solid #1f1f1f;
    padding: 0 0 5px;
}
.top_news_content p a{
    color: #1f1f1f;
    transition: .3s;
}
.top_news_content p a:hover{
    color: #1f1f1f90;
    padding: 0 0 5px;
}
@media only screen and (max-width: 768px) {
    .top_news{
    text-align: center;
    padding: 30px 0 ;
}
.top_news h2{
    font-weight: 600;
    margin: 0 0 5px;
    letter-spacing: 5px;
    font-size: 1.5em;
}
.top_news h2 span{
    background-color:#CE470E ;
    padding: 0 40px ;
    color: #fff;
}
.top_news p{
    margin: 0;
    font-size: 1.2em;
    font-weight: 600; ;
}
.top_news_content {
    display: flex;
    flex-direction: column;
    row-gap: 5px;
    column-gap: 0px;
    align-items: normal;
    padding: 0 2% 0px;
    justify-content: strat;
    text-align: left;
}
.top_news_content p:nth-child(1)
{
    font-size: .9em;
    margin: 0;
    
    
}
.top_news_content p:nth-child(2)
{
    font-size: 1em;
    font-weight: 500;
    
}
.top_news_content p span{
    border-bottom:1px solid #1f1f1f;
    padding: 0 0 0px;
}
.top_news_content p a{
    color: #1f1f1f;
    transition: .3s;
}
.top_news_content p a:hover{
    color: #1f1f1f90;
    padding: 0 0 5px;
}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-0980861 */.top_ttl{
    text-align: center;
    padding: 50px 0;
    
}

.top_ttl h2{
    font-weight: 600;
    margin: 0 0 5px;
    letter-spacing: 5px;
    font-size: 2.5em;
}
.top_ttl h2 span{
    background-color:#CE470E ;
    padding: 0 40px ;
    color: #fff;
}
.top_ttl p{
    margin: 0;
    font-weight: 600; ;
    font-size: 1.2em;
}
@media only screen and (max-width: 768px) {
    .top_ttl{
    text-align: center;
    padding: 10px 0;
    
}

.top_ttl h2{
    font-weight: 600;
    margin: 0 0 5px;
    letter-spacing: 5px;
    font-size: 1.5em;
}
.top_ttl h2 span{
    background-color:#CE470E ;
    padding: 0 40px ;
    color: #fff;
}
.top_ttl p{
    margin: 0;
    font-weight: 600; ;
    font-size: 1.2em;
}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ccae48c */.plan_ttl {
    text-align: center;
    margin: 0 0 50px;
}
.plan_ttl h3{
    font-weight: 600;
}
.plan_ttl h3:before{
    content: "■";
    font-size: .7em;
    padding: 0 10px 0 0;
    color: #CE470E;;
}
.plan_ttl h3 span{ 
    border-bottom:5px solid #CE470E;
    padding: 0 0 5px;
}

.plan_div {
    display: flex;
    justify-content: space-around;
    align-items: center;
    width: 100%;
}
.plan_div_up,.plan_div_ud{
    width: 50%;
}
.plan_div_up {
    text-align: center;
}
.plan_div_up img{
    width: 300px;
}


.plan_div_ud p{
  font-weight: 600;
}
.plan_div_ud p:before{
    content: "▶";
    color: #CE470E;
    padding:0 5px 0 0;
    
}
.plan_div_ud table {
  width: 80%;
  border-spacing: 0;
  margin:0 0 10px;
  letter-spacing:0.05em;
  font-size: 1.2em;
}


.plan_div_ud table th{
  font-size: 1em;
  width: 35%;
  border-bottom:  solid 1px #fff;
  border-top: 1px none #F3981D;
  border-left: none;
  border-right: none;    
  padding: 15px 20px;
  font-weight: normal;
  background-color: #CE470E !important;
  text-align: left;
  color: #fff;
}

.plan_div_ud table td{
  width: 65%;
  border-bottom: solid 1px #CE470E;
  border-top: 1px none #F3981D;
  border-left: none;
  border-right: none;   
  text-align: center;
  padding: 15px 20px;
  text-align: left;
  background-color: #fff !important;
  font-weight: 600;
  
}
.reserve_btn{
    margin: 40px 0 0;
}
.reserve_btn p{
    text-align: center;
    
}
.reserve_btn p span{
    border: 2px solid #CE470E;
    color: #CE470E;
    padding: 10px 50px;
    background-color: #fff;
    transition: .3s;
    
}
.reserve_btn p span:hover{
    border: 2px solid #CE470E;
    color: #fff;
    padding: 10px 50px;
    background-color: #CE470E;
    
}



@media only screen and (max-width: 768px) {
.plan_ttl {
    text-align: center;
    margin: 0 0 50px;
}
.plan_ttl h3{
    font-weight: 600;
}
.plan_ttl h3:before{
    content: "■";
    font-size: .7em;
    padding: 0 10px 0 0;
    color: #CE470E;;
}
.plan_ttl h3 span{ 
    border-bottom:5px solid #CE470E;
    padding: 0 0 5px;
}

.plan_div {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
    width: 100%;
}
.plan_div_up,.plan_div_ud{
    width: 100%;
}
.plan_div_up {
    text-align: center;
}
.plan_div_up img{
    width: 200px;
}


.plan_div_ud p{
  font-weight: 600;
  font-size: .9em;
}
.plan_div_ud p:before{
    content: "▶";
    color: #CE470E;
    padding:0 5px 0 0;
    
}    
    
   
.plan_div_ud table {
  width: 100%;
  border-spacing: 0;
  margin:0 0 10px;
  letter-spacing:0.05em;
  font-size: .9em;
}


.plan_div_ud table th{
  font-size: 1em;
  width: 35%;
  border-bottom:  solid 1px #fff;
  border-top: 1px none #F3981D;
  border-left: none;
  border-right: none;    
  padding: 10px 10px;
  font-weight: normal;
  background-color: #CE470E !important;
  text-align: left;
  color: #fff;
}

.plan_div_ud table td{
  width: 65%;
  border-bottom: solid 1px #CE470E;
  border-top: 1px none #F3981D;
  border-left: none;
  border-right: none;   
  text-align: center;
  padding: 10px 10px;
  text-align: left;
  background-color: #fff !important;
  font-weight: 600;
  
}
    
.reserve_btn{
    margin: 20px 0 0;
}
.reserve_btn p{
    text-align: center;
  font-size: .9em;
    
}
.reserve_btn p span{
    border:1px solid #CE470E;
    color: #CE470E;
    padding: 10px 50px;
    background-color: #fff;
    transition: .3s;
    
}
.reserve_btn p span:hover{
    border: 2px solid #CE470E;
    color: #fff;
    padding: 10px 50px;
    background-color: #CE470E;
    
}
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-03dd749 */.plan_div2 {
    display: flex;
    justify-content: space-around;
    align-items: center;
    width: 100%;
}
.plan_div_up2,.plan_div_ud2{
    width: 50%;
}
.plan_div_up2 {
    text-align: center;
}
.plan_div_up2 img{
    width: 350px;
}


.plan_div_ud2 p{
  font-weight: 600;
}
.plan_div_ud2 p:before{
    content: "▶";
    color: #CE470E;
    padding:0 5px 0 0;
    
}
.plan_div_ud2 table {
  width: 80%;
  border-spacing: 0;
  margin:0 0 10px;
  letter-spacing:0.05em;
  font-size: 1.2em;
}


.plan_div_ud2 table th{
  font-size: 1em;
  width: 35%;
  border-bottom:  solid 1px #fff;
  border-top: 1px none #F3981D;
  border-left: none;
  border-right: none;    
  padding: 15px 20px;
  font-weight: normal;
  background-color: #CE470E !important;
  text-align: left;
  color: #fff;
}

.plan_div_ud2 table td{
  width: 65%;
  border-bottom: solid 1px #CE470E;
  border-top: 1px none #F3981D;
  border-left: none;
  border-right: none;   
  text-align: center;
  padding: 15px 20px;
  text-align: left;
  background-color: #fff !important;
  font-weight: 600;
  
}

@media only screen and (max-width: 768px) {
.plan_div2 {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
    width: 100%;
}
.plan_div_up2,.plan_div_ud2{
    width: 100%;
}
.plan_div_up2 {
    text-align: center;
}
.plan_div_up2 img{
    width: 200px;
}


.plan_div_ud2 p{
  font-weight: 600;
  font-size: .9em;
}
.plan_div_ud2 p:before{
    content: "▶";
    color: #CE470E;
    padding:0 5px 0 0;
    
}    
    
   
.plan_div_ud2 table {
  width: 100%;
  border-spacing: 0;
  margin:0 0 10px;
  letter-spacing:0.05em;
  font-size: .9em;
}


.plan_div_ud2 table th{
  font-size: 1em;
  width: 35%;
  border-bottom:  solid 1px #fff;
  border-top: 1px none #F3981D;
  border-left: none;
  border-right: none;    
  padding: 10px 10px;
  font-weight: normal;
  background-color: #CE470E !important;
  text-align: left;
  color: #fff;
}

.plan_div_ud2 table td{
  width: 65%;
  border-bottom: solid 1px #CE470E;
  border-top: 1px none #F3981D;
  border-left: none;
  border-right: none;   
  text-align: center;
  padding: 10px 10px;
  text-align: left;
  background-color: #fff !important;
  font-weight: 600;
  
}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-721439c */.plan_cau p{
    text-align: right;
    margin: 0 0 20px;
}
.plan_cau_ud{
    display: flex;
    justify-content: space-between;
    width: 100%;
    border: 1px none #1f1f1f ;
    background-color: #cccccc40;
    padding: 40px 0px;
    margin: 0 0 40px;
}
.plan_cau_ud h3{
    text-align: center;
    font-size: 1.2em;
    font-weight: 600;
    margin: 0 0 30px;
}
.plan_cau_ud h3 span{
    border-bottom: 3px solid #CE470E;
    padding: 0 0 3px;
}
.plan_cau_udl,.plan_cau_udr{
    width: 50%;
}
.plan_cau_ud span.markup{background: linear-gradient(transparent 70%, #ffff0050 70%);
font-weight: 600;

}
.plan_cau_ud ul{
    list-style: none;
    margin: 0 0 0 -40px;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
}
.plan_cau_udl {
    border-right: 1px solid #fff;
    padding: 0px 20px;
}
.plan_cau_ud ul li:before{
    content: "▶";
    font-size: .7em;
    padding:0 5px 0 0 ;
    color: #CE470E;
    
}
.plan_cau_udr {
    border-left: 1px solid #fff;
    padding: 0px 20px;
}


@media only screen and (max-width: 768px) {
    .plan_cau p{
    text-align: right;
    margin: 0 0 20px;
}
.plan_cau_ud{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    border: 1px none #1f1f1f ;
    background-color: #cccccc40;
    padding: 40px 0px;
    margin: 0 0 40px;
}
.plan_cau_ud h3{
    text-align: center;
    font-size: 1.2em;
    font-weight: 600;
    margin: 0 0 30px;
}
.plan_cau_ud h3 span{
    border-bottom: 3px solid #CE470E;
    padding: 0 0 3px;
}
.plan_cau_udl,.plan_cau_udr{
    width: 100%;
}
.plan_cau_ud span.markup{background: linear-gradient(transparent 70%, #ffff0050 70%);
font-weight: 600;

}
.plan_cau_ud ul{
    list-style: none;
    margin: 0 0 0 -40px;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
}
.plan_cau_udl {
    border-right: 1px none #fff;
    border-bottom: 1px solid #fff;
    padding: 0px 20px 20px;
}
.plan_cau_ud ul li{
      text-indent: -1em;
  padding-left: 1em;
}
.plan_cau_ud ul li:before{
    content: "▶";
    font-size: .7em;
    padding:0 5px 0 0 ;
    color: #CE470E;
    
}
.plan_cau_udr {
    border-left: 1px solid #fff;
    padding: 20px 20px 0px;
}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-47b3d86 */.plan_special{
    display: flex;
    width: 100%;
    justify-content: space-between;
    column-gap:20px ;
}
.plan_special_ud{
    margin: 40px 0 0;
    width: 50%;
    padding: 0 20px 20px;
    border: 2px solid #CE470E;
    background-color: none ;
}
.plan_special_ud p:nth-child(1)
{
    text-align: center;
    margin: -10px 0 20px 0;
}
.plan_special_ud p:nth-child(3)
{
    text-align: center;
    margin: 0 0 30px;
}
.plan_special_ud p:nth-child(4)
{
    font-size:1.2em;
    margin: 0 0 0 0;
    
}
.plan_special_ud p:nth-child(5)
{
    font-size:1.2em;
    margin: 0 0 0 0;
    
}
.plan_special_ud p span.plan_special_span1{
    background-color: #CE470E;
    color: #fff;
    padding: 5px 30px;
    font-weight: 600;
}
.plan_special_ud p span.plan_special_span2{
    color: #CE470E;
    padding: 0px;
    font-weight: 600;
    font-size: 1.35em;
}
.plan_special_ud p span.plan_special_span3{
    font-size: 1rem;
    margin: 0 0 0px;
}
.plan_special_ud h4{
    font-size: 1.5em;
    font-weight: 600;
    text-align: center;
    margin: 0 0 10px;
}
.plan_special_ud ul{
    list-style: none;
    margin: 20px 0 0 -40px;
    
}

.plan_special_ud ul li{
  text-indent: -1em;
  padding-left: 1em;}
    
.plan_special_ud ul li:before{
    content: "※";
    
}
@media only screen and (max-width: 768px) {
    .plan_special{
    display: flex;
    width: 100%;
    flex-direction: column;
    justify-content: space-between;
    column-gap:20px ;
}
.plan_special_ud{
    margin: 40px 0 0;
    width: 100%;
    padding: 0 10px 10px;
    border: 2px solid #CE470E;
    background-color: none ;
}
.plan_special_ud p:nth-child(1)
{
    text-align: center;
    margin: -10px 0 20px 0;
}
.plan_special_ud p:nth-child(3)
{
    text-align: center;
    margin: 0 0 30px;
}
.plan_special_ud p:nth-child(4)
{
    font-size:1.2em;
    margin: 0 0 0 0;
    
}
.plan_special_ud p:nth-child(5)
{
    font-size:1.2em;
    margin: 0 0 0 0;
    
}
.plan_special_ud p span.plan_special_span1{
    background-color: #CE470E;
    color: #fff;
    padding: 5px 30px;
    font-weight: 600;
}
.plan_special_ud p span.plan_special_span2{
    color: #CE470E;
    padding: 0px;
    font-weight: 600;
    font-size: 1.15em;
}
.plan_special_ud p span.plan_special_span3{
    font-size: 1rem;
    margin: 0 0 0px;
}
.plan_special_ud h4{
    font-size: 1.25em;
    font-weight: 600;
    text-align: center;
    margin: 0 0 10px;
}
.plan_special_ud ul{
    list-style: none;
    margin: 20px 0 0 -40px;
    font-size: .9em;
    
}

.plan_special_ud ul li{
  text-indent: -1em;
  padding-left: 1em;}
    
.plan_special_ud ul li:before{
    content: "※";
    
}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-0e4e5a1 */.flow_div ul{
    list-style: none;
    margin: 0 0 0 -40px;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
}
.flow_div ul li p span{
    border: 2px solid #CE470E;
    padding: 2px 10px;
    background-color: #CE470E;
    color: #fff;
    margin: 0 0 0;
    font-weight: 600;
}
.flow_div ul li a{
    color: #1f1f1f;
    border-bottom: 1px solid ;
    transition: .3s;
}

.flow_div ul li a:hover{
    color: #1f1f1f90;
    border-bottom: 1px solid ;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-4cc133f */.answer_p{
    
    margin-left:3.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-image: url("https://happyroad.okinawa/wp/wp-content/uploads/2025/11/happy-road-icon-1.webp");
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-3.5em; 
}
@media only screen and (max-width: 768px) {
    .answer_p{
    
    margin-left:2.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-2.5em; 
}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-4cc133f */.answer_p{
    
    margin-left:3.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-image: url("https://happyroad.okinawa/wp/wp-content/uploads/2025/11/happy-road-icon-1.webp");
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-3.5em; 
}
@media only screen and (max-width: 768px) {
    .answer_p{
    
    margin-left:2.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-2.5em; 
}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-4cc133f */.answer_p{
    
    margin-left:3.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-image: url("https://happyroad.okinawa/wp/wp-content/uploads/2025/11/happy-road-icon-1.webp");
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-3.5em; 
}
@media only screen and (max-width: 768px) {
    .answer_p{
    
    margin-left:2.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-2.5em; 
}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-4cc133f */.answer_p{
    
    margin-left:3.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-image: url("https://happyroad.okinawa/wp/wp-content/uploads/2025/11/happy-road-icon-1.webp");
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-3.5em; 
}
@media only screen and (max-width: 768px) {
    .answer_p{
    
    margin-left:2.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-2.5em; 
}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-4cc133f */.answer_p{
    
    margin-left:3.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-image: url("https://happyroad.okinawa/wp/wp-content/uploads/2025/11/happy-road-icon-1.webp");
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-3.5em; 
}
@media only screen and (max-width: 768px) {
    .answer_p{
    
    margin-left:2.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-2.5em; 
}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-4cc133f */.answer_p{
    
    margin-left:3.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-image: url("https://happyroad.okinawa/wp/wp-content/uploads/2025/11/happy-road-icon-1.webp");
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-3.5em; 
}
@media only screen and (max-width: 768px) {
    .answer_p{
    
    margin-left:2.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-2.5em; 
}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-4cc133f */.answer_p{
    
    margin-left:3.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-image: url("https://happyroad.okinawa/wp/wp-content/uploads/2025/11/happy-road-icon-1.webp");
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-3.5em; 
}
@media only screen and (max-width: 768px) {
    .answer_p{
    
    margin-left:2.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-2.5em; 
}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-4cc133f */.answer_p{
    
    margin-left:3.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-image: url("https://happyroad.okinawa/wp/wp-content/uploads/2025/11/happy-road-icon-1.webp");
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-3.5em; 
}
@media only screen and (max-width: 768px) {
    .answer_p{
    
    margin-left:2.5em; 
}
.answer{ 
}
.answer::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: .5em;
  position: absolute;
      top: -5px;

    margin-left:-2.5em; 
}}/* End custom CSS */
/* Start custom CSS for nested-accordion, class: .elementor-element-b021162 */.question{
    margin-left:3.5em; 
}
.question::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-image: url("https://happyroad.okinawa/wp/wp-content/uploads/2025/11/happy-road-icon-2.webp");
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: 0em;
  position: absolute;
      top: 5px;

}
@media only screen and (max-width: 768px) {
    .question{
    margin-left:2.5em; 
}
.question::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-position: center;
    background-size: contain;
    background-repeat:no-repeat;
    margin-right: 0em;
  position: absolute;
      top: 5px;

}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-8f63314 */.shop_div table {
  width: 100%;
  border-spacing: 0;
  margin:0 0 10px;
  letter-spacing:0.05em;
  font-size: 1em;
}


.shop_div table th{
  font-size: 1em;
  width: 15%;
  border-bottom:  solid 1px #CE470E;
  border-top: 1px none #F3981D;
  border-left: none;
  border-right: none;    
  padding: 15px 20px;
  font-weight: normal;
  background-color: #fff !important;
  text-align: left;
  color: #1f1f1f;
  font-weight: 500;
}

.shop_div table td{
  width: 85%;
  border-bottom: solid 1px #ccc;
  border-top: 1px none #F3981D;
  border-left: none;
  border-right: none;   
  text-align: center;
  padding: 15px 20px;
  text-align: left;
  background-color: #fff !important;
  
}

.shop_div table a{
    color: #1f1f1f;
    transition: .3s;
    border-bottom: 1px solid #1f1f1f;
}
.shop_div table a:hover{
    color: #1f1f1f90;
}


@media only screen and (max-width: 768px) {
.shop_div table {
  width: 100%;
  border-spacing: 0;
  margin:0 0 10px;
  letter-spacing:0.05em;
  font-size: .9em;
}


.shop_div table th{
  font-size: 1em;
  width: 30%;
  border-bottom:  solid 1px #CE470E;
  padding: 10px 10px;
  font-weight: normal;
  background-color: #fff !important;
  text-align: left;
  color: #1f1f1f;
  font-weight: 500;
}

.shop_div table td{
  width: 70%;
  border-bottom: solid 1px #ccc;
  text-align: center;
  padding: 10px 10px;
  text-align: left;
  background-color: #fff !important;
  
}

.shop_div table a{
    color: #1f1f1f;
    transition: .3s;
    border-bottom: 1px solid #1f1f1f;
}
.shop_div table a:hover{
    color: #1f1f1f90;
}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-9c4a7b4 */.top_foot_menu{
    padding: 20px 0;
}
.top_foot_menu ul{
    display: flex;
    justify-content:  center;
    list-style: none;
    margin-left: -40px;
    column-gap: 30px;
    color: #fff;
}
.top_foot_menu ul li{
    padding: 5px 0px;
    
  font-size: 1vw;
    
}
.top_foot_menu ul li.yoyaku_btn{
    border: 1px solid #fff;
    border-radius: 20px;
    padding: 5px 30px;
    background-color: #d65050;
    transition: .3s;
}
.top_foot_menu ul li a{
    color: #fff;
}

.top_foot_menu ul li.yoyaku_btn:hover{
    border: 1px solid #fff;
    border-radius: 20px;
    padding: 5px 30px;
    background-color: #d6505090;
}

.copy_div p{
color: #fff;
text-align: center;
font-size: .8em;
margin: 0;
}
@media only screen and (max-width: 768px) {
    .top_foot_menu{
    padding: 20px 0;
}
.top_foot_menu ul{
    display: flex;
    justify-content:  space-between;
    flex-wrap: wrap;
    list-style: none;
    margin-left: 0px;
    column-gap: 10px;
    color: #fff;
    width: 100%;
}
.top_foot_menu ul li{
    padding: 5px 0px;
    
  font-size: .9em;
    width: 40%;
    
}
.top_foot_menu ul li.yoyaku_btn{
    border: 1px solid #fff;
    border-radius: 20px;
    padding: 5px 30px;
    background-color: #d65050;
    transition: .3s;
}
.top_foot_menu ul li a{
    color: #fff;
}

.top_foot_menu ul li.yoyaku_btn:hover{
    border: 1px solid #fff;
    border-radius: 20px;
    padding: 5px 30px;
    background-color: #d6505090;
}

.copy_div p{
color: #fff;
text-align: center;
font-size: .8em;
margin: 0;
}}/* End custom CSS */