/**
* Theme Name: MillenVPN2025
* Description: 親テーマ：lightning
* Template: lightning
* Version: 1.0.0
*/


:root{
    --vk-color-text-body: #000;
    --millen-logo-blue: var(--wp--preset--color--logo-blue);
    --millen-logo-aqua: var(--wp--preset--color--logo-aqua);
    --millen-logo-lightgray: var(--wp--preset--color--logo-lightgray);
    --millen-orange: var(--wp--preset--color--millen-orange);
    --millen-almond: var(--wp--preset--color--millen-almond);
}

@media (max-width: 991.98px){
	body,html{
		font-size: var(--vk-size-text);
	}
}

html{
	scroll-behavior: smooth;
}
body {
  font-family: /* 各言語フォントを優先 */
        'Quicksand',
        'Noto Sans JP', 
        'Noto Sans SC', 
        'Noto Sans TC', 
        'Noto Sans KR', 
        /* 最後に英語（ラテン文字）フォント */
        'Noto Sans', 
        /* 予備 */
        sans-serif;
	line-height: 1.6;
}

li a, p a{
    color: #800080;
    text-underline-offset: 4px;
}


/* lightningのcss上書き */
.vk_button .has-text-color.is-style-outline:hover, .editor-styles-wrapper .vk_button .has-text-color.is-style-outline:hover{
	background-color: currentcolor;/* lightningのバグ？ */
}
.wp-block-button,.vk_button_link_txt{
    font-weight: 700;
}
.vk_inline-font-size{
    line-height: 1.4;
}

.vk_flow .vk_flow_frame_image{
    max-width: inherit;
    width: min(16rem,80vw);
    margin-left: auto;
}
.vk_flow .vk_flow_frame_image img{
    object-fit: contain;
}

/* END lightningのcss上書き */

.site-header-logo{
    margin-bottom: .5rem;
    align-self: flex-end;
    padding-top: 0;
}
.site-header-logo img{
    display: block;
    object-fit: contain;
    max-width: inherit;
    max-height: inherit;
    /*width: calc(var(--vk-size-text) * 15);*/
    width: 100%;
}
.site-header{
    font-size: var(--vk-size-text);
    background: #fff;
	border-bottom: solid 2px var(--orange);
    box-shadow: 0 1px 3px rgba(0,0,0,.1);
}
.site-header-container{
    align-items: center;
    padding-top: .5em;
    padding-bottom: .5em;
}
.site-header--layout--nav-float .site-header-container{
    display: grid;
    gap: 0 3rem;
    grid-template-columns: 16rem 1fr auto;
    grid-template-rows: 1fr 1fr;

}
.site-header-smallline{
    /*grid-row-start: 1;*/
    background: var(--millen-almond);
    padding-top: .5em;
    padding-bottom: .5em;
}
.site-header-smallnav-ul{
	list-style:none;
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 1em;
    margin-top: 0;
    margin-bottom: 0;
}
.site-header-smallnav a{
    text-decoration: none;
    color: currentColor;
    line-height: 1.5;
    display: flex;
    align-items:center;
}
.site-header-smallnav a:before{
    content: '';
    display: inline-block;
    width: .6em;
    height: .6em;
    background: var(--millen-logo-aqua);
    border-radius: 50%;
    margin-right: .4em;
    vertical-align: bottom;
}
.site-header-orderbutton{
    grid-row: 1 / -1;
    grid-column: -1 / -2;
    display: inline-flex;
    border-radius: .5em;
    font-size: 1.4em;
    padding: .75em;
    line-height: 1.1;
    background: var(--millen-orange);
    color: #fff;
    font-weight: bold;
    white-space: nowrap;
    text-decoration: none;
    position: relative;
    letter-spacing: .1em;
    margin-left: 1em;
    box-shadow: rgba(0,0,0,.2) 3px 3px 3px;
}
.site-header-orderbutton:after{
    content: '';
    display: inline-block;
    width: 1.4em;
    aspect-ratio: 3243/5222;
    background: url("/wp-content/uploads/2025/08/tap.svg") center/contain no-repeat;
    position: absolute;
    right: -.75em;
    top: 13%;
    transform: rotate(-10deg);
}
.site-header-orderbutton:hover{
    background: var(--millen-logo-aqua);
    color: #fff;
}
.site-header-orderbutton:focus{
    color: #fff;
}
.site-header-orderbutton:hover:after{
opacity: 0;
}
.global-nav{
    grid-row: 1 / -1;
    grid-column: 2/3;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
}
.global-nav-list{
    gap: 1em 1.75em;
    flex-wrap: wrap;
    width: 100%;
}
.global-nav-list li{
    font-size: 1em;
}
.global-nav-list>li>a{
    text-decoration: none;
    flex-wrap: nowrap;
    padding: 0 .5em;
    line-height: 1.1;
    color: currentColor;
}
.global-nav-list>li>a:before{
    content: '';
    display: inline-block;
    width: .6em;
    flex: 0 0 .6em;
    height: .6em;
    background: var(--millen-logo-blue);
    border-radius: 50%;
    margin-right: .4em;
    margin-bottom: 0;
    vertical-align: bottom;
}
.global-nav-list>li>a:hover:before{
    background: var(--millen-orange);
}
.global-nav-list>.menu-item-option>a:before {
    background: var(--millen-logo-lightgray);
}
.global-nav-list>li .global-nav-name{
    font-size: 1.2em;
    font-weight: 500;
}
.global-nav-list>.hasIcon>a:before{
    content: none;
}
.global-nav-list>.hasIcon .hasIcon-icon{
    font-size: .6em;
    color: #fff;
    display: inline-block;
    line-height: 1.4;
    background: #e53935;
    padding: 0 .5em;
    border-radius: 4px;
    margin-right: .25em;
    vertical-align: middle;
}
.vk-mobile-nav nav ul .hasIcon a:before{
    content: none;
} 
.vk-mobile-nav .hasIcon-icon{
    font-size: .6em;
    color: #fff;
    display: inline-block;
    line-height: 1.8;
    background: #e53935;
    padding: 0 .5em;
    border-radius: 4px;
    margin-right: .25em;
    vertical-align: middle;
}
.vk-mobile-nav {
    & .trp-shortcode-switcher__wrapper{
        margin-top: 0 !important;
    }
    & .trp-shortcode-switcher{
        width: 100%;
    }
}
.mobilenav-button-mypage{
    & .btn{
        min-height: 50px;
    }
}
.site-footer .hasIcon-icon{
    font-size: .6em;
    color: #fff;
    display: inline-block;
    line-height: 1.8;
    background: #e53935;
    padding: 0 .5em;
    border-radius: 4px;
    margin-right: .25em;
    vertical-align: middle;
}



.site-header-weglot{
    grid-row: 2 / 3;
    grid-column: 1/2;
}
.site-header-weglot .trp-shortcode-switcher{
    width: 100%;
}

.header_scrolled .site-header--layout--nav-float .site-header-container{
    grid-template-columns: auto 1fr auto;
}
.header_scrolled .site-header-weglot{
    display: none;
}
.header_scrolled .site-header-smallnav a{
    font-size: .9rem;
}
.header_scrolled.device-pc .global-nav{
    padding-top: .5em;
    padding-bottom: .5em;
}
.header_scrolled.device-pc .global-nav-list{
    gap: .5em 1em;
}
.header_scrolled .site-header-logo{
	display: block;
    grid-row: 1 / -1;
    align-self: center;
    width: calc(var(--vk-size-text) * 4.5);
    height: calc(var(--vk-size-text) * 3);
    overflow: hidden;
    margin-bottom: 0;
    margin-right: 0;
    background: url("/wp-content/uploads/2025/08/MillenVPN_logo_icon.svg") left center/contain no-repeat;
}
.header_scrolled .site-header-logo a{
	height: 100%;
}
.header_scrolled .site-header-logo img{
    opacity: 0;
}
.header_scrolled .global-nav-list>li>a{
    font-size: .9em;
}
.header_scrolled .site-header-orderbutton{
    font-size: 1.2em;
    padding: .5em;
    display: flex;
    align-items: center;
}
.header_scrolled .site-header-orderbutton:after{
    position: static;
    display: inline-block;
    width: 0;
    height: 0;
    background: none;
    transform: none;
    margin-left: .4em;
    border-style: solid;
    border-width: .4em;
    border-color: transparent transparent transparent currentColor;
}
@media (max-width: 767px){
	.header_scrolled .site-header-orderbutton{
		position: fixed;
		right: 15px;
		height: 34px;
		top: 10px;
		animation: header_drop .5s ease-out 0s 1 alternate none running;
		font-size: 4vw;
	}
	.admin-bar.header_scrolled .site-header-orderbutton{
		top: 51px;
	}
}
.device-pc .global-nav-list>li>a{
    display: flex;
    padding: 0;
}
.device-mobile .site-header-smallnav{
    padding-left: 50px;
}
.page-header-weglotHolder{
    display: none;
}
@media (max-width: 991px){
    .site-header-container{
        padding-top: 1em;
    }
    .site-header--layout--nav-float .site-header-container{
        grid-template-columns: auto 1fr auto;
        grid-template-rows: auto auto auto;
    }
    .site-header-logo{
        align-self: center;
        margin-bottom: 0;
        margin-right: var(--vk-size-text);
    }
    .site-header-weglot{
        grid-row: 1 / 2;
        grid-column: 2/3;
    }
    .global-nav{
        padding-top: 1em;
        border-top: solid 1px var(--millen-logo-lightgray);
        grid-column: 1/-1;
        grid-row: -1 / -2;
        margin-top: 1em;
    }
    .site-header-orderbutton{
        grid-column: -1/-2;
        grid-row: 1/2;
    }

}
@media (max-width: 767px){
    .site-header-smallline,.global-nav,.site-header-weglot{
        display: none;
    }
    .site-header-orderbutton{
        font-size: 1em;
    }
    .site-header-container{
        padding-left: 50px;
        padding-top: 5px;
        padding-bottom: 5px;
        min-height: 50px;
        position: relative;
		gap: 0 !important;
    }
	.site-header-logo{
		margin-right: 0;
	}
	.site-header-logo img{
		width: 42vw;
	}
    .site-header-weglot{
        position: absolute;
        right: 0;
        top: 110%;
    }
    .page-header-weglotHolder{
        display: block;
        height: 0;
        overflow: visible;
        position: relative;
        z-index: 1;
    }
    .page-header-weglotHolder .weglot-shortcode{
        position: absolute;
        right:5px;
        left: auto;
        top:0;
        margin-top: 5px;
    }
}

.vk-mobile-nav{
    font-size: calc(var(--vk-size-text) * .875);
    z-index: 9999998;
    padding-right: 6vw;
    padding-left: 6vw;
}
.mobileNav-logo{
    margin-left: 14vw;
    margin-right: 14vw;
    margin-bottom: 2em;
}
.mobileNav-largeButtons{
    display: flex;
    gap: 2vw;
    margin-bottom: 2em;
}
.mobileNav-largeButton{
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--millen-logo-blue);
    color: #fff;
    text-decoration: none;
    font-size: 1.2em;
    padding: .4em;
    font-size: 1.6em;
    border-radius: 4px;
    flex: 40% 1 1;
}
.vk-mobile-nav-menu-btn{
    top: 7px;
    border: none;
    background: rgba(255,255,255,.8) url("images/navbutton.svg") center/80% no-repeat;
    z-index: 9999999;
}
.vk-mobile-nav-menu-btn.menu-open{
    border: none;
    background: url("images/navbutton-close.svg") center/80% no-repeat;
}
.vk-mobileNav-menu-outer{
    display: flex;
    justify-content: center;
}
.vk-mobile-nav nav>ul{
    padding-top: 2em;
    padding-bottom: 2em;
}
.vk-mobile-nav nav ul li a{
    border: none !important;
    font-size: 5vw;
    padding: .4em;
}
.vk-mobile-nav nav ul li a:before{
    content: '';
    display: inline-block;
    width: .6em;
    height: .6em;
    background: var(--millen-logo-blue);
    border-radius: 50%;
    margin-right: .4em;
    margin-bottom: .5em;
    vertical-align: bottom;
}
    .vk-mobile-nav nav ul .menu-item-option a:before{
        background: var(--millen-logo-lightgray);
    }
.vk-mobile-nav .mobileNav-userMenu ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.vk-mobile-nav .mobileNav-userMenu ul li a:before{
    background: var(--millen-logo-aqua);
}
.vk-mobile-nav .mobileNav-userMenu ul li a{
    font-size: 1em;
}
.hero,.page-header{
    min-height: inherit;
    padding-top: calc(var(--vk-size-text) * 3);
    padding-bottom: calc(var(--vk-size-text) * 3);
    background: url("/wp-content/uploads/2022/09/bg-7.png") center/cover no-repeat !important;
    color: #fff;
	margin-bottom:min(6em,5vw);
}
@media (max-width: 767px){
    .hero,.page-header{
        padding-top: calc(var(--vk-size-text) * 4);
        padding-bottom: calc(var(--vk-size-text) * 4);
    }
}
.hero>.container,.page-header-inner{
    display: flex;
    flex-direction: column;
    align-items: center;

}
.hero__title, .page-header-title{
    font-size: calc(var(--vk-size-text) * 2.2);
    text-align: center;
    color: #fff;
}
.page-header-title, h1.page-header-title{
    font-size: min(3rem,5.8vw);
}
.hero .hero__title span,.page-header-title span{
    color: inherit !important;
}
.device-mobile .hero__title, .device-mobile .page-header-title{
    font-size: 6vw;
}
.nt-hero-description,.page-header-description{
    font-size: min(1.2rem,5vw);
    line-height: 2;
	margin-top: 2em;
}

/* footer */
.button_scroll_up{
	position: fixed;
	bottom: -2.4em;
	right:0;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #009cbf;
	border-radius: 4px 0 0 4px;
	width: 2.4em;
	height: 2.4em;
}
@media (min-width: 768px){
    .button_scroll_up{
        display: none;
    }
}
.header_scrolled .button_scroll_up{
	bottom: 0;
	transition: bottom .4s;
}
.button_scroll_up:after{
	content: '';
	display: block;
	width: 1em;
	height: 1em;
	background: linear-gradient(45deg,#fff 50%,transparent 50%);
	transform:translateY(20%) rotate(135deg);
}
.site-footer{
	background: url("/wp-content/themes/millen2025/images/sitefooter-top.svg") center top/100% 10em no-repeat;
	padding-top: 10em;
	position: relative;
}
.sitefooter-almond{
    background: var(--millen-almond);
}
.site-footer:after{
	content: '';
	display: block;
	position: absolute;
	left:0;
	bottom: 0;
	width: 100%;
	height: 10em;
	background: url("/wp-content/themes/millen2025/images/sitefooter-bottom.svg") center bottom/100% 10em no-repeat;
	pointer-events: none;
}
.site-footer .widget_nav_menu ul li{
    font-size: 1rem;
}
.site-footer .widget_nav_menu ul li a{
    padding-top: .25em;
    padding-bottom: .25em;
    color: inherit;
}
@media (max-width: 767px){
    .site-footer .widget_nav_menu ul li a{
        padding-top: .5em;
        padding-bottom: .5em;
    }    
}
.site-footer .widgettitle{
    font-size: 1.4rem;
    margin-bottom: .5em;
}
.site-footer-copyright{
	position:relative;
	z-index: 1;
	margin-top: 4em;
	color: var(--millen-almond);
}
.site-footer-copyright a{
	color: inherit;
	text-decoration: underline;
}
/* END footer */


/* ブロックスタイル */
.is-style-millen-h2{
    position: relative;
}
.is-style-millen-h2:before{
    content: '';
    display: inline-block;
    position: absolute;
    bottom: -.2em;
    left: calc(50% - .2em);
    width: .4em;
    height: .4em;
    background: var(--millen-logo-aqua);
    border-radius: 50%;
}
.is-style-millen-h2:after{
    content: '';
    display: block;
    margin: .6em auto 0;
    width: .75em;
    height: 1px;
    border-style: solid;
    border-color: currentColor;
    border-width: 0 2em;
	box-sizing: content-box;
}

/* pCloud */
.pcloud_usage-image1 {
    width: 30rem; }

.pcloud-usagelist {
    font-size: 1.1em; }
.pcloud-usagelist li {
	list-style: none;
    margin-bottom: .5em;
    padding-left: 1.5em;
    text-indent: -1.5em; }
.pcloud-usagelist li:before {
    content: '';
    display: inline-block;
    width: 1.25em;
    height: 1.25em;
    margin-right: .25em;
    background: url("/wp-content/uploads/2025/01/check_icon-orange.svg?v2") left bottom/contain no-repeat;
    transform: translateY(15%); }

.pcloud_features {
    background: #efefef;
    padding: 2rem; }
.pcloud_features .wp-block-column {
    background: #fff;
    padding: 15px; }
.pcloud_features .wp-block-heading {
    display: flex;
    align-items: center;
    gap: 0.25em; }

.pcloud_features_icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.4em;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #1bccbb; }
.pcloud_features_icon img {
    display: block;
    width: 80% !important;
    height: 80%;
    object-fit: contain; }

.pcloud_millen_header {
    font-size: 2.2rem; }

.pcloud_millen_header-line2 {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: .6em; }
@media (max-width: 1199px) {
    .pcloud_millen_header-line2 {
        flex-direction: column; } }

.pcloud_millen_header-logo img {
    display: block;
    width: auto;
    height: 100%; }

.pcloud_millen_header-logo-p {
    height: 2.4em; }
@media (max-width: 1199px) {
    .pcloud_millen_header-logo-p {
        height: 15vw; } }

.pcloud_millen_header-logo-m {
    height: 1.6em; }
@media (max-width: 1199px) {
    .pcloud_millen_header-logo-m {
        height: 10vw; } }

.pcloud_millen_header-x {
    display: inline-block;
    width: 1.6em;
    height: 1.6em;
    margin: 0 .5em;
    color: transparent;
    position: relative; }
.pcloud_millen_header-x:before, .pcloud_millen_header-x:after {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 120%;
    height: 5px;
    background: #ddd;
    transform: translatey(50%) rotate(45deg); }
.pcloud_millen_header-x:after {
    transform: translatey(50%) rotate(-45deg); }

/* END pCloud */


/* 対応表 */
.vodList{
display: flex;
    flex-wrap: wrap;
list-style: none;
padding: .5em !important;
gap: 0;
    background: #fff;
}
@media (max-width: 767px){
	.vodList{
		grid-template-columns: 1fr 1fr;
	}
}
.vodList li{
display: flex;
align-items: center;
justify-content: center;
    margin: 0;
    padding: .25em .5em;
    font-size: 1.3rem;
    font-weight: bold;
}
.vodList li:before{
    content: '\f058';
    font-family: 'Font Awesome 5 Free';
    display: inline-block;
    margin-right: .25em;
    color: var(--millen-orange);
}
.vodList img{
display: block;
object-fit: contain;
width: 84% !important;
height: 90%;
max-height: 5em;
}

.vpnCompareTable td,
.vpnCompareTable th{
	text-align: center;
}
.vpnCompareTable tbody tr:nth-child(odd){
	background: #f6f6f6;
}
.vpnCompareTable td:nth-child(2),
.vpnCompareTable th:nth-child(2){
	color: #fff;
	background: var(--wp--preset--color--millen-orange);
	/*background: rgba(255,168,0,.9);*/
}
@media (max-width: 767px){
	.vpnCompareTable td,
	.vpnCompareTable th{
		font-size:3.4vw;
		padding: .5em .2em !important;
	}
	.vpnCompareTable tr{
		display: grid;
		grid-template-columns:9em 1fr;
		grid-template-rows:1fr 1fr 1fr;
		border-bottom:solid 1px var(--wp--preset--color--millen-orange);
	}
	.vpnCompareTable thead{
		display:none;
	}
	.vpnCompareTable th{
		grid-row: 1/-1;
		display:flex;
		align-items:center;
		justify-content:center;
	}
	.vpnCompareTable td{
		display:grid;
		grid-template-columns:6em 1fr;
		align-items: center;
        & .fa-solid{
            margin-left: auto;
            margin-right: auto;
        }
	}
	.vpnCompareTable td:nth-child(2):before{
		content:'MillenVPN';
	}
	.vpnCompareTable td:nth-child(3):before{
		content:'NordVPN';
	}
	.vpnCompareTable td:nth-child(4):before{
		content: 'ExpressVPN'
	}
}
.list_countries {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    list-style: none;
    margin-bottom: 20px;
    font-weight: 600;
    text-align: center;
    line-height: 1.3;
    width: 100%;
    overflow-wrap: break-word;
    padding: 0;
    border: 2px solid #FFA800;
}

@media (min-width: 1200px) {
    .list_countries {
        grid-template-columns: repeat(6, 1fr);
    }
}


.list_countries li {
    letter-spacing: 0.05em;
    padding: 0.8em 0.3em;
    border: 1px solid #FFA800;
	margin: 0;
}
.list_countries p {
    margin-top: .6em;
	margin-bottom: 0;
}
.list_countries .list_countries-flag {
    width: 35px;
    max-width: 70%;
    border: 1px solid #FFE5CC;
}

/* END 対応表 */


/* 専用サーバー */
.dedicated-cover-contain .wp-block-cover{
	background: #f0f0f0;
	margin:0 0 24px;
}
.dedicated-cover-contain .wp-block-cover .wp-block-cover__image-background{
	object-fit: contain;
}
.serviceList{
	list-style: none;
	padding:0 !important;
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 1em;
}
@media (max-width: 767px){
	.serviceList{
		grid-template-columns: repeat(2,1fr);
	}
}
ul .serviceList-li{
	display: flex;
	align-items:center;
	gap: .5em;
	border: solid 1px #e0e0e0;
	padding: .5em !important;
	background: #fff;
	margin: 0;
}
.serviceList-icon{
	display: inline-block;
}
.serviceList .logos{
	display: block;
	width: 3em;
	height: 3em;
	object-fit: contain;
}
/* END 専用サーバー */


/* ご利用料金 */
.planCompareTable table th{
	color: #fff;
	background: #ffa800;
	min-width: 9em;
}
.planCompareTable table tr:nth-child(odd){
	background:#fae9cb;
}
.planCompareTable table td{
	border: solid 1px #e0e0e0;
}
.planCompareTable table td:first-child{
	font-weight: bold;
}

.planCompareTable table a{
    text-decoration: underline;
    color: navy;
}
@media (max-width: 767px){
	.planCompareTable table,
	.planCompareTable table th,{
		display: block;
	}
	.planCompareTable table tr{
		display: grid;
		grid-template-rows:repeat(4,auto);
		margin-bottom:1em;
		background: none !important;
	}
	.planCompareTable table thead{
		display: none;
	}
	.planCompareTable table td{
		display:grid;
		grid-template-columns: 8em 1fr;
		gap: .5em;
	}
	.planCompareTable table td:first-child{
		display:block;
		text-align: center;
		grid-column: 1/-1;
		border: solid 2px #999;
	}
	.planCompareTable table td:nth-child(n+2):before{
		background: #ffa800;
		color: #fff;
		font-weight: bold;
		display: flex;
		align-items:center;
		padding-left: .5em;
	}
	.planCompareTable table td:nth-child(2):before{
		content: 'ワンタイム';
	}
	.planCompareTable table td:nth-child(3):before{
		content: 'サブスク';
	}
	.planCompareTable table td:nth-child(4):before{
		content: '専用サーバー';
	}
}

/* END ご利用料金 */

/* 3つのサービス */
.connectCompareTable th,
.connectCompareTable td{
	border: solid 1px #e0e0e0;
}
.connectCompareTable thead th{
	background: #ffa800;
	color: #fff;
}
.connectCompareTable td{
	width: 30%;
}
.connectCompareTable tbody tr:nth-child(odd){
	background: #fae9cb;
}
.connectCompareTable td:first-child{
	font-weight: bold;
	min-width: 10em;
	width: 10em;
}
.connectCompareTable ul{
	list-style: none;
}
.connectCompareTable ul li{
	margin-bottom: .75em !important;
}
@media (max-width: 767px){
	.connectCompareTable tbody,
	.connectCompareTable td{
		display: block;
	}
	.connectCompareTable thead{
		display: none;
	}
	.connectCompareTable tr{
		display: block;
		background: none !important;
		margin-bottom: .5em;
	}
	.connectCompareTable td:first-child{
		border:solid 2px var(--millen-orange);
		color: var(--millen-orange);
		width: auto;
	}
	.connectCompareTable td:nth-child(n+2){
		display: grid;
		grid-template-columns: 8em 1fr;
		gap: 0 .5em;
		width: auto;
		padding: 2px .5em 2px 2px;
	}
	.connectCompareTable td:nth-child(n+2):before{
		display: block;
		grid-row: 1/-1;
		background: var(--millen-orange);
		color: #fff;
		font-weight: bold;
		padding: .25em;
		line-height:1.2;
	}
	.connectCompareTable td:nth-child(2):before{
		content: 'MillenVPN';
	}
	.connectCompareTable td:nth-child(3):before{
		content: 'MillenVPN Native OpenConnect';
	}
	.connectCompareTable td:nth-child(4):before{
		content: 'MillenVPN Native';
	}
}
/* END 3つのサービス */

/* 選べる国一覧 */

@media (min-width: 1200px){
    .list_location-2cols{
        column-count: 2;    
    }
}
.list_location{
	list-style: none;
	padding-left: 0 !important;
	line-height: 1.4;
}
.list_location li {
	display: flex;
	justify-content: flex-start;
	list-style: none;
	padding: 10px;
	align-items: flex-start;
	font-size: .86em;
	margin-bottom: .75em !important;
}
.list_location img {
	width: 2em;
	max-width: 70%;
	border: 1px solid #d3d3d3;
	margin-right: 10px;
}

.no_padding {
	padding-top: 0;
}
.list_location li {
	padding: 2px;
}

.list_location {
 padding-bottom:10px;
    	
}
/* END 選べる国一覧 */


/* トップページ */
.top-cover{
    padding-top: 6em;
    padding-bottom: 6em;
}
@media (max-width: 767px){
    .top-cover{
        padding-bottom: 70vw;
        background: #fae9cd url("/wp-content/uploads/2025/10/top-3_b-sp.png") center bottom/100vw no-repeat;
    }
    .top-cover .wp-block-cover__image-background{
        display: none;
    }
}
.top_h2{
    white-space: nowrap;
    font-size: min(1.8rem,5vw);
    margin-bottom: .2em !important;
}
.top_h2-name{
    display: block;
    line-height: 1.1;
    font-size: 3.8em;
    margin-bottom: -.1em;
}
.top_mv-price{
    font-size: min(2.8rem,8vw);
    font-weight: 900;
    margin-top: 0;
}
.top_mv-price .vk_inline-font-size{
    line-height: 1.1;
}
.top_mv-button .vk_button_link{
    border:solid 2px var(--millen-logo-blue) !important;
    font-weight: 900;
}
.top_mv-button .vk_button_link:hover{
    background: var(--millen-logo-blue) !important;
    color: #fff !important;
    opacity: 1 !important;
}
.top-cover-ul{
    font-size: 1.3rem;
    margin-bottom: 2em !important;
}
.top-cover-ul li{
    margin-bottom: .5em !important;
}

.introduction_slider li{
	font-size: .8em;
}
.introduction_slider li a{
	font-size: 1.2em;
	font-weight: bold;
}
/* END トップページ */

/* キャンペーン用 */
html:not([lang='ja']) .only_for_jp{
	display: none !important;
}
.mvCampaignArea{
    margin-top: 1rem;
	color: #fff;
	position: relative;
}
.mvCampaignArea:after{
	content: '';
	width: 20%;
	aspect-ratio: 1;
	border-radius: 50%;
	background: #e53935 url(/wp-content/uploads/2025/04/giftIcon.svg) center/70% no-repeat;
	position: absolute;
	right: 0;
	top: 0;
	transform: translatey(-50%);
}
.mvCampaignArea-a{
    display:inline-flex;
	flex-direction: column;
	gap: .5rem;
    background: #e53935;
	border-radius: 8px 0 8px 8px;
	/*
	background-image: repeating-conic-gradient(
    #c41100 0deg, 
    #c41100 20deg,
    #ed0f00 20deg, 
    #ed0f00 40deg
		);
	*/
    color: #fff;
    padding: 1em 1em;
    text-decoration: none;
    position: relative;
    min-width: 18em;
    /* box-shadow:2px 2px 6px rgba(0,0,0,.3); */
}
.mvCampaignArea-a:hover,
.mvCampaignArea-a:visited,
.mvCampaignArea-a:active,
.mvCampaignArea-a:focus{
    color: #fff;
}
.mvCampaignArea-strong{
    font-size:min(1.2em,3.9vw);
    display: inline-block;
    width: 80%;
	padding: .25em 0;
	border-bottom: dashed 1px #fff;
}
.mvCampaignArea-a:after{
    content: '\02192';
    font-size: .85em;
    font-weight: bold;
    display: block;
    padding: .7em 0 .2em 1em;
    background: #fff;
    color: #e53935;
    clip-path: polygon(100% 0,100% 100%,0 100%);
    position: absolute;
    right: 0;
    bottom: 0;
}
.mvCampaignArea-a.noLink{
	pointer-events: none;
}
.mvCampaignArea-a.noLink:after{
    content: none;
}

.mvCampaignArea-a:hover{
    box-shadow: 2px 2px 6px rgba(0,0,0,.6);
}
/* END キャンペーン用 */


/* weglot */
#weglot-switcher-1{
	display: none;/* リニューアル前のスイッチャー */
}
/* END weglot */