.policy-link {
    display: inline-block;
    padding: 2px 8px;           /* 文字の周りに少し余白を作る */
    margin: 0 4px;              /* 前後の文字との間隔 */
    background-color: #fce4ec;  /* ★通常時のうっすらした背景色（薄いピンク・ベージュ系） */
    color: #c62828;             /* 通常時の文字色（少し落ち着いた赤） */
    text-decoration: none;      /* 下線を消す */
    border-radius: 4px;         /* 角を少し丸める */
    transition: all 0.3s ease;  /* 色の変化を滑らかにする */
    font-weight: bold;
}

.policy-link:hover {
    background-color: #b71c1c;  /* ★マウスオーバー時の濃い赤背景 */
    color: #ffffff !important;  /* ★文字色を白にする */
    text-decoration: underline; /* ホバー時のみ下線を表示（任意） */
}@charset "UTF-8";
/*　方面別ページのスタイルシート更新版　*/

/* =========================================
1.reset @destyle.css v2.0.2 | MIT License | 
https://github.com/nicolas-cusan/destyle.css 
既成のスタイルの初期化
========================================= */
*,::before, ::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0; }
html { line-height: 1.15; /* 1 */
       -webkit-text-size-adjust: 100%; /* 2 */
       -webkit-tap-highlight-color: transparent; /* 3*/}
body {  margin: 0;}
main {  display: block;}
p,table,blockquote,address,pre,iframe,form,figure,dl {  margin: 0;}
h1,h2,h3,h4,h5,h6 { font-size: inherit;
                    line-height: inherit;
                    font-weight: inherit;
                    margin: 0;}
ul,ol { margin: 0;
        padding: 0;
        list-style: none;}
dt {  font-weight: bold;}
dd {  margin-left: 0;}
hr {  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;}
pre { font-family: monospace, monospace; /* 1 */
      font-size: inherit; /* 2 */}
address {  font-style: inherit;}
a { background-color: transparent;
    text-decoration: none;
    color: inherit;}
abbr[title] {
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */}
b,strong { font-weight: bolder;}
code,kbd,samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */}
small { font-size: 80%;}
sub,sup { font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;}
sub { bottom: -0.25em;}
sup {  top: -0.5em;}
img,embed,object,iframe {
  vertical-align: bottom;}
button,input,optgroup,select,textarea {
  -webkit-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: 0;
  border-radius: 0;
  text-align: inherit;}
[type="checkbox"] {
  -webkit-appearance: checkbox;
  appearance: checkbox;}
[type="radio"] {
  -webkit-appearance: radio;
  appearance: radio;}
button,input { overflow: visible;}
button,select { text-transform: none;}
button,[type="button"],
[type="reset"],[type="submit"] {
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;}
button[disabled],[type="button"][disabled],[type="reset"][disabled],
[type="submit"][disabled] { cursor: default;}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;}
select::-ms-expand {  display: none;}
option {  padding: 0;}
fieldset { margin: 0;
           padding: 0;
           min-width: 0;}
legend {   color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */}
progress {  vertical-align: baseline;}
textarea {  overflow: auto;}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;}
[type="search"] { outline-offset: -2px; /* 1 */}
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;}
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */}
label[for] {  cursor: pointer;}
details {  display: block;}
summary {  display: list-item;}
[contenteditable] {  outline: none;}
table { border-collapse: collapse;
        border-spacing: 0;}
caption { text-align: left;}
td,th { vertical-align: top;
        padding: 0;}
th {    text-align: left;
        font-weight: bold;}
template {  display: none;}
[hidden] {  display: none;}


/* 2. 本体の装飾----------------- */
body{
  width:auto;
  margin-left:auto;
  margin-right:auto;}

h1{font-size:1.2em;
background-color:#d3d3d3;
margin:10px 0;
font-family:sans-serif;
padding:5px;
font-weight:600;
text-align:center;}

h2{
	font-size:1em;
	padding: 6px;
  font-weight:600;
	background-color: #d3d3d3;
  margin:10px 0px 10px 0;
  font-family: sans-serif;}
		
	
}}

h3{
font-size: 1.1em;
padding: 0.6em 0.6em;
color: black;}

.contents{
width:1024px;
  max-width:100%;
text-align:left;
margin-right:auto;
margin-left:auto;
padding-top:5em;}


/* 3.ヘッダー部分の設定　********************/
.kotei{  position:fixed;
	       width:100%;
	       text-align:center;
         z-index:1000;}
.head_container{ padding:15px;
                 max-width: 100%;
   width:1024px;
   margin-left:auto;
   margin-right:auto;
   display: flex;
   align-items: center;
   font-size:16px;
   background-color:white;}

@media screen and (max-width:800px){
.head_container{
  max-width:100%;
  padding:5px 0px;}}


nav {  margin: 0 0 0 auto;}
nav ul {list-style: none; 
         margin: 0;
         display: flex;}
nav li .pc a{
  vertival-align:top;
}
nav li { margin: 0 0 0 15px;
         font-size: 1em;}
nav li a:hover{ color:red;} 

@media (min-width: 751px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;}}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important;}
.sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 799px) {
    .pc { display: none !important; }
    .sp { display: block !important; }}



.head_tab{display:flex;
  align-item:center;}
.headlist{
  height:30px;
  display:flex;
  align-items:center;
}
.pc,.sp{
  display:flex;
  align-items:center;
}
.tel{ font-weight:600;
      color:orange;}

li.headlist{
  border-radius:5px;
  background-color:#444;
  color:white;
  padding:5px;
  text-align:center;
  vertical-align:top;} 
li.headlist:hover{
  background-color:white;
  color:red;
  border:solid 1px grey;}


@media screen and (max-width:800px){
  .headlist{
    height:50px;
  }
li.headlist{ 
    margin:3px;
    padding:7px;
  font-size:0.8em;
  border-radius:5px;
  vertical-align:center;} }

.sp_br { display: none; /*480px以上では改行タグを無効に*/}
@media screen and (max-width: 480px) {
.sp_br { display: block; /*480px未満で改行タグを有効*/}}

.fixed-element {　z-index:0;
  background-color: #444;
  color: #fff;
  height: 20px;
  position: fixed;
  top: 60px;
  left: 0;
  right: 0;
  z-index: 1;
  text-align: center;
  line-height: 20px;}
.tabs {
  display: flex;
  justify-content: center;
  align-items: center;
  height: auto;
  background-color: #333;
  color: #fff;}
.tab {
  display: inline-block;
  padding: 5px 20px;
  text-decoration: none;
  color: #fff;
  font-size: 16px;}
.tab:hover {
  background-color:white;
color:red;}
.tab.active {
  background-color: #444；}
@media screen and (max-width:800px){
/* */
 .tab {
  
  display: inline-block;
  padding: 10px 20px;
  text-decoration: none;
  color: #fff;
   font-size: 14px;} }

  @media screen and (max-width:480px){
/* */ .tab{
      padding:5px 15px;
      font-size:13px;
font-weight:bold;
  line-height:1.2em;}}
.header_line{
	position:relative;
	height: 4px;
  top:0px;
	border-width: 0;
	background-color: #00bcd4;
	background-image: -webkit-linear-gradient(left,
	#00bcd4 0%,#283593 50%,#00bcd4 100%);
	background-image:         linear-gradient(90deg,
	#00bcd4 0%,#283593 50%,#00bcd4 100%);
}


/* box11の装飾　------------------ */
.step-container {
  padding: 20px;
  background-color: #f9f9f7; /* 既存サイトに近い薄いベージュ系 */
  border-radius: 8px;
}

/* リスト全体のスタイル */
.custom-list {
  list-style-type: decimal; /* 標準の数字（1, 2, 3...）を表示 */
  padding-left: 25px;       /* 数字とテキストの間の余白 */
  margin: 0;
}

/* 各項目（li）の調整 */
.custom-list li {
  /* 項目同士の間隔を広げる（ここを増やすとさらに空きます） */
  margin-bottom: 30px; 
  
  /* 1項目が複数行になった時の行間 */
  line-height: 1.4;
  
  /* 文字の大きさ */
  font-size: 16px;
  font-family: "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
}

/* 最後の項目の余白を消す */
.custom-list li:last-child {
  margin-bottom: 0;
}

/* -- table装飾 https://b-risk.jp/blog/2019/11/form-css/ ---*/

table {
  border-collapse: collapse;}
/* 
p {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  margin: 60px auto 40px;
}
 */
input[type="submit"],
input[type="text"],
select,
textarea,
button {
  -moz-appearance: none;
  -webkit-appearance: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: none;
  border: none;
}
 
input[type="text"],
textarea {
  background: #d3d3d3;
  display: block;
  font-size: 16px;
  padding: 12px 15px;
  width: 480px;
  transition: 0.8s;
  border-radius: 0;
}
 
input[type="text"]:focus,
textarea:focus {
  background: #e9f5fb;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
 
textarea[name="content"] {
  display: inline-block;
  width: 100%;
  height: 100px;}
 
input::placeholder,
textarea::placeholder {
  color:#808080；}
 
::-webkit-input-placeholder {
  color:#414141;
  opacity: 1;}
 
::-moz-placeholder {
  color: #ccc;
  opacity: 1;}
 
:-ms-input-placeholder {
  color: #ccc;
  opacity: 1;}
 
.form-table {
  width: 100%;
  margin-bottom:15px;}
 
.form-table th,
.form-table td {
  border-top: 1px solid #666666;
  border-bottom: 1px solid #666666;
  padding: 20px;}
 
.form-table th {
  background: #f5f5f5;
  padding-left: 30px;
  position: relative;
  text-align: left;
	white-space: nowrap;
  width: 300px;}

.form-table td{
	width: 100%;
}

/* 以下、必須タグ関連------------- */
.label {
    display: block;
    font-size: 2rem;
    line-height: 1.6;
    letter-spacing: 0.05em;
    margin-bottom: .6rem;
    font-weight: bold;}

/* 必須タグと任意タグ共通のスタイル */
.label_tag {
    font-size: 1rem;
    color: #ffffff;
    border-radius: .3rem;
    margin-right: 1rem;
    padding: 1px 8px;}

/* 必須タグ */
.label_must {
    background-color: #C84772;}
/* 任意タグ */
.label_option {
    background-color: #888988;}

/* - table装飾終わり --------------------------------- */

/* - select要素(申込人数と連絡方法）の装飾 https://www.willstyle.co.jp/blog/303/  */

.select-wrap {
    position:relative;
}
.select-wrap:before {
    z-index: 1;
    position: absolute;
    right: 15px;
    top: 0;
    content: "\f123";
    font-family: "IonIcons";
    line-height: 43px;
    color: #7F878C;
    pointer-events: none;
}
HTML CSSResult Skip Results Iframe
EDIT ON
@font-face{font-family:"IonIcons";src:url("//code.ionicframework.com/ionicons/2.0.1/fonts/ionicons.eot?v=2.0.1");src:url("//code.ionicframework.com/ionicons/2.0.1/fonts/ionicons.eot?v=2.0.1#iefix") format("embedded-opentype"),url("//code.ionicframework.com/ionicons/2.0.1/fonts/ionicons.ttf?v=2.0.1") format("truetype"),url("//code.ionicframework.com/ionicons/2.0.1/fonts/ionicons.woff?v=2.0.1") format("woff"),url("//code.ionicframework.com/ionicons/2.0.1/fonts/ionicons.svg?v=2.0.1#Ionicons") format("svg");font-weight:normal;font-style:normal}

.pt20{
  padding-top: 20px;
}
.inverse{
  background: #000;
  padding: 20px 0;
  color: #fff;
}

select{
    outline:none;
    -moz-appearance: none;
    text-indent: 0.01px;
    text-overflow: '';
    background: none transparent;
    vertical-align: middle;
    font-size: inherit;
    color: inherit;
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    height: 40px;
    padding: 8px 12px;
    border:1px solid #ddd;
    color:#828c9a;
    width:400px;
    border-radius:3px;
}
select option{
  background-color: #fff;
  color: #333;
}
select::-ms-expand {
  display: none;
}
select:-moz-focusring { 
  color: transparent; 
  text-shadow: 0 0 0 #828c9a;
}
.select-wrap.select-primary:before{
  color:#fff;
}
.select-wrap.select-primary > select{
  background:#0084B4;
  color:#fff;
  border-color:#0084B4;
}
.select-wrap.select-primary > select:-moz-focusring { 
  color: transparent; 
  text-shadow: 0 0 0 #fff;
}

.select-wrap.select-inverse:before{
  color:#fff;
}
.select-wrap.select-inverse > select{
  color:#fff;
  border-color: #fff;
}

.select-wrap.select-inverse > select:-moz-focusring { 
  color: transparent; 
  text-shadow: 0 0 0 #fff;
}

/* -- select要素の装飾終わり ----*/

.radio{
  margin-left:10px;}
.checkbox01{
  margin-right:10px;}

/* ----- 送信ボタンの装飾 ----- */
.submit{
  padding:10px 100px 10px 100px;
  border:1px solid black;
  background-color:lightblue;
  border-radius:5px;
  height:auto;
  width:auto;
  display:flex;
  margin-right:auto;
  margin-left:auto;
  margin-bottom:10px;
  font-weight:600;
  font-size:1.2em;}

.submit a{
  display:block;}

.submit:hover{
  display:block;
  background-color:pink;}

.download{
	line-height: 1.6em;
	text-decoration: underline
		dotted;
}   
.download a:hover{
	color:red;
}
@media screen and (max-width: 480px) {
	.download{
		text-decoration: transparent;
	}}

/* ----- footerの装飾 -------- */
footer{ background-color:#d3d3d3;}
.footer_wrap{
	height:AUTO;
	margin:auto;
	width:960px;
	display:flex;
	margin-right:auto;
	margin-left:auto;}

.foot_1{
	text-align:left;
	width: 360px;
	width:100%;
	margin:20px;
	padding:5px;}

.foot_2{
	width: 360px;
	width: 100%;
	text-align:left;
	margin:20px;
	padding:5px;
	line-height:150%;}
.foot_2 ul{
	list-style:disc;}
.foot_2 ul a{
text-decoration:none;}
.foot_2 ul a:hover{
	color:red;
	text-decoration:underline;}

.sp_br { display: none; /*480px以上では改行タグを無効に。*/}
.dp_br { display: none; /*480px以上では改行タグを無効に。*/}	
@media screen and (max-width: 480px) {
  .sp_br { display: block; /*480px未満で改行タグを有効に。*/}
  .dp_br {display: block; /* 480px未満で改行タグを有効に。*/
  }}	
/* ------ SPモードの装飾 ------ */

@media (min-width: 751px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;}}

@media screen and (max-width: 480px) {
body{max-width:100%; 
	margin:px;}
	
.flowpic{ display:none;}
.head_container{ max-width:100%;}
.contents{ width:95%;}
.header_line{   }  
.h2{border:1px solid red;
	margin-bottom: 20px;}
.form-table th{
	max-width: 100%;
  display:block;
  padding:5px;
  border:0px;
background-color:transparent;
	}
 .form-table td {
	max-width: 480px;
	 width: 100%;
	 background-color: lightblue;
  display:block;
  padding:5px;
	 margin-bottom:20px;
	 border:none;
  }
	
 input[type="text"],
textarea { width: 95%;
	width:100%;}
	input[type="radio"]{
		margin-bottom: 15px;
	}
	select{
		width:100%;
		border:1px solid black;
	}
	label{
		margin-bottom: 15px;
	}
.flow02{
  text-align:center; }
  /*
  display: flex;
  flex-flow:wrap row;
  justify-content: space-between;}
*/ 
.submit{
  padding:10px 50px 10px 50px;} 
	.dest{
    line-height:60px;
  border:1px solid grey;
  margin:5px;
  padding:10px;
  background-color:#fff1f4;}
  .dest a:hover{
    font-weight:600;
	  color:red;
	  backgcolor-color:white;}
	
  .footer_wrap{
display:block;
width:100%;
height:auto;
  font-size:0.8em;}
	
	
	
.foot_2 ul{
    display:none;
  }}

