@charset "UTF-8";
/*
Theme Name: アカデミックVエンジン
Theme URI: https://
Author: Soleil
Author URI: https://soleil-design.com
ブレイクポイント：
min-width: 1025px（PC）
max-width: 1024px（タブレット）
max-width: 480px（スマホ）
Ver:1.0（2025/03/14）
Requires at least: 6.1
*/
/*共通項目テキスト装飾要素*/
#top-page {padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px;}
p{color:#707070; line-height:1.7em; margin:0;}
h1, h2, h3, h4, .txt_lead_mv, .subtitle_number, .add_title, .add_desc, .foot_list_btn ul li a, .list_3btn li::before, .list_3col li::before, .txt_big, .fmenu_title, .title_center, .catchitop{font-family: 'Hiragino Mincho Pro','游明朝','Yu Mincho',serif;}
h1{margin:0;}
h2{font-size:2.2em; font-weight:bold; letter-spacing: 0.1em; margin:0 0 60px 0 ;}
h3{font-size:1.3em; font-weight:bold; margin:0 0 30px 0 ;}
.txt_blue{color:#145DA0;}
.sidetitle{font-size:1.3em; font-weight:bold; margin:0 0 30px 0 ; border-left:8px solid #145DA0; padding-left:15px;}
.foot_nav_add p, .foot_nav_list li p, .foot_nav_list li p, .foot_nav_list li ul li a, .foot_nav_list li ul li{color:#fff;} 
.foot_nav_list{list-style: none;}
a{text-decoration: none;}
ul{padding:0; margin:0;}
ul li{list-style:none;}
.head_nav_cont ul li a:hover{background-color:#fff; color:#145DA0;}
.head_nav_cont ul li a{color:#fff;}
.title_center, .subtitle_center{text-align: center;}
/*共通項目構造色付け要素*/
body{padding:0; margin:0;}
header{background-color:#145DA0; z-index:99; position:sticky; top:0;}
.head_nav_cont{display:flex;}
.logobox{margin:0px;}
.sec_blue{background-color: #EBF6FF;}
.sec_white{background-color: #FFF;}
.foot_list_btn{background-color: #f7f7f7; border-top:5px solid #082D4E; padding:20px 30px;}
.foot_nav{background-color: #082D4E; padding: 30px 30px 60px;}
.toplink_bg{background-image:url('images/top_link-BG.png'); background-repeat:no-repeat; background-position:center bottom;}
/*Flex等の宣言*/
.head_nav_cont nav ul, .glb_list_acc, .list_3btn, .list_3col, .list_news, .foot_list_btn ul, .foot_nav_cont, .foot_nav_list, .bottom-wrap{display:flex;} 
.sec_chat{position: sticky;}
/*コンテンツビルド*/
.head_nav_cont, .cont_btn_link, .cont_list_3col, .cont_news, .cont_sample, .foot_nav_cont, .bottom-wrap{margin:0 auto 0 auto;}
.head_nav_cont nav ul, .head_nav_cont nav ul li ul{padding:0; margin:0;}
/*トップメインリンク*/
.list_3btn {flex-wrap: wrap; justify-content: space-between; list-style: none;}
.list_3btn li {counter-increment: mycounter; background: #fff; border-left:#145DA0 3px solid; box-shadow: 0px 3px 20px #00000038; position: relative;}
.list_3btn li::before {content: counter(mycounter, decimal-leading-zero); color:#FFB057; font-size:2em; font-weight: 650; position: absolute; top:5px; left:15px; z-index:10;}
.list_3btn li a {color:#145DA0; font-size:1.2em; font-weight:bold; display:block; position: relative;}
.list_3btn li a:hover {color:#fff;}
.list_3btn li a::after {position: absolute; top:0; left: 0; width: 0; height: 100%; content: ""; background-color: #fff; transition: 0.3s;}
.list_3btn li a:hover::after{width: 100%; background-color: #145DA0; }
.list_3btn li a span {position: absolute; z-index:10; top: 50%; left: 50%; transform: translate(-50%, -50%); text-align: center;}
.list_3col {list-style: none;}
.list_3col li{counter-increment: mycounter;}
.subtitle_number{content: counter(mycounter, decimal-leading-zero); color:#FFB057; font-size:2em; font-weight: 650; position: relative; display:block; margin: 0 auto 0 auto;}
.subtitle_number::after {content: ''; width: 32px; height: 3px; display: inline-block; background-color: #FFB057; position: absolute; bottom: -10px; left: calc(50% - 16px);}
.btn_big, .btn_mid{font-size:1.2em; font-weight: bold; text-align: center; padding-top:1.1em; padding-bottom:1.1em; display:block; text-decoration: none; margin:40px auto 40px auto ;}
.btn_blue{background-color:#155DA0; color:#fff; border:2px #155DA0 solid; transition: 0.3s;}
.btn_blue:hover{background-color:#fff; color:#155DA0;}
.btn_black{background-color:#2F2F2F; color:#fff; border:2px #2F2F2F solid; transition: 0.3s;}
.btn_black:hover{background-color:#fff; color:#2F2F2F;}
.btn_white{background-color:#fff; color:#155DA0; border:2px #155DA0 solid; transition: 0.3s;}
.btn_white:hover{background-color:#155DA0; color:#fff;}
.list_news{background-color:#fff; padding: 20px 60px; border-top:#FF8800 5px solid; list-style: none;} 
.list_news li{border-bottom: #707070 1px solid;}
.list_news li:last-child {border-bottom: none;}
.list_news li a{display:flex; justify-content: space-between;}
.list_news li a time{color:#707070; text-align: center;}
.list_news li a p{color:#707070;}
.foot_list_btn ul{list-style: none;}
.foot_list_btn ul li{text-align:center; background-color:#E8E8E8;}
.foot_list_btn ul li a{color:#082D4E; font-weight:bold; display:block;}
.foot_list_btn ul li a:hover{opacity: 0.3;}
.fmenu_title ul{list-style:none; margin:0px;}
.fmenu_title ul li a{display:block;}
.multi-bg-example{
	background-image:url('images/back01.png'), url('images/back02.png'), url('images/back03.png');
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-size:29%, 28%, 30%;
	background-position: top left, right, bottom left;
}
	.head_nav_cont nav ul li:hover{background-color:rgb(255, 255, 255, 0.3);}

/*メインイメージエリア*/
.sec_mv{background: url("http://soleil-design.co.jp/minpou/wp-content/uploads/2025/03/main.png") no-repeat center center / cover;}
.cont_mv{position: relative;}
.cont_btn_link,.cont_list_3col,.cont_news,.cont_sample{padding-bottom:100px; margin:0 auto 100px; border-bottom:#707070 1px solid;}
.cont_btn_link:last-child,.cont_list_3col:last-child,.cont_news:last-child,.cont_sample:last-child{border-bottom:none; padding-bottom:0; margin-bottom:0;}
.txt_mv{position: absolute;}
.txt_lead_mv{font-weight:bold; color:#fff;}
.txt_sub_mv{background:rgba(255,255,255,0.6); width:-moz-fit-content; width:fit-content;}

/*PC用スタイル*/
@media screen and (min-width: 1025px) {
	.sp_only,.tab_only{display:none;}
	.head_nav_cont{justify-content: space-between;}
	.head_nav_cont, .cont_btn_link, .cont_list_3col, .cont_news, .cont_sample, .foot_nav_cont, .bottom-wrap{max-width:1025px; width:100%;}
	.logobox img{width:300px; height: auto; padding:15px;}
	.head_nav_cont nav ul{list-style:none;}
	.head_nav_cont nav ul li{min-width: 170px;}
	.head_nav_cont nav ul li a{text-align: center; line-height: 105px; display:block;}
	.head_nav_cont nav ul li ul{display: none; position: absolute;}
	.head_nav_cont nav ul li:hover ul{display: block; z-index: 99;}
	.head_nav_cont nav ul li ul li{position:relative; border-bottom: 1px #fff dotted;}
	.head_nav_cont nav ul li ul li:last-child{border-bottom: none;}
	.head_nav_cont nav ul li ul li a{font-size: 0.9rem; text-align: left; line-height: 30px; padding:10px; background-color: rgba(20,93,160,0.5)}
	.sec_blue, .sec_white{padding: 80px 30px 100px 30px; margin:0;}
	/*トップのメインリンクはワイドと高さを調整*/
	.list_3btn li{width:31%; margin-bottom:3%;}
	.list_3btn li a{height:130px;}
	.title_center{font-size:2.2rem;}
	.list_3col{justify-content: space-between;}
	.list_3col li{width:30%;}
	.list_3col li img {display: block; width:60%; margin:0 auto 30px auto;}
	.list_news{flex-direction: column;}
	.list_news li a{padding:20px 0;}
	.list_news li a time{width:15%;}
	.list_news li a p{width:80%;}
	.foot_list_btn ul{max-width:1025px; width:100%; margin:0 auto; justify-content: space-between;}
	.foot_list_btn ul li{width:49%;}
	.foot_list_btn ul li a{font-size: 1.3em; padding:40px 0; transition: 0.3s;}
	/*メインイメージエリア*/
	.sec_mv{padding:0 30px;}
	.cont_mv{height: 600px; max-width:1025px; width: 100%; margin:0 auto;}
	.cont_mv img{width:100%;}
	.txt_mv{top: 50%; right:0; transform: translate(0%, -50%);}
	.txt_lead_mv{font-size:3.8em; line-height: 1.5em; margin-bottom:24px; text-shadow: 0 0 8px rgb(0, 0, 0, 0.5);}
	.txt_sub_mv{padding:20px; font-size: 1.5rem; line-height: 1.8em;}
	.left-wrap{width:70%; margin-right:2%;}
	.right-wrap{width:30%;}
	/*各種装飾テキスト・ボタン等のスタイル*/
	.txt_big{font-size:1.6rem; font-weight:600;}
	.btn_big{width:600px;}
	.btn_mid{width:300px;}
	.foot_nav_add,.foot_nav_cont nav {width: 49%;}
	.add_title{font-size:1.5rem; font-weight:bold;}
	.add_desc{font-size:0.9rem; line-height:1.2rem; margin-bottom: 20px;}
	.address{font-size:0.85rem;}
	.foot_nav_list {flex-direction: row; justify-content: space-between;}
	.foot_nav_list li{ width:49%;}
	.foot_nav_list li .fmenu_title{font-weight:bold; margin-bottom: 10px;}
	.foot_nav_list li ul li{width:100%; padding-left:30px; margin-bottom:10px;}
	.fmenu_title ul li a{font-size:0.85rem; line-height:1.2rem;}
}
/*タブレット用スタイル*/
@media screen and (max-width: 1024px) {
	.tab_only{display:block;}
	.sp_only{display:none;}
	/*メインナビゲーターハンバーガー処理*/
	.head_nav_cont nav{position: fixed; right:-320px; top:0; width: 300px; height:100vh; padding-top:70px; background-color: #082D4E; transition: all .6s; z-index: 200; overflow-y: auto;}
	.head_nav_cont nav .glb_list{}
	.hamburger{position: absolute; right: 30px; top: 5px; width: 40px; height: 40px; cursor: pointer; z-index: 300;}
	.hamburger_border {position: absolute; left: 5px; width: 30px; height: 2px; background-color: #fff; transition: all .6s; color: #fff;}
	/*ハンバーガーアイコンの制御 閉じてる時*/
	.hamburger_border_top {top: 12px;}
	.hamburger_border_center {top: 20px;}
	.hamburger_border_bottom {top: 28px;}
	/*ハンバーガーアイコンの制御 開いた時*/
	.nav-open .hamburger_border_top {transform: rotate(45deg); top: 20px; background-color: #fff;}
	.nav-open .hamburger_border_center {width: 0; left: 50%; background-color: #fff;}
	.nav-open .hamburger_border_bottom {transform: rotate(-45deg); top: 20px; background-color: #fff;}
	.black_bg {position: fixed; left: 0; top: 0; width: 100vw; height: 100vh; z-index: 100; background-color: #333; opacity: 0; visibility: hidden; transition: all .6s; cursor: pointer;}
	/* 表示された時用のCSS */
	.nav-open .head_nav_cont nav {right: 0;}
	.nav-open .black_bg {opacity: .8; visibility: visible;}
	.head_nav_cont nav ul{padding:0; margin:0; flex-wrap:wrap; list-style:none;}
	.head_nav_cont nav ul li{width: 100%; border-bottom: 1px dotted #fff; list-style: none; background-color: #082D4E; padding:0;}
	.head_nav_cont nav ul li a, .js-acc-sp-triger {color: #FFFFFF; text-decoration: none; padding: 8%; line-height: 1rem; display: block; font-weight: 600; text-align: left;}
	.head_nav_cont nav ul li ul{margin-bottom:15px; display:none;}
	.head_nav_cont nav ul li:hover ul{display:inline;}
	.head_nav_cont nav ul li ul li{list-style:none;}
    .head_nav_cont nav ul li ul li:last-child{border-bottom: none;}
    .head_nav_cont nav ul li ul li a{font-weight: 300; font-size:0.9rem; line-height:1rem; padding: 15px 20px 15px 30px;}
	.js-acc-sp-triger{line-height: 4rem; padding:0 8% 0 8%;}
	.js-acc-sp-triger ul{margin:0 0 0 -30px;}
	/*ナビ以外の変更項目*/
	.head_nav_cont{justify-content: space-between;}
	.head_nav_cont, .cont_btn_link, .cont_list_3col, .cont_news, .foot_nav_cont, .bottom-wrap{width:100%;}
	.cont_sample{ width:92%;}
	.logobox{padding-left: 30px;}
	.logobox img{width:180px; height: auto; padding:5px;}
	.sec_blue, .sec_white{padding: 100px 30px;}
	/*トップのメインリンクはワイドと高さを調整*/
	.list_3btn, .list_3col{padding:0px;}
	.list_3btn li{width:31%; margin-bottom:3%;}
	.list_3btn li a{height:130px;}
	.title_center{font-size:2.2rem;}
	.list_3col{justify-content: space-between;}
	.list_3col li{width:30%;}
	.list_3col li img {display: block; width:60%; margin:0 auto 30px auto;}
	.list_news{flex-direction: column; width:100%;}
	.list_news li a{padding:20px 0;}
	.list_news li a time{width:15%;}
	.list_news li a p{width:80%;}
	.foot_list_btn ul{justify-content: space-between; padding-left:0px;}
	.foot_list_btn ul li{width:49%;}
	.foot_list_btn ul li a{font-size: 1.3em; padding:40px 0; transition: 0.3s;}
	/*メインイメージエリア*/
	.sec_mv{padding:0 30px;}
	.cont_mv{height: 600px; width: 100%;}
	.cont_mv img{width:100%;}
	.txt_mv{top: 50%; right: 5%; transform: translate(0%, -50%);}
	.txt_lead_mv{font-size:3.2em; line-height: 1.4em; margin-bottom:24px; text-shadow: 0 0 8px rgb(0, 0, 0, 0.5);}
	.txt_sub_mv{padding:20px; font-size: 1.2rem; line-height: 1.8em;}
	.left-wrap{width:70%; margin-right:2%;}
	.right-wrap{width:30%;}
	/*各種装飾テキスト・ボタン等のスタイル*/
	.title_left{text-align:center;}
	.txt_big{font-size:1.6rem; font-weight:600;}
	.btn_big{width:600px;}
	.btn_mid{width:300px;}
	.add_title{font-size:1.2rem; font-weight: bold;}
	.add_desc{font-size:0.9rem; line-height:1.2rem; margin-bottom: 20px;}
	.address{font-size:0.85rem;}
	.foot_nav_cont{justify-content: space-around;}
	.foot_nav_add,.foot_nav_cont nav {width: 49%;}
	.foot_nav_list {flex-direction: row; justify-content: space-between;}
	.foot_nav_list li{ width:49%;}
	.foot_nav_list li .fmenu_title{font-weight: bold; margin-bottom: 10px;}
    .foot_nav_list li ul li {width: 100%; padding-left: 30px; margin-bottom: 10px;}
	.fmenu_title ul li a{font-size:0.85rem; line-height:1.2rem;}
}
/*ipad mini〜大きなスマホ用スタイル*/
@media screen and (max-width: 767px)  {
    .btn_big{width:100%;}
    .list_3btn li,.list_3col li{width:100%;}
	.list_3btn li{margin-bottom:5%;}
	.list_3col li{margin-bottom:10%;}
    .list_3btn li:last-child,.list_3col li:last-child{margin-bottom: 0;}
    .list_3col{flex-wrap:wrap;}
    .list_news{padding:20px 30px;}
    .list_news li a{flex-wrap: wrap;}
    .list_news li a time{width:100%; text-align: left; margin-bottom:2%;}
    .list_news li a p{width:100%;}
    .foot_list_btn ul{flex-wrap: wrap;}
    .foot_list_btn ul li{width:100%; margin-bottom:3%;}
    .foot_list_btn ul li:last-child{margin-bottom:0;}
    .foot_nav .foot_nav_cont{flex-wrap: wrap-reverse;text-align: center;}
    .foot_nav .foot_nav_cont nav{margin-bottom:20px;}
    .foot_nav .foot_nav_cont nav .foot_nav_list{flex-wrap: wrap;}
    .foot_nav .foot_nav_cont .foot_nav_add, .foot_nav .foot_nav_cont nav,.foot_nav .foot_nav_cont nav .foot_nav_list li{width:100%;}
    .foot_nav .foot_nav_cont nav .foot_nav_list li{padding-left: 0;}
    .foot_nav .foot_nav_cont nav .foot_nav_list li p{margin-bottom:30px; display:block; position:relative;}
    .foot_nav .foot_nav_cont nav .foot_nav_list li p::after{content: ''; width: 20px; height: 2px; display: inline-block; background-color: #fff; position: absolute; bottom: -8px; left: calc(50% - 10px)}
	.foot_nav .foot_nav_cont nav .foot_nav_list li ul{margin-bottom:30px;}
    .foot_nav .foot_nav_cont nav .foot_nav_list li ul li{margin-bottom:10px;}
	.foot_nav .foot_nav_cont nav .foot_nav_list li ul li:last-child{margin-bottom:0px;}
}
/*スマホ用スタイル*/
@media screen and (max-width: 480px) {
	/*ナビ以外の変更項目*/
	.sp_only{display:block;}
	.hamburger{top:0px;}
	.head_nav_cont{justify-content: space-between;}
	.head_nav_cont, .cont_btn_link, .cont_list_3col, .cont_news, .foot_nav_cont, .bottom-wrap{width:100%;}
	
	.cont_sample{width:100%;}
	.logobox img{width:150px; height: auto; padding:5px;}
	.sec_blue, .sec_white{padding: 100px 30px;}
	/*トップのメインリンクはワイドと高さを調整*/
	.list_3btn, .list_3col{margin:0; padding:0px; flex-direction:column;}
	.list_3btn li{margin-bottom:8%;}
	.list_3btn li a{height:130px;}
	.title_center{font-size:2.2rem;}
	.list_3col{justify-content: space-between;}
	.list_3col li img {display: block; width:60%; margin:0 auto 30px;}
	.list_news{flex-direction: column; width:100%; padding-left:8%; padding-right:8%;}
	.list_news li a{padding:20px 0;}
	.list_news li a time{width:100%;}
	.list_news li a p{width:100%;}
	.foot_list_btn ul{justify-content: space-between; padding-left:0px;}
	.foot_list_btn ul li{width: 100%; margin-bottom: 3%;}
	.foot_list_btn ul li a{font-size: 1.3em; padding:40px 0; transition: 0.3s;}
	/*メインイメージエリア*/
	.sec_mv{padding:0 15px;}
	.cont_mv{height: 500px; width: 100%;}
	.cont_mv img{width:100%;}
	.txt_mv{width: 80%; top: 50%; left: 20px; transform: translate(0%, -50%);}
	.txt_lead_mv{font-size:2.1em; margin-bottom:20px;}
	.txt_sub_mv{padding:20px; line-height: 1.8em;}
	.left-wrap{width:70%; margin-right:2%;}
	.right-wrap{width:30%;}
	/*各種装飾テキスト・ボタン等のスタイル*/
	.title_left{text-align:center;}
	.txt_big{font-size:1.6rem; font-weight:600;}
	.btn_big{width:100%;}
	.btn_mid{width:80%;}
	.add_title{font-size:1.2rem;}
	.add_desc{font-size:0.9rem;}
	.address{font-size:0.85rem;}
	.foot_nav_list {flex-direction: column; justify-content: space-between;}
	.foot_nav_list li{width:90%; margin-right:5%;}
	.fmenu_title ul li a{font-size:0.85rem; line-height:1.2rem;}
	.bottom-wrap{flex-direction: column;}
	.left-wrap, .right-wrap{width:92%; margin:0px auto;}
.multi-bg-example{
	background-image:url('images/back01.png'), url('none'), url('images/back03.png');
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-size:100%, 40%, 100%;
	background-position: top left, right, bottom left;
}
}

/*ちょっと追記*/
.bigwide{width:98%!important;}
.pd_linkbox{border:1px solid #efefef; border-radius:10px; padding:20px; margin:10px auto 10px auto; width:48%;}
.pd_linkbox .producttitle{font-weight:500; font-size:1.2rem;}
.pd_linkbox .naiyou{font-size:0.9rem;}
.pd_linkbox .skakaku{font-weight:900; font-size:1.5rem; color:#8b0000; margin:10px; text-align:center;}
.pd_linkbox .prodlink{width:90%; margin:0 auto;}
.pd_linkbox .prodlink a{display:block; background-color:#145da0; color:#fff; font-weight:800; text-align:center; padding:6px; border-radius:20px; margin-top:10px;}
.productlist{display:flex; flex-wrap: wrap; justify-content: flex-start;}
.cont_build{width:1024px; margin:0 auto;}
.wp-block-heading{font-size:1.6rem; border-left:solid 5px #145da0; padding-left:15px; margin-top:25px; margin-bottom:20px;}
span.wpcf7-list-item {display: block;}
.kyotyo{font-weight:700; color:red;}
.captitle{font-size:1.4rem; border-bottom:solid 1px #525252; margin-bottom:20px; color:#145da0; font-weight:600;}
/*速習のタイトル部分の追加スタイル*/
.sokushu-discript{text-align:center;}
.sokushu_title{text-align:center; font-size:3.0rem; background-image:url(images/quickbg.png); background-repeat:no-repeat; background-position:center bottom; line-height:5rem;}
.quick{background: #ffffff;
background: linear-gradient(360deg,rgba(255, 255, 255, 0.25) 80%, rgba(20, 93, 160, 0.25) 100%);}
.pdficon{display:block; width:20px; height:auto; margin:10px auto;}
.text_download{width:100%;}
.text_download, .text_download th, .text_download td{border-collapse: collapse; border:1px solid #ECECEC;}
.text_download th{text-align:left; width:80%; padding:2%;}
.text_download td{text-align:center; width:14%;}
.catchitop{text-align: center; font-size: 1.8rem; line-height: 3rem; margin-bottom: 40px; font-weight: 800; color: #000;}
.undert {background: linear-gradient(transparent 60%, #FFB057 30%); display: inline-block;}
@media screen and (max-width: 1024px) {
	.cont_build{width:100%; margin:0 auto;}
	.pd_linkbox{width:48%; margin:0 auto 20px auto;}
}
@media screen and (max-width: 767px)  {
	.cont_build{width:100%; margin:0 auto;}
	.pd_linkbox{width:48%; margin:0 auto 20px auto;}
}
@media screen and (max-width: 480px) {
	.cont_build{width:100%; margin:0 auto;}
	.productlist{display:flex; flex-wrap: column; justify-content: flex-start;}
	.pd_linkbox{width:100%; margin:0 auto 20px auto;}
	.wp-block-heading{font-size:1.4rem; border-left:solid 5px #145da0; padding-left:15px;}
	.sokushu_title{font-size:2.4rem; line-height: 3.6rem;}
	.catchitop{font-size: 1.4rem; line-height: 2.4rem;}
}