@charset "utf-8";
/* CSS Document */

/* =======================================
	2023.04  No.196
    p03/ スウェーデンハウスができるまで
======================================= */

/*---Text---*/

p,
ul li{
  font-size:17px;
  line-height:32px;
  margin-bottom:1em;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight:500;
    letter-spacing:0.1em;
}

span{
    display: inline-block;
    letter-spacing:0;
}

h3,h4,h5,h6{
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight:700;
}

span.anno{
    display:inline-block;
    font-size:13px;
    line-height:22px;
   font-family: 'Zen Maru Gothic', sans-serif;
   font-weight:500; 
}

div.moose,
div.swedi{
    width:52%;
    position:relative;
    z-index:2;
}

div.moose img{
    position:absolute;
    width:160px;
}

div.swedi img{
    position:absolute;
    width:160px;
}

div.moose img.posi01{
    left:0;
    top:-110px;
}
div.moose img.posi01s{
    left:-80px;
    top:-60px;
}

div.moose img.posi02{
    right:0;
    top:-110px;
}

div.moose img.posi03{
    left:-80px;
    bottom:-20px;
}

div.moose img.posi04{
    right:-80px;
    bottom:-20px;
}

div.swedi img.posi01{
    left:-80px;
    top:-50px;
}

div.swedi img.posi02{
    right:-100px;
    top:-60px;
}

div.swedi img.posi03{
    left:-100px;
    bottom:-60px;
}

div.swedi img.posi04{
    right:-100px;
    bottom:-60px;
}


div.moose p,
div.swedi p{
    background:#FFF;
    border-radius:60px;
    line-height:1.8em;
    text-align: center;
    padding:2em;
    transition:2s;
}

div.moose p{
    color:#009AAA;
}

div.swedi p{
    color:#EE7800;
}

a.btn_map{
    display:block;
    border:solid 2px #009AAA;
    color:#009AAA;
    background:#F7F1E3;
    border-radius:30px;
    padding:1em 0;
    text-align:center;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight:bold;
    font-size:1.2em;
    line-height:1.2em;
    margin:1.5em auto;
    transition:1s;
}

a.btn_map span{
    font-size:0.8em;
}

a.btn_map:hover{
    color:#FFF;
    background:#009AAA;
    text-decoration: none;
}

.column h3{
    font-size:2.5em;
    text-align: center;
    line-height: 1em;
    letter-spacing:0.1em;
    margin:0 auto;
    padding:0;
}

h4{
    z-index:2;
}
h5{
    z-index:3;
}

.column h5,
.column h6{
    font-size:20px;
    line-height:1.5em;
}

.step h5{
    font-size:30px;
    line-height:1.3em;
}
.step h6{
    font-size:25px;
    line-height:1.3em;
}

span.txt-ll{
    font-size:1.8em;
    letter-spacing:0.1em;
    line-height:1.5em;
}

span.ja{
    font-family:
    "Hiragino Kaku Gothic ProN","Hiragino Sans",
    Meiryo,sans-serif;
    font-size:1em!important;
}

span.txt-s{
    letter-spacing:0.1em;
}


/* =======================================
	PC
======================================= */

/*---Layout---*/

div.pageNavi{
    display:block;
}

#mainArea{
    background:#F7F1E3;
    padding-bottom:2em;
    overflow-x: hidden;
}

.contArea{
    width:88%;
    max-width:1200px;
    min-width:850px;
    margin:0 auto;
}

div.videoArea{
    width:80%;
}

.titleArea{
    width:90%;
    padding:3em 0;
    margin:0 auto;
}

.titleArea h2{
    width:84%;
    max-width:900px;
    margin:0 auto 1.5em;
    position:relative;
    animation-duration: 0.8s;
    animation-fill-mode: forwards;
}

.titleArea h2 img{
    animation-fill-mode: forwards;
}

.titleArea img#fuki{
    opacity:0;
    width:22%;
    position: absolute;
    left:10%;
    top:20.5%;
}

.titleArea h4{
    width:35%;
    margin:0 auto 2em;
}


h3{
    width:90%;
    margin:0 auto 3em;
}

h2 img,
h3 img{
    width:100%;
}

.titleArea p{
    text-align: center;
    margin:0 auto;
    position:relative;
    z-index:5;
    animation-duration: 3s;
}

.tgt{
    width:100%;
    /*margin:0 auto 1em;
    position:relative;*/
}

div.conv{
    margin:0 auto 3em;
    position:relative;
}

div.step{
    margin:0 auto 5em;
    position:relative;
    animation-delay: 1s;
}

div.step h4,
div.step h5{
    width:100%;
    font-size:25px;
    margin-bottom:0.8em;
}

div.step h6{
    width:100%;
    font-size:18px;
    margin-bottom:0.8em;
}


div.step p{
    width:100%;
    margin:0 auto;
    line-height:1.6em;
}

div.column{
    background:#CEE4E3;
    border-radius:40px;
    padding:2.5em 0 1em;
}

div.column.nobg{
    background:none;
    border-radius:none;
    padding:2.5em 0 2em;
}

div.column h5{
    width:88%;
    font-size:22px;
    line-height:1.5em;
    letter-spacing:0.1em;
    text-align: center;
    border-bottom:solid 1px #000;
    padding-bottom:0.5em;
    margin:0 auto 0.5em;
}

div.column.nobg h5{
    width:88%;
    font-size:28px;
    line-height:1.5em;
    letter-spacing:0.1em;
    text-align: center;
    border-bottom:solid 2px #008E00;
    padding-bottom:0.5em;
    margin:0 auto 0.5em;
}

div.column hr{
    width:88%;
    height:0;
    padding:0;
    margin:0 auto 1.5em;
	border-top: 1px solid #000;
}

div.column ul{
    width:88%;
    margin:0 auto;
    padding-top:2em;
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    -ms-flex-wrap: wrap;
  	flex-wrap: wrap;
    justify-content: space-between;
	gap: 1.5%;
}

div.column ul li{
    width:28%;
    position:relative;
    margin:0 auto 1.5em;
}

div.column ul li img{
    width:25%;
    display:inline-block;
    margin-right:0.2em;
    vertical-align: middle;
}

div.column ul li:nth-child(2) > img{
    animation-delay: 0.5s;
}
div.column ul li:nth-child(3) > img{
    animation-delay: 1s;
}
div.column ul li:nth-child(4) > img{
    animation-delay: 1.1s;
}
div.column ul li:nth-child(5) > img{
    animation-delay: 1.5s;
}
div.column ul li:nth-child(6) > img{
    animation-delay: 1.8s;
}

div.column ul li:nth-child(2){
    animation-delay: 0.5s;
}
div.column ul li:nth-child(3){
    animation-delay: 1s;
}
div.column ul li:nth-child(4){
    animation-delay: 1.1s;
}
div.column ul li:nth-child(5){
    animation-delay: 1.5s;
}
div.column ul li:nth-child(6){
    animation-delay: 1.8s;
}

div.column ul li h6{
    width:72%;
    font-size:19px;
    letter-spacing: 0.1em;
    display:inline-block;
    vertical-align: middle;
}

div.column p{
    width:88%;
    margin:0 auto 1.5em;
    letter-spacing:0.5px;
}

div.column ul li p{
    width:100%;
}

div.ill{
    position:relative;
}

div.ill img{
    width:100%;
}

div.ill .anime{
    width:100%;
    height:auto;
    position:absolute;
    left:0;
    top:0;
}


/*area1*/

div#area1{
    margin-top:-10em;
}

div#ill_main2{
    width:43%;
    margin:-32% 0 0 40%;
    position:relative;
    z-index:10;
}
div#ill_main2 img.moose{
    width:60%;
    position:absolute;
    left:0;
    bottom:3em;
    z-index:1;
}
div#ill_main2 img.swedi{
    width:55%;
    position:relative;
    margin-left:44.5%;
    z-index:10;
}

/*cont1*/
#cont1-1{
    padding:0;
    max-width:1200px;
    margin:-10% auto 0;
}

#cont1-1 div.moose#mse01{
    width:35%;
    left:15%;
    top:0;
    z-index:1;
}

#cont1-1 div.swedi#swd01{
    width:38%;
    margin-top:1em;
    margin-left:36%;
}

div#cont1-2{
    position:relative;
    padding-bottom:8em;
}

div#cont1-2 div#globe{
    width:30%;
    position:absolute;
    left:10%;
    top:120px;
    z-index:5;
}

div#cont1-2 div#globe img#globe_l{
    width:100%;
    position:absolute;
    left:0;
    top:0;
}

div#cont1-2 div#globe img#globe_s{
    width:70%;
    position:absolute;
    left:-16%;
    top:-100px;
}

div#cont1-2 div#globe img#globe_g{
    width:56%;
    position:absolute;
    right:-25%;
    bottom:3.5em;
}

div#cont1-2 div.moose#mse02{
    width:45%;
    margin:150px 0 0 36%;
}

div#cont1-2 div.moose#mse03{
    width:40%;
    margin:-2em 0 0 59%;
    border-radius:50px;
}

/*cont2*/
#cont2-1{
    position:relative;
    margin:0 auto 0;
}

#cont2-1 div.ill div#ill02{
    width:100%;
    margin:0;
    position:relative;
}

#cont2-1 div.ill div#ill02 img{
    width:32%;
    margin:0 0 0 58%;
}

#cont2-1 div.ill div#ill02 img#ill02_2{
    width:32%;
    position:absolute;
    right:10%;
    top:0;
}

#cont2-1 div.ill div#ill03 img{
    width:50%;
    margin:-80px 0 0;
    position:relative;
    z-index:5;
}

#cont2-1 div.ill div#ill03 img#ill03_2{
    width:50%;
    position:absolute;
    left:0;
    top:0;
}

#cont2-1 div.ill div.txt{
    width:48%;
    position:absolute;
    animation-delay:2s;
}

#cont2-1 div.ill div.txt h4{
    width:100%;
    padding:0.8em;
    margin-bottom:0.8em;
    background:#CEE4E3;
    text-align:center;
    font-size:2em;
    letter-spacing:0.03em;
    border-radius:50px;
}

#cont2-1 div.ill div.txt p{
    width:90%;
    margin:0 3% 0 7%;
}

#cont2-1 div.ill div.txt#ill02_txt{
    left:5%;
    top:35%;
}

#cont2-1 div.ill div.txt#ill03_txt{
    left:44%;
    bottom:28%;
}


div.moose#mse04{
    position:relative;
    margin:-10% 0 0 35%;
    padding-left:3em;
    z-index:5;
}


/*cont3*/

#area3{
    padding-top:10em;
}

#area3 h3{
    width:75%;
    margin:0 auto;
    background:#FFF;
    padding:1.2em 0 1em;
    text-align:center;
    font-size:2em;
    line-height:1.5em;
    color:#008E00;
    border-radius:50px;
    position:relative;
}

#area3 h3 img{
    width:16%;
    min-width:130px;
    position:absolute;
    left:42.5%;
    top:-4em;
}

#area3 div.step h4,
#area4 div.step h4,
#area4-2 div.step h4{
    width:35%;
    margin:0;
    background:#008E00;
    color:#FFF;
    text-align: center;
    border-radius:50px;
    font-size:1.8em;
    padding:0.8em 0;
    letter-spacing:0.1em;
    position:relative;
}

#area3 div.step h4 > img,
#area4 div.step h4 > img,
#area4-2 div.step h4 > img
{
    position:absolute;
}

#area3 div.step h4>img#step_s{
    width:38%;
    left:-0.2em;
    top:-3em;
}

#area4-2 div.step h4>img#step_c{
    width:103%;
    right:-50%;
    top:-5em;
}

div.step div.step_txt{
    width:40%;
}

#area3 div.step h5,
#area4 div.step h5{
    width:8em;
    margin:0 auto 1em;
    padding:0 0 0.5em;
    font-size:30px;
    color:#008E00;
    text-align: center;
    background-image : linear-gradient(to right, #008E00 10px, transparent 5px);
    background-size: 15px 4px;
    background-repeat: repeat-x; 
    background-position: left bottom;
    position:relative;
    z-index:5;
}

#area3 div.step h6,
#area4 div.step h6{
    color:#008E00;
    font-size:25px;
    text-align: center;
}

#area3 div.step h6 img.num,
#area4 div.step h6 img.num{
    width:55px;
    margin:0 auto 0.5em;
    display:block;
}

#area3 div.step p.subTxt,
#area4 div.step p.subTxt{
    font-size:25px;
    letter-spacing:0;
    line-height:1.3em;
    text-align:center;
    margin:0 auto 1.5em;
}

p.subTxt span{
    display:inline-block;
    text-indent:0.7em;
}

/*cont3-1*/
div.column#cont3-1{
    background:none;
}

div.moose#mse05{
    position:relative;
    width:35%;
    margin-left:45%;
}
div.swedi#swe02{
    position:relative;
    width:25%;
    margin:-2.5em 0 0 60%;
}

/*cont3-2*/
div#cont3-2{
    margin-top:-10em;
}

div.ill#ill04{
    position:absolute;
    width:42%;
    left:35%;
    top:8em;
    z-index:10;
}

#area3 div.step#cont3-2 h4{
    margin:0 0 0 7%;
}

div#cont3-2 div.step_txt{
    margin:5em 0 0;
}

div#cont3-2 > p{
    width:33%;
    margin:-3.5em 0 1.5em 65%;
    position:relative;
    z-index:5;
}

div.moose#mse06{
    position:relative;
    width:28%;
    margin-left:20%;
}

/*cont3-3*/
div#cont3-3 div.step_txt{
    width:100%;
    margin:0 auto 0;
}

div.ill#ill05{
    width:42%;
    margin:-1.5em 0 0 40%;
    position:relative;
    z-index:3;
}
div.ill#ill06{
    width:45%;
    margin:-2em 0 0 40%;
    position:relative;
    z-index:3;
}
div.ill#ill07{
    width:42%;
    margin:0 0 0 15%;
    position:relative;
    z-index:3;
}

div.moose#mse07{
    position:relative;
    margin-left:20%;
}
div.moose#mse08{
    position:relative;
    width:25%;
    margin:-15em 0 0 10%;
}
div.swedi#swe03{
    position:relative;
    width:25%;
    margin:5em 0 0 50%;
}

div#cont3-3 div.step_txt#cont3-3_h6{
    width:45%;
    margin:-15em 0 0;
    position:relative;
    z-index:5;
}

div#cont3-3 div.step_txt#cont3-3_h6 p{
    width:80%;
}

div#cont3-3 div.step_txt#cont3-3_p{
    width:35%;
    margin:-13em 0 0 58%;
}

/*cont3-4*/
div#cont3-4{
    position:relative;
} 

div.ill#ill08{
    width:42%;
    margin:0 0 5em 55%;
    position:relative;
    z-index:3;
}

div#cont3-4 div.step_txt{
    width:43%;
    position:absolute;
    left:10%;
    top:3em;
}

div.moose#mse09{
    position:relative;
    width:40%;
    margin:-3em 0 0 20%;
}

div.moose#mse09 img.posi01s{
    left:-65px;
    top:-40px;
}

/*cont3-5*/
div#cont3-5{
    position:relative;
} 

div.ill#ill09{
    width:42%;
    margin:0 0 5em 10%;
    position:relative;
    z-index:3;
}

div#cont3-5 div.step_txt{
    width:35%;
    position:absolute;
    right:8%;
    top:8em;
    z-index:5;
}

/*cont3-6*/
div#cont3-6{
    position:relative;
    width:55%;
    margin:-3em auto 7em;
    z-index:10;
} 
div#cont3-6 img{
    width:100%;
}

div#cont3-6 h5,
div#cont3-6 p,
div#cont3-6 a:link{
    width:85%;
    margin:0 auto 2em;
}

div#cont3-6 h5{
    text-align:center;
    color:#009AAA;
    font-size:30px;
    margin:0.8em auto;
}

div#cont3-6 p{
    margin:0 auto 2em;
}

div#cont3-6 a:link{
    position:relative;
    z-index:5;
}

/*cont3-7*/
div#cont3-7{
    position:relative;
    padding:8em 0 5em;
} 

div#cont3-7 h4{
}

div.ill#ill10{
    width:50%;
    top:-1.5em;
    right:3%;
    position:absolute;
    z-index:3;
}

div#cont3-7 div.step_txt{
    width:30%;
    margin:3em 2.5%;
}

div#cont3-7 > p{
    margin:0 2.5% 1.5em;
}

/*cont3-8*/
div#cont3-8{
    position:relative;
    margin-bottom:3em;
} 

div.moose#mse10{
    width:92%;
    padding:2em 0;
    margin:0 0 3em 8%;
    position:relative;
    background:#fff;
    border-radius:60px;
}

div.moose#mse10 p{
    margin:0;
    width:60%;
    background:none;
}

div.ill#ill11{
    width:32%;
    position:absolute;
    right:5%;
    top:-6.5em;
    z-index:10;
}

div.swedi#swe04{
    width:35%;
    margin:-1em 0 0 50%;
}

div.moose#mse11{
    width:35%;
    margin:-2.5em 0 0 15%;
}

/*cont6 まとめ*/

#area5{
    padding:0 0 3em;
}

#matome{
    position:relative;
    margin:-3em auto 3em;
    padding:3.5em 0 2em;
}

#matome p{
    width:90%;
}

div#area5 h6#sum{
    width:30%;
    position:relative;
    margin:0 auto;
    /*left:35%;
    top:0; */
    z-index:10;
}

/*ドット*/
.dot{
    position:absolute;
    z-index:1;
    animation:fadeIn;
    animation-delay: 1.1s;
}

#dot01{
    height:17.7%;
    left:27%;
    top:5.5em;
}
#dot02{
    height:68%;
    right:17%;
    top:47%;
}
#dot03{
    height:33%;
    left:13%;
    top:0;
}
#dot04{
    height:50%;
    right:22%;
    top:36%;
}
#dot05{
    height:27%;
    left:47%;
    top:-7em;
}
#dot06{
    height:61%;
    right:10%;
    top:67%;
}
#dot07{
    height:55%;
    right:28%;
    bottom:-10em;
}
#dot08{
    height:19em;
    left:12%;
    top:-15em;
}


div.arw{
    display:block;
    position:absolute;
    z-index:10;
}

div.arw img{
    width:100%;
}

#arw01{
    width:15%;
    right:25%;
    bottom:-17%;
}
#arw01 img{
    transform:rotate(20deg);
}
#arw02{
    width:12%;
    left:15%;
    bottom:-28%;
}
#arw02 img{
    transform:rotate(-10deg);
}

#arw03{
    width:15%;
    right:20%;
    bottom:-8%;
}
#arw03 img{
    /*transform:scale(-1, 1);*/
    transform:rotate(-10deg);
}

#arw04{
    width:12%;
    left:35%;
    bottom:-35%;
}
#arw04 img{
    transform:rotate(-40deg);
}
#arw05{
    width:12%;
    right:32%;
    bottom:-40%;
    z-index: 1;
}
#arw05 img{
    transform:rotate(-15deg);
}

#arw06{
    width:13%;
    left:17%;
    top:0;
}

#arw07{
    width:23%;
    right:8%;
    bottom:-5em;
}
#arw07 img{
    transform:rotate(0deg);
}

#arw08{
    /*width:18%;
    left:15%;
    top:28%;*/
    position:relative;
    width:33%;
    margin-left:32%;
    margin-top:1em;
}
#arw08 img#arw08-1{
    width:100%;
    transform:rotate(0deg);
}
#arw08 img#arw08-2{
    width:100%;
    margin-left:28%;
    transform:rotate(-20deg);
}

#arw09{
    position:relative;
    width:11%;
    margin:1em auto;
}

#arw10{
    width:30%;
    left:0;
    bottom:-14em;
}

#arw10 img{
    transform:rotate(35deg);
}

div.textArea p a.btn{
    display:block;
    width:40%;
    min-width:400px;
    padding:0.3em 0;
    border:dashed 1px #009AAA;
    color:#009AAA;
    border-radius:40px;
    font-size:17px;
    font-weight:700;
    text-align: center;
    transition:0.5s;
    margin:0 auto 5em;
    position:relative;
}

div.textArea p a.btn img.swedi{
    width:30%;
    position:absolute;
    left:-12%;
    bottom:-1.2em;
}
div.textArea p a.btn img.flag{
    width:15%;
    position:absolute;
    right:-6%;
    top:-1em;
}

div.textArea p a.btn:hover{
    text-decoration: none;
    background:#009AAA;
    color:#FFF;
}

/* =======================================
	DISPLAY LARGE
======================================= */

@media screen and  (min-width:1400px){
    
}

/* =======================================
	TABLET
======================================= */

@media screen and  (min-width:1025px) and ( max-width:1300px) {
    
    p,h6{
    font-size:95%;
    }
    
    div.moose img,
    div.swedi img{
    width:140px;
}

    div.moose p,
    div.swedi p{
    padding:1.5em;
    font-size:95%;
}
    
    div.step p{
        letter-spacing:0.05em;
    }
    
    #cont2-1 div.ill div.txt#ill02_txt{
    left:5%;
    top:18%;
    }

    #cont2-1 div.ill div.txt#ill03_txt{
        right:0;
        bottom:30%;
    }
    
    div.ill#ill04{
        width:46%;
        top:9em;
    }
    
    
    div#cont3-5 div.step_txt{
        width:40%;
        position:absolute;
        right:3%;
        top:3em;
        z-index:5;
    }
    
    #dot01{
        height:16%;
        left:27%;
        top:5.5em;
    }
    #dot02{
        height:64%;
        right:13%;
        top:52%;
    }
    #dot03{
        height:37%;
        left:10%;
        top:0.5em;
    }
    #dot04{
        height:54%;
        right:25%;
        top:42%;
    }
    #dot05{
        height:30%;
        left:40%;
        top:-5em;
    }
    #dot06{
        height:61%;
        right:10%;
        top:67%;
    }
    #dot07{
        height:55%;
        right:28%;
        bottom:-10em;
    }
    #dot08{
        height:16em;
        left:12%;
        top:-15em;
    }
    div.moose#mse09 img.posi01s{
    left:-80px;
    top:0px;
    }

}

@media screen and  (min-width:641px) and ( max-width:1024px) {

    p,h6{
    font-size:90%;
}

    div.moose p,
    div.swedi p{
    font-size:80%;
}
    
     #cont2-1 div.ill div.txt#ill02_txt{
    left:5%;
    top:18%;
    }

    #cont2-1 div.ill div.txt#ill03_txt{
        right:0;
        bottom:30%;
    }
    
    div.ill#ill04{
        width:46%;
        top:9em;
    }
    

    div.moose#mse09 img.posi01s{
    left:-80px;
    top:0px;
    }
    
    div#cont3-5 div.step_txt{
        width:40%;
        position:absolute;
        right:3%;
        top:3em;
        z-index:5;
    }
    
    #dot01{
        height:16%;
        left:27%;
        top:5.5em;
    }
    #dot02{
        height:64%;
        right:13%;
        top:52%;
    }
    #dot03{
        height:37%;
        left:10%;
        top:0.5em;
    }
    #dot04{
        height:54%;
        right:25%;
        top:42%;
    }
    #dot05{
        height:30%;
        left:40%;
        top:-5em;
    }
    #dot06{
        height:61%;
        right:10%;
        top:67%;
    }
    #dot07{
        height:55%;
        right:28%;
        bottom:-10em;
    }
    #dot08{
        height:16em;
        left:12%;
        top:-15em;
    }
    
}

footer{
    width:100%;
    padding:20px 0 35px;
    text-align:center;
    background:#FFF;
    border-top:solid 1px #000;
}

footer div.next{
    width:500px;
    height:auto;
    margin:0 auto 1.5em;
}

footer div.next a img{
    width:100%;
}

footer div.next a{
    transition:1s;
}

footer div.next a:hover{
    opacity:0.5;
}

footer copyright{
    width:21.5%;
    margin:0.8em auto;
    display:inline-block;
}

footer copyright picture img{
    width:100%;
}

/* =======================================
	SMPH
======================================= */

@media screen and (max-width: 640px) {
    
    #sideArea{
        min-width:850px;
    }
    div.pageNavi{
    opacity:0;
}
    
}

/*.titleArea,#area1,#area2,#area3,#area4,#area6{
    display:none;
}*/